libspe2 0.9a
|
00001 /* 00002 * libspe - A wrapper library to adapt the JSRE SPU usage model to SPUFS 00003 * Copyright (C) 2005 IBM Corp. 00004 * 00005 * This library is free software; you can redistribute it and/or modify it 00006 * under the terms of the GNU Lesser General Public License as published by 00007 * the Free Software Foundation; either version 2.1 of the License, 00008 * or (at your option) any later version. 00009 * 00010 * This library is distributed in the hope that it will be useful, but 00011 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 00012 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 00013 * License for more details. 00014 * 00015 * You should have received a copy of the GNU Lesser General Public License 00016 * along with this library; if not, write to the Free Software Foundation, 00017 * Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00018 */ 00019 #ifndef _cbea_map_h_ 00020 #define _cbea_map_h_ 00021 00022 #ifdef __cplusplus 00023 extern "C" 00024 { 00025 #endif 00026 00027 /* spe problem state areas 00028 */ 00029 00030 typedef struct spe_mssync_area { 00031 unsigned int MFC_MSSync; 00032 } spe_mssync_area_t; 00033 00034 typedef struct spe_mfc_command_area { 00035 unsigned char reserved_0_3[4]; 00036 unsigned int MFC_LSA; 00037 unsigned int MFC_EAH; 00038 unsigned int MFC_EAL; 00039 unsigned int MFC_Size_Tag; 00040 union { 00041 unsigned int MFC_ClassID_CMD; 00042 unsigned int MFC_CMDStatus; 00043 }; 00044 unsigned char reserved_18_103[236]; 00045 unsigned int MFC_QStatus; 00046 unsigned char reserved_108_203[252]; 00047 unsigned int Prxy_QueryType; 00048 unsigned char reserved_208_21B[20]; 00049 unsigned int Prxy_QueryMask; 00050 unsigned char reserved_220_22B[12]; 00051 unsigned int Prxy_TagStatus; 00052 } spe_mfc_command_area_t; 00053 00054 typedef struct spe_spu_control_area { 00055 unsigned char reserved_0_3[4]; 00056 unsigned int SPU_Out_Mbox; 00057 unsigned char reserved_8_B[4]; 00058 unsigned int SPU_In_Mbox; 00059 unsigned char reserved_10_13[4]; 00060 unsigned int SPU_Mbox_Stat; 00061 unsigned char reserved_18_1B[4]; 00062 unsigned int SPU_RunCntl; 00063 unsigned char reserved_20_23[4]; 00064 unsigned int SPU_Status; 00065 unsigned char reserved_28_33[12]; 00066 unsigned int SPU_NPC; 00067 } spe_spu_control_area_t; 00068 00069 typedef struct spe_sig_notify_1_area { 00070 unsigned char reserved_0_B[12]; 00071 unsigned int SPU_Sig_Notify_1; 00072 } spe_sig_notify_1_area_t; 00073 00074 typedef struct spe_sig_notify_2_area { 00075 unsigned char reserved_0_B[12]; 00076 unsigned int SPU_Sig_Notify_2; 00077 } spe_sig_notify_2_area_t; 00078 00079 00080 00081 #ifdef __cplusplus 00082 } 00083 #endif 00084 00085 #endif 00086