#[doc = r" Register block"]
#[repr(C)]
pub struct RegisterBlock {
#[doc = "0x00 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r0: HSEM_R0,
#[doc = "0x04 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r1: HSEM_R1,
#[doc = "0x08 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r2: HSEM_R2,
#[doc = "0x0c - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r3: HSEM_R3,
#[doc = "0x10 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r4: HSEM_R4,
#[doc = "0x14 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r5: HSEM_R5,
#[doc = "0x18 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r6: HSEM_R6,
#[doc = "0x1c - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r7: HSEM_R7,
#[doc = "0x20 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r8: HSEM_R8,
#[doc = "0x24 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r9: HSEM_R9,
#[doc = "0x28 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r10: HSEM_R10,
#[doc = "0x2c - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r11: HSEM_R11,
#[doc = "0x30 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r12: HSEM_R12,
#[doc = "0x34 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r13: HSEM_R13,
#[doc = "0x38 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r14: HSEM_R14,
#[doc = "0x3c - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r15: HSEM_R15,
#[doc = "0x40 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r16: HSEM_R16,
#[doc = "0x44 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r17: HSEM_R17,
#[doc = "0x48 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r18: HSEM_R18,
#[doc = "0x4c - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r19: HSEM_R19,
#[doc = "0x50 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r20: HSEM_R20,
#[doc = "0x54 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r21: HSEM_R21,
#[doc = "0x58 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r22: HSEM_R22,
#[doc = "0x5c - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r23: HSEM_R23,
#[doc = "0x60 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r24: HSEM_R24,
#[doc = "0x64 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r25: HSEM_R25,
#[doc = "0x68 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r26: HSEM_R26,
#[doc = "0x6c - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r27: HSEM_R27,
#[doc = "0x70 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r28: HSEM_R28,
#[doc = "0x74 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r29: HSEM_R29,
#[doc = "0x78 - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r30: HSEM_R30,
#[doc = "0x7c - HSEM register HSEM_R0 HSEM_R31"]
pub hsem_r31: HSEM_R31,
#[doc = "0x80 - HSEM Read lock register"]
pub hsem_rlr0: HSEM_RLR0,
#[doc = "0x84 - HSEM Read lock register"]
pub hsem_rlr1: HSEM_RLR1,
#[doc = "0x88 - HSEM Read lock register"]
pub hsem_rlr2: HSEM_RLR2,
#[doc = "0x8c - HSEM Read lock register"]
pub hsem_rlr3: HSEM_RLR3,
#[doc = "0x90 - HSEM Read lock register"]
pub hsem_rlr4: HSEM_RLR4,
#[doc = "0x94 - HSEM Read lock register"]
pub hsem_rlr5: HSEM_RLR5,
#[doc = "0x98 - HSEM Read lock register"]
pub hsem_rlr6: HSEM_RLR6,
#[doc = "0x9c - HSEM Read lock register"]
pub hsem_rlr7: HSEM_RLR7,
#[doc = "0xa0 - HSEM Read lock register"]
pub hsem_rlr8: HSEM_RLR8,
#[doc = "0xa4 - HSEM Read lock register"]
pub hsem_rlr9: HSEM_RLR9,
#[doc = "0xa8 - HSEM Read lock register"]
pub hsem_rlr10: HSEM_RLR10,
#[doc = "0xac - HSEM Read lock register"]
pub hsem_rlr11: HSEM_RLR11,
#[doc = "0xb0 - HSEM Read lock register"]
pub hsem_rlr12: HSEM_RLR12,
#[doc = "0xb4 - HSEM Read lock register"]
pub hsem_rlr13: HSEM_RLR13,
#[doc = "0xb8 - HSEM Read lock register"]
pub hsem_rlr14: HSEM_RLR14,
#[doc = "0xbc - HSEM Read lock register"]
pub hsem_rlr15: HSEM_RLR15,
#[doc = "0xc0 - HSEM Read lock register"]
pub hsem_rlr16: HSEM_RLR16,
#[doc = "0xc4 - HSEM Read lock register"]
pub hsem_rlr17: HSEM_RLR17,
#[doc = "0xc8 - HSEM Read lock register"]
pub hsem_rlr18: HSEM_RLR18,
#[doc = "0xcc - HSEM Read lock register"]
pub hsem_rlr19: HSEM_RLR19,
#[doc = "0xd0 - HSEM Read lock register"]
pub hsem_rlr20: HSEM_RLR20,
#[doc = "0xd4 - HSEM Read lock register"]
pub hsem_rlr21: HSEM_RLR21,
#[doc = "0xd8 - HSEM Read lock register"]
pub hsem_rlr22: HSEM_RLR22,
#[doc = "0xdc - HSEM Read lock register"]
pub hsem_rlr23: HSEM_RLR23,
#[doc = "0xe0 - HSEM Read lock register"]
pub hsem_rlr24: HSEM_RLR24,
#[doc = "0xe4 - HSEM Read lock register"]
pub hsem_rlr25: HSEM_RLR25,
#[doc = "0xe8 - HSEM Read lock register"]
pub hsem_rlr26: HSEM_RLR26,
#[doc = "0xec - HSEM Read lock register"]
pub hsem_rlr27: HSEM_RLR27,
#[doc = "0xf0 - HSEM Read lock register"]
pub hsem_rlr28: HSEM_RLR28,
#[doc = "0xf4 - HSEM Read lock register"]
pub hsem_rlr29: HSEM_RLR29,
#[doc = "0xf8 - HSEM Read lock register"]
pub hsem_rlr30: HSEM_RLR30,
#[doc = "0xfc - HSEM Read lock register"]
pub hsem_rlr31: HSEM_RLR31,
#[doc = "0x100 - HSEM Interrupt enable register"]
pub hsem_ier: HSEM_IER,
#[doc = "0x104 - HSEM Interrupt clear register"]
pub hsem_icr: HSEM_ICR,
#[doc = "0x108 - HSEM Interrupt status register"]
pub hsem_isr: HSEM_ISR,
#[doc = "0x10c - HSEM Masked interrupt status register"]
pub hsem_misr: HSEM_MISR,
_reserved0: [u8; 48usize],
#[doc = "0x140 - HSEM Clear register"]
pub hsem_cr: HSEM_CR,
#[doc = "0x144 - HSEM Interrupt clear register"]
pub hsem_keyr: HSEM_KEYR,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R0 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r0;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R1 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r1;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R2 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r2;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R3 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r3;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R4 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r4;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R5 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r5;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R6 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r6;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R7 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r7;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R8 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r8;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R9 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r9;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R10 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r10;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R11 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r11;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R12 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r12;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R13 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r13;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R14 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r14;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R15 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r15;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R16 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r16;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R17 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r17;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R18 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r18;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R19 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r19;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R20 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r20;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R21 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r21;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R22 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r22;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R23 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r23;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R24 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r24;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R25 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r25;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R26 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r26;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R27 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r27;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R28 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r28;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R29 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r29;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R30 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r30;
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub struct HSEM_R31 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM register HSEM_R0 HSEM_R31"]
pub mod hsem_r31;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR0 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr0;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR1 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr1;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR2 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr2;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR3 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr3;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR4 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr4;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR5 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr5;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR6 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr6;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR7 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr7;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR8 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr8;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR9 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr9;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR10 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr10;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR11 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr11;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR12 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr12;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR13 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr13;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR14 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr14;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR15 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr15;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR16 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr16;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR17 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr17;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR18 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr18;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR19 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr19;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR20 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr20;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR21 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr21;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR22 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr22;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR23 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr23;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR24 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr24;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR25 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr25;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR26 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr26;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR27 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr27;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR28 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr28;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR29 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr29;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR30 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr30;
#[doc = "HSEM Read lock register"]
pub struct HSEM_RLR31 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Read lock register"]
pub mod hsem_rlr31;
#[doc = "HSEM Interrupt enable register"]
pub struct HSEM_IER {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Interrupt enable register"]
pub mod hsem_ier;
#[doc = "HSEM Interrupt clear register"]
pub struct HSEM_ICR {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Interrupt clear register"]
pub mod hsem_icr;
#[doc = "HSEM Interrupt status register"]
pub struct HSEM_ISR {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Interrupt status register"]
pub mod hsem_isr;
#[doc = "HSEM Masked interrupt status register"]
pub struct HSEM_MISR {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Masked interrupt status register"]
pub mod hsem_misr;
#[doc = "HSEM Clear register"]
pub struct HSEM_CR {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Clear register"]
pub mod hsem_cr;
#[doc = "HSEM Interrupt clear register"]
pub struct HSEM_KEYR {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "HSEM Interrupt clear register"]
pub mod hsem_keyr;