| /******************************************************************************** |
| * Marvell GPL License Option |
| * |
| * If you received this File from Marvell, you may opt to use, redistribute and/or |
| * modify this File in accordance with the terms and conditions of the General |
| * Public License Version 2, June 1991 (the "GPL License"), a copy of which is |
| * available along with the File in the license.txt file or by writing to the Free |
| * Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 or |
| * on the worldwide web at http://www.gnu.org/licenses/gpl.txt. |
| * |
| * THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE IMPLIED |
| * WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY |
| * DISCLAIMED. The GPL License provides additional details about this warranty |
| * disclaimer. |
| ******************************************************************************/ |
| |
| ////// |
| /// don't edit! auto-generated by docc: FigoReg.h |
| //////////////////////////////////////////////////////////// |
| #ifndef FigoReg_h |
| #define FigoReg_h (){} |
| |
| |
| #include "ctypes.h" |
| |
| #pragma pack(1) |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| #ifndef _DOCC_H_BITOPS_ |
| #define _DOCC_H_BITOPS_ (){} |
| |
| #define _bSETMASK_(b) ((b)<32 ? (1<<((b)&31)) : 0) |
| #define _NSETMASK_(msb,lsb) (_bSETMASK_((msb)+1)-_bSETMASK_(lsb)) |
| #define _bCLRMASK_(b) (~_bSETMASK_(b)) |
| #define _NCLRMASK_(msb,lsb) (~_NSETMASK_(msb,lsb)) |
| #define _BFGET_(r,msb,lsb) (_NSETMASK_((msb)-(lsb),0)&((r)>>(lsb))) |
| #define _BFSET_(r,msb,lsb,v) do{ (r)&=_NCLRMASK_(msb,lsb); (r)|=_NSETMASK_(msb,lsb)&((v)<<(lsb)); }while(0) |
| |
| #endif |
| |
| |
| |
| ////// |
| /// |
| /// $INTERFACE FigoTraceBuf biu (4,4) |
| /// # # ---------------------------------------------------------- |
| /// @ 0x00000 entry (RW-) |
| /// %unsigned 32 val |
| /// ### |
| /// * Register window for the trace buffer |
| /// ### |
| /// # # ---------------------------------------------------------- |
| /// $ENDOFINTERFACE # size: 4B, bits: 32b, padding: 0B |
| //////////////////////////////////////////////////////////// |
| #ifndef h_FigoTraceBuf |
| #define h_FigoTraceBuf (){} |
| |
| #define RA_FigoTraceBuf_entry 0x0000 |
| |
| #define BA_FigoTraceBuf_entry_val 0x0000 |
| #define B16FigoTraceBuf_entry_val 0x0000 |
| #define LSb32FigoTraceBuf_entry_val 0 |
| #define LSb16FigoTraceBuf_entry_val 0 |
| #define bFigoTraceBuf_entry_val 32 |
| #define MSK32FigoTraceBuf_entry_val 0xFFFFFFFF |
| /////////////////////////////////////////////////////////// |
| |
| typedef struct SIE_FigoTraceBuf { |
| /////////////////////////////////////////////////////////// |
| #define GET32FigoTraceBuf_entry_val(r32) _BFGET_(r32,31, 0) |
| #define SET32FigoTraceBuf_entry_val(r32,v) _BFSET_(r32,31, 0,v) |
| |
| #define w32FigoTraceBuf_entry {\ |
| UNSG32 uentry_val : 32;\ |
| } |
| union { UNSG32 u32FigoTraceBuf_entry; |
| struct w32FigoTraceBuf_entry; |
| }; |
| /////////////////////////////////////////////////////////// |
| } SIE_FigoTraceBuf; |
| |
| typedef union T32FigoTraceBuf_entry |
| { UNSG32 u32; |
| struct w32FigoTraceBuf_entry; |
| } T32FigoTraceBuf_entry; |
| /////////////////////////////////////////////////////////// |
| |
| typedef union TFigoTraceBuf_entry |
| { UNSG32 u32[1]; |
| struct { |
| struct w32FigoTraceBuf_entry; |
| }; |
| } TFigoTraceBuf_entry; |
| |
| /////////////////////////////////////////////////////////// |
| SIGN32 FigoTraceBuf_drvrd(SIE_FigoTraceBuf *p, UNSG32 base, SIGN32 mem, SIGN32 tst); |
| SIGN32 FigoTraceBuf_drvwr(SIE_FigoTraceBuf *p, UNSG32 base, SIGN32 mem, SIGN32 tst, UNSG32 *pcmd); |
| void FigoTraceBuf_reset(SIE_FigoTraceBuf *p); |
| SIGN32 FigoTraceBuf_cmp (SIE_FigoTraceBuf *p, SIE_FigoTraceBuf *pie, char *pfx, void *hLOG, SIGN32 mem, SIGN32 tst); |
| #define FigoTraceBuf_check(p,pie,pfx,hLOG) FigoTraceBuf_cmp(p,pie,pfx,(void*)(hLOG),0,0) |
| #define FigoTraceBuf_print(p, pfx,hLOG) FigoTraceBuf_cmp(p,0, pfx,(void*)(hLOG),0,0) |
| |
| #endif |
| ////// |
| /// ENDOFINTERFACE: FigoTraceBuf |
| //////////////////////////////////////////////////////////// |
| |
| ////// |
| /// |
| /// $INTERFACE FigoReg biu (4,4) |
| /// # # ---------------------------------------------------------- |
| /// @ 0x00000 figoCtrl (P) |
| /// %unsigned 16 pcStartLoc 0x0 |
| /// %unsigned 1 tBufMode 0x0 |
| /// : freeRun 0x0 |
| /// ### |
| /// * Trace buffer operating as ring buffer |
| /// ### |
| /// : fifoMode 0x1 |
| /// ### |
| /// * Trace buffer operating as FIFO; FIGO stalls when full |
| /// ### |
| /// %% 15 # Stuffing bits... |
| /// @ 0x00004 figoID (P) |
| /// ### |
| /// * Processor ID, unique for each FIGO |
| /// ### |
| /// %unsigned 16 ID 0x0 |
| /// %% 16 # Stuffing bits... |
| /// @ 0x00008 figoMaxAdr (P) |
| /// ### |
| /// * Max address for ITCM and DTCM, used to detect addr out-of-bound |
| /// ### |
| /// %unsigned 16 itcm 0xFFFF |
| /// %unsigned 16 dtcm 0xFFFF |
| /// @ 0x0000C figoFlags (WOC-) |
| /// ### |
| /// * Exception flags; Figo halt when it happens; write one to clear |
| /// ### |
| /// %unsigned 1 itcmAdrOOB 0x0 |
| /// %unsigned 1 dtcmAdrOOB 0x0 |
| /// %unsigned 1 divideBy0 0x0 |
| /// %unsigned 1 traceBufFull 0x0 |
| /// %unsigned 1 illegalIns 0x0 |
| /// %unsigned 1 ALU64Overflow 0x0 |
| /// %% 26 # Stuffing bits... |
| /// @ 0x00010 figoLastPC (R-) |
| /// ### |
| /// * Last PC value before exception occurred |
| /// ### |
| /// %unsigned 16 val 0x0 |
| /// %% 16 # Stuffing bits... |
| /// @ 0x00014 figoTraceBuf (RW-) |
| /// # 0x00014 tbuf |
| /// $FigoTraceBuf tbuf MEM |
| /// ### |
| /// * Register window for the trace buffer |
| /// ### |
| /// @ 0x00018 figoIntr (RW-) |
| /// ### |
| /// * Special register for FIGO to raise interrupt to CPU via vPro semaphore |
| /// ### |
| /// %unsigned 1 up 0x0 |
| /// %% 31 # Stuffing bits... |
| /// # # ---------------------------------------------------------- |
| /// $ENDOFINTERFACE # size: 28B, bits: 120b, padding: 0B |
| //////////////////////////////////////////////////////////// |
| #ifndef h_FigoReg |
| #define h_FigoReg (){} |
| |
| #define RA_FigoReg_figoCtrl 0x0000 |
| |
| #define BA_FigoReg_figoCtrl_pcStartLoc 0x0000 |
| #define B16FigoReg_figoCtrl_pcStartLoc 0x0000 |
| #define LSb32FigoReg_figoCtrl_pcStartLoc 0 |
| #define LSb16FigoReg_figoCtrl_pcStartLoc 0 |
| #define bFigoReg_figoCtrl_pcStartLoc 16 |
| #define MSK32FigoReg_figoCtrl_pcStartLoc 0x0000FFFF |
| |
| #define BA_FigoReg_figoCtrl_tBufMode 0x0002 |
| #define B16FigoReg_figoCtrl_tBufMode 0x0002 |
| #define LSb32FigoReg_figoCtrl_tBufMode 16 |
| #define LSb16FigoReg_figoCtrl_tBufMode 0 |
| #define bFigoReg_figoCtrl_tBufMode 1 |
| #define MSK32FigoReg_figoCtrl_tBufMode 0x00010000 |
| #define FigoReg_figoCtrl_tBufMode_freeRun 0x0 |
| #define FigoReg_figoCtrl_tBufMode_fifoMode 0x1 |
| /////////////////////////////////////////////////////////// |
| #define RA_FigoReg_figoID 0x0004 |
| |
| #define BA_FigoReg_figoID_ID 0x0004 |
| #define B16FigoReg_figoID_ID 0x0004 |
| #define LSb32FigoReg_figoID_ID 0 |
| #define LSb16FigoReg_figoID_ID 0 |
| #define bFigoReg_figoID_ID 16 |
| #define MSK32FigoReg_figoID_ID 0x0000FFFF |
| /////////////////////////////////////////////////////////// |
| #define RA_FigoReg_figoMaxAdr 0x0008 |
| |
| #define BA_FigoReg_figoMaxAdr_itcm 0x0008 |
| #define B16FigoReg_figoMaxAdr_itcm 0x0008 |
| #define LSb32FigoReg_figoMaxAdr_itcm 0 |
| #define LSb16FigoReg_figoMaxAdr_itcm 0 |
| #define bFigoReg_figoMaxAdr_itcm 16 |
| #define MSK32FigoReg_figoMaxAdr_itcm 0x0000FFFF |
| |
| #define BA_FigoReg_figoMaxAdr_dtcm 0x000A |
| #define B16FigoReg_figoMaxAdr_dtcm 0x000A |
| #define LSb32FigoReg_figoMaxAdr_dtcm 16 |
| #define LSb16FigoReg_figoMaxAdr_dtcm 0 |
| #define bFigoReg_figoMaxAdr_dtcm 16 |
| #define MSK32FigoReg_figoMaxAdr_dtcm 0xFFFF0000 |
| /////////////////////////////////////////////////////////// |
| #define RA_FigoReg_figoFlags 0x000C |
| |
| #define BA_FigoReg_figoFlags_itcmAdrOOB 0x000C |
| #define B16FigoReg_figoFlags_itcmAdrOOB 0x000C |
| #define LSb32FigoReg_figoFlags_itcmAdrOOB 0 |
| #define LSb16FigoReg_figoFlags_itcmAdrOOB 0 |
| #define bFigoReg_figoFlags_itcmAdrOOB 1 |
| #define MSK32FigoReg_figoFlags_itcmAdrOOB 0x00000001 |
| |
| #define BA_FigoReg_figoFlags_dtcmAdrOOB 0x000C |
| #define B16FigoReg_figoFlags_dtcmAdrOOB 0x000C |
| #define LSb32FigoReg_figoFlags_dtcmAdrOOB 1 |
| #define LSb16FigoReg_figoFlags_dtcmAdrOOB 1 |
| #define bFigoReg_figoFlags_dtcmAdrOOB 1 |
| #define MSK32FigoReg_figoFlags_dtcmAdrOOB 0x00000002 |
| |
| #define BA_FigoReg_figoFlags_divideBy0 0x000C |
| #define B16FigoReg_figoFlags_divideBy0 0x000C |
| #define LSb32FigoReg_figoFlags_divideBy0 2 |
| #define LSb16FigoReg_figoFlags_divideBy0 2 |
| #define bFigoReg_figoFlags_divideBy0 1 |
| #define MSK32FigoReg_figoFlags_divideBy0 0x00000004 |
| |
| #define BA_FigoReg_figoFlags_traceBufFull 0x000C |
| #define B16FigoReg_figoFlags_traceBufFull 0x000C |
| #define LSb32FigoReg_figoFlags_traceBufFull 3 |
| #define LSb16FigoReg_figoFlags_traceBufFull 3 |
| #define bFigoReg_figoFlags_traceBufFull 1 |
| #define MSK32FigoReg_figoFlags_traceBufFull 0x00000008 |
| |
| #define BA_FigoReg_figoFlags_illegalIns 0x000C |
| #define B16FigoReg_figoFlags_illegalIns 0x000C |
| #define LSb32FigoReg_figoFlags_illegalIns 4 |
| #define LSb16FigoReg_figoFlags_illegalIns 4 |
| #define bFigoReg_figoFlags_illegalIns 1 |
| #define MSK32FigoReg_figoFlags_illegalIns 0x00000010 |
| |
| #define BA_FigoReg_figoFlags_ALU64Overflow 0x000C |
| #define B16FigoReg_figoFlags_ALU64Overflow 0x000C |
| #define LSb32FigoReg_figoFlags_ALU64Overflow 5 |
| #define LSb16FigoReg_figoFlags_ALU64Overflow 5 |
| #define bFigoReg_figoFlags_ALU64Overflow 1 |
| #define MSK32FigoReg_figoFlags_ALU64Overflow 0x00000020 |
| /////////////////////////////////////////////////////////// |
| #define RA_FigoReg_figoLastPC 0x0010 |
| |
| #define BA_FigoReg_figoLastPC_val 0x0010 |
| #define B16FigoReg_figoLastPC_val 0x0010 |
| #define LSb32FigoReg_figoLastPC_val 0 |
| #define LSb16FigoReg_figoLastPC_val 0 |
| #define bFigoReg_figoLastPC_val 16 |
| #define MSK32FigoReg_figoLastPC_val 0x0000FFFF |
| /////////////////////////////////////////////////////////// |
| #define RA_FigoReg_figoTraceBuf 0x0014 |
| #define RA_FigoReg_tbuf 0x0014 |
| /////////////////////////////////////////////////////////// |
| #define RA_FigoReg_figoIntr 0x0018 |
| |
| #define BA_FigoReg_figoIntr_up 0x0018 |
| #define B16FigoReg_figoIntr_up 0x0018 |
| #define LSb32FigoReg_figoIntr_up 0 |
| #define LSb16FigoReg_figoIntr_up 0 |
| #define bFigoReg_figoIntr_up 1 |
| #define MSK32FigoReg_figoIntr_up 0x00000001 |
| /////////////////////////////////////////////////////////// |
| |
| typedef struct SIE_FigoReg { |
| /////////////////////////////////////////////////////////// |
| #define GET32FigoReg_figoCtrl_pcStartLoc(r32) _BFGET_(r32,15, 0) |
| #define SET32FigoReg_figoCtrl_pcStartLoc(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16FigoReg_figoCtrl_pcStartLoc(r16) _BFGET_(r16,15, 0) |
| #define SET16FigoReg_figoCtrl_pcStartLoc(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define GET32FigoReg_figoCtrl_tBufMode(r32) _BFGET_(r32,16,16) |
| #define SET32FigoReg_figoCtrl_tBufMode(r32,v) _BFSET_(r32,16,16,v) |
| #define GET16FigoReg_figoCtrl_tBufMode(r16) _BFGET_(r16, 0, 0) |
| #define SET16FigoReg_figoCtrl_tBufMode(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define w32FigoReg_figoCtrl {\ |
| UNSG32 ufigoCtrl_pcStartLoc : 16;\ |
| UNSG32 ufigoCtrl_tBufMode : 1;\ |
| UNSG32 RSVDx0_b17 : 15;\ |
| } |
| union { UNSG32 u32FigoReg_figoCtrl; |
| struct w32FigoReg_figoCtrl; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32FigoReg_figoID_ID(r32) _BFGET_(r32,15, 0) |
| #define SET32FigoReg_figoID_ID(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16FigoReg_figoID_ID(r16) _BFGET_(r16,15, 0) |
| #define SET16FigoReg_figoID_ID(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define w32FigoReg_figoID {\ |
| UNSG32 ufigoID_ID : 16;\ |
| UNSG32 RSVDx4_b16 : 16;\ |
| } |
| union { UNSG32 u32FigoReg_figoID; |
| struct w32FigoReg_figoID; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32FigoReg_figoMaxAdr_itcm(r32) _BFGET_(r32,15, 0) |
| #define SET32FigoReg_figoMaxAdr_itcm(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16FigoReg_figoMaxAdr_itcm(r16) _BFGET_(r16,15, 0) |
| #define SET16FigoReg_figoMaxAdr_itcm(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define GET32FigoReg_figoMaxAdr_dtcm(r32) _BFGET_(r32,31,16) |
| #define SET32FigoReg_figoMaxAdr_dtcm(r32,v) _BFSET_(r32,31,16,v) |
| #define GET16FigoReg_figoMaxAdr_dtcm(r16) _BFGET_(r16,15, 0) |
| #define SET16FigoReg_figoMaxAdr_dtcm(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define w32FigoReg_figoMaxAdr {\ |
| UNSG32 ufigoMaxAdr_itcm : 16;\ |
| UNSG32 ufigoMaxAdr_dtcm : 16;\ |
| } |
| union { UNSG32 u32FigoReg_figoMaxAdr; |
| struct w32FigoReg_figoMaxAdr; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32FigoReg_figoFlags_itcmAdrOOB(r32) _BFGET_(r32, 0, 0) |
| #define SET32FigoReg_figoFlags_itcmAdrOOB(r32,v) _BFSET_(r32, 0, 0,v) |
| #define GET16FigoReg_figoFlags_itcmAdrOOB(r16) _BFGET_(r16, 0, 0) |
| #define SET16FigoReg_figoFlags_itcmAdrOOB(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define GET32FigoReg_figoFlags_dtcmAdrOOB(r32) _BFGET_(r32, 1, 1) |
| #define SET32FigoReg_figoFlags_dtcmAdrOOB(r32,v) _BFSET_(r32, 1, 1,v) |
| #define GET16FigoReg_figoFlags_dtcmAdrOOB(r16) _BFGET_(r16, 1, 1) |
| #define SET16FigoReg_figoFlags_dtcmAdrOOB(r16,v) _BFSET_(r16, 1, 1,v) |
| |
| #define GET32FigoReg_figoFlags_divideBy0(r32) _BFGET_(r32, 2, 2) |
| #define SET32FigoReg_figoFlags_divideBy0(r32,v) _BFSET_(r32, 2, 2,v) |
| #define GET16FigoReg_figoFlags_divideBy0(r16) _BFGET_(r16, 2, 2) |
| #define SET16FigoReg_figoFlags_divideBy0(r16,v) _BFSET_(r16, 2, 2,v) |
| |
| #define GET32FigoReg_figoFlags_traceBufFull(r32) _BFGET_(r32, 3, 3) |
| #define SET32FigoReg_figoFlags_traceBufFull(r32,v) _BFSET_(r32, 3, 3,v) |
| #define GET16FigoReg_figoFlags_traceBufFull(r16) _BFGET_(r16, 3, 3) |
| #define SET16FigoReg_figoFlags_traceBufFull(r16,v) _BFSET_(r16, 3, 3,v) |
| |
| #define GET32FigoReg_figoFlags_illegalIns(r32) _BFGET_(r32, 4, 4) |
| #define SET32FigoReg_figoFlags_illegalIns(r32,v) _BFSET_(r32, 4, 4,v) |
| #define GET16FigoReg_figoFlags_illegalIns(r16) _BFGET_(r16, 4, 4) |
| #define SET16FigoReg_figoFlags_illegalIns(r16,v) _BFSET_(r16, 4, 4,v) |
| |
| #define GET32FigoReg_figoFlags_ALU64Overflow(r32) _BFGET_(r32, 5, 5) |
| #define SET32FigoReg_figoFlags_ALU64Overflow(r32,v) _BFSET_(r32, 5, 5,v) |
| #define GET16FigoReg_figoFlags_ALU64Overflow(r16) _BFGET_(r16, 5, 5) |
| #define SET16FigoReg_figoFlags_ALU64Overflow(r16,v) _BFSET_(r16, 5, 5,v) |
| |
| #define w32FigoReg_figoFlags {\ |
| UNSG32 ufigoFlags_itcmAdrOOB : 1;\ |
| UNSG32 ufigoFlags_dtcmAdrOOB : 1;\ |
| UNSG32 ufigoFlags_divideBy0 : 1;\ |
| UNSG32 ufigoFlags_traceBufFull : 1;\ |
| UNSG32 ufigoFlags_illegalIns : 1;\ |
| UNSG32 ufigoFlags_ALU64Overflow : 1;\ |
| UNSG32 RSVDxC_b6 : 26;\ |
| } |
| union { UNSG32 u32FigoReg_figoFlags; |
| struct w32FigoReg_figoFlags; |
| }; |
| /////////////////////////////////////////////////////////// |
| #define GET32FigoReg_figoLastPC_val(r32) _BFGET_(r32,15, 0) |
| #define SET32FigoReg_figoLastPC_val(r32,v) _BFSET_(r32,15, 0,v) |
| #define GET16FigoReg_figoLastPC_val(r16) _BFGET_(r16,15, 0) |
| #define SET16FigoReg_figoLastPC_val(r16,v) _BFSET_(r16,15, 0,v) |
| |
| #define w32FigoReg_figoLastPC {\ |
| UNSG32 ufigoLastPC_val : 16;\ |
| UNSG32 RSVDx10_b16 : 16;\ |
| } |
| union { UNSG32 u32FigoReg_figoLastPC; |
| struct w32FigoReg_figoLastPC; |
| }; |
| /////////////////////////////////////////////////////////// |
| SIE_FigoTraceBuf ie_tbuf; |
| /////////////////////////////////////////////////////////// |
| #define GET32FigoReg_figoIntr_up(r32) _BFGET_(r32, 0, 0) |
| #define SET32FigoReg_figoIntr_up(r32,v) _BFSET_(r32, 0, 0,v) |
| #define GET16FigoReg_figoIntr_up(r16) _BFGET_(r16, 0, 0) |
| #define SET16FigoReg_figoIntr_up(r16,v) _BFSET_(r16, 0, 0,v) |
| |
| #define w32FigoReg_figoIntr {\ |
| UNSG32 ufigoIntr_up : 1;\ |
| UNSG32 RSVDx18_b1 : 31;\ |
| } |
| union { UNSG32 u32FigoReg_figoIntr; |
| struct w32FigoReg_figoIntr; |
| }; |
| /////////////////////////////////////////////////////////// |
| } SIE_FigoReg; |
| |
| typedef union T32FigoReg_figoCtrl |
| { UNSG32 u32; |
| struct w32FigoReg_figoCtrl; |
| } T32FigoReg_figoCtrl; |
| typedef union T32FigoReg_figoID |
| { UNSG32 u32; |
| struct w32FigoReg_figoID; |
| } T32FigoReg_figoID; |
| typedef union T32FigoReg_figoMaxAdr |
| { UNSG32 u32; |
| struct w32FigoReg_figoMaxAdr; |
| } T32FigoReg_figoMaxAdr; |
| typedef union T32FigoReg_figoFlags |
| { UNSG32 u32; |
| struct w32FigoReg_figoFlags; |
| } T32FigoReg_figoFlags; |
| typedef union T32FigoReg_figoLastPC |
| { UNSG32 u32; |
| struct w32FigoReg_figoLastPC; |
| } T32FigoReg_figoLastPC; |
| typedef union T32FigoReg_figoIntr |
| { UNSG32 u32; |
| struct w32FigoReg_figoIntr; |
| } T32FigoReg_figoIntr; |
| /////////////////////////////////////////////////////////// |
| |
| typedef union TFigoReg_figoCtrl |
| { UNSG32 u32[1]; |
| struct { |
| struct w32FigoReg_figoCtrl; |
| }; |
| } TFigoReg_figoCtrl; |
| typedef union TFigoReg_figoID |
| { UNSG32 u32[1]; |
| struct { |
| struct w32FigoReg_figoID; |
| }; |
| } TFigoReg_figoID; |
| typedef union TFigoReg_figoMaxAdr |
| { UNSG32 u32[1]; |
| struct { |
| struct w32FigoReg_figoMaxAdr; |
| }; |
| } TFigoReg_figoMaxAdr; |
| typedef union TFigoReg_figoFlags |
| { UNSG32 u32[1]; |
| struct { |
| struct w32FigoReg_figoFlags; |
| }; |
| } TFigoReg_figoFlags; |
| typedef union TFigoReg_figoLastPC |
| { UNSG32 u32[1]; |
| struct { |
| struct w32FigoReg_figoLastPC; |
| }; |
| } TFigoReg_figoLastPC; |
| typedef union TFigoReg_figoIntr |
| { UNSG32 u32[1]; |
| struct { |
| struct w32FigoReg_figoIntr; |
| }; |
| } TFigoReg_figoIntr; |
| |
| /////////////////////////////////////////////////////////// |
| SIGN32 FigoReg_drvrd(SIE_FigoReg *p, UNSG32 base, SIGN32 mem, SIGN32 tst); |
| SIGN32 FigoReg_drvwr(SIE_FigoReg *p, UNSG32 base, SIGN32 mem, SIGN32 tst, UNSG32 *pcmd); |
| void FigoReg_reset(SIE_FigoReg *p); |
| SIGN32 FigoReg_cmp (SIE_FigoReg *p, SIE_FigoReg *pie, char *pfx, void *hLOG, SIGN32 mem, SIGN32 tst); |
| #define FigoReg_check(p,pie,pfx,hLOG) FigoReg_cmp(p,pie,pfx,(void*)(hLOG),0,0) |
| #define FigoReg_print(p, pfx,hLOG) FigoReg_cmp(p,0, pfx,(void*)(hLOG),0,0) |
| |
| #endif |
| ////// |
| /// ENDOFINTERFACE: FigoReg |
| //////////////////////////////////////////////////////////// |
| |
| |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| #pragma pack() |
| |
| #endif |
| ////// |
| /// ENDOFFILE: FigoReg.h |
| //////////////////////////////////////////////////////////// |
| |