| /******************************************************************************** |
| * 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 |
| **********************************************************************************************************************/ |
| |