#![allow(non_snake_case, non_upper_case_globals)]
#![allow(non_camel_case_types)]
use crate::{RORegister, RWRegister};
#[cfg(not(feature = "nosync"))]
use core::marker::PhantomData;
pub mod CTRL {
pub mod ADDR {
pub const offset: u32 = 0;
pub const mask: u32 = 0x3f << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod RSVD0 {
pub const offset: u32 = 6;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod BUSY {
pub const offset: u32 = 8;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod ERROR {
pub const offset: u32 = 9;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod RELOAD_SHADOWS {
pub const offset: u32 = 10;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod CRC_TEST {
pub const offset: u32 = 11;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod CRC_FAIL {
pub const offset: u32 = 12;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod RSVD1 {
pub const offset: u32 = 13;
pub const mask: u32 = 0b111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod WR_UNLOCK {
pub const offset: u32 = 16;
pub const mask: u32 = 0xffff << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const KEY: u32 = 0b0011111001110111;
}
}
}
pub mod CTRL_SET {
pub mod ADDR {
pub const offset: u32 = 0;
pub const mask: u32 = 0x3f << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod RSVD0 {
pub const offset: u32 = 6;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod BUSY {
pub const offset: u32 = 8;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod ERROR {
pub const offset: u32 = 9;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod RELOAD_SHADOWS {
pub const offset: u32 = 10;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod CRC_TEST {
pub const offset: u32 = 11;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod CRC_FAIL {
pub const offset: u32 = 12;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod RSVD1 {
pub const offset: u32 = 13;
pub const mask: u32 = 0b111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod WR_UNLOCK {
pub const offset: u32 = 16;
pub const mask: u32 = 0xffff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod CTRL_CLR {
pub use super::CTRL_SET::ADDR;
pub use super::CTRL_SET::BUSY;
pub use super::CTRL_SET::CRC_FAIL;
pub use super::CTRL_SET::CRC_TEST;
pub use super::CTRL_SET::ERROR;
pub use super::CTRL_SET::RELOAD_SHADOWS;
pub use super::CTRL_SET::RSVD0;
pub use super::CTRL_SET::RSVD1;
pub use super::CTRL_SET::WR_UNLOCK;
}
pub mod CTRL_TOG {
pub use super::CTRL_SET::ADDR;
pub use super::CTRL_SET::BUSY;
pub use super::CTRL_SET::CRC_FAIL;
pub use super::CTRL_SET::CRC_TEST;
pub use super::CTRL_SET::ERROR;
pub use super::CTRL_SET::RELOAD_SHADOWS;
pub use super::CTRL_SET::RSVD0;
pub use super::CTRL_SET::RSVD1;
pub use super::CTRL_SET::WR_UNLOCK;
}
pub mod TIMING {
pub mod STROBE_PROG {
pub const offset: u32 = 0;
pub const mask: u32 = 0xfff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod RELAX {
pub const offset: u32 = 12;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod STROBE_READ {
pub const offset: u32 = 16;
pub const mask: u32 = 0x3f << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod WAIT {
pub const offset: u32 = 22;
pub const mask: u32 = 0x3f << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod RSRVD0 {
pub const offset: u32 = 28;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod DATA {
pub mod DATA {
pub const offset: u32 = 0;
pub const mask: u32 = 0xffffffff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod READ_CTRL {
pub mod READ_FUSE {
pub const offset: u32 = 0;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod RSVD0 {
pub const offset: u32 = 1;
pub const mask: u32 = 0x7fffffff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod READ_FUSE_DATA {
pub use super::DATA::DATA;
}
pub mod SW_STICKY {
pub mod BLOCK_DTCP_KEY {
pub const offset: u32 = 0;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod SRK_REVOKE_LOCK {
pub const offset: u32 = 1;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod FIELD_RETURN_LOCK {
pub const offset: u32 = 2;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod BLOCK_ROM_PART {
pub const offset: u32 = 3;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod JTAG_BLOCK_RELEASE {
pub const offset: u32 = 4;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod RSVD0 {
pub const offset: u32 = 5;
pub const mask: u32 = 0x7ffffff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod SCS {
pub mod HAB_JDE {
pub const offset: u32 = 0;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod SPARE {
pub const offset: u32 = 1;
pub const mask: u32 = 0x3fffffff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod LOCK {
pub const offset: u32 = 31;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod SCS_SET {
pub use super::SCS::HAB_JDE;
pub use super::SCS::LOCK;
pub use super::SCS::SPARE;
}
pub mod SCS_CLR {
pub use super::SCS::HAB_JDE;
pub use super::SCS::LOCK;
pub use super::SCS::SPARE;
}
pub mod SCS_TOG {
pub use super::SCS::HAB_JDE;
pub use super::SCS::LOCK;
pub use super::SCS::SPARE;
}
pub mod CRC_ADDR {
pub mod DATA_START_ADDR {
pub const offset: u32 = 0;
pub const mask: u32 = 0xff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod DATA_END_ADDR {
pub const offset: u32 = 8;
pub const mask: u32 = 0xff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod CRC_ADDR {
pub const offset: u32 = 16;
pub const mask: u32 = 0xff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod OTPMK_CRC {
pub const offset: u32 = 24;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod RSVD0 {
pub const offset: u32 = 25;
pub const mask: u32 = 0x7f << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod CRC_VALUE {
pub use super::DATA::DATA;
}
pub mod VERSION {
pub mod STEP {
pub const offset: u32 = 0;
pub const mask: u32 = 0xffff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod MINOR {
pub const offset: u32 = 16;
pub const mask: u32 = 0xff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod MAJOR {
pub const offset: u32 = 24;
pub const mask: u32 = 0xff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod TIMING2 {
pub mod RELAX_PROG {
pub const offset: u32 = 0;
pub const mask: u32 = 0xfff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod RSRVD0 {
pub const offset: u32 = 12;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod RELAX_READ {
pub const offset: u32 = 16;
pub const mask: u32 = 0x3f << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod RSRVD1 {
pub const offset: u32 = 22;
pub const mask: u32 = 0x3ff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod LOCK {
pub mod TESTER {
pub const offset: u32 = 0;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod BOOT_CFG {
pub const offset: u32 = 2;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod MEM_TRIM {
pub const offset: u32 = 4;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod SJC_RESP {
pub const offset: u32 = 6;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod GP4_RLOCK {
pub const offset: u32 = 7;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod MAC_ADDR {
pub const offset: u32 = 8;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod GP1 {
pub const offset: u32 = 10;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod GP2 {
pub const offset: u32 = 12;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod ROM_PATCH {
pub const offset: u32 = 15;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod SW_GP1 {
pub const offset: u32 = 16;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod OTPMK {
pub const offset: u32 = 17;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod ANALOG {
pub const offset: u32 = 18;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod OTPMK_CRC {
pub const offset: u32 = 20;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod SW_GP2_LOCK {
pub const offset: u32 = 21;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod MISC_CONF {
pub const offset: u32 = 22;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod SW_GP2_RLOCK {
pub const offset: u32 = 23;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod GP4 {
pub const offset: u32 = 24;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod GP3 {
pub const offset: u32 = 26;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod FIELD_RETURN {
pub const offset: u32 = 28;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod CFG0 {
pub mod BITS {
pub const offset: u32 = 0;
pub const mask: u32 = 0xffffffff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod CFG1 {
pub use super::CFG0::BITS;
}
pub mod CFG2 {
pub use super::CFG0::BITS;
}
pub mod CFG3 {
pub use super::CFG0::BITS;
}
pub mod CFG4 {
pub use super::CFG0::BITS;
}
pub mod CFG5 {
pub use super::CFG0::BITS;
}
pub mod CFG6 {
pub use super::CFG0::BITS;
}
pub mod MEM0 {
pub use super::CFG0::BITS;
}
pub mod MEM1 {
pub use super::CFG0::BITS;
}
pub mod MEM2 {
pub use super::CFG0::BITS;
}
pub mod MEM3 {
pub use super::CFG0::BITS;
}
pub mod MEM4 {
pub use super::CFG0::BITS;
}
pub mod ANA0 {
pub use super::CFG0::BITS;
}
pub mod ANA1 {
pub use super::CFG0::BITS;
}
pub mod ANA2 {
pub use super::CFG0::BITS;
}
pub mod OTPMK0 {
pub use super::CFG0::BITS;
}
pub mod OTPMK1 {
pub use super::CFG0::BITS;
}
pub mod OTPMK2 {
pub use super::CFG0::BITS;
}
pub mod OTPMK3 {
pub use super::CFG0::BITS;
}
pub mod OTPMK4 {
pub use super::CFG0::BITS;
}
pub mod OTPMK5 {
pub use super::CFG0::BITS;
}
pub mod OTPMK6 {
pub use super::CFG0::BITS;
}
pub mod OTPMK7 {
pub use super::CFG0::BITS;
}
pub mod SRK0 {
pub use super::CFG0::BITS;
}
pub mod SRK1 {
pub use super::CFG0::BITS;
}
pub mod SRK2 {
pub use super::CFG0::BITS;
}
pub mod SRK3 {
pub use super::CFG0::BITS;
}
pub mod SRK4 {
pub use super::CFG0::BITS;
}
pub mod SRK5 {
pub use super::CFG0::BITS;
}
pub mod SRK6 {
pub use super::CFG0::BITS;
}
pub mod SRK7 {
pub use super::CFG0::BITS;
}
pub mod SJC_RESP0 {
pub use super::CFG0::BITS;
}
pub mod SJC_RESP1 {
pub use super::CFG0::BITS;
}
pub mod MAC0 {
pub use super::CFG0::BITS;
}
pub mod MAC1 {
pub use super::CFG0::BITS;
}
pub mod MAC2 {
pub use super::CFG0::BITS;
}
pub mod OTPMK_CRC32 {
pub use super::CFG0::BITS;
}
pub mod GP1 {
pub use super::CFG0::BITS;
}
pub mod GP2 {
pub use super::CFG0::BITS;
}
pub mod SW_GP1 {
pub use super::CFG0::BITS;
}
pub mod SW_GP20 {
pub use super::CFG0::BITS;
}
pub mod SW_GP21 {
pub use super::CFG0::BITS;
}
pub mod SW_GP22 {
pub use super::CFG0::BITS;
}
pub mod SW_GP23 {
pub use super::CFG0::BITS;
}
pub mod MISC_CONF0 {
pub use super::CFG0::BITS;
}
pub mod MISC_CONF1 {
pub use super::CFG0::BITS;
}
pub mod SRK_REVOKE {
pub use super::CFG0::BITS;
}
pub mod ROM_PATCH0 {
pub use super::CFG0::BITS;
}
pub mod ROM_PATCH1 {
pub use super::CFG0::BITS;
}
pub mod ROM_PATCH2 {
pub use super::CFG0::BITS;
}
pub mod ROM_PATCH3 {
pub use super::CFG0::BITS;
}
pub mod ROM_PATCH4 {
pub use super::CFG0::BITS;
}
pub mod ROM_PATCH5 {
pub use super::CFG0::BITS;
}
pub mod ROM_PATCH6 {
pub use super::CFG0::BITS;
}
pub mod ROM_PATCH7 {
pub use super::CFG0::BITS;
}
pub mod GP30 {
pub use super::CFG0::BITS;
}
pub mod GP31 {
pub use super::CFG0::BITS;
}
pub mod GP32 {
pub use super::CFG0::BITS;
}
pub mod GP33 {
pub use super::CFG0::BITS;
}
pub mod GP40 {
pub use super::CFG0::BITS;
}
pub mod GP41 {
pub use super::CFG0::BITS;
}
pub mod GP42 {
pub use super::CFG0::BITS;
}
pub mod GP43 {
pub use super::CFG0::BITS;
}
#[repr(C)]
pub struct RegisterBlock {
pub CTRL: RWRegister<u32>,
pub CTRL_SET: RWRegister<u32>,
pub CTRL_CLR: RWRegister<u32>,
pub CTRL_TOG: RWRegister<u32>,
pub TIMING: RWRegister<u32>,
_reserved1: [u32; 3],
pub DATA: RWRegister<u32>,
_reserved2: [u32; 3],
pub READ_CTRL: RWRegister<u32>,
_reserved3: [u32; 3],
pub READ_FUSE_DATA: RWRegister<u32>,
_reserved4: [u32; 3],
pub SW_STICKY: RWRegister<u32>,
_reserved5: [u32; 3],
pub SCS: RWRegister<u32>,
pub SCS_SET: RWRegister<u32>,
pub SCS_CLR: RWRegister<u32>,
pub SCS_TOG: RWRegister<u32>,
pub CRC_ADDR: RWRegister<u32>,
_reserved6: [u32; 3],
pub CRC_VALUE: RWRegister<u32>,
_reserved7: [u32; 3],
pub VERSION: RORegister<u32>,
_reserved8: [u32; 27],
pub TIMING2: RWRegister<u32>,
_reserved9: [u32; 191],
pub LOCK: RWRegister<u32>,
_reserved10: [u32; 3],
pub CFG0: RWRegister<u32>,
_reserved11: [u32; 3],
pub CFG1: RWRegister<u32>,
_reserved12: [u32; 3],
pub CFG2: RWRegister<u32>,
_reserved13: [u32; 3],
pub CFG3: RWRegister<u32>,
_reserved14: [u32; 3],
pub CFG4: RWRegister<u32>,
_reserved15: [u32; 3],
pub CFG5: RWRegister<u32>,
_reserved16: [u32; 3],
pub CFG6: RWRegister<u32>,
_reserved17: [u32; 3],
pub MEM0: RWRegister<u32>,
_reserved18: [u32; 3],
pub MEM1: RWRegister<u32>,
_reserved19: [u32; 3],
pub MEM2: RWRegister<u32>,
_reserved20: [u32; 3],
pub MEM3: RWRegister<u32>,
_reserved21: [u32; 3],
pub MEM4: RWRegister<u32>,
_reserved22: [u32; 3],
pub ANA0: RWRegister<u32>,
_reserved23: [u32; 3],
pub ANA1: RWRegister<u32>,
_reserved24: [u32; 3],
pub ANA2: RWRegister<u32>,
_reserved25: [u32; 3],
pub OTPMK0: RWRegister<u32>,
_reserved26: [u32; 3],
pub OTPMK1: RWRegister<u32>,
_reserved27: [u32; 3],
pub OTPMK2: RWRegister<u32>,
_reserved28: [u32; 3],
pub OTPMK3: RWRegister<u32>,
_reserved29: [u32; 3],
pub OTPMK4: RWRegister<u32>,
_reserved30: [u32; 3],
pub OTPMK5: RWRegister<u32>,
_reserved31: [u32; 3],
pub OTPMK6: RWRegister<u32>,
_reserved32: [u32; 3],
pub OTPMK7: RWRegister<u32>,
_reserved33: [u32; 3],
pub SRK0: RWRegister<u32>,
_reserved34: [u32; 3],
pub SRK1: RWRegister<u32>,
_reserved35: [u32; 3],
pub SRK2: RWRegister<u32>,
_reserved36: [u32; 3],
pub SRK3: RWRegister<u32>,
_reserved37: [u32; 3],
pub SRK4: RWRegister<u32>,
_reserved38: [u32; 3],
pub SRK5: RWRegister<u32>,
_reserved39: [u32; 3],
pub SRK6: RWRegister<u32>,
_reserved40: [u32; 3],
pub SRK7: RWRegister<u32>,
_reserved41: [u32; 3],
pub SJC_RESP0: RWRegister<u32>,
_reserved42: [u32; 3],
pub SJC_RESP1: RWRegister<u32>,
_reserved43: [u32; 3],
pub MAC0: RWRegister<u32>,
_reserved44: [u32; 3],
pub MAC1: RWRegister<u32>,
_reserved45: [u32; 3],
pub MAC2: RWRegister<u32>,
_reserved46: [u32; 3],
pub OTPMK_CRC32: RWRegister<u32>,
_reserved47: [u32; 3],
pub GP1: RWRegister<u32>,
_reserved48: [u32; 3],
pub GP2: RWRegister<u32>,
_reserved49: [u32; 3],
pub SW_GP1: RWRegister<u32>,
_reserved50: [u32; 3],
pub SW_GP20: RWRegister<u32>,
_reserved51: [u32; 3],
pub SW_GP21: RWRegister<u32>,
_reserved52: [u32; 3],
pub SW_GP22: RWRegister<u32>,
_reserved53: [u32; 3],
pub SW_GP23: RWRegister<u32>,
_reserved54: [u32; 3],
pub MISC_CONF0: RWRegister<u32>,
_reserved55: [u32; 3],
pub MISC_CONF1: RWRegister<u32>,
_reserved56: [u32; 3],
pub SRK_REVOKE: RWRegister<u32>,
_reserved57: [u32; 67],
pub ROM_PATCH0: RWRegister<u32>,
_reserved58: [u32; 3],
pub ROM_PATCH1: RWRegister<u32>,
_reserved59: [u32; 3],
pub ROM_PATCH2: RWRegister<u32>,
_reserved60: [u32; 3],
pub ROM_PATCH3: RWRegister<u32>,
_reserved61: [u32; 3],
pub ROM_PATCH4: RWRegister<u32>,
_reserved62: [u32; 3],
pub ROM_PATCH5: RWRegister<u32>,
_reserved63: [u32; 3],
pub ROM_PATCH6: RWRegister<u32>,
_reserved64: [u32; 3],
pub ROM_PATCH7: RWRegister<u32>,
_reserved65: [u32; 3],
pub GP30: RWRegister<u32>,
_reserved66: [u32; 3],
pub GP31: RWRegister<u32>,
_reserved67: [u32; 3],
pub GP32: RWRegister<u32>,
_reserved68: [u32; 3],
pub GP33: RWRegister<u32>,
_reserved69: [u32; 3],
pub GP40: RWRegister<u32>,
_reserved70: [u32; 3],
pub GP41: RWRegister<u32>,
_reserved71: [u32; 3],
pub GP42: RWRegister<u32>,
_reserved72: [u32; 3],
pub GP43: RWRegister<u32>,
}
pub struct ResetValues {
pub CTRL: u32,
pub CTRL_SET: u32,
pub CTRL_CLR: u32,
pub CTRL_TOG: u32,
pub TIMING: u32,
pub DATA: u32,
pub READ_CTRL: u32,
pub READ_FUSE_DATA: u32,
pub SW_STICKY: u32,
pub SCS: u32,
pub SCS_SET: u32,
pub SCS_CLR: u32,
pub SCS_TOG: u32,
pub CRC_ADDR: u32,
pub CRC_VALUE: u32,
pub VERSION: u32,
pub TIMING2: u32,
pub LOCK: u32,
pub CFG0: u32,
pub CFG1: u32,
pub CFG2: u32,
pub CFG3: u32,
pub CFG4: u32,
pub CFG5: u32,
pub CFG6: u32,
pub MEM0: u32,
pub MEM1: u32,
pub MEM2: u32,
pub MEM3: u32,
pub MEM4: u32,
pub ANA0: u32,
pub ANA1: u32,
pub ANA2: u32,
pub OTPMK0: u32,
pub OTPMK1: u32,
pub OTPMK2: u32,
pub OTPMK3: u32,
pub OTPMK4: u32,
pub OTPMK5: u32,
pub OTPMK6: u32,
pub OTPMK7: u32,
pub SRK0: u32,
pub SRK1: u32,
pub SRK2: u32,
pub SRK3: u32,
pub SRK4: u32,
pub SRK5: u32,
pub SRK6: u32,
pub SRK7: u32,
pub SJC_RESP0: u32,
pub SJC_RESP1: u32,
pub MAC0: u32,
pub MAC1: u32,
pub MAC2: u32,
pub OTPMK_CRC32: u32,
pub GP1: u32,
pub GP2: u32,
pub SW_GP1: u32,
pub SW_GP20: u32,
pub SW_GP21: u32,
pub SW_GP22: u32,
pub SW_GP23: u32,
pub MISC_CONF0: u32,
pub MISC_CONF1: u32,
pub SRK_REVOKE: u32,
pub ROM_PATCH0: u32,
pub ROM_PATCH1: u32,
pub ROM_PATCH2: u32,
pub ROM_PATCH3: u32,
pub ROM_PATCH4: u32,
pub ROM_PATCH5: u32,
pub ROM_PATCH6: u32,
pub ROM_PATCH7: u32,
pub GP30: u32,
pub GP31: u32,
pub GP32: u32,
pub GP33: u32,
pub GP40: u32,
pub GP41: u32,
pub GP42: u32,
pub GP43: u32,
}
#[cfg(not(feature = "nosync"))]
pub struct Instance {
pub(crate) addr: u32,
pub(crate) _marker: PhantomData<*const RegisterBlock>,
}
#[cfg(not(feature = "nosync"))]
impl ::core::ops::Deref for Instance {
type Target = RegisterBlock;
#[inline(always)]
fn deref(&self) -> &RegisterBlock {
unsafe { &*(self.addr as *const _) }
}
}
#[cfg(feature = "rtfm")]
unsafe impl Send for Instance {}