blob: 97ffd8294b861dfa31a30ff284696829536c0f06 [file] [log] [blame]
/********************************************************************************
* 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.
******************************************************************************/
/**********************************************************************************************************************
* DO NOT EDIT! Automatically generated by "Interface Specification Compiler" ver-1.0
* <ansi-c> : customer_keystore_spec.h
**********************************************************************************************************************/
#ifdef _customer_keystore_spec_h
#else
#define _customer_keystore_spec_h "_keystore_spec_h >>> "
#include "ctypes.h"
#pragma pack(4)
#ifdef __cplusplus
extern "C"
{
#endif
/**********************************************************************************************************************
* INTERFACE: StreamHdr
* @ FUNC
* %unsigned 12 rdFunc 0
* * *
* * PC of the read function pointer
* %unsigned 4 uStrmType
* * *
* * This field only valid for Debug purpose
* %unsigned 12 wrFunc 0
* * *
* * PC of the write function pointer
* %unsigned 4 algnFactor 0
* * *
* * If uStrmType == DSStreamIn type, the minimum pre-load buffer size is (1 << algnFactor)
* * if uStrmType == DSStreamOut type, the minimum output buffer size is (1 << algnFactor) except the forced flush or interleaved streams
* @ INFO
* %unsigned 16 datPtr 0
* * *
* * Stream type specific data field.
* * For uStrmType == DSStreamIn, this filed is the pointer of the data memory pool.
* * For uStrmType == DSStreamOut, This field is the pointer of DSOutputModule
* * For uStrmType == DTCMStream, this field is referring to the data block base.
* %unsigned 16 ctrlPtr 0
* * *
* * the address of the DTCM FIFO Control FIFO
**********************************************************************************************************************/
#ifdef h_StreamHdr
#else
#define h_StreamHdr
#define \
AR_StreamHdr \
2
#define \
AB_StreamHdr \
3
typedef struct SIE_StreamHdr {
#define RA_StreamHdr_FUNC 0x00000
#define w32StreamHdr_FUNC { \
UNSG32 uFUNC_rdFunc : 12; \
UNSG32 uFUNC_uStrmType : 4; \
UNSG32 uFUNC_wrFunc : 12; \
UNSG32 uFUNC_algnFactor : 4; \
}
/* @'00000 */ union { UNSG32 u32StreamHdr_FUNC;
struct w32StreamHdr_FUNC;
};
/* [11: 0] */ #define BA_StreamHdr_FUNC_rdFunc 0x00000
/* ---:--- */ #define bStreamHdr_FUNC_rdFunc 12 /*bit*/
/* ---:--- */ #define LSb32StreamHdr_FUNC_rdFunc 0 /*:11*/
/* ---:--- */ #define MSK32StreamHdr_FUNC_rdFunc 0x00000FFF
/* ---:--- */ #define GET32StreamHdr_FUNC_rdFunc(r32) (((r32)>> 0)&0x0FFF)
/* ---:--- */ #define GET16StreamHdr_FUNC_rdFunc(r16) (((r16)>> 0)&0x0FFF)
/* ---:--- */ #define SET32StreamHdr_FUNC_rdFunc(r32,v) do{(r32)&=~(0x0FFF<< 0);(r32)|=((v)&0x0FFF)<< 0;}while(0)
/* ---:--- */ #define SET16StreamHdr_FUNC_rdFunc(r16,v) do{(r16)&=~(0x0FFF<< 0);(r16)|=((v)&0x0FFF)<< 0;}while(0)
/* [15:12] */ #define BA_StreamHdr_FUNC_uStrmType 0x00001
/* ---:--- */ #define bStreamHdr_FUNC_uStrmType 4 /*bit*/
/* ---:--- */ #define LSb32StreamHdr_FUNC_uStrmType 12 /*:15*/
/* ---:--- */ #define MSK32StreamHdr_FUNC_uStrmType 0x0000F000
/* ---:--- */ #define GET32StreamHdr_FUNC_uStrmType(r32) (((r32)>>12)&0x000F)
/* ---:--- */ #define GET16StreamHdr_FUNC_uStrmType(r16) (((r16)>>12)&0x000F)
/* ---:--- */ #define SET32StreamHdr_FUNC_uStrmType(r32,v) do{(r32)&=~(0x000F<<12);(r32)|=((v)&0x000F)<<12;}while(0)
/* ---:--- */ #define SET16StreamHdr_FUNC_uStrmType(r16,v) do{(r16)&=~(0x000F<<12);(r16)|=((v)&0x000F)<<12;}while(0)
/* [27:16] */ #define BA_StreamHdr_FUNC_wrFunc 0x00002
/* ---:--- */ #define bStreamHdr_FUNC_wrFunc 12 /*bit*/
/* ---:--- */ #define LSb32StreamHdr_FUNC_wrFunc 16 /*:27*/
/* ---:--- */ #define MSK32StreamHdr_FUNC_wrFunc 0x0FFF0000
/* ---:--- */ #define GET32StreamHdr_FUNC_wrFunc(r32) (((r32)>>16)&0x0FFF)
/* ---:--- */ #define GET16StreamHdr_FUNC_wrFunc(r16) (((r16)>> 0)&0x0FFF)
/* ---:--- */ #define SET32StreamHdr_FUNC_wrFunc(r32,v) do{(r32)&=~(0x0FFF<<16);(r32)|=((v)&0x0FFF)<<16;}while(0)
/* ---:--- */ #define SET16StreamHdr_FUNC_wrFunc(r16,v) do{(r16)&=~(0x0FFF<< 0);(r16)|=((v)&0x0FFF)<< 0;}while(0)
/* [31:28] */ #define BA_StreamHdr_FUNC_algnFactor 0x00003
/* ---:--- */ #define bStreamHdr_FUNC_algnFactor 4 /*bit*/
/* ---:--- */ #define LSb32StreamHdr_FUNC_algnFactor 28 /*:31*/
/* ---:--- */ #define MSK32StreamHdr_FUNC_algnFactor 0xF0000000
/* ---:--- */ #define GET32StreamHdr_FUNC_algnFactor(r32) (((r32)>>28)&0x000F)
/* ---:--- */ #define GET16StreamHdr_FUNC_algnFactor(r16) (((r16)>>12)&0x000F)
/* ---:--- */ #define SET32StreamHdr_FUNC_algnFactor(r32,v) do{(r32)&=~(0x000F<<28);(r32)|=((v)&0x000F)<<28;}while(0)
/* ---:--- */ #define SET16StreamHdr_FUNC_algnFactor(r16,v) do{(r16)&=~(0x000F<<12);(r16)|=((v)&0x000F)<<12;}while(0)
#define RA_StreamHdr_INFO 0x00004
#define w32StreamHdr_INFO { \
UNSG32 uINFO_datPtr : 16; \
UNSG32 uINFO_ctrlPtr : 16; \
}
/* @'00004 */ union { UNSG32 u32StreamHdr_INFO;
struct w32StreamHdr_INFO;
};
/* [15: 0] */ #define BA_StreamHdr_INFO_datPtr 0x00004
/* ---:--- */ #define bStreamHdr_INFO_datPtr 16 /*bit*/
/* ---:--- */ #define LSb32StreamHdr_INFO_datPtr 0 /*:15*/
/* ---:--- */ #define MSK32StreamHdr_INFO_datPtr 0x0000FFFF
/* ---:--- */ #define GET32StreamHdr_INFO_datPtr(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16StreamHdr_INFO_datPtr(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32StreamHdr_INFO_datPtr(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16StreamHdr_INFO_datPtr(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_StreamHdr_INFO_ctrlPtr 0x00006
/* ---:--- */ #define bStreamHdr_INFO_ctrlPtr 16 /*bit*/
/* ---:--- */ #define LSb32StreamHdr_INFO_ctrlPtr 16 /*:31*/
/* ---:--- */ #define MSK32StreamHdr_INFO_ctrlPtr 0xFFFF0000
/* ---:--- */ #define GET32StreamHdr_INFO_ctrlPtr(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16StreamHdr_INFO_ctrlPtr(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32StreamHdr_INFO_ctrlPtr(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16StreamHdr_INFO_ctrlPtr(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
} SIE_StreamHdr;
#define dftStreamHdr_FUNC 0x00000000
typedef union { UNSG32 u32;
struct w32StreamHdr_FUNC;
} T32StreamHdr_FUNC;
#define dftStreamHdr_INFO 0x00000000
typedef union { UNSG32 u32;
struct w32StreamHdr_INFO;
} T32StreamHdr_INFO;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 StreamHdr_drvrd (SIE_StreamHdr *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 StreamHdr_drvwr (SIE_StreamHdr *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void StreamHdr_reset (SIE_StreamHdr *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define StreamHdr_check(p,pie,ps8name,hfpErrLOG) StreamHdr_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define StreamHdr_print(p, ps8name,hfpErrLOG) StreamHdr_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 StreamHdr_cmp (SIE_StreamHdr *p, SIE_StreamHdr *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 StreamHdr_import(SIE_StreamHdr *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 StreamHdr_export(SIE_StreamHdr *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: StreamHdr
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: HBOADDR
* @
* %unsigned 16 uAddr 0
**********************************************************************************************************************/
#ifdef h_HBOADDR
#else
#define h_HBOADDR
#define \
AR_HBOADDR \
1
#define \
AB_HBOADDR \
2
typedef struct SIE_HBOADDR {
#define RA_HBOADDR_D0th_ ISC_USE_ONLY 0x00000
#define w32HBOADDR_D0th_ { \
UNSG32 u_uAddr : 16; \
UNSG32 _x00000 : 16; \
}
/* @'00000 */ struct w32HBOADDR_D0th_;
/* [15: 0] */ #define BA_HBOADDR_uAddr 0x00000
/* ---:--- */ #define bHBOADDR_uAddr 16 /*bit*/
/* ---:--- */ #define LSb32HBOADDR_uAddr 0 /*:15*/
/* ---:--- */ #define MSK32HBOADDR_uAddr 0x0000FFFF
/* ---:--- */ #define GET32HBOADDR_uAddr(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16HBOADDR_uAddr(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32HBOADDR_uAddr(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16HBOADDR_uAddr(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
} SIE_HBOADDR;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 HBOADDR_drvrd (SIE_HBOADDR *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 HBOADDR_drvwr (SIE_HBOADDR *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void HBOADDR_reset (SIE_HBOADDR *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define HBOADDR_check(p,pie,ps8name,hfpErrLOG) HBOADDR_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define HBOADDR_print(p, ps8name,hfpErrLOG) HBOADDR_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 HBOADDR_cmp (SIE_HBOADDR *p, SIE_HBOADDR *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 HBOADDR_import(SIE_HBOADDR *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 HBOADDR_export(SIE_HBOADDR *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: HBOADDR
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: UINT32
* @ V32
* %unsigned 16 uV16L 0
* %unsigned 16 uV16H 0
**********************************************************************************************************************/
#ifdef h_UINT32
#else
#define h_UINT32
#define \
AR_UINT32 \
1
#define \
AB_UINT32 \
2
typedef struct SIE_UINT32 {
#define RA_UINT32_V32 0x00000
#define w32UINT32_V32 { \
UNSG32 uV32_uV16L : 16; \
UNSG32 uV32_uV16H : 16; \
}
/* @'00000 */ union { UNSG32 u32UINT32_V32;
struct w32UINT32_V32;
};
/* [15: 0] */ #define BA_UINT32_V32_uV16L 0x00000
/* ---:--- */ #define bUINT32_V32_uV16L 16 /*bit*/
/* ---:--- */ #define LSb32UINT32_V32_uV16L 0 /*:15*/
/* ---:--- */ #define MSK32UINT32_V32_uV16L 0x0000FFFF
/* ---:--- */ #define GET32UINT32_V32_uV16L(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16UINT32_V32_uV16L(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32UINT32_V32_uV16L(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16UINT32_V32_uV16L(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_UINT32_V32_uV16H 0x00002
/* ---:--- */ #define bUINT32_V32_uV16H 16 /*bit*/
/* ---:--- */ #define LSb32UINT32_V32_uV16H 16 /*:31*/
/* ---:--- */ #define MSK32UINT32_V32_uV16H 0xFFFF0000
/* ---:--- */ #define GET32UINT32_V32_uV16H(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16UINT32_V32_uV16H(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32UINT32_V32_uV16H(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16UINT32_V32_uV16H(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
} SIE_UINT32;
#define dftUINT32_V32 0x00000000
typedef union { UNSG32 u32;
struct w32UINT32_V32;
} T32UINT32_V32;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 UINT32_drvrd (SIE_UINT32 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 UINT32_drvwr (SIE_UINT32 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void UINT32_reset (SIE_UINT32 *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define UINT32_check(p,pie,ps8name,hfpErrLOG) UINT32_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define UINT32_print(p, ps8name,hfpErrLOG) UINT32_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 UINT32_cmp (SIE_UINT32 *p, SIE_UINT32 *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 UINT32_import(SIE_UINT32 *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 UINT32_export(SIE_UINT32 *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: UINT32
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: UINT64
* $UINT32 v32 REG [2]
**********************************************************************************************************************/
#ifdef h_UINT64
#else
#define h_UINT64
#define \
AR_UINT64 \
2
#define \
AB_UINT64 \
3
typedef struct SIE_UINT64 {
#define RA_UINT64_v32 0x00000
/* @'00000 */ SIE_UINT32 ie_v32 [2];
#define arr_UINT64_v32 2
} SIE_UINT64;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 UINT64_drvrd (SIE_UINT64 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 UINT64_drvwr (SIE_UINT64 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void UINT64_reset (SIE_UINT64 *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define UINT64_check(p,pie,ps8name,hfpErrLOG) UINT64_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define UINT64_print(p, ps8name,hfpErrLOG) UINT64_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 UINT64_cmp (SIE_UINT64 *p, SIE_UINT64 *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 UINT64_import(SIE_UINT64 *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 UINT64_export(SIE_UINT64 *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: UINT64
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: UINT128
* $UINT32 v32 REG [4]
**********************************************************************************************************************/
#ifdef h_UINT128
#else
#define h_UINT128
#define \
AR_UINT128 \
4
#define \
AB_UINT128 \
4
typedef struct SIE_UINT128 {
#define RA_UINT128_v32 0x00000
/* @'00000 */ SIE_UINT32 ie_v32 [4];
#define arr_UINT128_v32 4
} SIE_UINT128;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 UINT128_drvrd (SIE_UINT128 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 UINT128_drvwr (SIE_UINT128 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void UINT128_reset (SIE_UINT128 *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define UINT128_check(p,pie,ps8name,hfpErrLOG) UINT128_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define UINT128_print(p, ps8name,hfpErrLOG) UINT128_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 UINT128_cmp (SIE_UINT128 *p, SIE_UINT128 *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 UINT128_import(SIE_UINT128 *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 UINT128_export(SIE_UINT128 *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: UINT128
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: UINT1024
* $UINT128 v128 REG [8]
**********************************************************************************************************************/
#ifdef h_UINT1024
#else
#define h_UINT1024
#define \
AR_UINT1024 \
32
#define \
AB_UINT1024 \
7
typedef struct SIE_UINT1024 {
#define RA_UINT1024_v128 0x00000
/* @'00000 */ SIE_UINT128 ie_v128 [8];
#define arr_UINT1024_v128 8
} SIE_UINT1024;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 UINT1024_drvrd (SIE_UINT1024 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 UINT1024_drvwr (SIE_UINT1024 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void UINT1024_reset (SIE_UINT1024 *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define UINT1024_check(p,pie,ps8name,hfpErrLOG) UINT1024_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define UINT1024_print(p, ps8name,hfpErrLOG) UINT1024_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 UINT1024_cmp (SIE_UINT1024 *p, SIE_UINT1024 *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 UINT1024_import(SIE_UINT1024 *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 UINT1024_export(SIE_UINT1024 *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: UINT1024
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: FIGOSYSLIB
* @
* : INVALID_BIU_PTR 0xFFFF
* * *
* * Invalid BIU pointer
* : INVALID_FIGOEVENT_FLAG 0xFF
* : MAX_BLK_NUM 16
* * *
* * Maxim block number
* : MAX_DS_CMD_ID 0x100
* * *
* * Maxim data streamer command ID
* : FIFODIR_INPUT 0
* * *
* * Input FIFO from DDR to DTCM
* : FIFODIR_OUTPUT 1
* * *
* * Output FIFO from DTCM to DDR
* : DS_CMDFIFO_IDX 0
* * *
* * Data streamer command FIFO index
* : STRMTYPE_DTCM 1
* * *
* * DTCM stream type
* : STRMTYPE_DSIN 2
* * *
* * DRAM to SRAM input stream type
* : STRMTYPE_DSOUT 3
* * *
* * SRAM to DTCM output stream type
* : MAX_CTRL_SIZE 56
* * *
* * Maximum control information size
* : INVALID_DS_BASE 0xffffffff
* * *
* * Invalid data streamer base address
* @
* %unsigned 32 dummy
**********************************************************************************************************************/
#ifdef h_FIGOSYSLIB
#else
#define h_FIGOSYSLIB
#define \
AR_FIGOSYSLIB \
1
#define \
AB_FIGOSYSLIB \
2
#define FIGOSYSLIB_INVALID_BIU_PTR 0xFFFF
#define FIGOSYSLIB_INVALID_FIGOEVENT_FLAG 0xFF
#define FIGOSYSLIB_MAX_BLK_NUM 0x10
#define FIGOSYSLIB_MAX_DS_CMD_ID 0x100
#define FIGOSYSLIB_FIFODIR_INPUT 0x0
#define FIGOSYSLIB_FIFODIR_OUTPUT 0x1
#define FIGOSYSLIB_DS_CMDFIFO_IDX 0x0
#define FIGOSYSLIB_STRMTYPE_DTCM 0x1
#define FIGOSYSLIB_STRMTYPE_DSIN 0x2
#define FIGOSYSLIB_STRMTYPE_DSOUT 0x3
#define FIGOSYSLIB_MAX_CTRL_SIZE 0x38
#define FIGOSYSLIB_INVALID_DS_BASE 0xFFFFFFFF
typedef struct SIE_FIGOSYSLIB {
#define RA_FIGOSYSLIB_D0th_ ISC_USE_ONLY 0x00000
#define w32FIGOSYSLIB_D0th_ { \
UNSG32 u_dummy : 32; \
}
/* @'00000 */ struct w32FIGOSYSLIB_D0th_;
/* [31: 0] */ #define BA_FIGOSYSLIB_dummy 0x00000
/* ---:--- */ #define bFIGOSYSLIB_dummy 32 /*bit*/
/* ---:--- */ #define LSb32FIGOSYSLIB_dummy 0 /*:31*/
/* ---:--- */ #define MSK32FIGOSYSLIB_dummy 0xFFFFFFFF
/* ---:--- */ #define GET32FIGOSYSLIB_dummy(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16FIGOSYSLIB_dummy(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32FIGOSYSLIB_dummy(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16FIGOSYSLIB_dummy(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_FIGOSYSLIB;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 FIGOSYSLIB_drvrd (SIE_FIGOSYSLIB *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 FIGOSYSLIB_drvwr (SIE_FIGOSYSLIB *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void FIGOSYSLIB_reset (SIE_FIGOSYSLIB *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define FIGOSYSLIB_check(p,pie,ps8name,hfpErrLOG) FIGOSYSLIB_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define FIGOSYSLIB_print(p, ps8name,hfpErrLOG) FIGOSYSLIB_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 FIGOSYSLIB_cmp (SIE_FIGOSYSLIB *p, SIE_FIGOSYSLIB *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 FIGOSYSLIB_import(SIE_FIGOSYSLIB *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 FIGOSYSLIB_export(SIE_FIGOSYSLIB *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: FIGOSYSLIB
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: FIGOCtrl
* @ HDR
* %unsigned 8 uFlag
* %unsigned 8 SourceId
* %unsigned 8 OutBufId
* %unsigned 8 cmdSize
* * *
* * Total command size
* %unsigned 32 uSyncPoint
* * *
* * 32 bits offset of the stream where the control information should be affective, 0xFFFFFFFF means immediate commands
* : IM_SYNCP 0xFFFFFFFF
**********************************************************************************************************************/
#ifdef h_FIGOCtrl
#else
#define h_FIGOCtrl
#define \
AR_FIGOCtrl \
2
#define \
AB_FIGOCtrl \
3
typedef struct SIE_FIGOCtrl {
#define RA_FIGOCtrl_HDR 0x00000
#define w32FIGOCtrl_HDR { \
UNSG32 uHDR_uFlag : 8; \
UNSG32 uHDR_SourceId : 8; \
UNSG32 uHDR_OutBufId : 8; \
UNSG32 uHDR_cmdSize : 8; \
}
/* @'00000 */ union { UNSG32 u32FIGOCtrl_HDR;
struct w32FIGOCtrl_HDR;
};
/* [ 7: 0] */ #define BA_FIGOCtrl_HDR_uFlag 0x00000
/* ---:--- */ #define bFIGOCtrl_HDR_uFlag 8 /*bit*/
/* ---:--- */ #define LSb32FIGOCtrl_HDR_uFlag 0 /*: 7*/
/* ---:--- */ #define MSK32FIGOCtrl_HDR_uFlag 0x000000FF
/* ---:--- */ #define GET32FIGOCtrl_HDR_uFlag(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16FIGOCtrl_HDR_uFlag(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32FIGOCtrl_HDR_uFlag(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16FIGOCtrl_HDR_uFlag(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_FIGOCtrl_HDR_SourceId 0x00001
/* ---:--- */ #define bFIGOCtrl_HDR_SourceId 8 /*bit*/
/* ---:--- */ #define LSb32FIGOCtrl_HDR_SourceId 8 /*:15*/
/* ---:--- */ #define MSK32FIGOCtrl_HDR_SourceId 0x0000FF00
/* ---:--- */ #define GET32FIGOCtrl_HDR_SourceId(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16FIGOCtrl_HDR_SourceId(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32FIGOCtrl_HDR_SourceId(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16FIGOCtrl_HDR_SourceId(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
/* [23:16] */ #define BA_FIGOCtrl_HDR_OutBufId 0x00002
/* ---:--- */ #define bFIGOCtrl_HDR_OutBufId 8 /*bit*/
/* ---:--- */ #define LSb32FIGOCtrl_HDR_OutBufId 16 /*:23*/
/* ---:--- */ #define MSK32FIGOCtrl_HDR_OutBufId 0x00FF0000
/* ---:--- */ #define GET32FIGOCtrl_HDR_OutBufId(r32) (((r32)>>16)&0x00FF)
/* ---:--- */ #define GET16FIGOCtrl_HDR_OutBufId(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32FIGOCtrl_HDR_OutBufId(r32,v) do{(r32)&=~(0x00FF<<16);(r32)|=((v)&0x00FF)<<16;}while(0)
/* ---:--- */ #define SET16FIGOCtrl_HDR_OutBufId(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [31:24] */ #define BA_FIGOCtrl_HDR_cmdSize 0x00003
/* ---:--- */ #define bFIGOCtrl_HDR_cmdSize 8 /*bit*/
/* ---:--- */ #define LSb32FIGOCtrl_HDR_cmdSize 24 /*:31*/
/* ---:--- */ #define MSK32FIGOCtrl_HDR_cmdSize 0xFF000000
/* ---:--- */ #define GET32FIGOCtrl_HDR_cmdSize(r32) (((r32)>>24)&0x00FF)
/* ---:--- */ #define GET16FIGOCtrl_HDR_cmdSize(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32FIGOCtrl_HDR_cmdSize(r32,v) do{(r32)&=~(0x00FF<<24);(r32)|=((v)&0x00FF)<<24;}while(0)
/* ---:--- */ #define SET16FIGOCtrl_HDR_cmdSize(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
#define RA_FIGOCtrl_HDR1 0x00004
#define w32FIGOCtrl_HDR1 { \
UNSG32 uHDR_uSyncPoint : 32; \
}
/* @'00004 */ union { UNSG32 u32FIGOCtrl_HDR1;
struct w32FIGOCtrl_HDR1;
};
/* [31: 0] */ #define BA_FIGOCtrl_HDR_uSyncPoint 0x00004
/* ---:--- */ #define bFIGOCtrl_HDR_uSyncPoint 32 /*bit*/
/* ---:--- */ #define LSb32FIGOCtrl_HDR_uSyncPoint 0 /*:31*/
/* ---:--- */ #define MSK32FIGOCtrl_HDR_uSyncPoint 0xFFFFFFFF
/* ---:--- */ #define GET32FIGOCtrl_HDR_uSyncPoint(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16FIGOCtrl_HDR_uSyncPoint(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32FIGOCtrl_HDR_uSyncPoint(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16FIGOCtrl_HDR_uSyncPoint(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define FIGOCtrl_HDR_uSyncPoint_IM_SYNCP 0xFFFFFFFF
} SIE_FIGOCtrl;
#define dftFIGOCtrl_HDR 0x00000000
typedef union { UNSG32 u32;
struct w32FIGOCtrl_HDR;
} T32FIGOCtrl_HDR;
#define dftFIGOCtrl_HDR1 0x00000000
typedef union { UNSG32 u32;
struct w32FIGOCtrl_HDR1;
} T32FIGOCtrl_HDR1;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 FIGOCtrl_drvrd (SIE_FIGOCtrl *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 FIGOCtrl_drvwr (SIE_FIGOCtrl *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void FIGOCtrl_reset (SIE_FIGOCtrl *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define FIGOCtrl_check(p,pie,ps8name,hfpErrLOG) FIGOCtrl_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define FIGOCtrl_print(p, ps8name,hfpErrLOG) FIGOCtrl_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 FIGOCtrl_cmp (SIE_FIGOCtrl *p, SIE_FIGOCtrl *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 FIGOCtrl_import(SIE_FIGOCtrl *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 FIGOCtrl_export(SIE_FIGOCtrl *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: FIGOCtrl
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: FIGOEvent
* @ CTRLINFO
* $UINT32 pbData REG [14]
* @ PTRINFO
* %unsigned 32 nFifoOffset 0
* * *
* * For non command event, this field indicates the current read or wirte offset. For command event, this field is unused
* %unsigned 16 uDSFifo32PtrAddr
* * *
* * Application specific event
* %unsigned 1 uEnFlag
* %unsigned 15 Reserved
**********************************************************************************************************************/
#ifdef h_FIGOEvent
#else
#define h_FIGOEvent
#define \
AR_FIGOEvent \
16
#define \
AB_FIGOEvent \
6
typedef struct SIE_FIGOEvent {
#define RA_FIGOEvent_CTRLINFO 0x00000
/* @'00000 */ SIE_UINT32 ie_pbData [14];
#define arr_FIGOEvent_pbData 14
#define RA_FIGOEvent_PTRINFO 0x00038
#define w32FIGOEvent_PTRINFO { \
UNSG32 uPTRINFO_nFifoOffset : 32; \
}
/* @'00038 */ union { UNSG32 u32FIGOEvent_PTRINFO;
struct w32FIGOEvent_PTRINFO;
};
/* [31: 0] */ #define BA_FIGOEvent_PTRINFO_nFifoOffset 0x00038
/* ---:--- */ #define bFIGOEvent_PTRINFO_nFifoOffset 32 /*bit*/
/* ---:--- */ #define LSb32FIGOEvent_PTRINFO_nFifoOffset 0 /*:31*/
/* ---:--- */ #define MSK32FIGOEvent_PTRINFO_nFifoOffset 0xFFFFFFFF
/* ---:--- */ #define GET32FIGOEvent_PTRINFO_nFifoOffset(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16FIGOEvent_PTRINFO_nFifoOffset(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32FIGOEvent_PTRINFO_nFifoOffset(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16FIGOEvent_PTRINFO_nFifoOffset(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_FIGOEvent_PTRINFO1 0x0003C
#define w32FIGOEvent_PTRINFO1 { \
UNSG32 uPTRINFO_uDSFifo32PtrAddr : 16; \
UNSG32 uPTRINFO_uEnFlag : 1; \
UNSG32 uPTRINFO_Reserved : 15; \
}
/* @'0003C */ union { UNSG32 u32FIGOEvent_PTRINFO1;
struct w32FIGOEvent_PTRINFO1;
};
/* [15: 0] */ #define BA_FIGOEvent_PTRINFO_uDSFifo32PtrAddr 0x0003C
/* ---:--- */ #define bFIGOEvent_PTRINFO_uDSFifo32PtrAddr 16 /*bit*/
/* ---:--- */ #define LSb32FIGOEvent_PTRINFO_uDSFifo32PtrAddr 0 /*:15*/
/* ---:--- */ #define MSK32FIGOEvent_PTRINFO_uDSFifo32PtrAddr 0x0000FFFF
/* ---:--- */ #define GET32FIGOEvent_PTRINFO_uDSFifo32PtrAddr(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16FIGOEvent_PTRINFO_uDSFifo32PtrAddr(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32FIGOEvent_PTRINFO_uDSFifo32PtrAddr(r32,v)do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16FIGOEvent_PTRINFO_uDSFifo32PtrAddr(r16,v)do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [16:16] */ #define BA_FIGOEvent_PTRINFO_uEnFlag 0x0003E
/* ---:--- */ #define bFIGOEvent_PTRINFO_uEnFlag 1 /*bit*/
/* ---:--- */ #define LSb32FIGOEvent_PTRINFO_uEnFlag 16 /*:16*/
/* ---:--- */ #define MSK32FIGOEvent_PTRINFO_uEnFlag 0x00010000
/* ---:--- */ #define GET32FIGOEvent_PTRINFO_uEnFlag(r32) (((r32)>>16)&0x0001)
/* ---:--- */ #define GET16FIGOEvent_PTRINFO_uEnFlag(r16) (((r16)>> 0)&0x0001)
/* ---:--- */ #define SET32FIGOEvent_PTRINFO_uEnFlag(r32,v) do{(r32)&=~(0x0001<<16);(r32)|=((v)&0x0001)<<16;}while(0)
/* ---:--- */ #define SET16FIGOEvent_PTRINFO_uEnFlag(r16,v) do{(r16)&=~(0x0001<< 0);(r16)|=((v)&0x0001)<< 0;}while(0)
/* [31:17] */ #define BA_FIGOEvent_PTRINFO_Reserved 0x0003E
/* ---:--- */ #define bFIGOEvent_PTRINFO_Reserved 15 /*bit*/
/* ---:--- */ #define LSb32FIGOEvent_PTRINFO_Reserved 17 /*:31*/
/* ---:--- */ #define MSK32FIGOEvent_PTRINFO_Reserved 0xFFFE0000
/* ---:--- */ #define GET32FIGOEvent_PTRINFO_Reserved(r32) (((r32)>>17)&0x7FFF)
/* ---:--- */ #define GET16FIGOEvent_PTRINFO_Reserved(r16) (((r16)>> 1)&0x7FFF)
/* ---:--- */ #define SET32FIGOEvent_PTRINFO_Reserved(r32,v) do{(r32)&=~(0x7FFF<<17);(r32)|=((v)&0x7FFF)<<17;}while(0)
/* ---:--- */ #define SET16FIGOEvent_PTRINFO_Reserved(r16,v) do{(r16)&=~(0x7FFF<< 1);(r16)|=((v)&0x7FFF)<< 1;}while(0)
} SIE_FIGOEvent;
#define dftFIGOEvent_PTRINFO 0x00000000
typedef union { UNSG32 u32;
struct w32FIGOEvent_PTRINFO;
} T32FIGOEvent_PTRINFO;
#define dftFIGOEvent_PTRINFO1 0x00000000
typedef union { UNSG32 u32;
struct w32FIGOEvent_PTRINFO1;
} T32FIGOEvent_PTRINFO1;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 FIGOEvent_drvrd (SIE_FIGOEvent *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 FIGOEvent_drvwr (SIE_FIGOEvent *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void FIGOEvent_reset (SIE_FIGOEvent *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define FIGOEvent_check(p,pie,ps8name,hfpErrLOG) FIGOEvent_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define FIGOEvent_print(p, ps8name,hfpErrLOG) FIGOEvent_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 FIGOEvent_cmp (SIE_FIGOEvent *p, SIE_FIGOEvent *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 FIGOEvent_import(SIE_FIGOEvent *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 FIGOEvent_export(SIE_FIGOEvent *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: FIGOEvent
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DTCMFifo
* @
* %unsigned 16 nRdOff 0
* * *
* * Current read offset
* %unsigned 16 pbBase 0
* * *
* * DTCM FIFO base address
* @
* %unsigned 16 nWrOff 0
* * *
* * Current write offset
* %unsigned 16 nMaxSize 0
* * *
* * MAX size of DTCM FIFO in bytes
**********************************************************************************************************************/
#ifdef h_DTCMFifo
#else
#define h_DTCMFifo
#define \
AR_DTCMFifo \
2
#define \
AB_DTCMFifo \
3
typedef struct SIE_DTCMFifo {
#define RA_DTCMFifo_D0th_ ISC_USE_ONLY 0x00000
#define w32DTCMFifo_D0th_ { \
UNSG32 u_nRdOff : 16; \
UNSG32 u_pbBase : 16; \
}
/* @'00000 */ struct w32DTCMFifo_D0th_;
/* [15: 0] */ #define BA_DTCMFifo_nRdOff 0x00000
/* ---:--- */ #define bDTCMFifo_nRdOff 16 /*bit*/
/* ---:--- */ #define LSb32DTCMFifo_nRdOff 0 /*:15*/
/* ---:--- */ #define MSK32DTCMFifo_nRdOff 0x0000FFFF
/* ---:--- */ #define GET32DTCMFifo_nRdOff(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DTCMFifo_nRdOff(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMFifo_nRdOff(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DTCMFifo_nRdOff(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DTCMFifo_pbBase 0x00002
/* ---:--- */ #define bDTCMFifo_pbBase 16 /*bit*/
/* ---:--- */ #define LSb32DTCMFifo_pbBase 16 /*:31*/
/* ---:--- */ #define MSK32DTCMFifo_pbBase 0xFFFF0000
/* ---:--- */ #define GET32DTCMFifo_pbBase(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DTCMFifo_pbBase(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMFifo_pbBase(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DTCMFifo_pbBase(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DTCMFifo_D1th_ ISC_USE_ONLY 0x00004
#define w32DTCMFifo_D1th_ { \
UNSG32 u_nWrOff : 16; \
UNSG32 u_nMaxSize : 16; \
}
/* @'00004 */ struct w32DTCMFifo_D1th_;
/* [15: 0] */ #define BA_DTCMFifo_nWrOff 0x00004
/* ---:--- */ #define bDTCMFifo_nWrOff 16 /*bit*/
/* ---:--- */ #define LSb32DTCMFifo_nWrOff 0 /*:15*/
/* ---:--- */ #define MSK32DTCMFifo_nWrOff 0x0000FFFF
/* ---:--- */ #define GET32DTCMFifo_nWrOff(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DTCMFifo_nWrOff(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMFifo_nWrOff(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DTCMFifo_nWrOff(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DTCMFifo_nMaxSize 0x00006
/* ---:--- */ #define bDTCMFifo_nMaxSize 16 /*bit*/
/* ---:--- */ #define LSb32DTCMFifo_nMaxSize 16 /*:31*/
/* ---:--- */ #define MSK32DTCMFifo_nMaxSize 0xFFFF0000
/* ---:--- */ #define GET32DTCMFifo_nMaxSize(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DTCMFifo_nMaxSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMFifo_nMaxSize(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DTCMFifo_nMaxSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
} SIE_DTCMFifo;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DTCMFifo_drvrd (SIE_DTCMFifo *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DTCMFifo_drvwr (SIE_DTCMFifo *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DTCMFifo_reset (SIE_DTCMFifo *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DTCMFifo_check(p,pie,ps8name,hfpErrLOG) DTCMFifo_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DTCMFifo_print(p, ps8name,hfpErrLOG) DTCMFifo_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DTCMFifo_cmp (SIE_DTCMFifo *p, SIE_DTCMFifo *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DTCMFifo_import(SIE_DTCMFifo *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DTCMFifo_export(SIE_DTCMFifo *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DTCMFifo
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DSFifo32
* @
* %unsigned 32 nRdOff 0
* * *
* * Current FIFO read offset from the base address of the FIFO
* @
* %unsigned 32 pbBase 0
* * *
* * 32-bits address of the FIFO buffer base in DDR
* @
* %unsigned 32 nWrOff 0
* * *
* * Current FIFO write offset from the base address of the FIFO
* @
* %unsigned 32 nMaxSize 0
* * *
* * MAX size of DS FIFO in bytes
**********************************************************************************************************************/
#ifdef h_DSFifo32
#else
#define h_DSFifo32
#define \
AR_DSFifo32 \
4
#define \
AB_DSFifo32 \
4
typedef struct SIE_DSFifo32 {
#define RA_DSFifo32_D0th_ ISC_USE_ONLY 0x00000
#define w32DSFifo32_D0th_ { \
UNSG32 u_nRdOff : 32; \
}
/* @'00000 */ struct w32DSFifo32_D0th_;
/* [31: 0] */ #define BA_DSFifo32_nRdOff 0x00000
/* ---:--- */ #define bDSFifo32_nRdOff 32 /*bit*/
/* ---:--- */ #define LSb32DSFifo32_nRdOff 0 /*:31*/
/* ---:--- */ #define MSK32DSFifo32_nRdOff 0xFFFFFFFF
/* ---:--- */ #define GET32DSFifo32_nRdOff(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DSFifo32_nRdOff(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DSFifo32_nRdOff(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DSFifo32_nRdOff(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DSFifo32_D1th_ ISC_USE_ONLY 0x00004
#define w32DSFifo32_D1th_ { \
UNSG32 u_pbBase : 32; \
}
/* @'00004 */ struct w32DSFifo32_D1th_;
/* [31: 0] */ #define BA_DSFifo32_pbBase 0x00004
/* ---:--- */ #define bDSFifo32_pbBase 32 /*bit*/
/* ---:--- */ #define LSb32DSFifo32_pbBase 0 /*:31*/
/* ---:--- */ #define MSK32DSFifo32_pbBase 0xFFFFFFFF
/* ---:--- */ #define GET32DSFifo32_pbBase(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DSFifo32_pbBase(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DSFifo32_pbBase(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DSFifo32_pbBase(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DSFifo32_D2th_ ISC_USE_ONLY 0x00008
#define w32DSFifo32_D2th_ { \
UNSG32 u_nWrOff : 32; \
}
/* @'00008 */ struct w32DSFifo32_D2th_;
/* [31: 0] */ #define BA_DSFifo32_nWrOff 0x00008
/* ---:--- */ #define bDSFifo32_nWrOff 32 /*bit*/
/* ---:--- */ #define LSb32DSFifo32_nWrOff 0 /*:31*/
/* ---:--- */ #define MSK32DSFifo32_nWrOff 0xFFFFFFFF
/* ---:--- */ #define GET32DSFifo32_nWrOff(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DSFifo32_nWrOff(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DSFifo32_nWrOff(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DSFifo32_nWrOff(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DSFifo32_D3th_ ISC_USE_ONLY 0x0000C
#define w32DSFifo32_D3th_ { \
UNSG32 u_nMaxSize : 32; \
}
/* @'0000C */ struct w32DSFifo32_D3th_;
/* [31: 0] */ #define BA_DSFifo32_nMaxSize 0x0000C
/* ---:--- */ #define bDSFifo32_nMaxSize 32 /*bit*/
/* ---:--- */ #define LSb32DSFifo32_nMaxSize 0 /*:31*/
/* ---:--- */ #define MSK32DSFifo32_nMaxSize 0xFFFFFFFF
/* ---:--- */ #define GET32DSFifo32_nMaxSize(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DSFifo32_nMaxSize(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DSFifo32_nMaxSize(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DSFifo32_nMaxSize(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_DSFifo32;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DSFifo32_drvrd (SIE_DSFifo32 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DSFifo32_drvwr (SIE_DSFifo32 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DSFifo32_reset (SIE_DSFifo32 *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DSFifo32_check(p,pie,ps8name,hfpErrLOG) DSFifo32_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DSFifo32_print(p, ps8name,hfpErrLOG) DSFifo32_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DSFifo32_cmp (SIE_DSFifo32 *p, SIE_DSFifo32 *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DSFifo32_import(SIE_DSFifo32 *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DSFifo32_export(SIE_DSFifo32 *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DSFifo32
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DTCMBlk
* @ HDR
* %unsigned 1 isDSFinished 0
* * *
* %unsigned 15 nReserved 0
* %unsigned 16 uBackDSID 0
* * *
* %unsigned 16 addrHdr 0
* * *
* * Address to the block header
* %unsigned 16 hdrSize 0
* * *
* * Size of the block header
* @ DAT
* $DTCMFifo dtcmFifo 0
* * *
* * Bytes of data available in the current data block
**********************************************************************************************************************/
#ifdef h_DTCMBlk
#else
#define h_DTCMBlk
#define \
AR_DTCMBlk \
4
#define \
AB_DTCMBlk \
4
typedef struct SIE_DTCMBlk {
#define RA_DTCMBlk_HDR 0x00000
#define w32DTCMBlk_HDR { \
UNSG32 uHDR_isDSFinished : 1; \
UNSG32 uHDR_nReserved : 15; \
UNSG32 uHDR_uBackDSID : 16; \
}
/* @'00000 */ union { UNSG32 u32DTCMBlk_HDR;
struct w32DTCMBlk_HDR;
};
/* [ 0: 0] */ #define BA_DTCMBlk_HDR_isDSFinished 0x00000
/* ---:--- */ #define bDTCMBlk_HDR_isDSFinished 1 /*bit*/
/* ---:--- */ #define LSb32DTCMBlk_HDR_isDSFinished 0 /*: 0*/
/* ---:--- */ #define MSK32DTCMBlk_HDR_isDSFinished 0x00000001
/* ---:--- */ #define GET32DTCMBlk_HDR_isDSFinished(r32) (((r32)>> 0)&0x0001)
/* ---:--- */ #define GET16DTCMBlk_HDR_isDSFinished(r16) (((r16)>> 0)&0x0001)
/* ---:--- */ #define SET32DTCMBlk_HDR_isDSFinished(r32,v) do{(r32)&=~(0x0001<< 0);(r32)|=((v)&0x0001)<< 0;}while(0)
/* ---:--- */ #define SET16DTCMBlk_HDR_isDSFinished(r16,v) do{(r16)&=~(0x0001<< 0);(r16)|=((v)&0x0001)<< 0;}while(0)
/* [15: 1] */ #define BA_DTCMBlk_HDR_nReserved 0x00000
/* ---:--- */ #define bDTCMBlk_HDR_nReserved 15 /*bit*/
/* ---:--- */ #define LSb32DTCMBlk_HDR_nReserved 1 /*:15*/
/* ---:--- */ #define MSK32DTCMBlk_HDR_nReserved 0x0000FFFE
/* ---:--- */ #define GET32DTCMBlk_HDR_nReserved(r32) (((r32)>> 1)&0x7FFF)
/* ---:--- */ #define GET16DTCMBlk_HDR_nReserved(r16) (((r16)>> 1)&0x7FFF)
/* ---:--- */ #define SET32DTCMBlk_HDR_nReserved(r32,v) do{(r32)&=~(0x7FFF<< 1);(r32)|=((v)&0x7FFF)<< 1;}while(0)
/* ---:--- */ #define SET16DTCMBlk_HDR_nReserved(r16,v) do{(r16)&=~(0x7FFF<< 1);(r16)|=((v)&0x7FFF)<< 1;}while(0)
/* [31:16] */ #define BA_DTCMBlk_HDR_uBackDSID 0x00002
/* ---:--- */ #define bDTCMBlk_HDR_uBackDSID 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlk_HDR_uBackDSID 16 /*:31*/
/* ---:--- */ #define MSK32DTCMBlk_HDR_uBackDSID 0xFFFF0000
/* ---:--- */ #define GET32DTCMBlk_HDR_uBackDSID(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlk_HDR_uBackDSID(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlk_HDR_uBackDSID(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DTCMBlk_HDR_uBackDSID(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DTCMBlk_HDR1 0x00004
#define w32DTCMBlk_HDR1 { \
UNSG32 uHDR_addrHdr : 16; \
UNSG32 uHDR_hdrSize : 16; \
}
/* @'00004 */ union { UNSG32 u32DTCMBlk_HDR1;
struct w32DTCMBlk_HDR1;
};
/* [15: 0] */ #define BA_DTCMBlk_HDR_addrHdr 0x00004
/* ---:--- */ #define bDTCMBlk_HDR_addrHdr 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlk_HDR_addrHdr 0 /*:15*/
/* ---:--- */ #define MSK32DTCMBlk_HDR_addrHdr 0x0000FFFF
/* ---:--- */ #define GET32DTCMBlk_HDR_addrHdr(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlk_HDR_addrHdr(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlk_HDR_addrHdr(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DTCMBlk_HDR_addrHdr(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DTCMBlk_HDR_hdrSize 0x00006
/* ---:--- */ #define bDTCMBlk_HDR_hdrSize 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlk_HDR_hdrSize 16 /*:31*/
/* ---:--- */ #define MSK32DTCMBlk_HDR_hdrSize 0xFFFF0000
/* ---:--- */ #define GET32DTCMBlk_HDR_hdrSize(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlk_HDR_hdrSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlk_HDR_hdrSize(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DTCMBlk_HDR_hdrSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DTCMBlk_DAT 0x00008
/* @'00008 */ SIE_DTCMFifo ie_dtcmFifo;
} SIE_DTCMBlk;
#define dftDTCMBlk_HDR 0x00000000
typedef union { UNSG32 u32;
struct w32DTCMBlk_HDR;
} T32DTCMBlk_HDR;
#define dftDTCMBlk_HDR1 0x00000000
typedef union { UNSG32 u32;
struct w32DTCMBlk_HDR1;
} T32DTCMBlk_HDR1;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DTCMBlk_drvrd (SIE_DTCMBlk *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DTCMBlk_drvwr (SIE_DTCMBlk *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DTCMBlk_reset (SIE_DTCMBlk *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DTCMBlk_check(p,pie,ps8name,hfpErrLOG) DTCMBlk_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DTCMBlk_print(p, ps8name,hfpErrLOG) DTCMBlk_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DTCMBlk_cmp (SIE_DTCMBlk *p, SIE_DTCMBlk *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DTCMBlk_import(SIE_DTCMBlk *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DTCMBlk_export(SIE_DTCMBlk *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DTCMBlk
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DTCMBlkQ
* @ HDR
* %unsigned 16 nRdOff 0
* * *
* * Offset of the block to be read
* %unsigned 16 nWrOff 0
* * *
* * Offset of the block to be written
* %unsigned 16 nTotalSize
* * *
* * Total bytes of data buffering in this block queue
* %unsigned 16 nMaxSize
* * *
* * Total bytes of data can be held in the memory
* @ LIST
* %unsigned 16 blkPtrList REG [16]
* * *
* * Block pointer
**********************************************************************************************************************/
#ifdef h_DTCMBlkQ
#else
#define h_DTCMBlkQ
#define \
AR_DTCMBlkQ \
10
#define \
AB_DTCMBlkQ \
6
typedef struct SIE_DTCMBlkQ {
#define RA_DTCMBlkQ_HDR 0x00000
#define w32DTCMBlkQ_HDR { \
UNSG32 uHDR_nRdOff : 16; \
UNSG32 uHDR_nWrOff : 16; \
}
/* @'00000 */ union { UNSG32 u32DTCMBlkQ_HDR;
struct w32DTCMBlkQ_HDR;
};
/* [15: 0] */ #define BA_DTCMBlkQ_HDR_nRdOff 0x00000
/* ---:--- */ #define bDTCMBlkQ_HDR_nRdOff 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_HDR_nRdOff 0 /*:15*/
/* ---:--- */ #define MSK32DTCMBlkQ_HDR_nRdOff 0x0000FFFF
/* ---:--- */ #define GET32DTCMBlkQ_HDR_nRdOff(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_HDR_nRdOff(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_HDR_nRdOff(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_HDR_nRdOff(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DTCMBlkQ_HDR_nWrOff 0x00002
/* ---:--- */ #define bDTCMBlkQ_HDR_nWrOff 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_HDR_nWrOff 16 /*:31*/
/* ---:--- */ #define MSK32DTCMBlkQ_HDR_nWrOff 0xFFFF0000
/* ---:--- */ #define GET32DTCMBlkQ_HDR_nWrOff(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_HDR_nWrOff(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_HDR_nWrOff(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_HDR_nWrOff(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DTCMBlkQ_HDR1 0x00004
#define w32DTCMBlkQ_HDR1 { \
UNSG32 uHDR_nTotalSize : 16; \
UNSG32 uHDR_nMaxSize : 16; \
}
/* @'00004 */ union { UNSG32 u32DTCMBlkQ_HDR1;
struct w32DTCMBlkQ_HDR1;
};
/* [15: 0] */ #define BA_DTCMBlkQ_HDR_nTotalSize 0x00004
/* ---:--- */ #define bDTCMBlkQ_HDR_nTotalSize 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_HDR_nTotalSize 0 /*:15*/
/* ---:--- */ #define MSK32DTCMBlkQ_HDR_nTotalSize 0x0000FFFF
/* ---:--- */ #define GET32DTCMBlkQ_HDR_nTotalSize(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_HDR_nTotalSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_HDR_nTotalSize(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_HDR_nTotalSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DTCMBlkQ_HDR_nMaxSize 0x00006
/* ---:--- */ #define bDTCMBlkQ_HDR_nMaxSize 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_HDR_nMaxSize 16 /*:31*/
/* ---:--- */ #define MSK32DTCMBlkQ_HDR_nMaxSize 0xFFFF0000
/* ---:--- */ #define GET32DTCMBlkQ_HDR_nMaxSize(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_HDR_nMaxSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_HDR_nMaxSize(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_HDR_nMaxSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DTCMBlkQ_LIST 0x00008
#define w32DTCMBlkQ_LIST { \
UNSG32 uLIST_blkPtrList_0i : 16; \
UNSG32 uLIST_blkPtrList_1i : 16; \
}
/* @'00008 */ union { UNSG32 u32DTCMBlkQ_LIST;
struct w32DTCMBlkQ_LIST;
};
/* [15: 0] */ #define BA_DTCMBlkQ_LIST_blkPtrList_0i 0x00008
/* ---:--- */ #define bDTCMBlkQ_LIST_blkPtrList_0i 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_LIST_blkPtrList_0i 0 /*:15*/
/* ---:--- */ #define MSK32DTCMBlkQ_LIST_blkPtrList_0i 0x0000FFFF
/* ---:--- */ #define GET32DTCMBlkQ_LIST_blkPtrList_0i(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_LIST_blkPtrList_0i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_LIST_blkPtrList_0i(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_LIST_blkPtrList_0i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DTCMBlkQ_LIST_blkPtrList_1i 0x0000A
/* ---:--- */ #define bDTCMBlkQ_LIST_blkPtrList_1i 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_LIST_blkPtrList_1i 16 /*:31*/
/* ---:--- */ #define MSK32DTCMBlkQ_LIST_blkPtrList_1i 0xFFFF0000
/* ---:--- */ #define GET32DTCMBlkQ_LIST_blkPtrList_1i(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_LIST_blkPtrList_1i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_LIST_blkPtrList_1i(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_LIST_blkPtrList_1i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DTCMBlkQ_LIST1 0x0000C
#define w32DTCMBlkQ_LIST1 { \
UNSG32 uLIST_blkPtrList_2i : 16; \
UNSG32 uLIST_blkPtrList_3i : 16; \
}
/* @'0000C */ union { UNSG32 u32DTCMBlkQ_LIST1;
struct w32DTCMBlkQ_LIST1;
};
/* [15: 0] */ #define BA_DTCMBlkQ_LIST_blkPtrList_2i 0x0000C
/* ---:--- */ #define bDTCMBlkQ_LIST_blkPtrList_2i 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_LIST_blkPtrList_2i 0 /*:15*/
/* ---:--- */ #define MSK32DTCMBlkQ_LIST_blkPtrList_2i 0x0000FFFF
/* ---:--- */ #define GET32DTCMBlkQ_LIST_blkPtrList_2i(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_LIST_blkPtrList_2i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_LIST_blkPtrList_2i(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_LIST_blkPtrList_2i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DTCMBlkQ_LIST_blkPtrList_3i 0x0000E
/* ---:--- */ #define bDTCMBlkQ_LIST_blkPtrList_3i 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_LIST_blkPtrList_3i 16 /*:31*/
/* ---:--- */ #define MSK32DTCMBlkQ_LIST_blkPtrList_3i 0xFFFF0000
/* ---:--- */ #define GET32DTCMBlkQ_LIST_blkPtrList_3i(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_LIST_blkPtrList_3i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_LIST_blkPtrList_3i(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_LIST_blkPtrList_3i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DTCMBlkQ_LIST2 0x00010
#define w32DTCMBlkQ_LIST2 { \
UNSG32 uLIST_blkPtrList_4i : 16; \
UNSG32 uLIST_blkPtrList_5i : 16; \
}
/* @'00010 */ union { UNSG32 u32DTCMBlkQ_LIST2;
struct w32DTCMBlkQ_LIST2;
};
/* [15: 0] */ #define BA_DTCMBlkQ_LIST_blkPtrList_4i 0x00010
/* ---:--- */ #define bDTCMBlkQ_LIST_blkPtrList_4i 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_LIST_blkPtrList_4i 0 /*:15*/
/* ---:--- */ #define MSK32DTCMBlkQ_LIST_blkPtrList_4i 0x0000FFFF
/* ---:--- */ #define GET32DTCMBlkQ_LIST_blkPtrList_4i(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_LIST_blkPtrList_4i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_LIST_blkPtrList_4i(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_LIST_blkPtrList_4i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DTCMBlkQ_LIST_blkPtrList_5i 0x00012
/* ---:--- */ #define bDTCMBlkQ_LIST_blkPtrList_5i 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_LIST_blkPtrList_5i 16 /*:31*/
/* ---:--- */ #define MSK32DTCMBlkQ_LIST_blkPtrList_5i 0xFFFF0000
/* ---:--- */ #define GET32DTCMBlkQ_LIST_blkPtrList_5i(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_LIST_blkPtrList_5i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_LIST_blkPtrList_5i(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_LIST_blkPtrList_5i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DTCMBlkQ_LIST3 0x00014
#define w32DTCMBlkQ_LIST3 { \
UNSG32 uLIST_blkPtrList_6i : 16; \
UNSG32 uLIST_blkPtrList_7i : 16; \
}
/* @'00014 */ union { UNSG32 u32DTCMBlkQ_LIST3;
struct w32DTCMBlkQ_LIST3;
};
/* [15: 0] */ #define BA_DTCMBlkQ_LIST_blkPtrList_6i 0x00014
/* ---:--- */ #define bDTCMBlkQ_LIST_blkPtrList_6i 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_LIST_blkPtrList_6i 0 /*:15*/
/* ---:--- */ #define MSK32DTCMBlkQ_LIST_blkPtrList_6i 0x0000FFFF
/* ---:--- */ #define GET32DTCMBlkQ_LIST_blkPtrList_6i(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_LIST_blkPtrList_6i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_LIST_blkPtrList_6i(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_LIST_blkPtrList_6i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DTCMBlkQ_LIST_blkPtrList_7i 0x00016
/* ---:--- */ #define bDTCMBlkQ_LIST_blkPtrList_7i 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_LIST_blkPtrList_7i 16 /*:31*/
/* ---:--- */ #define MSK32DTCMBlkQ_LIST_blkPtrList_7i 0xFFFF0000
/* ---:--- */ #define GET32DTCMBlkQ_LIST_blkPtrList_7i(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_LIST_blkPtrList_7i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_LIST_blkPtrList_7i(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_LIST_blkPtrList_7i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DTCMBlkQ_LIST4 0x00018
#define w32DTCMBlkQ_LIST4 { \
UNSG32 uLIST_blkPtrList_8i : 16; \
UNSG32 uLIST_blkPtrList_9i : 16; \
}
/* @'00018 */ union { UNSG32 u32DTCMBlkQ_LIST4;
struct w32DTCMBlkQ_LIST4;
};
/* [15: 0] */ #define BA_DTCMBlkQ_LIST_blkPtrList_8i 0x00018
/* ---:--- */ #define bDTCMBlkQ_LIST_blkPtrList_8i 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_LIST_blkPtrList_8i 0 /*:15*/
/* ---:--- */ #define MSK32DTCMBlkQ_LIST_blkPtrList_8i 0x0000FFFF
/* ---:--- */ #define GET32DTCMBlkQ_LIST_blkPtrList_8i(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_LIST_blkPtrList_8i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_LIST_blkPtrList_8i(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_LIST_blkPtrList_8i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DTCMBlkQ_LIST_blkPtrList_9i 0x0001A
/* ---:--- */ #define bDTCMBlkQ_LIST_blkPtrList_9i 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_LIST_blkPtrList_9i 16 /*:31*/
/* ---:--- */ #define MSK32DTCMBlkQ_LIST_blkPtrList_9i 0xFFFF0000
/* ---:--- */ #define GET32DTCMBlkQ_LIST_blkPtrList_9i(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_LIST_blkPtrList_9i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_LIST_blkPtrList_9i(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_LIST_blkPtrList_9i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DTCMBlkQ_LIST5 0x0001C
#define w32DTCMBlkQ_LIST5 { \
UNSG32 uLIST_blkPtrList_10i : 16; \
UNSG32 uLIST_blkPtrList_11i : 16; \
}
/* @'0001C */ union { UNSG32 u32DTCMBlkQ_LIST5;
struct w32DTCMBlkQ_LIST5;
};
/* [15: 0] */ #define BA_DTCMBlkQ_LIST_blkPtrList_10i 0x0001C
/* ---:--- */ #define bDTCMBlkQ_LIST_blkPtrList_10i 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_LIST_blkPtrList_10i 0 /*:15*/
/* ---:--- */ #define MSK32DTCMBlkQ_LIST_blkPtrList_10i 0x0000FFFF
/* ---:--- */ #define GET32DTCMBlkQ_LIST_blkPtrList_10i(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_LIST_blkPtrList_10i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_LIST_blkPtrList_10i(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_LIST_blkPtrList_10i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DTCMBlkQ_LIST_blkPtrList_11i 0x0001E
/* ---:--- */ #define bDTCMBlkQ_LIST_blkPtrList_11i 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_LIST_blkPtrList_11i 16 /*:31*/
/* ---:--- */ #define MSK32DTCMBlkQ_LIST_blkPtrList_11i 0xFFFF0000
/* ---:--- */ #define GET32DTCMBlkQ_LIST_blkPtrList_11i(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_LIST_blkPtrList_11i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_LIST_blkPtrList_11i(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_LIST_blkPtrList_11i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DTCMBlkQ_LIST6 0x00020
#define w32DTCMBlkQ_LIST6 { \
UNSG32 uLIST_blkPtrList_12i : 16; \
UNSG32 uLIST_blkPtrList_13i : 16; \
}
/* @'00020 */ union { UNSG32 u32DTCMBlkQ_LIST6;
struct w32DTCMBlkQ_LIST6;
};
/* [15: 0] */ #define BA_DTCMBlkQ_LIST_blkPtrList_12i 0x00020
/* ---:--- */ #define bDTCMBlkQ_LIST_blkPtrList_12i 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_LIST_blkPtrList_12i 0 /*:15*/
/* ---:--- */ #define MSK32DTCMBlkQ_LIST_blkPtrList_12i 0x0000FFFF
/* ---:--- */ #define GET32DTCMBlkQ_LIST_blkPtrList_12i(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_LIST_blkPtrList_12i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_LIST_blkPtrList_12i(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_LIST_blkPtrList_12i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DTCMBlkQ_LIST_blkPtrList_13i 0x00022
/* ---:--- */ #define bDTCMBlkQ_LIST_blkPtrList_13i 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_LIST_blkPtrList_13i 16 /*:31*/
/* ---:--- */ #define MSK32DTCMBlkQ_LIST_blkPtrList_13i 0xFFFF0000
/* ---:--- */ #define GET32DTCMBlkQ_LIST_blkPtrList_13i(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_LIST_blkPtrList_13i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_LIST_blkPtrList_13i(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_LIST_blkPtrList_13i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DTCMBlkQ_LIST7 0x00024
#define w32DTCMBlkQ_LIST7 { \
UNSG32 uLIST_blkPtrList_14i : 16; \
UNSG32 uLIST_blkPtrList_15i : 16; \
}
/* @'00024 */ union { UNSG32 u32DTCMBlkQ_LIST7;
struct w32DTCMBlkQ_LIST7;
};
/* [15: 0] */ #define BA_DTCMBlkQ_LIST_blkPtrList_14i 0x00024
/* ---:--- */ #define bDTCMBlkQ_LIST_blkPtrList_14i 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_LIST_blkPtrList_14i 0 /*:15*/
/* ---:--- */ #define MSK32DTCMBlkQ_LIST_blkPtrList_14i 0x0000FFFF
/* ---:--- */ #define GET32DTCMBlkQ_LIST_blkPtrList_14i(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_LIST_blkPtrList_14i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_LIST_blkPtrList_14i(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_LIST_blkPtrList_14i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DTCMBlkQ_LIST_blkPtrList_15i 0x00026
/* ---:--- */ #define bDTCMBlkQ_LIST_blkPtrList_15i 16 /*bit*/
/* ---:--- */ #define LSb32DTCMBlkQ_LIST_blkPtrList_15i 16 /*:31*/
/* ---:--- */ #define MSK32DTCMBlkQ_LIST_blkPtrList_15i 0xFFFF0000
/* ---:--- */ #define GET32DTCMBlkQ_LIST_blkPtrList_15i(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DTCMBlkQ_LIST_blkPtrList_15i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DTCMBlkQ_LIST_blkPtrList_15i(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DTCMBlkQ_LIST_blkPtrList_15i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
} SIE_DTCMBlkQ;
#define dftDTCMBlkQ_HDR 0x00000000
typedef union { UNSG32 u32;
struct w32DTCMBlkQ_HDR;
} T32DTCMBlkQ_HDR;
#define dftDTCMBlkQ_HDR1 0x00000000
typedef union { UNSG32 u32;
struct w32DTCMBlkQ_HDR1;
} T32DTCMBlkQ_HDR1;
#define dftDTCMBlkQ_LIST 0x00000000
typedef union { UNSG32 u32;
struct w32DTCMBlkQ_LIST;
} T32DTCMBlkQ_LIST;
#define dftDTCMBlkQ_LIST1 0x00000000
typedef union { UNSG32 u32;
struct w32DTCMBlkQ_LIST1;
} T32DTCMBlkQ_LIST1;
#define dftDTCMBlkQ_LIST2 0x00000000
typedef union { UNSG32 u32;
struct w32DTCMBlkQ_LIST2;
} T32DTCMBlkQ_LIST2;
#define dftDTCMBlkQ_LIST3 0x00000000
typedef union { UNSG32 u32;
struct w32DTCMBlkQ_LIST3;
} T32DTCMBlkQ_LIST3;
#define dftDTCMBlkQ_LIST4 0x00000000
typedef union { UNSG32 u32;
struct w32DTCMBlkQ_LIST4;
} T32DTCMBlkQ_LIST4;
#define dftDTCMBlkQ_LIST5 0x00000000
typedef union { UNSG32 u32;
struct w32DTCMBlkQ_LIST5;
} T32DTCMBlkQ_LIST5;
#define dftDTCMBlkQ_LIST6 0x00000000
typedef union { UNSG32 u32;
struct w32DTCMBlkQ_LIST6;
} T32DTCMBlkQ_LIST6;
#define dftDTCMBlkQ_LIST7 0x00000000
typedef union { UNSG32 u32;
struct w32DTCMBlkQ_LIST7;
} T32DTCMBlkQ_LIST7;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DTCMBlkQ_drvrd (SIE_DTCMBlkQ *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DTCMBlkQ_drvwr (SIE_DTCMBlkQ *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DTCMBlkQ_reset (SIE_DTCMBlkQ *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DTCMBlkQ_check(p,pie,ps8name,hfpErrLOG) DTCMBlkQ_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DTCMBlkQ_print(p, ps8name,hfpErrLOG) DTCMBlkQ_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DTCMBlkQ_cmp (SIE_DTCMBlkQ *p, SIE_DTCMBlkQ *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DTCMBlkQ_import(SIE_DTCMBlkQ *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DTCMBlkQ_export(SIE_DTCMBlkQ *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DTCMBlkQ
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DTCMBlkPool
* @ PTR
* $DTCMBlkQ blkQ
* @ DAT
* $DTCMBlk blkList REG [16]
* * *
* * Block list
**********************************************************************************************************************/
#ifdef h_DTCMBlkPool
#else
#define h_DTCMBlkPool
#define \
AR_DTCMBlkPool \
74
#define \
AB_DTCMBlkPool \
9
typedef struct SIE_DTCMBlkPool {
#define RA_DTCMBlkPool_PTR 0x00000
/* @'00000 */ SIE_DTCMBlkQ ie_blkQ;
#define RA_DTCMBlkPool_DAT 0x00028
/* @'00028 */ SIE_DTCMBlk ie_blkList [16];
#define arr_DTCMBlkPool_blkList 16
} SIE_DTCMBlkPool;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DTCMBlkPool_drvrd (SIE_DTCMBlkPool *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DTCMBlkPool_drvwr (SIE_DTCMBlkPool *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DTCMBlkPool_reset (SIE_DTCMBlkPool *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DTCMBlkPool_check(p,pie,ps8name,hfpErrLOG) DTCMBlkPool_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DTCMBlkPool_print(p, ps8name,hfpErrLOG) DTCMBlkPool_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DTCMBlkPool_cmp (SIE_DTCMBlkPool *p, SIE_DTCMBlkPool *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DTCMBlkPool_import(SIE_DTCMBlkPool *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DTCMBlkPool_export(SIE_DTCMBlkPool *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DTCMBlkPool
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: IOCtrlFlag
* @ IOCTRL
* %unsigned 1 datFlag 0
* * *
* * 1 : Read/Write Data
* * 0: Read/Write Control
* %unsigned 3 opFlag
* : PEAK_OP 0
* * *
* * Copy content without moving pointers
* : SEEK_OP 1
* * *
* * Move pointers without copy data
* : CLEAR_OP 2
* * *
* * Clear all of the pending data and without copying
* : APPEND_OP 3
* * *
* * Append the data into the stream
* : FLUSH_OP 4
* * *
* * Append the data into the stream and flush all the pending data
**********************************************************************************************************************/
#ifdef h_IOCtrlFlag
#else
#define h_IOCtrlFlag
#define \
AR_IOCtrlFlag \
1
#define \
AB_IOCtrlFlag \
2
typedef struct SIE_IOCtrlFlag {
#define RA_IOCtrlFlag_IOCTRL 0x00000
#define w32IOCtrlFlag_IOCTRL { \
UNSG32 uIOCTRL_datFlag : 1; \
UNSG32 uIOCTRL_opFlag : 3; \
UNSG32 _x00000 : 28; \
}
/* @'00000 */ union { UNSG32 u32IOCtrlFlag_IOCTRL;
struct w32IOCtrlFlag_IOCTRL;
};
/* [ 0: 0] */ #define BA_IOCtrlFlag_IOCTRL_datFlag 0x00000
/* ---:--- */ #define bIOCtrlFlag_IOCTRL_datFlag 1 /*bit*/
/* ---:--- */ #define LSb32IOCtrlFlag_IOCTRL_datFlag 0 /*: 0*/
/* ---:--- */ #define MSK32IOCtrlFlag_IOCTRL_datFlag 0x00000001
/* ---:--- */ #define GET32IOCtrlFlag_IOCTRL_datFlag(r32) (((r32)>> 0)&0x0001)
/* ---:--- */ #define GET16IOCtrlFlag_IOCTRL_datFlag(r16) (((r16)>> 0)&0x0001)
/* ---:--- */ #define SET32IOCtrlFlag_IOCTRL_datFlag(r32,v) do{(r32)&=~(0x0001<< 0);(r32)|=((v)&0x0001)<< 0;}while(0)
/* ---:--- */ #define SET16IOCtrlFlag_IOCTRL_datFlag(r16,v) do{(r16)&=~(0x0001<< 0);(r16)|=((v)&0x0001)<< 0;}while(0)
/* [ 3: 1] */ #define BA_IOCtrlFlag_IOCTRL_opFlag 0x00000
/* ---:--- */ #define bIOCtrlFlag_IOCTRL_opFlag 3 /*bit*/
/* ---:--- */ #define LSb32IOCtrlFlag_IOCTRL_opFlag 1 /*: 3*/
/* ---:--- */ #define MSK32IOCtrlFlag_IOCTRL_opFlag 0x0000000E
/* ---:--- */ #define GET32IOCtrlFlag_IOCTRL_opFlag(r32) (((r32)>> 1)&0x0007)
/* ---:--- */ #define GET16IOCtrlFlag_IOCTRL_opFlag(r16) (((r16)>> 1)&0x0007)
/* ---:--- */ #define SET32IOCtrlFlag_IOCTRL_opFlag(r32,v) do{(r32)&=~(0x0007<< 1);(r32)|=((v)&0x0007)<< 1;}while(0)
/* ---:--- */ #define SET16IOCtrlFlag_IOCTRL_opFlag(r16,v) do{(r16)&=~(0x0007<< 1);(r16)|=((v)&0x0007)<< 1;}while(0)
#define IOCtrlFlag_IOCTRL_opFlag_PEAK_OP 0x0
#define IOCtrlFlag_IOCTRL_opFlag_SEEK_OP 0x1
#define IOCtrlFlag_IOCTRL_opFlag_CLEAR_OP 0x2
#define IOCtrlFlag_IOCTRL_opFlag_APPEND_OP 0x3
#define IOCtrlFlag_IOCTRL_opFlag_FLUSH_OP 0x4
} SIE_IOCtrlFlag;
#define dftIOCtrlFlag_IOCTRL 0x00000000
typedef union { UNSG32 u32;
struct w32IOCtrlFlag_IOCTRL;
} T32IOCtrlFlag_IOCTRL;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 IOCtrlFlag_drvrd (SIE_IOCtrlFlag *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 IOCtrlFlag_drvwr (SIE_IOCtrlFlag *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void IOCtrlFlag_reset (SIE_IOCtrlFlag *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define IOCtrlFlag_check(p,pie,ps8name,hfpErrLOG) IOCtrlFlag_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define IOCtrlFlag_print(p, ps8name,hfpErrLOG) IOCtrlFlag_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 IOCtrlFlag_cmp (SIE_IOCtrlFlag *p, SIE_IOCtrlFlag *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 IOCtrlFlag_import(SIE_IOCtrlFlag *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 IOCtrlFlag_export(SIE_IOCtrlFlag *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: IOCtrlFlag
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DSStreamIn
* @ HDR
* $StreamHdr hdr
* @ FIFOPTR
* $DSFifo32 dsFifo
* * *
* * Fifo pointer information
* @ DATBLKQ
* $DTCMBlkQ blkQ
* * *
* * Preloaded data block
* @ CTRLFIFO
* $DTCMFifo ctrlFIFoIn
* * *
* * Input control information
**********************************************************************************************************************/
#ifdef h_DSStreamIn
#else
#define h_DSStreamIn
#define \
AR_DSStreamIn \
18
#define \
AB_DSStreamIn \
7
typedef struct SIE_DSStreamIn {
#define RA_DSStreamIn_HDR 0x00000
/* @'00000 */ SIE_StreamHdr ie_hdr;
#define RA_DSStreamIn_FIFOPTR 0x00008
/* @'00008 */ SIE_DSFifo32 ie_dsFifo;
#define RA_DSStreamIn_DATBLKQ 0x00018
/* @'00018 */ SIE_DTCMBlkQ ie_blkQ;
#define RA_DSStreamIn_CTRLFIFO 0x00040
/* @'00040 */ SIE_DTCMFifo ie_ctrlFIFoIn;
} SIE_DSStreamIn;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DSStreamIn_drvrd (SIE_DSStreamIn *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DSStreamIn_drvwr (SIE_DSStreamIn *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DSStreamIn_reset (SIE_DSStreamIn *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DSStreamIn_check(p,pie,ps8name,hfpErrLOG) DSStreamIn_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DSStreamIn_print(p, ps8name,hfpErrLOG) DSStreamIn_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DSStreamIn_cmp (SIE_DSStreamIn *p, SIE_DSStreamIn *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DSStreamIn_import(SIE_DSStreamIn *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DSStreamIn_export(SIE_DSStreamIn *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DSStreamIn
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DSStreamOut
* @ HDR
* $StreamHdr hdr 0
* * *
* * The pointer to the memory block pool
* @ FIFOPTR
* $DSFifo32 dsFifo 0
* * *
* * Fifo pointer information
**********************************************************************************************************************/
#ifdef h_DSStreamOut
#else
#define h_DSStreamOut
#define \
AR_DSStreamOut \
6
#define \
AB_DSStreamOut \
5
typedef struct SIE_DSStreamOut {
#define RA_DSStreamOut_HDR 0x00000
/* @'00000 */ SIE_StreamHdr ie_hdr;
#define RA_DSStreamOut_FIFOPTR 0x00008
/* @'00008 */ SIE_DSFifo32 ie_dsFifo;
} SIE_DSStreamOut;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DSStreamOut_drvrd (SIE_DSStreamOut *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DSStreamOut_drvwr (SIE_DSStreamOut *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DSStreamOut_reset (SIE_DSStreamOut *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DSStreamOut_check(p,pie,ps8name,hfpErrLOG) DSStreamOut_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DSStreamOut_print(p, ps8name,hfpErrLOG) DSStreamOut_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DSStreamOut_cmp (SIE_DSStreamOut *p, SIE_DSStreamOut *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DSStreamOut_import(SIE_DSStreamOut *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DSStreamOut_export(SIE_DSStreamOut *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DSStreamOut
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DSStreamOutModule
* @ HDR
* %unsigned 16 datBlkPool 0
* * *
* * The pointer to the memory block pool
* %unsigned 16 lastDatBlkPtr 0
* * *
* * The pointer to the current block
* %unsigned 16 lastDSOutOwner
* * *
* * The pointer to the current data streamer output FIFO owner
* %unsigned 16 Reserved
* @ EV
* $DSFifo32 evDSFifoOut 0
* * *
* * The output event FIFO
**********************************************************************************************************************/
#ifdef h_DSStreamOutModule
#else
#define h_DSStreamOutModule
#define \
AR_DSStreamOutModule \
6
#define \
AB_DSStreamOutModule \
5
typedef struct SIE_DSStreamOutModule {
#define RA_DSStreamOutModule_HDR 0x00000
#define w32DSStreamOutModule_HDR { \
UNSG32 uHDR_datBlkPool : 16; \
UNSG32 uHDR_lastDatBlkPtr : 16; \
}
/* @'00000 */ union { UNSG32 u32DSStreamOutModule_HDR;
struct w32DSStreamOutModule_HDR;
};
/* [15: 0] */ #define BA_DSStreamOutModule_HDR_datBlkPool 0x00000
/* ---:--- */ #define bDSStreamOutModule_HDR_datBlkPool 16 /*bit*/
/* ---:--- */ #define LSb32DSStreamOutModule_HDR_datBlkPool 0 /*:15*/
/* ---:--- */ #define MSK32DSStreamOutModule_HDR_datBlkPool 0x0000FFFF
/* ---:--- */ #define GET32DSStreamOutModule_HDR_datBlkPool(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DSStreamOutModule_HDR_datBlkPool(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DSStreamOutModule_HDR_datBlkPool(r32,v)do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DSStreamOutModule_HDR_datBlkPool(r16,v)do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DSStreamOutModule_HDR_lastDatBlkPtr 0x00002
/* ---:--- */ #define bDSStreamOutModule_HDR_lastDatBlkPtr 16 /*bit*/
/* ---:--- */ #define LSb32DSStreamOutModule_HDR_lastDatBlkPtr 16 /*:31*/
/* ---:--- */ #define MSK32DSStreamOutModule_HDR_lastDatBlkPtr 0xFFFF0000
/* ---:--- */ #define GET32DSStreamOutModule_HDR_lastDatBlkPtr(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DSStreamOutModule_HDR_lastDatBlkPtr(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DSStreamOutModule_HDR_lastDatBlkPtr(r32,v)do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DSStreamOutModule_HDR_lastDatBlkPtr(r16,v)do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DSStreamOutModule_HDR1 0x00004
#define w32DSStreamOutModule_HDR1 { \
UNSG32 uHDR_lastDSOutOwner : 16; \
UNSG32 uHDR_Reserved : 16; \
}
/* @'00004 */ union { UNSG32 u32DSStreamOutModule_HDR1;
struct w32DSStreamOutModule_HDR1;
};
/* [15: 0] */ #define BA_DSStreamOutModule_HDR_lastDSOutOwner 0x00004
/* ---:--- */ #define bDSStreamOutModule_HDR_lastDSOutOwner 16 /*bit*/
/* ---:--- */ #define LSb32DSStreamOutModule_HDR_lastDSOutOwner 0 /*:15*/
/* ---:--- */ #define MSK32DSStreamOutModule_HDR_lastDSOutOwner 0x0000FFFF
/* ---:--- */ #define GET32DSStreamOutModule_HDR_lastDSOutOwner(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DSStreamOutModule_HDR_lastDSOutOwner(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DSStreamOutModule_HDR_lastDSOutOwner(r32,v)do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DSStreamOutModule_HDR_lastDSOutOwner(r16,v)do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DSStreamOutModule_HDR_Reserved 0x00006
/* ---:--- */ #define bDSStreamOutModule_HDR_Reserved 16 /*bit*/
/* ---:--- */ #define LSb32DSStreamOutModule_HDR_Reserved 16 /*:31*/
/* ---:--- */ #define MSK32DSStreamOutModule_HDR_Reserved 0xFFFF0000
/* ---:--- */ #define GET32DSStreamOutModule_HDR_Reserved(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DSStreamOutModule_HDR_Reserved(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DSStreamOutModule_HDR_Reserved(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DSStreamOutModule_HDR_Reserved(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DSStreamOutModule_EV 0x00008
/* @'00008 */ SIE_DSFifo32 ie_evDSFifoOut;
} SIE_DSStreamOutModule;
#define dftDSStreamOutModule_HDR 0x00000000
typedef union { UNSG32 u32;
struct w32DSStreamOutModule_HDR;
} T32DSStreamOutModule_HDR;
#define dftDSStreamOutModule_HDR1 0x00000000
typedef union { UNSG32 u32;
struct w32DSStreamOutModule_HDR1;
} T32DSStreamOutModule_HDR1;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DSStreamOutModule_drvrd (SIE_DSStreamOutModule *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DSStreamOutModule_drvwr (SIE_DSStreamOutModule *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DSStreamOutModule_reset (SIE_DSStreamOutModule *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DSStreamOutModule_check(p,pie,ps8name,hfpErrLOG) DSStreamOutModule_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DSStreamOutModule_print(p, ps8name,hfpErrLOG) DSStreamOutModule_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DSStreamOutModule_cmp (SIE_DSStreamOutModule *p, SIE_DSStreamOutModule *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DSStreamOutModule_import(SIE_DSStreamOutModule *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DSStreamOutModule_export(SIE_DSStreamOutModule *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DSStreamOutModule
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DSOutBlkReserved
* @
* $FIGOEvent figoEvent REG
* @
* $UINT32 dsFifoPtr REG [4]
* * *
* * The pointer to the current block
**********************************************************************************************************************/
#ifdef h_DSOutBlkReserved
#else
#define h_DSOutBlkReserved
#define \
AR_DSOutBlkReserved \
20
#define \
AB_DSOutBlkReserved \
7
typedef struct SIE_DSOutBlkReserved {
#define RA_DSOutBlkReserved_figoEvent 0x00000
/* @'00000 */ SIE_FIGOEvent ie_figoEvent;
#define RA_DSOutBlkReserved_dsFifoPtr 0x00040
/* @'00040 */ SIE_UINT32 ie_dsFifoPtr [4];
#define arr_DSOutBlkReserved_dsFifoPtr 4
} SIE_DSOutBlkReserved;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DSOutBlkReserved_drvrd (SIE_DSOutBlkReserved *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DSOutBlkReserved_drvwr (SIE_DSOutBlkReserved *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DSOutBlkReserved_reset (SIE_DSOutBlkReserved *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DSOutBlkReserved_check(p,pie,ps8name,hfpErrLOG) DSOutBlkReserved_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DSOutBlkReserved_print(p, ps8name,hfpErrLOG) DSOutBlkReserved_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DSOutBlkReserved_cmp (SIE_DSOutBlkReserved *p, SIE_DSOutBlkReserved *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DSOutBlkReserved_import(SIE_DSOutBlkReserved *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DSOutBlkReserved_export(SIE_DSOutBlkReserved *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DSOutBlkReserved
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DTCMStream
* @ HDR
* $StreamHdr hdr 0
* @ DAT
* $DTCMFifo datFifo CTRL
* $DTCMFifo ctrlFifo 0
**********************************************************************************************************************/
#ifdef h_DTCMStream
#else
#define h_DTCMStream
#define \
AR_DTCMStream \
6
#define \
AB_DTCMStream \
5
typedef struct SIE_DTCMStream {
#define RA_DTCMStream_HDR 0x00000
/* @'00000 */ SIE_StreamHdr ie_hdr;
#define RA_DTCMStream_DAT 0x00008
/* @'00008 */ SIE_DTCMFifo ie_datFifo;
#define RA_DTCMStream_ctrlFifo 0x00010
/* @'00010 */ SIE_DTCMFifo ie_ctrlFifo;
} SIE_DTCMStream;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DTCMStream_drvrd (SIE_DTCMStream *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DTCMStream_drvwr (SIE_DTCMStream *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DTCMStream_reset (SIE_DTCMStream *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DTCMStream_check(p,pie,ps8name,hfpErrLOG) DTCMStream_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DTCMStream_print(p, ps8name,hfpErrLOG) DTCMStream_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DTCMStream_cmp (SIE_DTCMStream *p, SIE_DTCMStream *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DTCMStream_import(SIE_DTCMStream *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DTCMStream_export(SIE_DTCMStream *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DTCMStream
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DSBlkRetEntry
* @ DAT
* %unsigned 16 puAddr 0
* %unsigned 16 uValue
* %unsigned 16 nDSCmdID
* %unsigned 16 nReserved
**********************************************************************************************************************/
#ifdef h_DSBlkRetEntry
#else
#define h_DSBlkRetEntry
#define \
AR_DSBlkRetEntry \
2
#define \
AB_DSBlkRetEntry \
3
typedef struct SIE_DSBlkRetEntry {
#define RA_DSBlkRetEntry_DAT 0x00000
#define w32DSBlkRetEntry_DAT { \
UNSG32 uDAT_puAddr : 16; \
UNSG32 uDAT_uValue : 16; \
}
/* @'00000 */ union { UNSG32 u32DSBlkRetEntry_DAT;
struct w32DSBlkRetEntry_DAT;
};
/* [15: 0] */ #define BA_DSBlkRetEntry_DAT_puAddr 0x00000
/* ---:--- */ #define bDSBlkRetEntry_DAT_puAddr 16 /*bit*/
/* ---:--- */ #define LSb32DSBlkRetEntry_DAT_puAddr 0 /*:15*/
/* ---:--- */ #define MSK32DSBlkRetEntry_DAT_puAddr 0x0000FFFF
/* ---:--- */ #define GET32DSBlkRetEntry_DAT_puAddr(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DSBlkRetEntry_DAT_puAddr(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DSBlkRetEntry_DAT_puAddr(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DSBlkRetEntry_DAT_puAddr(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DSBlkRetEntry_DAT_uValue 0x00002
/* ---:--- */ #define bDSBlkRetEntry_DAT_uValue 16 /*bit*/
/* ---:--- */ #define LSb32DSBlkRetEntry_DAT_uValue 16 /*:31*/
/* ---:--- */ #define MSK32DSBlkRetEntry_DAT_uValue 0xFFFF0000
/* ---:--- */ #define GET32DSBlkRetEntry_DAT_uValue(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DSBlkRetEntry_DAT_uValue(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DSBlkRetEntry_DAT_uValue(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DSBlkRetEntry_DAT_uValue(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DSBlkRetEntry_DAT1 0x00004
#define w32DSBlkRetEntry_DAT1 { \
UNSG32 uDAT_nDSCmdID : 16; \
UNSG32 uDAT_nReserved : 16; \
}
/* @'00004 */ union { UNSG32 u32DSBlkRetEntry_DAT1;
struct w32DSBlkRetEntry_DAT1;
};
/* [15: 0] */ #define BA_DSBlkRetEntry_DAT_nDSCmdID 0x00004
/* ---:--- */ #define bDSBlkRetEntry_DAT_nDSCmdID 16 /*bit*/
/* ---:--- */ #define LSb32DSBlkRetEntry_DAT_nDSCmdID 0 /*:15*/
/* ---:--- */ #define MSK32DSBlkRetEntry_DAT_nDSCmdID 0x0000FFFF
/* ---:--- */ #define GET32DSBlkRetEntry_DAT_nDSCmdID(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DSBlkRetEntry_DAT_nDSCmdID(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DSBlkRetEntry_DAT_nDSCmdID(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DSBlkRetEntry_DAT_nDSCmdID(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DSBlkRetEntry_DAT_nReserved 0x00006
/* ---:--- */ #define bDSBlkRetEntry_DAT_nReserved 16 /*bit*/
/* ---:--- */ #define LSb32DSBlkRetEntry_DAT_nReserved 16 /*:31*/
/* ---:--- */ #define MSK32DSBlkRetEntry_DAT_nReserved 0xFFFF0000
/* ---:--- */ #define GET32DSBlkRetEntry_DAT_nReserved(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DSBlkRetEntry_DAT_nReserved(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DSBlkRetEntry_DAT_nReserved(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DSBlkRetEntry_DAT_nReserved(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
} SIE_DSBlkRetEntry;
#define dftDSBlkRetEntry_DAT 0x00000000
typedef union { UNSG32 u32;
struct w32DSBlkRetEntry_DAT;
} T32DSBlkRetEntry_DAT;
#define dftDSBlkRetEntry_DAT1 0x00000000
typedef union { UNSG32 u32;
struct w32DSBlkRetEntry_DAT1;
} T32DSBlkRetEntry_DAT1;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DSBlkRetEntry_drvrd (SIE_DSBlkRetEntry *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DSBlkRetEntry_drvwr (SIE_DSBlkRetEntry *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DSBlkRetEntry_reset (SIE_DSBlkRetEntry *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DSBlkRetEntry_check(p,pie,ps8name,hfpErrLOG) DSBlkRetEntry_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DSBlkRetEntry_print(p, ps8name,hfpErrLOG) DSBlkRetEntry_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DSBlkRetEntry_cmp (SIE_DSBlkRetEntry *p, SIE_DSBlkRetEntry *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DSBlkRetEntry_import(SIE_DSBlkRetEntry *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DSBlkRetEntry_export(SIE_DSBlkRetEntry *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DSBlkRetEntry
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DSBlkRetQ
* @ HDR
* %unsigned 16 nRdOffset REG
* %unsigned 16 nWrOffset
* %unsigned 32 nReserved32
* @ DAT
* $DSBlkRetEntry entryList REG [16]
**********************************************************************************************************************/
#ifdef h_DSBlkRetQ
#else
#define h_DSBlkRetQ
#define \
AR_DSBlkRetQ \
34
#define \
AB_DSBlkRetQ \
8
typedef struct SIE_DSBlkRetQ {
#define RA_DSBlkRetQ_HDR 0x00000
#define w32DSBlkRetQ_HDR { \
UNSG32 uHDR_nRdOffset : 16; \
UNSG32 uHDR_nWrOffset : 16; \
}
/* @'00000 */ union { UNSG32 u32DSBlkRetQ_HDR;
struct w32DSBlkRetQ_HDR;
};
/* [15: 0] */ #define BA_DSBlkRetQ_HDR_nRdOffset 0x00000
/* ---:--- */ #define bDSBlkRetQ_HDR_nRdOffset 16 /*bit*/
/* ---:--- */ #define LSb32DSBlkRetQ_HDR_nRdOffset 0 /*:15*/
/* ---:--- */ #define MSK32DSBlkRetQ_HDR_nRdOffset 0x0000FFFF
/* ---:--- */ #define GET32DSBlkRetQ_HDR_nRdOffset(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DSBlkRetQ_HDR_nRdOffset(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DSBlkRetQ_HDR_nRdOffset(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DSBlkRetQ_HDR_nRdOffset(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DSBlkRetQ_HDR_nWrOffset 0x00002
/* ---:--- */ #define bDSBlkRetQ_HDR_nWrOffset 16 /*bit*/
/* ---:--- */ #define LSb32DSBlkRetQ_HDR_nWrOffset 16 /*:31*/
/* ---:--- */ #define MSK32DSBlkRetQ_HDR_nWrOffset 0xFFFF0000
/* ---:--- */ #define GET32DSBlkRetQ_HDR_nWrOffset(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DSBlkRetQ_HDR_nWrOffset(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DSBlkRetQ_HDR_nWrOffset(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DSBlkRetQ_HDR_nWrOffset(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DSBlkRetQ_HDR1 0x00004
#define w32DSBlkRetQ_HDR1 { \
UNSG32 uHDR_nReserved32 : 32; \
}
/* @'00004 */ union { UNSG32 u32DSBlkRetQ_HDR1;
struct w32DSBlkRetQ_HDR1;
};
/* [31: 0] */ #define BA_DSBlkRetQ_HDR_nReserved32 0x00004
/* ---:--- */ #define bDSBlkRetQ_HDR_nReserved32 32 /*bit*/
/* ---:--- */ #define LSb32DSBlkRetQ_HDR_nReserved32 0 /*:31*/
/* ---:--- */ #define MSK32DSBlkRetQ_HDR_nReserved32 0xFFFFFFFF
/* ---:--- */ #define GET32DSBlkRetQ_HDR_nReserved32(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DSBlkRetQ_HDR_nReserved32(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DSBlkRetQ_HDR_nReserved32(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DSBlkRetQ_HDR_nReserved32(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DSBlkRetQ_DAT 0x00008
/* @'00008 */ SIE_DSBlkRetEntry ie_entryList [16];
#define arr_DSBlkRetQ_entryList 16
} SIE_DSBlkRetQ;
#define dftDSBlkRetQ_HDR 0x0000CCCC
typedef union { UNSG32 u32;
struct w32DSBlkRetQ_HDR;
} T32DSBlkRetQ_HDR;
#define dftDSBlkRetQ_HDR1 0x00000000
typedef union { UNSG32 u32;
struct w32DSBlkRetQ_HDR1;
} T32DSBlkRetQ_HDR1;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DSBlkRetQ_drvrd (SIE_DSBlkRetQ *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DSBlkRetQ_drvwr (SIE_DSBlkRetQ *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DSBlkRetQ_reset (SIE_DSBlkRetQ *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DSBlkRetQ_check(p,pie,ps8name,hfpErrLOG) DSBlkRetQ_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DSBlkRetQ_print(p, ps8name,hfpErrLOG) DSBlkRetQ_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DSBlkRetQ_cmp (SIE_DSBlkRetQ *p, SIE_DSBlkRetQ *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DSBlkRetQ_import(SIE_DSBlkRetQ *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DSBlkRetQ_export(SIE_DSBlkRetQ *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DSBlkRetQ
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: StallCmd
* @ CMD
* %unsigned 16 cmdTag 0
* : RUN 1
* : STALL 2
* : JUMPTOROM 0
* @ RSP
* %unsigned 16 rspTag 0
**********************************************************************************************************************/
#ifdef h_StallCmd
#else
#define h_StallCmd
#define \
AR_StallCmd \
2
#define \
AB_StallCmd \
3
typedef struct SIE_StallCmd {
#define RA_StallCmd_CMD 0x00000
#define w32StallCmd_CMD { \
UNSG32 uCMD_cmdTag : 16; \
UNSG32 _x00000 : 16; \
}
/* @'00000 */ union { UNSG32 u32StallCmd_CMD;
struct w32StallCmd_CMD;
};
/* [15: 0] */ #define BA_StallCmd_CMD_cmdTag 0x00000
/* ---:--- */ #define bStallCmd_CMD_cmdTag 16 /*bit*/
/* ---:--- */ #define LSb32StallCmd_CMD_cmdTag 0 /*:15*/
/* ---:--- */ #define MSK32StallCmd_CMD_cmdTag 0x0000FFFF
/* ---:--- */ #define GET32StallCmd_CMD_cmdTag(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16StallCmd_CMD_cmdTag(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32StallCmd_CMD_cmdTag(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16StallCmd_CMD_cmdTag(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define StallCmd_CMD_cmdTag_RUN 0x1
#define StallCmd_CMD_cmdTag_STALL 0x2
#define StallCmd_CMD_cmdTag_JUMPTOROM 0x0
#define RA_StallCmd_RSP 0x00004
#define w32StallCmd_RSP { \
UNSG32 uRSP_rspTag : 16; \
UNSG32 _x00004 : 16; \
}
/* @'00004 */ union { UNSG32 u32StallCmd_RSP;
struct w32StallCmd_RSP;
};
/* [15: 0] */ #define BA_StallCmd_RSP_rspTag 0x00004
/* ---:--- */ #define bStallCmd_RSP_rspTag 16 /*bit*/
/* ---:--- */ #define LSb32StallCmd_RSP_rspTag 0 /*:15*/
/* ---:--- */ #define MSK32StallCmd_RSP_rspTag 0x0000FFFF
/* ---:--- */ #define GET32StallCmd_RSP_rspTag(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16StallCmd_RSP_rspTag(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32StallCmd_RSP_rspTag(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16StallCmd_RSP_rspTag(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
} SIE_StallCmd;
#define dftStallCmd_CMD 0x00000000
typedef union { UNSG32 u32;
struct w32StallCmd_CMD;
} T32StallCmd_CMD;
#define dftStallCmd_RSP 0x00000000
typedef union { UNSG32 u32;
struct w32StallCmd_RSP;
} T32StallCmd_RSP;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 StallCmd_drvrd (SIE_StallCmd *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 StallCmd_drvwr (SIE_StallCmd *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void StallCmd_reset (SIE_StallCmd *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define StallCmd_check(p,pie,ps8name,hfpErrLOG) StallCmd_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define StallCmd_print(p, ps8name,hfpErrLOG) StallCmd_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 StallCmd_cmp (SIE_StallCmd *p, SIE_StallCmd *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 StallCmd_import(SIE_StallCmd *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 StallCmd_export(SIE_StallCmd *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: StallCmd
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: LocalArea
* @
* %unsigned 16 uDsCmdIdRet REG
* * *Data streamer retired command ID
* @
* %unsigned 32 nDSBase REG
* @
* %unsigned 16 uNextDsCmdId REG
* * *Next data streamer command ID
* @ BRKCFG
* %unsigned 1 uDisableBreakPoint REG
* * *
* $StallCmd stallCmd REG
* * *
* @ DSRETQ
* $DSBlkRetQ retQ REG
* @ REGDUMP
* $UINT64 regDumpArea REG [32]
* * *
* * Registers Dumping Area for debug purpose
* @ IMGBASE
* %unsigned 32 uDDRImgBase REG
* * *
* * 32 DDR Base of the shadow image
* %unsigned 32 uReserved REG
* * *
* * Reserved bits
* @
* $DTCMFifo hboFifoList REG [16]
* * *
* * HBO Fifo Pointer Information
**********************************************************************************************************************/
#ifdef h_LocalArea
#else
#define h_LocalArea
#define \
AR_LocalArea \
138
#define \
AB_LocalArea \
10
typedef struct SIE_LocalArea {
#define RA_LocalArea_D0th_ ISC_USE_ONLY 0x00000
#define w32LocalArea_D0th_ { \
UNSG32 u_uDsCmdIdRet : 16; \
UNSG32 _x00000 : 16; \
}
/* @'00000 */ struct w32LocalArea_D0th_;
/* [15: 0] */ #define BA_LocalArea_uDsCmdIdRet 0x00000
/* ---:--- */ #define bLocalArea_uDsCmdIdRet 16 /*bit*/
/* ---:--- */ #define LSb32LocalArea_uDsCmdIdRet 0 /*:15*/
/* ---:--- */ #define MSK32LocalArea_uDsCmdIdRet 0x0000FFFF
/* ---:--- */ #define GET32LocalArea_uDsCmdIdRet(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16LocalArea_uDsCmdIdRet(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32LocalArea_uDsCmdIdRet(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16LocalArea_uDsCmdIdRet(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_LocalArea_D1th_ ISC_USE_ONLY 0x00004
#define w32LocalArea_D1th_ { \
UNSG32 u_nDSBase : 32; \
}
/* @'00004 */ struct w32LocalArea_D1th_;
/* [31: 0] */ #define BA_LocalArea_nDSBase 0x00004
/* ---:--- */ #define bLocalArea_nDSBase 32 /*bit*/
/* ---:--- */ #define LSb32LocalArea_nDSBase 0 /*:31*/
/* ---:--- */ #define MSK32LocalArea_nDSBase 0xFFFFFFFF
/* ---:--- */ #define GET32LocalArea_nDSBase(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16LocalArea_nDSBase(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32LocalArea_nDSBase(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16LocalArea_nDSBase(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_LocalArea_D2th_ ISC_USE_ONLY 0x00008
#define w32LocalArea_D2th_ { \
UNSG32 u_uNextDsCmdId : 16; \
UNSG32 _x00008 : 16; \
}
/* @'00008 */ struct w32LocalArea_D2th_;
/* [15: 0] */ #define BA_LocalArea_uNextDsCmdId 0x00008
/* ---:--- */ #define bLocalArea_uNextDsCmdId 16 /*bit*/
/* ---:--- */ #define LSb32LocalArea_uNextDsCmdId 0 /*:15*/
/* ---:--- */ #define MSK32LocalArea_uNextDsCmdId 0x0000FFFF
/* ---:--- */ #define GET32LocalArea_uNextDsCmdId(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16LocalArea_uNextDsCmdId(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32LocalArea_uNextDsCmdId(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16LocalArea_uNextDsCmdId(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_LocalArea_BRKCFG 0x0000C
#define w32LocalArea_BRKCFG { \
UNSG32 uBRKCFG_uDisableBreakPoint : 1; \
UNSG32 _x0000C : 31; \
}
/* @'0000C */ union { UNSG32 u32LocalArea_BRKCFG;
struct w32LocalArea_BRKCFG;
};
/* [ 0: 0] */ #define BA_LocalArea_BRKCFG_uDisableBreakPoint 0x0000C
/* ---:--- */ #define bLocalArea_BRKCFG_uDisableBreakPoint 1 /*bit*/
/* ---:--- */ #define LSb32LocalArea_BRKCFG_uDisableBreakPoint 0 /*: 0*/
/* ---:--- */ #define MSK32LocalArea_BRKCFG_uDisableBreakPoint 0x00000001
/* ---:--- */ #define GET32LocalArea_BRKCFG_uDisableBreakPoint(r32) (((r32)>> 0)&0x0001)
/* ---:--- */ #define GET16LocalArea_BRKCFG_uDisableBreakPoint(r16) (((r16)>> 0)&0x0001)
/* ---:--- */ #define SET32LocalArea_BRKCFG_uDisableBreakPoint(r32,v)do{(r32)&=~(0x0001<< 0);(r32)|=((v)&0x0001)<< 0;}while(0)
/* ---:--- */ #define SET16LocalArea_BRKCFG_uDisableBreakPoint(r16,v)do{(r16)&=~(0x0001<< 0);(r16)|=((v)&0x0001)<< 0;}while(0)
#define RA_LocalArea_stallCmd 0x00010
/* @'00010 */ SIE_StallCmd ie_stallCmd;
#define RA_LocalArea_DSRETQ 0x00018
/* @'00018 */ SIE_DSBlkRetQ ie_retQ;
#define RA_LocalArea_REGDUMP 0x000A0
/* @'000A0 */ SIE_UINT64 ie_regDumpArea [32];
#define arr_LocalArea_regDumpArea 32
#define RA_LocalArea_IMGBASE 0x001A0
#define w32LocalArea_IMGBASE { \
UNSG32 uIMGBASE_uDDRImgBase : 32; \
}
/* @'001A0 */ union { UNSG32 u32LocalArea_IMGBASE;
struct w32LocalArea_IMGBASE;
};
/* [31: 0] */ #define BA_LocalArea_IMGBASE_uDDRImgBase 0x001A0
/* ---:--- */ #define bLocalArea_IMGBASE_uDDRImgBase 32 /*bit*/
/* ---:--- */ #define LSb32LocalArea_IMGBASE_uDDRImgBase 0 /*:31*/
/* ---:--- */ #define MSK32LocalArea_IMGBASE_uDDRImgBase 0xFFFFFFFF
/* ---:--- */ #define GET32LocalArea_IMGBASE_uDDRImgBase(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16LocalArea_IMGBASE_uDDRImgBase(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32LocalArea_IMGBASE_uDDRImgBase(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16LocalArea_IMGBASE_uDDRImgBase(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_LocalArea_IMGBASE1 0x001A4
#define w32LocalArea_IMGBASE1 { \
UNSG32 uIMGBASE_uReserved : 32; \
}
/* @'001A4 */ union { UNSG32 u32LocalArea_IMGBASE1;
struct w32LocalArea_IMGBASE1;
};
/* [31: 0] */ #define BA_LocalArea_IMGBASE_uReserved 0x001A4
/* ---:--- */ #define bLocalArea_IMGBASE_uReserved 32 /*bit*/
/* ---:--- */ #define LSb32LocalArea_IMGBASE_uReserved 0 /*:31*/
/* ---:--- */ #define MSK32LocalArea_IMGBASE_uReserved 0xFFFFFFFF
/* ---:--- */ #define GET32LocalArea_IMGBASE_uReserved(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16LocalArea_IMGBASE_uReserved(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32LocalArea_IMGBASE_uReserved(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16LocalArea_IMGBASE_uReserved(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_LocalArea_hboFifoList 0x001A8
/* @'001A8 */ SIE_DTCMFifo ie_hboFifoList [16];
#define arr_LocalArea_hboFifoList 16
} SIE_LocalArea;
#define dftLocalArea_BRKCFG 0x00000000
typedef union { UNSG32 u32;
struct w32LocalArea_BRKCFG;
} T32LocalArea_BRKCFG;
#define dftLocalArea_IMGBASE 0x00000000
typedef union { UNSG32 u32;
struct w32LocalArea_IMGBASE;
} T32LocalArea_IMGBASE;
#define dftLocalArea_IMGBASE1 0x00000000
typedef union { UNSG32 u32;
struct w32LocalArea_IMGBASE1;
} T32LocalArea_IMGBASE1;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 LocalArea_drvrd (SIE_LocalArea *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 LocalArea_drvwr (SIE_LocalArea *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void LocalArea_reset (SIE_LocalArea *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define LocalArea_check(p,pie,ps8name,hfpErrLOG) LocalArea_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define LocalArea_print(p, ps8name,hfpErrLOG) LocalArea_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 LocalArea_cmp (SIE_LocalArea *p, SIE_LocalArea *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 LocalArea_import(SIE_LocalArea *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 LocalArea_export(SIE_LocalArea *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: LocalArea
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: LACryptoCmdCnt
* @ Local
* %unsigned 16 uLocalCmdCnt 0
* @ RegSyn
* %unsigned 16 uCryptoEngineUpdateCnt 0
**********************************************************************************************************************/
#ifdef h_LACryptoCmdCnt
#else
#define h_LACryptoCmdCnt
#define \
AR_LACryptoCmdCnt \
2
#define \
AB_LACryptoCmdCnt \
3
typedef struct SIE_LACryptoCmdCnt {
#define RA_LACryptoCmdCnt_Local 0x00000
#define w32LACryptoCmdCnt_Local { \
UNSG32 uLocal_uLocalCmdCnt : 16; \
UNSG32 _x00000 : 16; \
}
/* @'00000 */ union { UNSG32 u32LACryptoCmdCnt_Local;
struct w32LACryptoCmdCnt_Local;
};
/* [15: 0] */ #define BA_LACryptoCmdCnt_Local_uLocalCmdCnt 0x00000
/* ---:--- */ #define bLACryptoCmdCnt_Local_uLocalCmdCnt 16 /*bit*/
/* ---:--- */ #define LSb32LACryptoCmdCnt_Local_uLocalCmdCnt 0 /*:15*/
/* ---:--- */ #define MSK32LACryptoCmdCnt_Local_uLocalCmdCnt 0x0000FFFF
/* ---:--- */ #define GET32LACryptoCmdCnt_Local_uLocalCmdCnt(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16LACryptoCmdCnt_Local_uLocalCmdCnt(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32LACryptoCmdCnt_Local_uLocalCmdCnt(r32,v)do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16LACryptoCmdCnt_Local_uLocalCmdCnt(r16,v)do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_LACryptoCmdCnt_RegSyn 0x00004
#define w32LACryptoCmdCnt_RegSyn { \
UNSG32 uRegSyn_uCryptoEngineUpdateCnt : 16; \
UNSG32 _x00004 : 16; \
}
/* @'00004 */ union { UNSG32 u32LACryptoCmdCnt_RegSyn;
struct w32LACryptoCmdCnt_RegSyn;
};
/* [15: 0] */ #define BA_LACryptoCmdCnt_RegSyn_uCryptoEngineUpdateCnt 0x00004
/* ---:--- */ #define bLACryptoCmdCnt_RegSyn_uCryptoEngineUpdateCnt 16 /*bit*/
/* ---:--- */ #define LSb32LACryptoCmdCnt_RegSyn_uCryptoEngineUpdateCnt 0 /*:15*/
/* ---:--- */ #define MSK32LACryptoCmdCnt_RegSyn_uCryptoEngineUpdateCnt 0x0000FFFF
/* ---:--- */ #define GET32LACryptoCmdCnt_RegSyn_uCryptoEngineUpdateCnt(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16LACryptoCmdCnt_RegSyn_uCryptoEngineUpdateCnt(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32LACryptoCmdCnt_RegSyn_uCryptoEngineUpdateCnt(r32,v)do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16LACryptoCmdCnt_RegSyn_uCryptoEngineUpdateCnt(r16,v)do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
} SIE_LACryptoCmdCnt;
#define dftLACryptoCmdCnt_Local 0x00000000
typedef union { UNSG32 u32;
struct w32LACryptoCmdCnt_Local;
} T32LACryptoCmdCnt_Local;
#define dftLACryptoCmdCnt_RegSyn 0x00000000
typedef union { UNSG32 u32;
struct w32LACryptoCmdCnt_RegSyn;
} T32LACryptoCmdCnt_RegSyn;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 LACryptoCmdCnt_drvrd (SIE_LACryptoCmdCnt *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 LACryptoCmdCnt_drvwr (SIE_LACryptoCmdCnt *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void LACryptoCmdCnt_reset (SIE_LACryptoCmdCnt *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define LACryptoCmdCnt_check(p,pie,ps8name,hfpErrLOG) LACryptoCmdCnt_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define LACryptoCmdCnt_print(p, ps8name,hfpErrLOG) LACryptoCmdCnt_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 LACryptoCmdCnt_cmp (SIE_LACryptoCmdCnt *p, SIE_LACryptoCmdCnt *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 LACryptoCmdCnt_import(SIE_LACryptoCmdCnt *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 LACryptoCmdCnt_export(SIE_LACryptoCmdCnt *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: LACryptoCmdCnt
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: LocalArea_Ext
* @
* %unsigned 16 uDsCmdIdRet REG
* * *Data streamer retired command ID
* @
* %unsigned 32 nDSBase REG
* @
* %unsigned 16 uNextDsCmdId REG
* * *Next data streamer command ID
* @ BRKCFG
* %unsigned 1 uDisableBreakPoint REG
* * *
* $StallCmd stallCmd REG
* * *
* @ DSRETQ
* $DSBlkRetQ retQ REG
* @ REGDUMP
* $UINT64 regDumpArea REG [32]
* * *
* * Registers Dumping Area for debug purpose
* @ IMGBASE
* %unsigned 32 uDDRImgBase REG
* * *
* * 32 DDR Base of the shadow image
* %unsigned 32 uReserved REG
* * *
* * Reserved bits
* @
* $DTCMFifo hboFifoList REG [16]
* * *
* * HBO Fifo Pointer Information
* @ CryEngine
* $LACryptoCmdCnt CryptoRtn REG [3]
* * *
* * CMD count for crypto engine
**********************************************************************************************************************/
#ifdef h_LocalArea_Ext
#else
#define h_LocalArea_Ext
#define \
AR_LocalArea_Ext \
144
#define \
AB_LocalArea_Ext \
10
typedef struct SIE_LocalArea_Ext {
#define RA_LocalArea_Ext_D0th_ ISC_USE_ONLY 0x00000
#define w32LocalArea_Ext_D0th_ { \
UNSG32 u_uDsCmdIdRet : 16; \
UNSG32 _x00000 : 16; \
}
/* @'00000 */ struct w32LocalArea_Ext_D0th_;
/* [15: 0] */ #define BA_LocalArea_Ext_uDsCmdIdRet 0x00000
/* ---:--- */ #define bLocalArea_Ext_uDsCmdIdRet 16 /*bit*/
/* ---:--- */ #define LSb32LocalArea_Ext_uDsCmdIdRet 0 /*:15*/
/* ---:--- */ #define MSK32LocalArea_Ext_uDsCmdIdRet 0x0000FFFF
/* ---:--- */ #define GET32LocalArea_Ext_uDsCmdIdRet(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16LocalArea_Ext_uDsCmdIdRet(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32LocalArea_Ext_uDsCmdIdRet(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16LocalArea_Ext_uDsCmdIdRet(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_LocalArea_Ext_D1th_ ISC_USE_ONLY 0x00004
#define w32LocalArea_Ext_D1th_ { \
UNSG32 u_nDSBase : 32; \
}
/* @'00004 */ struct w32LocalArea_Ext_D1th_;
/* [31: 0] */ #define BA_LocalArea_Ext_nDSBase 0x00004
/* ---:--- */ #define bLocalArea_Ext_nDSBase 32 /*bit*/
/* ---:--- */ #define LSb32LocalArea_Ext_nDSBase 0 /*:31*/
/* ---:--- */ #define MSK32LocalArea_Ext_nDSBase 0xFFFFFFFF
/* ---:--- */ #define GET32LocalArea_Ext_nDSBase(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16LocalArea_Ext_nDSBase(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32LocalArea_Ext_nDSBase(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16LocalArea_Ext_nDSBase(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_LocalArea_Ext_D2th_ ISC_USE_ONLY 0x00008
#define w32LocalArea_Ext_D2th_ { \
UNSG32 u_uNextDsCmdId : 16; \
UNSG32 _x00008 : 16; \
}
/* @'00008 */ struct w32LocalArea_Ext_D2th_;
/* [15: 0] */ #define BA_LocalArea_Ext_uNextDsCmdId 0x00008
/* ---:--- */ #define bLocalArea_Ext_uNextDsCmdId 16 /*bit*/
/* ---:--- */ #define LSb32LocalArea_Ext_uNextDsCmdId 0 /*:15*/
/* ---:--- */ #define MSK32LocalArea_Ext_uNextDsCmdId 0x0000FFFF
/* ---:--- */ #define GET32LocalArea_Ext_uNextDsCmdId(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16LocalArea_Ext_uNextDsCmdId(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32LocalArea_Ext_uNextDsCmdId(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16LocalArea_Ext_uNextDsCmdId(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_LocalArea_Ext_BRKCFG 0x0000C
#define w32LocalArea_Ext_BRKCFG { \
UNSG32 uBRKCFG_uDisableBreakPoint : 1; \
UNSG32 _x0000C : 31; \
}
/* @'0000C */ union { UNSG32 u32LocalArea_Ext_BRKCFG;
struct w32LocalArea_Ext_BRKCFG;
};
/* [ 0: 0] */ #define BA_LocalArea_Ext_BRKCFG_uDisableBreakPoint 0x0000C
/* ---:--- */ #define bLocalArea_Ext_BRKCFG_uDisableBreakPoint 1 /*bit*/
/* ---:--- */ #define LSb32LocalArea_Ext_BRKCFG_uDisableBreakPoint 0 /*: 0*/
/* ---:--- */ #define MSK32LocalArea_Ext_BRKCFG_uDisableBreakPoint 0x00000001
/* ---:--- */ #define GET32LocalArea_Ext_BRKCFG_uDisableBreakPoint(r32) (((r32)>> 0)&0x0001)
/* ---:--- */ #define GET16LocalArea_Ext_BRKCFG_uDisableBreakPoint(r16) (((r16)>> 0)&0x0001)
/* ---:--- */ #define SET32LocalArea_Ext_BRKCFG_uDisableBreakPoint(r32,v)do{(r32)&=~(0x0001<< 0);(r32)|=((v)&0x0001)<< 0;}while(0)
/* ---:--- */ #define SET16LocalArea_Ext_BRKCFG_uDisableBreakPoint(r16,v)do{(r16)&=~(0x0001<< 0);(r16)|=((v)&0x0001)<< 0;}while(0)
#define RA_LocalArea_Ext_stallCmd 0x00010
/* @'00010 */ SIE_StallCmd ie_stallCmd;
#define RA_LocalArea_Ext_DSRETQ 0x00018
/* @'00018 */ SIE_DSBlkRetQ ie_retQ;
#define RA_LocalArea_Ext_REGDUMP 0x000A0
/* @'000A0 */ SIE_UINT64 ie_regDumpArea [32];
#define arr_LocalArea_Ext_regDumpArea 32
#define RA_LocalArea_Ext_IMGBASE 0x001A0
#define w32LocalArea_Ext_IMGBASE { \
UNSG32 uIMGBASE_uDDRImgBase : 32; \
}
/* @'001A0 */ union { UNSG32 u32LocalArea_Ext_IMGBASE;
struct w32LocalArea_Ext_IMGBASE;
};
/* [31: 0] */ #define BA_LocalArea_Ext_IMGBASE_uDDRImgBase 0x001A0
/* ---:--- */ #define bLocalArea_Ext_IMGBASE_uDDRImgBase 32 /*bit*/
/* ---:--- */ #define LSb32LocalArea_Ext_IMGBASE_uDDRImgBase 0 /*:31*/
/* ---:--- */ #define MSK32LocalArea_Ext_IMGBASE_uDDRImgBase 0xFFFFFFFF
/* ---:--- */ #define GET32LocalArea_Ext_IMGBASE_uDDRImgBase(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16LocalArea_Ext_IMGBASE_uDDRImgBase(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32LocalArea_Ext_IMGBASE_uDDRImgBase(r32,v)do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16LocalArea_Ext_IMGBASE_uDDRImgBase(r16,v)do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_LocalArea_Ext_IMGBASE1 0x001A4
#define w32LocalArea_Ext_IMGBASE1 { \
UNSG32 uIMGBASE_uReserved : 32; \
}
/* @'001A4 */ union { UNSG32 u32LocalArea_Ext_IMGBASE1;
struct w32LocalArea_Ext_IMGBASE1;
};
/* [31: 0] */ #define BA_LocalArea_Ext_IMGBASE_uReserved 0x001A4
/* ---:--- */ #define bLocalArea_Ext_IMGBASE_uReserved 32 /*bit*/
/* ---:--- */ #define LSb32LocalArea_Ext_IMGBASE_uReserved 0 /*:31*/
/* ---:--- */ #define MSK32LocalArea_Ext_IMGBASE_uReserved 0xFFFFFFFF
/* ---:--- */ #define GET32LocalArea_Ext_IMGBASE_uReserved(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16LocalArea_Ext_IMGBASE_uReserved(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32LocalArea_Ext_IMGBASE_uReserved(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16LocalArea_Ext_IMGBASE_uReserved(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_LocalArea_Ext_hboFifoList 0x001A8
/* @'001A8 */ SIE_DTCMFifo ie_hboFifoList [16];
#define arr_LocalArea_Ext_hboFifoList 16
#define RA_LocalArea_Ext_CryEngine 0x00228
/* @'00228 */ SIE_LACryptoCmdCnt ie_CryptoRtn [3];
#define arr_LocalArea_Ext_CryptoRtn 3
} SIE_LocalArea_Ext;
#define dftLocalArea_Ext_BRKCFG 0x00000000
typedef union { UNSG32 u32;
struct w32LocalArea_Ext_BRKCFG;
} T32LocalArea_Ext_BRKCFG;
#define dftLocalArea_Ext_IMGBASE 0x00000000
typedef union { UNSG32 u32;
struct w32LocalArea_Ext_IMGBASE;
} T32LocalArea_Ext_IMGBASE;
#define dftLocalArea_Ext_IMGBASE1 0x00000000
typedef union { UNSG32 u32;
struct w32LocalArea_Ext_IMGBASE1;
} T32LocalArea_Ext_IMGBASE1;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 LocalArea_Ext_drvrd (SIE_LocalArea_Ext *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 LocalArea_Ext_drvwr (SIE_LocalArea_Ext *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void LocalArea_Ext_reset (SIE_LocalArea_Ext *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define LocalArea_Ext_check(p,pie,ps8name,hfpErrLOG) LocalArea_Ext_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define LocalArea_Ext_print(p, ps8name,hfpErrLOG) LocalArea_Ext_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 LocalArea_Ext_cmp (SIE_LocalArea_Ext *p, SIE_LocalArea_Ext *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 LocalArea_Ext_import(SIE_LocalArea_Ext *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 LocalArea_Ext_export(SIE_LocalArea_Ext *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: LocalArea_Ext
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: OTP_PRV_KEY
* @
* $UINT128 rsaPubKey REG [4]
* * *
* * 512 bits RSA Public Key Data.
* @
* $UINT128 rsaMod REG [8]
* * *
* * 1024 bits RSA Modulus Data
**********************************************************************************************************************/
#ifdef h_OTP_PRV_KEY
#else
#define h_OTP_PRV_KEY
#define \
AR_OTP_PRV_KEY \
48
#define \
AB_OTP_PRV_KEY \
8
typedef struct SIE_OTP_PRV_KEY {
#define RA_OTP_PRV_KEY_rsaPubKey 0x00000
/* @'00000 */ SIE_UINT128 ie_rsaPubKey [4];
#define arr_OTP_PRV_KEY_rsaPubKey 4
#define RA_OTP_PRV_KEY_rsaMod 0x00040
/* @'00040 */ SIE_UINT128 ie_rsaMod [8];
#define arr_OTP_PRV_KEY_rsaMod 8
} SIE_OTP_PRV_KEY;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 OTP_PRV_KEY_drvrd (SIE_OTP_PRV_KEY *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 OTP_PRV_KEY_drvwr (SIE_OTP_PRV_KEY *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void OTP_PRV_KEY_reset (SIE_OTP_PRV_KEY *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define OTP_PRV_KEY_check(p,pie,ps8name,hfpErrLOG) OTP_PRV_KEY_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define OTP_PRV_KEY_print(p, ps8name,hfpErrLOG) OTP_PRV_KEY_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 OTP_PRV_KEY_cmp (SIE_OTP_PRV_KEY *p, SIE_OTP_PRV_KEY *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 OTP_PRV_KEY_import(SIE_OTP_PRV_KEY *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 OTP_PRV_KEY_export(SIE_OTP_PRV_KEY *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: OTP_PRV_KEY
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: OTP_CRC32
* @
* %unsigned 32 prvkCrc32
* * *
* * CRC32 value of Private Key Data region
* @
* %unsigned 32 rkekCrc32
* * *
* * CRC32 value of RKEK Key Data region
* @
* %unsigned 32 aeskCrc32
* * *
* * CRC32 value of AES Key Data region
* @
* %unsigned 32 reserved
**********************************************************************************************************************/
#ifdef h_OTP_CRC32
#else
#define h_OTP_CRC32
#define \
AR_OTP_CRC32 \
4
#define \
AB_OTP_CRC32 \
4
typedef struct SIE_OTP_CRC32 {
#define RA_OTP_CRC32_D0th_ ISC_USE_ONLY 0x00000
#define w32OTP_CRC32_D0th_ { \
UNSG32 u_prvkCrc32 : 32; \
}
/* @'00000 */ struct w32OTP_CRC32_D0th_;
/* [31: 0] */ #define BA_OTP_CRC32_prvkCrc32 0x00000
/* ---:--- */ #define bOTP_CRC32_prvkCrc32 32 /*bit*/
/* ---:--- */ #define LSb32OTP_CRC32_prvkCrc32 0 /*:31*/
/* ---:--- */ #define MSK32OTP_CRC32_prvkCrc32 0xFFFFFFFF
/* ---:--- */ #define GET32OTP_CRC32_prvkCrc32(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16OTP_CRC32_prvkCrc32(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32OTP_CRC32_prvkCrc32(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16OTP_CRC32_prvkCrc32(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_OTP_CRC32_D1th_ ISC_USE_ONLY 0x00004
#define w32OTP_CRC32_D1th_ { \
UNSG32 u_rkekCrc32 : 32; \
}
/* @'00004 */ struct w32OTP_CRC32_D1th_;
/* [31: 0] */ #define BA_OTP_CRC32_rkekCrc32 0x00004
/* ---:--- */ #define bOTP_CRC32_rkekCrc32 32 /*bit*/
/* ---:--- */ #define LSb32OTP_CRC32_rkekCrc32 0 /*:31*/
/* ---:--- */ #define MSK32OTP_CRC32_rkekCrc32 0xFFFFFFFF
/* ---:--- */ #define GET32OTP_CRC32_rkekCrc32(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16OTP_CRC32_rkekCrc32(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32OTP_CRC32_rkekCrc32(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16OTP_CRC32_rkekCrc32(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_OTP_CRC32_D2th_ ISC_USE_ONLY 0x00008
#define w32OTP_CRC32_D2th_ { \
UNSG32 u_aeskCrc32 : 32; \
}
/* @'00008 */ struct w32OTP_CRC32_D2th_;
/* [31: 0] */ #define BA_OTP_CRC32_aeskCrc32 0x00008
/* ---:--- */ #define bOTP_CRC32_aeskCrc32 32 /*bit*/
/* ---:--- */ #define LSb32OTP_CRC32_aeskCrc32 0 /*:31*/
/* ---:--- */ #define MSK32OTP_CRC32_aeskCrc32 0xFFFFFFFF
/* ---:--- */ #define GET32OTP_CRC32_aeskCrc32(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16OTP_CRC32_aeskCrc32(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32OTP_CRC32_aeskCrc32(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16OTP_CRC32_aeskCrc32(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_OTP_CRC32_D3th_ ISC_USE_ONLY 0x0000C
#define w32OTP_CRC32_D3th_ { \
UNSG32 u_reserved : 32; \
}
/* @'0000C */ struct w32OTP_CRC32_D3th_;
/* [31: 0] */ #define BA_OTP_CRC32_reserved 0x0000C
/* ---:--- */ #define bOTP_CRC32_reserved 32 /*bit*/
/* ---:--- */ #define LSb32OTP_CRC32_reserved 0 /*:31*/
/* ---:--- */ #define MSK32OTP_CRC32_reserved 0xFFFFFFFF
/* ---:--- */ #define GET32OTP_CRC32_reserved(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16OTP_CRC32_reserved(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32OTP_CRC32_reserved(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16OTP_CRC32_reserved(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_OTP_CRC32;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 OTP_CRC32_drvrd (SIE_OTP_CRC32 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 OTP_CRC32_drvwr (SIE_OTP_CRC32 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void OTP_CRC32_reset (SIE_OTP_CRC32 *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define OTP_CRC32_check(p,pie,ps8name,hfpErrLOG) OTP_CRC32_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define OTP_CRC32_print(p, ps8name,hfpErrLOG) OTP_CRC32_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 OTP_CRC32_cmp (SIE_OTP_CRC32 *p, SIE_OTP_CRC32 *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 OTP_CRC32_import(SIE_OTP_CRC32 *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 OTP_CRC32_export(SIE_OTP_CRC32 *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: OTP_CRC32
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: OTP_DAT
* @ PRVK_START
* $UINT128 prvkDatHamming REG [2]
* * *
* * Private key information hamming code
* @ PRVK_INFO
* %unsigned 8 prvkInfoHamming
* * *
* * Information header hamming code
* %unsigned 8 crc32Val0
* %unsigned 8 crc32Val1
* %unsigned 8 crc32Val2
* %unsigned 8 crc32Val3
* * *
* * CRC32 value of Private Key and configuration information
* %unsigned 8 prvkType
* : AES128 1
* : CHIPID128 2
* : RSA1024_PUBKEY 4
* : RSA1024_PRVKEY 8
* : RSA2048_PRVK 16
* %unsigned 8 otpKeyEnable
* * *
* * Mask for OTP and ROM Key enable/disable
* * 00: Disable OTP Key,
* * Enable ROM Key
* * 01: Enable OTP Key
* * Enable ROM Key
* * 10: Disable OTP Key
* * Disable ROM Key
* * 11: Enable OTP Key
* * Disable ROM Key
* %unsigned 8 reserved
* @ PRVK_DAT
* $UINT128 prvkDat REG [12]
* * *
* * Private Key Data which contains 128 bits symmetric verification key and public key and modulus of RSA algorithm.
* @ RKEK
* $UINT128 kekDat 0
* * *
* * 128-bit Root Key Encryption Key (RKEK), which is randomly created, and burned into OTP registers at fist the time boot-up while manufacturing.
* @ AESK_START
* $UINT64 aeskDatHamming
* * *
* * aes key information hamming code
* @ AESK_INFO
* %unsigned 8 aeskInfoHamming
* * *
* * Information header hamming code
* %unsigned 8 crc32Val0
* %unsigned 8 crc32Val1
* %unsigned 8 crc32Val2
* %unsigned 8 crc32Val3
* * *
* * CRC32 value of AES Key and configuration information
* %unsigned 8 aeskType
* %unsigned 16 featureInfo1
* * *
* * Reserved information
* @ AESK_DAT
* $UINT64 aeskDat REG [2]
* * *
* * AES Key Data
* @ CHIP_INFO
* $UINT128 bindInfo
* * *
* * Binding info of the platform which indicates the chip features
* @ USER_INFO
* $UINT128 userInfo
* * *
* * Customizable area which indicates the products ID and reversion ID
* @
* $UINT64 reserved
* * *
* * 64-bit reserved data
**********************************************************************************************************************/
#ifdef h_OTP_DAT
#else
#define h_OTP_DAT
#define \
AR_OTP_DAT \
80
#define \
AB_OTP_DAT \
9
typedef struct SIE_OTP_DAT {
#define RA_OTP_DAT_PRVK_START 0x00000
/* @'00000 */ SIE_UINT128 ie_prvkDatHamming [2];
#define arr_OTP_DAT_prvkDatHamming 2
#define RA_OTP_DAT_PRVK_INFO 0x00020
#define w32OTP_DAT_PRVK_INFO { \
UNSG32 uPRVK_INFO_prvkInfoHamming : 8; \
UNSG32 uPRVK_INFO_crc32Val0 : 8; \
UNSG32 uPRVK_INFO_crc32Val1 : 8; \
UNSG32 uPRVK_INFO_crc32Val2 : 8; \
}
/* @'00020 */ union { UNSG32 u32OTP_DAT_PRVK_INFO;
struct w32OTP_DAT_PRVK_INFO;
};
/* [ 7: 0] */ #define BA_OTP_DAT_PRVK_INFO_prvkInfoHamming 0x00020
/* ---:--- */ #define bOTP_DAT_PRVK_INFO_prvkInfoHamming 8 /*bit*/
/* ---:--- */ #define LSb32OTP_DAT_PRVK_INFO_prvkInfoHamming 0 /*: 7*/
/* ---:--- */ #define MSK32OTP_DAT_PRVK_INFO_prvkInfoHamming 0x000000FF
/* ---:--- */ #define GET32OTP_DAT_PRVK_INFO_prvkInfoHamming(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16OTP_DAT_PRVK_INFO_prvkInfoHamming(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32OTP_DAT_PRVK_INFO_prvkInfoHamming(r32,v)do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16OTP_DAT_PRVK_INFO_prvkInfoHamming(r16,v)do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_OTP_DAT_PRVK_INFO_crc32Val0 0x00021
/* ---:--- */ #define bOTP_DAT_PRVK_INFO_crc32Val0 8 /*bit*/
/* ---:--- */ #define LSb32OTP_DAT_PRVK_INFO_crc32Val0 8 /*:15*/
/* ---:--- */ #define MSK32OTP_DAT_PRVK_INFO_crc32Val0 0x0000FF00
/* ---:--- */ #define GET32OTP_DAT_PRVK_INFO_crc32Val0(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16OTP_DAT_PRVK_INFO_crc32Val0(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32OTP_DAT_PRVK_INFO_crc32Val0(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16OTP_DAT_PRVK_INFO_crc32Val0(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
/* [23:16] */ #define BA_OTP_DAT_PRVK_INFO_crc32Val1 0x00022
/* ---:--- */ #define bOTP_DAT_PRVK_INFO_crc32Val1 8 /*bit*/
/* ---:--- */ #define LSb32OTP_DAT_PRVK_INFO_crc32Val1 16 /*:23*/
/* ---:--- */ #define MSK32OTP_DAT_PRVK_INFO_crc32Val1 0x00FF0000
/* ---:--- */ #define GET32OTP_DAT_PRVK_INFO_crc32Val1(r32) (((r32)>>16)&0x00FF)
/* ---:--- */ #define GET16OTP_DAT_PRVK_INFO_crc32Val1(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32OTP_DAT_PRVK_INFO_crc32Val1(r32,v) do{(r32)&=~(0x00FF<<16);(r32)|=((v)&0x00FF)<<16;}while(0)
/* ---:--- */ #define SET16OTP_DAT_PRVK_INFO_crc32Val1(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [31:24] */ #define BA_OTP_DAT_PRVK_INFO_crc32Val2 0x00023
/* ---:--- */ #define bOTP_DAT_PRVK_INFO_crc32Val2 8 /*bit*/
/* ---:--- */ #define LSb32OTP_DAT_PRVK_INFO_crc32Val2 24 /*:31*/
/* ---:--- */ #define MSK32OTP_DAT_PRVK_INFO_crc32Val2 0xFF000000
/* ---:--- */ #define GET32OTP_DAT_PRVK_INFO_crc32Val2(r32) (((r32)>>24)&0x00FF)
/* ---:--- */ #define GET16OTP_DAT_PRVK_INFO_crc32Val2(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32OTP_DAT_PRVK_INFO_crc32Val2(r32,v) do{(r32)&=~(0x00FF<<24);(r32)|=((v)&0x00FF)<<24;}while(0)
/* ---:--- */ #define SET16OTP_DAT_PRVK_INFO_crc32Val2(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
#define RA_OTP_DAT_PRVK_INFO1 0x00024
#define w32OTP_DAT_PRVK_INFO1 { \
UNSG32 uPRVK_INFO_crc32Val3 : 8; \
UNSG32 uPRVK_INFO_prvkType : 8; \
UNSG32 uPRVK_INFO_otpKeyEnable : 8; \
UNSG32 uPRVK_INFO_reserved : 8; \
}
/* @'00024 */ union { UNSG32 u32OTP_DAT_PRVK_INFO1;
struct w32OTP_DAT_PRVK_INFO1;
};
/* [ 7: 0] */ #define BA_OTP_DAT_PRVK_INFO_crc32Val3 0x00024
/* ---:--- */ #define bOTP_DAT_PRVK_INFO_crc32Val3 8 /*bit*/
/* ---:--- */ #define LSb32OTP_DAT_PRVK_INFO_crc32Val3 0 /*: 7*/
/* ---:--- */ #define MSK32OTP_DAT_PRVK_INFO_crc32Val3 0x000000FF
/* ---:--- */ #define GET32OTP_DAT_PRVK_INFO_crc32Val3(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16OTP_DAT_PRVK_INFO_crc32Val3(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32OTP_DAT_PRVK_INFO_crc32Val3(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16OTP_DAT_PRVK_INFO_crc32Val3(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_OTP_DAT_PRVK_INFO_prvkType 0x00025
/* ---:--- */ #define bOTP_DAT_PRVK_INFO_prvkType 8 /*bit*/
/* ---:--- */ #define LSb32OTP_DAT_PRVK_INFO_prvkType 8 /*:15*/
/* ---:--- */ #define MSK32OTP_DAT_PRVK_INFO_prvkType 0x0000FF00
/* ---:--- */ #define GET32OTP_DAT_PRVK_INFO_prvkType(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16OTP_DAT_PRVK_INFO_prvkType(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32OTP_DAT_PRVK_INFO_prvkType(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16OTP_DAT_PRVK_INFO_prvkType(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
#define OTP_DAT_PRVK_INFO_prvkType_AES128 0x1
#define OTP_DAT_PRVK_INFO_prvkType_CHIPID128 0x2
#define OTP_DAT_PRVK_INFO_prvkType_RSA1024_PUBKEY 0x4
#define OTP_DAT_PRVK_INFO_prvkType_RSA1024_PRVKEY 0x8
#define OTP_DAT_PRVK_INFO_prvkType_RSA2048_PRVK 0x10
/* [23:16] */ #define BA_OTP_DAT_PRVK_INFO_otpKeyEnable 0x00026
/* ---:--- */ #define bOTP_DAT_PRVK_INFO_otpKeyEnable 8 /*bit*/
/* ---:--- */ #define LSb32OTP_DAT_PRVK_INFO_otpKeyEnable 16 /*:23*/
/* ---:--- */ #define MSK32OTP_DAT_PRVK_INFO_otpKeyEnable 0x00FF0000
/* ---:--- */ #define GET32OTP_DAT_PRVK_INFO_otpKeyEnable(r32) (((r32)>>16)&0x00FF)
/* ---:--- */ #define GET16OTP_DAT_PRVK_INFO_otpKeyEnable(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32OTP_DAT_PRVK_INFO_otpKeyEnable(r32,v) do{(r32)&=~(0x00FF<<16);(r32)|=((v)&0x00FF)<<16;}while(0)
/* ---:--- */ #define SET16OTP_DAT_PRVK_INFO_otpKeyEnable(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [31:24] */ #define BA_OTP_DAT_PRVK_INFO_reserved 0x00027
/* ---:--- */ #define bOTP_DAT_PRVK_INFO_reserved 8 /*bit*/
/* ---:--- */ #define LSb32OTP_DAT_PRVK_INFO_reserved 24 /*:31*/
/* ---:--- */ #define MSK32OTP_DAT_PRVK_INFO_reserved 0xFF000000
/* ---:--- */ #define GET32OTP_DAT_PRVK_INFO_reserved(r32) (((r32)>>24)&0x00FF)
/* ---:--- */ #define GET16OTP_DAT_PRVK_INFO_reserved(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32OTP_DAT_PRVK_INFO_reserved(r32,v) do{(r32)&=~(0x00FF<<24);(r32)|=((v)&0x00FF)<<24;}while(0)
/* ---:--- */ #define SET16OTP_DAT_PRVK_INFO_reserved(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
#define RA_OTP_DAT_PRVK_DAT 0x00028
/* @'00028 */ SIE_UINT128 ie_prvkDat [12];
#define arr_OTP_DAT_prvkDat 12
#define RA_OTP_DAT_RKEK 0x000E8
/* @'000E8 */ SIE_UINT128 ie_kekDat;
#define RA_OTP_DAT_AESK_START 0x000F8
/* @'000F8 */ SIE_UINT64 ie_aeskDatHamming;
#define RA_OTP_DAT_AESK_INFO 0x00100
#define w32OTP_DAT_AESK_INFO { \
UNSG32 uAESK_INFO_aeskInfoHamming : 8; \
UNSG32 uAESK_INFO_crc32Val0 : 8; \
UNSG32 uAESK_INFO_crc32Val1 : 8; \
UNSG32 uAESK_INFO_crc32Val2 : 8; \
}
/* @'00100 */ union { UNSG32 u32OTP_DAT_AESK_INFO;
struct w32OTP_DAT_AESK_INFO;
};
/* [ 7: 0] */ #define BA_OTP_DAT_AESK_INFO_aeskInfoHamming 0x00100
/* ---:--- */ #define bOTP_DAT_AESK_INFO_aeskInfoHamming 8 /*bit*/
/* ---:--- */ #define LSb32OTP_DAT_AESK_INFO_aeskInfoHamming 0 /*: 7*/
/* ---:--- */ #define MSK32OTP_DAT_AESK_INFO_aeskInfoHamming 0x000000FF
/* ---:--- */ #define GET32OTP_DAT_AESK_INFO_aeskInfoHamming(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16OTP_DAT_AESK_INFO_aeskInfoHamming(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32OTP_DAT_AESK_INFO_aeskInfoHamming(r32,v)do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16OTP_DAT_AESK_INFO_aeskInfoHamming(r16,v)do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_OTP_DAT_AESK_INFO_crc32Val0 0x00101
/* ---:--- */ #define bOTP_DAT_AESK_INFO_crc32Val0 8 /*bit*/
/* ---:--- */ #define LSb32OTP_DAT_AESK_INFO_crc32Val0 8 /*:15*/
/* ---:--- */ #define MSK32OTP_DAT_AESK_INFO_crc32Val0 0x0000FF00
/* ---:--- */ #define GET32OTP_DAT_AESK_INFO_crc32Val0(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16OTP_DAT_AESK_INFO_crc32Val0(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32OTP_DAT_AESK_INFO_crc32Val0(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16OTP_DAT_AESK_INFO_crc32Val0(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
/* [23:16] */ #define BA_OTP_DAT_AESK_INFO_crc32Val1 0x00102
/* ---:--- */ #define bOTP_DAT_AESK_INFO_crc32Val1 8 /*bit*/
/* ---:--- */ #define LSb32OTP_DAT_AESK_INFO_crc32Val1 16 /*:23*/
/* ---:--- */ #define MSK32OTP_DAT_AESK_INFO_crc32Val1 0x00FF0000
/* ---:--- */ #define GET32OTP_DAT_AESK_INFO_crc32Val1(r32) (((r32)>>16)&0x00FF)
/* ---:--- */ #define GET16OTP_DAT_AESK_INFO_crc32Val1(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32OTP_DAT_AESK_INFO_crc32Val1(r32,v) do{(r32)&=~(0x00FF<<16);(r32)|=((v)&0x00FF)<<16;}while(0)
/* ---:--- */ #define SET16OTP_DAT_AESK_INFO_crc32Val1(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [31:24] */ #define BA_OTP_DAT_AESK_INFO_crc32Val2 0x00103
/* ---:--- */ #define bOTP_DAT_AESK_INFO_crc32Val2 8 /*bit*/
/* ---:--- */ #define LSb32OTP_DAT_AESK_INFO_crc32Val2 24 /*:31*/
/* ---:--- */ #define MSK32OTP_DAT_AESK_INFO_crc32Val2 0xFF000000
/* ---:--- */ #define GET32OTP_DAT_AESK_INFO_crc32Val2(r32) (((r32)>>24)&0x00FF)
/* ---:--- */ #define GET16OTP_DAT_AESK_INFO_crc32Val2(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32OTP_DAT_AESK_INFO_crc32Val2(r32,v) do{(r32)&=~(0x00FF<<24);(r32)|=((v)&0x00FF)<<24;}while(0)
/* ---:--- */ #define SET16OTP_DAT_AESK_INFO_crc32Val2(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
#define RA_OTP_DAT_AESK_INFO1 0x00104
#define w32OTP_DAT_AESK_INFO1 { \
UNSG32 uAESK_INFO_crc32Val3 : 8; \
UNSG32 uAESK_INFO_aeskType : 8; \
UNSG32 uAESK_INFO_featureInfo1 : 16; \
}
/* @'00104 */ union { UNSG32 u32OTP_DAT_AESK_INFO1;
struct w32OTP_DAT_AESK_INFO1;
};
/* [ 7: 0] */ #define BA_OTP_DAT_AESK_INFO_crc32Val3 0x00104
/* ---:--- */ #define bOTP_DAT_AESK_INFO_crc32Val3 8 /*bit*/
/* ---:--- */ #define LSb32OTP_DAT_AESK_INFO_crc32Val3 0 /*: 7*/
/* ---:--- */ #define MSK32OTP_DAT_AESK_INFO_crc32Val3 0x000000FF
/* ---:--- */ #define GET32OTP_DAT_AESK_INFO_crc32Val3(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16OTP_DAT_AESK_INFO_crc32Val3(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32OTP_DAT_AESK_INFO_crc32Val3(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16OTP_DAT_AESK_INFO_crc32Val3(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_OTP_DAT_AESK_INFO_aeskType 0x00105
/* ---:--- */ #define bOTP_DAT_AESK_INFO_aeskType 8 /*bit*/
/* ---:--- */ #define LSb32OTP_DAT_AESK_INFO_aeskType 8 /*:15*/
/* ---:--- */ #define MSK32OTP_DAT_AESK_INFO_aeskType 0x0000FF00
/* ---:--- */ #define GET32OTP_DAT_AESK_INFO_aeskType(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16OTP_DAT_AESK_INFO_aeskType(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32OTP_DAT_AESK_INFO_aeskType(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16OTP_DAT_AESK_INFO_aeskType(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
/* [31:16] */ #define BA_OTP_DAT_AESK_INFO_featureInfo1 0x00106
/* ---:--- */ #define bOTP_DAT_AESK_INFO_featureInfo1 16 /*bit*/
/* ---:--- */ #define LSb32OTP_DAT_AESK_INFO_featureInfo1 16 /*:31*/
/* ---:--- */ #define MSK32OTP_DAT_AESK_INFO_featureInfo1 0xFFFF0000
/* ---:--- */ #define GET32OTP_DAT_AESK_INFO_featureInfo1(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16OTP_DAT_AESK_INFO_featureInfo1(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32OTP_DAT_AESK_INFO_featureInfo1(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16OTP_DAT_AESK_INFO_featureInfo1(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_OTP_DAT_AESK_DAT 0x00108
/* @'00108 */ SIE_UINT64 ie_aeskDat [2];
#define arr_OTP_DAT_aeskDat 2
#define RA_OTP_DAT_CHIP_INFO 0x00118
/* @'00118 */ SIE_UINT128 ie_bindInfo;
#define RA_OTP_DAT_USER_INFO 0x00128
/* @'00128 */ SIE_UINT128 ie_userInfo;
#define RA_OTP_DAT_reserved 0x00138
/* @'00138 */ SIE_UINT64 ie_reserved;
} SIE_OTP_DAT;
#define dftOTP_DAT_PRVK_INFO 0x00000000
typedef union { UNSG32 u32;
struct w32OTP_DAT_PRVK_INFO;
} T32OTP_DAT_PRVK_INFO;
#define dftOTP_DAT_PRVK_INFO1 0x00000000
typedef union { UNSG32 u32;
struct w32OTP_DAT_PRVK_INFO1;
} T32OTP_DAT_PRVK_INFO1;
#define dftOTP_DAT_AESK_INFO 0x00000000
typedef union { UNSG32 u32;
struct w32OTP_DAT_AESK_INFO;
} T32OTP_DAT_AESK_INFO;
#define dftOTP_DAT_AESK_INFO1 0x00000000
typedef union { UNSG32 u32;
struct w32OTP_DAT_AESK_INFO1;
} T32OTP_DAT_AESK_INFO1;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 OTP_DAT_drvrd (SIE_OTP_DAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 OTP_DAT_drvwr (SIE_OTP_DAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void OTP_DAT_reset (SIE_OTP_DAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define OTP_DAT_check(p,pie,ps8name,hfpErrLOG) OTP_DAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define OTP_DAT_print(p, ps8name,hfpErrLOG) OTP_DAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 OTP_DAT_cmp (SIE_OTP_DAT *p, SIE_OTP_DAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 OTP_DAT_import(SIE_OTP_DAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 OTP_DAT_export(SIE_OTP_DAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: OTP_DAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: OTP_STATUS
* : unknown 0
* * *OTP region status is unknown
* : clean 1
* * *OTP region has not been programmed
* : dirty 2
* * *OTP region has been programmed but not CRC32 check failed
* : valid 3
* * *OTP region has been programmed and CRC32 check succeed
* @ DAT
* %unsigned 2 rkek_status
* * *
* * RKEK key status
* %unsigned 2 prvk_status
* * *
* * private key status
* %unsigned 2 aesk_status
* * *
* * aes key status
**********************************************************************************************************************/
#ifdef h_OTP_STATUS
#else
#define h_OTP_STATUS
#define \
AR_OTP_STATUS \
1
#define \
AB_OTP_STATUS \
2
#define OTP_STATUS_unknown 0x0
#define OTP_STATUS_clean 0x1
#define OTP_STATUS_dirty 0x2
#define OTP_STATUS_valid 0x3
typedef struct SIE_OTP_STATUS {
#define RA_OTP_STATUS_DAT 0x00000
#define w32OTP_STATUS_DAT { \
UNSG32 uDAT_rkek_status : 2; \
UNSG32 uDAT_prvk_status : 2; \
UNSG32 uDAT_aesk_status : 2; \
UNSG32 _x00000 : 26; \
}
/* @'00000 */ union { UNSG32 u32OTP_STATUS_DAT;
struct w32OTP_STATUS_DAT;
};
/* [ 1: 0] */ #define BA_OTP_STATUS_DAT_rkek_status 0x00000
/* ---:--- */ #define bOTP_STATUS_DAT_rkek_status 2 /*bit*/
/* ---:--- */ #define LSb32OTP_STATUS_DAT_rkek_status 0 /*: 1*/
/* ---:--- */ #define MSK32OTP_STATUS_DAT_rkek_status 0x00000003
/* ---:--- */ #define GET32OTP_STATUS_DAT_rkek_status(r32) (((r32)>> 0)&0x0003)
/* ---:--- */ #define GET16OTP_STATUS_DAT_rkek_status(r16) (((r16)>> 0)&0x0003)
/* ---:--- */ #define SET32OTP_STATUS_DAT_rkek_status(r32,v) do{(r32)&=~(0x0003<< 0);(r32)|=((v)&0x0003)<< 0;}while(0)
/* ---:--- */ #define SET16OTP_STATUS_DAT_rkek_status(r16,v) do{(r16)&=~(0x0003<< 0);(r16)|=((v)&0x0003)<< 0;}while(0)
/* [ 3: 2] */ #define BA_OTP_STATUS_DAT_prvk_status 0x00000
/* ---:--- */ #define bOTP_STATUS_DAT_prvk_status 2 /*bit*/
/* ---:--- */ #define LSb32OTP_STATUS_DAT_prvk_status 2 /*: 3*/
/* ---:--- */ #define MSK32OTP_STATUS_DAT_prvk_status 0x0000000C
/* ---:--- */ #define GET32OTP_STATUS_DAT_prvk_status(r32) (((r32)>> 2)&0x0003)
/* ---:--- */ #define GET16OTP_STATUS_DAT_prvk_status(r16) (((r16)>> 2)&0x0003)
/* ---:--- */ #define SET32OTP_STATUS_DAT_prvk_status(r32,v) do{(r32)&=~(0x0003<< 2);(r32)|=((v)&0x0003)<< 2;}while(0)
/* ---:--- */ #define SET16OTP_STATUS_DAT_prvk_status(r16,v) do{(r16)&=~(0x0003<< 2);(r16)|=((v)&0x0003)<< 2;}while(0)
/* [ 5: 4] */ #define BA_OTP_STATUS_DAT_aesk_status 0x00000
/* ---:--- */ #define bOTP_STATUS_DAT_aesk_status 2 /*bit*/
/* ---:--- */ #define LSb32OTP_STATUS_DAT_aesk_status 4 /*: 5*/
/* ---:--- */ #define MSK32OTP_STATUS_DAT_aesk_status 0x00000030
/* ---:--- */ #define GET32OTP_STATUS_DAT_aesk_status(r32) (((r32)>> 4)&0x0003)
/* ---:--- */ #define GET16OTP_STATUS_DAT_aesk_status(r16) (((r16)>> 4)&0x0003)
/* ---:--- */ #define SET32OTP_STATUS_DAT_aesk_status(r32,v) do{(r32)&=~(0x0003<< 4);(r32)|=((v)&0x0003)<< 4;}while(0)
/* ---:--- */ #define SET16OTP_STATUS_DAT_aesk_status(r16,v) do{(r16)&=~(0x0003<< 4);(r16)|=((v)&0x0003)<< 4;}while(0)
} SIE_OTP_STATUS;
#define dftOTP_STATUS_DAT 0x00000000
typedef union { UNSG32 u32;
struct w32OTP_STATUS_DAT;
} T32OTP_STATUS_DAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 OTP_STATUS_drvrd (SIE_OTP_STATUS *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 OTP_STATUS_drvwr (SIE_OTP_STATUS *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void OTP_STATUS_reset (SIE_OTP_STATUS *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define OTP_STATUS_check(p,pie,ps8name,hfpErrLOG) OTP_STATUS_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define OTP_STATUS_print(p, ps8name,hfpErrLOG) OTP_STATUS_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 OTP_STATUS_cmp (SIE_OTP_STATUS *p, SIE_OTP_STATUS *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 OTP_STATUS_import(SIE_OTP_STATUS *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 OTP_STATUS_export(SIE_OTP_STATUS *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: OTP_STATUS
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: SECHF_ENTRY
* @ (P)
* %unsigned 2 flag 0
* : DISABLED 0
* * *
* * This entry is disabled
* : RO 1
* * *
* * The entry indicate a BIU register space range which is ready only for ARM
* : WO 2
* * *
* * The entry indicate a BIU register space range which is write only for ARM
* : RW 3
* * *
* * The entry indicate a BIU register space range which can be read and written by ARM
* %unsigned 14 reserved
* * *
* * Reserved bits
* %unsigned 16 regSize 0
* * *
* * The size of the register spaces in bytes to be configured
* @ (RW)
* %unsigned 32 regAddr 0
* * *
* * Start offset of the register spaces within the secure processor BIU to be configured
* * 0
**********************************************************************************************************************/
#ifdef h_SECHF_ENTRY
#else
#define h_SECHF_ENTRY
#define \
AR_SECHF_ENTRY \
2
#define \
AB_SECHF_ENTRY \
3
typedef struct SIE_SECHF_ENTRY {
#define RA_SECHF_ENTRY_D0th_ ISC_USE_ONLY 0x00000
#define w32SECHF_ENTRY_D0th_ { \
UNSG32 u_flag : 2; \
UNSG32 u_reserved : 14; \
UNSG32 u_regSize : 16; \
}
/* @'00000 */ struct w32SECHF_ENTRY_D0th_;
/* [ 1: 0] */ #define BA_SECHF_ENTRY_flag 0x00000
/* ---:--- */ #define bSECHF_ENTRY_flag 2 /*bit*/
/* ---:--- */ #define LSb32SECHF_ENTRY_flag 0 /*: 1*/
/* ---:--- */ #define MSK32SECHF_ENTRY_flag 0x00000003
/* ---:--- */ #define GET32SECHF_ENTRY_flag(r32) (((r32)>> 0)&0x0003)
/* ---:--- */ #define GET16SECHF_ENTRY_flag(r16) (((r16)>> 0)&0x0003)
/* ---:--- */ #define SET32SECHF_ENTRY_flag(r32,v) do{(r32)&=~(0x0003<< 0);(r32)|=((v)&0x0003)<< 0;}while(0)
/* ---:--- */ #define SET16SECHF_ENTRY_flag(r16,v) do{(r16)&=~(0x0003<< 0);(r16)|=((v)&0x0003)<< 0;}while(0)
#define SECHF_ENTRY_flag_DISABLED 0x0
#define SECHF_ENTRY_flag_RO 0x1
#define SECHF_ENTRY_flag_WO 0x2
#define SECHF_ENTRY_flag_RW 0x3
/* [15: 2] */ #define BA_SECHF_ENTRY_reserved 0x00000
/* ---:--- */ #define bSECHF_ENTRY_reserved 14 /*bit*/
/* ---:--- */ #define LSb32SECHF_ENTRY_reserved 2 /*:15*/
/* ---:--- */ #define MSK32SECHF_ENTRY_reserved 0x0000FFFC
/* ---:--- */ #define GET32SECHF_ENTRY_reserved(r32) (((r32)>> 2)&0x3FFF)
/* ---:--- */ #define GET16SECHF_ENTRY_reserved(r16) (((r16)>> 2)&0x3FFF)
/* ---:--- */ #define SET32SECHF_ENTRY_reserved(r32,v) do{(r32)&=~(0x3FFF<< 2);(r32)|=((v)&0x3FFF)<< 2;}while(0)
/* ---:--- */ #define SET16SECHF_ENTRY_reserved(r16,v) do{(r16)&=~(0x3FFF<< 2);(r16)|=((v)&0x3FFF)<< 2;}while(0)
/* [31:16] */ #define BA_SECHF_ENTRY_regSize 0x00002
/* ---:--- */ #define bSECHF_ENTRY_regSize 16 /*bit*/
/* ---:--- */ #define LSb32SECHF_ENTRY_regSize 16 /*:31*/
/* ---:--- */ #define MSK32SECHF_ENTRY_regSize 0xFFFF0000
/* ---:--- */ #define GET32SECHF_ENTRY_regSize(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16SECHF_ENTRY_regSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32SECHF_ENTRY_regSize(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16SECHF_ENTRY_regSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_SECHF_ENTRY_D1th_ ISC_USE_ONLY 0x00004
#define w32SECHF_ENTRY_D1th_ { \
UNSG32 u_regAddr : 32; \
}
/* @'00004 */ struct w32SECHF_ENTRY_D1th_;
/* [31: 0] */ #define BA_SECHF_ENTRY_regAddr 0x00004
/* ---:--- */ #define bSECHF_ENTRY_regAddr 32 /*bit*/
/* ---:--- */ #define LSb32SECHF_ENTRY_regAddr 0 /*:31*/
/* ---:--- */ #define MSK32SECHF_ENTRY_regAddr 0xFFFFFFFF
/* ---:--- */ #define GET32SECHF_ENTRY_regAddr(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SECHF_ENTRY_regAddr(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SECHF_ENTRY_regAddr(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SECHF_ENTRY_regAddr(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_SECHF_ENTRY;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 SECHF_ENTRY_drvrd (SIE_SECHF_ENTRY *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 SECHF_ENTRY_drvwr (SIE_SECHF_ENTRY *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void SECHF_ENTRY_reset (SIE_SECHF_ENTRY *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define SECHF_ENTRY_check(p,pie,ps8name,hfpErrLOG) SECHF_ENTRY_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define SECHF_ENTRY_print(p, ps8name,hfpErrLOG) SECHF_ENTRY_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 SECHF_ENTRY_cmp (SIE_SECHF_ENTRY *p, SIE_SECHF_ENTRY *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 SECHF_ENTRY_import(SIE_SECHF_ENTRY *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 SECHF_ENTRY_export(SIE_SECHF_ENTRY *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: SECHF_ENTRY
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: SECHF
* @
* $SECHF_ENTRY secEntries [8]
* * *
* * The entries to define accessible range of the secure processor of the BIU
**********************************************************************************************************************/
#ifdef h_SECHF
#else
#define h_SECHF
#define \
AR_SECHF \
2
#define \
AB_SECHF \
3
typedef struct SIE_SECHF {
#define RA_SECHF_secEntries 0x00000
/* @'00000 */ SIE_SECHF_ENTRY ie_secEntries;
} SIE_SECHF;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 SECHF_drvrd (SIE_SECHF *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 SECHF_drvwr (SIE_SECHF *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void SECHF_reset (SIE_SECHF *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define SECHF_check(p,pie,ps8name,hfpErrLOG) SECHF_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define SECHF_print(p, ps8name,hfpErrLOG) SECHF_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 SECHF_cmp (SIE_SECHF *p, SIE_SECHF *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 SECHF_import(SIE_SECHF *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 SECHF_export(SIE_SECHF *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: SECHF
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: JTAGCTL
* @
* %unsigned 1 EN 0
* * *
* * 0 to disable Jtag
* * 1 to enable Jtag
**********************************************************************************************************************/
#ifdef h_JTAGCTL
#else
#define h_JTAGCTL
#define \
AR_JTAGCTL \
1
#define \
AB_JTAGCTL \
2
typedef struct SIE_JTAGCTL {
#define RA_JTAGCTL_D0th_ ISC_USE_ONLY 0x00000
#define w32JTAGCTL_D0th_ { \
UNSG32 u_EN : 1; \
UNSG32 _x00000 : 31; \
}
/* @'00000 */ struct w32JTAGCTL_D0th_;
/* [ 0: 0] */ #define BA_JTAGCTL_EN 0x00000
/* ---:--- */ #define bJTAGCTL_EN 1 /*bit*/
/* ---:--- */ #define LSb32JTAGCTL_EN 0 /*: 0*/
/* ---:--- */ #define MSK32JTAGCTL_EN 0x00000001
/* ---:--- */ #define GET32JTAGCTL_EN(r32) (((r32)>> 0)&0x0001)
/* ---:--- */ #define GET16JTAGCTL_EN(r16) (((r16)>> 0)&0x0001)
/* ---:--- */ #define SET32JTAGCTL_EN(r32,v) do{(r32)&=~(0x0001<< 0);(r32)|=((v)&0x0001)<< 0;}while(0)
/* ---:--- */ #define SET16JTAGCTL_EN(r16,v) do{(r16)&=~(0x0001<< 0);(r16)|=((v)&0x0001)<< 0;}while(0)
} SIE_JTAGCTL;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 JTAGCTL_drvrd (SIE_JTAGCTL *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 JTAGCTL_drvwr (SIE_JTAGCTL *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void JTAGCTL_reset (SIE_JTAGCTL *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define JTAGCTL_check(p,pie,ps8name,hfpErrLOG) JTAGCTL_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define JTAGCTL_print(p, ps8name,hfpErrLOG) JTAGCTL_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 JTAGCTL_cmp (SIE_JTAGCTL *p, SIE_JTAGCTL *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 JTAGCTL_import(SIE_JTAGCTL *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 JTAGCTL_export(SIE_JTAGCTL *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: JTAGCTL
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: REG64
* %unsigned 8 b [8]
**********************************************************************************************************************/
#ifdef h_REG64
#else
#define h_REG64
#define \
AR_REG64 \
2
#define \
AB_REG64 \
3
typedef struct SIE_REG64 {
#define RA_REG64_D0th_ ISC_USE_ONLY 0x00000
#define w32REG64_D0th_ { \
UNSG32 u_b_0i : 8; \
UNSG32 u_b_1i : 8; \
UNSG32 u_b_2i : 8; \
UNSG32 u_b_3i : 8; \
}
/* @'00000 */ struct w32REG64_D0th_;
/* [ 7: 0] */ #define BA_REG64_b_0i 0x00000
/* ---:--- */ #define bREG64_b_0i 8 /*bit*/
/* ---:--- */ #define LSb32REG64_b_0i 0 /*: 7*/
/* ---:--- */ #define MSK32REG64_b_0i 0x000000FF
/* ---:--- */ #define GET32REG64_b_0i(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16REG64_b_0i(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32REG64_b_0i(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16REG64_b_0i(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_REG64_b_1i 0x00001
/* ---:--- */ #define bREG64_b_1i 8 /*bit*/
/* ---:--- */ #define LSb32REG64_b_1i 8 /*:15*/
/* ---:--- */ #define MSK32REG64_b_1i 0x0000FF00
/* ---:--- */ #define GET32REG64_b_1i(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16REG64_b_1i(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32REG64_b_1i(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16REG64_b_1i(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
/* [23:16] */ #define BA_REG64_b_2i 0x00002
/* ---:--- */ #define bREG64_b_2i 8 /*bit*/
/* ---:--- */ #define LSb32REG64_b_2i 16 /*:23*/
/* ---:--- */ #define MSK32REG64_b_2i 0x00FF0000
/* ---:--- */ #define GET32REG64_b_2i(r32) (((r32)>>16)&0x00FF)
/* ---:--- */ #define GET16REG64_b_2i(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32REG64_b_2i(r32,v) do{(r32)&=~(0x00FF<<16);(r32)|=((v)&0x00FF)<<16;}while(0)
/* ---:--- */ #define SET16REG64_b_2i(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [31:24] */ #define BA_REG64_b_3i 0x00003
/* ---:--- */ #define bREG64_b_3i 8 /*bit*/
/* ---:--- */ #define LSb32REG64_b_3i 24 /*:31*/
/* ---:--- */ #define MSK32REG64_b_3i 0xFF000000
/* ---:--- */ #define GET32REG64_b_3i(r32) (((r32)>>24)&0x00FF)
/* ---:--- */ #define GET16REG64_b_3i(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32REG64_b_3i(r32,v) do{(r32)&=~(0x00FF<<24);(r32)|=((v)&0x00FF)<<24;}while(0)
/* ---:--- */ #define SET16REG64_b_3i(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
#define RA_REG64_D1th_ ISC_USE_ONLY 0x00004
#define w32REG64_D1th_ { \
UNSG32 u_b_4i : 8; \
UNSG32 u_b_5i : 8; \
UNSG32 u_b_6i : 8; \
UNSG32 u_b_7i : 8; \
}
/* @'00004 */ struct w32REG64_D1th_;
/* [ 7: 0] */ #define BA_REG64_b_4i 0x00004
/* ---:--- */ #define bREG64_b_4i 8 /*bit*/
/* ---:--- */ #define LSb32REG64_b_4i 0 /*: 7*/
/* ---:--- */ #define MSK32REG64_b_4i 0x000000FF
/* ---:--- */ #define GET32REG64_b_4i(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16REG64_b_4i(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32REG64_b_4i(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16REG64_b_4i(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_REG64_b_5i 0x00005
/* ---:--- */ #define bREG64_b_5i 8 /*bit*/
/* ---:--- */ #define LSb32REG64_b_5i 8 /*:15*/
/* ---:--- */ #define MSK32REG64_b_5i 0x0000FF00
/* ---:--- */ #define GET32REG64_b_5i(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16REG64_b_5i(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32REG64_b_5i(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16REG64_b_5i(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
/* [23:16] */ #define BA_REG64_b_6i 0x00006
/* ---:--- */ #define bREG64_b_6i 8 /*bit*/
/* ---:--- */ #define LSb32REG64_b_6i 16 /*:23*/
/* ---:--- */ #define MSK32REG64_b_6i 0x00FF0000
/* ---:--- */ #define GET32REG64_b_6i(r32) (((r32)>>16)&0x00FF)
/* ---:--- */ #define GET16REG64_b_6i(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32REG64_b_6i(r32,v) do{(r32)&=~(0x00FF<<16);(r32)|=((v)&0x00FF)<<16;}while(0)
/* ---:--- */ #define SET16REG64_b_6i(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [31:24] */ #define BA_REG64_b_7i 0x00007
/* ---:--- */ #define bREG64_b_7i 8 /*bit*/
/* ---:--- */ #define LSb32REG64_b_7i 24 /*:31*/
/* ---:--- */ #define MSK32REG64_b_7i 0xFF000000
/* ---:--- */ #define GET32REG64_b_7i(r32) (((r32)>>24)&0x00FF)
/* ---:--- */ #define GET16REG64_b_7i(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32REG64_b_7i(r32,v) do{(r32)&=~(0x00FF<<24);(r32)|=((v)&0x00FF)<<24;}while(0)
/* ---:--- */ #define SET16REG64_b_7i(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
} SIE_REG64;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 REG64_drvrd (SIE_REG64 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 REG64_drvwr (SIE_REG64 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void REG64_reset (SIE_REG64 *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define REG64_check(p,pie,ps8name,hfpErrLOG) REG64_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define REG64_print(p, ps8name,hfpErrLOG) REG64_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 REG64_cmp (SIE_REG64 *p, SIE_REG64 *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 REG64_import(SIE_REG64 *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 REG64_export(SIE_REG64 *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: REG64
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: A64Par
* @
* %unsigned 4 s0 0
* %unsigned 4 s1 0
* %unsigned 4 s2 0
* %unsigned 4 d0 0
**********************************************************************************************************************/
#ifdef h_A64Par
#else
#define h_A64Par
#define \
AR_A64Par \
1
#define \
AB_A64Par \
2
typedef struct SIE_A64Par {
#define RA_A64Par_D0th_ ISC_USE_ONLY 0x00000
#define w32A64Par_D0th_ { \
UNSG32 u_s0 : 4; \
UNSG32 u_s1 : 4; \
UNSG32 u_s2 : 4; \
UNSG32 u_d0 : 4; \
UNSG32 _x00000 : 16; \
}
/* @'00000 */ struct w32A64Par_D0th_;
/* [ 3: 0] */ #define BA_A64Par_s0 0x00000
/* ---:--- */ #define bA64Par_s0 4 /*bit*/
/* ---:--- */ #define LSb32A64Par_s0 0 /*: 3*/
/* ---:--- */ #define MSK32A64Par_s0 0x0000000F
/* ---:--- */ #define GET32A64Par_s0(r32) (((r32)>> 0)&0x000F)
/* ---:--- */ #define GET16A64Par_s0(r16) (((r16)>> 0)&0x000F)
/* ---:--- */ #define SET32A64Par_s0(r32,v) do{(r32)&=~(0x000F<< 0);(r32)|=((v)&0x000F)<< 0;}while(0)
/* ---:--- */ #define SET16A64Par_s0(r16,v) do{(r16)&=~(0x000F<< 0);(r16)|=((v)&0x000F)<< 0;}while(0)
/* [ 7: 4] */ #define BA_A64Par_s1 0x00000
/* ---:--- */ #define bA64Par_s1 4 /*bit*/
/* ---:--- */ #define LSb32A64Par_s1 4 /*: 7*/
/* ---:--- */ #define MSK32A64Par_s1 0x000000F0
/* ---:--- */ #define GET32A64Par_s1(r32) (((r32)>> 4)&0x000F)
/* ---:--- */ #define GET16A64Par_s1(r16) (((r16)>> 4)&0x000F)
/* ---:--- */ #define SET32A64Par_s1(r32,v) do{(r32)&=~(0x000F<< 4);(r32)|=((v)&0x000F)<< 4;}while(0)
/* ---:--- */ #define SET16A64Par_s1(r16,v) do{(r16)&=~(0x000F<< 4);(r16)|=((v)&0x000F)<< 4;}while(0)
/* [11: 8] */ #define BA_A64Par_s2 0x00001
/* ---:--- */ #define bA64Par_s2 4 /*bit*/
/* ---:--- */ #define LSb32A64Par_s2 8 /*:11*/
/* ---:--- */ #define MSK32A64Par_s2 0x00000F00
/* ---:--- */ #define GET32A64Par_s2(r32) (((r32)>> 8)&0x000F)
/* ---:--- */ #define GET16A64Par_s2(r16) (((r16)>> 8)&0x000F)
/* ---:--- */ #define SET32A64Par_s2(r32,v) do{(r32)&=~(0x000F<< 8);(r32)|=((v)&0x000F)<< 8;}while(0)
/* ---:--- */ #define SET16A64Par_s2(r16,v) do{(r16)&=~(0x000F<< 8);(r16)|=((v)&0x000F)<< 8;}while(0)
/* [15:12] */ #define BA_A64Par_d0 0x00001
/* ---:--- */ #define bA64Par_d0 4 /*bit*/
/* ---:--- */ #define LSb32A64Par_d0 12 /*:15*/
/* ---:--- */ #define MSK32A64Par_d0 0x0000F000
/* ---:--- */ #define GET32A64Par_d0(r32) (((r32)>>12)&0x000F)
/* ---:--- */ #define GET16A64Par_d0(r16) (((r16)>>12)&0x000F)
/* ---:--- */ #define SET32A64Par_d0(r32,v) do{(r32)&=~(0x000F<<12);(r32)|=((v)&0x000F)<<12;}while(0)
/* ---:--- */ #define SET16A64Par_d0(r16,v) do{(r16)&=~(0x000F<<12);(r16)|=((v)&0x000F)<<12;}while(0)
} SIE_A64Par;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 A64Par_drvrd (SIE_A64Par *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 A64Par_drvwr (SIE_A64Par *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void A64Par_reset (SIE_A64Par *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define A64Par_check(p,pie,ps8name,hfpErrLOG) A64Par_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define A64Par_print(p, ps8name,hfpErrLOG) A64Par_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 A64Par_cmp (SIE_A64Par *p, SIE_A64Par *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 A64Par_import(SIE_A64Par *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 A64Par_export(SIE_A64Par *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: A64Par
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: K6
* @
* %unsigned 1 Re0 0
* %unsigned 1 Re1 0
* %unsigned 1 Re2 0
* %unsigned 1 We 0
* %unsigned 1 reserved1 0
* %unsigned 1 reserved2 0
**********************************************************************************************************************/
#ifdef h_K6
#else
#define h_K6
#define \
AR_K6 \
1
#define \
AB_K6 \
2
typedef struct SIE_K6 {
#define RA_K6_D0th_ ISC_USE_ONLY 0x00000
#define w32K6_D0th_ { \
UNSG32 u_Re0 : 1; \
UNSG32 u_Re1 : 1; \
UNSG32 u_Re2 : 1; \
UNSG32 u_We : 1; \
UNSG32 u_reserved1 : 1; \
UNSG32 u_reserved2 : 1; \
UNSG32 _x00000 : 26; \
}
/* @'00000 */ struct w32K6_D0th_;
/* [ 0: 0] */ #define BA_K6_Re0 0x00000
/* ---:--- */ #define bK6_Re0 1 /*bit*/
/* ---:--- */ #define LSb32K6_Re0 0 /*: 0*/
/* ---:--- */ #define MSK32K6_Re0 0x00000001
/* ---:--- */ #define GET32K6_Re0(r32) (((r32)>> 0)&0x0001)
/* ---:--- */ #define GET16K6_Re0(r16) (((r16)>> 0)&0x0001)
/* ---:--- */ #define SET32K6_Re0(r32,v) do{(r32)&=~(0x0001<< 0);(r32)|=((v)&0x0001)<< 0;}while(0)
/* ---:--- */ #define SET16K6_Re0(r16,v) do{(r16)&=~(0x0001<< 0);(r16)|=((v)&0x0001)<< 0;}while(0)
/* [ 1: 1] */ #define BA_K6_Re1 0x00000
/* ---:--- */ #define bK6_Re1 1 /*bit*/
/* ---:--- */ #define LSb32K6_Re1 1 /*: 1*/
/* ---:--- */ #define MSK32K6_Re1 0x00000002
/* ---:--- */ #define GET32K6_Re1(r32) (((r32)>> 1)&0x0001)
/* ---:--- */ #define GET16K6_Re1(r16) (((r16)>> 1)&0x0001)
/* ---:--- */ #define SET32K6_Re1(r32,v) do{(r32)&=~(0x0001<< 1);(r32)|=((v)&0x0001)<< 1;}while(0)
/* ---:--- */ #define SET16K6_Re1(r16,v) do{(r16)&=~(0x0001<< 1);(r16)|=((v)&0x0001)<< 1;}while(0)
/* [ 2: 2] */ #define BA_K6_Re2 0x00000
/* ---:--- */ #define bK6_Re2 1 /*bit*/
/* ---:--- */ #define LSb32K6_Re2 2 /*: 2*/
/* ---:--- */ #define MSK32K6_Re2 0x00000004
/* ---:--- */ #define GET32K6_Re2(r32) (((r32)>> 2)&0x0001)
/* ---:--- */ #define GET16K6_Re2(r16) (((r16)>> 2)&0x0001)
/* ---:--- */ #define SET32K6_Re2(r32,v) do{(r32)&=~(0x0001<< 2);(r32)|=((v)&0x0001)<< 2;}while(0)
/* ---:--- */ #define SET16K6_Re2(r16,v) do{(r16)&=~(0x0001<< 2);(r16)|=((v)&0x0001)<< 2;}while(0)
/* [ 3: 3] */ #define BA_K6_We 0x00000
/* ---:--- */ #define bK6_We 1 /*bit*/
/* ---:--- */ #define LSb32K6_We 3 /*: 3*/
/* ---:--- */ #define MSK32K6_We 0x00000008
/* ---:--- */ #define GET32K6_We(r32) (((r32)>> 3)&0x0001)
/* ---:--- */ #define GET16K6_We(r16) (((r16)>> 3)&0x0001)
/* ---:--- */ #define SET32K6_We(r32,v) do{(r32)&=~(0x0001<< 3);(r32)|=((v)&0x0001)<< 3;}while(0)
/* ---:--- */ #define SET16K6_We(r16,v) do{(r16)&=~(0x0001<< 3);(r16)|=((v)&0x0001)<< 3;}while(0)
/* [ 4: 4] */ #define BA_K6_reserved1 0x00000
/* ---:--- */ #define bK6_reserved1 1 /*bit*/
/* ---:--- */ #define LSb32K6_reserved1 4 /*: 4*/
/* ---:--- */ #define MSK32K6_reserved1 0x00000010
/* ---:--- */ #define GET32K6_reserved1(r32) (((r32)>> 4)&0x0001)
/* ---:--- */ #define GET16K6_reserved1(r16) (((r16)>> 4)&0x0001)
/* ---:--- */ #define SET32K6_reserved1(r32,v) do{(r32)&=~(0x0001<< 4);(r32)|=((v)&0x0001)<< 4;}while(0)
/* ---:--- */ #define SET16K6_reserved1(r16,v) do{(r16)&=~(0x0001<< 4);(r16)|=((v)&0x0001)<< 4;}while(0)
/* [ 5: 5] */ #define BA_K6_reserved2 0x00000
/* ---:--- */ #define bK6_reserved2 1 /*bit*/
/* ---:--- */ #define LSb32K6_reserved2 5 /*: 5*/
/* ---:--- */ #define MSK32K6_reserved2 0x00000020
/* ---:--- */ #define GET32K6_reserved2(r32) (((r32)>> 5)&0x0001)
/* ---:--- */ #define GET16K6_reserved2(r16) (((r16)>> 5)&0x0001)
/* ---:--- */ #define SET32K6_reserved2(r32,v) do{(r32)&=~(0x0001<< 5);(r32)|=((v)&0x0001)<< 5;}while(0)
/* ---:--- */ #define SET16K6_reserved2(r16,v) do{(r16)&=~(0x0001<< 5);(r16)|=((v)&0x0001)<< 5;}while(0)
} SIE_K6;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 K6_drvrd (SIE_K6 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 K6_drvwr (SIE_K6 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void K6_reset (SIE_K6 *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define K6_check(p,pie,ps8name,hfpErrLOG) K6_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define K6_print(p, ps8name,hfpErrLOG) K6_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 K6_cmp (SIE_K6 *p, SIE_K6 *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 K6_import(SIE_K6 *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 K6_export(SIE_K6 *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: K6
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRMPushID
* @
* %unsigned 2 OP 0
* : PUSH 0x0
* : RSV 0x1
* : TBINIT 0x2
* : EXE0 0x3
* %unsigned 4 OPCSEL
**********************************************************************************************************************/
#ifdef h_DRMPushID
#else
#define h_DRMPushID
#define \
AR_DRMPushID \
1
#define \
AB_DRMPushID \
2
typedef struct SIE_DRMPushID {
#define RA_DRMPushID_D0th_ ISC_USE_ONLY 0x00000
#define w32DRMPushID_D0th_ { \
UNSG32 u_OP : 2; \
UNSG32 u_OPCSEL : 4; \
UNSG32 _x00000 : 26; \
}
/* @'00000 */ struct w32DRMPushID_D0th_;
/* [ 1: 0] */ #define BA_DRMPushID_OP 0x00000
/* ---:--- */ #define bDRMPushID_OP 2 /*bit*/
/* ---:--- */ #define LSb32DRMPushID_OP 0 /*: 1*/
/* ---:--- */ #define MSK32DRMPushID_OP 0x00000003
/* ---:--- */ #define GET32DRMPushID_OP(r32) (((r32)>> 0)&0x0003)
/* ---:--- */ #define GET16DRMPushID_OP(r16) (((r16)>> 0)&0x0003)
/* ---:--- */ #define SET32DRMPushID_OP(r32,v) do{(r32)&=~(0x0003<< 0);(r32)|=((v)&0x0003)<< 0;}while(0)
/* ---:--- */ #define SET16DRMPushID_OP(r16,v) do{(r16)&=~(0x0003<< 0);(r16)|=((v)&0x0003)<< 0;}while(0)
#define DRMPushID_OP_PUSH 0x0
#define DRMPushID_OP_RSV 0x1
#define DRMPushID_OP_TBINIT 0x2
#define DRMPushID_OP_EXE0 0x3
/* [ 5: 2] */ #define BA_DRMPushID_OPCSEL 0x00000
/* ---:--- */ #define bDRMPushID_OPCSEL 4 /*bit*/
/* ---:--- */ #define LSb32DRMPushID_OPCSEL 2 /*: 5*/
/* ---:--- */ #define MSK32DRMPushID_OPCSEL 0x0000003C
/* ---:--- */ #define GET32DRMPushID_OPCSEL(r32) (((r32)>> 2)&0x000F)
/* ---:--- */ #define GET16DRMPushID_OPCSEL(r16) (((r16)>> 2)&0x000F)
/* ---:--- */ #define SET32DRMPushID_OPCSEL(r32,v) do{(r32)&=~(0x000F<< 2);(r32)|=((v)&0x000F)<< 2;}while(0)
/* ---:--- */ #define SET16DRMPushID_OPCSEL(r16,v) do{(r16)&=~(0x000F<< 2);(r16)|=((v)&0x000F)<< 2;}while(0)
} SIE_DRMPushID;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRMPushID_drvrd (SIE_DRMPushID *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRMPushID_drvwr (SIE_DRMPushID *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRMPushID_reset (SIE_DRMPushID *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRMPushID_check(p,pie,ps8name,hfpErrLOG) DRMPushID_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRMPushID_print(p, ps8name,hfpErrLOG) DRMPushID_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRMPushID_cmp (SIE_DRMPushID *p, SIE_DRMPushID *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRMPushID_import(SIE_DRMPushID *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRMPushID_export(SIE_DRMPushID *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRMPushID
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: A64Entry
* $DRMPushID pushID 0
* $A64Par a64Par 0
* $REG64 xT 0
* $K6 k6
* $REG64 r64Before REG [16]
* $REG64 r64After REG [16]
**********************************************************************************************************************/
#ifdef h_A64Entry
#else
#define h_A64Entry
#define \
AR_A64Entry \
69
#define \
AB_A64Entry \
9
typedef struct SIE_A64Entry {
#define RA_A64Entry_pushID 0x00000
/* @'00000 */ SIE_DRMPushID ie_pushID;
#define RA_A64Entry_a64Par 0x00004
/* @'00004 */ SIE_A64Par ie_a64Par;
#define RA_A64Entry_xT 0x00008
/* @'00008 */ SIE_REG64 ie_xT;
#define RA_A64Entry_k6 0x00010
/* @'00010 */ SIE_K6 ie_k6;
#define RA_A64Entry_r64Before 0x00014
/* @'00014 */ SIE_REG64 ie_r64Before [16];
#define arr_A64Entry_r64Before 16
#define RA_A64Entry_r64After 0x00094
/* @'00094 */ SIE_REG64 ie_r64After [16];
#define arr_A64Entry_r64After 16
} SIE_A64Entry;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 A64Entry_drvrd (SIE_A64Entry *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 A64Entry_drvwr (SIE_A64Entry *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void A64Entry_reset (SIE_A64Entry *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define A64Entry_check(p,pie,ps8name,hfpErrLOG) A64Entry_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define A64Entry_print(p, ps8name,hfpErrLOG) A64Entry_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 A64Entry_cmp (SIE_A64Entry *p, SIE_A64Entry *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 A64Entry_import(SIE_A64Entry *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 A64Entry_export(SIE_A64Entry *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: A64Entry
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_CTXTYPE
* @
* : AES
* * *
* * 128 bits AES
* : DES
* * *
* * 64 bits DES
* : 3xDES
* * *
* : RSA1024
* : RSA2048
* : SHA1
* : HMAC
* : CMAC
* @
* %unsigned 32 dummy
**********************************************************************************************************************/
#ifdef h_DRM_CTXTYPE
#else
#define h_DRM_CTXTYPE
#define \
AR_DRM_CTXTYPE \
1
#define \
AB_DRM_CTXTYPE \
2
typedef struct SIE_DRM_CTXTYPE {
#define RA_DRM_CTXTYPE_D0th_ ISC_USE_ONLY 0x00000
#define w32DRM_CTXTYPE_D0th_ { \
UNSG32 u_dummy : 32; \
}
/* @'00000 */ struct w32DRM_CTXTYPE_D0th_;
/* [31: 0] */ #define BA_DRM_CTXTYPE_dummy 0x00000
/* ---:--- */ #define bDRM_CTXTYPE_dummy 32 /*bit*/
/* ---:--- */ #define LSb32DRM_CTXTYPE_dummy 0 /*:31*/
/* ---:--- */ #define MSK32DRM_CTXTYPE_dummy 0xFFFFFFFF
/* ---:--- */ #define GET32DRM_CTXTYPE_dummy(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRM_CTXTYPE_dummy(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRM_CTXTYPE_dummy(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_CTXTYPE_dummy(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_DRM_CTXTYPE;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_CTXTYPE_drvrd (SIE_DRM_CTXTYPE *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_CTXTYPE_drvwr (SIE_DRM_CTXTYPE *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_CTXTYPE_reset (SIE_DRM_CTXTYPE *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_CTXTYPE_check(p,pie,ps8name,hfpErrLOG) DRM_CTXTYPE_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_CTXTYPE_print(p, ps8name,hfpErrLOG) DRM_CTXTYPE_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_CTXTYPE_cmp (SIE_DRM_CTXTYPE *p, SIE_DRM_CTXTYPE *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_CTXTYPE_import(SIE_DRM_CTXTYPE *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_CTXTYPE_export(SIE_DRM_CTXTYPE *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_CTXTYPE
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_CTXHDR
* @
* %unsigned 16 ctxSize
* * *
* * Context size
* %unsigned 8 ctxType
* * *
* * Context type
* @
* %unsigned 32 reserved
* * *
* * Key parameter
**********************************************************************************************************************/
#ifdef h_DRM_CTXHDR
#else
#define h_DRM_CTXHDR
#define \
AR_DRM_CTXHDR \
2
#define \
AB_DRM_CTXHDR \
3
typedef struct SIE_DRM_CTXHDR {
#define RA_DRM_CTXHDR_D0th_ ISC_USE_ONLY 0x00000
#define w32DRM_CTXHDR_D0th_ { \
UNSG32 u_ctxSize : 16; \
UNSG32 u_ctxType : 8; \
UNSG32 _x00000 : 8; \
}
/* @'00000 */ struct w32DRM_CTXHDR_D0th_;
/* [15: 0] */ #define BA_DRM_CTXHDR_ctxSize 0x00000
/* ---:--- */ #define bDRM_CTXHDR_ctxSize 16 /*bit*/
/* ---:--- */ #define LSb32DRM_CTXHDR_ctxSize 0 /*:15*/
/* ---:--- */ #define MSK32DRM_CTXHDR_ctxSize 0x0000FFFF
/* ---:--- */ #define GET32DRM_CTXHDR_ctxSize(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRM_CTXHDR_ctxSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_CTXHDR_ctxSize(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_CTXHDR_ctxSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [23:16] */ #define BA_DRM_CTXHDR_ctxType 0x00002
/* ---:--- */ #define bDRM_CTXHDR_ctxType 8 /*bit*/
/* ---:--- */ #define LSb32DRM_CTXHDR_ctxType 16 /*:23*/
/* ---:--- */ #define MSK32DRM_CTXHDR_ctxType 0x00FF0000
/* ---:--- */ #define GET32DRM_CTXHDR_ctxType(r32) (((r32)>>16)&0x00FF)
/* ---:--- */ #define GET16DRM_CTXHDR_ctxType(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRM_CTXHDR_ctxType(r32,v) do{(r32)&=~(0x00FF<<16);(r32)|=((v)&0x00FF)<<16;}while(0)
/* ---:--- */ #define SET16DRM_CTXHDR_ctxType(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
#define RA_DRM_CTXHDR_D1th_ ISC_USE_ONLY 0x00004
#define w32DRM_CTXHDR_D1th_ { \
UNSG32 u_reserved : 32; \
}
/* @'00004 */ struct w32DRM_CTXHDR_D1th_;
/* [31: 0] */ #define BA_DRM_CTXHDR_reserved 0x00004
/* ---:--- */ #define bDRM_CTXHDR_reserved 32 /*bit*/
/* ---:--- */ #define LSb32DRM_CTXHDR_reserved 0 /*:31*/
/* ---:--- */ #define MSK32DRM_CTXHDR_reserved 0xFFFFFFFF
/* ---:--- */ #define GET32DRM_CTXHDR_reserved(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRM_CTXHDR_reserved(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRM_CTXHDR_reserved(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_CTXHDR_reserved(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_DRM_CTXHDR;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_CTXHDR_drvrd (SIE_DRM_CTXHDR *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_CTXHDR_drvwr (SIE_DRM_CTXHDR *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_CTXHDR_reset (SIE_DRM_CTXHDR *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_CTXHDR_check(p,pie,ps8name,hfpErrLOG) DRM_CTXHDR_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_CTXHDR_print(p, ps8name,hfpErrLOG) DRM_CTXHDR_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_CTXHDR_cmp (SIE_DRM_CTXHDR *p, SIE_DRM_CTXHDR *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_CTXHDR_import(SIE_DRM_CTXHDR *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_CTXHDR_export(SIE_DRM_CTXHDR *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_CTXHDR
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_SIGNTYPE
* @ DAT
* %unsigned 8 typeID
* * *
* * type ID
* : CMAC 0x00
* * *
* * CMAC
* : RSAPSS 0x02
* * *
* * RSA-PSS signature
* : INVALID 0xff
**********************************************************************************************************************/
#ifdef h_DRM_SIGNTYPE
#else
#define h_DRM_SIGNTYPE
#define \
AR_DRM_SIGNTYPE \
1
#define \
AB_DRM_SIGNTYPE \
2
typedef struct SIE_DRM_SIGNTYPE {
#define RA_DRM_SIGNTYPE_DAT 0x00000
#define w32DRM_SIGNTYPE_DAT { \
UNSG32 uDAT_typeID : 8; \
UNSG32 _x00000 : 24; \
}
/* @'00000 */ union { UNSG32 u32DRM_SIGNTYPE_DAT;
struct w32DRM_SIGNTYPE_DAT;
};
/* [ 7: 0] */ #define BA_DRM_SIGNTYPE_DAT_typeID 0x00000
/* ---:--- */ #define bDRM_SIGNTYPE_DAT_typeID 8 /*bit*/
/* ---:--- */ #define LSb32DRM_SIGNTYPE_DAT_typeID 0 /*: 7*/
/* ---:--- */ #define MSK32DRM_SIGNTYPE_DAT_typeID 0x000000FF
/* ---:--- */ #define GET32DRM_SIGNTYPE_DAT_typeID(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16DRM_SIGNTYPE_DAT_typeID(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRM_SIGNTYPE_DAT_typeID(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_SIGNTYPE_DAT_typeID(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
#define DRM_SIGNTYPE_DAT_typeID_CMAC 0x0
#define DRM_SIGNTYPE_DAT_typeID_RSAPSS 0x2
#define DRM_SIGNTYPE_DAT_typeID_INVALID 0xFF
} SIE_DRM_SIGNTYPE;
#define dftDRM_SIGNTYPE_DAT 0x00000000
typedef union { UNSG32 u32;
struct w32DRM_SIGNTYPE_DAT;
} T32DRM_SIGNTYPE_DAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_SIGNTYPE_drvrd (SIE_DRM_SIGNTYPE *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_SIGNTYPE_drvwr (SIE_DRM_SIGNTYPE *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_SIGNTYPE_reset (SIE_DRM_SIGNTYPE *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_SIGNTYPE_check(p,pie,ps8name,hfpErrLOG) DRM_SIGNTYPE_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_SIGNTYPE_print(p, ps8name,hfpErrLOG) DRM_SIGNTYPE_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_SIGNTYPE_cmp (SIE_DRM_SIGNTYPE *p, SIE_DRM_SIGNTYPE *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_SIGNTYPE_import(SIE_DRM_SIGNTYPE *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_SIGNTYPE_export(SIE_DRM_SIGNTYPE *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_SIGNTYPE
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_CTXID
* @ DAT
* %unsigned 8 ctxID
* * *
* * Context ID
* : RKEK 0x01
* * *
* * Root Key wrapping key ID
* : SIGNK 0x02
* * *
* * Signature key
* : AESK 0x04
* * *
* * AES key wrapping key ID index aes area in OTP
* : ROMKEY 0x10
* * *
* * ROM key
* : UKEY 0x80
* * *
* * User key id start
* : INVALID 0xff
**********************************************************************************************************************/
#ifdef h_DRM_CTXID
#else
#define h_DRM_CTXID
#define \
AR_DRM_CTXID \
1
#define \
AB_DRM_CTXID \
2
typedef struct SIE_DRM_CTXID {
#define RA_DRM_CTXID_DAT 0x00000
#define w32DRM_CTXID_DAT { \
UNSG32 uDAT_ctxID : 8; \
UNSG32 _x00000 : 24; \
}
/* @'00000 */ union { UNSG32 u32DRM_CTXID_DAT;
struct w32DRM_CTXID_DAT;
};
/* [ 7: 0] */ #define BA_DRM_CTXID_DAT_ctxID 0x00000
/* ---:--- */ #define bDRM_CTXID_DAT_ctxID 8 /*bit*/
/* ---:--- */ #define LSb32DRM_CTXID_DAT_ctxID 0 /*: 7*/
/* ---:--- */ #define MSK32DRM_CTXID_DAT_ctxID 0x000000FF
/* ---:--- */ #define GET32DRM_CTXID_DAT_ctxID(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16DRM_CTXID_DAT_ctxID(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRM_CTXID_DAT_ctxID(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_CTXID_DAT_ctxID(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
#define DRM_CTXID_DAT_ctxID_RKEK 0x1
#define DRM_CTXID_DAT_ctxID_SIGNK 0x2
#define DRM_CTXID_DAT_ctxID_AESK 0x4
#define DRM_CTXID_DAT_ctxID_ROMKEY 0x10
#define DRM_CTXID_DAT_ctxID_UKEY 0x80
#define DRM_CTXID_DAT_ctxID_INVALID 0xFF
} SIE_DRM_CTXID;
#define dftDRM_CTXID_DAT 0x00000000
typedef union { UNSG32 u32;
struct w32DRM_CTXID_DAT;
} T32DRM_CTXID_DAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_CTXID_drvrd (SIE_DRM_CTXID *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_CTXID_drvwr (SIE_DRM_CTXID *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_CTXID_reset (SIE_DRM_CTXID *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_CTXID_check(p,pie,ps8name,hfpErrLOG) DRM_CTXID_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_CTXID_print(p, ps8name,hfpErrLOG) DRM_CTXID_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_CTXID_cmp (SIE_DRM_CTXID *p, SIE_DRM_CTXID *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_CTXID_import(SIE_DRM_CTXID *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_CTXID_export(SIE_DRM_CTXID *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_CTXID
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_KEYPARM
* @
* $UINT32 keyParm [8]
* * *
* * Reserved key parameter data
**********************************************************************************************************************/
#ifdef h_DRM_KEYPARM
#else
#define h_DRM_KEYPARM
#define \
AR_DRM_KEYPARM \
1
#define \
AB_DRM_KEYPARM \
2
typedef struct SIE_DRM_KEYPARM {
#define RA_DRM_KEYPARM_keyParm 0x00000
/* @'00000 */ SIE_UINT32 ie_keyParm;
} SIE_DRM_KEYPARM;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_KEYPARM_drvrd (SIE_DRM_KEYPARM *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_KEYPARM_drvwr (SIE_DRM_KEYPARM *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_KEYPARM_reset (SIE_DRM_KEYPARM *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_KEYPARM_check(p,pie,ps8name,hfpErrLOG) DRM_KEYPARM_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_KEYPARM_print(p, ps8name,hfpErrLOG) DRM_KEYPARM_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_KEYPARM_cmp (SIE_DRM_KEYPARM *p, SIE_DRM_KEYPARM *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_KEYPARM_import(SIE_DRM_KEYPARM *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_KEYPARM_export(SIE_DRM_KEYPARM *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_KEYPARM
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_KEYPARM_RSA
* @
* %unsigned 16 keyLen
* * *
* * The size of the RSA key in bits
* %unsigned 16 numPrimes 0
* * *
* * the number of prime factors used by this RSA key.
* @
* %unsigned 16 exponentSize 0
* * *
* * the size of the exponent. If the key is using the default exponent then the exponentSize MUST be 0.
**********************************************************************************************************************/
#ifdef h_DRM_KEYPARM_RSA
#else
#define h_DRM_KEYPARM_RSA
#define \
AR_DRM_KEYPARM_RSA \
2
#define \
AB_DRM_KEYPARM_RSA \
3
typedef struct SIE_DRM_KEYPARM_RSA {
#define RA_DRM_KEYPARM_RSA_D0th_ ISC_USE_ONLY 0x00000
#define w32DRM_KEYPARM_RSA_D0th_ { \
UNSG32 u_keyLen : 16; \
UNSG32 u_numPrimes : 16; \
}
/* @'00000 */ struct w32DRM_KEYPARM_RSA_D0th_;
/* [15: 0] */ #define BA_DRM_KEYPARM_RSA_keyLen 0x00000
/* ---:--- */ #define bDRM_KEYPARM_RSA_keyLen 16 /*bit*/
/* ---:--- */ #define LSb32DRM_KEYPARM_RSA_keyLen 0 /*:15*/
/* ---:--- */ #define MSK32DRM_KEYPARM_RSA_keyLen 0x0000FFFF
/* ---:--- */ #define GET32DRM_KEYPARM_RSA_keyLen(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRM_KEYPARM_RSA_keyLen(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_KEYPARM_RSA_keyLen(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_KEYPARM_RSA_keyLen(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRM_KEYPARM_RSA_numPrimes 0x00002
/* ---:--- */ #define bDRM_KEYPARM_RSA_numPrimes 16 /*bit*/
/* ---:--- */ #define LSb32DRM_KEYPARM_RSA_numPrimes 16 /*:31*/
/* ---:--- */ #define MSK32DRM_KEYPARM_RSA_numPrimes 0xFFFF0000
/* ---:--- */ #define GET32DRM_KEYPARM_RSA_numPrimes(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRM_KEYPARM_RSA_numPrimes(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_KEYPARM_RSA_numPrimes(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRM_KEYPARM_RSA_numPrimes(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRM_KEYPARM_RSA_D1th_ ISC_USE_ONLY 0x00004
#define w32DRM_KEYPARM_RSA_D1th_ { \
UNSG32 u_exponentSize : 16; \
UNSG32 _x00004 : 16; \
}
/* @'00004 */ struct w32DRM_KEYPARM_RSA_D1th_;
/* [15: 0] */ #define BA_DRM_KEYPARM_RSA_exponentSize 0x00004
/* ---:--- */ #define bDRM_KEYPARM_RSA_exponentSize 16 /*bit*/
/* ---:--- */ #define LSb32DRM_KEYPARM_RSA_exponentSize 0 /*:15*/
/* ---:--- */ #define MSK32DRM_KEYPARM_RSA_exponentSize 0x0000FFFF
/* ---:--- */ #define GET32DRM_KEYPARM_RSA_exponentSize(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRM_KEYPARM_RSA_exponentSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_KEYPARM_RSA_exponentSize(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_KEYPARM_RSA_exponentSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
} SIE_DRM_KEYPARM_RSA;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_KEYPARM_RSA_drvrd (SIE_DRM_KEYPARM_RSA *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_KEYPARM_RSA_drvwr (SIE_DRM_KEYPARM_RSA *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_KEYPARM_RSA_reset (SIE_DRM_KEYPARM_RSA *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_KEYPARM_RSA_check(p,pie,ps8name,hfpErrLOG) DRM_KEYPARM_RSA_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_KEYPARM_RSA_print(p, ps8name,hfpErrLOG) DRM_KEYPARM_RSA_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_KEYPARM_RSA_cmp (SIE_DRM_KEYPARM_RSA *p, SIE_DRM_KEYPARM_RSA *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_KEYPARM_RSA_import(SIE_DRM_KEYPARM_RSA *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_KEYPARM_RSA_export(SIE_DRM_KEYPARM_RSA *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_KEYPARM_RSA
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_KEYPARM_SYM
* @
* %unsigned 16 keyLen
* * *
* * indicate the length of the key in bits
* %unsigned 16 blockSize 0
* * *
* * indicate the block size of the algorithm
* @
* %unsigned 16 ivSiz 0
* * *
* * indicate the size of the IV
* %unsigned 16 keyMode 0
* * *
* * indicate the encryption and decryption mode
* @
* $UINT128 ivData 0
* * *
* * The initialization vector
**********************************************************************************************************************/
#ifdef h_DRM_KEYPARM_SYM
#else
#define h_DRM_KEYPARM_SYM
#define \
AR_DRM_KEYPARM_SYM \
6
#define \
AB_DRM_KEYPARM_SYM \
5
typedef struct SIE_DRM_KEYPARM_SYM {
#define RA_DRM_KEYPARM_SYM_D0th_ ISC_USE_ONLY 0x00000
#define w32DRM_KEYPARM_SYM_D0th_ { \
UNSG32 u_keyLen : 16; \
UNSG32 u_blockSize : 16; \
}
/* @'00000 */ struct w32DRM_KEYPARM_SYM_D0th_;
/* [15: 0] */ #define BA_DRM_KEYPARM_SYM_keyLen 0x00000
/* ---:--- */ #define bDRM_KEYPARM_SYM_keyLen 16 /*bit*/
/* ---:--- */ #define LSb32DRM_KEYPARM_SYM_keyLen 0 /*:15*/
/* ---:--- */ #define MSK32DRM_KEYPARM_SYM_keyLen 0x0000FFFF
/* ---:--- */ #define GET32DRM_KEYPARM_SYM_keyLen(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRM_KEYPARM_SYM_keyLen(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_KEYPARM_SYM_keyLen(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_KEYPARM_SYM_keyLen(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRM_KEYPARM_SYM_blockSize 0x00002
/* ---:--- */ #define bDRM_KEYPARM_SYM_blockSize 16 /*bit*/
/* ---:--- */ #define LSb32DRM_KEYPARM_SYM_blockSize 16 /*:31*/
/* ---:--- */ #define MSK32DRM_KEYPARM_SYM_blockSize 0xFFFF0000
/* ---:--- */ #define GET32DRM_KEYPARM_SYM_blockSize(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRM_KEYPARM_SYM_blockSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_KEYPARM_SYM_blockSize(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRM_KEYPARM_SYM_blockSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRM_KEYPARM_SYM_D1th_ ISC_USE_ONLY 0x00004
#define w32DRM_KEYPARM_SYM_D1th_ { \
UNSG32 u_ivSiz : 16; \
UNSG32 u_keyMode : 16; \
}
/* @'00004 */ struct w32DRM_KEYPARM_SYM_D1th_;
/* [15: 0] */ #define BA_DRM_KEYPARM_SYM_ivSiz 0x00004
/* ---:--- */ #define bDRM_KEYPARM_SYM_ivSiz 16 /*bit*/
/* ---:--- */ #define LSb32DRM_KEYPARM_SYM_ivSiz 0 /*:15*/
/* ---:--- */ #define MSK32DRM_KEYPARM_SYM_ivSiz 0x0000FFFF
/* ---:--- */ #define GET32DRM_KEYPARM_SYM_ivSiz(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRM_KEYPARM_SYM_ivSiz(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_KEYPARM_SYM_ivSiz(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_KEYPARM_SYM_ivSiz(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRM_KEYPARM_SYM_keyMode 0x00006
/* ---:--- */ #define bDRM_KEYPARM_SYM_keyMode 16 /*bit*/
/* ---:--- */ #define LSb32DRM_KEYPARM_SYM_keyMode 16 /*:31*/
/* ---:--- */ #define MSK32DRM_KEYPARM_SYM_keyMode 0xFFFF0000
/* ---:--- */ #define GET32DRM_KEYPARM_SYM_keyMode(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRM_KEYPARM_SYM_keyMode(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_KEYPARM_SYM_keyMode(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRM_KEYPARM_SYM_keyMode(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRM_KEYPARM_SYM_ivData 0x00008
/* @'00008 */ SIE_UINT128 ie_ivData;
} SIE_DRM_KEYPARM_SYM;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_KEYPARM_SYM_drvrd (SIE_DRM_KEYPARM_SYM *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_KEYPARM_SYM_drvwr (SIE_DRM_KEYPARM_SYM *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_KEYPARM_SYM_reset (SIE_DRM_KEYPARM_SYM *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_KEYPARM_SYM_check(p,pie,ps8name,hfpErrLOG) DRM_KEYPARM_SYM_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_KEYPARM_SYM_print(p, ps8name,hfpErrLOG) DRM_KEYPARM_SYM_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_KEYPARM_SYM_cmp (SIE_DRM_KEYPARM_SYM *p, SIE_DRM_KEYPARM_SYM *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_KEYPARM_SYM_import(SIE_DRM_KEYPARM_SYM *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_KEYPARM_SYM_export(SIE_DRM_KEYPARM_SYM *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_KEYPARM_SYM
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_DIGEST
* @
* $DRM_CTXID sigKey
* * *
* * Signature key
* @
* %unsigned 8 sigType
* * *
* * Signature Type
* %unsigned 8 sigLen Signature Length
* %unsigned 16 reserved reserved
* @
* $UINT32 hashVal REG [6]
* * *
* * Digest value
**********************************************************************************************************************/
#ifdef h_DRM_DIGEST
#else
#define h_DRM_DIGEST
#define \
AR_DRM_DIGEST \
8
#define \
AB_DRM_DIGEST \
5
typedef struct SIE_DRM_DIGEST {
#define RA_DRM_DIGEST_sigKey 0x00000
/* @'00000 */ SIE_DRM_CTXID ie_sigKey;
#define RA_DRM_DIGEST_D1th_ ISC_USE_ONLY 0x00004
#define w32DRM_DIGEST_D1th_ { \
UNSG32 u_sigType : 8; \
UNSG32 u_sigLen : 8; \
UNSG32 u_reserved : 16; \
}
/* @'00004 */ struct w32DRM_DIGEST_D1th_;
/* [ 7: 0] */ #define BA_DRM_DIGEST_sigType 0x00004
/* ---:--- */ #define bDRM_DIGEST_sigType 8 /*bit*/
/* ---:--- */ #define LSb32DRM_DIGEST_sigType 0 /*: 7*/
/* ---:--- */ #define MSK32DRM_DIGEST_sigType 0x000000FF
/* ---:--- */ #define GET32DRM_DIGEST_sigType(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16DRM_DIGEST_sigType(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRM_DIGEST_sigType(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_DIGEST_sigType(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_DRM_DIGEST_sigLen 0x00005
/* ---:--- */ #define bDRM_DIGEST_sigLen 8 /*bit*/
/* ---:--- */ #define LSb32DRM_DIGEST_sigLen 8 /*:15*/
/* ---:--- */ #define MSK32DRM_DIGEST_sigLen 0x0000FF00
/* ---:--- */ #define GET32DRM_DIGEST_sigLen(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16DRM_DIGEST_sigLen(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32DRM_DIGEST_sigLen(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16DRM_DIGEST_sigLen(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
/* [31:16] */ #define BA_DRM_DIGEST_reserved 0x00006
/* ---:--- */ #define bDRM_DIGEST_reserved 16 /*bit*/
/* ---:--- */ #define LSb32DRM_DIGEST_reserved 16 /*:31*/
/* ---:--- */ #define MSK32DRM_DIGEST_reserved 0xFFFF0000
/* ---:--- */ #define GET32DRM_DIGEST_reserved(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRM_DIGEST_reserved(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_DIGEST_reserved(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRM_DIGEST_reserved(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRM_DIGEST_hashVal 0x00008
/* @'00008 */ SIE_UINT32 ie_hashVal [6];
#define arr_DRM_DIGEST_hashVal 6
} SIE_DRM_DIGEST;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_DIGEST_drvrd (SIE_DRM_DIGEST *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_DIGEST_drvwr (SIE_DRM_DIGEST *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_DIGEST_reset (SIE_DRM_DIGEST *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_DIGEST_check(p,pie,ps8name,hfpErrLOG) DRM_DIGEST_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_DIGEST_print(p, ps8name,hfpErrLOG) DRM_DIGEST_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_DIGEST_cmp (SIE_DRM_DIGEST *p, SIE_DRM_DIGEST *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_DIGEST_import(SIE_DRM_DIGEST *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_DIGEST_export(SIE_DRM_DIGEST *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_DIGEST
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_SUBKEY_OUT
* @
* $DRM_CTXID parentKeyID
* * *
* * Parent key ID. It can be RKEK ID or SIGNKEY ID
* @
* $UINT32 reserved
* @
* $UINT32 keyData REG [14]
* * *
* * Sub key cipher text protected by RKEK
**********************************************************************************************************************/
#ifdef h_DRM_SUBKEY_OUT
#else
#define h_DRM_SUBKEY_OUT
#define \
AR_DRM_SUBKEY_OUT \
16
#define \
AB_DRM_SUBKEY_OUT \
6
typedef struct SIE_DRM_SUBKEY_OUT {
#define RA_DRM_SUBKEY_OUT_parentKeyID 0x00000
/* @'00000 */ SIE_DRM_CTXID ie_parentKeyID;
#define RA_DRM_SUBKEY_OUT_reserved 0x00004
/* @'00004 */ SIE_UINT32 ie_reserved;
#define RA_DRM_SUBKEY_OUT_keyData 0x00008
/* @'00008 */ SIE_UINT32 ie_keyData [14];
#define arr_DRM_SUBKEY_OUT_keyData 14
} SIE_DRM_SUBKEY_OUT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_SUBKEY_OUT_drvrd (SIE_DRM_SUBKEY_OUT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_SUBKEY_OUT_drvwr (SIE_DRM_SUBKEY_OUT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_SUBKEY_OUT_reset (SIE_DRM_SUBKEY_OUT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_SUBKEY_OUT_check(p,pie,ps8name,hfpErrLOG) DRM_SUBKEY_OUT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_SUBKEY_OUT_print(p, ps8name,hfpErrLOG) DRM_SUBKEY_OUT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_SUBKEY_OUT_cmp (SIE_DRM_SUBKEY_OUT *p, SIE_DRM_SUBKEY_OUT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_SUBKEY_OUT_import(SIE_DRM_SUBKEY_OUT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_SUBKEY_OUT_export(SIE_DRM_SUBKEY_OUT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_SUBKEY_OUT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_KEYCTX_OUT
* @
* %unsigned 16 ctxSize
* * *
* * Context size
* %unsigned 8 ctxType
* * *
* * Context type
* @
* %unsigned 32 reserved
* * *
* * Reserved
* @
* $DRM_KEYPARM keyParm
* * *
* * Key parameter
* @
* $DRM_DIGEST hashVal
* * *
* * Cipher text SHA1 hash value
* @
* $UINT64 cipherTxt
* * *
* * Cipher text of the key context
**********************************************************************************************************************/
#ifdef h_DRM_KEYCTX_OUT
#else
#define h_DRM_KEYCTX_OUT
#define \
AR_DRM_KEYCTX_OUT \
13
#define \
AB_DRM_KEYCTX_OUT \
6
typedef struct SIE_DRM_KEYCTX_OUT {
#define RA_DRM_KEYCTX_OUT_D0th_ ISC_USE_ONLY 0x00000
#define w32DRM_KEYCTX_OUT_D0th_ { \
UNSG32 u_ctxSize : 16; \
UNSG32 u_ctxType : 8; \
UNSG32 _x00000 : 8; \
}
/* @'00000 */ struct w32DRM_KEYCTX_OUT_D0th_;
/* [15: 0] */ #define BA_DRM_KEYCTX_OUT_ctxSize 0x00000
/* ---:--- */ #define bDRM_KEYCTX_OUT_ctxSize 16 /*bit*/
/* ---:--- */ #define LSb32DRM_KEYCTX_OUT_ctxSize 0 /*:15*/
/* ---:--- */ #define MSK32DRM_KEYCTX_OUT_ctxSize 0x0000FFFF
/* ---:--- */ #define GET32DRM_KEYCTX_OUT_ctxSize(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRM_KEYCTX_OUT_ctxSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_KEYCTX_OUT_ctxSize(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_KEYCTX_OUT_ctxSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [23:16] */ #define BA_DRM_KEYCTX_OUT_ctxType 0x00002
/* ---:--- */ #define bDRM_KEYCTX_OUT_ctxType 8 /*bit*/
/* ---:--- */ #define LSb32DRM_KEYCTX_OUT_ctxType 16 /*:23*/
/* ---:--- */ #define MSK32DRM_KEYCTX_OUT_ctxType 0x00FF0000
/* ---:--- */ #define GET32DRM_KEYCTX_OUT_ctxType(r32) (((r32)>>16)&0x00FF)
/* ---:--- */ #define GET16DRM_KEYCTX_OUT_ctxType(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRM_KEYCTX_OUT_ctxType(r32,v) do{(r32)&=~(0x00FF<<16);(r32)|=((v)&0x00FF)<<16;}while(0)
/* ---:--- */ #define SET16DRM_KEYCTX_OUT_ctxType(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
#define RA_DRM_KEYCTX_OUT_D1th_ ISC_USE_ONLY 0x00004
#define w32DRM_KEYCTX_OUT_D1th_ { \
UNSG32 u_reserved : 32; \
}
/* @'00004 */ struct w32DRM_KEYCTX_OUT_D1th_;
/* [31: 0] */ #define BA_DRM_KEYCTX_OUT_reserved 0x00004
/* ---:--- */ #define bDRM_KEYCTX_OUT_reserved 32 /*bit*/
/* ---:--- */ #define LSb32DRM_KEYCTX_OUT_reserved 0 /*:31*/
/* ---:--- */ #define MSK32DRM_KEYCTX_OUT_reserved 0xFFFFFFFF
/* ---:--- */ #define GET32DRM_KEYCTX_OUT_reserved(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRM_KEYCTX_OUT_reserved(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRM_KEYCTX_OUT_reserved(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_KEYCTX_OUT_reserved(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRM_KEYCTX_OUT_keyParm 0x00008
/* @'00008 */ SIE_DRM_KEYPARM ie_keyParm;
#define RA_DRM_KEYCTX_OUT_hashVal 0x0000C
/* @'0000C */ SIE_DRM_DIGEST ie_hashVal;
#define RA_DRM_KEYCTX_OUT_cipherTxt 0x0002C
/* @'0002C */ SIE_UINT64 ie_cipherTxt;
} SIE_DRM_KEYCTX_OUT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_KEYCTX_OUT_drvrd (SIE_DRM_KEYCTX_OUT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_KEYCTX_OUT_drvwr (SIE_DRM_KEYCTX_OUT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_KEYCTX_OUT_reset (SIE_DRM_KEYCTX_OUT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_KEYCTX_OUT_check(p,pie,ps8name,hfpErrLOG) DRM_KEYCTX_OUT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_KEYCTX_OUT_print(p, ps8name,hfpErrLOG) DRM_KEYCTX_OUT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_KEYCTX_OUT_cmp (SIE_DRM_KEYCTX_OUT *p, SIE_DRM_KEYCTX_OUT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_KEYCTX_OUT_import(SIE_DRM_KEYCTX_OUT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_KEYCTX_OUT_export(SIE_DRM_KEYCTX_OUT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_KEYCTX_OUT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_SYMKEYCTX256_IN_B
* @
* $DRM_KEYPARM_SYM keyParm
* * *
* * Key parameter
* @
* $DRM_DIGEST hashVal
* * *
* * Cipher text SHA1 hash value
* @
* $UINT128 keyData
* * *
* * Algorithm specific of the key data
**********************************************************************************************************************/
#ifdef h_DRM_SYMKEYCTX256_IN_B
#else
#define h_DRM_SYMKEYCTX256_IN_B
#define \
AR_DRM_SYMKEYCTX256_IN_B \
18
#define \
AB_DRM_SYMKEYCTX256_IN_B \
7
typedef struct SIE_DRM_SYMKEYCTX256_IN_B {
#define RA_DRM_SYMKEYCTX256_IN_B_keyParm 0x00000
/* @'00000 */ SIE_DRM_KEYPARM_SYM ie_keyParm;
#define RA_DRM_SYMKEYCTX256_IN_B_hashVal 0x00018
/* @'00018 */ SIE_DRM_DIGEST ie_hashVal;
#define RA_DRM_SYMKEYCTX256_IN_B_keyData 0x00038
/* @'00038 */ SIE_UINT128 ie_keyData;
} SIE_DRM_SYMKEYCTX256_IN_B;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_SYMKEYCTX256_IN_B_drvrd (SIE_DRM_SYMKEYCTX256_IN_B *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_SYMKEYCTX256_IN_B_drvwr (SIE_DRM_SYMKEYCTX256_IN_B *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_SYMKEYCTX256_IN_B_reset (SIE_DRM_SYMKEYCTX256_IN_B *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_SYMKEYCTX256_IN_B_check(p,pie,ps8name,hfpErrLOG) DRM_SYMKEYCTX256_IN_B_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_SYMKEYCTX256_IN_B_print(p, ps8name,hfpErrLOG) DRM_SYMKEYCTX256_IN_B_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_SYMKEYCTX256_IN_B_cmp (SIE_DRM_SYMKEYCTX256_IN_B *p, SIE_DRM_SYMKEYCTX256_IN_B *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_SYMKEYCTX256_IN_B_import(SIE_DRM_SYMKEYCTX256_IN_B *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_SYMKEYCTX256_IN_B_export(SIE_DRM_SYMKEYCTX256_IN_B *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_SYMKEYCTX256_IN_B
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_SYMKEYCTX256_IN
* @
* %unsigned 16 ctxSize
* * *
* * Context size
* %unsigned 8 ctxType
* * *
* * Context type
* @
* %unsigned 32 reserved0
* * *
* * Reserved
* @
* $DRM_KEYPARM_SYM keyParm
* * *
* * Key parameter
* @
* $DRM_DIGEST hashVal
* * *
* * Cipher text SHA1 hash value
* @
* %unsigned 8 keyUsageRule
* * *
* * Context usage rules
* : KUL_SIGN 0x01
* * *
* * a signing key
* : KUL_KEK 0x02
* * *
* * wrap and unwrap other keys
* : KUL_ENC 0x04
* * *
* * Encrypt data
* : KUL_DEC 0x04
* * *
* * Decrypt data
* : KUL_EXPORT 0x08
* * *
* * Exportable keys
* : KUL_AUTH 0x10
* * *
* * Key usage authentication or not
* @
* %unsigned 32 reserved1
* * *
* * Reserved
* @
* $UINT64 keyPwd
* * *
* * Authentication password
* @
* $UINT128 keyData
* * *
* * Algorithm specific of the key data
**********************************************************************************************************************/
#ifdef h_DRM_SYMKEYCTX256_IN
#else
#define h_DRM_SYMKEYCTX256_IN
#define \
AR_DRM_SYMKEYCTX256_IN \
24
#define \
AB_DRM_SYMKEYCTX256_IN \
7
typedef struct SIE_DRM_SYMKEYCTX256_IN {
#define RA_DRM_SYMKEYCTX256_IN_D0th_ ISC_USE_ONLY 0x00000
#define w32DRM_SYMKEYCTX256_IN_D0th_ { \
UNSG32 u_ctxSize : 16; \
UNSG32 u_ctxType : 8; \
UNSG32 _x00000 : 8; \
}
/* @'00000 */ struct w32DRM_SYMKEYCTX256_IN_D0th_;
/* [15: 0] */ #define BA_DRM_SYMKEYCTX256_IN_ctxSize 0x00000
/* ---:--- */ #define bDRM_SYMKEYCTX256_IN_ctxSize 16 /*bit*/
/* ---:--- */ #define LSb32DRM_SYMKEYCTX256_IN_ctxSize 0 /*:15*/
/* ---:--- */ #define MSK32DRM_SYMKEYCTX256_IN_ctxSize 0x0000FFFF
/* ---:--- */ #define GET32DRM_SYMKEYCTX256_IN_ctxSize(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRM_SYMKEYCTX256_IN_ctxSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_SYMKEYCTX256_IN_ctxSize(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_SYMKEYCTX256_IN_ctxSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [23:16] */ #define BA_DRM_SYMKEYCTX256_IN_ctxType 0x00002
/* ---:--- */ #define bDRM_SYMKEYCTX256_IN_ctxType 8 /*bit*/
/* ---:--- */ #define LSb32DRM_SYMKEYCTX256_IN_ctxType 16 /*:23*/
/* ---:--- */ #define MSK32DRM_SYMKEYCTX256_IN_ctxType 0x00FF0000
/* ---:--- */ #define GET32DRM_SYMKEYCTX256_IN_ctxType(r32) (((r32)>>16)&0x00FF)
/* ---:--- */ #define GET16DRM_SYMKEYCTX256_IN_ctxType(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRM_SYMKEYCTX256_IN_ctxType(r32,v) do{(r32)&=~(0x00FF<<16);(r32)|=((v)&0x00FF)<<16;}while(0)
/* ---:--- */ #define SET16DRM_SYMKEYCTX256_IN_ctxType(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
#define RA_DRM_SYMKEYCTX256_IN_D1th_ ISC_USE_ONLY 0x00004
#define w32DRM_SYMKEYCTX256_IN_D1th_ { \
UNSG32 u_reserved0 : 32; \
}
/* @'00004 */ struct w32DRM_SYMKEYCTX256_IN_D1th_;
/* [31: 0] */ #define BA_DRM_SYMKEYCTX256_IN_reserved0 0x00004
/* ---:--- */ #define bDRM_SYMKEYCTX256_IN_reserved0 32 /*bit*/
/* ---:--- */ #define LSb32DRM_SYMKEYCTX256_IN_reserved0 0 /*:31*/
/* ---:--- */ #define MSK32DRM_SYMKEYCTX256_IN_reserved0 0xFFFFFFFF
/* ---:--- */ #define GET32DRM_SYMKEYCTX256_IN_reserved0(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRM_SYMKEYCTX256_IN_reserved0(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRM_SYMKEYCTX256_IN_reserved0(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_SYMKEYCTX256_IN_reserved0(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRM_SYMKEYCTX256_IN_keyParm 0x00008
/* @'00008 */ SIE_DRM_KEYPARM_SYM ie_keyParm;
#define RA_DRM_SYMKEYCTX256_IN_hashVal 0x00020
/* @'00020 */ SIE_DRM_DIGEST ie_hashVal;
#define RA_DRM_SYMKEYCTX256_IN_D16th_ ISC_USE_ONLY 0x00040
#define w32DRM_SYMKEYCTX256_IN_D16th_ { \
UNSG32 u_keyUsageRule : 8; \
UNSG32 _x00040 : 24; \
}
/* @'00040 */ struct w32DRM_SYMKEYCTX256_IN_D16th_;
/* [ 7: 0] */ #define BA_DRM_SYMKEYCTX256_IN_keyUsageRule 0x00040
/* ---:--- */ #define bDRM_SYMKEYCTX256_IN_keyUsageRule 8 /*bit*/
/* ---:--- */ #define LSb32DRM_SYMKEYCTX256_IN_keyUsageRule 0 /*: 7*/
/* ---:--- */ #define MSK32DRM_SYMKEYCTX256_IN_keyUsageRule 0x000000FF
/* ---:--- */ #define GET32DRM_SYMKEYCTX256_IN_keyUsageRule(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16DRM_SYMKEYCTX256_IN_keyUsageRule(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRM_SYMKEYCTX256_IN_keyUsageRule(r32,v)do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_SYMKEYCTX256_IN_keyUsageRule(r16,v)do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
#define DRM_SYMKEYCTX256_IN_keyUsageRule_KUL_SIGN 0x1
#define DRM_SYMKEYCTX256_IN_keyUsageRule_KUL_KEK 0x2
#define DRM_SYMKEYCTX256_IN_keyUsageRule_KUL_ENC 0x4
#define DRM_SYMKEYCTX256_IN_keyUsageRule_KUL_DEC 0x4
#define DRM_SYMKEYCTX256_IN_keyUsageRule_KUL_EXPORT 0x8
#define DRM_SYMKEYCTX256_IN_keyUsageRule_KUL_AUTH 0x10
#define RA_DRM_SYMKEYCTX256_IN_D17th_ ISC_USE_ONLY 0x00044
#define w32DRM_SYMKEYCTX256_IN_D17th_ { \
UNSG32 u_reserved1 : 32; \
}
/* @'00044 */ struct w32DRM_SYMKEYCTX256_IN_D17th_;
/* [31: 0] */ #define BA_DRM_SYMKEYCTX256_IN_reserved1 0x00044
/* ---:--- */ #define bDRM_SYMKEYCTX256_IN_reserved1 32 /*bit*/
/* ---:--- */ #define LSb32DRM_SYMKEYCTX256_IN_reserved1 0 /*:31*/
/* ---:--- */ #define MSK32DRM_SYMKEYCTX256_IN_reserved1 0xFFFFFFFF
/* ---:--- */ #define GET32DRM_SYMKEYCTX256_IN_reserved1(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRM_SYMKEYCTX256_IN_reserved1(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRM_SYMKEYCTX256_IN_reserved1(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_SYMKEYCTX256_IN_reserved1(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRM_SYMKEYCTX256_IN_keyPwd 0x00048
/* @'00048 */ SIE_UINT64 ie_keyPwd;
#define RA_DRM_SYMKEYCTX256_IN_keyData 0x00050
/* @'00050 */ SIE_UINT128 ie_keyData;
} SIE_DRM_SYMKEYCTX256_IN;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_SYMKEYCTX256_IN_drvrd (SIE_DRM_SYMKEYCTX256_IN *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_SYMKEYCTX256_IN_drvwr (SIE_DRM_SYMKEYCTX256_IN *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_SYMKEYCTX256_IN_reset (SIE_DRM_SYMKEYCTX256_IN *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_SYMKEYCTX256_IN_check(p,pie,ps8name,hfpErrLOG) DRM_SYMKEYCTX256_IN_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_SYMKEYCTX256_IN_print(p, ps8name,hfpErrLOG) DRM_SYMKEYCTX256_IN_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_SYMKEYCTX256_IN_cmp (SIE_DRM_SYMKEYCTX256_IN *p, SIE_DRM_SYMKEYCTX256_IN *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_SYMKEYCTX256_IN_import(SIE_DRM_SYMKEYCTX256_IN *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_SYMKEYCTX256_IN_export(SIE_DRM_SYMKEYCTX256_IN *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_SYMKEYCTX256_IN
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_RSA1024_PUBKEY
* @
* $UINT128 rsaMod REG
* * *
* * RSA algorithm specific modulus data
* @
* $UINT128 keyData REG [8]
* * *
* * Algorithm specific of the public or private key data
**********************************************************************************************************************/
#ifdef h_DRM_RSA1024_PUBKEY
#else
#define h_DRM_RSA1024_PUBKEY
#define \
AR_DRM_RSA1024_PUBKEY \
36
#define \
AB_DRM_RSA1024_PUBKEY \
8
typedef struct SIE_DRM_RSA1024_PUBKEY {
#define RA_DRM_RSA1024_PUBKEY_rsaMod 0x00000
/* @'00000 */ SIE_UINT128 ie_rsaMod;
#define RA_DRM_RSA1024_PUBKEY_keyData 0x00010
/* @'00010 */ SIE_UINT128 ie_keyData [8];
#define arr_DRM_RSA1024_PUBKEY_keyData 8
} SIE_DRM_RSA1024_PUBKEY;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_RSA1024_PUBKEY_drvrd (SIE_DRM_RSA1024_PUBKEY *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_RSA1024_PUBKEY_drvwr (SIE_DRM_RSA1024_PUBKEY *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_RSA1024_PUBKEY_reset (SIE_DRM_RSA1024_PUBKEY *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_RSA1024_PUBKEY_check(p,pie,ps8name,hfpErrLOG) DRM_RSA1024_PUBKEY_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_RSA1024_PUBKEY_print(p, ps8name,hfpErrLOG) DRM_RSA1024_PUBKEY_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_RSA1024_PUBKEY_cmp (SIE_DRM_RSA1024_PUBKEY *p, SIE_DRM_RSA1024_PUBKEY *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_RSA1024_PUBKEY_import(SIE_DRM_RSA1024_PUBKEY *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_RSA1024_PUBKEY_export(SIE_DRM_RSA1024_PUBKEY *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_RSA1024_PUBKEY
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_RSAKEYCTX1024_IN
* @
* $DRM_DIGEST hashVal
* * *
* * Cipher text SHA1 hash value
* @
* $DRM_RSA1024_PUBKEY keyData
* * *
* * Algorithm specific of the key data
**********************************************************************************************************************/
#ifdef h_DRM_RSAKEYCTX1024_IN
#else
#define h_DRM_RSAKEYCTX1024_IN
#define \
AR_DRM_RSAKEYCTX1024_IN \
44
#define \
AB_DRM_RSAKEYCTX1024_IN \
8
typedef struct SIE_DRM_RSAKEYCTX1024_IN {
#define RA_DRM_RSAKEYCTX1024_IN_hashVal 0x00000
/* @'00000 */ SIE_DRM_DIGEST ie_hashVal;
#define RA_DRM_RSAKEYCTX1024_IN_keyData 0x00020
/* @'00020 */ SIE_DRM_RSA1024_PUBKEY ie_keyData;
} SIE_DRM_RSAKEYCTX1024_IN;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_RSAKEYCTX1024_IN_drvrd (SIE_DRM_RSAKEYCTX1024_IN *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_RSAKEYCTX1024_IN_drvwr (SIE_DRM_RSAKEYCTX1024_IN *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_RSAKEYCTX1024_IN_reset (SIE_DRM_RSAKEYCTX1024_IN *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_RSAKEYCTX1024_IN_check(p,pie,ps8name,hfpErrLOG) DRM_RSAKEYCTX1024_IN_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_RSAKEYCTX1024_IN_print(p, ps8name,hfpErrLOG) DRM_RSAKEYCTX1024_IN_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_RSAKEYCTX1024_IN_cmp (SIE_DRM_RSAKEYCTX1024_IN *p, SIE_DRM_RSAKEYCTX1024_IN *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_RSAKEYCTX1024_IN_import(SIE_DRM_RSAKEYCTX1024_IN *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_RSAKEYCTX1024_IN_export(SIE_DRM_RSAKEYCTX1024_IN *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_RSAKEYCTX1024_IN
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_RSAKEYCTX1024_IN_B
* @
* %unsigned 16 ctxSize
* * *
* * Context size
* %unsigned 8 ctxType
* * *
* * Context type
* @
* %unsigned 32 reserved0
* * *
* * Reserved
* @
* $DRM_KEYPARM_RSA keyParm
* * *
* * Key parameter
* @
* $DRM_DIGEST hashVal
* * *
* * Cipher text SHA1 hash value
* @
* %unsigned 8 keyUsageRule
* * *
* * Context usage rules
* : KUL_SIGN 0x01
* * *
* * a signing key
* : KUL_KEK 0x02
* * *
* * wrap and unwrap other keys
* : KUL_ENC 0x04
* * *
* * Encrypt data
* : KUL_DEC 0x04
* * *
* * Decrypt data
* : KUL_EXPORT 0x08
* * *
* * Exportable keys
* : KUL_AUTH 0x10
* * *
* * Key usage authentication or not
* @
* %unsigned 32 reserved1
* * *
* * Reserved
* @
* $UINT64 keyPwd
* * *
* * Authentication password
* @
* $UINT128 keyData [16]
* * *
* * Algorithm specific of the key data
**********************************************************************************************************************/
#ifdef h_DRM_RSAKEYCTX1024_IN_B
#else
#define h_DRM_RSAKEYCTX1024_IN_B
#define \
AR_DRM_RSAKEYCTX1024_IN_B \
20
#define \
AB_DRM_RSAKEYCTX1024_IN_B \
7
typedef struct SIE_DRM_RSAKEYCTX1024_IN_B {
#define RA_DRM_RSAKEYCTX1024_IN_B_D0th_ ISC_USE_ONLY 0x00000
#define w32DRM_RSAKEYCTX1024_IN_B_D0th_ { \
UNSG32 u_ctxSize : 16; \
UNSG32 u_ctxType : 8; \
UNSG32 _x00000 : 8; \
}
/* @'00000 */ struct w32DRM_RSAKEYCTX1024_IN_B_D0th_;
/* [15: 0] */ #define BA_DRM_RSAKEYCTX1024_IN_B_ctxSize 0x00000
/* ---:--- */ #define bDRM_RSAKEYCTX1024_IN_B_ctxSize 16 /*bit*/
/* ---:--- */ #define LSb32DRM_RSAKEYCTX1024_IN_B_ctxSize 0 /*:15*/
/* ---:--- */ #define MSK32DRM_RSAKEYCTX1024_IN_B_ctxSize 0x0000FFFF
/* ---:--- */ #define GET32DRM_RSAKEYCTX1024_IN_B_ctxSize(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRM_RSAKEYCTX1024_IN_B_ctxSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_RSAKEYCTX1024_IN_B_ctxSize(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_RSAKEYCTX1024_IN_B_ctxSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [23:16] */ #define BA_DRM_RSAKEYCTX1024_IN_B_ctxType 0x00002
/* ---:--- */ #define bDRM_RSAKEYCTX1024_IN_B_ctxType 8 /*bit*/
/* ---:--- */ #define LSb32DRM_RSAKEYCTX1024_IN_B_ctxType 16 /*:23*/
/* ---:--- */ #define MSK32DRM_RSAKEYCTX1024_IN_B_ctxType 0x00FF0000
/* ---:--- */ #define GET32DRM_RSAKEYCTX1024_IN_B_ctxType(r32) (((r32)>>16)&0x00FF)
/* ---:--- */ #define GET16DRM_RSAKEYCTX1024_IN_B_ctxType(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRM_RSAKEYCTX1024_IN_B_ctxType(r32,v) do{(r32)&=~(0x00FF<<16);(r32)|=((v)&0x00FF)<<16;}while(0)
/* ---:--- */ #define SET16DRM_RSAKEYCTX1024_IN_B_ctxType(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
#define RA_DRM_RSAKEYCTX1024_IN_B_D1th_ ISC_USE_ONLY 0x00004
#define w32DRM_RSAKEYCTX1024_IN_B_D1th_ { \
UNSG32 u_reserved0 : 32; \
}
/* @'00004 */ struct w32DRM_RSAKEYCTX1024_IN_B_D1th_;
/* [31: 0] */ #define BA_DRM_RSAKEYCTX1024_IN_B_reserved0 0x00004
/* ---:--- */ #define bDRM_RSAKEYCTX1024_IN_B_reserved0 32 /*bit*/
/* ---:--- */ #define LSb32DRM_RSAKEYCTX1024_IN_B_reserved0 0 /*:31*/
/* ---:--- */ #define MSK32DRM_RSAKEYCTX1024_IN_B_reserved0 0xFFFFFFFF
/* ---:--- */ #define GET32DRM_RSAKEYCTX1024_IN_B_reserved0(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRM_RSAKEYCTX1024_IN_B_reserved0(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRM_RSAKEYCTX1024_IN_B_reserved0(r32,v)do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_RSAKEYCTX1024_IN_B_reserved0(r16,v)do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRM_RSAKEYCTX1024_IN_B_keyParm 0x00008
/* @'00008 */ SIE_DRM_KEYPARM_RSA ie_keyParm;
#define RA_DRM_RSAKEYCTX1024_IN_B_hashVal 0x00010
/* @'00010 */ SIE_DRM_DIGEST ie_hashVal;
#define RA_DRM_RSAKEYCTX1024_IN_B_D12th_ ISC_USE_ONLY 0x00030
#define w32DRM_RSAKEYCTX1024_IN_B_D12th_ { \
UNSG32 u_keyUsageRule : 8; \
UNSG32 _x00030 : 24; \
}
/* @'00030 */ struct w32DRM_RSAKEYCTX1024_IN_B_D12th_;
/* [ 7: 0] */ #define BA_DRM_RSAKEYCTX1024_IN_B_keyUsageRule 0x00030
/* ---:--- */ #define bDRM_RSAKEYCTX1024_IN_B_keyUsageRule 8 /*bit*/
/* ---:--- */ #define LSb32DRM_RSAKEYCTX1024_IN_B_keyUsageRule 0 /*: 7*/
/* ---:--- */ #define MSK32DRM_RSAKEYCTX1024_IN_B_keyUsageRule 0x000000FF
/* ---:--- */ #define GET32DRM_RSAKEYCTX1024_IN_B_keyUsageRule(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16DRM_RSAKEYCTX1024_IN_B_keyUsageRule(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRM_RSAKEYCTX1024_IN_B_keyUsageRule(r32,v)do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_RSAKEYCTX1024_IN_B_keyUsageRule(r16,v)do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
#define DRM_RSAKEYCTX1024_IN_B_keyUsageRule_KUL_SIGN 0x1
#define DRM_RSAKEYCTX1024_IN_B_keyUsageRule_KUL_KEK 0x2
#define DRM_RSAKEYCTX1024_IN_B_keyUsageRule_KUL_ENC 0x4
#define DRM_RSAKEYCTX1024_IN_B_keyUsageRule_KUL_DEC 0x4
#define DRM_RSAKEYCTX1024_IN_B_keyUsageRule_KUL_EXPORT 0x8
#define DRM_RSAKEYCTX1024_IN_B_keyUsageRule_KUL_AUTH 0x10
#define RA_DRM_RSAKEYCTX1024_IN_B_D13th_ ISC_USE_ONLY 0x00034
#define w32DRM_RSAKEYCTX1024_IN_B_D13th_ { \
UNSG32 u_reserved1 : 32; \
}
/* @'00034 */ struct w32DRM_RSAKEYCTX1024_IN_B_D13th_;
/* [31: 0] */ #define BA_DRM_RSAKEYCTX1024_IN_B_reserved1 0x00034
/* ---:--- */ #define bDRM_RSAKEYCTX1024_IN_B_reserved1 32 /*bit*/
/* ---:--- */ #define LSb32DRM_RSAKEYCTX1024_IN_B_reserved1 0 /*:31*/
/* ---:--- */ #define MSK32DRM_RSAKEYCTX1024_IN_B_reserved1 0xFFFFFFFF
/* ---:--- */ #define GET32DRM_RSAKEYCTX1024_IN_B_reserved1(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRM_RSAKEYCTX1024_IN_B_reserved1(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRM_RSAKEYCTX1024_IN_B_reserved1(r32,v)do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_RSAKEYCTX1024_IN_B_reserved1(r16,v)do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRM_RSAKEYCTX1024_IN_B_keyPwd 0x00038
/* @'00038 */ SIE_UINT64 ie_keyPwd;
#define RA_DRM_RSAKEYCTX1024_IN_B_keyData 0x00040
/* @'00040 */ SIE_UINT128 ie_keyData;
} SIE_DRM_RSAKEYCTX1024_IN_B;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_RSAKEYCTX1024_IN_B_drvrd (SIE_DRM_RSAKEYCTX1024_IN_B *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_RSAKEYCTX1024_IN_B_drvwr (SIE_DRM_RSAKEYCTX1024_IN_B *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_RSAKEYCTX1024_IN_B_reset (SIE_DRM_RSAKEYCTX1024_IN_B *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_RSAKEYCTX1024_IN_B_check(p,pie,ps8name,hfpErrLOG) DRM_RSAKEYCTX1024_IN_B_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_RSAKEYCTX1024_IN_B_print(p, ps8name,hfpErrLOG) DRM_RSAKEYCTX1024_IN_B_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_RSAKEYCTX1024_IN_B_cmp (SIE_DRM_RSAKEYCTX1024_IN_B *p, SIE_DRM_RSAKEYCTX1024_IN_B *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_RSAKEYCTX1024_IN_B_import(SIE_DRM_RSAKEYCTX1024_IN_B *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_RSAKEYCTX1024_IN_B_export(SIE_DRM_RSAKEYCTX1024_IN_B *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_RSAKEYCTX1024_IN_B
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_HASH_CTXIN
* @
* %unsigned 16 ctxSize
* * *
* * Context size
* %unsigned 8 ctxType
* * *
* * Context type
* @
* %unsigned 32 reserved
* * *
* * Reserved
* @
* %unsigned 32 ctxData
* * *
* * Reserved
**********************************************************************************************************************/
#ifdef h_DRM_HASH_CTXIN
#else
#define h_DRM_HASH_CTXIN
#define \
AR_DRM_HASH_CTXIN \
3
#define \
AB_DRM_HASH_CTXIN \
4
typedef struct SIE_DRM_HASH_CTXIN {
#define RA_DRM_HASH_CTXIN_D0th_ ISC_USE_ONLY 0x00000
#define w32DRM_HASH_CTXIN_D0th_ { \
UNSG32 u_ctxSize : 16; \
UNSG32 u_ctxType : 8; \
UNSG32 _x00000 : 8; \
}
/* @'00000 */ struct w32DRM_HASH_CTXIN_D0th_;
/* [15: 0] */ #define BA_DRM_HASH_CTXIN_ctxSize 0x00000
/* ---:--- */ #define bDRM_HASH_CTXIN_ctxSize 16 /*bit*/
/* ---:--- */ #define LSb32DRM_HASH_CTXIN_ctxSize 0 /*:15*/
/* ---:--- */ #define MSK32DRM_HASH_CTXIN_ctxSize 0x0000FFFF
/* ---:--- */ #define GET32DRM_HASH_CTXIN_ctxSize(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRM_HASH_CTXIN_ctxSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_HASH_CTXIN_ctxSize(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_HASH_CTXIN_ctxSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [23:16] */ #define BA_DRM_HASH_CTXIN_ctxType 0x00002
/* ---:--- */ #define bDRM_HASH_CTXIN_ctxType 8 /*bit*/
/* ---:--- */ #define LSb32DRM_HASH_CTXIN_ctxType 16 /*:23*/
/* ---:--- */ #define MSK32DRM_HASH_CTXIN_ctxType 0x00FF0000
/* ---:--- */ #define GET32DRM_HASH_CTXIN_ctxType(r32) (((r32)>>16)&0x00FF)
/* ---:--- */ #define GET16DRM_HASH_CTXIN_ctxType(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRM_HASH_CTXIN_ctxType(r32,v) do{(r32)&=~(0x00FF<<16);(r32)|=((v)&0x00FF)<<16;}while(0)
/* ---:--- */ #define SET16DRM_HASH_CTXIN_ctxType(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
#define RA_DRM_HASH_CTXIN_D1th_ ISC_USE_ONLY 0x00004
#define w32DRM_HASH_CTXIN_D1th_ { \
UNSG32 u_reserved : 32; \
}
/* @'00004 */ struct w32DRM_HASH_CTXIN_D1th_;
/* [31: 0] */ #define BA_DRM_HASH_CTXIN_reserved 0x00004
/* ---:--- */ #define bDRM_HASH_CTXIN_reserved 32 /*bit*/
/* ---:--- */ #define LSb32DRM_HASH_CTXIN_reserved 0 /*:31*/
/* ---:--- */ #define MSK32DRM_HASH_CTXIN_reserved 0xFFFFFFFF
/* ---:--- */ #define GET32DRM_HASH_CTXIN_reserved(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRM_HASH_CTXIN_reserved(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRM_HASH_CTXIN_reserved(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_HASH_CTXIN_reserved(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRM_HASH_CTXIN_D2th_ ISC_USE_ONLY 0x00008
#define w32DRM_HASH_CTXIN_D2th_ { \
UNSG32 u_ctxData : 32; \
}
/* @'00008 */ struct w32DRM_HASH_CTXIN_D2th_;
/* [31: 0] */ #define BA_DRM_HASH_CTXIN_ctxData 0x00008
/* ---:--- */ #define bDRM_HASH_CTXIN_ctxData 32 /*bit*/
/* ---:--- */ #define LSb32DRM_HASH_CTXIN_ctxData 0 /*:31*/
/* ---:--- */ #define MSK32DRM_HASH_CTXIN_ctxData 0xFFFFFFFF
/* ---:--- */ #define GET32DRM_HASH_CTXIN_ctxData(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRM_HASH_CTXIN_ctxData(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRM_HASH_CTXIN_ctxData(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_HASH_CTXIN_ctxData(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_DRM_HASH_CTXIN;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_HASH_CTXIN_drvrd (SIE_DRM_HASH_CTXIN *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_HASH_CTXIN_drvwr (SIE_DRM_HASH_CTXIN *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_HASH_CTXIN_reset (SIE_DRM_HASH_CTXIN *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_HASH_CTXIN_check(p,pie,ps8name,hfpErrLOG) DRM_HASH_CTXIN_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_HASH_CTXIN_print(p, ps8name,hfpErrLOG) DRM_HASH_CTXIN_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_HASH_CTXIN_cmp (SIE_DRM_HASH_CTXIN *p, SIE_DRM_HASH_CTXIN *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_HASH_CTXIN_import(SIE_DRM_HASH_CTXIN *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_HASH_CTXIN_export(SIE_DRM_HASH_CTXIN *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_HASH_CTXIN
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_FIGOIMG
* @
* $DRM_SUBKEY_OUT encKey
* * *
* * Image protection Key
* @
* $DRM_DIGEST authData
* * *
* * Authentication information signed by sigKey
* @
* $UINT128 bindInfo
* * *
* * Platform binding information to indicate what type of underling hardware to run this firmware
* @ INFO
* %unsigned 16 insNum 0
* * *
* * Instructions Number
* %unsigned 16 insPCoff
* * *
* * Destination PC
* %unsigned 16 datCnt
* * *
* * Static data area size in 64bits entries
* %unsigned 16 datCntOff
* * *
* * Destination offset
* @
* $UINT32 reserved REG [2]
* * *
* * Reserved bits
* @
* $UINT32 imgDat
**********************************************************************************************************************/
#ifdef h_DRM_FIGOIMG
#else
#define h_DRM_FIGOIMG
#define \
AR_DRM_FIGOIMG \
33
#define \
AB_DRM_FIGOIMG \
8
typedef struct SIE_DRM_FIGOIMG {
#define RA_DRM_FIGOIMG_encKey 0x00000
/* @'00000 */ SIE_DRM_SUBKEY_OUT ie_encKey;
#define RA_DRM_FIGOIMG_authData 0x00040
/* @'00040 */ SIE_DRM_DIGEST ie_authData;
#define RA_DRM_FIGOIMG_bindInfo 0x00060
/* @'00060 */ SIE_UINT128 ie_bindInfo;
#define RA_DRM_FIGOIMG_INFO 0x00070
#define w32DRM_FIGOIMG_INFO { \
UNSG32 uINFO_insNum : 16; \
UNSG32 uINFO_insPCoff : 16; \
}
/* @'00070 */ union { UNSG32 u32DRM_FIGOIMG_INFO;
struct w32DRM_FIGOIMG_INFO;
};
/* [15: 0] */ #define BA_DRM_FIGOIMG_INFO_insNum 0x00070
/* ---:--- */ #define bDRM_FIGOIMG_INFO_insNum 16 /*bit*/
/* ---:--- */ #define LSb32DRM_FIGOIMG_INFO_insNum 0 /*:15*/
/* ---:--- */ #define MSK32DRM_FIGOIMG_INFO_insNum 0x0000FFFF
/* ---:--- */ #define GET32DRM_FIGOIMG_INFO_insNum(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRM_FIGOIMG_INFO_insNum(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_FIGOIMG_INFO_insNum(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_FIGOIMG_INFO_insNum(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRM_FIGOIMG_INFO_insPCoff 0x00072
/* ---:--- */ #define bDRM_FIGOIMG_INFO_insPCoff 16 /*bit*/
/* ---:--- */ #define LSb32DRM_FIGOIMG_INFO_insPCoff 16 /*:31*/
/* ---:--- */ #define MSK32DRM_FIGOIMG_INFO_insPCoff 0xFFFF0000
/* ---:--- */ #define GET32DRM_FIGOIMG_INFO_insPCoff(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRM_FIGOIMG_INFO_insPCoff(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_FIGOIMG_INFO_insPCoff(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRM_FIGOIMG_INFO_insPCoff(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRM_FIGOIMG_INFO1 0x00074
#define w32DRM_FIGOIMG_INFO1 { \
UNSG32 uINFO_datCnt : 16; \
UNSG32 uINFO_datCntOff : 16; \
}
/* @'00074 */ union { UNSG32 u32DRM_FIGOIMG_INFO1;
struct w32DRM_FIGOIMG_INFO1;
};
/* [15: 0] */ #define BA_DRM_FIGOIMG_INFO_datCnt 0x00074
/* ---:--- */ #define bDRM_FIGOIMG_INFO_datCnt 16 /*bit*/
/* ---:--- */ #define LSb32DRM_FIGOIMG_INFO_datCnt 0 /*:15*/
/* ---:--- */ #define MSK32DRM_FIGOIMG_INFO_datCnt 0x0000FFFF
/* ---:--- */ #define GET32DRM_FIGOIMG_INFO_datCnt(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRM_FIGOIMG_INFO_datCnt(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_FIGOIMG_INFO_datCnt(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_FIGOIMG_INFO_datCnt(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRM_FIGOIMG_INFO_datCntOff 0x00076
/* ---:--- */ #define bDRM_FIGOIMG_INFO_datCntOff 16 /*bit*/
/* ---:--- */ #define LSb32DRM_FIGOIMG_INFO_datCntOff 16 /*:31*/
/* ---:--- */ #define MSK32DRM_FIGOIMG_INFO_datCntOff 0xFFFF0000
/* ---:--- */ #define GET32DRM_FIGOIMG_INFO_datCntOff(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRM_FIGOIMG_INFO_datCntOff(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_FIGOIMG_INFO_datCntOff(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRM_FIGOIMG_INFO_datCntOff(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRM_FIGOIMG_reserved 0x00078
/* @'00078 */ SIE_UINT32 ie_reserved [2];
#define arr_DRM_FIGOIMG_reserved 2
#define RA_DRM_FIGOIMG_imgDat 0x00080
/* @'00080 */ SIE_UINT32 ie_imgDat;
} SIE_DRM_FIGOIMG;
#define dftDRM_FIGOIMG_INFO 0x00000000
typedef union { UNSG32 u32;
struct w32DRM_FIGOIMG_INFO;
} T32DRM_FIGOIMG_INFO;
#define dftDRM_FIGOIMG_INFO1 0x00000000
typedef union { UNSG32 u32;
struct w32DRM_FIGOIMG_INFO1;
} T32DRM_FIGOIMG_INFO1;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_FIGOIMG_drvrd (SIE_DRM_FIGOIMG *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_FIGOIMG_drvwr (SIE_DRM_FIGOIMG *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_FIGOIMG_reset (SIE_DRM_FIGOIMG *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_FIGOIMG_check(p,pie,ps8name,hfpErrLOG) DRM_FIGOIMG_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_FIGOIMG_print(p, ps8name,hfpErrLOG) DRM_FIGOIMG_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_FIGOIMG_cmp (SIE_DRM_FIGOIMG *p, SIE_DRM_FIGOIMG *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_FIGOIMG_import(SIE_DRM_FIGOIMG *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_FIGOIMG_export(SIE_DRM_FIGOIMG *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_FIGOIMG
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_ARMIMG
* @
* $DRM_SUBKEY_OUT encKey
* * *
* * Image protection Key
* @
* $DRM_DIGEST authData
* * *
* * Authentication information signed by sigKey
* @
* $UINT128 bindInfo
* * *
* * Platform binding information to indicate what type of underling hardware to run this firmware
* @
* $UINT32 reserved REG [3]
* @
* $UINT32 imgSize
* * *
* * Actual Image size. Total Image size is ALIGN16(imgSize) + 128
* @
* $UINT32 imgDat
**********************************************************************************************************************/
#ifdef h_DRM_ARMIMG
#else
#define h_DRM_ARMIMG
#define \
AR_DRM_ARMIMG \
33
#define \
AB_DRM_ARMIMG \
8
typedef struct SIE_DRM_ARMIMG {
#define RA_DRM_ARMIMG_encKey 0x00000
/* @'00000 */ SIE_DRM_SUBKEY_OUT ie_encKey;
#define RA_DRM_ARMIMG_authData 0x00040
/* @'00040 */ SIE_DRM_DIGEST ie_authData;
#define RA_DRM_ARMIMG_bindInfo 0x00060
/* @'00060 */ SIE_UINT128 ie_bindInfo;
#define RA_DRM_ARMIMG_reserved 0x00070
/* @'00070 */ SIE_UINT32 ie_reserved [3];
#define arr_DRM_ARMIMG_reserved 3
#define RA_DRM_ARMIMG_imgSize 0x0007C
/* @'0007C */ SIE_UINT32 ie_imgSize;
#define RA_DRM_ARMIMG_imgDat 0x00080
/* @'00080 */ SIE_UINT32 ie_imgDat;
} SIE_DRM_ARMIMG;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_ARMIMG_drvrd (SIE_DRM_ARMIMG *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_ARMIMG_drvwr (SIE_DRM_ARMIMG *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_ARMIMG_reset (SIE_DRM_ARMIMG *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_ARMIMG_check(p,pie,ps8name,hfpErrLOG) DRM_ARMIMG_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_ARMIMG_print(p, ps8name,hfpErrLOG) DRM_ARMIMG_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_ARMIMG_cmp (SIE_DRM_ARMIMG *p, SIE_DRM_ARMIMG *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_ARMIMG_import(SIE_DRM_ARMIMG *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_ARMIMG_export(SIE_DRM_ARMIMG *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_ARMIMG
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: SHA1_RODAT
* @
* $UINT32 a64Blk REG [576]
**********************************************************************************************************************/
#ifdef h_SHA1_RODAT
#else
#define h_SHA1_RODAT
#define \
AR_SHA1_RODAT \
576
#define \
AB_SHA1_RODAT \
12
typedef struct SIE_SHA1_RODAT {
#define RA_SHA1_RODAT_a64Blk 0x00000
/* @'00000 */ SIE_UINT32 ie_a64Blk [576];
#define arr_SHA1_RODAT_a64Blk 576
} SIE_SHA1_RODAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 SHA1_RODAT_drvrd (SIE_SHA1_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 SHA1_RODAT_drvwr (SIE_SHA1_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void SHA1_RODAT_reset (SIE_SHA1_RODAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define SHA1_RODAT_check(p,pie,ps8name,hfpErrLOG) SHA1_RODAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define SHA1_RODAT_print(p, ps8name,hfpErrLOG) SHA1_RODAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 SHA1_RODAT_cmp (SIE_SHA1_RODAT *p, SIE_SHA1_RODAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 SHA1_RODAT_import(SIE_SHA1_RODAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 SHA1_RODAT_export(SIE_SHA1_RODAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: SHA1_RODAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: SHA1_CTXDAT
* @
* $UINT64 puCount
* * *
* * Counter
* @
* $UINT32 pbBuf REG [16]
* * *
* * Internal buffer
* @
* $UINT32 puState REG [6]
* * *
* * Hash state
**********************************************************************************************************************/
#ifdef h_SHA1_CTXDAT
#else
#define h_SHA1_CTXDAT
#define \
AR_SHA1_CTXDAT \
24
#define \
AB_SHA1_CTXDAT \
7
typedef struct SIE_SHA1_CTXDAT {
#define RA_SHA1_CTXDAT_puCount 0x00000
/* @'00000 */ SIE_UINT64 ie_puCount;
#define RA_SHA1_CTXDAT_pbBuf 0x00008
/* @'00008 */ SIE_UINT32 ie_pbBuf [16];
#define arr_SHA1_CTXDAT_pbBuf 16
#define RA_SHA1_CTXDAT_puState 0x00048
/* @'00048 */ SIE_UINT32 ie_puState [6];
#define arr_SHA1_CTXDAT_puState 6
} SIE_SHA1_CTXDAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 SHA1_CTXDAT_drvrd (SIE_SHA1_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 SHA1_CTXDAT_drvwr (SIE_SHA1_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void SHA1_CTXDAT_reset (SIE_SHA1_CTXDAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define SHA1_CTXDAT_check(p,pie,ps8name,hfpErrLOG) SHA1_CTXDAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define SHA1_CTXDAT_print(p, ps8name,hfpErrLOG) SHA1_CTXDAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 SHA1_CTXDAT_cmp (SIE_SHA1_CTXDAT *p, SIE_SHA1_CTXDAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 SHA1_CTXDAT_import(SIE_SHA1_CTXDAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 SHA1_CTXDAT_export(SIE_SHA1_CTXDAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: SHA1_CTXDAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: CRC32_RODAT
* @
* $UINT32 a64Blk REG [80]
**********************************************************************************************************************/
#ifdef h_CRC32_RODAT
#else
#define h_CRC32_RODAT
#define \
AR_CRC32_RODAT \
80
#define \
AB_CRC32_RODAT \
9
typedef struct SIE_CRC32_RODAT {
#define RA_CRC32_RODAT_a64Blk 0x00000
/* @'00000 */ SIE_UINT32 ie_a64Blk [80];
#define arr_CRC32_RODAT_a64Blk 80
} SIE_CRC32_RODAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 CRC32_RODAT_drvrd (SIE_CRC32_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 CRC32_RODAT_drvwr (SIE_CRC32_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void CRC32_RODAT_reset (SIE_CRC32_RODAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define CRC32_RODAT_check(p,pie,ps8name,hfpErrLOG) CRC32_RODAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define CRC32_RODAT_print(p, ps8name,hfpErrLOG) CRC32_RODAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 CRC32_RODAT_cmp (SIE_CRC32_RODAT *p, SIE_CRC32_RODAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 CRC32_RODAT_import(SIE_CRC32_RODAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 CRC32_RODAT_export(SIE_CRC32_RODAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: CRC32_RODAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: AESWRAP_RODAT
* @
* $UINT32 dummy
**********************************************************************************************************************/
#ifdef h_AESWRAP_RODAT
#else
#define h_AESWRAP_RODAT
#define \
AR_AESWRAP_RODAT \
1
#define \
AB_AESWRAP_RODAT \
2
typedef struct SIE_AESWRAP_RODAT {
#define RA_AESWRAP_RODAT_dummy 0x00000
/* @'00000 */ SIE_UINT32 ie_dummy;
} SIE_AESWRAP_RODAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 AESWRAP_RODAT_drvrd (SIE_AESWRAP_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 AESWRAP_RODAT_drvwr (SIE_AESWRAP_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void AESWRAP_RODAT_reset (SIE_AESWRAP_RODAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define AESWRAP_RODAT_check(p,pie,ps8name,hfpErrLOG) AESWRAP_RODAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define AESWRAP_RODAT_print(p, ps8name,hfpErrLOG) AESWRAP_RODAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 AESWRAP_RODAT_cmp (SIE_AESWRAP_RODAT *p, SIE_AESWRAP_RODAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 AESWRAP_RODAT_import(SIE_AESWRAP_RODAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 AESWRAP_RODAT_export(SIE_AESWRAP_RODAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: AESWRAP_RODAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: AESWRAP_CTX
* @
* $UINT128 R
* @
* $UINT128 A
* @
* $UINT128 B
**********************************************************************************************************************/
#ifdef h_AESWRAP_CTX
#else
#define h_AESWRAP_CTX
#define \
AR_AESWRAP_CTX \
12
#define \
AB_AESWRAP_CTX \
6
typedef struct SIE_AESWRAP_CTX {
#define RA_AESWRAP_CTX_R 0x00000
/* @'00000 */ SIE_UINT128 ie_R;
#define RA_AESWRAP_CTX_A 0x00010
/* @'00010 */ SIE_UINT128 ie_A;
#define RA_AESWRAP_CTX_B 0x00020
/* @'00020 */ SIE_UINT128 ie_B;
} SIE_AESWRAP_CTX;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 AESWRAP_CTX_drvrd (SIE_AESWRAP_CTX *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 AESWRAP_CTX_drvwr (SIE_AESWRAP_CTX *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void AESWRAP_CTX_reset (SIE_AESWRAP_CTX *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define AESWRAP_CTX_check(p,pie,ps8name,hfpErrLOG) AESWRAP_CTX_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define AESWRAP_CTX_print(p, ps8name,hfpErrLOG) AESWRAP_CTX_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 AESWRAP_CTX_cmp (SIE_AESWRAP_CTX *p, SIE_AESWRAP_CTX *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 AESWRAP_CTX_import(SIE_AESWRAP_CTX *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 AESWRAP_CTX_export(SIE_AESWRAP_CTX *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: AESWRAP_CTX
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: HMAC_RODAT
* @
* $UINT32 dummy
**********************************************************************************************************************/
#ifdef h_HMAC_RODAT
#else
#define h_HMAC_RODAT
#define \
AR_HMAC_RODAT \
1
#define \
AB_HMAC_RODAT \
2
typedef struct SIE_HMAC_RODAT {
#define RA_HMAC_RODAT_dummy 0x00000
/* @'00000 */ SIE_UINT32 ie_dummy;
} SIE_HMAC_RODAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 HMAC_RODAT_drvrd (SIE_HMAC_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 HMAC_RODAT_drvwr (SIE_HMAC_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void HMAC_RODAT_reset (SIE_HMAC_RODAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define HMAC_RODAT_check(p,pie,ps8name,hfpErrLOG) HMAC_RODAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define HMAC_RODAT_print(p, ps8name,hfpErrLOG) HMAC_RODAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 HMAC_RODAT_cmp (SIE_HMAC_RODAT *p, SIE_HMAC_RODAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 HMAC_RODAT_import(SIE_HMAC_RODAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 HMAC_RODAT_export(SIE_HMAC_RODAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: HMAC_RODAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: HMAC_CTXDAT
* @
* $UINT32 dummy
**********************************************************************************************************************/
#ifdef h_HMAC_CTXDAT
#else
#define h_HMAC_CTXDAT
#define \
AR_HMAC_CTXDAT \
1
#define \
AB_HMAC_CTXDAT \
2
typedef struct SIE_HMAC_CTXDAT {
#define RA_HMAC_CTXDAT_dummy 0x00000
/* @'00000 */ SIE_UINT32 ie_dummy;
} SIE_HMAC_CTXDAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 HMAC_CTXDAT_drvrd (SIE_HMAC_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 HMAC_CTXDAT_drvwr (SIE_HMAC_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void HMAC_CTXDAT_reset (SIE_HMAC_CTXDAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define HMAC_CTXDAT_check(p,pie,ps8name,hfpErrLOG) HMAC_CTXDAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define HMAC_CTXDAT_print(p, ps8name,hfpErrLOG) HMAC_CTXDAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 HMAC_CTXDAT_cmp (SIE_HMAC_CTXDAT *p, SIE_HMAC_CTXDAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 HMAC_CTXDAT_import(SIE_HMAC_CTXDAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 HMAC_CTXDAT_export(SIE_HMAC_CTXDAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: HMAC_CTXDAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: CMAC_RODAT
* @
* $UINT32 dummy
**********************************************************************************************************************/
#ifdef h_CMAC_RODAT
#else
#define h_CMAC_RODAT
#define \
AR_CMAC_RODAT \
1
#define \
AB_CMAC_RODAT \
2
typedef struct SIE_CMAC_RODAT {
#define RA_CMAC_RODAT_dummy 0x00000
/* @'00000 */ SIE_UINT32 ie_dummy;
} SIE_CMAC_RODAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 CMAC_RODAT_drvrd (SIE_CMAC_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 CMAC_RODAT_drvwr (SIE_CMAC_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void CMAC_RODAT_reset (SIE_CMAC_RODAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define CMAC_RODAT_check(p,pie,ps8name,hfpErrLOG) CMAC_RODAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define CMAC_RODAT_print(p, ps8name,hfpErrLOG) CMAC_RODAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 CMAC_RODAT_cmp (SIE_CMAC_RODAT *p, SIE_CMAC_RODAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 CMAC_RODAT_import(SIE_CMAC_RODAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 CMAC_RODAT_export(SIE_CMAC_RODAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: CMAC_RODAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: CMAC_CTXDAT
* @
* $UINT128 k1
* @
* $UINT128 k2
**********************************************************************************************************************/
#ifdef h_CMAC_CTXDAT
#else
#define h_CMAC_CTXDAT
#define \
AR_CMAC_CTXDAT \
8
#define \
AB_CMAC_CTXDAT \
5
typedef struct SIE_CMAC_CTXDAT {
#define RA_CMAC_CTXDAT_k1 0x00000
/* @'00000 */ SIE_UINT128 ie_k1;
#define RA_CMAC_CTXDAT_k2 0x00010
/* @'00010 */ SIE_UINT128 ie_k2;
} SIE_CMAC_CTXDAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 CMAC_CTXDAT_drvrd (SIE_CMAC_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 CMAC_CTXDAT_drvwr (SIE_CMAC_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void CMAC_CTXDAT_reset (SIE_CMAC_CTXDAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define CMAC_CTXDAT_check(p,pie,ps8name,hfpErrLOG) CMAC_CTXDAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define CMAC_CTXDAT_print(p, ps8name,hfpErrLOG) CMAC_CTXDAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 CMAC_CTXDAT_cmp (SIE_CMAC_CTXDAT *p, SIE_CMAC_CTXDAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 CMAC_CTXDAT_import(SIE_CMAC_CTXDAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 CMAC_CTXDAT_export(SIE_CMAC_CTXDAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: CMAC_CTXDAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: AES128_RODAT
* @
* $UINT32 Sbox REG [64]
* * *
* * S-Box for AES encryption
* @
* $UINT32 iSbox REG [64]
* * *
* * Inverse S-Box for AES decryption
* @
* $UINT128 Recon REG [5]
* @
* $UINT32 a64Blk REG [368]
**********************************************************************************************************************/
#ifdef h_AES128_RODAT
#else
#define h_AES128_RODAT
#define \
AR_AES128_RODAT \
516
#define \
AB_AES128_RODAT \
12
typedef struct SIE_AES128_RODAT {
#define RA_AES128_RODAT_Sbox 0x00000
/* @'00000 */ SIE_UINT32 ie_Sbox [64];
#define arr_AES128_RODAT_Sbox 64
#define RA_AES128_RODAT_iSbox 0x00100
/* @'00100 */ SIE_UINT32 ie_iSbox [64];
#define arr_AES128_RODAT_iSbox 64
#define RA_AES128_RODAT_Recon 0x00200
/* @'00200 */ SIE_UINT128 ie_Recon [5];
#define arr_AES128_RODAT_Recon 5
#define RA_AES128_RODAT_a64Blk 0x00250
/* @'00250 */ SIE_UINT32 ie_a64Blk [368];
#define arr_AES128_RODAT_a64Blk 368
} SIE_AES128_RODAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 AES128_RODAT_drvrd (SIE_AES128_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 AES128_RODAT_drvwr (SIE_AES128_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void AES128_RODAT_reset (SIE_AES128_RODAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define AES128_RODAT_check(p,pie,ps8name,hfpErrLOG) AES128_RODAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define AES128_RODAT_print(p, ps8name,hfpErrLOG) AES128_RODAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 AES128_RODAT_cmp (SIE_AES128_RODAT *p, SIE_AES128_RODAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 AES128_RODAT_import(SIE_AES128_RODAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 AES128_RODAT_export(SIE_AES128_RODAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: AES128_RODAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: AES128_CTXDAT
* @
* $UINT32 a64Blk REG [368]
* @
* $UINT128 Recon REG [5]
* @ TB_OFF
* %unsigned 16 pbSbox REG
* %unsigned 16 pbiSbox REG
* %unsigned 16 pbRecon REG
**********************************************************************************************************************/
#ifdef h_AES128_CTXDAT
#else
#define h_AES128_CTXDAT
#define \
AR_AES128_CTXDAT \
390
#define \
AB_AES128_CTXDAT \
11
typedef struct SIE_AES128_CTXDAT {
#define RA_AES128_CTXDAT_a64Blk 0x00000
/* @'00000 */ SIE_UINT32 ie_a64Blk [368];
#define arr_AES128_CTXDAT_a64Blk 368
#define RA_AES128_CTXDAT_Recon 0x005C0
/* @'005C0 */ SIE_UINT128 ie_Recon [5];
#define arr_AES128_CTXDAT_Recon 5
#define RA_AES128_CTXDAT_TB_OFF 0x00610
#define w32AES128_CTXDAT_TB_OFF { \
UNSG32 uTB_OFF_pbSbox : 16; \
UNSG32 uTB_OFF_pbiSbox : 16; \
}
/* @'00610 */ union { UNSG32 u32AES128_CTXDAT_TB_OFF;
struct w32AES128_CTXDAT_TB_OFF;
};
/* [15: 0] */ #define BA_AES128_CTXDAT_TB_OFF_pbSbox 0x00610
/* ---:--- */ #define bAES128_CTXDAT_TB_OFF_pbSbox 16 /*bit*/
/* ---:--- */ #define LSb32AES128_CTXDAT_TB_OFF_pbSbox 0 /*:15*/
/* ---:--- */ #define MSK32AES128_CTXDAT_TB_OFF_pbSbox 0x0000FFFF
/* ---:--- */ #define GET32AES128_CTXDAT_TB_OFF_pbSbox(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16AES128_CTXDAT_TB_OFF_pbSbox(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32AES128_CTXDAT_TB_OFF_pbSbox(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16AES128_CTXDAT_TB_OFF_pbSbox(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_AES128_CTXDAT_TB_OFF_pbiSbox 0x00612
/* ---:--- */ #define bAES128_CTXDAT_TB_OFF_pbiSbox 16 /*bit*/
/* ---:--- */ #define LSb32AES128_CTXDAT_TB_OFF_pbiSbox 16 /*:31*/
/* ---:--- */ #define MSK32AES128_CTXDAT_TB_OFF_pbiSbox 0xFFFF0000
/* ---:--- */ #define GET32AES128_CTXDAT_TB_OFF_pbiSbox(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16AES128_CTXDAT_TB_OFF_pbiSbox(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32AES128_CTXDAT_TB_OFF_pbiSbox(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16AES128_CTXDAT_TB_OFF_pbiSbox(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_AES128_CTXDAT_TB_OFF1 0x00614
#define w32AES128_CTXDAT_TB_OFF1 { \
UNSG32 uTB_OFF_pbRecon : 16; \
UNSG32 _x00614 : 16; \
}
/* @'00614 */ union { UNSG32 u32AES128_CTXDAT_TB_OFF1;
struct w32AES128_CTXDAT_TB_OFF1;
};
/* [15: 0] */ #define BA_AES128_CTXDAT_TB_OFF_pbRecon 0x00614
/* ---:--- */ #define bAES128_CTXDAT_TB_OFF_pbRecon 16 /*bit*/
/* ---:--- */ #define LSb32AES128_CTXDAT_TB_OFF_pbRecon 0 /*:15*/
/* ---:--- */ #define MSK32AES128_CTXDAT_TB_OFF_pbRecon 0x0000FFFF
/* ---:--- */ #define GET32AES128_CTXDAT_TB_OFF_pbRecon(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16AES128_CTXDAT_TB_OFF_pbRecon(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32AES128_CTXDAT_TB_OFF_pbRecon(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16AES128_CTXDAT_TB_OFF_pbRecon(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
} SIE_AES128_CTXDAT;
#define dftAES128_CTXDAT_TB_OFF 0xCCCCCCCC
typedef union { UNSG32 u32;
struct w32AES128_CTXDAT_TB_OFF;
} T32AES128_CTXDAT_TB_OFF;
#define dftAES128_CTXDAT_TB_OFF1 0x0000CCCC
typedef union { UNSG32 u32;
struct w32AES128_CTXDAT_TB_OFF1;
} T32AES128_CTXDAT_TB_OFF1;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 AES128_CTXDAT_drvrd (SIE_AES128_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 AES128_CTXDAT_drvwr (SIE_AES128_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void AES128_CTXDAT_reset (SIE_AES128_CTXDAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define AES128_CTXDAT_check(p,pie,ps8name,hfpErrLOG) AES128_CTXDAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define AES128_CTXDAT_print(p, ps8name,hfpErrLOG) AES128_CTXDAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 AES128_CTXDAT_cmp (SIE_AES128_CTXDAT *p, SIE_AES128_CTXDAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 AES128_CTXDAT_import(SIE_AES128_CTXDAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 AES128_CTXDAT_export(SIE_AES128_CTXDAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: AES128_CTXDAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: HAMMING_INVALID_ENTRY
* @
* : VAL 0xff
* * *
* * Invalid hamming table entry
* @
* %unsigned 32 dummy
**********************************************************************************************************************/
#ifdef h_HAMMING_INVALID_ENTRY
#else
#define h_HAMMING_INVALID_ENTRY
#define \
AR_HAMMING_INVALID_ENTRY \
1
#define \
AB_HAMMING_INVALID_ENTRY \
2
#define HAMMING_INVALID_ENTRY_VAL 0xFF
typedef struct SIE_HAMMING_INVALID_ENTRY {
#define RA_HAMMING_INVALID_ENTRY_D0th_ ISC_USE_ONLY 0x00000
#define w32HAMMING_INVALID_ENTRY_D0th_ { \
UNSG32 u_dummy : 32; \
}
/* @'00000 */ struct w32HAMMING_INVALID_ENTRY_D0th_;
/* [31: 0] */ #define BA_HAMMING_INVALID_ENTRY_dummy 0x00000
/* ---:--- */ #define bHAMMING_INVALID_ENTRY_dummy 32 /*bit*/
/* ---:--- */ #define LSb32HAMMING_INVALID_ENTRY_dummy 0 /*:31*/
/* ---:--- */ #define MSK32HAMMING_INVALID_ENTRY_dummy 0xFFFFFFFF
/* ---:--- */ #define GET32HAMMING_INVALID_ENTRY_dummy(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16HAMMING_INVALID_ENTRY_dummy(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32HAMMING_INVALID_ENTRY_dummy(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16HAMMING_INVALID_ENTRY_dummy(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_HAMMING_INVALID_ENTRY;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 HAMMING_INVALID_ENTRY_drvrd (SIE_HAMMING_INVALID_ENTRY *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 HAMMING_INVALID_ENTRY_drvwr (SIE_HAMMING_INVALID_ENTRY *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void HAMMING_INVALID_ENTRY_reset (SIE_HAMMING_INVALID_ENTRY *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define HAMMING_INVALID_ENTRY_check(p,pie,ps8name,hfpErrLOG) HAMMING_INVALID_ENTRY_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define HAMMING_INVALID_ENTRY_print(p, ps8name,hfpErrLOG) HAMMING_INVALID_ENTRY_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 HAMMING_INVALID_ENTRY_cmp (SIE_HAMMING_INVALID_ENTRY *p, SIE_HAMMING_INVALID_ENTRY *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 HAMMING_INVALID_ENTRY_import(SIE_HAMMING_INVALID_ENTRY *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 HAMMING_INVALID_ENTRY_export(SIE_HAMMING_INVALID_ENTRY *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: HAMMING_INVALID_ENTRY
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: OFFTB_ENTRY
* @
* %unsigned 8 dat2ham
* * *
* * Offset mapping from data offset to hamming bit offset
* %unsigned 8 ham2dat
* * *
* * Offset mapping from hamming bit offset to data bit offset
**********************************************************************************************************************/
#ifdef h_OFFTB_ENTRY
#else
#define h_OFFTB_ENTRY
#define \
AR_OFFTB_ENTRY \
1
#define \
AB_OFFTB_ENTRY \
2
typedef struct SIE_OFFTB_ENTRY {
#define RA_OFFTB_ENTRY_D0th_ ISC_USE_ONLY 0x00000
#define w32OFFTB_ENTRY_D0th_ { \
UNSG32 u_dat2ham : 8; \
UNSG32 u_ham2dat : 8; \
UNSG32 _x00000 : 16; \
}
/* @'00000 */ struct w32OFFTB_ENTRY_D0th_;
/* [ 7: 0] */ #define BA_OFFTB_ENTRY_dat2ham 0x00000
/* ---:--- */ #define bOFFTB_ENTRY_dat2ham 8 /*bit*/
/* ---:--- */ #define LSb32OFFTB_ENTRY_dat2ham 0 /*: 7*/
/* ---:--- */ #define MSK32OFFTB_ENTRY_dat2ham 0x000000FF
/* ---:--- */ #define GET32OFFTB_ENTRY_dat2ham(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16OFFTB_ENTRY_dat2ham(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32OFFTB_ENTRY_dat2ham(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16OFFTB_ENTRY_dat2ham(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_OFFTB_ENTRY_ham2dat 0x00001
/* ---:--- */ #define bOFFTB_ENTRY_ham2dat 8 /*bit*/
/* ---:--- */ #define LSb32OFFTB_ENTRY_ham2dat 8 /*:15*/
/* ---:--- */ #define MSK32OFFTB_ENTRY_ham2dat 0x0000FF00
/* ---:--- */ #define GET32OFFTB_ENTRY_ham2dat(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16OFFTB_ENTRY_ham2dat(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32OFFTB_ENTRY_ham2dat(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16OFFTB_ENTRY_ham2dat(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
} SIE_OFFTB_ENTRY;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 OFFTB_ENTRY_drvrd (SIE_OFFTB_ENTRY *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 OFFTB_ENTRY_drvwr (SIE_OFFTB_ENTRY *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void OFFTB_ENTRY_reset (SIE_OFFTB_ENTRY *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define OFFTB_ENTRY_check(p,pie,ps8name,hfpErrLOG) OFFTB_ENTRY_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define OFFTB_ENTRY_print(p, ps8name,hfpErrLOG) OFFTB_ENTRY_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 OFFTB_ENTRY_cmp (SIE_OFFTB_ENTRY *p, SIE_OFFTB_ENTRY *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 OFFTB_ENTRY_import(SIE_OFFTB_ENTRY *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 OFFTB_ENTRY_export(SIE_OFFTB_ENTRY *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: OFFTB_ENTRY
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: HAMMING_RODAT
* @ OFFSET_TB64
* $UINT32 offsetTb64 REG [64]
* * *
* * Offset mapping table
* @ MASK_TB64
* $UINT32 maskTb64 REG [16]
* * *
* * mask table
* @ MOD2SUM_TB64
* $UINT32 mod2SumTb64 REG [128]
* * *
* * Modula 2 sum table
**********************************************************************************************************************/
#ifdef h_HAMMING_RODAT
#else
#define h_HAMMING_RODAT
#define \
AR_HAMMING_RODAT \
208
#define \
AB_HAMMING_RODAT \
10
typedef struct SIE_HAMMING_RODAT {
#define RA_HAMMING_RODAT_OFFSET_TB64 0x00000
/* @'00000 */ SIE_UINT32 ie_offsetTb64 [64];
#define arr_HAMMING_RODAT_offsetTb64 64
#define RA_HAMMING_RODAT_MASK_TB64 0x00100
/* @'00100 */ SIE_UINT32 ie_maskTb64 [16];
#define arr_HAMMING_RODAT_maskTb64 16
#define RA_HAMMING_RODAT_MOD2SUM_TB64 0x00140
/* @'00140 */ SIE_UINT32 ie_mod2SumTb64 [128];
#define arr_HAMMING_RODAT_mod2SumTb64 128
} SIE_HAMMING_RODAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 HAMMING_RODAT_drvrd (SIE_HAMMING_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 HAMMING_RODAT_drvwr (SIE_HAMMING_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void HAMMING_RODAT_reset (SIE_HAMMING_RODAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define HAMMING_RODAT_check(p,pie,ps8name,hfpErrLOG) HAMMING_RODAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define HAMMING_RODAT_print(p, ps8name,hfpErrLOG) HAMMING_RODAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 HAMMING_RODAT_cmp (SIE_HAMMING_RODAT *p, SIE_HAMMING_RODAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 HAMMING_RODAT_import(SIE_HAMMING_RODAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 HAMMING_RODAT_export(SIE_HAMMING_RODAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: HAMMING_RODAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DES3_RODAT
* @
* $UINT32 dummy
**********************************************************************************************************************/
#ifdef h_DES3_RODAT
#else
#define h_DES3_RODAT
#define \
AR_DES3_RODAT \
1
#define \
AB_DES3_RODAT \
2
typedef struct SIE_DES3_RODAT {
#define RA_DES3_RODAT_dummy 0x00000
/* @'00000 */ SIE_UINT32 ie_dummy;
} SIE_DES3_RODAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DES3_RODAT_drvrd (SIE_DES3_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DES3_RODAT_drvwr (SIE_DES3_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DES3_RODAT_reset (SIE_DES3_RODAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DES3_RODAT_check(p,pie,ps8name,hfpErrLOG) DES3_RODAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DES3_RODAT_print(p, ps8name,hfpErrLOG) DES3_RODAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DES3_RODAT_cmp (SIE_DES3_RODAT *p, SIE_DES3_RODAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DES3_RODAT_import(SIE_DES3_RODAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DES3_RODAT_export(SIE_DES3_RODAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DES3_RODAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DES3_CTXDAT
* @
* $UINT32 a64Blk REG [190]
**********************************************************************************************************************/
#ifdef h_DES3_CTXDAT
#else
#define h_DES3_CTXDAT
#define \
AR_DES3_CTXDAT \
190
#define \
AB_DES3_CTXDAT \
10
typedef struct SIE_DES3_CTXDAT {
#define RA_DES3_CTXDAT_a64Blk 0x00000
/* @'00000 */ SIE_UINT32 ie_a64Blk [190];
#define arr_DES3_CTXDAT_a64Blk 190
} SIE_DES3_CTXDAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DES3_CTXDAT_drvrd (SIE_DES3_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DES3_CTXDAT_drvwr (SIE_DES3_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DES3_CTXDAT_reset (SIE_DES3_CTXDAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DES3_CTXDAT_check(p,pie,ps8name,hfpErrLOG) DES3_CTXDAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DES3_CTXDAT_print(p, ps8name,hfpErrLOG) DES3_CTXDAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DES3_CTXDAT_cmp (SIE_DES3_CTXDAT *p, SIE_DES3_CTXDAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DES3_CTXDAT_import(SIE_DES3_CTXDAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DES3_CTXDAT_export(SIE_DES3_CTXDAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DES3_CTXDAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DES_CTXDAT
* @
* $UINT32 a64Blk REG [190]
* @
* $UINT64 puTd0 REG [64]
* @
* $UINT64 puTd1 REG [64]
* @
* $UINT64 puTd2 REG [64]
* @
* $UINT64 puTd3 REG [64]
* @
* $UINT64 puEncKey REG [16]
**********************************************************************************************************************/
#ifdef h_DES_CTXDAT
#else
#define h_DES_CTXDAT
#define \
AR_DES_CTXDAT \
734
#define \
AB_DES_CTXDAT \
12
typedef struct SIE_DES_CTXDAT {
#define RA_DES_CTXDAT_a64Blk 0x00000
/* @'00000 */ SIE_UINT32 ie_a64Blk [190];
#define arr_DES_CTXDAT_a64Blk 190
#define RA_DES_CTXDAT_puTd0 0x002F8
/* @'002F8 */ SIE_UINT64 ie_puTd0 [64];
#define arr_DES_CTXDAT_puTd0 64
#define RA_DES_CTXDAT_puTd1 0x004F8
/* @'004F8 */ SIE_UINT64 ie_puTd1 [64];
#define arr_DES_CTXDAT_puTd1 64
#define RA_DES_CTXDAT_puTd2 0x006F8
/* @'006F8 */ SIE_UINT64 ie_puTd2 [64];
#define arr_DES_CTXDAT_puTd2 64
#define RA_DES_CTXDAT_puTd3 0x008F8
/* @'008F8 */ SIE_UINT64 ie_puTd3 [64];
#define arr_DES_CTXDAT_puTd3 64
#define RA_DES_CTXDAT_puEncKey 0x00AF8
/* @'00AF8 */ SIE_UINT64 ie_puEncKey [16];
#define arr_DES_CTXDAT_puEncKey 16
} SIE_DES_CTXDAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DES_CTXDAT_drvrd (SIE_DES_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DES_CTXDAT_drvwr (SIE_DES_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DES_CTXDAT_reset (SIE_DES_CTXDAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DES_CTXDAT_check(p,pie,ps8name,hfpErrLOG) DES_CTXDAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DES_CTXDAT_print(p, ps8name,hfpErrLOG) DES_CTXDAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DES_CTXDAT_cmp (SIE_DES_CTXDAT *p, SIE_DES_CTXDAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DES_CTXDAT_import(SIE_DES_CTXDAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DES_CTXDAT_export(SIE_DES_CTXDAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DES_CTXDAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: MULT2_RODAT
* @
* $UINT32 dummy
**********************************************************************************************************************/
#ifdef h_MULT2_RODAT
#else
#define h_MULT2_RODAT
#define \
AR_MULT2_RODAT \
1
#define \
AB_MULT2_RODAT \
2
typedef struct SIE_MULT2_RODAT {
#define RA_MULT2_RODAT_dummy 0x00000
/* @'00000 */ SIE_UINT32 ie_dummy;
} SIE_MULT2_RODAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 MULT2_RODAT_drvrd (SIE_MULT2_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 MULT2_RODAT_drvwr (SIE_MULT2_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void MULT2_RODAT_reset (SIE_MULT2_RODAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define MULT2_RODAT_check(p,pie,ps8name,hfpErrLOG) MULT2_RODAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define MULT2_RODAT_print(p, ps8name,hfpErrLOG) MULT2_RODAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 MULT2_RODAT_cmp (SIE_MULT2_RODAT *p, SIE_MULT2_RODAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 MULT2_RODAT_import(SIE_MULT2_RODAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 MULT2_RODAT_export(SIE_MULT2_RODAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: MULT2_RODAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: MULT2_CTXDAT
* @
* $UINT32 a64Blk REG [640]
* * *
* * The array size is determined by the round number. For round number 128, 640 is ok.
**********************************************************************************************************************/
#ifdef h_MULT2_CTXDAT
#else
#define h_MULT2_CTXDAT
#define \
AR_MULT2_CTXDAT \
640
#define \
AB_MULT2_CTXDAT \
12
typedef struct SIE_MULT2_CTXDAT {
#define RA_MULT2_CTXDAT_a64Blk 0x00000
/* @'00000 */ SIE_UINT32 ie_a64Blk [640];
#define arr_MULT2_CTXDAT_a64Blk 640
} SIE_MULT2_CTXDAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 MULT2_CTXDAT_drvrd (SIE_MULT2_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 MULT2_CTXDAT_drvwr (SIE_MULT2_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void MULT2_CTXDAT_reset (SIE_MULT2_CTXDAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define MULT2_CTXDAT_check(p,pie,ps8name,hfpErrLOG) MULT2_CTXDAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define MULT2_CTXDAT_print(p, ps8name,hfpErrLOG) MULT2_CTXDAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 MULT2_CTXDAT_cmp (SIE_MULT2_CTXDAT *p, SIE_MULT2_CTXDAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 MULT2_CTXDAT_import(SIE_MULT2_CTXDAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 MULT2_CTXDAT_export(SIE_MULT2_CTXDAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: MULT2_CTXDAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: C2_RODAT
* @
* $UINT32 dummy
**********************************************************************************************************************/
#ifdef h_C2_RODAT
#else
#define h_C2_RODAT
#define \
AR_C2_RODAT \
1
#define \
AB_C2_RODAT \
2
typedef struct SIE_C2_RODAT {
#define RA_C2_RODAT_dummy 0x00000
/* @'00000 */ SIE_UINT32 ie_dummy;
} SIE_C2_RODAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 C2_RODAT_drvrd (SIE_C2_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 C2_RODAT_drvwr (SIE_C2_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void C2_RODAT_reset (SIE_C2_RODAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define C2_RODAT_check(p,pie,ps8name,hfpErrLOG) C2_RODAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define C2_RODAT_print(p, ps8name,hfpErrLOG) C2_RODAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 C2_RODAT_cmp (SIE_C2_RODAT *p, SIE_C2_RODAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 C2_RODAT_import(SIE_C2_RODAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 C2_RODAT_export(SIE_C2_RODAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: C2_RODAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: C2_CTXDAT
* @
* $UINT32 a64Blk REG [360]
**********************************************************************************************************************/
#ifdef h_C2_CTXDAT
#else
#define h_C2_CTXDAT
#define \
AR_C2_CTXDAT \
360
#define \
AB_C2_CTXDAT \
11
typedef struct SIE_C2_CTXDAT {
#define RA_C2_CTXDAT_a64Blk 0x00000
/* @'00000 */ SIE_UINT32 ie_a64Blk [360];
#define arr_C2_CTXDAT_a64Blk 360
} SIE_C2_CTXDAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 C2_CTXDAT_drvrd (SIE_C2_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 C2_CTXDAT_drvwr (SIE_C2_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void C2_CTXDAT_reset (SIE_C2_CTXDAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define C2_CTXDAT_check(p,pie,ps8name,hfpErrLOG) C2_CTXDAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define C2_CTXDAT_print(p, ps8name,hfpErrLOG) C2_CTXDAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 C2_CTXDAT_cmp (SIE_C2_CTXDAT *p, SIE_C2_CTXDAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 C2_CTXDAT_import(SIE_C2_CTXDAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 C2_CTXDAT_export(SIE_C2_CTXDAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: C2_CTXDAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: PSS_CTXDAT
* @
* $UINT64 puSalt REG [3]
* * *
* * Salt Data
* @
* $UINT64 puEM REG [16]
* * *
* * RSA PSS encoded Message data
* @
* $UINT64 pudbMask REG [16]
* * *
* * Mask data generated by MGF
* @
* $UINT64 pumaskDB REG [16]
* * *
* @
* $UINT64 puHash REG [3]
* * *
* * Hash value of the message
* @
* $UINT64 puRcvHash REG [3]
* * *
* * Recovered hash value of the message during the verification process
* @
* $UINT32 puPssRet
* * *
* * RSA PSS signature and verification return value
* * *
* * RSA_PSS_OK
* * 0xa
* * *
* * Process is ok
* * *
* * RSA_PSS_FAILED
* * 0xb
* @
* $UINT32 reseverd
**********************************************************************************************************************/
#ifdef h_PSS_CTXDAT
#else
#define h_PSS_CTXDAT
#define \
AR_PSS_CTXDAT \
116
#define \
AB_PSS_CTXDAT \
9
typedef struct SIE_PSS_CTXDAT {
#define RA_PSS_CTXDAT_puSalt 0x00000
/* @'00000 */ SIE_UINT64 ie_puSalt [3];
#define arr_PSS_CTXDAT_puSalt 3
#define RA_PSS_CTXDAT_puEM 0x00018
/* @'00018 */ SIE_UINT64 ie_puEM [16];
#define arr_PSS_CTXDAT_puEM 16
#define RA_PSS_CTXDAT_pudbMask 0x00098
/* @'00098 */ SIE_UINT64 ie_pudbMask [16];
#define arr_PSS_CTXDAT_pudbMask 16
#define RA_PSS_CTXDAT_pumaskDB 0x00118
/* @'00118 */ SIE_UINT64 ie_pumaskDB [16];
#define arr_PSS_CTXDAT_pumaskDB 16
#define RA_PSS_CTXDAT_puHash 0x00198
/* @'00198 */ SIE_UINT64 ie_puHash [3];
#define arr_PSS_CTXDAT_puHash 3
#define RA_PSS_CTXDAT_puRcvHash 0x001B0
/* @'001B0 */ SIE_UINT64 ie_puRcvHash [3];
#define arr_PSS_CTXDAT_puRcvHash 3
#define RA_PSS_CTXDAT_puPssRet 0x001C8
/* @'001C8 */ SIE_UINT32 ie_puPssRet;
#define RA_PSS_CTXDAT_reseverd 0x001CC
/* @'001CC */ SIE_UINT32 ie_reseverd;
} SIE_PSS_CTXDAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 PSS_CTXDAT_drvrd (SIE_PSS_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 PSS_CTXDAT_drvwr (SIE_PSS_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void PSS_CTXDAT_reset (SIE_PSS_CTXDAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define PSS_CTXDAT_check(p,pie,ps8name,hfpErrLOG) PSS_CTXDAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define PSS_CTXDAT_print(p, ps8name,hfpErrLOG) PSS_CTXDAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 PSS_CTXDAT_cmp (SIE_PSS_CTXDAT *p, SIE_PSS_CTXDAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 PSS_CTXDAT_import(SIE_PSS_CTXDAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 PSS_CTXDAT_export(SIE_PSS_CTXDAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: PSS_CTXDAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: RSA_RODAT
* @
* $UINT32 a64Blk REG [80]
**********************************************************************************************************************/
#ifdef h_RSA_RODAT
#else
#define h_RSA_RODAT
#define \
AR_RSA_RODAT \
80
#define \
AB_RSA_RODAT \
9
typedef struct SIE_RSA_RODAT {
#define RA_RSA_RODAT_a64Blk 0x00000
/* @'00000 */ SIE_UINT32 ie_a64Blk [80];
#define arr_RSA_RODAT_a64Blk 80
} SIE_RSA_RODAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 RSA_RODAT_drvrd (SIE_RSA_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 RSA_RODAT_drvwr (SIE_RSA_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void RSA_RODAT_reset (SIE_RSA_RODAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define RSA_RODAT_check(p,pie,ps8name,hfpErrLOG) RSA_RODAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define RSA_RODAT_print(p, ps8name,hfpErrLOG) RSA_RODAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 RSA_RODAT_cmp (SIE_RSA_RODAT *p, SIE_RSA_RODAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 RSA_RODAT_import(SIE_RSA_RODAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 RSA_RODAT_export(SIE_RSA_RODAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: RSA_RODAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: RSA_CTXDAT
* @
* $UINT64 pbRsaMod REG [16]
* @
* $UINT64 pbPwr0 REG [16]
* * *
* @
* $UINT64 pbPwr1 REG [16]
* * *
* @
* $UINT64 pbPwr2 REG [16]
* * *
* @
* $UINT64 pbBufT REG [16]
* * *
* * Temporary buffer store the Expmod result during the MulMod operation
* @
* $UINT64 pbBufAdd REG [32]
* * *
* * Addition buffer for the computation of 1024 bits multiply
* @
* $UINT32 pbBufDiv REG [65]
* * *
* * Divide or Multiply buffer store the result of multiply of two 1024 bits big numbers
* @
* $UINT32 puShift
* * *
**********************************************************************************************************************/
#ifdef h_RSA_CTXDAT
#else
#define h_RSA_CTXDAT
#define \
AR_RSA_CTXDAT \
290
#define \
AB_RSA_CTXDAT \
11
typedef struct SIE_RSA_CTXDAT {
#define RA_RSA_CTXDAT_pbRsaMod 0x00000
/* @'00000 */ SIE_UINT64 ie_pbRsaMod [16];
#define arr_RSA_CTXDAT_pbRsaMod 16
#define RA_RSA_CTXDAT_pbPwr0 0x00080
/* @'00080 */ SIE_UINT64 ie_pbPwr0 [16];
#define arr_RSA_CTXDAT_pbPwr0 16
#define RA_RSA_CTXDAT_pbPwr1 0x00100
/* @'00100 */ SIE_UINT64 ie_pbPwr1 [16];
#define arr_RSA_CTXDAT_pbPwr1 16
#define RA_RSA_CTXDAT_pbPwr2 0x00180
/* @'00180 */ SIE_UINT64 ie_pbPwr2 [16];
#define arr_RSA_CTXDAT_pbPwr2 16
#define RA_RSA_CTXDAT_pbBufT 0x00200
/* @'00200 */ SIE_UINT64 ie_pbBufT [16];
#define arr_RSA_CTXDAT_pbBufT 16
#define RA_RSA_CTXDAT_pbBufAdd 0x00280
/* @'00280 */ SIE_UINT64 ie_pbBufAdd [32];
#define arr_RSA_CTXDAT_pbBufAdd 32
#define RA_RSA_CTXDAT_pbBufDiv 0x00380
/* @'00380 */ SIE_UINT32 ie_pbBufDiv [65];
#define arr_RSA_CTXDAT_pbBufDiv 65
#define RA_RSA_CTXDAT_puShift 0x00484
/* @'00484 */ SIE_UINT32 ie_puShift;
} SIE_RSA_CTXDAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 RSA_CTXDAT_drvrd (SIE_RSA_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 RSA_CTXDAT_drvwr (SIE_RSA_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void RSA_CTXDAT_reset (SIE_RSA_CTXDAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define RSA_CTXDAT_check(p,pie,ps8name,hfpErrLOG) RSA_CTXDAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define RSA_CTXDAT_print(p, ps8name,hfpErrLOG) RSA_CTXDAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 RSA_CTXDAT_cmp (SIE_RSA_CTXDAT *p, SIE_RSA_CTXDAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 RSA_CTXDAT_import(SIE_RSA_CTXDAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 RSA_CTXDAT_export(SIE_RSA_CTXDAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: RSA_CTXDAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: CBCMAC_CTXDAT
* @
* $UINT64 sum
* @
* $UINT64 t
* @
* $UINT32 buf REG [2]
* @
* $UINT32 bufLen
* @
* $UINT32 reserved
* @
* $UINT64 pbFullMac
* @
* $UINT64 pbPartMac
* @
* $UINT64 pbCBCKey REG [6]
* @
* $UINT64 pbiCBCKey REG [6]
* @
* $UINT64 a64Blk REG [70]
**********************************************************************************************************************/
#ifdef h_CBCMAC_CTXDAT
#else
#define h_CBCMAC_CTXDAT
#define \
AR_CBCMAC_CTXDAT \
176
#define \
AB_CBCMAC_CTXDAT \
10
typedef struct SIE_CBCMAC_CTXDAT {
#define RA_CBCMAC_CTXDAT_sum 0x00000
/* @'00000 */ SIE_UINT64 ie_sum;
#define RA_CBCMAC_CTXDAT_t 0x00008
/* @'00008 */ SIE_UINT64 ie_t;
#define RA_CBCMAC_CTXDAT_buf 0x00010
/* @'00010 */ SIE_UINT32 ie_buf [2];
#define arr_CBCMAC_CTXDAT_buf 2
#define RA_CBCMAC_CTXDAT_bufLen 0x00018
/* @'00018 */ SIE_UINT32 ie_bufLen;
#define RA_CBCMAC_CTXDAT_reserved 0x0001C
/* @'0001C */ SIE_UINT32 ie_reserved;
#define RA_CBCMAC_CTXDAT_pbFullMac 0x00020
/* @'00020 */ SIE_UINT64 ie_pbFullMac;
#define RA_CBCMAC_CTXDAT_pbPartMac 0x00028
/* @'00028 */ SIE_UINT64 ie_pbPartMac;
#define RA_CBCMAC_CTXDAT_pbCBCKey 0x00030
/* @'00030 */ SIE_UINT64 ie_pbCBCKey [6];
#define arr_CBCMAC_CTXDAT_pbCBCKey 6
#define RA_CBCMAC_CTXDAT_pbiCBCKey 0x00060
/* @'00060 */ SIE_UINT64 ie_pbiCBCKey [6];
#define arr_CBCMAC_CTXDAT_pbiCBCKey 6
#define RA_CBCMAC_CTXDAT_a64Blk 0x00090
/* @'00090 */ SIE_UINT64 ie_a64Blk [70];
#define arr_CBCMAC_CTXDAT_a64Blk 70
} SIE_CBCMAC_CTXDAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 CBCMAC_CTXDAT_drvrd (SIE_CBCMAC_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 CBCMAC_CTXDAT_drvwr (SIE_CBCMAC_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void CBCMAC_CTXDAT_reset (SIE_CBCMAC_CTXDAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define CBCMAC_CTXDAT_check(p,pie,ps8name,hfpErrLOG) CBCMAC_CTXDAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define CBCMAC_CTXDAT_print(p, ps8name,hfpErrLOG) CBCMAC_CTXDAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 CBCMAC_CTXDAT_cmp (SIE_CBCMAC_CTXDAT *p, SIE_CBCMAC_CTXDAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 CBCMAC_CTXDAT_import(SIE_CBCMAC_CTXDAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 CBCMAC_CTXDAT_export(SIE_CBCMAC_CTXDAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: CBCMAC_CTXDAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: RC4_CTXDAT
* @
* $UINT64 puState REG [64]
* @
* %unsigned 16 x
* %unsigned 16 y
* @
* $UINT32 reserved
**********************************************************************************************************************/
#ifdef h_RC4_CTXDAT
#else
#define h_RC4_CTXDAT
#define \
AR_RC4_CTXDAT \
130
#define \
AB_RC4_CTXDAT \
10
typedef struct SIE_RC4_CTXDAT {
#define RA_RC4_CTXDAT_puState 0x00000
/* @'00000 */ SIE_UINT64 ie_puState [64];
#define arr_RC4_CTXDAT_puState 64
#define RA_RC4_CTXDAT_D128th_ ISC_USE_ONLY 0x00200
#define w32RC4_CTXDAT_D128th_ { \
UNSG32 u_x : 16; \
UNSG32 u_y : 16; \
}
/* @'00200 */ struct w32RC4_CTXDAT_D128th_;
/* [15: 0] */ #define BA_RC4_CTXDAT_x 0x00200
/* ---:--- */ #define bRC4_CTXDAT_x 16 /*bit*/
/* ---:--- */ #define LSb32RC4_CTXDAT_x 0 /*:15*/
/* ---:--- */ #define MSK32RC4_CTXDAT_x 0x0000FFFF
/* ---:--- */ #define GET32RC4_CTXDAT_x(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16RC4_CTXDAT_x(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32RC4_CTXDAT_x(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16RC4_CTXDAT_x(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_RC4_CTXDAT_y 0x00202
/* ---:--- */ #define bRC4_CTXDAT_y 16 /*bit*/
/* ---:--- */ #define LSb32RC4_CTXDAT_y 16 /*:31*/
/* ---:--- */ #define MSK32RC4_CTXDAT_y 0xFFFF0000
/* ---:--- */ #define GET32RC4_CTXDAT_y(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16RC4_CTXDAT_y(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32RC4_CTXDAT_y(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16RC4_CTXDAT_y(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_RC4_CTXDAT_reserved 0x00204
/* @'00204 */ SIE_UINT32 ie_reserved;
} SIE_RC4_CTXDAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 RC4_CTXDAT_drvrd (SIE_RC4_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 RC4_CTXDAT_drvwr (SIE_RC4_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void RC4_CTXDAT_reset (SIE_RC4_CTXDAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define RC4_CTXDAT_check(p,pie,ps8name,hfpErrLOG) RC4_CTXDAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define RC4_CTXDAT_print(p, ps8name,hfpErrLOG) RC4_CTXDAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 RC4_CTXDAT_cmp (SIE_RC4_CTXDAT *p, SIE_RC4_CTXDAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 RC4_CTXDAT_import(SIE_RC4_CTXDAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 RC4_CTXDAT_export(SIE_RC4_CTXDAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: RC4_CTXDAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: MD5_CTXDAT
* @
* $UINT64 puCount
* * *
* * Counter
* @
* $UINT32 pbBuf REG [16]
* * *
* * Internal buffer
* @
* $UINT32 puState REG [6]
* * *
* * Hash state
* @
* $UINT64 a64Blk REG [70]
**********************************************************************************************************************/
#ifdef h_MD5_CTXDAT
#else
#define h_MD5_CTXDAT
#define \
AR_MD5_CTXDAT \
164
#define \
AB_MD5_CTXDAT \
10
typedef struct SIE_MD5_CTXDAT {
#define RA_MD5_CTXDAT_puCount 0x00000
/* @'00000 */ SIE_UINT64 ie_puCount;
#define RA_MD5_CTXDAT_pbBuf 0x00008
/* @'00008 */ SIE_UINT32 ie_pbBuf [16];
#define arr_MD5_CTXDAT_pbBuf 16
#define RA_MD5_CTXDAT_puState 0x00048
/* @'00048 */ SIE_UINT32 ie_puState [6];
#define arr_MD5_CTXDAT_puState 6
#define RA_MD5_CTXDAT_a64Blk 0x00060
/* @'00060 */ SIE_UINT64 ie_a64Blk [70];
#define arr_MD5_CTXDAT_a64Blk 70
} SIE_MD5_CTXDAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 MD5_CTXDAT_drvrd (SIE_MD5_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 MD5_CTXDAT_drvwr (SIE_MD5_CTXDAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void MD5_CTXDAT_reset (SIE_MD5_CTXDAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define MD5_CTXDAT_check(p,pie,ps8name,hfpErrLOG) MD5_CTXDAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define MD5_CTXDAT_print(p, ps8name,hfpErrLOG) MD5_CTXDAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 MD5_CTXDAT_cmp (SIE_MD5_CTXDAT *p, SIE_MD5_CTXDAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 MD5_CTXDAT_import(SIE_MD5_CTXDAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 MD5_CTXDAT_export(SIE_MD5_CTXDAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: MD5_CTXDAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRMROM_CMD_TYPE
* @
* : LD_FIGOIMG 0
* * *
* * Load and verify FIGO image
* @
* : LD_ARMIMG 1
* * *
* * Load and verify ARM image
* @
* : MK_ARMIMG 2
* * *
* * Sign and encrypt ARM image, and sign type is default sign type, CMAC
* @
* : MK_ARMIMG_RSAPSS 4
* * *
* * Sign and encrypt ARM image,and sign type is RSA
* @
* %unsigned 32 dummy
**********************************************************************************************************************/
#ifdef h_DRMROM_CMD_TYPE
#else
#define h_DRMROM_CMD_TYPE
#define \
AR_DRMROM_CMD_TYPE \
1
#define \
AB_DRMROM_CMD_TYPE \
2
#define DRMROM_CMD_TYPE_LD_FIGOIMG 0x0
#define DRMROM_CMD_TYPE_LD_ARMIMG 0x1
#define DRMROM_CMD_TYPE_MK_ARMIMG 0x2
#define DRMROM_CMD_TYPE_MK_ARMIMG_RSAPSS 0x4
typedef struct SIE_DRMROM_CMD_TYPE {
#define RA_DRMROM_CMD_TYPE_D0th_ ISC_USE_ONLY 0x00000
#define w32DRMROM_CMD_TYPE_D0th_ { \
UNSG32 u_dummy : 32; \
}
/* @'00000 */ struct w32DRMROM_CMD_TYPE_D0th_;
/* [31: 0] */ #define BA_DRMROM_CMD_TYPE_dummy 0x00000
/* ---:--- */ #define bDRMROM_CMD_TYPE_dummy 32 /*bit*/
/* ---:--- */ #define LSb32DRMROM_CMD_TYPE_dummy 0 /*:31*/
/* ---:--- */ #define MSK32DRMROM_CMD_TYPE_dummy 0xFFFFFFFF
/* ---:--- */ #define GET32DRMROM_CMD_TYPE_dummy(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMROM_CMD_TYPE_dummy(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMROM_CMD_TYPE_dummy(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMROM_CMD_TYPE_dummy(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_DRMROM_CMD_TYPE;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRMROM_CMD_TYPE_drvrd (SIE_DRMROM_CMD_TYPE *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRMROM_CMD_TYPE_drvwr (SIE_DRMROM_CMD_TYPE *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRMROM_CMD_TYPE_reset (SIE_DRMROM_CMD_TYPE *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRMROM_CMD_TYPE_check(p,pie,ps8name,hfpErrLOG) DRMROM_CMD_TYPE_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRMROM_CMD_TYPE_print(p, ps8name,hfpErrLOG) DRMROM_CMD_TYPE_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRMROM_CMD_TYPE_cmp (SIE_DRMROM_CMD_TYPE *p, SIE_DRMROM_CMD_TYPE *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRMROM_CMD_TYPE_import(SIE_DRMROM_CMD_TYPE *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRMROM_CMD_TYPE_export(SIE_DRMROM_CMD_TYPE *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRMROM_CMD_TYPE
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRMROM_CMD
* @ STAT (R-W-) 0
* %unsigned 1 en
* * *
* * 1: Indicate command has been issued by ARM. CMD register contains the command body
* * 0 : Indicate command has been executed by FIGO . RSP register contains the response body
* @ CMD_CFG (W) 0
* %unsigned 8 tag 0
* * *
* * Command ordinal, LD_FIGOIMG or LD_ARMIMG
* * 0
* %unsigned 8 subKeyID 0
* * *
* * The ID of key used to encrypt the image
* * 0
* %unsigned 16 nonce 0
* * *
* * Command ID
* * 0
* @ CMD_DAT0
* %unsigned 32 crcCmd32 0
* * *
* * Command CRC32 value
* @ CMD_DAT1
* %unsigned 32 imgSz 0
* * *
* * Image size of instruction
* * 0
* @ CMD_DAT2
* %unsigned 32 imgSrcAddr 0
* * *
* * Image source address in DDR. To simplfy the FIGO macrocode design and improve the data transfer performance, imgSrcAddr should be aligned to 32 bytes
* @ CMD_DAT3
* %unsigned 32 imgDstAddr 0
* * *
* * Image destination address aligned to 32 bytes
* @ RSP_CFG (R) 0
* %unsigned 8 tag 0
* * *
* * Response ordinal, LD_FIGOIMG or LD_ARMIMG
* * 0
* @ RSP_DAT0
* %unsigned 32 crcRsp32 0
* * *
* * Response CRC32 value calculated with corresponding command nonce value
* * 0
* @ RSP_DAT1
* %unsigned 32 error 0
* * *
* * Response error code. 0 : Succeed
* * 0
* @
* %unsigned 32 reserved 0
**********************************************************************************************************************/
#ifdef h_DRMROM_CMD
#else
#define h_DRMROM_CMD
#define \
AR_DRMROM_CMD \
10
#define \
AB_DRMROM_CMD \
6
typedef struct SIE_DRMROM_CMD {
#define RA_DRMROM_CMD_STAT 0x00000
#define w32DRMROM_CMD_STAT { \
UNSG32 uSTAT_en : 1; \
UNSG32 _x00000 : 31; \
}
/* @'00000 */ union { UNSG32 u32DRMROM_CMD_STAT;
struct w32DRMROM_CMD_STAT;
};
/* [ 0: 0] */ #define BA_DRMROM_CMD_STAT_en 0x00000
/* ---:--- */ #define bDRMROM_CMD_STAT_en 1 /*bit*/
/* ---:--- */ #define LSb32DRMROM_CMD_STAT_en 0 /*: 0*/
/* ---:--- */ #define MSK32DRMROM_CMD_STAT_en 0x00000001
/* ---:--- */ #define GET32DRMROM_CMD_STAT_en(r32) (((r32)>> 0)&0x0001)
/* ---:--- */ #define GET16DRMROM_CMD_STAT_en(r16) (((r16)>> 0)&0x0001)
/* ---:--- */ #define SET32DRMROM_CMD_STAT_en(r32,v) do{(r32)&=~(0x0001<< 0);(r32)|=((v)&0x0001)<< 0;}while(0)
/* ---:--- */ #define SET16DRMROM_CMD_STAT_en(r16,v) do{(r16)&=~(0x0001<< 0);(r16)|=((v)&0x0001)<< 0;}while(0)
#define RA_DRMROM_CMD_CMD_CFG 0x00004
#define w32DRMROM_CMD_CMD_CFG { \
UNSG32 uCMD_CFG_tag : 8; \
UNSG32 uCMD_CFG_subKeyID : 8; \
UNSG32 uCMD_CFG_nonce : 16; \
}
/* @'00004 */ union { UNSG32 u32DRMROM_CMD_CMD_CFG;
struct w32DRMROM_CMD_CMD_CFG;
};
/* [ 7: 0] */ #define BA_DRMROM_CMD_CMD_CFG_tag 0x00004
/* ---:--- */ #define bDRMROM_CMD_CMD_CFG_tag 8 /*bit*/
/* ---:--- */ #define LSb32DRMROM_CMD_CMD_CFG_tag 0 /*: 7*/
/* ---:--- */ #define MSK32DRMROM_CMD_CMD_CFG_tag 0x000000FF
/* ---:--- */ #define GET32DRMROM_CMD_CMD_CFG_tag(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16DRMROM_CMD_CMD_CFG_tag(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRMROM_CMD_CMD_CFG_tag(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMROM_CMD_CMD_CFG_tag(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_DRMROM_CMD_CMD_CFG_subKeyID 0x00005
/* ---:--- */ #define bDRMROM_CMD_CMD_CFG_subKeyID 8 /*bit*/
/* ---:--- */ #define LSb32DRMROM_CMD_CMD_CFG_subKeyID 8 /*:15*/
/* ---:--- */ #define MSK32DRMROM_CMD_CMD_CFG_subKeyID 0x0000FF00
/* ---:--- */ #define GET32DRMROM_CMD_CMD_CFG_subKeyID(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16DRMROM_CMD_CMD_CFG_subKeyID(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32DRMROM_CMD_CMD_CFG_subKeyID(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16DRMROM_CMD_CMD_CFG_subKeyID(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
/* [31:16] */ #define BA_DRMROM_CMD_CMD_CFG_nonce 0x00006
/* ---:--- */ #define bDRMROM_CMD_CMD_CFG_nonce 16 /*bit*/
/* ---:--- */ #define LSb32DRMROM_CMD_CMD_CFG_nonce 16 /*:31*/
/* ---:--- */ #define MSK32DRMROM_CMD_CMD_CFG_nonce 0xFFFF0000
/* ---:--- */ #define GET32DRMROM_CMD_CMD_CFG_nonce(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRMROM_CMD_CMD_CFG_nonce(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMROM_CMD_CMD_CFG_nonce(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRMROM_CMD_CMD_CFG_nonce(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMROM_CMD_CMD_DAT0 0x00008
#define w32DRMROM_CMD_CMD_DAT0 { \
UNSG32 uCMD_DAT0_crcCmd32 : 32; \
}
/* @'00008 */ union { UNSG32 u32DRMROM_CMD_CMD_DAT0;
struct w32DRMROM_CMD_CMD_DAT0;
};
/* [31: 0] */ #define BA_DRMROM_CMD_CMD_DAT0_crcCmd32 0x00008
/* ---:--- */ #define bDRMROM_CMD_CMD_DAT0_crcCmd32 32 /*bit*/
/* ---:--- */ #define LSb32DRMROM_CMD_CMD_DAT0_crcCmd32 0 /*:31*/
/* ---:--- */ #define MSK32DRMROM_CMD_CMD_DAT0_crcCmd32 0xFFFFFFFF
/* ---:--- */ #define GET32DRMROM_CMD_CMD_DAT0_crcCmd32(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMROM_CMD_CMD_DAT0_crcCmd32(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMROM_CMD_CMD_DAT0_crcCmd32(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMROM_CMD_CMD_DAT0_crcCmd32(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRMROM_CMD_CMD_DAT1 0x0000C
#define w32DRMROM_CMD_CMD_DAT1 { \
UNSG32 uCMD_DAT1_imgSz : 32; \
}
/* @'0000C */ union { UNSG32 u32DRMROM_CMD_CMD_DAT1;
struct w32DRMROM_CMD_CMD_DAT1;
};
/* [31: 0] */ #define BA_DRMROM_CMD_CMD_DAT1_imgSz 0x0000C
/* ---:--- */ #define bDRMROM_CMD_CMD_DAT1_imgSz 32 /*bit*/
/* ---:--- */ #define LSb32DRMROM_CMD_CMD_DAT1_imgSz 0 /*:31*/
/* ---:--- */ #define MSK32DRMROM_CMD_CMD_DAT1_imgSz 0xFFFFFFFF
/* ---:--- */ #define GET32DRMROM_CMD_CMD_DAT1_imgSz(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMROM_CMD_CMD_DAT1_imgSz(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMROM_CMD_CMD_DAT1_imgSz(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMROM_CMD_CMD_DAT1_imgSz(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRMROM_CMD_CMD_DAT2 0x00010
#define w32DRMROM_CMD_CMD_DAT2 { \
UNSG32 uCMD_DAT2_imgSrcAddr : 32; \
}
/* @'00010 */ union { UNSG32 u32DRMROM_CMD_CMD_DAT2;
struct w32DRMROM_CMD_CMD_DAT2;
};
/* [31: 0] */ #define BA_DRMROM_CMD_CMD_DAT2_imgSrcAddr 0x00010
/* ---:--- */ #define bDRMROM_CMD_CMD_DAT2_imgSrcAddr 32 /*bit*/
/* ---:--- */ #define LSb32DRMROM_CMD_CMD_DAT2_imgSrcAddr 0 /*:31*/
/* ---:--- */ #define MSK32DRMROM_CMD_CMD_DAT2_imgSrcAddr 0xFFFFFFFF
/* ---:--- */ #define GET32DRMROM_CMD_CMD_DAT2_imgSrcAddr(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMROM_CMD_CMD_DAT2_imgSrcAddr(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMROM_CMD_CMD_DAT2_imgSrcAddr(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMROM_CMD_CMD_DAT2_imgSrcAddr(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRMROM_CMD_CMD_DAT3 0x00014
#define w32DRMROM_CMD_CMD_DAT3 { \
UNSG32 uCMD_DAT3_imgDstAddr : 32; \
}
/* @'00014 */ union { UNSG32 u32DRMROM_CMD_CMD_DAT3;
struct w32DRMROM_CMD_CMD_DAT3;
};
/* [31: 0] */ #define BA_DRMROM_CMD_CMD_DAT3_imgDstAddr 0x00014
/* ---:--- */ #define bDRMROM_CMD_CMD_DAT3_imgDstAddr 32 /*bit*/
/* ---:--- */ #define LSb32DRMROM_CMD_CMD_DAT3_imgDstAddr 0 /*:31*/
/* ---:--- */ #define MSK32DRMROM_CMD_CMD_DAT3_imgDstAddr 0xFFFFFFFF
/* ---:--- */ #define GET32DRMROM_CMD_CMD_DAT3_imgDstAddr(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMROM_CMD_CMD_DAT3_imgDstAddr(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMROM_CMD_CMD_DAT3_imgDstAddr(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMROM_CMD_CMD_DAT3_imgDstAddr(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRMROM_CMD_RSP_CFG 0x00018
#define w32DRMROM_CMD_RSP_CFG { \
UNSG32 uRSP_CFG_tag : 8; \
UNSG32 _x00018 : 24; \
}
/* @'00018 */ union { UNSG32 u32DRMROM_CMD_RSP_CFG;
struct w32DRMROM_CMD_RSP_CFG;
};
/* [ 7: 0] */ #define BA_DRMROM_CMD_RSP_CFG_tag 0x00018
/* ---:--- */ #define bDRMROM_CMD_RSP_CFG_tag 8 /*bit*/
/* ---:--- */ #define LSb32DRMROM_CMD_RSP_CFG_tag 0 /*: 7*/
/* ---:--- */ #define MSK32DRMROM_CMD_RSP_CFG_tag 0x000000FF
/* ---:--- */ #define GET32DRMROM_CMD_RSP_CFG_tag(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16DRMROM_CMD_RSP_CFG_tag(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRMROM_CMD_RSP_CFG_tag(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMROM_CMD_RSP_CFG_tag(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
#define RA_DRMROM_CMD_RSP_DAT0 0x0001C
#define w32DRMROM_CMD_RSP_DAT0 { \
UNSG32 uRSP_DAT0_crcRsp32 : 32; \
}
/* @'0001C */ union { UNSG32 u32DRMROM_CMD_RSP_DAT0;
struct w32DRMROM_CMD_RSP_DAT0;
};
/* [31: 0] */ #define BA_DRMROM_CMD_RSP_DAT0_crcRsp32 0x0001C
/* ---:--- */ #define bDRMROM_CMD_RSP_DAT0_crcRsp32 32 /*bit*/
/* ---:--- */ #define LSb32DRMROM_CMD_RSP_DAT0_crcRsp32 0 /*:31*/
/* ---:--- */ #define MSK32DRMROM_CMD_RSP_DAT0_crcRsp32 0xFFFFFFFF
/* ---:--- */ #define GET32DRMROM_CMD_RSP_DAT0_crcRsp32(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMROM_CMD_RSP_DAT0_crcRsp32(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMROM_CMD_RSP_DAT0_crcRsp32(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMROM_CMD_RSP_DAT0_crcRsp32(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRMROM_CMD_RSP_DAT1 0x00020
#define w32DRMROM_CMD_RSP_DAT1 { \
UNSG32 uRSP_DAT1_error : 32; \
}
/* @'00020 */ union { UNSG32 u32DRMROM_CMD_RSP_DAT1;
struct w32DRMROM_CMD_RSP_DAT1;
};
/* [31: 0] */ #define BA_DRMROM_CMD_RSP_DAT1_error 0x00020
/* ---:--- */ #define bDRMROM_CMD_RSP_DAT1_error 32 /*bit*/
/* ---:--- */ #define LSb32DRMROM_CMD_RSP_DAT1_error 0 /*:31*/
/* ---:--- */ #define MSK32DRMROM_CMD_RSP_DAT1_error 0xFFFFFFFF
/* ---:--- */ #define GET32DRMROM_CMD_RSP_DAT1_error(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMROM_CMD_RSP_DAT1_error(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMROM_CMD_RSP_DAT1_error(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMROM_CMD_RSP_DAT1_error(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRMROM_CMD_D9th_ ISC_USE_ONLY 0x00024
#define w32DRMROM_CMD_D9th_ { \
UNSG32 u_reserved : 32; \
}
/* @'00024 */ struct w32DRMROM_CMD_D9th_;
/* [31: 0] */ #define BA_DRMROM_CMD_reserved 0x00024
/* ---:--- */ #define bDRMROM_CMD_reserved 32 /*bit*/
/* ---:--- */ #define LSb32DRMROM_CMD_reserved 0 /*:31*/
/* ---:--- */ #define MSK32DRMROM_CMD_reserved 0xFFFFFFFF
/* ---:--- */ #define GET32DRMROM_CMD_reserved(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMROM_CMD_reserved(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMROM_CMD_reserved(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMROM_CMD_reserved(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_DRMROM_CMD;
#define dftDRMROM_CMD_STAT 0x00000000
typedef union { UNSG32 u32;
struct w32DRMROM_CMD_STAT;
} T32DRMROM_CMD_STAT;
#define dftDRMROM_CMD_CMD_CFG 0x00000000
typedef union { UNSG32 u32;
struct w32DRMROM_CMD_CMD_CFG;
} T32DRMROM_CMD_CMD_CFG;
#define dftDRMROM_CMD_CMD_DAT0 0x00000000
typedef union { UNSG32 u32;
struct w32DRMROM_CMD_CMD_DAT0;
} T32DRMROM_CMD_CMD_DAT0;
#define dftDRMROM_CMD_CMD_DAT1 0x00000000
typedef union { UNSG32 u32;
struct w32DRMROM_CMD_CMD_DAT1;
} T32DRMROM_CMD_CMD_DAT1;
#define dftDRMROM_CMD_CMD_DAT2 0x00000000
typedef union { UNSG32 u32;
struct w32DRMROM_CMD_CMD_DAT2;
} T32DRMROM_CMD_CMD_DAT2;
#define dftDRMROM_CMD_CMD_DAT3 0x00000000
typedef union { UNSG32 u32;
struct w32DRMROM_CMD_CMD_DAT3;
} T32DRMROM_CMD_CMD_DAT3;
#define dftDRMROM_CMD_RSP_CFG 0x00000000
typedef union { UNSG32 u32;
struct w32DRMROM_CMD_RSP_CFG;
} T32DRMROM_CMD_RSP_CFG;
#define dftDRMROM_CMD_RSP_DAT0 0x00000000
typedef union { UNSG32 u32;
struct w32DRMROM_CMD_RSP_DAT0;
} T32DRMROM_CMD_RSP_DAT0;
#define dftDRMROM_CMD_RSP_DAT1 0x00000000
typedef union { UNSG32 u32;
struct w32DRMROM_CMD_RSP_DAT1;
} T32DRMROM_CMD_RSP_DAT1;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRMROM_CMD_drvrd (SIE_DRMROM_CMD *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRMROM_CMD_drvwr (SIE_DRMROM_CMD *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRMROM_CMD_reset (SIE_DRMROM_CMD *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRMROM_CMD_check(p,pie,ps8name,hfpErrLOG) DRMROM_CMD_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRMROM_CMD_print(p, ps8name,hfpErrLOG) DRMROM_CMD_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRMROM_CMD_cmp (SIE_DRMROM_CMD *p, SIE_DRMROM_CMD *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRMROM_CMD_import(SIE_DRMROM_CMD *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRMROM_CMD_export(SIE_DRMROM_CMD *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRMROM_CMD
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_DROM
* @
* $AES128_RODAT aesROData
* * *
* * AES 128 bits algorithm specific read only data
* @
* $HAMMING_RODAT hamming64RODat
* * *
* * Hamming 64-7 tables
* @
* $CRC32_RODAT crc32ROData
* * *
* * CRC32 algorithm specific read only data
* @
* $SHA1_RODAT sha1ROData
* * *
* * SHA-1 algorithm specific read only data
* @
* $RSA_RODAT rsaROData
* * *
* * RSA algorithm specific read only data
* @
* $UINT128 aesROMKey REG [64]
* * *
* * AES ROM Key data
* @
* $UINT128 rsaPrvKey REG [8]
* @
* $UINT128 rsaPrvMod REG [8]
* @
* $UINT128 rsaPubKey REG [4]
* @
* $UINT128 rsaMod REG [8]
* * *
* * RSA Private and Public pair Key Data in ROM
**********************************************************************************************************************/
#ifdef h_DRM_DROM
#else
#define h_DRM_DROM
#define \
AR_DRM_DROM \
1828
#define \
AB_DRM_DROM \
13
typedef struct SIE_DRM_DROM {
#define RA_DRM_DROM_aesROData 0x00000
/* @'00000 */ SIE_AES128_RODAT ie_aesROData;
#define RA_DRM_DROM_hamming64RODat 0x00810
/* @'00810 */ SIE_HAMMING_RODAT ie_hamming64RODat;
#define RA_DRM_DROM_crc32ROData 0x00B50
/* @'00B50 */ SIE_CRC32_RODAT ie_crc32ROData;
#define RA_DRM_DROM_sha1ROData 0x00C90
/* @'00C90 */ SIE_SHA1_RODAT ie_sha1ROData;
#define RA_DRM_DROM_rsaROData 0x01590
/* @'01590 */ SIE_RSA_RODAT ie_rsaROData;
#define RA_DRM_DROM_aesROMKey 0x016D0
/* @'016D0 */ SIE_UINT128 ie_aesROMKey [64];
#define arr_DRM_DROM_aesROMKey 64
#define RA_DRM_DROM_rsaPrvKey 0x01AD0
/* @'01AD0 */ SIE_UINT128 ie_rsaPrvKey [8];
#define arr_DRM_DROM_rsaPrvKey 8
#define RA_DRM_DROM_rsaPrvMod 0x01B50
/* @'01B50 */ SIE_UINT128 ie_rsaPrvMod [8];
#define arr_DRM_DROM_rsaPrvMod 8
#define RA_DRM_DROM_rsaPubKey 0x01BD0
/* @'01BD0 */ SIE_UINT128 ie_rsaPubKey [4];
#define arr_DRM_DROM_rsaPubKey 4
#define RA_DRM_DROM_rsaMod 0x01C10
/* @'01C10 */ SIE_UINT128 ie_rsaMod [8];
#define arr_DRM_DROM_rsaMod 8
} SIE_DRM_DROM;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_DROM_drvrd (SIE_DRM_DROM *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_DROM_drvwr (SIE_DRM_DROM *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_DROM_reset (SIE_DRM_DROM *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_DROM_check(p,pie,ps8name,hfpErrLOG) DRM_DROM_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_DROM_print(p, ps8name,hfpErrLOG) DRM_DROM_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_DROM_cmp (SIE_DRM_DROM *p, SIE_DRM_DROM *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_DROM_import(SIE_DRM_DROM *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_DROM_export(SIE_DRM_DROM *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_DROM
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRMROM_FIFOIDX
* @
* : DS 0
* * *
* * DS FIFo IDx
* @
* %unsigned 32 dummy
**********************************************************************************************************************/
#ifdef h_DRMROM_FIFOIDX
#else
#define h_DRMROM_FIFOIDX
#define \
AR_DRMROM_FIFOIDX \
1
#define \
AB_DRMROM_FIFOIDX \
2
#define DRMROM_FIFOIDX_DS 0x0
typedef struct SIE_DRMROM_FIFOIDX {
#define RA_DRMROM_FIFOIDX_D0th_ ISC_USE_ONLY 0x00000
#define w32DRMROM_FIFOIDX_D0th_ { \
UNSG32 u_dummy : 32; \
}
/* @'00000 */ struct w32DRMROM_FIFOIDX_D0th_;
/* [31: 0] */ #define BA_DRMROM_FIFOIDX_dummy 0x00000
/* ---:--- */ #define bDRMROM_FIFOIDX_dummy 32 /*bit*/
/* ---:--- */ #define LSb32DRMROM_FIFOIDX_dummy 0 /*:31*/
/* ---:--- */ #define MSK32DRMROM_FIFOIDX_dummy 0xFFFFFFFF
/* ---:--- */ #define GET32DRMROM_FIFOIDX_dummy(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMROM_FIFOIDX_dummy(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMROM_FIFOIDX_dummy(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMROM_FIFOIDX_dummy(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_DRMROM_FIFOIDX;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRMROM_FIFOIDX_drvrd (SIE_DRMROM_FIFOIDX *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRMROM_FIFOIDX_drvwr (SIE_DRMROM_FIFOIDX *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRMROM_FIFOIDX_reset (SIE_DRMROM_FIFOIDX *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRMROM_FIFOIDX_check(p,pie,ps8name,hfpErrLOG) DRMROM_FIFOIDX_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRMROM_FIFOIDX_print(p, ps8name,hfpErrLOG) DRMROM_FIFOIDX_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRMROM_FIFOIDX_cmp (SIE_DRMROM_FIFOIDX *p, SIE_DRMROM_FIFOIDX *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRMROM_FIFOIDX_import(SIE_DRMROM_FIFOIDX *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRMROM_FIFOIDX_export(SIE_DRMROM_FIFOIDX *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRMROM_FIFOIDX
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRMROM_SRAM_RESERVED
* @
* $UINT128 reserved REG [128]
* * *
* * Reserved ROM SRAM
**********************************************************************************************************************/
#ifdef h_DRMROM_SRAM_RESERVED
#else
#define h_DRMROM_SRAM_RESERVED
#define \
AR_DRMROM_SRAM_RESERVED \
512
#define \
AB_DRMROM_SRAM_RESERVED \
11
typedef struct SIE_DRMROM_SRAM_RESERVED {
#define RA_DRMROM_SRAM_RESERVED_reserved 0x00000
/* @'00000 */ SIE_UINT128 ie_reserved [128];
#define arr_DRMROM_SRAM_RESERVED_reserved 128
} SIE_DRMROM_SRAM_RESERVED;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRMROM_SRAM_RESERVED_drvrd (SIE_DRMROM_SRAM_RESERVED *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRMROM_SRAM_RESERVED_drvwr (SIE_DRMROM_SRAM_RESERVED *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRMROM_SRAM_RESERVED_reset (SIE_DRMROM_SRAM_RESERVED *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRMROM_SRAM_RESERVED_check(p,pie,ps8name,hfpErrLOG) DRMROM_SRAM_RESERVED_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRMROM_SRAM_RESERVED_print(p, ps8name,hfpErrLOG) DRMROM_SRAM_RESERVED_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRMROM_SRAM_RESERVED_cmp (SIE_DRMROM_SRAM_RESERVED *p, SIE_DRMROM_SRAM_RESERVED *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRMROM_SRAM_RESERVED_import(SIE_DRMROM_SRAM_RESERVED *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRMROM_SRAM_RESERVED_export(SIE_DRMROM_SRAM_RESERVED *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRMROM_SRAM_RESERVED
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: USERKEY_CTX
* @
* $UINT64 magicNum
* @
* $UINT128 aesUserKey REG [2]
* @
* $UINT128 rsaPubKey REG [4]
* @
* $UINT128 rsaMod REG [8]
* @
* $UINT128 rsaPrvKey REG [8]
* @
* $UINT128 rsaPrvMod REG [8]
**********************************************************************************************************************/
#ifdef h_USERKEY_CTX
#else
#define h_USERKEY_CTX
#define \
AR_USERKEY_CTX \
122
#define \
AB_USERKEY_CTX \
9
typedef struct SIE_USERKEY_CTX {
#define RA_USERKEY_CTX_magicNum 0x00000
/* @'00000 */ SIE_UINT64 ie_magicNum;
#define RA_USERKEY_CTX_aesUserKey 0x00008
/* @'00008 */ SIE_UINT128 ie_aesUserKey [2];
#define arr_USERKEY_CTX_aesUserKey 2
#define RA_USERKEY_CTX_rsaPubKey 0x00028
/* @'00028 */ SIE_UINT128 ie_rsaPubKey [4];
#define arr_USERKEY_CTX_rsaPubKey 4
#define RA_USERKEY_CTX_rsaMod 0x00068
/* @'00068 */ SIE_UINT128 ie_rsaMod [8];
#define arr_USERKEY_CTX_rsaMod 8
#define RA_USERKEY_CTX_rsaPrvKey 0x000E8
/* @'000E8 */ SIE_UINT128 ie_rsaPrvKey [8];
#define arr_USERKEY_CTX_rsaPrvKey 8
#define RA_USERKEY_CTX_rsaPrvMod 0x00168
/* @'00168 */ SIE_UINT128 ie_rsaPrvMod [8];
#define arr_USERKEY_CTX_rsaPrvMod 8
} SIE_USERKEY_CTX;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 USERKEY_CTX_drvrd (SIE_USERKEY_CTX *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 USERKEY_CTX_drvwr (SIE_USERKEY_CTX *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void USERKEY_CTX_reset (SIE_USERKEY_CTX *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define USERKEY_CTX_check(p,pie,ps8name,hfpErrLOG) USERKEY_CTX_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define USERKEY_CTX_print(p, ps8name,hfpErrLOG) USERKEY_CTX_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 USERKEY_CTX_cmp (SIE_USERKEY_CTX *p, SIE_USERKEY_CTX *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 USERKEY_CTX_import(SIE_USERKEY_CTX *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 USERKEY_CTX_export(SIE_USERKEY_CTX *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: USERKEY_CTX
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: USERKEY_MAGICNUM
* @ DAT
* %unsigned 16 ID
* : magicA 0x06a5
* : magicB 0x06a5
* : magicC 0x06a5
* : magicD 0x06a5
**********************************************************************************************************************/
#ifdef h_USERKEY_MAGICNUM
#else
#define h_USERKEY_MAGICNUM
#define \
AR_USERKEY_MAGICNUM \
1
#define \
AB_USERKEY_MAGICNUM \
2
typedef struct SIE_USERKEY_MAGICNUM {
#define RA_USERKEY_MAGICNUM_DAT 0x00000
#define w32USERKEY_MAGICNUM_DAT { \
UNSG32 uDAT_ID : 16; \
UNSG32 _x00000 : 16; \
}
/* @'00000 */ union { UNSG32 u32USERKEY_MAGICNUM_DAT;
struct w32USERKEY_MAGICNUM_DAT;
};
/* [15: 0] */ #define BA_USERKEY_MAGICNUM_DAT_ID 0x00000
/* ---:--- */ #define bUSERKEY_MAGICNUM_DAT_ID 16 /*bit*/
/* ---:--- */ #define LSb32USERKEY_MAGICNUM_DAT_ID 0 /*:15*/
/* ---:--- */ #define MSK32USERKEY_MAGICNUM_DAT_ID 0x0000FFFF
/* ---:--- */ #define GET32USERKEY_MAGICNUM_DAT_ID(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16USERKEY_MAGICNUM_DAT_ID(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32USERKEY_MAGICNUM_DAT_ID(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16USERKEY_MAGICNUM_DAT_ID(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define USERKEY_MAGICNUM_DAT_ID_magicA 0x6A5
#define USERKEY_MAGICNUM_DAT_ID_magicB 0x6A5
#define USERKEY_MAGICNUM_DAT_ID_magicC 0x6A5
#define USERKEY_MAGICNUM_DAT_ID_magicD 0x6A5
} SIE_USERKEY_MAGICNUM;
#define dftUSERKEY_MAGICNUM_DAT 0x00000000
typedef union { UNSG32 u32;
struct w32USERKEY_MAGICNUM_DAT;
} T32USERKEY_MAGICNUM_DAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 USERKEY_MAGICNUM_drvrd (SIE_USERKEY_MAGICNUM *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 USERKEY_MAGICNUM_drvwr (SIE_USERKEY_MAGICNUM *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void USERKEY_MAGICNUM_reset (SIE_USERKEY_MAGICNUM *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define USERKEY_MAGICNUM_check(p,pie,ps8name,hfpErrLOG) USERKEY_MAGICNUM_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define USERKEY_MAGICNUM_print(p, ps8name,hfpErrLOG) USERKEY_MAGICNUM_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 USERKEY_MAGICNUM_cmp (SIE_USERKEY_MAGICNUM *p, SIE_USERKEY_MAGICNUM *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 USERKEY_MAGICNUM_import(SIE_USERKEY_MAGICNUM *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 USERKEY_MAGICNUM_export(SIE_USERKEY_MAGICNUM *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: USERKEY_MAGICNUM
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRMROM_SRAM
* @
* $DRMROM_CMD cmd
* * *
* * ROM code command and response buffer
* @
* $LocalArea la
* * *
* * Local data area
* @
* $UINT64 dsFifoDat REG [16]
* * *
* * Data streamer fifo data
* @
* $DRM_SYMKEYCTX256_IN symSignKey
* * *
* * AES128 based symmetric signature key context
* @
* $DRM_RSAKEYCTX1024_IN asymSignKey
* * *
* * RSA1924 based asymmetric signature key context
* @
* $DRM_SYMKEYCTX256_IN aesRKEK
* * *
* * AES128 RKEK key context
* @
* $DRM_SYMKEYCTX256_IN aesSubKey
* * *
* * AES128 sub key context
* @
* $UINT128 rndKeyBuf REG [16]
* * *
* * Temporary buffer for round keys
* @
* $UINT32 imgHdrInfo REG [32]
* * *
* * Stored image header information
* @
* $UINT32 authDatCtx REG [32]
* * *
* * Stored image header information
* @
* $UINT64 otpBits REG [40]
* * *
* * All OTP bits
* @
* $OTP_CRC32 otpCrc32
* * *
* * OTP CRC32 value for three regions of OTP data
* @ SEC_BITS
* %unsigned 16 prvkSecBits0
* * *
* * Private key security bits 0
* %unsigned 16 prvkSecBits1
* * *
* * Private key security bits 0
* %unsigned 16 prvkSecBits2
* * *
* * Private key security bits 0
* %unsigned 16 rkekSecBits
* * *
* * RKEK key security bits 0
* %unsigned 16 aeskSecBits
* * *
* * AES key security bits
* @
* $OTP_STATUS otpStatus
* * *
* * All OTP bits
* @
* $SHA1_CTXDAT shaCtx
* * *
* * SHA1 Context for RSA PSS signature verification
* @
* $USERKEY_CTX userKeyCtx
* * *
* * AES User Key data
* @
* $RSA_CTXDAT rsaCtx
* * *
* * RSA Context for RSA PSS signature verification
* @
* $UINT128 bufTmp MEM
* * *
* * Temporary Buffer
* @ 0x0ff0
* $UINT128 stack
* * *
* * Stack
* @ 0x1000
* $UINT128 dsTransBuf REG [256]
* * *
* * Transfer memory
**********************************************************************************************************************/
#ifdef h_DRMROM_SRAM
#else
#define h_DRMROM_SRAM
#define \
AR_DRMROM_SRAM \
2048
#define \
AB_DRMROM_SRAM \
13
typedef struct SIE_DRMROM_SRAM {
#define RA_DRMROM_SRAM_cmd 0x00000
/* @'00000 */ SIE_DRMROM_CMD ie_cmd;
#define RA_DRMROM_SRAM_la 0x00028
/* @'00028 */ SIE_LocalArea ie_la;
#define RA_DRMROM_SRAM_dsFifoDat 0x00250
/* @'00250 */ SIE_UINT64 ie_dsFifoDat [16];
#define arr_DRMROM_SRAM_dsFifoDat 16
#define RA_DRMROM_SRAM_symSignKey 0x002D0
/* @'002D0 */ SIE_DRM_SYMKEYCTX256_IN ie_symSignKey;
#define RA_DRMROM_SRAM_asymSignKey 0x00330
/* @'00330 */ SIE_DRM_RSAKEYCTX1024_IN ie_asymSignKey;
#define RA_DRMROM_SRAM_aesRKEK 0x003E0
/* @'003E0 */ SIE_DRM_SYMKEYCTX256_IN ie_aesRKEK;
#define RA_DRMROM_SRAM_aesSubKey 0x00440
/* @'00440 */ SIE_DRM_SYMKEYCTX256_IN ie_aesSubKey;
#define RA_DRMROM_SRAM_rndKeyBuf 0x004A0
/* @'004A0 */ SIE_UINT128 ie_rndKeyBuf [16];
#define arr_DRMROM_SRAM_rndKeyBuf 16
#define RA_DRMROM_SRAM_imgHdrInfo 0x005A0
/* @'005A0 */ SIE_UINT32 ie_imgHdrInfo [32];
#define arr_DRMROM_SRAM_imgHdrInfo 32
#define RA_DRMROM_SRAM_authDatCtx 0x00620
/* @'00620 */ SIE_UINT32 ie_authDatCtx [32];
#define arr_DRMROM_SRAM_authDatCtx 32
#define RA_DRMROM_SRAM_otpBits 0x006A0
/* @'006A0 */ SIE_UINT64 ie_otpBits [40];
#define arr_DRMROM_SRAM_otpBits 40
#define RA_DRMROM_SRAM_otpCrc32 0x007E0
/* @'007E0 */ SIE_OTP_CRC32 ie_otpCrc32;
#define RA_DRMROM_SRAM_SEC_BITS 0x007F0
#define w32DRMROM_SRAM_SEC_BITS { \
UNSG32 uSEC_BITS_prvkSecBits0 : 16; \
UNSG32 uSEC_BITS_prvkSecBits1 : 16; \
}
/* @'007F0 */ union { UNSG32 u32DRMROM_SRAM_SEC_BITS;
struct w32DRMROM_SRAM_SEC_BITS;
};
/* [15: 0] */ #define BA_DRMROM_SRAM_SEC_BITS_prvkSecBits0 0x007F0
/* ---:--- */ #define bDRMROM_SRAM_SEC_BITS_prvkSecBits0 16 /*bit*/
/* ---:--- */ #define LSb32DRMROM_SRAM_SEC_BITS_prvkSecBits0 0 /*:15*/
/* ---:--- */ #define MSK32DRMROM_SRAM_SEC_BITS_prvkSecBits0 0x0000FFFF
/* ---:--- */ #define GET32DRMROM_SRAM_SEC_BITS_prvkSecBits0(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMROM_SRAM_SEC_BITS_prvkSecBits0(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMROM_SRAM_SEC_BITS_prvkSecBits0(r32,v)do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMROM_SRAM_SEC_BITS_prvkSecBits0(r16,v)do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRMROM_SRAM_SEC_BITS_prvkSecBits1 0x007F2
/* ---:--- */ #define bDRMROM_SRAM_SEC_BITS_prvkSecBits1 16 /*bit*/
/* ---:--- */ #define LSb32DRMROM_SRAM_SEC_BITS_prvkSecBits1 16 /*:31*/
/* ---:--- */ #define MSK32DRMROM_SRAM_SEC_BITS_prvkSecBits1 0xFFFF0000
/* ---:--- */ #define GET32DRMROM_SRAM_SEC_BITS_prvkSecBits1(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRMROM_SRAM_SEC_BITS_prvkSecBits1(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMROM_SRAM_SEC_BITS_prvkSecBits1(r32,v)do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRMROM_SRAM_SEC_BITS_prvkSecBits1(r16,v)do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMROM_SRAM_SEC_BITS1 0x007F4
#define w32DRMROM_SRAM_SEC_BITS1 { \
UNSG32 uSEC_BITS_prvkSecBits2 : 16; \
UNSG32 uSEC_BITS_rkekSecBits : 16; \
}
/* @'007F4 */ union { UNSG32 u32DRMROM_SRAM_SEC_BITS1;
struct w32DRMROM_SRAM_SEC_BITS1;
};
/* [15: 0] */ #define BA_DRMROM_SRAM_SEC_BITS_prvkSecBits2 0x007F4
/* ---:--- */ #define bDRMROM_SRAM_SEC_BITS_prvkSecBits2 16 /*bit*/
/* ---:--- */ #define LSb32DRMROM_SRAM_SEC_BITS_prvkSecBits2 0 /*:15*/
/* ---:--- */ #define MSK32DRMROM_SRAM_SEC_BITS_prvkSecBits2 0x0000FFFF
/* ---:--- */ #define GET32DRMROM_SRAM_SEC_BITS_prvkSecBits2(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMROM_SRAM_SEC_BITS_prvkSecBits2(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMROM_SRAM_SEC_BITS_prvkSecBits2(r32,v)do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMROM_SRAM_SEC_BITS_prvkSecBits2(r16,v)do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRMROM_SRAM_SEC_BITS_rkekSecBits 0x007F6
/* ---:--- */ #define bDRMROM_SRAM_SEC_BITS_rkekSecBits 16 /*bit*/
/* ---:--- */ #define LSb32DRMROM_SRAM_SEC_BITS_rkekSecBits 16 /*:31*/
/* ---:--- */ #define MSK32DRMROM_SRAM_SEC_BITS_rkekSecBits 0xFFFF0000
/* ---:--- */ #define GET32DRMROM_SRAM_SEC_BITS_rkekSecBits(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRMROM_SRAM_SEC_BITS_rkekSecBits(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMROM_SRAM_SEC_BITS_rkekSecBits(r32,v)do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRMROM_SRAM_SEC_BITS_rkekSecBits(r16,v)do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMROM_SRAM_SEC_BITS2 0x007F8
#define w32DRMROM_SRAM_SEC_BITS2 { \
UNSG32 uSEC_BITS_aeskSecBits : 16; \
UNSG32 _x007F8 : 16; \
}
/* @'007F8 */ union { UNSG32 u32DRMROM_SRAM_SEC_BITS2;
struct w32DRMROM_SRAM_SEC_BITS2;
};
/* [15: 0] */ #define BA_DRMROM_SRAM_SEC_BITS_aeskSecBits 0x007F8
/* ---:--- */ #define bDRMROM_SRAM_SEC_BITS_aeskSecBits 16 /*bit*/
/* ---:--- */ #define LSb32DRMROM_SRAM_SEC_BITS_aeskSecBits 0 /*:15*/
/* ---:--- */ #define MSK32DRMROM_SRAM_SEC_BITS_aeskSecBits 0x0000FFFF
/* ---:--- */ #define GET32DRMROM_SRAM_SEC_BITS_aeskSecBits(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMROM_SRAM_SEC_BITS_aeskSecBits(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMROM_SRAM_SEC_BITS_aeskSecBits(r32,v)do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMROM_SRAM_SEC_BITS_aeskSecBits(r16,v)do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMROM_SRAM_otpStatus 0x007FC
/* @'007FC */ SIE_OTP_STATUS ie_otpStatus;
#define RA_DRMROM_SRAM_shaCtx 0x00800
/* @'00800 */ SIE_SHA1_CTXDAT ie_shaCtx;
#define RA_DRMROM_SRAM_userKeyCtx 0x00860
/* @'00860 */ SIE_USERKEY_CTX ie_userKeyCtx;
#define RA_DRMROM_SRAM_rsaCtx 0x00A48
/* @'00A48 */ SIE_RSA_CTXDAT ie_rsaCtx;
#define RA_DRMROM_SRAM_bufTmp 0x00ED0
/* @'00ED0 */ SIE_UINT128 ie_bufTmp;
UNSG32 _PAD_000[(0x00FF0-0x00EE0)/4];
#define RA_DRMROM_SRAM_stack 0x00FF0
/* @'00FF0 */ SIE_UINT128 ie_stack;
#define RA_DRMROM_SRAM_dsTransBuf 0x01000
/* @'01000 */ SIE_UINT128 ie_dsTransBuf [256];
#define arr_DRMROM_SRAM_dsTransBuf 256
} SIE_DRMROM_SRAM;
#define dftDRMROM_SRAM_SEC_BITS 0x00000000
typedef union { UNSG32 u32;
struct w32DRMROM_SRAM_SEC_BITS;
} T32DRMROM_SRAM_SEC_BITS;
#define dftDRMROM_SRAM_SEC_BITS1 0x00000000
typedef union { UNSG32 u32;
struct w32DRMROM_SRAM_SEC_BITS1;
} T32DRMROM_SRAM_SEC_BITS1;
#define dftDRMROM_SRAM_SEC_BITS2 0x00000000
typedef union { UNSG32 u32;
struct w32DRMROM_SRAM_SEC_BITS2;
} T32DRMROM_SRAM_SEC_BITS2;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRMROM_SRAM_drvrd (SIE_DRMROM_SRAM *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRMROM_SRAM_drvwr (SIE_DRMROM_SRAM *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRMROM_SRAM_reset (SIE_DRMROM_SRAM *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRMROM_SRAM_check(p,pie,ps8name,hfpErrLOG) DRMROM_SRAM_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRMROM_SRAM_print(p, ps8name,hfpErrLOG) DRMROM_SRAM_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRMROM_SRAM_cmp (SIE_DRMROM_SRAM *p, SIE_DRMROM_SRAM *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRMROM_SRAM_import(SIE_DRMROM_SRAM *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRMROM_SRAM_export(SIE_DRMROM_SRAM *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRMROM_SRAM
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_CMD
* @ CMD (W) 0
* %unsigned 8 tag 0
* * *
* * Command ordinal, LD_FIGOIMG or LD_ARMIMG
* * 0
* %unsigned 24 nonce 0
* * *
* * Command ID
* * 0
* @
* %unsigned 32 crcCmd32 0
* * *
* * Command CRC32 value
* @
* $UINT32 RET_BODY [6]
**********************************************************************************************************************/
#ifdef h_DRM_CMD
#else
#define h_DRM_CMD
#define \
AR_DRM_CMD \
3
#define \
AB_DRM_CMD \
4
typedef struct SIE_DRM_CMD {
#define RA_DRM_CMD_CMD 0x00000
#define w32DRM_CMD_CMD { \
UNSG32 uCMD_tag : 8; \
UNSG32 uCMD_nonce : 24; \
}
/* @'00000 */ union { UNSG32 u32DRM_CMD_CMD;
struct w32DRM_CMD_CMD;
};
/* [ 7: 0] */ #define BA_DRM_CMD_CMD_tag 0x00000
/* ---:--- */ #define bDRM_CMD_CMD_tag 8 /*bit*/
/* ---:--- */ #define LSb32DRM_CMD_CMD_tag 0 /*: 7*/
/* ---:--- */ #define MSK32DRM_CMD_CMD_tag 0x000000FF
/* ---:--- */ #define GET32DRM_CMD_CMD_tag(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16DRM_CMD_CMD_tag(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRM_CMD_CMD_tag(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_CMD_CMD_tag(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [31: 8] */ #define BA_DRM_CMD_CMD_nonce 0x00001
/* ---:--- */ #define bDRM_CMD_CMD_nonce 24 /*bit*/
/* ---:--- */ #define LSb32DRM_CMD_CMD_nonce 8 /*:31*/
/* ---:--- */ #define MSK32DRM_CMD_CMD_nonce 0xFFFFFF00
/* ---:--- */ #define GET32DRM_CMD_CMD_nonce(r32) (((r32)>> 8)&0xFFFFFF)
/* ---:--- */ #define GET16DRM_CMD_CMD_nonce(r16) (((r16)>> 8)&0xFFFFFF)
/* ---:--- */ #define SET32DRM_CMD_CMD_nonce(r32,v) do{(r32)&=~(0xFFFFFF<< 8);(r32)|=((v)&0xFFFFFF)<< 8;}while(0)
/* ---:--- */ #define SET16DRM_CMD_CMD_nonce(r16,v) do{(r16)&=~(0xFFFFFF<< 8);(r16)|=((v)&0xFFFFFF)<< 8;}while(0)
#define RA_DRM_CMD_D1th_ ISC_USE_ONLY 0x00004
#define w32DRM_CMD_D1th_ { \
UNSG32 u_crcCmd32 : 32; \
}
/* @'00004 */ struct w32DRM_CMD_D1th_;
/* [31: 0] */ #define BA_DRM_CMD_crcCmd32 0x00004
/* ---:--- */ #define bDRM_CMD_crcCmd32 32 /*bit*/
/* ---:--- */ #define LSb32DRM_CMD_crcCmd32 0 /*:31*/
/* ---:--- */ #define MSK32DRM_CMD_crcCmd32 0xFFFFFFFF
/* ---:--- */ #define GET32DRM_CMD_crcCmd32(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRM_CMD_crcCmd32(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRM_CMD_crcCmd32(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_CMD_crcCmd32(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRM_CMD_RET_BODY 0x00008
/* @'00008 */ SIE_UINT32 ie_RET_BODY;
} SIE_DRM_CMD;
#define dftDRM_CMD_CMD 0x00000000
typedef union { UNSG32 u32;
struct w32DRM_CMD_CMD;
} T32DRM_CMD_CMD;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_CMD_drvrd (SIE_DRM_CMD *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_CMD_drvwr (SIE_DRM_CMD *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_CMD_reset (SIE_DRM_CMD *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_CMD_check(p,pie,ps8name,hfpErrLOG) DRM_CMD_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_CMD_print(p, ps8name,hfpErrLOG) DRM_CMD_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_CMD_cmp (SIE_DRM_CMD *p, SIE_DRM_CMD *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_CMD_import(SIE_DRM_CMD *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_CMD_export(SIE_DRM_CMD *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_CMD
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRM_RSP
* @ RSP (R) 0
* %unsigned 8 tag 0
* * *
* * Response ordinal, LD_FIGOIMG or LD_ARMIMG
* * 0
* @
* %unsigned 32 crcRsp32 0
* * *
* * Response CRC32 value calculated with corresponding command nonce value
* * 0
* @
* %unsigned 32 error 0
* * *
* * Response error code. 0 : Succeed
* * 0
* @
* %unsigned 32 reserved 0
* * *
* * reserved
* * 0
**********************************************************************************************************************/
#ifdef h_DRM_RSP
#else
#define h_DRM_RSP
#define \
AR_DRM_RSP \
4
#define \
AB_DRM_RSP \
4
typedef struct SIE_DRM_RSP {
#define RA_DRM_RSP_RSP 0x00000
#define w32DRM_RSP_RSP { \
UNSG32 uRSP_tag : 8; \
UNSG32 _x00000 : 24; \
}
/* @'00000 */ union { UNSG32 u32DRM_RSP_RSP;
struct w32DRM_RSP_RSP;
};
/* [ 7: 0] */ #define BA_DRM_RSP_RSP_tag 0x00000
/* ---:--- */ #define bDRM_RSP_RSP_tag 8 /*bit*/
/* ---:--- */ #define LSb32DRM_RSP_RSP_tag 0 /*: 7*/
/* ---:--- */ #define MSK32DRM_RSP_RSP_tag 0x000000FF
/* ---:--- */ #define GET32DRM_RSP_RSP_tag(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16DRM_RSP_RSP_tag(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRM_RSP_RSP_tag(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_RSP_RSP_tag(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
#define RA_DRM_RSP_D1th_ ISC_USE_ONLY 0x00004
#define w32DRM_RSP_D1th_ { \
UNSG32 u_crcRsp32 : 32; \
}
/* @'00004 */ struct w32DRM_RSP_D1th_;
/* [31: 0] */ #define BA_DRM_RSP_crcRsp32 0x00004
/* ---:--- */ #define bDRM_RSP_crcRsp32 32 /*bit*/
/* ---:--- */ #define LSb32DRM_RSP_crcRsp32 0 /*:31*/
/* ---:--- */ #define MSK32DRM_RSP_crcRsp32 0xFFFFFFFF
/* ---:--- */ #define GET32DRM_RSP_crcRsp32(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRM_RSP_crcRsp32(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRM_RSP_crcRsp32(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_RSP_crcRsp32(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRM_RSP_D2th_ ISC_USE_ONLY 0x00008
#define w32DRM_RSP_D2th_ { \
UNSG32 u_error : 32; \
}
/* @'00008 */ struct w32DRM_RSP_D2th_;
/* [31: 0] */ #define BA_DRM_RSP_error 0x00008
/* ---:--- */ #define bDRM_RSP_error 32 /*bit*/
/* ---:--- */ #define LSb32DRM_RSP_error 0 /*:31*/
/* ---:--- */ #define MSK32DRM_RSP_error 0xFFFFFFFF
/* ---:--- */ #define GET32DRM_RSP_error(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRM_RSP_error(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRM_RSP_error(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_RSP_error(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRM_RSP_D3th_ ISC_USE_ONLY 0x0000C
#define w32DRM_RSP_D3th_ { \
UNSG32 u_reserved : 32; \
}
/* @'0000C */ struct w32DRM_RSP_D3th_;
/* [31: 0] */ #define BA_DRM_RSP_reserved 0x0000C
/* ---:--- */ #define bDRM_RSP_reserved 32 /*bit*/
/* ---:--- */ #define LSb32DRM_RSP_reserved 0 /*:31*/
/* ---:--- */ #define MSK32DRM_RSP_reserved 0xFFFFFFFF
/* ---:--- */ #define GET32DRM_RSP_reserved(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRM_RSP_reserved(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRM_RSP_reserved(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_RSP_reserved(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_DRM_RSP;
#define dftDRM_RSP_RSP 0x00000000
typedef union { UNSG32 u32;
struct w32DRM_RSP_RSP;
} T32DRM_RSP_RSP;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRM_RSP_drvrd (SIE_DRM_RSP *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRM_RSP_drvwr (SIE_DRM_RSP *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRM_RSP_reset (SIE_DRM_RSP *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRM_RSP_check(p,pie,ps8name,hfpErrLOG) DRM_RSP_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRM_RSP_print(p, ps8name,hfpErrLOG) DRM_RSP_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRM_RSP_cmp (SIE_DRM_RSP *p, SIE_DRM_RSP *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRM_RSP_import(SIE_DRM_RSP *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRM_RSP_export(SIE_DRM_RSP *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRM_RSP
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRMCMD_HASH
* @
* %unsigned 8 cmdCode 0
* * *
* * DRMCMD_SHA1_START
* * DRMCMD_SHA1_UPDATE
* * DRMCMD_SHA1_END.
* * DRMCMD_HMAC_START
* * DRMCMD_HMAC_UPDATE
* * DRMCMD_HMAC_END
* * 0
* %unsigned 8 cmdID 0
* * *
* * Command ID
* * 0
* @
* $DRM_CTXID hashID 0
* * *
* * Hash conetxt ID
* * 0
* @
* %unsigned 32 datSz 0
* * *
* * The number of bytes in DAT_SRCADDR.
* * 0
* @
* %unsigned 32 datSrcAddr 0
* * *
* * DDR address where the data is stored
* @
* %unsigned 32 keyID 0
* * *
* * Key context ID
* @
* %unsigned 32 authDat 0
* * *
* * Command authentication data
**********************************************************************************************************************/
#ifdef h_DRMCMD_HASH
#else
#define h_DRMCMD_HASH
#define \
AR_DRMCMD_HASH \
6
#define \
AB_DRMCMD_HASH \
5
typedef struct SIE_DRMCMD_HASH {
#define RA_DRMCMD_HASH_D0th_ ISC_USE_ONLY 0x00000
#define w32DRMCMD_HASH_D0th_ { \
UNSG32 u_cmdCode : 8; \
UNSG32 u_cmdID : 8; \
UNSG32 _x00000 : 16; \
}
/* @'00000 */ struct w32DRMCMD_HASH_D0th_;
/* [ 7: 0] */ #define BA_DRMCMD_HASH_cmdCode 0x00000
/* ---:--- */ #define bDRMCMD_HASH_cmdCode 8 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_HASH_cmdCode 0 /*: 7*/
/* ---:--- */ #define MSK32DRMCMD_HASH_cmdCode 0x000000FF
/* ---:--- */ #define GET32DRMCMD_HASH_cmdCode(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16DRMCMD_HASH_cmdCode(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRMCMD_HASH_cmdCode(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMCMD_HASH_cmdCode(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_DRMCMD_HASH_cmdID 0x00001
/* ---:--- */ #define bDRMCMD_HASH_cmdID 8 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_HASH_cmdID 8 /*:15*/
/* ---:--- */ #define MSK32DRMCMD_HASH_cmdID 0x0000FF00
/* ---:--- */ #define GET32DRMCMD_HASH_cmdID(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16DRMCMD_HASH_cmdID(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32DRMCMD_HASH_cmdID(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16DRMCMD_HASH_cmdID(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
#define RA_DRMCMD_HASH_hashID 0x00004
/* @'00004 */ SIE_DRM_CTXID ie_hashID;
#define RA_DRMCMD_HASH_D2th_ ISC_USE_ONLY 0x00008
#define w32DRMCMD_HASH_D2th_ { \
UNSG32 u_datSz : 32; \
}
/* @'00008 */ struct w32DRMCMD_HASH_D2th_;
/* [31: 0] */ #define BA_DRMCMD_HASH_datSz 0x00008
/* ---:--- */ #define bDRMCMD_HASH_datSz 32 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_HASH_datSz 0 /*:31*/
/* ---:--- */ #define MSK32DRMCMD_HASH_datSz 0xFFFFFFFF
/* ---:--- */ #define GET32DRMCMD_HASH_datSz(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMCMD_HASH_datSz(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMCMD_HASH_datSz(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMCMD_HASH_datSz(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRMCMD_HASH_D3th_ ISC_USE_ONLY 0x0000C
#define w32DRMCMD_HASH_D3th_ { \
UNSG32 u_datSrcAddr : 32; \
}
/* @'0000C */ struct w32DRMCMD_HASH_D3th_;
/* [31: 0] */ #define BA_DRMCMD_HASH_datSrcAddr 0x0000C
/* ---:--- */ #define bDRMCMD_HASH_datSrcAddr 32 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_HASH_datSrcAddr 0 /*:31*/
/* ---:--- */ #define MSK32DRMCMD_HASH_datSrcAddr 0xFFFFFFFF
/* ---:--- */ #define GET32DRMCMD_HASH_datSrcAddr(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMCMD_HASH_datSrcAddr(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMCMD_HASH_datSrcAddr(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMCMD_HASH_datSrcAddr(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRMCMD_HASH_D4th_ ISC_USE_ONLY 0x00010
#define w32DRMCMD_HASH_D4th_ { \
UNSG32 u_keyID : 32; \
}
/* @'00010 */ struct w32DRMCMD_HASH_D4th_;
/* [31: 0] */ #define BA_DRMCMD_HASH_keyID 0x00010
/* ---:--- */ #define bDRMCMD_HASH_keyID 32 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_HASH_keyID 0 /*:31*/
/* ---:--- */ #define MSK32DRMCMD_HASH_keyID 0xFFFFFFFF
/* ---:--- */ #define GET32DRMCMD_HASH_keyID(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMCMD_HASH_keyID(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMCMD_HASH_keyID(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMCMD_HASH_keyID(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRMCMD_HASH_D5th_ ISC_USE_ONLY 0x00014
#define w32DRMCMD_HASH_D5th_ { \
UNSG32 u_authDat : 32; \
}
/* @'00014 */ struct w32DRMCMD_HASH_D5th_;
/* [31: 0] */ #define BA_DRMCMD_HASH_authDat 0x00014
/* ---:--- */ #define bDRMCMD_HASH_authDat 32 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_HASH_authDat 0 /*:31*/
/* ---:--- */ #define MSK32DRMCMD_HASH_authDat 0xFFFFFFFF
/* ---:--- */ #define GET32DRMCMD_HASH_authDat(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMCMD_HASH_authDat(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMCMD_HASH_authDat(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMCMD_HASH_authDat(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_DRMCMD_HASH;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRMCMD_HASH_drvrd (SIE_DRMCMD_HASH *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRMCMD_HASH_drvwr (SIE_DRMCMD_HASH *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRMCMD_HASH_reset (SIE_DRMCMD_HASH *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRMCMD_HASH_check(p,pie,ps8name,hfpErrLOG) DRMCMD_HASH_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRMCMD_HASH_print(p, ps8name,hfpErrLOG) DRMCMD_HASH_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRMCMD_HASH_cmp (SIE_DRMCMD_HASH *p, SIE_DRMCMD_HASH *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRMCMD_HASH_import(SIE_DRMCMD_HASH *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRMCMD_HASH_export(SIE_DRMCMD_HASH *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRMCMD_HASH
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRMCMD_KEY_ENCDEC
* @
* %unsigned 8 cmdCode 0
* * *
* * DRMCMD_AES128_ENC
* * DRMCMD_AES128_DEC
* * DRMCMD_DES_ENC
* * DRMCMD_DES_DEC
* * DRMCMD_3xDES_ENC
* * DRMCMD_3xDES_DEC
* * 0
* %unsigned 8 cmdID 0
* * *
* * Command ID
* * 0
* @
* $DRM_CTXID keyID 0
* * *
* * Key context ID
* * 0
* @
* %unsigned 32 datSz 0
* * *
* * The number of bytes in DAT_SRCADDR.
* * 0
* @
* %unsigned 32 datSrcAddr 0
* * *
* * DDR address where the data is stored
* @
* %unsigned 1 isSRAMAddr 0
* * *
* * Flag to indicate whether the destination address belongs to SRAM
* %unsigned 31 datDstAddr 0
* * *
* * DDR or SRAM address where the data is stored
* @
* %unsigned 32 authDat 0
* * *
* * Command authentication data
**********************************************************************************************************************/
#ifdef h_DRMCMD_KEY_ENCDEC
#else
#define h_DRMCMD_KEY_ENCDEC
#define \
AR_DRMCMD_KEY_ENCDEC \
6
#define \
AB_DRMCMD_KEY_ENCDEC \
5
typedef struct SIE_DRMCMD_KEY_ENCDEC {
#define RA_DRMCMD_KEY_ENCDEC_D0th_ ISC_USE_ONLY 0x00000
#define w32DRMCMD_KEY_ENCDEC_D0th_ { \
UNSG32 u_cmdCode : 8; \
UNSG32 u_cmdID : 8; \
UNSG32 _x00000 : 16; \
}
/* @'00000 */ struct w32DRMCMD_KEY_ENCDEC_D0th_;
/* [ 7: 0] */ #define BA_DRMCMD_KEY_ENCDEC_cmdCode 0x00000
/* ---:--- */ #define bDRMCMD_KEY_ENCDEC_cmdCode 8 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_KEY_ENCDEC_cmdCode 0 /*: 7*/
/* ---:--- */ #define MSK32DRMCMD_KEY_ENCDEC_cmdCode 0x000000FF
/* ---:--- */ #define GET32DRMCMD_KEY_ENCDEC_cmdCode(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16DRMCMD_KEY_ENCDEC_cmdCode(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRMCMD_KEY_ENCDEC_cmdCode(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMCMD_KEY_ENCDEC_cmdCode(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_DRMCMD_KEY_ENCDEC_cmdID 0x00001
/* ---:--- */ #define bDRMCMD_KEY_ENCDEC_cmdID 8 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_KEY_ENCDEC_cmdID 8 /*:15*/
/* ---:--- */ #define MSK32DRMCMD_KEY_ENCDEC_cmdID 0x0000FF00
/* ---:--- */ #define GET32DRMCMD_KEY_ENCDEC_cmdID(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16DRMCMD_KEY_ENCDEC_cmdID(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32DRMCMD_KEY_ENCDEC_cmdID(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16DRMCMD_KEY_ENCDEC_cmdID(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
#define RA_DRMCMD_KEY_ENCDEC_keyID 0x00004
/* @'00004 */ SIE_DRM_CTXID ie_keyID;
#define RA_DRMCMD_KEY_ENCDEC_D2th_ ISC_USE_ONLY 0x00008
#define w32DRMCMD_KEY_ENCDEC_D2th_ { \
UNSG32 u_datSz : 32; \
}
/* @'00008 */ struct w32DRMCMD_KEY_ENCDEC_D2th_;
/* [31: 0] */ #define BA_DRMCMD_KEY_ENCDEC_datSz 0x00008
/* ---:--- */ #define bDRMCMD_KEY_ENCDEC_datSz 32 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_KEY_ENCDEC_datSz 0 /*:31*/
/* ---:--- */ #define MSK32DRMCMD_KEY_ENCDEC_datSz 0xFFFFFFFF
/* ---:--- */ #define GET32DRMCMD_KEY_ENCDEC_datSz(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMCMD_KEY_ENCDEC_datSz(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMCMD_KEY_ENCDEC_datSz(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMCMD_KEY_ENCDEC_datSz(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRMCMD_KEY_ENCDEC_D3th_ ISC_USE_ONLY 0x0000C
#define w32DRMCMD_KEY_ENCDEC_D3th_ { \
UNSG32 u_datSrcAddr : 32; \
}
/* @'0000C */ struct w32DRMCMD_KEY_ENCDEC_D3th_;
/* [31: 0] */ #define BA_DRMCMD_KEY_ENCDEC_datSrcAddr 0x0000C
/* ---:--- */ #define bDRMCMD_KEY_ENCDEC_datSrcAddr 32 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_KEY_ENCDEC_datSrcAddr 0 /*:31*/
/* ---:--- */ #define MSK32DRMCMD_KEY_ENCDEC_datSrcAddr 0xFFFFFFFF
/* ---:--- */ #define GET32DRMCMD_KEY_ENCDEC_datSrcAddr(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMCMD_KEY_ENCDEC_datSrcAddr(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMCMD_KEY_ENCDEC_datSrcAddr(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMCMD_KEY_ENCDEC_datSrcAddr(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRMCMD_KEY_ENCDEC_D4th_ ISC_USE_ONLY 0x00010
#define w32DRMCMD_KEY_ENCDEC_D4th_ { \
UNSG32 u_isSRAMAddr : 1; \
UNSG32 u_datDstAddr : 31; \
}
/* @'00010 */ struct w32DRMCMD_KEY_ENCDEC_D4th_;
/* [ 0: 0] */ #define BA_DRMCMD_KEY_ENCDEC_isSRAMAddr 0x00010
/* ---:--- */ #define bDRMCMD_KEY_ENCDEC_isSRAMAddr 1 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_KEY_ENCDEC_isSRAMAddr 0 /*: 0*/
/* ---:--- */ #define MSK32DRMCMD_KEY_ENCDEC_isSRAMAddr 0x00000001
/* ---:--- */ #define GET32DRMCMD_KEY_ENCDEC_isSRAMAddr(r32) (((r32)>> 0)&0x0001)
/* ---:--- */ #define GET16DRMCMD_KEY_ENCDEC_isSRAMAddr(r16) (((r16)>> 0)&0x0001)
/* ---:--- */ #define SET32DRMCMD_KEY_ENCDEC_isSRAMAddr(r32,v) do{(r32)&=~(0x0001<< 0);(r32)|=((v)&0x0001)<< 0;}while(0)
/* ---:--- */ #define SET16DRMCMD_KEY_ENCDEC_isSRAMAddr(r16,v) do{(r16)&=~(0x0001<< 0);(r16)|=((v)&0x0001)<< 0;}while(0)
/* [31: 1] */ #define BA_DRMCMD_KEY_ENCDEC_datDstAddr 0x00010
/* ---:--- */ #define bDRMCMD_KEY_ENCDEC_datDstAddr 31 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_KEY_ENCDEC_datDstAddr 1 /*:31*/
/* ---:--- */ #define MSK32DRMCMD_KEY_ENCDEC_datDstAddr 0xFFFFFFFE
/* ---:--- */ #define GET32DRMCMD_KEY_ENCDEC_datDstAddr(r32) (((r32)>> 1)&0x7FFFFFFF)
/* ---:--- */ #define GET16DRMCMD_KEY_ENCDEC_datDstAddr(r16) (((r16)>> 1)&0x7FFFFFFF)
/* ---:--- */ #define SET32DRMCMD_KEY_ENCDEC_datDstAddr(r32,v) do{(r32)&=~(0x7FFFFFFF<< 1);(r32)|=((v)&0x7FFFFFFF)<< 1;}while(0)
/* ---:--- */ #define SET16DRMCMD_KEY_ENCDEC_datDstAddr(r16,v) do{(r16)&=~(0x7FFFFFFF<< 1);(r16)|=((v)&0x7FFFFFFF)<< 1;}while(0)
#define RA_DRMCMD_KEY_ENCDEC_D5th_ ISC_USE_ONLY 0x00014
#define w32DRMCMD_KEY_ENCDEC_D5th_ { \
UNSG32 u_authDat : 32; \
}
/* @'00014 */ struct w32DRMCMD_KEY_ENCDEC_D5th_;
/* [31: 0] */ #define BA_DRMCMD_KEY_ENCDEC_authDat 0x00014
/* ---:--- */ #define bDRMCMD_KEY_ENCDEC_authDat 32 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_KEY_ENCDEC_authDat 0 /*:31*/
/* ---:--- */ #define MSK32DRMCMD_KEY_ENCDEC_authDat 0xFFFFFFFF
/* ---:--- */ #define GET32DRMCMD_KEY_ENCDEC_authDat(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMCMD_KEY_ENCDEC_authDat(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMCMD_KEY_ENCDEC_authDat(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMCMD_KEY_ENCDEC_authDat(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_DRMCMD_KEY_ENCDEC;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRMCMD_KEY_ENCDEC_drvrd (SIE_DRMCMD_KEY_ENCDEC *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRMCMD_KEY_ENCDEC_drvwr (SIE_DRMCMD_KEY_ENCDEC *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRMCMD_KEY_ENCDEC_reset (SIE_DRMCMD_KEY_ENCDEC *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRMCMD_KEY_ENCDEC_check(p,pie,ps8name,hfpErrLOG) DRMCMD_KEY_ENCDEC_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRMCMD_KEY_ENCDEC_print(p, ps8name,hfpErrLOG) DRMCMD_KEY_ENCDEC_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRMCMD_KEY_ENCDEC_cmp (SIE_DRMCMD_KEY_ENCDEC *p, SIE_DRMCMD_KEY_ENCDEC *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRMCMD_KEY_ENCDEC_import(SIE_DRMCMD_KEY_ENCDEC *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRMCMD_KEY_ENCDEC_export(SIE_DRMCMD_KEY_ENCDEC *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRMCMD_KEY_ENCDEC
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRMCMD_KEY_TRANS
* @
* %unsigned 8 cmdCode 0
* * *
* * DRMCMD_IMPORT_KEY
* * DRMCMD_EXPORT_KEY
* * 0
* %unsigned 8 cmdID 0
* * *
* * Command ID
* * 0
* @
* $DRM_CTXID parentKeyID 0
* * *
* * Parent key context ID. For export operation, it MUST be valid key
* * 0
* @
* $DRM_CTXID keyID 0
* * *
* * Destination key context ID
* * 0
* @
* %unsigned 32 datSz 0
* * *
* * The number of bytes in DAT_SRCADDR.
* * 0
* @
* %unsigned 32 datSrcAddr 0
* * *
* * DDR address where the data is stored
* @
* %unsigned 32 authDat 0
* * *
* * Command authentication data
**********************************************************************************************************************/
#ifdef h_DRMCMD_KEY_TRANS
#else
#define h_DRMCMD_KEY_TRANS
#define \
AR_DRMCMD_KEY_TRANS \
6
#define \
AB_DRMCMD_KEY_TRANS \
5
typedef struct SIE_DRMCMD_KEY_TRANS {
#define RA_DRMCMD_KEY_TRANS_D0th_ ISC_USE_ONLY 0x00000
#define w32DRMCMD_KEY_TRANS_D0th_ { \
UNSG32 u_cmdCode : 8; \
UNSG32 u_cmdID : 8; \
UNSG32 _x00000 : 16; \
}
/* @'00000 */ struct w32DRMCMD_KEY_TRANS_D0th_;
/* [ 7: 0] */ #define BA_DRMCMD_KEY_TRANS_cmdCode 0x00000
/* ---:--- */ #define bDRMCMD_KEY_TRANS_cmdCode 8 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_KEY_TRANS_cmdCode 0 /*: 7*/
/* ---:--- */ #define MSK32DRMCMD_KEY_TRANS_cmdCode 0x000000FF
/* ---:--- */ #define GET32DRMCMD_KEY_TRANS_cmdCode(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16DRMCMD_KEY_TRANS_cmdCode(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRMCMD_KEY_TRANS_cmdCode(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMCMD_KEY_TRANS_cmdCode(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_DRMCMD_KEY_TRANS_cmdID 0x00001
/* ---:--- */ #define bDRMCMD_KEY_TRANS_cmdID 8 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_KEY_TRANS_cmdID 8 /*:15*/
/* ---:--- */ #define MSK32DRMCMD_KEY_TRANS_cmdID 0x0000FF00
/* ---:--- */ #define GET32DRMCMD_KEY_TRANS_cmdID(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16DRMCMD_KEY_TRANS_cmdID(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32DRMCMD_KEY_TRANS_cmdID(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16DRMCMD_KEY_TRANS_cmdID(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
#define RA_DRMCMD_KEY_TRANS_parentKeyID 0x00004
/* @'00004 */ SIE_DRM_CTXID ie_parentKeyID;
#define RA_DRMCMD_KEY_TRANS_keyID 0x00008
/* @'00008 */ SIE_DRM_CTXID ie_keyID;
#define RA_DRMCMD_KEY_TRANS_D3th_ ISC_USE_ONLY 0x0000C
#define w32DRMCMD_KEY_TRANS_D3th_ { \
UNSG32 u_datSz : 32; \
}
/* @'0000C */ struct w32DRMCMD_KEY_TRANS_D3th_;
/* [31: 0] */ #define BA_DRMCMD_KEY_TRANS_datSz 0x0000C
/* ---:--- */ #define bDRMCMD_KEY_TRANS_datSz 32 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_KEY_TRANS_datSz 0 /*:31*/
/* ---:--- */ #define MSK32DRMCMD_KEY_TRANS_datSz 0xFFFFFFFF
/* ---:--- */ #define GET32DRMCMD_KEY_TRANS_datSz(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMCMD_KEY_TRANS_datSz(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMCMD_KEY_TRANS_datSz(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMCMD_KEY_TRANS_datSz(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRMCMD_KEY_TRANS_D4th_ ISC_USE_ONLY 0x00010
#define w32DRMCMD_KEY_TRANS_D4th_ { \
UNSG32 u_datSrcAddr : 32; \
}
/* @'00010 */ struct w32DRMCMD_KEY_TRANS_D4th_;
/* [31: 0] */ #define BA_DRMCMD_KEY_TRANS_datSrcAddr 0x00010
/* ---:--- */ #define bDRMCMD_KEY_TRANS_datSrcAddr 32 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_KEY_TRANS_datSrcAddr 0 /*:31*/
/* ---:--- */ #define MSK32DRMCMD_KEY_TRANS_datSrcAddr 0xFFFFFFFF
/* ---:--- */ #define GET32DRMCMD_KEY_TRANS_datSrcAddr(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMCMD_KEY_TRANS_datSrcAddr(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMCMD_KEY_TRANS_datSrcAddr(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMCMD_KEY_TRANS_datSrcAddr(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRMCMD_KEY_TRANS_D5th_ ISC_USE_ONLY 0x00014
#define w32DRMCMD_KEY_TRANS_D5th_ { \
UNSG32 u_authDat : 32; \
}
/* @'00014 */ struct w32DRMCMD_KEY_TRANS_D5th_;
/* [31: 0] */ #define BA_DRMCMD_KEY_TRANS_authDat 0x00014
/* ---:--- */ #define bDRMCMD_KEY_TRANS_authDat 32 /*bit*/
/* ---:--- */ #define LSb32DRMCMD_KEY_TRANS_authDat 0 /*:31*/
/* ---:--- */ #define MSK32DRMCMD_KEY_TRANS_authDat 0xFFFFFFFF
/* ---:--- */ #define GET32DRMCMD_KEY_TRANS_authDat(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMCMD_KEY_TRANS_authDat(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMCMD_KEY_TRANS_authDat(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMCMD_KEY_TRANS_authDat(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_DRMCMD_KEY_TRANS;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRMCMD_KEY_TRANS_drvrd (SIE_DRMCMD_KEY_TRANS *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRMCMD_KEY_TRANS_drvwr (SIE_DRMCMD_KEY_TRANS *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRMCMD_KEY_TRANS_reset (SIE_DRMCMD_KEY_TRANS *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRMCMD_KEY_TRANS_check(p,pie,ps8name,hfpErrLOG) DRMCMD_KEY_TRANS_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRMCMD_KEY_TRANS_print(p, ps8name,hfpErrLOG) DRMCMD_KEY_TRANS_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRMCMD_KEY_TRANS_cmp (SIE_DRMCMD_KEY_TRANS *p, SIE_DRMCMD_KEY_TRANS *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRMCMD_KEY_TRANS_import(SIE_DRMCMD_KEY_TRANS *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRMCMD_KEY_TRANS_export(SIE_DRMCMD_KEY_TRANS *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRMCMD_KEY_TRANS
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: CRYPTO_ENGINE_CONST
* @ CMD
* %unsigned 8 CODE
* : AES128_ENC 0x0
* : AES128_DEC 0x1
* : RNG_RDDATA 0x2
* : SHA1_INIT 0x3
* : SHA1_UPDATE 0x4
* : SHA1_FINAL 0x5
* : RC4_ENC 0x6
* : RC4_DEC 0x7
* : RC4_SETKEY 0x8 AES
* %unsigned 8 MODE
* : ECB 0x0
* : CBC 0x1
* : CTR 0x2
* : CTS 0x3 ENGINE
* %unsigned 8 TYPE
* : AES 0x01
* : HASH 0x02
* : RNG 0x03
* : RC4 0x04
* : READ_OTP 0x05
**********************************************************************************************************************/
#ifdef h_CRYPTO_ENGINE_CONST
#else
#define h_CRYPTO_ENGINE_CONST
#define \
AR_CRYPTO_ENGINE_CONST \
1
#define \
AB_CRYPTO_ENGINE_CONST \
2
typedef struct SIE_CRYPTO_ENGINE_CONST {
#define RA_CRYPTO_ENGINE_CONST_CMD 0x00000
#define w32CRYPTO_ENGINE_CONST_CMD { \
UNSG32 uCMD_CODE : 8; \
UNSG32 uCMD_MODE : 8; \
UNSG32 uCMD_TYPE : 8; \
UNSG32 _x00000 : 8; \
}
/* @'00000 */ union { UNSG32 u32CRYPTO_ENGINE_CONST_CMD;
struct w32CRYPTO_ENGINE_CONST_CMD;
};
/* [ 7: 0] */ #define BA_CRYPTO_ENGINE_CONST_CMD_CODE 0x00000
/* ---:--- */ #define bCRYPTO_ENGINE_CONST_CMD_CODE 8 /*bit*/
/* ---:--- */ #define LSb32CRYPTO_ENGINE_CONST_CMD_CODE 0 /*: 7*/
/* ---:--- */ #define MSK32CRYPTO_ENGINE_CONST_CMD_CODE 0x000000FF
/* ---:--- */ #define GET32CRYPTO_ENGINE_CONST_CMD_CODE(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16CRYPTO_ENGINE_CONST_CMD_CODE(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32CRYPTO_ENGINE_CONST_CMD_CODE(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16CRYPTO_ENGINE_CONST_CMD_CODE(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
#define CRYPTO_ENGINE_CONST_CMD_CODE_AES128_ENC 0x0
#define CRYPTO_ENGINE_CONST_CMD_CODE_AES128_DEC 0x1
#define CRYPTO_ENGINE_CONST_CMD_CODE_RNG_RDDATA 0x2
#define CRYPTO_ENGINE_CONST_CMD_CODE_SHA1_INIT 0x3
#define CRYPTO_ENGINE_CONST_CMD_CODE_SHA1_UPDATE 0x4
#define CRYPTO_ENGINE_CONST_CMD_CODE_SHA1_FINAL 0x5
#define CRYPTO_ENGINE_CONST_CMD_CODE_RC4_ENC 0x6
#define CRYPTO_ENGINE_CONST_CMD_CODE_RC4_DEC 0x7
#define CRYPTO_ENGINE_CONST_CMD_CODE_RC4_SETKEY 0x8
/* [15: 8] */ #define BA_CRYPTO_ENGINE_CONST_CMD_MODE 0x00001
/* ---:--- */ #define bCRYPTO_ENGINE_CONST_CMD_MODE 8 /*bit*/
/* ---:--- */ #define LSb32CRYPTO_ENGINE_CONST_CMD_MODE 8 /*:15*/
/* ---:--- */ #define MSK32CRYPTO_ENGINE_CONST_CMD_MODE 0x0000FF00
/* ---:--- */ #define GET32CRYPTO_ENGINE_CONST_CMD_MODE(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16CRYPTO_ENGINE_CONST_CMD_MODE(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32CRYPTO_ENGINE_CONST_CMD_MODE(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16CRYPTO_ENGINE_CONST_CMD_MODE(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
#define CRYPTO_ENGINE_CONST_CMD_MODE_ECB 0x0
#define CRYPTO_ENGINE_CONST_CMD_MODE_CBC 0x1
#define CRYPTO_ENGINE_CONST_CMD_MODE_CTR 0x2
#define CRYPTO_ENGINE_CONST_CMD_MODE_CTS 0x3
/* [23:16] */ #define BA_CRYPTO_ENGINE_CONST_CMD_TYPE 0x00002
/* ---:--- */ #define bCRYPTO_ENGINE_CONST_CMD_TYPE 8 /*bit*/
/* ---:--- */ #define LSb32CRYPTO_ENGINE_CONST_CMD_TYPE 16 /*:23*/
/* ---:--- */ #define MSK32CRYPTO_ENGINE_CONST_CMD_TYPE 0x00FF0000
/* ---:--- */ #define GET32CRYPTO_ENGINE_CONST_CMD_TYPE(r32) (((r32)>>16)&0x00FF)
/* ---:--- */ #define GET16CRYPTO_ENGINE_CONST_CMD_TYPE(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32CRYPTO_ENGINE_CONST_CMD_TYPE(r32,v) do{(r32)&=~(0x00FF<<16);(r32)|=((v)&0x00FF)<<16;}while(0)
/* ---:--- */ #define SET16CRYPTO_ENGINE_CONST_CMD_TYPE(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
#define CRYPTO_ENGINE_CONST_CMD_TYPE_AES 0x1
#define CRYPTO_ENGINE_CONST_CMD_TYPE_HASH 0x2
#define CRYPTO_ENGINE_CONST_CMD_TYPE_RNG 0x3
#define CRYPTO_ENGINE_CONST_CMD_TYPE_RC4 0x4
#define CRYPTO_ENGINE_CONST_CMD_TYPE_READ_OTP 0x5
} SIE_CRYPTO_ENGINE_CONST;
#define dftCRYPTO_ENGINE_CONST_CMD 0x00000000
typedef union { UNSG32 u32;
struct w32CRYPTO_ENGINE_CONST_CMD;
} T32CRYPTO_ENGINE_CONST_CMD;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 CRYPTO_ENGINE_CONST_drvrd (SIE_CRYPTO_ENGINE_CONST *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 CRYPTO_ENGINE_CONST_drvwr (SIE_CRYPTO_ENGINE_CONST *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void CRYPTO_ENGINE_CONST_reset (SIE_CRYPTO_ENGINE_CONST *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define CRYPTO_ENGINE_CONST_check(p,pie,ps8name,hfpErrLOG) CRYPTO_ENGINE_CONST_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define CRYPTO_ENGINE_CONST_print(p, ps8name,hfpErrLOG) CRYPTO_ENGINE_CONST_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 CRYPTO_ENGINE_CONST_cmp (SIE_CRYPTO_ENGINE_CONST *p, SIE_CRYPTO_ENGINE_CONST *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 CRYPTO_ENGINE_CONST_import(SIE_CRYPTO_ENGINE_CONST *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 CRYPTO_ENGINE_CONST_export(SIE_CRYPTO_ENGINE_CONST *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: CRYPTO_ENGINE_CONST
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: SPHAL_CMD_HASH
* @
* %unsigned 8 cmdCode 0
* * *
* * DRMCMD_SHA1_START
* * DRMCMD_SHA1_UPDATE
* * DRMCMD_SHA1_END.
* * DRMCMD_HMAC_START
* * DRMCMD_HMAC_UPDATE
* * DRMCMD_HMAC_END
* * 0
* %unsigned 8 cmdID 0
* * *
* * Command ID
* * 0
* @
* $DRM_CTXID hashID 0
* * *
* * Hash conetxt ID
* * 0
* @
* %unsigned 32 datSize 0
* * *
* * The number of bytes in DAT_SRCADDR.
* * 0
* @
* %unsigned 32 datSrcAddr 0
* * *
* * DDR address where the data is stored
* @
* %unsigned 32 hashValueAddr 0
* * *
* * Key context ID
* @
* %unsigned 32 reserved 0
**********************************************************************************************************************/
#ifdef h_SPHAL_CMD_HASH
#else
#define h_SPHAL_CMD_HASH
#define \
AR_SPHAL_CMD_HASH \
6
#define \
AB_SPHAL_CMD_HASH \
5
typedef struct SIE_SPHAL_CMD_HASH {
#define RA_SPHAL_CMD_HASH_D0th_ ISC_USE_ONLY 0x00000
#define w32SPHAL_CMD_HASH_D0th_ { \
UNSG32 u_cmdCode : 8; \
UNSG32 u_cmdID : 8; \
UNSG32 _x00000 : 16; \
}
/* @'00000 */ struct w32SPHAL_CMD_HASH_D0th_;
/* [ 7: 0] */ #define BA_SPHAL_CMD_HASH_cmdCode 0x00000
/* ---:--- */ #define bSPHAL_CMD_HASH_cmdCode 8 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_HASH_cmdCode 0 /*: 7*/
/* ---:--- */ #define MSK32SPHAL_CMD_HASH_cmdCode 0x000000FF
/* ---:--- */ #define GET32SPHAL_CMD_HASH_cmdCode(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16SPHAL_CMD_HASH_cmdCode(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32SPHAL_CMD_HASH_cmdCode(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_HASH_cmdCode(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_SPHAL_CMD_HASH_cmdID 0x00001
/* ---:--- */ #define bSPHAL_CMD_HASH_cmdID 8 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_HASH_cmdID 8 /*:15*/
/* ---:--- */ #define MSK32SPHAL_CMD_HASH_cmdID 0x0000FF00
/* ---:--- */ #define GET32SPHAL_CMD_HASH_cmdID(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16SPHAL_CMD_HASH_cmdID(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32SPHAL_CMD_HASH_cmdID(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_HASH_cmdID(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
#define RA_SPHAL_CMD_HASH_hashID 0x00004
/* @'00004 */ SIE_DRM_CTXID ie_hashID;
#define RA_SPHAL_CMD_HASH_D2th_ ISC_USE_ONLY 0x00008
#define w32SPHAL_CMD_HASH_D2th_ { \
UNSG32 u_datSize : 32; \
}
/* @'00008 */ struct w32SPHAL_CMD_HASH_D2th_;
/* [31: 0] */ #define BA_SPHAL_CMD_HASH_datSize 0x00008
/* ---:--- */ #define bSPHAL_CMD_HASH_datSize 32 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_HASH_datSize 0 /*:31*/
/* ---:--- */ #define MSK32SPHAL_CMD_HASH_datSize 0xFFFFFFFF
/* ---:--- */ #define GET32SPHAL_CMD_HASH_datSize(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SPHAL_CMD_HASH_datSize(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SPHAL_CMD_HASH_datSize(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_HASH_datSize(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_SPHAL_CMD_HASH_D3th_ ISC_USE_ONLY 0x0000C
#define w32SPHAL_CMD_HASH_D3th_ { \
UNSG32 u_datSrcAddr : 32; \
}
/* @'0000C */ struct w32SPHAL_CMD_HASH_D3th_;
/* [31: 0] */ #define BA_SPHAL_CMD_HASH_datSrcAddr 0x0000C
/* ---:--- */ #define bSPHAL_CMD_HASH_datSrcAddr 32 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_HASH_datSrcAddr 0 /*:31*/
/* ---:--- */ #define MSK32SPHAL_CMD_HASH_datSrcAddr 0xFFFFFFFF
/* ---:--- */ #define GET32SPHAL_CMD_HASH_datSrcAddr(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SPHAL_CMD_HASH_datSrcAddr(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SPHAL_CMD_HASH_datSrcAddr(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_HASH_datSrcAddr(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_SPHAL_CMD_HASH_D4th_ ISC_USE_ONLY 0x00010
#define w32SPHAL_CMD_HASH_D4th_ { \
UNSG32 u_hashValueAddr : 32; \
}
/* @'00010 */ struct w32SPHAL_CMD_HASH_D4th_;
/* [31: 0] */ #define BA_SPHAL_CMD_HASH_hashValueAddr 0x00010
/* ---:--- */ #define bSPHAL_CMD_HASH_hashValueAddr 32 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_HASH_hashValueAddr 0 /*:31*/
/* ---:--- */ #define MSK32SPHAL_CMD_HASH_hashValueAddr 0xFFFFFFFF
/* ---:--- */ #define GET32SPHAL_CMD_HASH_hashValueAddr(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SPHAL_CMD_HASH_hashValueAddr(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SPHAL_CMD_HASH_hashValueAddr(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_HASH_hashValueAddr(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_SPHAL_CMD_HASH_D5th_ ISC_USE_ONLY 0x00014
#define w32SPHAL_CMD_HASH_D5th_ { \
UNSG32 u_reserved : 32; \
}
/* @'00014 */ struct w32SPHAL_CMD_HASH_D5th_;
/* [31: 0] */ #define BA_SPHAL_CMD_HASH_reserved 0x00014
/* ---:--- */ #define bSPHAL_CMD_HASH_reserved 32 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_HASH_reserved 0 /*:31*/
/* ---:--- */ #define MSK32SPHAL_CMD_HASH_reserved 0xFFFFFFFF
/* ---:--- */ #define GET32SPHAL_CMD_HASH_reserved(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SPHAL_CMD_HASH_reserved(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SPHAL_CMD_HASH_reserved(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_HASH_reserved(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_SPHAL_CMD_HASH;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 SPHAL_CMD_HASH_drvrd (SIE_SPHAL_CMD_HASH *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 SPHAL_CMD_HASH_drvwr (SIE_SPHAL_CMD_HASH *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void SPHAL_CMD_HASH_reset (SIE_SPHAL_CMD_HASH *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define SPHAL_CMD_HASH_check(p,pie,ps8name,hfpErrLOG) SPHAL_CMD_HASH_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define SPHAL_CMD_HASH_print(p, ps8name,hfpErrLOG) SPHAL_CMD_HASH_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 SPHAL_CMD_HASH_cmp (SIE_SPHAL_CMD_HASH *p, SIE_SPHAL_CMD_HASH *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 SPHAL_CMD_HASH_import(SIE_SPHAL_CMD_HASH *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 SPHAL_CMD_HASH_export(SIE_SPHAL_CMD_HASH *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: SPHAL_CMD_HASH
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: SPHAL_CMD_ENCDEC
* @
* %unsigned 8 cmdCode 0
* * *
* * DRMCMD_AES128_ENC
* * DRMCMD_AES128_DEC
* * DRMCMD_DES_ENC
* * DRMCMD_DES_DEC
* * DRMCMD_3xDES_ENC
* * DRMCMD_3xDES_DEC
* * 0
* %unsigned 8 cmdID 0
* * *
* * Command ID
* * 0
* @
* $DRM_CTXID keyID 0
* * *
* * Key context ID
* * 0
* @
* %unsigned 32 datSize 0
* * *
* * The number of bytes in DAT_SRCADDR.
* * 0
* @
* %unsigned 32 datSrcAddr 0
* * *
* * DDR address where the data is stored
* @
* %unsigned 32 datDstAddr 0
* * *
* * DDR or SRAM address where the data is stored
* @
* %unsigned 32 reserved 0
**********************************************************************************************************************/
#ifdef h_SPHAL_CMD_ENCDEC
#else
#define h_SPHAL_CMD_ENCDEC
#define \
AR_SPHAL_CMD_ENCDEC \
6
#define \
AB_SPHAL_CMD_ENCDEC \
5
typedef struct SIE_SPHAL_CMD_ENCDEC {
#define RA_SPHAL_CMD_ENCDEC_D0th_ ISC_USE_ONLY 0x00000
#define w32SPHAL_CMD_ENCDEC_D0th_ { \
UNSG32 u_cmdCode : 8; \
UNSG32 u_cmdID : 8; \
UNSG32 _x00000 : 16; \
}
/* @'00000 */ struct w32SPHAL_CMD_ENCDEC_D0th_;
/* [ 7: 0] */ #define BA_SPHAL_CMD_ENCDEC_cmdCode 0x00000
/* ---:--- */ #define bSPHAL_CMD_ENCDEC_cmdCode 8 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_ENCDEC_cmdCode 0 /*: 7*/
/* ---:--- */ #define MSK32SPHAL_CMD_ENCDEC_cmdCode 0x000000FF
/* ---:--- */ #define GET32SPHAL_CMD_ENCDEC_cmdCode(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16SPHAL_CMD_ENCDEC_cmdCode(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32SPHAL_CMD_ENCDEC_cmdCode(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_ENCDEC_cmdCode(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_SPHAL_CMD_ENCDEC_cmdID 0x00001
/* ---:--- */ #define bSPHAL_CMD_ENCDEC_cmdID 8 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_ENCDEC_cmdID 8 /*:15*/
/* ---:--- */ #define MSK32SPHAL_CMD_ENCDEC_cmdID 0x0000FF00
/* ---:--- */ #define GET32SPHAL_CMD_ENCDEC_cmdID(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16SPHAL_CMD_ENCDEC_cmdID(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32SPHAL_CMD_ENCDEC_cmdID(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_ENCDEC_cmdID(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
#define RA_SPHAL_CMD_ENCDEC_keyID 0x00004
/* @'00004 */ SIE_DRM_CTXID ie_keyID;
#define RA_SPHAL_CMD_ENCDEC_D2th_ ISC_USE_ONLY 0x00008
#define w32SPHAL_CMD_ENCDEC_D2th_ { \
UNSG32 u_datSize : 32; \
}
/* @'00008 */ struct w32SPHAL_CMD_ENCDEC_D2th_;
/* [31: 0] */ #define BA_SPHAL_CMD_ENCDEC_datSize 0x00008
/* ---:--- */ #define bSPHAL_CMD_ENCDEC_datSize 32 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_ENCDEC_datSize 0 /*:31*/
/* ---:--- */ #define MSK32SPHAL_CMD_ENCDEC_datSize 0xFFFFFFFF
/* ---:--- */ #define GET32SPHAL_CMD_ENCDEC_datSize(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SPHAL_CMD_ENCDEC_datSize(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SPHAL_CMD_ENCDEC_datSize(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_ENCDEC_datSize(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_SPHAL_CMD_ENCDEC_D3th_ ISC_USE_ONLY 0x0000C
#define w32SPHAL_CMD_ENCDEC_D3th_ { \
UNSG32 u_datSrcAddr : 32; \
}
/* @'0000C */ struct w32SPHAL_CMD_ENCDEC_D3th_;
/* [31: 0] */ #define BA_SPHAL_CMD_ENCDEC_datSrcAddr 0x0000C
/* ---:--- */ #define bSPHAL_CMD_ENCDEC_datSrcAddr 32 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_ENCDEC_datSrcAddr 0 /*:31*/
/* ---:--- */ #define MSK32SPHAL_CMD_ENCDEC_datSrcAddr 0xFFFFFFFF
/* ---:--- */ #define GET32SPHAL_CMD_ENCDEC_datSrcAddr(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SPHAL_CMD_ENCDEC_datSrcAddr(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SPHAL_CMD_ENCDEC_datSrcAddr(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_ENCDEC_datSrcAddr(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_SPHAL_CMD_ENCDEC_D4th_ ISC_USE_ONLY 0x00010
#define w32SPHAL_CMD_ENCDEC_D4th_ { \
UNSG32 u_datDstAddr : 32; \
}
/* @'00010 */ struct w32SPHAL_CMD_ENCDEC_D4th_;
/* [31: 0] */ #define BA_SPHAL_CMD_ENCDEC_datDstAddr 0x00010
/* ---:--- */ #define bSPHAL_CMD_ENCDEC_datDstAddr 32 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_ENCDEC_datDstAddr 0 /*:31*/
/* ---:--- */ #define MSK32SPHAL_CMD_ENCDEC_datDstAddr 0xFFFFFFFF
/* ---:--- */ #define GET32SPHAL_CMD_ENCDEC_datDstAddr(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SPHAL_CMD_ENCDEC_datDstAddr(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SPHAL_CMD_ENCDEC_datDstAddr(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_ENCDEC_datDstAddr(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_SPHAL_CMD_ENCDEC_D5th_ ISC_USE_ONLY 0x00014
#define w32SPHAL_CMD_ENCDEC_D5th_ { \
UNSG32 u_reserved : 32; \
}
/* @'00014 */ struct w32SPHAL_CMD_ENCDEC_D5th_;
/* [31: 0] */ #define BA_SPHAL_CMD_ENCDEC_reserved 0x00014
/* ---:--- */ #define bSPHAL_CMD_ENCDEC_reserved 32 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_ENCDEC_reserved 0 /*:31*/
/* ---:--- */ #define MSK32SPHAL_CMD_ENCDEC_reserved 0xFFFFFFFF
/* ---:--- */ #define GET32SPHAL_CMD_ENCDEC_reserved(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SPHAL_CMD_ENCDEC_reserved(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SPHAL_CMD_ENCDEC_reserved(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_ENCDEC_reserved(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_SPHAL_CMD_ENCDEC;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 SPHAL_CMD_ENCDEC_drvrd (SIE_SPHAL_CMD_ENCDEC *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 SPHAL_CMD_ENCDEC_drvwr (SIE_SPHAL_CMD_ENCDEC *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void SPHAL_CMD_ENCDEC_reset (SIE_SPHAL_CMD_ENCDEC *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define SPHAL_CMD_ENCDEC_check(p,pie,ps8name,hfpErrLOG) SPHAL_CMD_ENCDEC_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define SPHAL_CMD_ENCDEC_print(p, ps8name,hfpErrLOG) SPHAL_CMD_ENCDEC_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 SPHAL_CMD_ENCDEC_cmp (SIE_SPHAL_CMD_ENCDEC *p, SIE_SPHAL_CMD_ENCDEC *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 SPHAL_CMD_ENCDEC_import(SIE_SPHAL_CMD_ENCDEC *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 SPHAL_CMD_ENCDEC_export(SIE_SPHAL_CMD_ENCDEC *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: SPHAL_CMD_ENCDEC
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: SPHAL_CMD_RNG
* @
* %unsigned 8 cmdCode 0
* * *
* * 0
* %unsigned 8 cmdID 0
* * *
* * Command ID
* * 0
* @
* $DRM_CTXID keyID 0
* * *
* * Key context ID
* * 0
* @
* %unsigned 32 datSize 0
* * *
* * The number of bytes in DAT_SRCADDR.
* * 0
* @
* %unsigned 32 datAddr 0
* * *
* * DDR address where the data is stored
* @
* %unsigned 32 pad 0
* * *
* @
* %unsigned 32 reserved 0
**********************************************************************************************************************/
#ifdef h_SPHAL_CMD_RNG
#else
#define h_SPHAL_CMD_RNG
#define \
AR_SPHAL_CMD_RNG \
6
#define \
AB_SPHAL_CMD_RNG \
5
typedef struct SIE_SPHAL_CMD_RNG {
#define RA_SPHAL_CMD_RNG_D0th_ ISC_USE_ONLY 0x00000
#define w32SPHAL_CMD_RNG_D0th_ { \
UNSG32 u_cmdCode : 8; \
UNSG32 u_cmdID : 8; \
UNSG32 _x00000 : 16; \
}
/* @'00000 */ struct w32SPHAL_CMD_RNG_D0th_;
/* [ 7: 0] */ #define BA_SPHAL_CMD_RNG_cmdCode 0x00000
/* ---:--- */ #define bSPHAL_CMD_RNG_cmdCode 8 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_RNG_cmdCode 0 /*: 7*/
/* ---:--- */ #define MSK32SPHAL_CMD_RNG_cmdCode 0x000000FF
/* ---:--- */ #define GET32SPHAL_CMD_RNG_cmdCode(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16SPHAL_CMD_RNG_cmdCode(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32SPHAL_CMD_RNG_cmdCode(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_RNG_cmdCode(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_SPHAL_CMD_RNG_cmdID 0x00001
/* ---:--- */ #define bSPHAL_CMD_RNG_cmdID 8 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_RNG_cmdID 8 /*:15*/
/* ---:--- */ #define MSK32SPHAL_CMD_RNG_cmdID 0x0000FF00
/* ---:--- */ #define GET32SPHAL_CMD_RNG_cmdID(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16SPHAL_CMD_RNG_cmdID(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32SPHAL_CMD_RNG_cmdID(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_RNG_cmdID(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
#define RA_SPHAL_CMD_RNG_keyID 0x00004
/* @'00004 */ SIE_DRM_CTXID ie_keyID;
#define RA_SPHAL_CMD_RNG_D2th_ ISC_USE_ONLY 0x00008
#define w32SPHAL_CMD_RNG_D2th_ { \
UNSG32 u_datSize : 32; \
}
/* @'00008 */ struct w32SPHAL_CMD_RNG_D2th_;
/* [31: 0] */ #define BA_SPHAL_CMD_RNG_datSize 0x00008
/* ---:--- */ #define bSPHAL_CMD_RNG_datSize 32 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_RNG_datSize 0 /*:31*/
/* ---:--- */ #define MSK32SPHAL_CMD_RNG_datSize 0xFFFFFFFF
/* ---:--- */ #define GET32SPHAL_CMD_RNG_datSize(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SPHAL_CMD_RNG_datSize(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SPHAL_CMD_RNG_datSize(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_RNG_datSize(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_SPHAL_CMD_RNG_D3th_ ISC_USE_ONLY 0x0000C
#define w32SPHAL_CMD_RNG_D3th_ { \
UNSG32 u_datAddr : 32; \
}
/* @'0000C */ struct w32SPHAL_CMD_RNG_D3th_;
/* [31: 0] */ #define BA_SPHAL_CMD_RNG_datAddr 0x0000C
/* ---:--- */ #define bSPHAL_CMD_RNG_datAddr 32 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_RNG_datAddr 0 /*:31*/
/* ---:--- */ #define MSK32SPHAL_CMD_RNG_datAddr 0xFFFFFFFF
/* ---:--- */ #define GET32SPHAL_CMD_RNG_datAddr(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SPHAL_CMD_RNG_datAddr(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SPHAL_CMD_RNG_datAddr(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_RNG_datAddr(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_SPHAL_CMD_RNG_D4th_ ISC_USE_ONLY 0x00010
#define w32SPHAL_CMD_RNG_D4th_ { \
UNSG32 u_pad : 32; \
}
/* @'00010 */ struct w32SPHAL_CMD_RNG_D4th_;
/* [31: 0] */ #define BA_SPHAL_CMD_RNG_pad 0x00010
/* ---:--- */ #define bSPHAL_CMD_RNG_pad 32 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_RNG_pad 0 /*:31*/
/* ---:--- */ #define MSK32SPHAL_CMD_RNG_pad 0xFFFFFFFF
/* ---:--- */ #define GET32SPHAL_CMD_RNG_pad(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SPHAL_CMD_RNG_pad(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SPHAL_CMD_RNG_pad(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_RNG_pad(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_SPHAL_CMD_RNG_D5th_ ISC_USE_ONLY 0x00014
#define w32SPHAL_CMD_RNG_D5th_ { \
UNSG32 u_reserved : 32; \
}
/* @'00014 */ struct w32SPHAL_CMD_RNG_D5th_;
/* [31: 0] */ #define BA_SPHAL_CMD_RNG_reserved 0x00014
/* ---:--- */ #define bSPHAL_CMD_RNG_reserved 32 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_RNG_reserved 0 /*:31*/
/* ---:--- */ #define MSK32SPHAL_CMD_RNG_reserved 0xFFFFFFFF
/* ---:--- */ #define GET32SPHAL_CMD_RNG_reserved(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SPHAL_CMD_RNG_reserved(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SPHAL_CMD_RNG_reserved(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_RNG_reserved(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_SPHAL_CMD_RNG;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 SPHAL_CMD_RNG_drvrd (SIE_SPHAL_CMD_RNG *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 SPHAL_CMD_RNG_drvwr (SIE_SPHAL_CMD_RNG *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void SPHAL_CMD_RNG_reset (SIE_SPHAL_CMD_RNG *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define SPHAL_CMD_RNG_check(p,pie,ps8name,hfpErrLOG) SPHAL_CMD_RNG_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define SPHAL_CMD_RNG_print(p, ps8name,hfpErrLOG) SPHAL_CMD_RNG_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 SPHAL_CMD_RNG_cmp (SIE_SPHAL_CMD_RNG *p, SIE_SPHAL_CMD_RNG *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 SPHAL_CMD_RNG_import(SIE_SPHAL_CMD_RNG *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 SPHAL_CMD_RNG_export(SIE_SPHAL_CMD_RNG *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: SPHAL_CMD_RNG
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: SPHAL_CMD_RC4
* @
* %unsigned 8 cmdCode 0
* * *
* * DRMCMD_SHA1_START
* * DRMCMD_SHA1_UPDATE
* * DRMCMD_SHA1_END.
* * DRMCMD_HMAC_START
* * DRMCMD_HMAC_UPDATE
* * DRMCMD_HMAC_END
* * 0
* %unsigned 8 cmdID 0
* * *
* * Command ID
* * 0
* @
* $DRM_CTXID keyID 0
* * *
* * Hash conetxt ID
* * 0
* @
* %unsigned 32 datSize 0
* * *
* * The number of bytes in DAT_SRCADDR.
* * 0
* @
* %unsigned 32 datSrcAddr 0
* * *
* * DDR address where the data is stored
* @
* %unsigned 32 datDstAddr 0
* * *
* * Key context ID
* @
* %unsigned 32 keyLen 0
* * *
* * RC4 Key length
**********************************************************************************************************************/
#ifdef h_SPHAL_CMD_RC4
#else
#define h_SPHAL_CMD_RC4
#define \
AR_SPHAL_CMD_RC4 \
6
#define \
AB_SPHAL_CMD_RC4 \
5
typedef struct SIE_SPHAL_CMD_RC4 {
#define RA_SPHAL_CMD_RC4_D0th_ ISC_USE_ONLY 0x00000
#define w32SPHAL_CMD_RC4_D0th_ { \
UNSG32 u_cmdCode : 8; \
UNSG32 u_cmdID : 8; \
UNSG32 _x00000 : 16; \
}
/* @'00000 */ struct w32SPHAL_CMD_RC4_D0th_;
/* [ 7: 0] */ #define BA_SPHAL_CMD_RC4_cmdCode 0x00000
/* ---:--- */ #define bSPHAL_CMD_RC4_cmdCode 8 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_RC4_cmdCode 0 /*: 7*/
/* ---:--- */ #define MSK32SPHAL_CMD_RC4_cmdCode 0x000000FF
/* ---:--- */ #define GET32SPHAL_CMD_RC4_cmdCode(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16SPHAL_CMD_RC4_cmdCode(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32SPHAL_CMD_RC4_cmdCode(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_RC4_cmdCode(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_SPHAL_CMD_RC4_cmdID 0x00001
/* ---:--- */ #define bSPHAL_CMD_RC4_cmdID 8 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_RC4_cmdID 8 /*:15*/
/* ---:--- */ #define MSK32SPHAL_CMD_RC4_cmdID 0x0000FF00
/* ---:--- */ #define GET32SPHAL_CMD_RC4_cmdID(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16SPHAL_CMD_RC4_cmdID(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32SPHAL_CMD_RC4_cmdID(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_RC4_cmdID(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
#define RA_SPHAL_CMD_RC4_keyID 0x00004
/* @'00004 */ SIE_DRM_CTXID ie_keyID;
#define RA_SPHAL_CMD_RC4_D2th_ ISC_USE_ONLY 0x00008
#define w32SPHAL_CMD_RC4_D2th_ { \
UNSG32 u_datSize : 32; \
}
/* @'00008 */ struct w32SPHAL_CMD_RC4_D2th_;
/* [31: 0] */ #define BA_SPHAL_CMD_RC4_datSize 0x00008
/* ---:--- */ #define bSPHAL_CMD_RC4_datSize 32 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_RC4_datSize 0 /*:31*/
/* ---:--- */ #define MSK32SPHAL_CMD_RC4_datSize 0xFFFFFFFF
/* ---:--- */ #define GET32SPHAL_CMD_RC4_datSize(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SPHAL_CMD_RC4_datSize(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SPHAL_CMD_RC4_datSize(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_RC4_datSize(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_SPHAL_CMD_RC4_D3th_ ISC_USE_ONLY 0x0000C
#define w32SPHAL_CMD_RC4_D3th_ { \
UNSG32 u_datSrcAddr : 32; \
}
/* @'0000C */ struct w32SPHAL_CMD_RC4_D3th_;
/* [31: 0] */ #define BA_SPHAL_CMD_RC4_datSrcAddr 0x0000C
/* ---:--- */ #define bSPHAL_CMD_RC4_datSrcAddr 32 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_RC4_datSrcAddr 0 /*:31*/
/* ---:--- */ #define MSK32SPHAL_CMD_RC4_datSrcAddr 0xFFFFFFFF
/* ---:--- */ #define GET32SPHAL_CMD_RC4_datSrcAddr(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SPHAL_CMD_RC4_datSrcAddr(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SPHAL_CMD_RC4_datSrcAddr(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_RC4_datSrcAddr(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_SPHAL_CMD_RC4_D4th_ ISC_USE_ONLY 0x00010
#define w32SPHAL_CMD_RC4_D4th_ { \
UNSG32 u_datDstAddr : 32; \
}
/* @'00010 */ struct w32SPHAL_CMD_RC4_D4th_;
/* [31: 0] */ #define BA_SPHAL_CMD_RC4_datDstAddr 0x00010
/* ---:--- */ #define bSPHAL_CMD_RC4_datDstAddr 32 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_RC4_datDstAddr 0 /*:31*/
/* ---:--- */ #define MSK32SPHAL_CMD_RC4_datDstAddr 0xFFFFFFFF
/* ---:--- */ #define GET32SPHAL_CMD_RC4_datDstAddr(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SPHAL_CMD_RC4_datDstAddr(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SPHAL_CMD_RC4_datDstAddr(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_RC4_datDstAddr(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_SPHAL_CMD_RC4_D5th_ ISC_USE_ONLY 0x00014
#define w32SPHAL_CMD_RC4_D5th_ { \
UNSG32 u_keyLen : 32; \
}
/* @'00014 */ struct w32SPHAL_CMD_RC4_D5th_;
/* [31: 0] */ #define BA_SPHAL_CMD_RC4_keyLen 0x00014
/* ---:--- */ #define bSPHAL_CMD_RC4_keyLen 32 /*bit*/
/* ---:--- */ #define LSb32SPHAL_CMD_RC4_keyLen 0 /*:31*/
/* ---:--- */ #define MSK32SPHAL_CMD_RC4_keyLen 0xFFFFFFFF
/* ---:--- */ #define GET32SPHAL_CMD_RC4_keyLen(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SPHAL_CMD_RC4_keyLen(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SPHAL_CMD_RC4_keyLen(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SPHAL_CMD_RC4_keyLen(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_SPHAL_CMD_RC4;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 SPHAL_CMD_RC4_drvrd (SIE_SPHAL_CMD_RC4 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 SPHAL_CMD_RC4_drvwr (SIE_SPHAL_CMD_RC4 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void SPHAL_CMD_RC4_reset (SIE_SPHAL_CMD_RC4 *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define SPHAL_CMD_RC4_check(p,pie,ps8name,hfpErrLOG) SPHAL_CMD_RC4_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define SPHAL_CMD_RC4_print(p, ps8name,hfpErrLOG) SPHAL_CMD_RC4_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 SPHAL_CMD_RC4_cmp (SIE_SPHAL_CMD_RC4 *p, SIE_SPHAL_CMD_RC4 *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 SPHAL_CMD_RC4_import(SIE_SPHAL_CMD_RC4 *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 SPHAL_CMD_RC4_export(SIE_SPHAL_CMD_RC4 *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: SPHAL_CMD_RC4
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: OTP_INFO_CTX
* @
* $UINT64 rkekCRC
* * *
* * Row 35
* $UINT64 bindInfo
* * *
* * Row 36
* @
* $UINT64 userInfo0
* * *
* * Row 37
* @
* $UINT64 userInfo1
* * *
* * Row 38
* @
* $UINT64 serialId
* * *
* * Row 39
* @
* $UINT64 userInfo2
* * *
* * Row 3
* @
* $UINT64 userInfo3
* * *
* * Row 31 (byte 2 to byte 7)
**********************************************************************************************************************/
#ifdef h_OTP_INFO_CTX
#else
#define h_OTP_INFO_CTX
#define \
AR_OTP_INFO_CTX \
14
#define \
AB_OTP_INFO_CTX \
6
typedef struct SIE_OTP_INFO_CTX {
#define RA_OTP_INFO_CTX_rkekCRC 0x00000
/* @'00000 */ SIE_UINT64 ie_rkekCRC;
#define RA_OTP_INFO_CTX_bindInfo 0x00008
/* @'00008 */ SIE_UINT64 ie_bindInfo;
#define RA_OTP_INFO_CTX_userInfo0 0x00010
/* @'00010 */ SIE_UINT64 ie_userInfo0;
#define RA_OTP_INFO_CTX_userInfo1 0x00018
/* @'00018 */ SIE_UINT64 ie_userInfo1;
#define RA_OTP_INFO_CTX_serialId 0x00020
/* @'00020 */ SIE_UINT64 ie_serialId;
#define RA_OTP_INFO_CTX_userInfo2 0x00028
/* @'00028 */ SIE_UINT64 ie_userInfo2;
#define RA_OTP_INFO_CTX_userInfo3 0x00030
/* @'00030 */ SIE_UINT64 ie_userInfo3;
} SIE_OTP_INFO_CTX;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 OTP_INFO_CTX_drvrd (SIE_OTP_INFO_CTX *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 OTP_INFO_CTX_drvwr (SIE_OTP_INFO_CTX *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void OTP_INFO_CTX_reset (SIE_OTP_INFO_CTX *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define OTP_INFO_CTX_check(p,pie,ps8name,hfpErrLOG) OTP_INFO_CTX_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define OTP_INFO_CTX_print(p, ps8name,hfpErrLOG) OTP_INFO_CTX_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 OTP_INFO_CTX_cmp (SIE_OTP_INFO_CTX *p, SIE_OTP_INFO_CTX *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 OTP_INFO_CTX_import(SIE_OTP_INFO_CTX *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 OTP_INFO_CTX_export(SIE_OTP_INFO_CTX *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: OTP_INFO_CTX
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: CRYPTO_ENGINE_CTX
* @
* %unsigned 16 engineState
* * *
* * State of Crypto Engine
* * 00: Engine is idle
* * 01: Cmd is ready
* %unsigned 16 padding
* %unsigned 8 engineType
* %unsigned 8 mode
* %unsigned 8 isKeyReady
* * *
* * 0: key is not ready
* * 1: key data is ready
* * 2: use internal key, keyId used as index
* %unsigned 8 keyId
* @
* $UINT64 cmdBuf REG [3]
* @
* $UINT64 keyDat REG [4]
* @
* $SHA1_CTXDAT shaCtx
* @
* $RC4_CTXDAT rc4Ctx
* @
* $UINT64 IV REG [2]
* @
* $UINT64 pRndKey REG [32]
* @
* $UINT64 pRootKey REG [4]
**********************************************************************************************************************/
#ifdef h_CRYPTO_ENGINE_CTX
#else
#define h_CRYPTO_ENGINE_CTX
#define \
AR_CRYPTO_ENGINE_CTX \
246
#define \
AB_CRYPTO_ENGINE_CTX \
10
typedef struct SIE_CRYPTO_ENGINE_CTX {
#define RA_CRYPTO_ENGINE_CTX_D0th_ ISC_USE_ONLY 0x00000
#define w32CRYPTO_ENGINE_CTX_D0th_ { \
UNSG32 u_engineState : 16; \
UNSG32 u_padding : 16; \
}
/* @'00000 */ struct w32CRYPTO_ENGINE_CTX_D0th_;
/* [15: 0] */ #define BA_CRYPTO_ENGINE_CTX_engineState 0x00000
/* ---:--- */ #define bCRYPTO_ENGINE_CTX_engineState 16 /*bit*/
/* ---:--- */ #define LSb32CRYPTO_ENGINE_CTX_engineState 0 /*:15*/
/* ---:--- */ #define MSK32CRYPTO_ENGINE_CTX_engineState 0x0000FFFF
/* ---:--- */ #define GET32CRYPTO_ENGINE_CTX_engineState(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16CRYPTO_ENGINE_CTX_engineState(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32CRYPTO_ENGINE_CTX_engineState(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16CRYPTO_ENGINE_CTX_engineState(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_CRYPTO_ENGINE_CTX_padding 0x00002
/* ---:--- */ #define bCRYPTO_ENGINE_CTX_padding 16 /*bit*/
/* ---:--- */ #define LSb32CRYPTO_ENGINE_CTX_padding 16 /*:31*/
/* ---:--- */ #define MSK32CRYPTO_ENGINE_CTX_padding 0xFFFF0000
/* ---:--- */ #define GET32CRYPTO_ENGINE_CTX_padding(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16CRYPTO_ENGINE_CTX_padding(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32CRYPTO_ENGINE_CTX_padding(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16CRYPTO_ENGINE_CTX_padding(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_CRYPTO_ENGINE_CTX_D1th_ ISC_USE_ONLY 0x00004
#define w32CRYPTO_ENGINE_CTX_D1th_ { \
UNSG32 u_engineType : 8; \
UNSG32 u_mode : 8; \
UNSG32 u_isKeyReady : 8; \
UNSG32 u_keyId : 8; \
}
/* @'00004 */ struct w32CRYPTO_ENGINE_CTX_D1th_;
/* [ 7: 0] */ #define BA_CRYPTO_ENGINE_CTX_engineType 0x00004
/* ---:--- */ #define bCRYPTO_ENGINE_CTX_engineType 8 /*bit*/
/* ---:--- */ #define LSb32CRYPTO_ENGINE_CTX_engineType 0 /*: 7*/
/* ---:--- */ #define MSK32CRYPTO_ENGINE_CTX_engineType 0x000000FF
/* ---:--- */ #define GET32CRYPTO_ENGINE_CTX_engineType(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16CRYPTO_ENGINE_CTX_engineType(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32CRYPTO_ENGINE_CTX_engineType(r32,v) do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16CRYPTO_ENGINE_CTX_engineType(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [15: 8] */ #define BA_CRYPTO_ENGINE_CTX_mode 0x00005
/* ---:--- */ #define bCRYPTO_ENGINE_CTX_mode 8 /*bit*/
/* ---:--- */ #define LSb32CRYPTO_ENGINE_CTX_mode 8 /*:15*/
/* ---:--- */ #define MSK32CRYPTO_ENGINE_CTX_mode 0x0000FF00
/* ---:--- */ #define GET32CRYPTO_ENGINE_CTX_mode(r32) (((r32)>> 8)&0x00FF)
/* ---:--- */ #define GET16CRYPTO_ENGINE_CTX_mode(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32CRYPTO_ENGINE_CTX_mode(r32,v) do{(r32)&=~(0x00FF<< 8);(r32)|=((v)&0x00FF)<< 8;}while(0)
/* ---:--- */ #define SET16CRYPTO_ENGINE_CTX_mode(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
/* [23:16] */ #define BA_CRYPTO_ENGINE_CTX_isKeyReady 0x00006
/* ---:--- */ #define bCRYPTO_ENGINE_CTX_isKeyReady 8 /*bit*/
/* ---:--- */ #define LSb32CRYPTO_ENGINE_CTX_isKeyReady 16 /*:23*/
/* ---:--- */ #define MSK32CRYPTO_ENGINE_CTX_isKeyReady 0x00FF0000
/* ---:--- */ #define GET32CRYPTO_ENGINE_CTX_isKeyReady(r32) (((r32)>>16)&0x00FF)
/* ---:--- */ #define GET16CRYPTO_ENGINE_CTX_isKeyReady(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32CRYPTO_ENGINE_CTX_isKeyReady(r32,v) do{(r32)&=~(0x00FF<<16);(r32)|=((v)&0x00FF)<<16;}while(0)
/* ---:--- */ #define SET16CRYPTO_ENGINE_CTX_isKeyReady(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
/* [31:24] */ #define BA_CRYPTO_ENGINE_CTX_keyId 0x00007
/* ---:--- */ #define bCRYPTO_ENGINE_CTX_keyId 8 /*bit*/
/* ---:--- */ #define LSb32CRYPTO_ENGINE_CTX_keyId 24 /*:31*/
/* ---:--- */ #define MSK32CRYPTO_ENGINE_CTX_keyId 0xFF000000
/* ---:--- */ #define GET32CRYPTO_ENGINE_CTX_keyId(r32) (((r32)>>24)&0x00FF)
/* ---:--- */ #define GET16CRYPTO_ENGINE_CTX_keyId(r16) (((r16)>> 8)&0x00FF)
/* ---:--- */ #define SET32CRYPTO_ENGINE_CTX_keyId(r32,v) do{(r32)&=~(0x00FF<<24);(r32)|=((v)&0x00FF)<<24;}while(0)
/* ---:--- */ #define SET16CRYPTO_ENGINE_CTX_keyId(r16,v) do{(r16)&=~(0x00FF<< 8);(r16)|=((v)&0x00FF)<< 8;}while(0)
#define RA_CRYPTO_ENGINE_CTX_cmdBuf 0x00008
/* @'00008 */ SIE_UINT64 ie_cmdBuf [3];
#define arr_CRYPTO_ENGINE_CTX_cmdBuf 3
#define RA_CRYPTO_ENGINE_CTX_keyDat 0x00020
/* @'00020 */ SIE_UINT64 ie_keyDat [4];
#define arr_CRYPTO_ENGINE_CTX_keyDat 4
#define RA_CRYPTO_ENGINE_CTX_shaCtx 0x00040
/* @'00040 */ SIE_SHA1_CTXDAT ie_shaCtx;
#define RA_CRYPTO_ENGINE_CTX_rc4Ctx 0x000A0
/* @'000A0 */ SIE_RC4_CTXDAT ie_rc4Ctx;
#define RA_CRYPTO_ENGINE_CTX_IV 0x002A8
/* @'002A8 */ SIE_UINT64 ie_IV [2];
#define arr_CRYPTO_ENGINE_CTX_IV 2
#define RA_CRYPTO_ENGINE_CTX_pRndKey 0x002B8
/* @'002B8 */ SIE_UINT64 ie_pRndKey [32];
#define arr_CRYPTO_ENGINE_CTX_pRndKey 32
#define RA_CRYPTO_ENGINE_CTX_pRootKey 0x003B8
/* @'003B8 */ SIE_UINT64 ie_pRootKey [4];
#define arr_CRYPTO_ENGINE_CTX_pRootKey 4
} SIE_CRYPTO_ENGINE_CTX;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 CRYPTO_ENGINE_CTX_drvrd (SIE_CRYPTO_ENGINE_CTX *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 CRYPTO_ENGINE_CTX_drvwr (SIE_CRYPTO_ENGINE_CTX *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void CRYPTO_ENGINE_CTX_reset (SIE_CRYPTO_ENGINE_CTX *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define CRYPTO_ENGINE_CTX_check(p,pie,ps8name,hfpErrLOG) CRYPTO_ENGINE_CTX_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define CRYPTO_ENGINE_CTX_print(p, ps8name,hfpErrLOG) CRYPTO_ENGINE_CTX_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 CRYPTO_ENGINE_CTX_cmp (SIE_CRYPTO_ENGINE_CTX *p, SIE_CRYPTO_ENGINE_CTX *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 CRYPTO_ENGINE_CTX_import(SIE_CRYPTO_ENGINE_CTX *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 CRYPTO_ENGINE_CTX_export(SIE_CRYPTO_ENGINE_CTX *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: CRYPTO_ENGINE_CTX
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRMDiagCryptoEngineCtx
* @
* $DRMROM_CMD cmd
* * *
* * ROM code command and response buffer
* @ LA_START
* $LocalArea la
* * *
* * Local data area
* @
* $UINT64 dsCmdFifo REG [16]
* * *
* * Data streamer fifo data
* @ 0x1000
* $CRYPTO_ENGINE_CTX engineCtx
* * *
* @
* $UINT64 datBuf REG [256]
* @ DTCMSIZE
* $UINT64 uTotalSize REG
* @ IMG_END
* $UINT128 resserved REG
**********************************************************************************************************************/
#ifdef h_DRMDiagCryptoEngineCtx
#else
#define h_DRMDiagCryptoEngineCtx
#define \
AR_DRMDiagCryptoEngineCtx \
1788
#define \
AB_DRMDiagCryptoEngineCtx \
13
typedef struct SIE_DRMDiagCryptoEngineCtx {
#define RA_DRMDiagCryptoEngineCtx_cmd 0x00000
/* @'00000 */ SIE_DRMROM_CMD ie_cmd;
#define RA_DRMDiagCryptoEngineCtx_LA_START 0x00028
/* @'00028 */ SIE_LocalArea ie_la;
#define RA_DRMDiagCryptoEngineCtx_dsCmdFifo 0x00250
/* @'00250 */ SIE_UINT64 ie_dsCmdFifo [16];
#define arr_DRMDiagCryptoEngineCtx_dsCmdFifo 16
UNSG32 _PAD_000[(0x01000-0x002D0)/4];
#define RA_DRMDiagCryptoEngineCtx_engineCtx 0x01000
/* @'01000 */ SIE_CRYPTO_ENGINE_CTX ie_engineCtx;
#define RA_DRMDiagCryptoEngineCtx_datBuf 0x013D8
/* @'013D8 */ SIE_UINT64 ie_datBuf [256];
#define arr_DRMDiagCryptoEngineCtx_datBuf 256
#define RA_DRMDiagCryptoEngineCtx_DTCMSIZE 0x01BD8
/* @'01BD8 */ SIE_UINT64 ie_uTotalSize;
#define RA_DRMDiagCryptoEngineCtx_IMG_END 0x01BE0
/* @'01BE0 */ SIE_UINT128 ie_resserved;
} SIE_DRMDiagCryptoEngineCtx;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRMDiagCryptoEngineCtx_drvrd (SIE_DRMDiagCryptoEngineCtx *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRMDiagCryptoEngineCtx_drvwr (SIE_DRMDiagCryptoEngineCtx *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRMDiagCryptoEngineCtx_reset (SIE_DRMDiagCryptoEngineCtx *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRMDiagCryptoEngineCtx_check(p,pie,ps8name,hfpErrLOG) DRMDiagCryptoEngineCtx_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRMDiagCryptoEngineCtx_print(p, ps8name,hfpErrLOG) DRMDiagCryptoEngineCtx_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRMDiagCryptoEngineCtx_cmp (SIE_DRMDiagCryptoEngineCtx *p, SIE_DRMDiagCryptoEngineCtx *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRMDiagCryptoEngineCtx_import(SIE_DRMDiagCryptoEngineCtx *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRMDiagCryptoEngineCtx_export(SIE_DRMDiagCryptoEngineCtx *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRMDiagCryptoEngineCtx
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRMCONST
* @
* : BD_PACKET_SIZE 6144
* * *
* * Blu-ray DVD packet size
* @
* : BD_TSPACKET_SIZE 192
* * *
* * Blu-ray DVD packet size
* @
* %unsigned 32 dummy
* * *
**********************************************************************************************************************/
#ifdef h_DRMCONST
#else
#define h_DRMCONST
#define \
AR_DRMCONST \
1
#define \
AB_DRMCONST \
2
#define DRMCONST_BD_PACKET_SIZE 0x1800
#define DRMCONST_BD_TSPACKET_SIZE 0xC0
typedef struct SIE_DRMCONST {
#define RA_DRMCONST_D0th_ ISC_USE_ONLY 0x00000
#define w32DRMCONST_D0th_ { \
UNSG32 u_dummy : 32; \
}
/* @'00000 */ struct w32DRMCONST_D0th_;
/* [31: 0] */ #define BA_DRMCONST_dummy 0x00000
/* ---:--- */ #define bDRMCONST_dummy 32 /*bit*/
/* ---:--- */ #define LSb32DRMCONST_dummy 0 /*:31*/
/* ---:--- */ #define MSK32DRMCONST_dummy 0xFFFFFFFF
/* ---:--- */ #define GET32DRMCONST_dummy(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMCONST_dummy(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMCONST_dummy(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMCONST_dummy(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_DRMCONST;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRMCONST_drvrd (SIE_DRMCONST *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRMCONST_drvwr (SIE_DRMCONST *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRMCONST_reset (SIE_DRMCONST *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRMCONST_check(p,pie,ps8name,hfpErrLOG) DRMCONST_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRMCONST_print(p, ps8name,hfpErrLOG) DRMCONST_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRMCONST_cmp (SIE_DRMCONST *p, SIE_DRMCONST *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRMCONST_import(SIE_DRMCONST *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRMCONST_export(SIE_DRMCONST *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRMCONST
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: WrapperTK
* @
* $UINT64 TKHeader
* @
* $UINT64 tk REG [3]
**********************************************************************************************************************/
#ifdef h_WrapperTK
#else
#define h_WrapperTK
#define \
AR_WrapperTK \
8
#define \
AB_WrapperTK \
5
typedef struct SIE_WrapperTK {
#define RA_WrapperTK_TKHeader 0x00000
/* @'00000 */ SIE_UINT64 ie_TKHeader;
#define RA_WrapperTK_tk 0x00008
/* @'00008 */ SIE_UINT64 ie_tk [3];
#define arr_WrapperTK_tk 3
} SIE_WrapperTK;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 WrapperTK_drvrd (SIE_WrapperTK *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 WrapperTK_drvwr (SIE_WrapperTK *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void WrapperTK_reset (SIE_WrapperTK *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define WrapperTK_check(p,pie,ps8name,hfpErrLOG) WrapperTK_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define WrapperTK_print(p, ps8name,hfpErrLOG) WrapperTK_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 WrapperTK_cmp (SIE_WrapperTK *p, SIE_WrapperTK *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 WrapperTK_import(SIE_WrapperTK *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 WrapperTK_export(SIE_WrapperTK *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: WrapperTK
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: FIGOCTRLUpdateTK
* @
* $FIGOCtrl figoCtrl
* @
* $UINT128 tk REG [2]
**********************************************************************************************************************/
#ifdef h_FIGOCTRLUpdateTK
#else
#define h_FIGOCTRLUpdateTK
#define \
AR_FIGOCTRLUpdateTK \
10
#define \
AB_FIGOCTRLUpdateTK \
6
typedef struct SIE_FIGOCTRLUpdateTK {
#define RA_FIGOCTRLUpdateTK_figoCtrl 0x00000
/* @'00000 */ SIE_FIGOCtrl ie_figoCtrl;
#define RA_FIGOCTRLUpdateTK_tk 0x00008
/* @'00008 */ SIE_UINT128 ie_tk [2];
#define arr_FIGOCTRLUpdateTK_tk 2
} SIE_FIGOCTRLUpdateTK;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 FIGOCTRLUpdateTK_drvrd (SIE_FIGOCTRLUpdateTK *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 FIGOCTRLUpdateTK_drvwr (SIE_FIGOCTRLUpdateTK *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void FIGOCTRLUpdateTK_reset (SIE_FIGOCTRLUpdateTK *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define FIGOCTRLUpdateTK_check(p,pie,ps8name,hfpErrLOG) FIGOCTRLUpdateTK_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define FIGOCTRLUpdateTK_print(p, ps8name,hfpErrLOG) FIGOCTRLUpdateTK_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 FIGOCTRLUpdateTK_cmp (SIE_FIGOCTRLUpdateTK *p, SIE_FIGOCTRLUpdateTK *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 FIGOCTRLUpdateTK_import(SIE_FIGOCTRLUpdateTK *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 FIGOCTRLUpdateTK_export(SIE_FIGOCTRLUpdateTK *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: FIGOCTRLUpdateTK
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: KeySeed
* @
* %unsigned 32 syncPoint
* %unsigned 32 reserved
* @
* $UINT64 ksDat
**********************************************************************************************************************/
#ifdef h_KeySeed
#else
#define h_KeySeed
#define \
AR_KeySeed \
4
#define \
AB_KeySeed \
4
typedef struct SIE_KeySeed {
#define RA_KeySeed_D0th_ ISC_USE_ONLY 0x00000
#define w32KeySeed_D0th_ { \
UNSG32 u_syncPoint : 32; \
}
/* @'00000 */ struct w32KeySeed_D0th_;
/* [31: 0] */ #define BA_KeySeed_syncPoint 0x00000
/* ---:--- */ #define bKeySeed_syncPoint 32 /*bit*/
/* ---:--- */ #define LSb32KeySeed_syncPoint 0 /*:31*/
/* ---:--- */ #define MSK32KeySeed_syncPoint 0xFFFFFFFF
/* ---:--- */ #define GET32KeySeed_syncPoint(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16KeySeed_syncPoint(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32KeySeed_syncPoint(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16KeySeed_syncPoint(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_KeySeed_D1th_ ISC_USE_ONLY 0x00004
#define w32KeySeed_D1th_ { \
UNSG32 u_reserved : 32; \
}
/* @'00004 */ struct w32KeySeed_D1th_;
/* [31: 0] */ #define BA_KeySeed_reserved 0x00004
/* ---:--- */ #define bKeySeed_reserved 32 /*bit*/
/* ---:--- */ #define LSb32KeySeed_reserved 0 /*:31*/
/* ---:--- */ #define MSK32KeySeed_reserved 0xFFFFFFFF
/* ---:--- */ #define GET32KeySeed_reserved(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16KeySeed_reserved(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32KeySeed_reserved(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16KeySeed_reserved(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_KeySeed_ksDat 0x00008
/* @'00008 */ SIE_UINT64 ie_ksDat;
} SIE_KeySeed;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 KeySeed_drvrd (SIE_KeySeed *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 KeySeed_drvwr (SIE_KeySeed *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void KeySeed_reset (SIE_KeySeed *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define KeySeed_check(p,pie,ps8name,hfpErrLOG) KeySeed_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define KeySeed_print(p, ps8name,hfpErrLOG) KeySeed_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 KeySeed_cmp (SIE_KeySeed *p, SIE_KeySeed *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 KeySeed_import(SIE_KeySeed *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 KeySeed_export(SIE_KeySeed *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: KeySeed
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRMBDFilter
* @ HDR
* %unsigned 16 filterFunc
* %unsigned 8 filterState
* : INACTIVE 0
* : STOPPED 1
* : STOPPING 2
* : RUNNING 3
* : FLUSHING 4
* : PAUSING 5
* : PAUSED 6
* %unsigned 1 isByPassMode
* %unsigned 1 isEncrypted
* @ IO
* %unsigned 16 strmInPtr
* * *
* * Address of the input data FIFO pointer
* * *
* * Size to read next time
* %unsigned 16 strmOutPtr
* * *
* * Address of the output data FIFO pointer
* @
* %unsigned 16 datBase
* * *
* * Internal data buffer
* %unsigned 16 ctrlBase
* * *
* * Internal control buffer
* @
* %unsigned 16 datMaxSize
* * *
* * Size of the internal data buffer
* %unsigned 16 ctrlMaxSize
* * *
* * Size of the internal control buffer
* @
* %unsigned 16 packStartOffset
* * *
* * Bytes left in the current BD packet
* %unsigned 16 packSizeToRd
* @ CTR
* %unsigned 32 strmCtrIn
* * *
* * Input stream counter
* @
* $UINT128 tkIn REG
* * *
* * Title Key plain text
* @
* $UINT128 rndKey REG [16]
* * *
* * Packet round keys
* @
* $UINT128 pbIV MEM
* * *
* * Packet decryption Initial Vector
* $UINT128 pbAACSConstIV MEM
* * *
* * AACS Constant IV
* @
**********************************************************************************************************************/
#ifdef h_DRMBDFilter
#else
#define h_DRMBDFilter
#define \
AR_DRMBDFilter \
84
#define \
AB_DRMBDFilter \
9
typedef struct SIE_DRMBDFilter {
#define RA_DRMBDFilter_HDR 0x00000
#define w32DRMBDFilter_HDR { \
UNSG32 uHDR_filterFunc : 16; \
UNSG32 uHDR_filterState : 8; \
UNSG32 uHDR_isByPassMode : 1; \
UNSG32 uHDR_isEncrypted : 1; \
UNSG32 _x00000 : 6; \
}
/* @'00000 */ union { UNSG32 u32DRMBDFilter_HDR;
struct w32DRMBDFilter_HDR;
};
/* [15: 0] */ #define BA_DRMBDFilter_HDR_filterFunc 0x00000
/* ---:--- */ #define bDRMBDFilter_HDR_filterFunc 16 /*bit*/
/* ---:--- */ #define LSb32DRMBDFilter_HDR_filterFunc 0 /*:15*/
/* ---:--- */ #define MSK32DRMBDFilter_HDR_filterFunc 0x0000FFFF
/* ---:--- */ #define GET32DRMBDFilter_HDR_filterFunc(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMBDFilter_HDR_filterFunc(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMBDFilter_HDR_filterFunc(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMBDFilter_HDR_filterFunc(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [23:16] */ #define BA_DRMBDFilter_HDR_filterState 0x00002
/* ---:--- */ #define bDRMBDFilter_HDR_filterState 8 /*bit*/
/* ---:--- */ #define LSb32DRMBDFilter_HDR_filterState 16 /*:23*/
/* ---:--- */ #define MSK32DRMBDFilter_HDR_filterState 0x00FF0000
/* ---:--- */ #define GET32DRMBDFilter_HDR_filterState(r32) (((r32)>>16)&0x00FF)
/* ---:--- */ #define GET16DRMBDFilter_HDR_filterState(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRMBDFilter_HDR_filterState(r32,v) do{(r32)&=~(0x00FF<<16);(r32)|=((v)&0x00FF)<<16;}while(0)
/* ---:--- */ #define SET16DRMBDFilter_HDR_filterState(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
#define DRMBDFilter_HDR_filterState_INACTIVE 0x0
#define DRMBDFilter_HDR_filterState_STOPPED 0x1
#define DRMBDFilter_HDR_filterState_STOPPING 0x2
#define DRMBDFilter_HDR_filterState_RUNNING 0x3
#define DRMBDFilter_HDR_filterState_FLUSHING 0x4
#define DRMBDFilter_HDR_filterState_PAUSING 0x5
#define DRMBDFilter_HDR_filterState_PAUSED 0x6
/* [24:24] */ #define BA_DRMBDFilter_HDR_isByPassMode 0x00003
/* ---:--- */ #define bDRMBDFilter_HDR_isByPassMode 1 /*bit*/
/* ---:--- */ #define LSb32DRMBDFilter_HDR_isByPassMode 24 /*:24*/
/* ---:--- */ #define MSK32DRMBDFilter_HDR_isByPassMode 0x01000000
/* ---:--- */ #define GET32DRMBDFilter_HDR_isByPassMode(r32) (((r32)>>24)&0x0001)
/* ---:--- */ #define GET16DRMBDFilter_HDR_isByPassMode(r16) (((r16)>> 8)&0x0001)
/* ---:--- */ #define SET32DRMBDFilter_HDR_isByPassMode(r32,v) do{(r32)&=~(0x0001<<24);(r32)|=((v)&0x0001)<<24;}while(0)
/* ---:--- */ #define SET16DRMBDFilter_HDR_isByPassMode(r16,v) do{(r16)&=~(0x0001<< 8);(r16)|=((v)&0x0001)<< 8;}while(0)
/* [25:25] */ #define BA_DRMBDFilter_HDR_isEncrypted 0x00003
/* ---:--- */ #define bDRMBDFilter_HDR_isEncrypted 1 /*bit*/
/* ---:--- */ #define LSb32DRMBDFilter_HDR_isEncrypted 25 /*:25*/
/* ---:--- */ #define MSK32DRMBDFilter_HDR_isEncrypted 0x02000000
/* ---:--- */ #define GET32DRMBDFilter_HDR_isEncrypted(r32) (((r32)>>25)&0x0001)
/* ---:--- */ #define GET16DRMBDFilter_HDR_isEncrypted(r16) (((r16)>> 9)&0x0001)
/* ---:--- */ #define SET32DRMBDFilter_HDR_isEncrypted(r32,v) do{(r32)&=~(0x0001<<25);(r32)|=((v)&0x0001)<<25;}while(0)
/* ---:--- */ #define SET16DRMBDFilter_HDR_isEncrypted(r16,v) do{(r16)&=~(0x0001<< 9);(r16)|=((v)&0x0001)<< 9;}while(0)
#define RA_DRMBDFilter_IO 0x00004
#define w32DRMBDFilter_IO { \
UNSG32 uIO_strmInPtr : 16; \
UNSG32 uIO_strmOutPtr : 16; \
}
/* @'00004 */ union { UNSG32 u32DRMBDFilter_IO;
struct w32DRMBDFilter_IO;
};
/* [15: 0] */ #define BA_DRMBDFilter_IO_strmInPtr 0x00004
/* ---:--- */ #define bDRMBDFilter_IO_strmInPtr 16 /*bit*/
/* ---:--- */ #define LSb32DRMBDFilter_IO_strmInPtr 0 /*:15*/
/* ---:--- */ #define MSK32DRMBDFilter_IO_strmInPtr 0x0000FFFF
/* ---:--- */ #define GET32DRMBDFilter_IO_strmInPtr(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMBDFilter_IO_strmInPtr(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMBDFilter_IO_strmInPtr(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMBDFilter_IO_strmInPtr(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRMBDFilter_IO_strmOutPtr 0x00006
/* ---:--- */ #define bDRMBDFilter_IO_strmOutPtr 16 /*bit*/
/* ---:--- */ #define LSb32DRMBDFilter_IO_strmOutPtr 16 /*:31*/
/* ---:--- */ #define MSK32DRMBDFilter_IO_strmOutPtr 0xFFFF0000
/* ---:--- */ #define GET32DRMBDFilter_IO_strmOutPtr(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRMBDFilter_IO_strmOutPtr(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMBDFilter_IO_strmOutPtr(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRMBDFilter_IO_strmOutPtr(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMBDFilter_D2th_ ISC_USE_ONLY 0x00008
#define w32DRMBDFilter_D2th_ { \
UNSG32 u_datBase : 16; \
UNSG32 u_ctrlBase : 16; \
}
/* @'00008 */ struct w32DRMBDFilter_D2th_;
/* [15: 0] */ #define BA_DRMBDFilter_datBase 0x00008
/* ---:--- */ #define bDRMBDFilter_datBase 16 /*bit*/
/* ---:--- */ #define LSb32DRMBDFilter_datBase 0 /*:15*/
/* ---:--- */ #define MSK32DRMBDFilter_datBase 0x0000FFFF
/* ---:--- */ #define GET32DRMBDFilter_datBase(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMBDFilter_datBase(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMBDFilter_datBase(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMBDFilter_datBase(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRMBDFilter_ctrlBase 0x0000A
/* ---:--- */ #define bDRMBDFilter_ctrlBase 16 /*bit*/
/* ---:--- */ #define LSb32DRMBDFilter_ctrlBase 16 /*:31*/
/* ---:--- */ #define MSK32DRMBDFilter_ctrlBase 0xFFFF0000
/* ---:--- */ #define GET32DRMBDFilter_ctrlBase(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRMBDFilter_ctrlBase(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMBDFilter_ctrlBase(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRMBDFilter_ctrlBase(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMBDFilter_D3th_ ISC_USE_ONLY 0x0000C
#define w32DRMBDFilter_D3th_ { \
UNSG32 u_datMaxSize : 16; \
UNSG32 u_ctrlMaxSize : 16; \
}
/* @'0000C */ struct w32DRMBDFilter_D3th_;
/* [15: 0] */ #define BA_DRMBDFilter_datMaxSize 0x0000C
/* ---:--- */ #define bDRMBDFilter_datMaxSize 16 /*bit*/
/* ---:--- */ #define LSb32DRMBDFilter_datMaxSize 0 /*:15*/
/* ---:--- */ #define MSK32DRMBDFilter_datMaxSize 0x0000FFFF
/* ---:--- */ #define GET32DRMBDFilter_datMaxSize(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMBDFilter_datMaxSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMBDFilter_datMaxSize(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMBDFilter_datMaxSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRMBDFilter_ctrlMaxSize 0x0000E
/* ---:--- */ #define bDRMBDFilter_ctrlMaxSize 16 /*bit*/
/* ---:--- */ #define LSb32DRMBDFilter_ctrlMaxSize 16 /*:31*/
/* ---:--- */ #define MSK32DRMBDFilter_ctrlMaxSize 0xFFFF0000
/* ---:--- */ #define GET32DRMBDFilter_ctrlMaxSize(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRMBDFilter_ctrlMaxSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMBDFilter_ctrlMaxSize(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRMBDFilter_ctrlMaxSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMBDFilter_D4th_ ISC_USE_ONLY 0x00010
#define w32DRMBDFilter_D4th_ { \
UNSG32 u_packStartOffset : 16; \
UNSG32 u_packSizeToRd : 16; \
}
/* @'00010 */ struct w32DRMBDFilter_D4th_;
/* [15: 0] */ #define BA_DRMBDFilter_packStartOffset 0x00010
/* ---:--- */ #define bDRMBDFilter_packStartOffset 16 /*bit*/
/* ---:--- */ #define LSb32DRMBDFilter_packStartOffset 0 /*:15*/
/* ---:--- */ #define MSK32DRMBDFilter_packStartOffset 0x0000FFFF
/* ---:--- */ #define GET32DRMBDFilter_packStartOffset(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMBDFilter_packStartOffset(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMBDFilter_packStartOffset(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMBDFilter_packStartOffset(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRMBDFilter_packSizeToRd 0x00012
/* ---:--- */ #define bDRMBDFilter_packSizeToRd 16 /*bit*/
/* ---:--- */ #define LSb32DRMBDFilter_packSizeToRd 16 /*:31*/
/* ---:--- */ #define MSK32DRMBDFilter_packSizeToRd 0xFFFF0000
/* ---:--- */ #define GET32DRMBDFilter_packSizeToRd(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRMBDFilter_packSizeToRd(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMBDFilter_packSizeToRd(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRMBDFilter_packSizeToRd(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMBDFilter_CTR 0x00014
#define w32DRMBDFilter_CTR { \
UNSG32 uCTR_strmCtrIn : 32; \
}
/* @'00014 */ union { UNSG32 u32DRMBDFilter_CTR;
struct w32DRMBDFilter_CTR;
};
/* [31: 0] */ #define BA_DRMBDFilter_CTR_strmCtrIn 0x00014
/* ---:--- */ #define bDRMBDFilter_CTR_strmCtrIn 32 /*bit*/
/* ---:--- */ #define LSb32DRMBDFilter_CTR_strmCtrIn 0 /*:31*/
/* ---:--- */ #define MSK32DRMBDFilter_CTR_strmCtrIn 0xFFFFFFFF
/* ---:--- */ #define GET32DRMBDFilter_CTR_strmCtrIn(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMBDFilter_CTR_strmCtrIn(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMBDFilter_CTR_strmCtrIn(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMBDFilter_CTR_strmCtrIn(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRMBDFilter_tkIn 0x00018
/* @'00018 */ SIE_UINT128 ie_tkIn;
#define RA_DRMBDFilter_rndKey 0x00028
/* @'00028 */ SIE_UINT128 ie_rndKey [16];
#define arr_DRMBDFilter_rndKey 16
UNSG32 _PAD_000[(0x00130-0x00128)/4];
#define RA_DRMBDFilter_pbIV 0x00130
/* @'00130 */ SIE_UINT128 ie_pbIV;
#define RA_DRMBDFilter_pbAACSConstIV 0x00140
/* @'00140 */ SIE_UINT128 ie_pbAACSConstIV;
} SIE_DRMBDFilter;
#define dftDRMBDFilter_HDR 0x00000000
typedef union { UNSG32 u32;
struct w32DRMBDFilter_HDR;
} T32DRMBDFilter_HDR;
#define dftDRMBDFilter_IO 0x00000000
typedef union { UNSG32 u32;
struct w32DRMBDFilter_IO;
} T32DRMBDFilter_IO;
#define dftDRMBDFilter_CTR 0x00000000
typedef union { UNSG32 u32;
struct w32DRMBDFilter_CTR;
} T32DRMBDFilter_CTR;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRMBDFilter_drvrd (SIE_DRMBDFilter *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRMBDFilter_drvwr (SIE_DRMBDFilter *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRMBDFilter_reset (SIE_DRMBDFilter *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRMBDFilter_check(p,pie,ps8name,hfpErrLOG) DRMBDFilter_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRMBDFilter_print(p, ps8name,hfpErrLOG) DRMBDFilter_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRMBDFilter_cmp (SIE_DRMBDFilter *p, SIE_DRMBDFilter *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRMBDFilter_import(SIE_DRMBDFilter *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRMBDFilter_export(SIE_DRMBDFilter *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRMBDFilter
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: CtrlFIFOData
* @
* $UINT64 uData REG [8]
* * *
**********************************************************************************************************************/
#ifdef h_CtrlFIFOData
#else
#define h_CtrlFIFOData
#define \
AR_CtrlFIFOData \
16
#define \
AB_CtrlFIFOData \
6
typedef struct SIE_CtrlFIFOData {
#define RA_CtrlFIFOData_uData 0x00000
/* @'00000 */ SIE_UINT64 ie_uData [8];
#define arr_CtrlFIFOData_uData 8
} SIE_CtrlFIFOData;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 CtrlFIFOData_drvrd (SIE_CtrlFIFOData *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 CtrlFIFOData_drvwr (SIE_CtrlFIFOData *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void CtrlFIFOData_reset (SIE_CtrlFIFOData *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define CtrlFIFOData_check(p,pie,ps8name,hfpErrLOG) CtrlFIFOData_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define CtrlFIFOData_print(p, ps8name,hfpErrLOG) CtrlFIFOData_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 CtrlFIFOData_cmp (SIE_CtrlFIFOData *p, SIE_CtrlFIFOData *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 CtrlFIFOData_import(SIE_CtrlFIFOData *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 CtrlFIFOData_export(SIE_CtrlFIFOData *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: CtrlFIFOData
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: KeySeedData
* @
* $UINT64 uData REG [8]
* * *
**********************************************************************************************************************/
#ifdef h_KeySeedData
#else
#define h_KeySeedData
#define \
AR_KeySeedData \
16
#define \
AB_KeySeedData \
6
typedef struct SIE_KeySeedData {
#define RA_KeySeedData_uData 0x00000
/* @'00000 */ SIE_UINT64 ie_uData [8];
#define arr_KeySeedData_uData 8
} SIE_KeySeedData;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 KeySeedData_drvrd (SIE_KeySeedData *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 KeySeedData_drvwr (SIE_KeySeedData *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void KeySeedData_reset (SIE_KeySeedData *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define KeySeedData_check(p,pie,ps8name,hfpErrLOG) KeySeedData_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define KeySeedData_print(p, ps8name,hfpErrLOG) KeySeedData_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 KeySeedData_cmp (SIE_KeySeedData *p, SIE_KeySeedData *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 KeySeedData_import(SIE_KeySeedData *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 KeySeedData_export(SIE_KeySeedData *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: KeySeedData
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: UpTKCtrlFIFO
* @
* $UINT128 uData REG [2]
* * *
* @
* $UINT128 RKEK
* * *
* @
* $UINT128 A
* * *
* @
* $UINT128 B
* * *
* @
* $UINT128 R
* * *
* @
* $UINT128 Reserved REG [2]
**********************************************************************************************************************/
#ifdef h_UpTKCtrlFIFO
#else
#define h_UpTKCtrlFIFO
#define \
AR_UpTKCtrlFIFO \
32
#define \
AB_UpTKCtrlFIFO \
7
typedef struct SIE_UpTKCtrlFIFO {
#define RA_UpTKCtrlFIFO_uData 0x00000
/* @'00000 */ SIE_UINT128 ie_uData [2];
#define arr_UpTKCtrlFIFO_uData 2
#define RA_UpTKCtrlFIFO_RKEK 0x00020
/* @'00020 */ SIE_UINT128 ie_RKEK;
#define RA_UpTKCtrlFIFO_A 0x00030
/* @'00030 */ SIE_UINT128 ie_A;
#define RA_UpTKCtrlFIFO_B 0x00040
/* @'00040 */ SIE_UINT128 ie_B;
#define RA_UpTKCtrlFIFO_R 0x00050
/* @'00050 */ SIE_UINT128 ie_R;
#define RA_UpTKCtrlFIFO_Reserved 0x00060
/* @'00060 */ SIE_UINT128 ie_Reserved [2];
#define arr_UpTKCtrlFIFO_Reserved 2
} SIE_UpTKCtrlFIFO;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 UpTKCtrlFIFO_drvrd (SIE_UpTKCtrlFIFO *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 UpTKCtrlFIFO_drvwr (SIE_UpTKCtrlFIFO *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void UpTKCtrlFIFO_reset (SIE_UpTKCtrlFIFO *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define UpTKCtrlFIFO_check(p,pie,ps8name,hfpErrLOG) UpTKCtrlFIFO_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define UpTKCtrlFIFO_print(p, ps8name,hfpErrLOG) UpTKCtrlFIFO_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 UpTKCtrlFIFO_cmp (SIE_UpTKCtrlFIFO *p, SIE_UpTKCtrlFIFO *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 UpTKCtrlFIFO_import(SIE_UpTKCtrlFIFO *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 UpTKCtrlFIFO_export(SIE_UpTKCtrlFIFO *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: UpTKCtrlFIFO
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRMDiagMultiBDCtx
* @
* $AES128_CTXDAT aesCtx REG
* @ 0x800 DAT_START
* $UINT128 datStart REG
* $UINT64 dsCmdFifo REG [16]
* * *
* * Data streamer command FIFO
* $UINT128 blkStart REG
* * *
* * Transfer Data Area
* @ 0x2C00 LA_START
* $LocalArea la
* * *
* * Local area
* @ CTX_START
* $DTCMBlkPool datInMemPool
* * *
* * Data memory pool
* $DTCMBlkPool datOutMemPool
* * *
* * Data memory pool
* @ STREAMS
* $DSStreamIn datStrmIn REG [4]
* * *
* * DS Input stream
* $CtrlFIFOData datCtrlFifo REG [4]
* * *
* * Control FIFO data
* $DSStreamOut datStrmOut REG [4]
* * *
* * DS Ouput stream
* $DSStreamOutModule datStrmOutModule
* @ FILTERS
* $DRMBDFilter bdFilterList REG [4]
* * *
* * Blue Ray DVD Context
* $UINT128 datFilterBuf REG [96]
* * *
* * Temp buffer for Filter data
* $UINT128 ctrlFilterBuf REG [8]
* * *
* * Temp buffer for Filter Control
* @ DTCMSIZE
* %unsigned 16 uTotalSize REG
* @ IMG_END
* $UINT128 resserved REG
**********************************************************************************************************************/
#ifdef h_DRMDiagMultiBDCtx
#else
#define h_DRMDiagMultiBDCtx
#define \
AR_DRMDiagMultiBDCtx \
4028
#define \
AB_DRMDiagMultiBDCtx \
14
typedef struct SIE_DRMDiagMultiBDCtx {
#define RA_DRMDiagMultiBDCtx_aesCtx 0x00000
/* @'00000 */ SIE_AES128_CTXDAT ie_aesCtx;
UNSG32 _PAD_000[(0x00800-0x00618)/4];
#define RA_DRMDiagMultiBDCtx_DAT_START 0x00800
/* @'00800 */ SIE_UINT128 ie_datStart;
#define RA_DRMDiagMultiBDCtx_dsCmdFifo 0x00810
/* @'00810 */ SIE_UINT64 ie_dsCmdFifo [16];
#define arr_DRMDiagMultiBDCtx_dsCmdFifo 16
#define RA_DRMDiagMultiBDCtx_blkStart 0x00890
/* @'00890 */ SIE_UINT128 ie_blkStart;
UNSG32 _PAD_001[(0x02C00-0x008A0)/4];
#define RA_DRMDiagMultiBDCtx_LA_START 0x02C00
/* @'02C00 */ SIE_LocalArea ie_la;
#define RA_DRMDiagMultiBDCtx_CTX_START 0x02E28
/* @'02E28 */ SIE_DTCMBlkPool ie_datInMemPool;
#define RA_DRMDiagMultiBDCtx_datOutMemPool 0x02F50
/* @'02F50 */ SIE_DTCMBlkPool ie_datOutMemPool;
#define RA_DRMDiagMultiBDCtx_STREAMS 0x03078
/* @'03078 */ SIE_DSStreamIn ie_datStrmIn [4];
#define arr_DRMDiagMultiBDCtx_datStrmIn 4
#define RA_DRMDiagMultiBDCtx_datCtrlFifo 0x03198
/* @'03198 */ SIE_CtrlFIFOData ie_datCtrlFifo [4];
#define arr_DRMDiagMultiBDCtx_datCtrlFifo 4
#define RA_DRMDiagMultiBDCtx_datStrmOut 0x03298
/* @'03298 */ SIE_DSStreamOut ie_datStrmOut [4];
#define arr_DRMDiagMultiBDCtx_datStrmOut 4
#define RA_DRMDiagMultiBDCtx_datStrmOutModule 0x032F8
/* @'032F8 */ SIE_DSStreamOutModule ie_datStrmOutModule;
#define RA_DRMDiagMultiBDCtx_FILTERS 0x03310
/* @'03310 */ SIE_DRMBDFilter ie_bdFilterList [4];
#define arr_DRMDiagMultiBDCtx_bdFilterList 4
#define RA_DRMDiagMultiBDCtx_datFilterBuf 0x03850
/* @'03850 */ SIE_UINT128 ie_datFilterBuf [96];
#define arr_DRMDiagMultiBDCtx_datFilterBuf 96
#define RA_DRMDiagMultiBDCtx_ctrlFilterBuf 0x03E50
/* @'03E50 */ SIE_UINT128 ie_ctrlFilterBuf [8];
#define arr_DRMDiagMultiBDCtx_ctrlFilterBuf 8
#define RA_DRMDiagMultiBDCtx_DTCMSIZE 0x03ED0
#define w32DRMDiagMultiBDCtx_DTCMSIZE { \
UNSG32 uDTCMSIZE_uTotalSize : 16; \
UNSG32 _x03ED0 : 16; \
}
/* @'03ED0 */ union { UNSG32 u32DRMDiagMultiBDCtx_DTCMSIZE;
struct w32DRMDiagMultiBDCtx_DTCMSIZE;
};
/* [15: 0] */ #define BA_DRMDiagMultiBDCtx_DTCMSIZE_uTotalSize 0x03ED0
/* ---:--- */ #define bDRMDiagMultiBDCtx_DTCMSIZE_uTotalSize 16 /*bit*/
/* ---:--- */ #define LSb32DRMDiagMultiBDCtx_DTCMSIZE_uTotalSize 0 /*:15*/
/* ---:--- */ #define MSK32DRMDiagMultiBDCtx_DTCMSIZE_uTotalSize 0x0000FFFF
/* ---:--- */ #define GET32DRMDiagMultiBDCtx_DTCMSIZE_uTotalSize(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMDiagMultiBDCtx_DTCMSIZE_uTotalSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMDiagMultiBDCtx_DTCMSIZE_uTotalSize(r32,v)do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMDiagMultiBDCtx_DTCMSIZE_uTotalSize(r16,v)do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMDiagMultiBDCtx_IMG_END 0x03ED4
/* @'03ED4 */ SIE_UINT128 ie_resserved;
UNSG32 _PAD_002[(0x03EF0-0x03EE4)/4];
} SIE_DRMDiagMultiBDCtx;
#define dftDRMDiagMultiBDCtx_DTCMSIZE 0x0000CCCC
typedef union { UNSG32 u32;
struct w32DRMDiagMultiBDCtx_DTCMSIZE;
} T32DRMDiagMultiBDCtx_DTCMSIZE;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRMDiagMultiBDCtx_drvrd (SIE_DRMDiagMultiBDCtx *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRMDiagMultiBDCtx_drvwr (SIE_DRMDiagMultiBDCtx *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRMDiagMultiBDCtx_reset (SIE_DRMDiagMultiBDCtx *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRMDiagMultiBDCtx_check(p,pie,ps8name,hfpErrLOG) DRMDiagMultiBDCtx_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRMDiagMultiBDCtx_print(p, ps8name,hfpErrLOG) DRMDiagMultiBDCtx_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRMDiagMultiBDCtx_cmp (SIE_DRMDiagMultiBDCtx *p, SIE_DRMDiagMultiBDCtx *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRMDiagMultiBDCtx_import(SIE_DRMDiagMultiBDCtx *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRMDiagMultiBDCtx_export(SIE_DRMDiagMultiBDCtx *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRMDiagMultiBDCtx
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRMWMFilter
* @ HDR
* %unsigned 16 filterFunc
* %unsigned 8 filterState
* : INACTIVE 0
* : STOPPED 1
* : STOPPING 2
* : RUNNING 3
* : FLUSHING 4
* : PAUSING 5
* : PAUSED 6
* %unsigned 1 isByPassMode
* @ IO
* %unsigned 16 strmInPtr
* * *
* * Address of the input data FIFO pointer
* * *
* * Size to read next time
* %unsigned 16 strmOutPtr
* * *
* * Address of the output data FIFO pointer
* @
* %unsigned 16 datBase
* * *
* * Internal data buffer
* %unsigned 16 ctrlBase
* * *
* * Internal control buffer
* @
* %unsigned 16 datMaxSize
* * *
* * Size of the internal data buffer
* %unsigned 16 ctrlMaxSize
* * *
* * Size of the internal control buffer
* @
* %unsigned 16 payLoadSize
* * *
* * Bytes left in the current BD packet
* %unsigned 16 payLoadToRead
* * *
* * Bytes left in the current payLoad packet
* @ CTR
* %unsigned 32 strmCtrIn
* * *
* * Input stream counter
* @
* $DTCMFifo keySeedFifo
* * *
* * DTCM FIFO Context for key seed, the depth of the FIFO is depend on Input Buffer Size
* @
* $UINT64 pbKeySeed
* @
* $UINT64 pbDESKey
* * *
* * DES key which is the last 8 byte of HASH value of Content Key
* @
* $UINT64 pbRC4Key REG [2]
* * *
* * RC4 Key which is generated during process the payload of WM DRM
* @
* $UINT64 pbFilterKey REG [8]
* * *
* * Filter Key data including CBC MAC key, next8byte and last8byte
* @
* %unsigned 16 isKeySet
* %unsigned 16 isKSeedOK
* @
* %unsigned 16 pbDESCtx
* %unsigned 16 reserved
**********************************************************************************************************************/
#ifdef h_DRMWMFilter
#else
#define h_DRMWMFilter
#define \
AR_DRMWMFilter \
34
#define \
AB_DRMWMFilter \
8
typedef struct SIE_DRMWMFilter {
#define RA_DRMWMFilter_HDR 0x00000
#define w32DRMWMFilter_HDR { \
UNSG32 uHDR_filterFunc : 16; \
UNSG32 uHDR_filterState : 8; \
UNSG32 uHDR_isByPassMode : 1; \
UNSG32 _x00000 : 7; \
}
/* @'00000 */ union { UNSG32 u32DRMWMFilter_HDR;
struct w32DRMWMFilter_HDR;
};
/* [15: 0] */ #define BA_DRMWMFilter_HDR_filterFunc 0x00000
/* ---:--- */ #define bDRMWMFilter_HDR_filterFunc 16 /*bit*/
/* ---:--- */ #define LSb32DRMWMFilter_HDR_filterFunc 0 /*:15*/
/* ---:--- */ #define MSK32DRMWMFilter_HDR_filterFunc 0x0000FFFF
/* ---:--- */ #define GET32DRMWMFilter_HDR_filterFunc(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMWMFilter_HDR_filterFunc(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMWMFilter_HDR_filterFunc(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMWMFilter_HDR_filterFunc(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [23:16] */ #define BA_DRMWMFilter_HDR_filterState 0x00002
/* ---:--- */ #define bDRMWMFilter_HDR_filterState 8 /*bit*/
/* ---:--- */ #define LSb32DRMWMFilter_HDR_filterState 16 /*:23*/
/* ---:--- */ #define MSK32DRMWMFilter_HDR_filterState 0x00FF0000
/* ---:--- */ #define GET32DRMWMFilter_HDR_filterState(r32) (((r32)>>16)&0x00FF)
/* ---:--- */ #define GET16DRMWMFilter_HDR_filterState(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRMWMFilter_HDR_filterState(r32,v) do{(r32)&=~(0x00FF<<16);(r32)|=((v)&0x00FF)<<16;}while(0)
/* ---:--- */ #define SET16DRMWMFilter_HDR_filterState(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
#define DRMWMFilter_HDR_filterState_INACTIVE 0x0
#define DRMWMFilter_HDR_filterState_STOPPED 0x1
#define DRMWMFilter_HDR_filterState_STOPPING 0x2
#define DRMWMFilter_HDR_filterState_RUNNING 0x3
#define DRMWMFilter_HDR_filterState_FLUSHING 0x4
#define DRMWMFilter_HDR_filterState_PAUSING 0x5
#define DRMWMFilter_HDR_filterState_PAUSED 0x6
/* [24:24] */ #define BA_DRMWMFilter_HDR_isByPassMode 0x00003
/* ---:--- */ #define bDRMWMFilter_HDR_isByPassMode 1 /*bit*/
/* ---:--- */ #define LSb32DRMWMFilter_HDR_isByPassMode 24 /*:24*/
/* ---:--- */ #define MSK32DRMWMFilter_HDR_isByPassMode 0x01000000
/* ---:--- */ #define GET32DRMWMFilter_HDR_isByPassMode(r32) (((r32)>>24)&0x0001)
/* ---:--- */ #define GET16DRMWMFilter_HDR_isByPassMode(r16) (((r16)>> 8)&0x0001)
/* ---:--- */ #define SET32DRMWMFilter_HDR_isByPassMode(r32,v) do{(r32)&=~(0x0001<<24);(r32)|=((v)&0x0001)<<24;}while(0)
/* ---:--- */ #define SET16DRMWMFilter_HDR_isByPassMode(r16,v) do{(r16)&=~(0x0001<< 8);(r16)|=((v)&0x0001)<< 8;}while(0)
#define RA_DRMWMFilter_IO 0x00004
#define w32DRMWMFilter_IO { \
UNSG32 uIO_strmInPtr : 16; \
UNSG32 uIO_strmOutPtr : 16; \
}
/* @'00004 */ union { UNSG32 u32DRMWMFilter_IO;
struct w32DRMWMFilter_IO;
};
/* [15: 0] */ #define BA_DRMWMFilter_IO_strmInPtr 0x00004
/* ---:--- */ #define bDRMWMFilter_IO_strmInPtr 16 /*bit*/
/* ---:--- */ #define LSb32DRMWMFilter_IO_strmInPtr 0 /*:15*/
/* ---:--- */ #define MSK32DRMWMFilter_IO_strmInPtr 0x0000FFFF
/* ---:--- */ #define GET32DRMWMFilter_IO_strmInPtr(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMWMFilter_IO_strmInPtr(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMWMFilter_IO_strmInPtr(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMWMFilter_IO_strmInPtr(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRMWMFilter_IO_strmOutPtr 0x00006
/* ---:--- */ #define bDRMWMFilter_IO_strmOutPtr 16 /*bit*/
/* ---:--- */ #define LSb32DRMWMFilter_IO_strmOutPtr 16 /*:31*/
/* ---:--- */ #define MSK32DRMWMFilter_IO_strmOutPtr 0xFFFF0000
/* ---:--- */ #define GET32DRMWMFilter_IO_strmOutPtr(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRMWMFilter_IO_strmOutPtr(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMWMFilter_IO_strmOutPtr(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRMWMFilter_IO_strmOutPtr(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMWMFilter_D2th_ ISC_USE_ONLY 0x00008
#define w32DRMWMFilter_D2th_ { \
UNSG32 u_datBase : 16; \
UNSG32 u_ctrlBase : 16; \
}
/* @'00008 */ struct w32DRMWMFilter_D2th_;
/* [15: 0] */ #define BA_DRMWMFilter_datBase 0x00008
/* ---:--- */ #define bDRMWMFilter_datBase 16 /*bit*/
/* ---:--- */ #define LSb32DRMWMFilter_datBase 0 /*:15*/
/* ---:--- */ #define MSK32DRMWMFilter_datBase 0x0000FFFF
/* ---:--- */ #define GET32DRMWMFilter_datBase(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMWMFilter_datBase(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMWMFilter_datBase(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMWMFilter_datBase(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRMWMFilter_ctrlBase 0x0000A
/* ---:--- */ #define bDRMWMFilter_ctrlBase 16 /*bit*/
/* ---:--- */ #define LSb32DRMWMFilter_ctrlBase 16 /*:31*/
/* ---:--- */ #define MSK32DRMWMFilter_ctrlBase 0xFFFF0000
/* ---:--- */ #define GET32DRMWMFilter_ctrlBase(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRMWMFilter_ctrlBase(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMWMFilter_ctrlBase(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRMWMFilter_ctrlBase(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMWMFilter_D3th_ ISC_USE_ONLY 0x0000C
#define w32DRMWMFilter_D3th_ { \
UNSG32 u_datMaxSize : 16; \
UNSG32 u_ctrlMaxSize : 16; \
}
/* @'0000C */ struct w32DRMWMFilter_D3th_;
/* [15: 0] */ #define BA_DRMWMFilter_datMaxSize 0x0000C
/* ---:--- */ #define bDRMWMFilter_datMaxSize 16 /*bit*/
/* ---:--- */ #define LSb32DRMWMFilter_datMaxSize 0 /*:15*/
/* ---:--- */ #define MSK32DRMWMFilter_datMaxSize 0x0000FFFF
/* ---:--- */ #define GET32DRMWMFilter_datMaxSize(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMWMFilter_datMaxSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMWMFilter_datMaxSize(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMWMFilter_datMaxSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRMWMFilter_ctrlMaxSize 0x0000E
/* ---:--- */ #define bDRMWMFilter_ctrlMaxSize 16 /*bit*/
/* ---:--- */ #define LSb32DRMWMFilter_ctrlMaxSize 16 /*:31*/
/* ---:--- */ #define MSK32DRMWMFilter_ctrlMaxSize 0xFFFF0000
/* ---:--- */ #define GET32DRMWMFilter_ctrlMaxSize(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRMWMFilter_ctrlMaxSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMWMFilter_ctrlMaxSize(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRMWMFilter_ctrlMaxSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMWMFilter_D4th_ ISC_USE_ONLY 0x00010
#define w32DRMWMFilter_D4th_ { \
UNSG32 u_payLoadSize : 16; \
UNSG32 u_payLoadToRead : 16; \
}
/* @'00010 */ struct w32DRMWMFilter_D4th_;
/* [15: 0] */ #define BA_DRMWMFilter_payLoadSize 0x00010
/* ---:--- */ #define bDRMWMFilter_payLoadSize 16 /*bit*/
/* ---:--- */ #define LSb32DRMWMFilter_payLoadSize 0 /*:15*/
/* ---:--- */ #define MSK32DRMWMFilter_payLoadSize 0x0000FFFF
/* ---:--- */ #define GET32DRMWMFilter_payLoadSize(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMWMFilter_payLoadSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMWMFilter_payLoadSize(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMWMFilter_payLoadSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRMWMFilter_payLoadToRead 0x00012
/* ---:--- */ #define bDRMWMFilter_payLoadToRead 16 /*bit*/
/* ---:--- */ #define LSb32DRMWMFilter_payLoadToRead 16 /*:31*/
/* ---:--- */ #define MSK32DRMWMFilter_payLoadToRead 0xFFFF0000
/* ---:--- */ #define GET32DRMWMFilter_payLoadToRead(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRMWMFilter_payLoadToRead(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMWMFilter_payLoadToRead(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRMWMFilter_payLoadToRead(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMWMFilter_CTR 0x00014
#define w32DRMWMFilter_CTR { \
UNSG32 uCTR_strmCtrIn : 32; \
}
/* @'00014 */ union { UNSG32 u32DRMWMFilter_CTR;
struct w32DRMWMFilter_CTR;
};
/* [31: 0] */ #define BA_DRMWMFilter_CTR_strmCtrIn 0x00014
/* ---:--- */ #define bDRMWMFilter_CTR_strmCtrIn 32 /*bit*/
/* ---:--- */ #define LSb32DRMWMFilter_CTR_strmCtrIn 0 /*:31*/
/* ---:--- */ #define MSK32DRMWMFilter_CTR_strmCtrIn 0xFFFFFFFF
/* ---:--- */ #define GET32DRMWMFilter_CTR_strmCtrIn(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMWMFilter_CTR_strmCtrIn(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMWMFilter_CTR_strmCtrIn(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMWMFilter_CTR_strmCtrIn(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRMWMFilter_keySeedFifo 0x00018
/* @'00018 */ SIE_DTCMFifo ie_keySeedFifo;
#define RA_DRMWMFilter_pbKeySeed 0x00020
/* @'00020 */ SIE_UINT64 ie_pbKeySeed;
#define RA_DRMWMFilter_pbDESKey 0x00028
/* @'00028 */ SIE_UINT64 ie_pbDESKey;
#define RA_DRMWMFilter_pbRC4Key 0x00030
/* @'00030 */ SIE_UINT64 ie_pbRC4Key [2];
#define arr_DRMWMFilter_pbRC4Key 2
#define RA_DRMWMFilter_pbFilterKey 0x00040
/* @'00040 */ SIE_UINT64 ie_pbFilterKey [8];
#define arr_DRMWMFilter_pbFilterKey 8
#define RA_DRMWMFilter_D32th_ ISC_USE_ONLY 0x00080
#define w32DRMWMFilter_D32th_ { \
UNSG32 u_isKeySet : 16; \
UNSG32 u_isKSeedOK : 16; \
}
/* @'00080 */ struct w32DRMWMFilter_D32th_;
/* [15: 0] */ #define BA_DRMWMFilter_isKeySet 0x00080
/* ---:--- */ #define bDRMWMFilter_isKeySet 16 /*bit*/
/* ---:--- */ #define LSb32DRMWMFilter_isKeySet 0 /*:15*/
/* ---:--- */ #define MSK32DRMWMFilter_isKeySet 0x0000FFFF
/* ---:--- */ #define GET32DRMWMFilter_isKeySet(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMWMFilter_isKeySet(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMWMFilter_isKeySet(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMWMFilter_isKeySet(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRMWMFilter_isKSeedOK 0x00082
/* ---:--- */ #define bDRMWMFilter_isKSeedOK 16 /*bit*/
/* ---:--- */ #define LSb32DRMWMFilter_isKSeedOK 16 /*:31*/
/* ---:--- */ #define MSK32DRMWMFilter_isKSeedOK 0xFFFF0000
/* ---:--- */ #define GET32DRMWMFilter_isKSeedOK(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRMWMFilter_isKSeedOK(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMWMFilter_isKSeedOK(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRMWMFilter_isKSeedOK(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMWMFilter_D33th_ ISC_USE_ONLY 0x00084
#define w32DRMWMFilter_D33th_ { \
UNSG32 u_pbDESCtx : 16; \
UNSG32 u_reserved : 16; \
}
/* @'00084 */ struct w32DRMWMFilter_D33th_;
/* [15: 0] */ #define BA_DRMWMFilter_pbDESCtx 0x00084
/* ---:--- */ #define bDRMWMFilter_pbDESCtx 16 /*bit*/
/* ---:--- */ #define LSb32DRMWMFilter_pbDESCtx 0 /*:15*/
/* ---:--- */ #define MSK32DRMWMFilter_pbDESCtx 0x0000FFFF
/* ---:--- */ #define GET32DRMWMFilter_pbDESCtx(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMWMFilter_pbDESCtx(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMWMFilter_pbDESCtx(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMWMFilter_pbDESCtx(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRMWMFilter_reserved 0x00086
/* ---:--- */ #define bDRMWMFilter_reserved 16 /*bit*/
/* ---:--- */ #define LSb32DRMWMFilter_reserved 16 /*:31*/
/* ---:--- */ #define MSK32DRMWMFilter_reserved 0xFFFF0000
/* ---:--- */ #define GET32DRMWMFilter_reserved(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRMWMFilter_reserved(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMWMFilter_reserved(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRMWMFilter_reserved(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
} SIE_DRMWMFilter;
#define dftDRMWMFilter_HDR 0x00000000
typedef union { UNSG32 u32;
struct w32DRMWMFilter_HDR;
} T32DRMWMFilter_HDR;
#define dftDRMWMFilter_IO 0x00000000
typedef union { UNSG32 u32;
struct w32DRMWMFilter_IO;
} T32DRMWMFilter_IO;
#define dftDRMWMFilter_CTR 0x00000000
typedef union { UNSG32 u32;
struct w32DRMWMFilter_CTR;
} T32DRMWMFilter_CTR;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRMWMFilter_drvrd (SIE_DRMWMFilter *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRMWMFilter_drvwr (SIE_DRMWMFilter *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRMWMFilter_reset (SIE_DRMWMFilter *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRMWMFilter_check(p,pie,ps8name,hfpErrLOG) DRMWMFilter_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRMWMFilter_print(p, ps8name,hfpErrLOG) DRMWMFilter_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRMWMFilter_cmp (SIE_DRMWMFilter *p, SIE_DRMWMFilter *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRMWMFilter_import(SIE_DRMWMFilter *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRMWMFilter_export(SIE_DRMWMFilter *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRMWMFilter
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRMDiagWMFilterCtx
* @ DAT_START
* $UINT128 datStart REG
* $UINT64 dsCmdFifo REG [16]
* * *
* * Data streamer command FIFO
* $UINT128 blkStart REG
* * *
* * Transfer Data Area
* @ 0x2000 LA_START
* $LocalArea la
* * *
* * Local area
* @ CTX_START
* $DTCMBlkPool datInMemPool
* * *
* * Data memory pool
* $DTCMBlkPool datOutMemPool
* * *
* * Data memory pool
* @ STREAMS
* $DSStreamIn datStrmIn REG [2]
* * *
* * DS Input stream
* $CtrlFIFOData datCtrlFifo REG [2]
* * *
* * Control FIFO data
* $KeySeedData keySeedFifo REG [2]
* * *
* * Key Seed FIFO data
* $DSStreamOut datStrmOut REG [2]
* * *
* * DS Ouput stream
* $DSStreamOutModule datStrmOutModule
* @ FILTERS
* $DRMWMFilter wmFilterList REG [1]
* * *
* * Blue Ray DVD Context
* $UINT128 datFilterBuf REG [16]
* * *
* * Temp buffer for Filter data
* $UINT128 ctrlFilterBuf REG [8]
* * *
* * Temp buffer for Filter Control
* @
* $RC4_CTXDAT rc4Ctx
* * *
* * RC4 Context
* @
* $DES_CTXDAT desCtx
* * *
* * DES Context
* @
* $CBCMAC_CTXDAT cbcCtx
* * *
* * CBC MAC Context
* @ DTCMSIZE
* %unsigned 16 uTotalSize REG
* @
* %unsigned 16 padding REG [5]
* @ IMG_END
* $UINT128 resserved REG
**********************************************************************************************************************/
#ifdef h_DRMDiagWMFilterCtx
#else
#define h_DRMDiagWMFilterCtx
#define \
AR_DRMDiagWMFilterCtx \
3630
#define \
AB_DRMDiagWMFilterCtx \
14
typedef struct SIE_DRMDiagWMFilterCtx {
#define RA_DRMDiagWMFilterCtx_DAT_START 0x00000
/* @'00000 */ SIE_UINT128 ie_datStart;
#define RA_DRMDiagWMFilterCtx_dsCmdFifo 0x00010
/* @'00010 */ SIE_UINT64 ie_dsCmdFifo [16];
#define arr_DRMDiagWMFilterCtx_dsCmdFifo 16
#define RA_DRMDiagWMFilterCtx_blkStart 0x00090
/* @'00090 */ SIE_UINT128 ie_blkStart;
UNSG32 _PAD_000[(0x02000-0x000A0)/4];
#define RA_DRMDiagWMFilterCtx_LA_START 0x02000
/* @'02000 */ SIE_LocalArea ie_la;
#define RA_DRMDiagWMFilterCtx_CTX_START 0x02228
/* @'02228 */ SIE_DTCMBlkPool ie_datInMemPool;
#define RA_DRMDiagWMFilterCtx_datOutMemPool 0x02350
/* @'02350 */ SIE_DTCMBlkPool ie_datOutMemPool;
#define RA_DRMDiagWMFilterCtx_STREAMS 0x02478
/* @'02478 */ SIE_DSStreamIn ie_datStrmIn [2];
#define arr_DRMDiagWMFilterCtx_datStrmIn 2
#define RA_DRMDiagWMFilterCtx_datCtrlFifo 0x02508
/* @'02508 */ SIE_CtrlFIFOData ie_datCtrlFifo [2];
#define arr_DRMDiagWMFilterCtx_datCtrlFifo 2
#define RA_DRMDiagWMFilterCtx_keySeedFifo 0x02588
/* @'02588 */ SIE_KeySeedData ie_keySeedFifo [2];
#define arr_DRMDiagWMFilterCtx_keySeedFifo 2
#define RA_DRMDiagWMFilterCtx_datStrmOut 0x02608
/* @'02608 */ SIE_DSStreamOut ie_datStrmOut [2];
#define arr_DRMDiagWMFilterCtx_datStrmOut 2
#define RA_DRMDiagWMFilterCtx_datStrmOutModule 0x02638
/* @'02638 */ SIE_DSStreamOutModule ie_datStrmOutModule;
#define RA_DRMDiagWMFilterCtx_FILTERS 0x02650
/* @'02650 */ SIE_DRMWMFilter ie_wmFilterList;
#define RA_DRMDiagWMFilterCtx_datFilterBuf 0x026D8
/* @'026D8 */ SIE_UINT128 ie_datFilterBuf [16];
#define arr_DRMDiagWMFilterCtx_datFilterBuf 16
#define RA_DRMDiagWMFilterCtx_ctrlFilterBuf 0x027D8
/* @'027D8 */ SIE_UINT128 ie_ctrlFilterBuf [8];
#define arr_DRMDiagWMFilterCtx_ctrlFilterBuf 8
#define RA_DRMDiagWMFilterCtx_rc4Ctx 0x02858
/* @'02858 */ SIE_RC4_CTXDAT ie_rc4Ctx;
#define RA_DRMDiagWMFilterCtx_desCtx 0x02A60
/* @'02A60 */ SIE_DES_CTXDAT ie_desCtx;
#define RA_DRMDiagWMFilterCtx_cbcCtx 0x035D8
/* @'035D8 */ SIE_CBCMAC_CTXDAT ie_cbcCtx;
#define RA_DRMDiagWMFilterCtx_DTCMSIZE 0x03898
#define w32DRMDiagWMFilterCtx_DTCMSIZE { \
UNSG32 uDTCMSIZE_uTotalSize : 16; \
UNSG32 _x03898 : 16; \
}
/* @'03898 */ union { UNSG32 u32DRMDiagWMFilterCtx_DTCMSIZE;
struct w32DRMDiagWMFilterCtx_DTCMSIZE;
};
/* [15: 0] */ #define BA_DRMDiagWMFilterCtx_DTCMSIZE_uTotalSize 0x03898
/* ---:--- */ #define bDRMDiagWMFilterCtx_DTCMSIZE_uTotalSize 16 /*bit*/
/* ---:--- */ #define LSb32DRMDiagWMFilterCtx_DTCMSIZE_uTotalSize 0 /*:15*/
/* ---:--- */ #define MSK32DRMDiagWMFilterCtx_DTCMSIZE_uTotalSize 0x0000FFFF
/* ---:--- */ #define GET32DRMDiagWMFilterCtx_DTCMSIZE_uTotalSize(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMDiagWMFilterCtx_DTCMSIZE_uTotalSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMDiagWMFilterCtx_DTCMSIZE_uTotalSize(r32,v)do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMDiagWMFilterCtx_DTCMSIZE_uTotalSize(r16,v)do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMDiagWMFilterCtx_D3623th_ ISC_USE_ONLY 0x0389C
#define w32DRMDiagWMFilterCtx_D3623th_ { \
UNSG32 u_padding_0i : 16; \
UNSG32 u_padding_1i : 16; \
}
/* @'0389C */ struct w32DRMDiagWMFilterCtx_D3623th_;
/* [15: 0] */ #define BA_DRMDiagWMFilterCtx_padding_0i 0x0389C
/* ---:--- */ #define bDRMDiagWMFilterCtx_padding_0i 16 /*bit*/
/* ---:--- */ #define LSb32DRMDiagWMFilterCtx_padding_0i 0 /*:15*/
/* ---:--- */ #define MSK32DRMDiagWMFilterCtx_padding_0i 0x0000FFFF
/* ---:--- */ #define GET32DRMDiagWMFilterCtx_padding_0i(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMDiagWMFilterCtx_padding_0i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMDiagWMFilterCtx_padding_0i(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMDiagWMFilterCtx_padding_0i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRMDiagWMFilterCtx_padding_1i 0x0389E
/* ---:--- */ #define bDRMDiagWMFilterCtx_padding_1i 16 /*bit*/
/* ---:--- */ #define LSb32DRMDiagWMFilterCtx_padding_1i 16 /*:31*/
/* ---:--- */ #define MSK32DRMDiagWMFilterCtx_padding_1i 0xFFFF0000
/* ---:--- */ #define GET32DRMDiagWMFilterCtx_padding_1i(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRMDiagWMFilterCtx_padding_1i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMDiagWMFilterCtx_padding_1i(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRMDiagWMFilterCtx_padding_1i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMDiagWMFilterCtx_D3624th_ ISC_USE_ONLY 0x038A0
#define w32DRMDiagWMFilterCtx_D3624th_ { \
UNSG32 u_padding_2i : 16; \
UNSG32 u_padding_3i : 16; \
}
/* @'038A0 */ struct w32DRMDiagWMFilterCtx_D3624th_;
/* [15: 0] */ #define BA_DRMDiagWMFilterCtx_padding_2i 0x038A0
/* ---:--- */ #define bDRMDiagWMFilterCtx_padding_2i 16 /*bit*/
/* ---:--- */ #define LSb32DRMDiagWMFilterCtx_padding_2i 0 /*:15*/
/* ---:--- */ #define MSK32DRMDiagWMFilterCtx_padding_2i 0x0000FFFF
/* ---:--- */ #define GET32DRMDiagWMFilterCtx_padding_2i(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMDiagWMFilterCtx_padding_2i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMDiagWMFilterCtx_padding_2i(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMDiagWMFilterCtx_padding_2i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRMDiagWMFilterCtx_padding_3i 0x038A2
/* ---:--- */ #define bDRMDiagWMFilterCtx_padding_3i 16 /*bit*/
/* ---:--- */ #define LSb32DRMDiagWMFilterCtx_padding_3i 16 /*:31*/
/* ---:--- */ #define MSK32DRMDiagWMFilterCtx_padding_3i 0xFFFF0000
/* ---:--- */ #define GET32DRMDiagWMFilterCtx_padding_3i(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRMDiagWMFilterCtx_padding_3i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMDiagWMFilterCtx_padding_3i(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRMDiagWMFilterCtx_padding_3i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMDiagWMFilterCtx_D3625th_ ISC_USE_ONLY 0x038A4
#define w32DRMDiagWMFilterCtx_D3625th_ { \
UNSG32 u_padding_4i : 16; \
UNSG32 _x038A4 : 16; \
}
/* @'038A4 */ struct w32DRMDiagWMFilterCtx_D3625th_;
/* [15: 0] */ #define BA_DRMDiagWMFilterCtx_padding_4i 0x038A4
/* ---:--- */ #define bDRMDiagWMFilterCtx_padding_4i 16 /*bit*/
/* ---:--- */ #define LSb32DRMDiagWMFilterCtx_padding_4i 0 /*:15*/
/* ---:--- */ #define MSK32DRMDiagWMFilterCtx_padding_4i 0x0000FFFF
/* ---:--- */ #define GET32DRMDiagWMFilterCtx_padding_4i(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRMDiagWMFilterCtx_padding_4i(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRMDiagWMFilterCtx_padding_4i(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMDiagWMFilterCtx_padding_4i(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRMDiagWMFilterCtx_IMG_END 0x038A8
/* @'038A8 */ SIE_UINT128 ie_resserved;
} SIE_DRMDiagWMFilterCtx;
#define dftDRMDiagWMFilterCtx_DTCMSIZE 0x0000CCCC
typedef union { UNSG32 u32;
struct w32DRMDiagWMFilterCtx_DTCMSIZE;
} T32DRMDiagWMFilterCtx_DTCMSIZE;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRMDiagWMFilterCtx_drvrd (SIE_DRMDiagWMFilterCtx *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRMDiagWMFilterCtx_drvwr (SIE_DRMDiagWMFilterCtx *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRMDiagWMFilterCtx_reset (SIE_DRMDiagWMFilterCtx *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRMDiagWMFilterCtx_check(p,pie,ps8name,hfpErrLOG) DRMDiagWMFilterCtx_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRMDiagWMFilterCtx_print(p, ps8name,hfpErrLOG) DRMDiagWMFilterCtx_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRMDiagWMFilterCtx_cmp (SIE_DRMDiagWMFilterCtx *p, SIE_DRMDiagWMFilterCtx *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRMDiagWMFilterCtx_import(SIE_DRMDiagWMFilterCtx *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRMDiagWMFilterCtx_export(SIE_DRMDiagWMFilterCtx *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRMDiagWMFilterCtx
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: CUSTOMER_KEYSTORE_HEADER
* @
* $DRM_SUBKEY_OUT encKey
* * *
* * The key used to protect the content
* @
* %unsigned 16 uDOBSubType
* * *
* * The Sub Type of content
* %unsigned 16 uDOBType
* * *
* * The major type of content, it's Key, Msg or Certificate
* @
* %unsigned 32 reserve
* * *
* * Reserver to align-8bytes
* @
* $DRM_DIGEST authData
* * *
* * Authentication information signed by sigKey
* @
* $UINT32 reserver REG [5]
* @
* $UINT32 uDataSize
* * *
* * Size of the plaintext of content
* @
* $UINT32 storeData
**********************************************************************************************************************/
#ifdef h_CUSTOMER_KEYSTORE_HEADER
#else
#define h_CUSTOMER_KEYSTORE_HEADER
#define \
AR_CUSTOMER_KEYSTORE_HEADER \
33
#define \
AB_CUSTOMER_KEYSTORE_HEADER \
8
typedef struct SIE_CUSTOMER_KEYSTORE_HEADER {
#define RA_CUSTOMER_KEYSTORE_HEADER_encKey 0x00000
/* @'00000 */ SIE_DRM_SUBKEY_OUT ie_encKey;
#define RA_CUSTOMER_KEYSTORE_HEADER_D16th_ ISC_USE_ONLY 0x00040
#define w32CUSTOMER_KEYSTORE_HEADER_D16th_ { \
UNSG32 u_uDOBSubType : 16; \
UNSG32 u_uDOBType : 16; \
}
/* @'00040 */ struct w32CUSTOMER_KEYSTORE_HEADER_D16th_;
/* [15: 0] */ #define BA_CUSTOMER_KEYSTORE_HEADER_uDOBSubType 0x00040
/* ---:--- */ #define bCUSTOMER_KEYSTORE_HEADER_uDOBSubType 16 /*bit*/
/* ---:--- */ #define LSb32CUSTOMER_KEYSTORE_HEADER_uDOBSubType 0 /*:15*/
/* ---:--- */ #define MSK32CUSTOMER_KEYSTORE_HEADER_uDOBSubType 0x0000FFFF
/* ---:--- */ #define GET32CUSTOMER_KEYSTORE_HEADER_uDOBSubType(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16CUSTOMER_KEYSTORE_HEADER_uDOBSubType(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32CUSTOMER_KEYSTORE_HEADER_uDOBSubType(r32,v)do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16CUSTOMER_KEYSTORE_HEADER_uDOBSubType(r16,v)do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_CUSTOMER_KEYSTORE_HEADER_uDOBType 0x00042
/* ---:--- */ #define bCUSTOMER_KEYSTORE_HEADER_uDOBType 16 /*bit*/
/* ---:--- */ #define LSb32CUSTOMER_KEYSTORE_HEADER_uDOBType 16 /*:31*/
/* ---:--- */ #define MSK32CUSTOMER_KEYSTORE_HEADER_uDOBType 0xFFFF0000
/* ---:--- */ #define GET32CUSTOMER_KEYSTORE_HEADER_uDOBType(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16CUSTOMER_KEYSTORE_HEADER_uDOBType(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32CUSTOMER_KEYSTORE_HEADER_uDOBType(r32,v)do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16CUSTOMER_KEYSTORE_HEADER_uDOBType(r16,v)do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_CUSTOMER_KEYSTORE_HEADER_D17th_ ISC_USE_ONLY 0x00044
#define w32CUSTOMER_KEYSTORE_HEADER_D17th_ { \
UNSG32 u_reserve : 32; \
}
/* @'00044 */ struct w32CUSTOMER_KEYSTORE_HEADER_D17th_;
/* [31: 0] */ #define BA_CUSTOMER_KEYSTORE_HEADER_reserve 0x00044
/* ---:--- */ #define bCUSTOMER_KEYSTORE_HEADER_reserve 32 /*bit*/
/* ---:--- */ #define LSb32CUSTOMER_KEYSTORE_HEADER_reserve 0 /*:31*/
/* ---:--- */ #define MSK32CUSTOMER_KEYSTORE_HEADER_reserve 0xFFFFFFFF
/* ---:--- */ #define GET32CUSTOMER_KEYSTORE_HEADER_reserve(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16CUSTOMER_KEYSTORE_HEADER_reserve(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32CUSTOMER_KEYSTORE_HEADER_reserve(r32,v)do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16CUSTOMER_KEYSTORE_HEADER_reserve(r16,v)do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_CUSTOMER_KEYSTORE_HEADER_authData 0x00048
/* @'00048 */ SIE_DRM_DIGEST ie_authData;
#define RA_CUSTOMER_KEYSTORE_HEADER_reserver 0x00068
/* @'00068 */ SIE_UINT32 ie_reserver [5];
#define arr_CUSTOMER_KEYSTORE_HEADER_reserver 5
#define RA_CUSTOMER_KEYSTORE_HEADER_uDataSize 0x0007C
/* @'0007C */ SIE_UINT32 ie_uDataSize;
#define RA_CUSTOMER_KEYSTORE_HEADER_storeData 0x00080
/* @'00080 */ SIE_UINT32 ie_storeData;
} SIE_CUSTOMER_KEYSTORE_HEADER;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 CUSTOMER_KEYSTORE_HEADER_drvrd (SIE_CUSTOMER_KEYSTORE_HEADER *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 CUSTOMER_KEYSTORE_HEADER_drvwr (SIE_CUSTOMER_KEYSTORE_HEADER *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void CUSTOMER_KEYSTORE_HEADER_reset (SIE_CUSTOMER_KEYSTORE_HEADER *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define CUSTOMER_KEYSTORE_HEADER_check(p,pie,ps8name,hfpErrLOG) CUSTOMER_KEYSTORE_HEADER_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define CUSTOMER_KEYSTORE_HEADER_print(p, ps8name,hfpErrLOG) CUSTOMER_KEYSTORE_HEADER_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 CUSTOMER_KEYSTORE_HEADER_cmp (SIE_CUSTOMER_KEYSTORE_HEADER *p, SIE_CUSTOMER_KEYSTORE_HEADER *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 CUSTOMER_KEYSTORE_HEADER_import(SIE_CUSTOMER_KEYSTORE_HEADER *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 CUSTOMER_KEYSTORE_HEADER_export(SIE_CUSTOMER_KEYSTORE_HEADER *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: CUSTOMER_KEYSTORE_HEADER
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DRMDiag_CUSTOMER_KEYSTORE_CTX
* @
* $DRMROM_CMD cmd
* * *
* * ROM code command and response buffer
* @
* $LocalArea la
* * *
* * Local data area
* @
* $UINT64 dsFifoDat REG [16]
* * *
* * Data streamer fifo data
* @ 0x2000
* $UINT32 cmdFlag
* * *
* * Command flag used by ARM to notice its status
* * *
* * 0xa5, to load customer key
* * *
* * 0xde, to jump to figo rom code
* @
* $UINT32 rspFlag
* * *
* * Response flag used by FIGO to notice ARM its status
* @
* %unsigned 32 uErrorCode
* : RETURN_OK 0
* : INVALID_ENC_KEYID 1
* : INVALID_SIGN_KEYID 2
* : AESUNWRAP_FAILED 3
* : CMAC_VERIFY_FAILED 4
* @
* $UINT32 uKeyId
* * *
* * Customer Key index to indicate the location in USER key area
* @
* $UINT64 custKeystore REG [50]
* * *
* * Customer key store
* @
* $UINT64 CustKeyData REG [40]
* * *
* * Buffer to contain the plain text key data
* @
* $UINT32 aesSubKey REG [4]
* * *
* * AES128 sub key context
* @
* $UINT32 signKey REG [4]
* * *
* * CMAC signature verification key
* @
* $UINT128 rndKeyBuf REG [16]
* * *
* * Temporary buffer for round keys
* @
* $UINT32 TmpBuffer REG [100]
* * *
* * Temporary buffer for data encryption
* @
* $UINT32 pbMac REG [10]
* * *
* * MAC value calcuated on the fly
* @
* $UINT32 pbIV REG [4]
* * *
* * IV vector for AES CBC mode
* @
* $UINT128 stack
* * *
* * Transfer memory
**********************************************************************************************************************/
#ifdef h_DRMDiag_CUSTOMER_KEYSTORE_CTX
#else
#define h_DRMDiag_CUSTOMER_KEYSTORE_CTX
#define \
AR_DRMDiag_CUSTOMER_KEYSTORE_CTX \
2422
#define \
AB_DRMDiag_CUSTOMER_KEYSTORE_CTX \
14
typedef struct SIE_DRMDiag_CUSTOMER_KEYSTORE_CTX {
#define RA_DRMDiag_CUSTOMER_KEYSTORE_CTX_cmd 0x00000
/* @'00000 */ SIE_DRMROM_CMD ie_cmd;
#define RA_DRMDiag_CUSTOMER_KEYSTORE_CTX_la 0x00028
/* @'00028 */ SIE_LocalArea ie_la;
#define RA_DRMDiag_CUSTOMER_KEYSTORE_CTX_dsFifoDat 0x00250
/* @'00250 */ SIE_UINT64 ie_dsFifoDat [16];
#define arr_DRMDiag_CUSTOMER_KEYSTORE_CTX_dsFifoDat 16
UNSG32 _PAD_000[(0x02000-0x002D0)/4];
#define RA_DRMDiag_CUSTOMER_KEYSTORE_CTX_cmdFlag 0x02000
/* @'02000 */ SIE_UINT32 ie_cmdFlag;
#define RA_DRMDiag_CUSTOMER_KEYSTORE_CTX_rspFlag 0x02004
/* @'02004 */ SIE_UINT32 ie_rspFlag;
#define RA_DRMDiag_CUSTOMER_KEYSTORE_CTX_D2050th_ ISC_USE_ONLY 0x02008
#define w32DRMDiag_CUSTOMER_KEYSTORE_CTX_D2050th_ { \
UNSG32 u_uErrorCode : 32; \
}
/* @'02008 */ struct w32DRMDiag_CUSTOMER_KEYSTORE_CTX_D2050th_;
/* [31: 0] */ #define BA_DRMDiag_CUSTOMER_KEYSTORE_CTX_uErrorCode 0x02008
/* ---:--- */ #define bDRMDiag_CUSTOMER_KEYSTORE_CTX_uErrorCode 32 /*bit*/
/* ---:--- */ #define LSb32DRMDiag_CUSTOMER_KEYSTORE_CTX_uErrorCode 0 /*:31*/
/* ---:--- */ #define MSK32DRMDiag_CUSTOMER_KEYSTORE_CTX_uErrorCode 0xFFFFFFFF
/* ---:--- */ #define GET32DRMDiag_CUSTOMER_KEYSTORE_CTX_uErrorCode(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRMDiag_CUSTOMER_KEYSTORE_CTX_uErrorCode(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRMDiag_CUSTOMER_KEYSTORE_CTX_uErrorCode(r32,v)do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRMDiag_CUSTOMER_KEYSTORE_CTX_uErrorCode(r16,v)do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define DRMDiag_CUSTOMER_KEYSTORE_CTX_uErrorCode_RETURN_OK 0x0
#define DRMDiag_CUSTOMER_KEYSTORE_CTX_uErrorCode_INVALID_ENC_KEYID 0x1
#define DRMDiag_CUSTOMER_KEYSTORE_CTX_uErrorCode_INVALID_SIGN_KEYID 0x2
#define DRMDiag_CUSTOMER_KEYSTORE_CTX_uErrorCode_AESUNWRAP_FAILED 0x3
#define DRMDiag_CUSTOMER_KEYSTORE_CTX_uErrorCode_CMAC_VERIFY_FAILED 0x4
#define RA_DRMDiag_CUSTOMER_KEYSTORE_CTX_uKeyId 0x0200C
/* @'0200C */ SIE_UINT32 ie_uKeyId;
#define RA_DRMDiag_CUSTOMER_KEYSTORE_CTX_custKeystore 0x02010
/* @'02010 */ SIE_UINT64 ie_custKeystore [50];
#define arr_DRMDiag_CUSTOMER_KEYSTORE_CTX_custKeystore 50
#define RA_DRMDiag_CUSTOMER_KEYSTORE_CTX_CustKeyData 0x021A0
/* @'021A0 */ SIE_UINT64 ie_CustKeyData [40];
#define arr_DRMDiag_CUSTOMER_KEYSTORE_CTX_CustKeyData 40
#define RA_DRMDiag_CUSTOMER_KEYSTORE_CTX_aesSubKey 0x022E0
/* @'022E0 */ SIE_UINT32 ie_aesSubKey [4];
#define arr_DRMDiag_CUSTOMER_KEYSTORE_CTX_aesSubKey 4
#define RA_DRMDiag_CUSTOMER_KEYSTORE_CTX_signKey 0x022F0
/* @'022F0 */ SIE_UINT32 ie_signKey [4];
#define arr_DRMDiag_CUSTOMER_KEYSTORE_CTX_signKey 4
#define RA_DRMDiag_CUSTOMER_KEYSTORE_CTX_rndKeyBuf 0x02300
/* @'02300 */ SIE_UINT128 ie_rndKeyBuf [16];
#define arr_DRMDiag_CUSTOMER_KEYSTORE_CTX_rndKeyBuf 16
#define RA_DRMDiag_CUSTOMER_KEYSTORE_CTX_TmpBuffer 0x02400
/* @'02400 */ SIE_UINT32 ie_TmpBuffer [100];
#define arr_DRMDiag_CUSTOMER_KEYSTORE_CTX_TmpBuffer 100
#define RA_DRMDiag_CUSTOMER_KEYSTORE_CTX_pbMac 0x02590
/* @'02590 */ SIE_UINT32 ie_pbMac [10];
#define arr_DRMDiag_CUSTOMER_KEYSTORE_CTX_pbMac 10
#define RA_DRMDiag_CUSTOMER_KEYSTORE_CTX_pbIV 0x025B8
/* @'025B8 */ SIE_UINT32 ie_pbIV [4];
#define arr_DRMDiag_CUSTOMER_KEYSTORE_CTX_pbIV 4
#define RA_DRMDiag_CUSTOMER_KEYSTORE_CTX_stack 0x025C8
/* @'025C8 */ SIE_UINT128 ie_stack;
} SIE_DRMDiag_CUSTOMER_KEYSTORE_CTX;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DRMDiag_CUSTOMER_KEYSTORE_CTX_drvrd (SIE_DRMDiag_CUSTOMER_KEYSTORE_CTX *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DRMDiag_CUSTOMER_KEYSTORE_CTX_drvwr (SIE_DRMDiag_CUSTOMER_KEYSTORE_CTX *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DRMDiag_CUSTOMER_KEYSTORE_CTX_reset (SIE_DRMDiag_CUSTOMER_KEYSTORE_CTX *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DRMDiag_CUSTOMER_KEYSTORE_CTX_check(p,pie,ps8name,hfpErrLOG) DRMDiag_CUSTOMER_KEYSTORE_CTX_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DRMDiag_CUSTOMER_KEYSTORE_CTX_print(p, ps8name,hfpErrLOG) DRMDiag_CUSTOMER_KEYSTORE_CTX_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DRMDiag_CUSTOMER_KEYSTORE_CTX_cmp (SIE_DRMDiag_CUSTOMER_KEYSTORE_CTX *p, SIE_DRMDiag_CUSTOMER_KEYSTORE_CTX *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DRMDiag_CUSTOMER_KEYSTORE_CTX_import(SIE_DRMDiag_CUSTOMER_KEYSTORE_CTX *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DRMDiag_CUSTOMER_KEYSTORE_CTX_export(SIE_DRMDiag_CUSTOMER_KEYSTORE_CTX *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DRMDiag_CUSTOMER_KEYSTORE_CTX
**********************************************************************************************************************/
#pragma pack()
#ifdef __cplusplus
}
#endif
#endif /* _customer_keystore_spec_h */
/**********************************************************************************************************************
* ENDOFFILE (by "Interface Specification Compiler" ver-1.0): customer_keystore_spec.h
**********************************************************************************************************************/