45 lines
1.6 KiB
C
Executable File
45 lines
1.6 KiB
C
Executable File
#include <stdint.h>
|
|
|
|
typedef struct {
|
|
uint32_t en : 1; // 0 Peripheral Enable
|
|
uint32_t start : 1; // 1 Start the operation
|
|
uint32_t reserve0 : 6; // 2 Reserve
|
|
uint32_t mode : 6; // 8 PKA Operation Mode
|
|
uint32_t reserve1 : 3; // 14 Reserve
|
|
uint32_t procendie : 1; // 17 End of operation interrupt enable
|
|
uint32_t reserve2 : 1; // 18 Reserve
|
|
uint32_t ramerrie : 1; // 19 RAM error interrupt enable
|
|
uint32_t addrerrie : 1; // 20 Address error interrupt enable
|
|
uint32_t operrie : 1; // 21 Operation error interrupt enable
|
|
uint32_t reserve3 : 10; // 22 Reserve
|
|
} reg_pka_cr_t;
|
|
|
|
typedef struct {
|
|
uint32_t initok : 1; // 0 INITOK
|
|
uint32_t reserve0 : 15; // 1 Reserve
|
|
uint32_t busy : 1; // 16 PKA operation is in progress
|
|
uint32_t procendf : 1; // 17 PKA End of Operation flag
|
|
uint32_t reserve1 : 1; // 18 Reserve
|
|
uint32_t ramerrf : 1; // 19 RAMERRF
|
|
uint32_t addrerrf : 1; // 20 ADDRERRF
|
|
uint32_t operrf : 1; // 21 OPERRF
|
|
uint32_t reserve2 : 10; // 22 Reserve
|
|
} reg_pka_sr_t;
|
|
|
|
typedef struct {
|
|
uint32_t reserve0 : 17; // 0 Reserve
|
|
uint32_t procendfc : 1; // 17 Clear PKA End of Operation flag
|
|
uint32_t reserve1 : 1; // 18 Reserve
|
|
uint32_t ramerrfc : 1; // 19 RAMERRFC
|
|
uint32_t addrerrfc : 1; // 20 ADDRERRFC
|
|
uint32_t operrfc : 1; // 21 OPERRFC
|
|
uint32_t reserve2 : 10; // 22 Reserve
|
|
} reg_pka_clrfr_t;
|
|
|
|
typedef struct {
|
|
volatile reg_pka_cr_t cr;
|
|
volatile reg_pka_sr_t sr;
|
|
volatile reg_pka_clrfr_t clrfr;
|
|
} reg_pka_t;
|
|
|