blob: a957b3231c26b4a2c753c6563b0ecb78f72685e7 [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> : diag_biu_firewall_spec.h
**********************************************************************************************************************/
#ifdef _diag_biu_firewall_spec_h
#else
#define _diag_biu_firewall_spec_h "_firewall_spec_h >>> "
#include "ctypes.h"
#pragma pack(4)
#ifdef __cplusplus
extern "C"
{
#endif
/**********************************************************************************************************************
* 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: 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: DSFifo16
* @
* %unsigned 16 nWrOff 0
* * *
* * Current FIFO write offset from the base address of the FIFO
* %unsigned 16 nMaxSize 0
* * *
* * Maximum size of the FIFO size
* %unsigned 32 pbBase 0
* * *
* * 32-bits address of the FIFO buffer base in DDR
**********************************************************************************************************************/
#ifdef h_DSFifo16
#else
#define h_DSFifo16
#define \
AR_DSFifo16 \
2
#define \
AB_DSFifo16 \
3
typedef struct SIE_DSFifo16 {
#define RA_DSFifo16_D0th_ ISC_USE_ONLY 0x00000
#define w32DSFifo16_D0th_ { \
UNSG32 u_nWrOff : 16; \
UNSG32 u_nMaxSize : 16; \
}
/* @'00000 */ struct w32DSFifo16_D0th_;
/* [15: 0] */ #define BA_DSFifo16_nWrOff 0x00000
/* ---:--- */ #define bDSFifo16_nWrOff 16 /*bit*/
/* ---:--- */ #define LSb32DSFifo16_nWrOff 0 /*:15*/
/* ---:--- */ #define MSK32DSFifo16_nWrOff 0x0000FFFF
/* ---:--- */ #define GET32DSFifo16_nWrOff(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DSFifo16_nWrOff(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DSFifo16_nWrOff(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DSFifo16_nWrOff(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DSFifo16_nMaxSize 0x00002
/* ---:--- */ #define bDSFifo16_nMaxSize 16 /*bit*/
/* ---:--- */ #define LSb32DSFifo16_nMaxSize 16 /*:31*/
/* ---:--- */ #define MSK32DSFifo16_nMaxSize 0xFFFF0000
/* ---:--- */ #define GET32DSFifo16_nMaxSize(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DSFifo16_nMaxSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DSFifo16_nMaxSize(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DSFifo16_nMaxSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DSFifo16_D1th_ ISC_USE_ONLY 0x00004
#define w32DSFifo16_D1th_ { \
UNSG32 u_pbBase : 32; \
}
/* @'00004 */ struct w32DSFifo16_D1th_;
/* [31: 0] */ #define BA_DSFifo16_pbBase 0x00004
/* ---:--- */ #define bDSFifo16_pbBase 32 /*bit*/
/* ---:--- */ #define LSb32DSFifo16_pbBase 0 /*:31*/
/* ---:--- */ #define MSK32DSFifo16_pbBase 0xFFFFFFFF
/* ---:--- */ #define GET32DSFifo16_pbBase(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DSFifo16_pbBase(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DSFifo16_pbBase(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DSFifo16_pbBase(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_DSFifo16;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DSFifo16_drvrd (SIE_DSFifo16 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 DSFifo16_drvwr (SIE_DSFifo16 *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DSFifo16_reset (SIE_DSFifo16 *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DSFifo16_check(p,pie,ps8name,hfpErrLOG) DSFifo16_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DSFifo16_print(p, ps8name,hfpErrLOG) DSFifo16_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DSFifo16_cmp (SIE_DSFifo16 *p, SIE_DSFifo16 *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DSFifo16_import(SIE_DSFifo16 *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DSFifo16_export(SIE_DSFifo16 *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DSFifo16
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DSFifo32
* @
* %unsigned 32 nRdOff 0
* * *
* * Current FIFO read offset from the base address of the FIFO
* @
* %unsigned 32 nWrOff 0
* * *
* * Current FIFO write offset from the base address of the FIFO
* @
* %unsigned 32 pbBase 0
* * *
* * 32-bits address of the FIFO buffer base in DDR
* @
* %unsigned 32 nMaxSize 0
* * *
* * Maximum size of the FIFO size
**********************************************************************************************************************/
#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_nWrOff : 32; \
}
/* @'00004 */ struct w32DSFifo32_D1th_;
/* [31: 0] */ #define BA_DSFifo32_nWrOff 0x00004
/* ---:--- */ #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_D2th_ ISC_USE_ONLY 0x00008
#define w32DSFifo32_D2th_ { \
UNSG32 u_pbBase : 32; \
}
/* @'00008 */ struct w32DSFifo32_D2th_;
/* [31: 0] */ #define BA_DSFifo32_pbBase 0x00008
/* ---:--- */ #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_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: LocalArea
* @
* %unsigned 16 uDsCmdIdRet REG
* * *Data streamer retired command ID
* %unsigned 16 uNextDsCmdId REG
* * *Next data streamer command ID
* @
* $UINT32 uRetCmdSeqNum REG
* * *
* * Return command sequence number
* @ REGDUMP
* $UINT64 regDumpArea REG [32]
* * *
* * Registers Dumping Area for debug purpose
* @
* $DTCMFifo hboFifoList REG [16]
* * *
* * HBO Fifo Pointer Information
**********************************************************************************************************************/
#ifdef h_LocalArea
#else
#define h_LocalArea
#define \
AR_LocalArea \
98
#define \
AB_LocalArea \
9
typedef struct SIE_LocalArea {
#define RA_LocalArea_D0th_ ISC_USE_ONLY 0x00000
#define w32LocalArea_D0th_ { \
UNSG32 u_uDsCmdIdRet : 16; \
UNSG32 u_uNextDsCmdId : 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)
/* [31:16] */ #define BA_LocalArea_uNextDsCmdId 0x00002
/* ---:--- */ #define bLocalArea_uNextDsCmdId 16 /*bit*/
/* ---:--- */ #define LSb32LocalArea_uNextDsCmdId 16 /*:31*/
/* ---:--- */ #define MSK32LocalArea_uNextDsCmdId 0xFFFF0000
/* ---:--- */ #define GET32LocalArea_uNextDsCmdId(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16LocalArea_uNextDsCmdId(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32LocalArea_uNextDsCmdId(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16LocalArea_uNextDsCmdId(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_LocalArea_uRetCmdSeqNum 0x00004
/* @'00004 */ SIE_UINT32 ie_uRetCmdSeqNum;
#define RA_LocalArea_REGDUMP 0x00008
/* @'00008 */ SIE_UINT64 ie_regDumpArea [32];
#define arr_LocalArea_regDumpArea 32
#define RA_LocalArea_hboFifoList 0x00108
/* @'00108 */ SIE_DTCMFifo ie_hboFifoList [16];
#define arr_LocalArea_hboFifoList 16
} SIE_LocalArea;
/* 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: FIGOSYS_OTP
* @
* $UINT128 RKEK 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.
* @
* $UINT128 VERIFY_KEY 0
* * *128-bit signature verification key , which is given by Marvell customer to burn when the system boot up for the first time
* @
* $UINT128 UID 0
* * *128-bit reserved for customer to save the identification information
* @
* $UINT32 FEATURE 0
* * *32-bit feature information
* @
* $UINT1024 PKEY 0
* * *Customers public keys
**********************************************************************************************************************/
#ifdef h_FIGOSYS_OTP
#else
#define h_FIGOSYS_OTP
#define \
AR_FIGOSYS_OTP \
45
#define \
AB_FIGOSYS_OTP \
8
typedef struct SIE_FIGOSYS_OTP {
#define RA_FIGOSYS_OTP_RKEK 0x00000
/* @'00000 */ SIE_UINT128 ie_RKEK;
#define RA_FIGOSYS_OTP_VERIFY_KEY 0x00010
/* @'00010 */ SIE_UINT128 ie_VERIFY_KEY;
#define RA_FIGOSYS_OTP_UID 0x00020
/* @'00020 */ SIE_UINT128 ie_UID;
#define RA_FIGOSYS_OTP_FEATURE 0x00030
/* @'00030 */ SIE_UINT32 ie_FEATURE;
#define RA_FIGOSYS_OTP_PKEY 0x00034
/* @'00034 */ SIE_UINT1024 ie_PKEY;
} SIE_FIGOSYS_OTP;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 FIGOSYS_OTP_drvrd (SIE_FIGOSYS_OTP *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 FIGOSYS_OTP_drvwr (SIE_FIGOSYS_OTP *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void FIGOSYS_OTP_reset (SIE_FIGOSYS_OTP *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define FIGOSYS_OTP_check(p,pie,ps8name,hfpErrLOG) FIGOSYS_OTP_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define FIGOSYS_OTP_print(p, ps8name,hfpErrLOG) FIGOSYS_OTP_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 FIGOSYS_OTP_cmp (SIE_FIGOSYS_OTP *p, SIE_FIGOSYS_OTP *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 FIGOSYS_OTP_import(SIE_FIGOSYS_OTP *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 FIGOSYS_OTP_export(SIE_FIGOSYS_OTP *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: FIGOSYS_OTP
**********************************************************************************************************************/
/**********************************************************************************************************************
* 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: SECSTATUS
* @
* %unsigned 2 flag 0
* : DISABLED 0
* * *
* * The secure processor is not valid so far
* : ENABLED 1
* * *
* * The secure processor is valid now
* : FAILED 1
* * *
* * The secure processor failed to check the hardware status. The error code is given by errCode. Whenever this flag is specified by 'FAILED', a fatal hardware defection is detected by FIGO. All the BIU firewall will be disabled by ARM.
* %unsigned 14 Reserved
* %unsigned 16 errCode
* * *
* * If flag is FAILED, this field will indicate the error NO
* @
* %unsigned 1 secLevelEn 0
* * *
* * Flag to indicate whether the security level bits are available or not.
* %unsigned 15 secLevelBits 0
* * *
* * Current security level bits specified by ARM
**********************************************************************************************************************/
#ifdef h_SECSTATUS
#else
#define h_SECSTATUS
#define \
AR_SECSTATUS \
2
#define \
AB_SECSTATUS \
3
typedef struct SIE_SECSTATUS {
#define RA_SECSTATUS_D0th_ ISC_USE_ONLY 0x00000
#define w32SECSTATUS_D0th_ { \
UNSG32 u_flag : 2; \
UNSG32 u_Reserved : 14; \
UNSG32 u_errCode : 16; \
}
/* @'00000 */ struct w32SECSTATUS_D0th_;
/* [ 1: 0] */ #define BA_SECSTATUS_flag 0x00000
/* ---:--- */ #define bSECSTATUS_flag 2 /*bit*/
/* ---:--- */ #define LSb32SECSTATUS_flag 0 /*: 1*/
/* ---:--- */ #define MSK32SECSTATUS_flag 0x00000003
/* ---:--- */ #define GET32SECSTATUS_flag(r32) (((r32)>> 0)&0x0003)
/* ---:--- */ #define GET16SECSTATUS_flag(r16) (((r16)>> 0)&0x0003)
/* ---:--- */ #define SET32SECSTATUS_flag(r32,v) do{(r32)&=~(0x0003<< 0);(r32)|=((v)&0x0003)<< 0;}while(0)
/* ---:--- */ #define SET16SECSTATUS_flag(r16,v) do{(r16)&=~(0x0003<< 0);(r16)|=((v)&0x0003)<< 0;}while(0)
#define SECSTATUS_flag_DISABLED 0x0
#define SECSTATUS_flag_ENABLED 0x1
#define SECSTATUS_flag_FAILED 0x1
/* [15: 2] */ #define BA_SECSTATUS_Reserved 0x00000
/* ---:--- */ #define bSECSTATUS_Reserved 14 /*bit*/
/* ---:--- */ #define LSb32SECSTATUS_Reserved 2 /*:15*/
/* ---:--- */ #define MSK32SECSTATUS_Reserved 0x0000FFFC
/* ---:--- */ #define GET32SECSTATUS_Reserved(r32) (((r32)>> 2)&0x3FFF)
/* ---:--- */ #define GET16SECSTATUS_Reserved(r16) (((r16)>> 2)&0x3FFF)
/* ---:--- */ #define SET32SECSTATUS_Reserved(r32,v) do{(r32)&=~(0x3FFF<< 2);(r32)|=((v)&0x3FFF)<< 2;}while(0)
/* ---:--- */ #define SET16SECSTATUS_Reserved(r16,v) do{(r16)&=~(0x3FFF<< 2);(r16)|=((v)&0x3FFF)<< 2;}while(0)
/* [31:16] */ #define BA_SECSTATUS_errCode 0x00002
/* ---:--- */ #define bSECSTATUS_errCode 16 /*bit*/
/* ---:--- */ #define LSb32SECSTATUS_errCode 16 /*:31*/
/* ---:--- */ #define MSK32SECSTATUS_errCode 0xFFFF0000
/* ---:--- */ #define GET32SECSTATUS_errCode(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16SECSTATUS_errCode(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32SECSTATUS_errCode(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16SECSTATUS_errCode(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_SECSTATUS_D1th_ ISC_USE_ONLY 0x00004
#define w32SECSTATUS_D1th_ { \
UNSG32 u_secLevelEn : 1; \
UNSG32 u_secLevelBits : 15; \
UNSG32 _x00004 : 16; \
}
/* @'00004 */ struct w32SECSTATUS_D1th_;
/* [ 0: 0] */ #define BA_SECSTATUS_secLevelEn 0x00004
/* ---:--- */ #define bSECSTATUS_secLevelEn 1 /*bit*/
/* ---:--- */ #define LSb32SECSTATUS_secLevelEn 0 /*: 0*/
/* ---:--- */ #define MSK32SECSTATUS_secLevelEn 0x00000001
/* ---:--- */ #define GET32SECSTATUS_secLevelEn(r32) (((r32)>> 0)&0x0001)
/* ---:--- */ #define GET16SECSTATUS_secLevelEn(r16) (((r16)>> 0)&0x0001)
/* ---:--- */ #define SET32SECSTATUS_secLevelEn(r32,v) do{(r32)&=~(0x0001<< 0);(r32)|=((v)&0x0001)<< 0;}while(0)
/* ---:--- */ #define SET16SECSTATUS_secLevelEn(r16,v) do{(r16)&=~(0x0001<< 0);(r16)|=((v)&0x0001)<< 0;}while(0)
/* [15: 1] */ #define BA_SECSTATUS_secLevelBits 0x00004
/* ---:--- */ #define bSECSTATUS_secLevelBits 15 /*bit*/
/* ---:--- */ #define LSb32SECSTATUS_secLevelBits 1 /*:15*/
/* ---:--- */ #define MSK32SECSTATUS_secLevelBits 0x0000FFFE
/* ---:--- */ #define GET32SECSTATUS_secLevelBits(r32) (((r32)>> 1)&0x7FFF)
/* ---:--- */ #define GET16SECSTATUS_secLevelBits(r16) (((r16)>> 1)&0x7FFF)
/* ---:--- */ #define SET32SECSTATUS_secLevelBits(r32,v) do{(r32)&=~(0x7FFF<< 1);(r32)|=((v)&0x7FFF)<< 1;}while(0)
/* ---:--- */ #define SET16SECSTATUS_secLevelBits(r16,v) do{(r16)&=~(0x7FFF<< 1);(r16)|=((v)&0x7FFF)<< 1;}while(0)
} SIE_SECSTATUS;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 SECSTATUS_drvrd (SIE_SECSTATUS *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST);
/* Member function: generate write-commands or direct-write (or self test write) and return write count */
SIGN32 SECSTATUS_drvwr (SIE_SECSTATUS *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void SECSTATUS_reset (SIE_SECSTATUS *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define SECSTATUS_check(p,pie,ps8name,hfpErrLOG) SECSTATUS_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define SECSTATUS_print(p, ps8name,hfpErrLOG) SECSTATUS_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 SECSTATUS_cmp (SIE_SECSTATUS *p, SIE_SECSTATUS *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 SECSTATUS_import(SIE_SECSTATUS *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 SECSTATUS_export(SIE_SECSTATUS *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: SECSTATUS
**********************************************************************************************************************/
/**********************************************************************************************************************
* 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_CTXID
* @ DAT
* %unsigned 8 ctxID
* * *
* * Context ID
* : RKEK 0x01
* * *
* * Root Key wrapping key ID
* : SIGNK 0x02
* * *
* * Signature key
* : UKEY 0x03
* * *
* * 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_UKEY 0x3
#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 32 reserved
* * *
* * Reserved bits
* @
* $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_reserved : 32; \
}
/* @'00004 */ struct w32DRM_DIGEST_D1th_;
/* [31: 0] */ #define BA_DRM_DIGEST_reserved 0x00004
/* ---:--- */ #define bDRM_DIGEST_reserved 32 /*bit*/
/* ---:--- */ #define LSb32DRM_DIGEST_reserved 0 /*:31*/
/* ---:--- */ #define MSK32DRM_DIGEST_reserved 0xFFFFFFFF
/* ---:--- */ #define GET32DRM_DIGEST_reserved(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRM_DIGEST_reserved(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRM_DIGEST_reserved(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_DIGEST_reserved(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 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 REG [3]
* @
* $UINT128 keyData
* * *
* * Sub key cipher text protected by RKEK
* @
* $DRM_DIGEST keyHash
* * *
* * Hash value of the sub key plain text
**********************************************************************************************************************/
#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 [3];
#define arr_DRM_SUBKEY_OUT_reserved 3
#define RA_DRM_SUBKEY_OUT_keyData 0x00010
/* @'00010 */ SIE_UINT128 ie_keyData;
#define RA_DRM_SUBKEY_OUT_keyHash 0x00020
/* @'00020 */ SIE_DRM_DIGEST ie_keyHash;
} 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
* @
* %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_RSAKEYCTX1024_IN
* @
* %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
#else
#define h_DRM_RSAKEYCTX1024_IN
#define \
AR_DRM_RSAKEYCTX1024_IN \
20
#define \
AB_DRM_RSAKEYCTX1024_IN \
7
typedef struct SIE_DRM_RSAKEYCTX1024_IN {
#define RA_DRM_RSAKEYCTX1024_IN_D0th_ ISC_USE_ONLY 0x00000
#define w32DRM_RSAKEYCTX1024_IN_D0th_ { \
UNSG32 u_ctxSize : 16; \
UNSG32 u_ctxType : 8; \
UNSG32 _x00000 : 8; \
}
/* @'00000 */ struct w32DRM_RSAKEYCTX1024_IN_D0th_;
/* [15: 0] */ #define BA_DRM_RSAKEYCTX1024_IN_ctxSize 0x00000
/* ---:--- */ #define bDRM_RSAKEYCTX1024_IN_ctxSize 16 /*bit*/
/* ---:--- */ #define LSb32DRM_RSAKEYCTX1024_IN_ctxSize 0 /*:15*/
/* ---:--- */ #define MSK32DRM_RSAKEYCTX1024_IN_ctxSize 0x0000FFFF
/* ---:--- */ #define GET32DRM_RSAKEYCTX1024_IN_ctxSize(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRM_RSAKEYCTX1024_IN_ctxSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_RSAKEYCTX1024_IN_ctxSize(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_RSAKEYCTX1024_IN_ctxSize(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [23:16] */ #define BA_DRM_RSAKEYCTX1024_IN_ctxType 0x00002
/* ---:--- */ #define bDRM_RSAKEYCTX1024_IN_ctxType 8 /*bit*/
/* ---:--- */ #define LSb32DRM_RSAKEYCTX1024_IN_ctxType 16 /*:23*/
/* ---:--- */ #define MSK32DRM_RSAKEYCTX1024_IN_ctxType 0x00FF0000
/* ---:--- */ #define GET32DRM_RSAKEYCTX1024_IN_ctxType(r32) (((r32)>>16)&0x00FF)
/* ---:--- */ #define GET16DRM_RSAKEYCTX1024_IN_ctxType(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRM_RSAKEYCTX1024_IN_ctxType(r32,v) do{(r32)&=~(0x00FF<<16);(r32)|=((v)&0x00FF)<<16;}while(0)
/* ---:--- */ #define SET16DRM_RSAKEYCTX1024_IN_ctxType(r16,v) do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
#define RA_DRM_RSAKEYCTX1024_IN_D1th_ ISC_USE_ONLY 0x00004
#define w32DRM_RSAKEYCTX1024_IN_D1th_ { \
UNSG32 u_reserved0 : 32; \
}
/* @'00004 */ struct w32DRM_RSAKEYCTX1024_IN_D1th_;
/* [31: 0] */ #define BA_DRM_RSAKEYCTX1024_IN_reserved0 0x00004
/* ---:--- */ #define bDRM_RSAKEYCTX1024_IN_reserved0 32 /*bit*/
/* ---:--- */ #define LSb32DRM_RSAKEYCTX1024_IN_reserved0 0 /*:31*/
/* ---:--- */ #define MSK32DRM_RSAKEYCTX1024_IN_reserved0 0xFFFFFFFF
/* ---:--- */ #define GET32DRM_RSAKEYCTX1024_IN_reserved0(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRM_RSAKEYCTX1024_IN_reserved0(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRM_RSAKEYCTX1024_IN_reserved0(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_RSAKEYCTX1024_IN_reserved0(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRM_RSAKEYCTX1024_IN_keyParm 0x00008
/* @'00008 */ SIE_DRM_KEYPARM_RSA ie_keyParm;
#define RA_DRM_RSAKEYCTX1024_IN_hashVal 0x00010
/* @'00010 */ SIE_DRM_DIGEST ie_hashVal;
#define RA_DRM_RSAKEYCTX1024_IN_D12th_ ISC_USE_ONLY 0x00030
#define w32DRM_RSAKEYCTX1024_IN_D12th_ { \
UNSG32 u_keyUsageRule : 8; \
UNSG32 _x00030 : 24; \
}
/* @'00030 */ struct w32DRM_RSAKEYCTX1024_IN_D12th_;
/* [ 7: 0] */ #define BA_DRM_RSAKEYCTX1024_IN_keyUsageRule 0x00030
/* ---:--- */ #define bDRM_RSAKEYCTX1024_IN_keyUsageRule 8 /*bit*/
/* ---:--- */ #define LSb32DRM_RSAKEYCTX1024_IN_keyUsageRule 0 /*: 7*/
/* ---:--- */ #define MSK32DRM_RSAKEYCTX1024_IN_keyUsageRule 0x000000FF
/* ---:--- */ #define GET32DRM_RSAKEYCTX1024_IN_keyUsageRule(r32) (((r32)>> 0)&0x00FF)
/* ---:--- */ #define GET16DRM_RSAKEYCTX1024_IN_keyUsageRule(r16) (((r16)>> 0)&0x00FF)
/* ---:--- */ #define SET32DRM_RSAKEYCTX1024_IN_keyUsageRule(r32,v)do{(r32)&=~(0x00FF<< 0);(r32)|=((v)&0x00FF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_RSAKEYCTX1024_IN_keyUsageRule(r16,v)do{(r16)&=~(0x00FF<< 0);(r16)|=((v)&0x00FF)<< 0;}while(0)
#define DRM_RSAKEYCTX1024_IN_keyUsageRule_KUL_SIGN 0x1
#define DRM_RSAKEYCTX1024_IN_keyUsageRule_KUL_KEK 0x2
#define DRM_RSAKEYCTX1024_IN_keyUsageRule_KUL_ENC 0x4
#define DRM_RSAKEYCTX1024_IN_keyUsageRule_KUL_DEC 0x4
#define DRM_RSAKEYCTX1024_IN_keyUsageRule_KUL_EXPORT 0x8
#define DRM_RSAKEYCTX1024_IN_keyUsageRule_KUL_AUTH 0x10
#define RA_DRM_RSAKEYCTX1024_IN_D13th_ ISC_USE_ONLY 0x00034
#define w32DRM_RSAKEYCTX1024_IN_D13th_ { \
UNSG32 u_reserved1 : 32; \
}
/* @'00034 */ struct w32DRM_RSAKEYCTX1024_IN_D13th_;
/* [31: 0] */ #define BA_DRM_RSAKEYCTX1024_IN_reserved1 0x00034
/* ---:--- */ #define bDRM_RSAKEYCTX1024_IN_reserved1 32 /*bit*/
/* ---:--- */ #define LSb32DRM_RSAKEYCTX1024_IN_reserved1 0 /*:31*/
/* ---:--- */ #define MSK32DRM_RSAKEYCTX1024_IN_reserved1 0xFFFFFFFF
/* ---:--- */ #define GET32DRM_RSAKEYCTX1024_IN_reserved1(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DRM_RSAKEYCTX1024_IN_reserved1(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DRM_RSAKEYCTX1024_IN_reserved1(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_RSAKEYCTX1024_IN_reserved1(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_DRM_RSAKEYCTX1024_IN_keyPwd 0x00038
/* @'00038 */ SIE_UINT64 ie_keyPwd;
#define RA_DRM_RSAKEYCTX1024_IN_keyData 0x00040
/* @'00040 */ SIE_UINT128 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_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
* @ CFG
* %unsigned 16 insNum 0
* * *
* * Static data area size in 64bits entries
* %unsigned 16 datCnt
* * *
* * Static data area size in 64bits entries
* @
* $UINT32 reserved REG [3]
* * *
* * 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_CFG 0x00070
#define w32DRM_FIGOIMG_CFG { \
UNSG32 uCFG_insNum : 16; \
UNSG32 uCFG_datCnt : 16; \
}
/* @'00070 */ union { UNSG32 u32DRM_FIGOIMG_CFG;
struct w32DRM_FIGOIMG_CFG;
};
/* [15: 0] */ #define BA_DRM_FIGOIMG_CFG_insNum 0x00070
/* ---:--- */ #define bDRM_FIGOIMG_CFG_insNum 16 /*bit*/
/* ---:--- */ #define LSb32DRM_FIGOIMG_CFG_insNum 0 /*:15*/
/* ---:--- */ #define MSK32DRM_FIGOIMG_CFG_insNum 0x0000FFFF
/* ---:--- */ #define GET32DRM_FIGOIMG_CFG_insNum(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DRM_FIGOIMG_CFG_insNum(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_FIGOIMG_CFG_insNum(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DRM_FIGOIMG_CFG_insNum(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DRM_FIGOIMG_CFG_datCnt 0x00072
/* ---:--- */ #define bDRM_FIGOIMG_CFG_datCnt 16 /*bit*/
/* ---:--- */ #define LSb32DRM_FIGOIMG_CFG_datCnt 16 /*:31*/
/* ---:--- */ #define MSK32DRM_FIGOIMG_CFG_datCnt 0xFFFF0000
/* ---:--- */ #define GET32DRM_FIGOIMG_CFG_datCnt(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DRM_FIGOIMG_CFG_datCnt(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DRM_FIGOIMG_CFG_datCnt(r32,v) do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DRM_FIGOIMG_CFG_datCnt(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DRM_FIGOIMG_reserved 0x00074
/* @'00074 */ SIE_UINT32 ie_reserved [3];
#define arr_DRM_FIGOIMG_reserved 3
#define RA_DRM_FIGOIMG_imgDat 0x00080
/* @'00080 */ SIE_UINT32 ie_imgDat;
} SIE_DRM_FIGOIMG;
#define dftDRM_FIGOIMG_CFG 0x00000000
typedef union { UNSG32 u32;
struct w32DRM_FIGOIMG_CFG;
} T32DRM_FIGOIMG_CFG;
/* 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
* @
* $UINT128 reserved
* @
* $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_UINT128 ie_reserved;
#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 dummy
**********************************************************************************************************************/
#ifdef h_SHA1_RODAT
#else
#define h_SHA1_RODAT
#define \
AR_SHA1_RODAT \
1
#define \
AB_SHA1_RODAT \
2
typedef struct SIE_SHA1_RODAT {
#define RA_SHA1_RODAT_dummy 0x00000
/* @'00000 */ SIE_UINT32 ie_dummy;
} 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 [16]
* * *
* * Internal buffer
* @
* %unsigned 32 puState [6]
* * *
* * Hash state
**********************************************************************************************************************/
#ifdef h_SHA1_CTXDAT
#else
#define h_SHA1_CTXDAT
#define \
AR_SHA1_CTXDAT \
9
#define \
AB_SHA1_CTXDAT \
6
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;
#define RA_SHA1_CTXDAT_D3th_ ISC_USE_ONLY 0x0000C
#define w32SHA1_CTXDAT_D3th_ { \
UNSG32 u_puState_0i : 32; \
}
/* @'0000C */ struct w32SHA1_CTXDAT_D3th_;
/* [31: 0] */ #define BA_SHA1_CTXDAT_puState_0i 0x0000C
/* ---:--- */ #define bSHA1_CTXDAT_puState_0i 32 /*bit*/
/* ---:--- */ #define LSb32SHA1_CTXDAT_puState_0i 0 /*:31*/
/* ---:--- */ #define MSK32SHA1_CTXDAT_puState_0i 0xFFFFFFFF
/* ---:--- */ #define GET32SHA1_CTXDAT_puState_0i(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SHA1_CTXDAT_puState_0i(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SHA1_CTXDAT_puState_0i(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SHA1_CTXDAT_puState_0i(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_SHA1_CTXDAT_D4th_ ISC_USE_ONLY 0x00010
#define w32SHA1_CTXDAT_D4th_ { \
UNSG32 u_puState_1i : 32; \
}
/* @'00010 */ struct w32SHA1_CTXDAT_D4th_;
/* [31: 0] */ #define BA_SHA1_CTXDAT_puState_1i 0x00010
/* ---:--- */ #define bSHA1_CTXDAT_puState_1i 32 /*bit*/
/* ---:--- */ #define LSb32SHA1_CTXDAT_puState_1i 0 /*:31*/
/* ---:--- */ #define MSK32SHA1_CTXDAT_puState_1i 0xFFFFFFFF
/* ---:--- */ #define GET32SHA1_CTXDAT_puState_1i(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SHA1_CTXDAT_puState_1i(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SHA1_CTXDAT_puState_1i(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SHA1_CTXDAT_puState_1i(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_SHA1_CTXDAT_D5th_ ISC_USE_ONLY 0x00014
#define w32SHA1_CTXDAT_D5th_ { \
UNSG32 u_puState_2i : 32; \
}
/* @'00014 */ struct w32SHA1_CTXDAT_D5th_;
/* [31: 0] */ #define BA_SHA1_CTXDAT_puState_2i 0x00014
/* ---:--- */ #define bSHA1_CTXDAT_puState_2i 32 /*bit*/
/* ---:--- */ #define LSb32SHA1_CTXDAT_puState_2i 0 /*:31*/
/* ---:--- */ #define MSK32SHA1_CTXDAT_puState_2i 0xFFFFFFFF
/* ---:--- */ #define GET32SHA1_CTXDAT_puState_2i(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SHA1_CTXDAT_puState_2i(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SHA1_CTXDAT_puState_2i(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SHA1_CTXDAT_puState_2i(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_SHA1_CTXDAT_D6th_ ISC_USE_ONLY 0x00018
#define w32SHA1_CTXDAT_D6th_ { \
UNSG32 u_puState_3i : 32; \
}
/* @'00018 */ struct w32SHA1_CTXDAT_D6th_;
/* [31: 0] */ #define BA_SHA1_CTXDAT_puState_3i 0x00018
/* ---:--- */ #define bSHA1_CTXDAT_puState_3i 32 /*bit*/
/* ---:--- */ #define LSb32SHA1_CTXDAT_puState_3i 0 /*:31*/
/* ---:--- */ #define MSK32SHA1_CTXDAT_puState_3i 0xFFFFFFFF
/* ---:--- */ #define GET32SHA1_CTXDAT_puState_3i(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SHA1_CTXDAT_puState_3i(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SHA1_CTXDAT_puState_3i(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SHA1_CTXDAT_puState_3i(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_SHA1_CTXDAT_D7th_ ISC_USE_ONLY 0x0001C
#define w32SHA1_CTXDAT_D7th_ { \
UNSG32 u_puState_4i : 32; \
}
/* @'0001C */ struct w32SHA1_CTXDAT_D7th_;
/* [31: 0] */ #define BA_SHA1_CTXDAT_puState_4i 0x0001C
/* ---:--- */ #define bSHA1_CTXDAT_puState_4i 32 /*bit*/
/* ---:--- */ #define LSb32SHA1_CTXDAT_puState_4i 0 /*:31*/
/* ---:--- */ #define MSK32SHA1_CTXDAT_puState_4i 0xFFFFFFFF
/* ---:--- */ #define GET32SHA1_CTXDAT_puState_4i(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SHA1_CTXDAT_puState_4i(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SHA1_CTXDAT_puState_4i(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SHA1_CTXDAT_puState_4i(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
#define RA_SHA1_CTXDAT_D8th_ ISC_USE_ONLY 0x00020
#define w32SHA1_CTXDAT_D8th_ { \
UNSG32 u_puState_5i : 32; \
}
/* @'00020 */ struct w32SHA1_CTXDAT_D8th_;
/* [31: 0] */ #define BA_SHA1_CTXDAT_puState_5i 0x00020
/* ---:--- */ #define bSHA1_CTXDAT_puState_5i 32 /*bit*/
/* ---:--- */ #define LSb32SHA1_CTXDAT_puState_5i 0 /*:31*/
/* ---:--- */ #define MSK32SHA1_CTXDAT_puState_5i 0xFFFFFFFF
/* ---:--- */ #define GET32SHA1_CTXDAT_puState_5i(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16SHA1_CTXDAT_puState_5i(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32SHA1_CTXDAT_puState_5i(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16SHA1_CTXDAT_puState_5i(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} 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: 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: AES128_RODAT
* @
* $UINT32 dummy
**********************************************************************************************************************/
#ifdef h_AES128_RODAT
#else
#define h_AES128_RODAT
#define \
AR_AES128_RODAT \
1
#define \
AB_AES128_RODAT \
2
typedef struct SIE_AES128_RODAT {
#define RA_AES128_RODAT_dummy 0x00000
/* @'00000 */ SIE_UINT32 ie_dummy;
} 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 dummy
**********************************************************************************************************************/
#ifdef h_AES128_CTXDAT
#else
#define h_AES128_CTXDAT
#define \
AR_AES128_CTXDAT \
1
#define \
AB_AES128_CTXDAT \
2
typedef struct SIE_AES128_CTXDAT {
#define RA_AES128_CTXDAT_dummy 0x00000
/* @'00000 */ SIE_UINT32 ie_dummy;
} SIE_AES128_CTXDAT;
/* 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: DES_RODAT
* @
* $UINT32 dummy
**********************************************************************************************************************/
#ifdef h_DES_RODAT
#else
#define h_DES_RODAT
#define \
AR_DES_RODAT \
1
#define \
AB_DES_RODAT \
2
typedef struct SIE_DES_RODAT {
#define RA_DES_RODAT_dummy 0x00000
/* @'00000 */ SIE_UINT32 ie_dummy;
} SIE_DES_RODAT;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DES_RODAT_drvrd (SIE_DES_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 DES_RODAT_drvwr (SIE_DES_RODAT *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DES_RODAT_reset (SIE_DES_RODAT *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DES_RODAT_check(p,pie,ps8name,hfpErrLOG) DES_RODAT_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DES_RODAT_print(p, ps8name,hfpErrLOG) DES_RODAT_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DES_RODAT_cmp (SIE_DES_RODAT *p, SIE_DES_RODAT *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DES_RODAT_import(SIE_DES_RODAT *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DES_RODAT_export(SIE_DES_RODAT *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DES_RODAT
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DES_CTXDAT
* @
* $UINT32 dummy
**********************************************************************************************************************/
#ifdef h_DES_CTXDAT
#else
#define h_DES_CTXDAT
#define \
AR_DES_CTXDAT \
1
#define \
AB_DES_CTXDAT \
2
typedef struct SIE_DES_CTXDAT {
#define RA_DES_CTXDAT_dummy 0x00000
/* @'00000 */ SIE_UINT32 ie_dummy;
} 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: 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 dummy
**********************************************************************************************************************/
#ifdef h_DES3_CTXDAT
#else
#define h_DES3_CTXDAT
#define \
AR_DES3_CTXDAT \
1
#define \
AB_DES3_CTXDAT \
2
typedef struct SIE_DES3_CTXDAT {
#define RA_DES3_CTXDAT_dummy 0x00000
/* @'00000 */ SIE_UINT32 ie_dummy;
} 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: 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 dummy
**********************************************************************************************************************/
#ifdef h_MULT2_CTXDAT
#else
#define h_MULT2_CTXDAT
#define \
AR_MULT2_CTXDAT \
1
#define \
AB_MULT2_CTXDAT \
2
typedef struct SIE_MULT2_CTXDAT {
#define RA_MULT2_CTXDAT_dummy 0x00000
/* @'00000 */ SIE_UINT32 ie_dummy;
} 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 dummy
**********************************************************************************************************************/
#ifdef h_C2_CTXDAT
#else
#define h_C2_CTXDAT
#define \
AR_C2_CTXDAT \
1
#define \
AB_C2_CTXDAT \
2
typedef struct SIE_C2_CTXDAT {
#define RA_C2_CTXDAT_dummy 0x00000
/* @'00000 */ SIE_UINT32 ie_dummy;
} 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: DRMROM_CMD_TYPE
* @
* : LD_FIGOIMG 0
* * *
* * Load and verify FIGO image
* @
* : LD_ARMIMG 1
* * *
* * Load and verify ARM image
* @
* %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
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 24 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_nonce : 24; \
}
/* @'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)
/* [31: 8] */ #define BA_DRMROM_CMD_CMD_CFG_nonce 0x00005
/* ---:--- */ #define bDRMROM_CMD_CMD_CFG_nonce 24 /*bit*/
/* ---:--- */ #define LSb32DRMROM_CMD_CMD_CFG_nonce 8 /*:31*/
/* ---:--- */ #define MSK32DRMROM_CMD_CMD_CFG_nonce 0xFFFFFF00
/* ---:--- */ #define GET32DRMROM_CMD_CMD_CFG_nonce(r32) (((r32)>> 8)&0xFFFFFF)
/* ---:--- */ #define GET16DRMROM_CMD_CMD_CFG_nonce(r16) (((r16)>> 8)&0xFFFFFF)
/* ---:--- */ #define SET32DRMROM_CMD_CMD_CFG_nonce(r32,v) do{(r32)&=~(0xFFFFFF<< 8);(r32)|=((v)&0xFFFFFF)<< 8;}while(0)
/* ---:--- */ #define SET16DRMROM_CMD_CMD_CFG_nonce(r16,v) do{(r16)&=~(0xFFFFFF<< 8);(r16)|=((v)&0xFFFFFF)<< 8;}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
* @
* $SHA1_RODAT sha1ROData SHA1 algorithm specific read only data
* @
* $HMAC_RODAT hmacROData
* * *
* * HMAC algorithm specific read only data
**********************************************************************************************************************/
#ifdef h_DRM_DROM
#else
#define h_DRM_DROM
#define \
AR_DRM_DROM \
3
#define \
AB_DRM_DROM \
4
typedef struct SIE_DRM_DROM {
#define RA_DRM_DROM_aesROData 0x00000
/* @'00000 */ SIE_AES128_RODAT ie_aesROData;
#define RA_DRM_DROM_sha1ROData 0x00004
/* @'00004 */ SIE_SHA1_RODAT ie_sha1ROData;
#define RA_DRM_DROM_hmacROData 0x00008
/* @'00008 */ SIE_HMAC_RODAT ie_hmacROData;
} 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: 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
* * *
* * Temporary buffer for round keys
* @ 0x7f0
* $UINT128 stack
* * *
* * Stack
* @ 0x0800
* $UINT128 dsTransBuf REG [256]
* * *
* * Transfer memory
**********************************************************************************************************************/
#ifdef h_DRMROM_SRAM
#else
#define h_DRMROM_SRAM
#define \
AR_DRMROM_SRAM \
1536
#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 0x001B0
/* @'001B0 */ SIE_UINT64 ie_dsFifoDat [16];
#define arr_DRMROM_SRAM_dsFifoDat 16
#define RA_DRMROM_SRAM_symSignKey 0x00230
/* @'00230 */ SIE_DRM_SYMKEYCTX256_IN ie_symSignKey;
#define RA_DRMROM_SRAM_asymSignKey 0x00290
/* @'00290 */ SIE_DRM_RSAKEYCTX1024_IN ie_asymSignKey;
#define RA_DRMROM_SRAM_aesRKEK 0x002E0
/* @'002E0 */ SIE_DRM_SYMKEYCTX256_IN ie_aesRKEK;
#define RA_DRMROM_SRAM_aesSubKey 0x00340
/* @'00340 */ SIE_DRM_SYMKEYCTX256_IN ie_aesSubKey;
#define RA_DRMROM_SRAM_rndKeyBuf 0x003A0
/* @'003A0 */ SIE_UINT128 ie_rndKeyBuf;
UNSG32 _PAD_000[(0x007F0-0x003B0)/4];
#define RA_DRMROM_SRAM_stack 0x007F0
/* @'007F0 */ SIE_UINT128 ie_stack;
#define RA_DRMROM_SRAM_dsTransBuf 0x00800
/* @'00800 */ SIE_UINT128 ie_dsTransBuf [256];
#define arr_DRMROM_SRAM_dsTransBuf 256
} SIE_DRMROM_SRAM;
/* 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: DIAG_BIUFIRWALL_MAGICNUM
* : RD 0x5400
* * *
* * Read magic value
* : WR 0x8900
* * *
* * Write magic value
* @
* %unsigned 32 dummy
* * *
* * Bytes of the block to be tested
**********************************************************************************************************************/
#ifdef h_DIAG_BIUFIRWALL_MAGICNUM
#else
#define h_DIAG_BIUFIRWALL_MAGICNUM
#define \
AR_DIAG_BIUFIRWALL_MAGICNUM \
1
#define \
AB_DIAG_BIUFIRWALL_MAGICNUM \
2
#define DIAG_BIUFIRWALL_MAGICNUM_RD 0x5400
#define DIAG_BIUFIRWALL_MAGICNUM_WR 0x8900
typedef struct SIE_DIAG_BIUFIRWALL_MAGICNUM {
#define RA_DIAG_BIUFIRWALL_MAGICNUM_D0th_ ISC_USE_ONLY 0x00000
#define w32DIAG_BIUFIRWALL_MAGICNUM_D0th_ { \
UNSG32 u_dummy : 32; \
}
/* @'00000 */ struct w32DIAG_BIUFIRWALL_MAGICNUM_D0th_;
/* [31: 0] */ #define BA_DIAG_BIUFIRWALL_MAGICNUM_dummy 0x00000
/* ---:--- */ #define bDIAG_BIUFIRWALL_MAGICNUM_dummy 32 /*bit*/
/* ---:--- */ #define LSb32DIAG_BIUFIRWALL_MAGICNUM_dummy 0 /*:31*/
/* ---:--- */ #define MSK32DIAG_BIUFIRWALL_MAGICNUM_dummy 0xFFFFFFFF
/* ---:--- */ #define GET32DIAG_BIUFIRWALL_MAGICNUM_dummy(r32) (((r32)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define GET16DIAG_BIUFIRWALL_MAGICNUM_dummy(r16) (((r16)>> 0)&0xFFFFFFFF)
/* ---:--- */ #define SET32DIAG_BIUFIRWALL_MAGICNUM_dummy(r32,v) do{(r32)&=~(0xFFFFFFFF<< 0);(r32)|=((v)&0xFFFFFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DIAG_BIUFIRWALL_MAGICNUM_dummy(r16,v) do{(r16)&=~(0xFFFFFFFF<< 0);(r16)|=((v)&0xFFFFFFFF)<< 0;}while(0)
} SIE_DIAG_BIUFIRWALL_MAGICNUM;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DIAG_BIUFIRWALL_MAGICNUM_drvrd (SIE_DIAG_BIUFIRWALL_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 DIAG_BIUFIRWALL_MAGICNUM_drvwr (SIE_DIAG_BIUFIRWALL_MAGICNUM *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DIAG_BIUFIRWALL_MAGICNUM_reset (SIE_DIAG_BIUFIRWALL_MAGICNUM *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DIAG_BIUFIRWALL_MAGICNUM_check(p,pie,ps8name,hfpErrLOG) DIAG_BIUFIRWALL_MAGICNUM_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DIAG_BIUFIRWALL_MAGICNUM_print(p, ps8name,hfpErrLOG) DIAG_BIUFIRWALL_MAGICNUM_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DIAG_BIUFIRWALL_MAGICNUM_cmp (SIE_DIAG_BIUFIRWALL_MAGICNUM *p, SIE_DIAG_BIUFIRWALL_MAGICNUM *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DIAG_BIUFIRWALL_MAGICNUM_import(SIE_DIAG_BIUFIRWALL_MAGICNUM *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DIAG_BIUFIRWALL_MAGICNUM_export(SIE_DIAG_BIUFIRWALL_MAGICNUM *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DIAG_BIUFIRWALL_MAGICNUM
**********************************************************************************************************************/
/**********************************************************************************************************************
* INTERFACE: DIAG_BIUFIRWALL_CTX
* @
* $DRMROM_SRAM_RESERVED reserved
* * *
* * ROM reserved SRAM
* @ FLAG
* %unsigned 16 ready
* * *
* * 1: FIGO has already re-initialized the SRAM and BIU firewall
* @ PARM
* %unsigned 16 addrStart
* * *
* * Start of the test BIU address
* %unsigned 16 blkSize
* * *
* * Bytes of the block to be tested
**********************************************************************************************************************/
#ifdef h_DIAG_BIUFIRWALL_CTX
#else
#define h_DIAG_BIUFIRWALL_CTX
#define \
AR_DIAG_BIUFIRWALL_CTX \
514
#define \
AB_DIAG_BIUFIRWALL_CTX \
12
typedef struct SIE_DIAG_BIUFIRWALL_CTX {
#define RA_DIAG_BIUFIRWALL_CTX_reserved 0x00000
/* @'00000 */ SIE_DRMROM_SRAM_RESERVED ie_reserved;
#define RA_DIAG_BIUFIRWALL_CTX_FLAG 0x00800
#define w32DIAG_BIUFIRWALL_CTX_FLAG { \
UNSG32 uFLAG_ready : 16; \
UNSG32 _x00800 : 16; \
}
/* @'00800 */ union { UNSG32 u32DIAG_BIUFIRWALL_CTX_FLAG;
struct w32DIAG_BIUFIRWALL_CTX_FLAG;
};
/* [15: 0] */ #define BA_DIAG_BIUFIRWALL_CTX_FLAG_ready 0x00800
/* ---:--- */ #define bDIAG_BIUFIRWALL_CTX_FLAG_ready 16 /*bit*/
/* ---:--- */ #define LSb32DIAG_BIUFIRWALL_CTX_FLAG_ready 0 /*:15*/
/* ---:--- */ #define MSK32DIAG_BIUFIRWALL_CTX_FLAG_ready 0x0000FFFF
/* ---:--- */ #define GET32DIAG_BIUFIRWALL_CTX_FLAG_ready(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DIAG_BIUFIRWALL_CTX_FLAG_ready(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DIAG_BIUFIRWALL_CTX_FLAG_ready(r32,v) do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DIAG_BIUFIRWALL_CTX_FLAG_ready(r16,v) do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
#define RA_DIAG_BIUFIRWALL_CTX_PARM 0x00804
#define w32DIAG_BIUFIRWALL_CTX_PARM { \
UNSG32 uPARM_addrStart : 16; \
UNSG32 uPARM_blkSize : 16; \
}
/* @'00804 */ union { UNSG32 u32DIAG_BIUFIRWALL_CTX_PARM;
struct w32DIAG_BIUFIRWALL_CTX_PARM;
};
/* [15: 0] */ #define BA_DIAG_BIUFIRWALL_CTX_PARM_addrStart 0x00804
/* ---:--- */ #define bDIAG_BIUFIRWALL_CTX_PARM_addrStart 16 /*bit*/
/* ---:--- */ #define LSb32DIAG_BIUFIRWALL_CTX_PARM_addrStart 0 /*:15*/
/* ---:--- */ #define MSK32DIAG_BIUFIRWALL_CTX_PARM_addrStart 0x0000FFFF
/* ---:--- */ #define GET32DIAG_BIUFIRWALL_CTX_PARM_addrStart(r32) (((r32)>> 0)&0xFFFF)
/* ---:--- */ #define GET16DIAG_BIUFIRWALL_CTX_PARM_addrStart(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DIAG_BIUFIRWALL_CTX_PARM_addrStart(r32,v)do{(r32)&=~(0xFFFF<< 0);(r32)|=((v)&0xFFFF)<< 0;}while(0)
/* ---:--- */ #define SET16DIAG_BIUFIRWALL_CTX_PARM_addrStart(r16,v)do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
/* [31:16] */ #define BA_DIAG_BIUFIRWALL_CTX_PARM_blkSize 0x00806
/* ---:--- */ #define bDIAG_BIUFIRWALL_CTX_PARM_blkSize 16 /*bit*/
/* ---:--- */ #define LSb32DIAG_BIUFIRWALL_CTX_PARM_blkSize 16 /*:31*/
/* ---:--- */ #define MSK32DIAG_BIUFIRWALL_CTX_PARM_blkSize 0xFFFF0000
/* ---:--- */ #define GET32DIAG_BIUFIRWALL_CTX_PARM_blkSize(r32) (((r32)>>16)&0xFFFF)
/* ---:--- */ #define GET16DIAG_BIUFIRWALL_CTX_PARM_blkSize(r16) (((r16)>> 0)&0xFFFF)
/* ---:--- */ #define SET32DIAG_BIUFIRWALL_CTX_PARM_blkSize(r32,v)do{(r32)&=~(0xFFFF<<16);(r32)|=((v)&0xFFFF)<<16;}while(0)
/* ---:--- */ #define SET16DIAG_BIUFIRWALL_CTX_PARM_blkSize(r16,v)do{(r16)&=~(0xFFFF<< 0);(r16)|=((v)&0xFFFF)<< 0;}while(0)
} SIE_DIAG_BIUFIRWALL_CTX;
#define dftDIAG_BIUFIRWALL_CTX_FLAG 0x00000000
typedef union { UNSG32 u32;
struct w32DIAG_BIUFIRWALL_CTX_FLAG;
} T32DIAG_BIUFIRWALL_CTX_FLAG;
#define dftDIAG_BIUFIRWALL_CTX_PARM 0x00000000
typedef union { UNSG32 u32;
struct w32DIAG_BIUFIRWALL_CTX_PARM;
} T32DIAG_BIUFIRWALL_CTX_PARM;
/* Member function: read (or self test read) from SRAM or flat register interface and return words read */
SIGN32 DIAG_BIUFIRWALL_CTX_drvrd (SIE_DIAG_BIUFIRWALL_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 DIAG_BIUFIRWALL_CTX_drvwr (SIE_DIAG_BIUFIRWALL_CTX *p, UNSG32 u32base, SIGN32 bMEM, SIGN32 bST, UNSG32 *pu32cmd);
/* Member function: element reset */
void DIAG_BIUFIRWALL_CTX_reset (SIE_DIAG_BIUFIRWALL_CTX *p);
/* Member function: check elements, return SUCCESS if identical or ERR_MISMATCH */
#define DIAG_BIUFIRWALL_CTX_check(p,pie,ps8name,hfpErrLOG) DIAG_BIUFIRWALL_CTX_cmp(p,pie, ps8name,hfpErrLOG,0,0)
#define DIAG_BIUFIRWALL_CTX_print(p, ps8name,hfpErrLOG) DIAG_BIUFIRWALL_CTX_cmp(p,NULL,ps8name,hfpErrLOG,0,0)
SIGN32 DIAG_BIUFIRWALL_CTX_cmp (SIE_DIAG_BIUFIRWALL_CTX *p, SIE_DIAG_BIUFIRWALL_CTX *pie, char *ps8name, UNSG32 hfpErrLOG, SIGN32 bMEM, SIGN32 bST);
/* Member function: import interface values from a text string of compact all bits */
SIGN32 DIAG_BIUFIRWALL_CTX_import(SIE_DIAG_BIUFIRWALL_CTX *p, char *regs);
/* Member function: export interface values to a text string of compact all bits */
SIGN32 DIAG_BIUFIRWALL_CTX_export(SIE_DIAG_BIUFIRWALL_CTX *p, char *regs);
#endif
/**********************************************************************************************************************
* ENDOFINTERFACE: DIAG_BIUFIRWALL_CTX
**********************************************************************************************************************/
#pragma pack()
#ifdef __cplusplus
}
#endif
#endif /* _diag_biu_firewall_spec_h */
/**********************************************************************************************************************
* ENDOFFILE (by "Interface Specification Compiler" ver-1.0): diag_biu_firewall_spec.h
**********************************************************************************************************************/