1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118
#[doc = r" Register block"] #[repr(C)] pub struct RegisterBlock { #[doc = "0x00 - Is control register to enable and operate Hash and Crypto"] pub ctrl: CTRL, #[doc = "0x04 - Indicates status of Hash peripheral."] pub status: STATUS, #[doc = "0x08 - Write 1 to enable interrupts; reads back with which are set."] pub intenset: INTENSET, #[doc = "0x0c - Write 1 to clear interrupts."] pub intenclr: INTENCLR, #[doc = "0x10 - Setup Master to access memory (if available)"] pub memctrl: MEMCTRL, #[doc = "0x14 - Address to start memory access from (if available)."] pub memaddr: MEMADDR, _reserved0: [u8; 8usize], #[doc = "0x20 - Input of 16 words at a time to load up buffer."] pub indata: INDATA, #[doc = "0x24 - no description available"] pub alias: [ALIAS; 7], #[doc = "0x40 - no description available"] pub outdata0: [OUTDATA0; 8], #[doc = "0x60 - no description available"] pub outdata1: [OUTDATA1; 8], #[doc = "0x80 - Crypto settings for AES and Salsa and ChaCha"] pub cryptcfg: CRYPTCFG, #[doc = "0x84 - Returns the configuration of this block in this chip - indicates what services are available."] pub config: CONFIG, _reserved1: [u8; 4usize], #[doc = "0x8c - Lock register allows locking to the current security level or unlocking by the lock holding level."] pub lock: LOCK, #[doc = "0x90 - no description available"] pub mask: [MASK; 4], } #[doc = "Is control register to enable and operate Hash and Crypto"] pub struct CTRL { register: ::vcell::VolatileCell<u32>, } #[doc = "Is control register to enable and operate Hash and Crypto"] pub mod ctrl; #[doc = "Indicates status of Hash peripheral."] pub struct STATUS { register: ::vcell::VolatileCell<u32>, } #[doc = "Indicates status of Hash peripheral."] pub mod status; #[doc = "Write 1 to enable interrupts; reads back with which are set."] pub struct INTENSET { register: ::vcell::VolatileCell<u32>, } #[doc = "Write 1 to enable interrupts; reads back with which are set."] pub mod intenset; #[doc = "Write 1 to clear interrupts."] pub struct INTENCLR { register: ::vcell::VolatileCell<u32>, } #[doc = "Write 1 to clear interrupts."] pub mod intenclr; #[doc = "Setup Master to access memory (if available)"] pub struct MEMCTRL { register: ::vcell::VolatileCell<u32>, } #[doc = "Setup Master to access memory (if available)"] pub mod memctrl; #[doc = "Address to start memory access from (if available)."] pub struct MEMADDR { register: ::vcell::VolatileCell<u32>, } #[doc = "Address to start memory access from (if available)."] pub mod memaddr; #[doc = "Input of 16 words at a time to load up buffer."] pub struct INDATA { register: ::vcell::VolatileCell<u32>, } #[doc = "Input of 16 words at a time to load up buffer."] pub mod indata; #[doc = "no description available"] pub struct ALIAS { register: ::vcell::VolatileCell<u32>, } #[doc = "no description available"] pub mod alias; #[doc = "no description available"] pub struct OUTDATA0 { register: ::vcell::VolatileCell<u32>, } #[doc = "no description available"] pub mod outdata0; #[doc = "no description available"] pub struct OUTDATA1 { register: ::vcell::VolatileCell<u32>, } #[doc = "no description available"] pub mod outdata1; #[doc = "Crypto settings for AES and Salsa and ChaCha"] pub struct CRYPTCFG { register: ::vcell::VolatileCell<u32>, } #[doc = "Crypto settings for AES and Salsa and ChaCha"] pub mod cryptcfg; #[doc = "Returns the configuration of this block in this chip - indicates what services are available."] pub struct CONFIG { register: ::vcell::VolatileCell<u32>, } #[doc = "Returns the configuration of this block in this chip - indicates what services are available."] pub mod config; #[doc = "Lock register allows locking to the current security level or unlocking by the lock holding level."] pub struct LOCK { register: ::vcell::VolatileCell<u32>, } #[doc = "Lock register allows locking to the current security level or unlocking by the lock holding level."] pub mod lock; #[doc = "no description available"] pub struct MASK { register: ::vcell::VolatileCell<u32>, } #[doc = "no description available"] pub mod mask;