#![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 ISER0 {
pub mod SETENA {
pub const offset: u32 = 0;
pub const mask: u32 = 0xffffffff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod ISER1 {
pub use super::ISER0::SETENA;
}
pub mod ISER2 {
pub use super::ISER0::SETENA;
}
pub mod ISER3 {
pub use super::ISER0::SETENA;
}
pub mod ICER0 {
pub mod CLRENA {
pub const offset: u32 = 0;
pub const mask: u32 = 0xffffffff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod ICER1 {
pub use super::ICER0::CLRENA;
}
pub mod ICER2 {
pub use super::ICER0::CLRENA;
}
pub mod ICER3 {
pub use super::ICER0::CLRENA;
}
pub mod ISPR0 {
pub mod SETPEND {
pub const offset: u32 = 0;
pub const mask: u32 = 0xffffffff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod ISPR1 {
pub use super::ISPR0::SETPEND;
}
pub mod ISPR2 {
pub use super::ISPR0::SETPEND;
}
pub mod ISPR3 {
pub use super::ISPR0::SETPEND;
}
pub mod ICPR0 {
pub mod CLRPEND {
pub const offset: u32 = 0;
pub const mask: u32 = 0xffffffff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod ICPR1 {
pub use super::ICPR0::CLRPEND;
}
pub mod ICPR2 {
pub use super::ICPR0::CLRPEND;
}
pub mod ICPR3 {
pub use super::ICPR0::CLRPEND;
}
pub mod IABR0 {
pub mod ACTIVE {
pub const offset: u32 = 0;
pub const mask: u32 = 0xffffffff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod IABR1 {
pub use super::IABR0::ACTIVE;
}
pub mod IABR2 {
pub use super::IABR0::ACTIVE;
}
pub mod IABR3 {
pub use super::IABR0::ACTIVE;
}
pub mod IPR0 {
pub mod IPR_N0 {
pub const offset: u32 = 0;
pub const mask: u32 = 0xff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod IPR_N1 {
pub const offset: u32 = 8;
pub const mask: u32 = 0xff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod IPR_N2 {
pub const offset: u32 = 16;
pub const mask: u32 = 0xff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod IPR_N3 {
pub const offset: u32 = 24;
pub const mask: u32 = 0xff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod IPR1 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR2 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR3 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR4 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR5 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR6 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR7 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR8 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR9 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR10 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR11 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR12 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR13 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR14 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR15 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR16 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR17 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR18 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR19 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR20 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR21 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR22 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR23 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR24 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR25 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR26 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR27 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR28 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR29 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR30 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR31 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR32 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR33 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR34 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR35 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR36 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR37 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod IPR38 {
pub use super::IPR0::IPR_N0;
pub use super::IPR0::IPR_N1;
pub use super::IPR0::IPR_N2;
pub use super::IPR0::IPR_N3;
}
pub mod ISER4 {}
pub mod ICER4 {}
pub mod ISPR4 {}
pub mod ICPR4 {}
pub mod IABR4 {}
#[repr(C)]
pub struct RegisterBlock {
pub ISER0: RWRegister<u32>,
pub ISER1: RWRegister<u32>,
pub ISER2: RWRegister<u32>,
pub ISER3: RWRegister<u32>,
pub ISER4: RWRegister<u32>,
_reserved1: [u8; 108],
pub ICER0: RWRegister<u32>,
pub ICER1: RWRegister<u32>,
pub ICER2: RWRegister<u32>,
pub ICER3: RWRegister<u32>,
pub ICER4: RWRegister<u32>,
_reserved2: [u8; 108],
pub ISPR0: RWRegister<u32>,
pub ISPR1: RWRegister<u32>,
pub ISPR2: RWRegister<u32>,
pub ISPR3: RWRegister<u32>,
pub ISPR4: RWRegister<u32>,
_reserved3: [u8; 108],
pub ICPR0: RWRegister<u32>,
pub ICPR1: RWRegister<u32>,
pub ICPR2: RWRegister<u32>,
pub ICPR3: RWRegister<u32>,
_reserved4: [u8; 52],
pub ICPR4: RWRegister<u32>,
_reserved5: [u8; 56],
pub IABR0: RORegister<u32>,
pub IABR1: RORegister<u32>,
pub IABR2: RORegister<u32>,
pub IABR3: RORegister<u32>,
pub IABR4: RWRegister<u32>,
_reserved6: [u8; 236],
pub IPR0: RWRegister<u32>,
pub IPR1: RWRegister<u32>,
pub IPR2: RWRegister<u32>,
pub IPR3: RWRegister<u32>,
pub IPR4: RWRegister<u32>,
pub IPR5: RWRegister<u32>,
pub IPR6: RWRegister<u32>,
pub IPR7: RWRegister<u32>,
pub IPR8: RWRegister<u32>,
pub IPR9: RWRegister<u32>,
pub IPR10: RWRegister<u32>,
pub IPR11: RWRegister<u32>,
pub IPR12: RWRegister<u32>,
pub IPR13: RWRegister<u32>,
pub IPR14: RWRegister<u32>,
pub IPR15: RWRegister<u32>,
pub IPR16: RWRegister<u32>,
pub IPR17: RWRegister<u32>,
pub IPR18: RWRegister<u32>,
pub IPR19: RWRegister<u32>,
pub IPR20: RWRegister<u32>,
pub IPR21: RWRegister<u32>,
pub IPR22: RWRegister<u32>,
pub IPR23: RWRegister<u32>,
pub IPR24: RWRegister<u32>,
pub IPR25: RWRegister<u32>,
pub IPR26: RWRegister<u32>,
pub IPR27: RWRegister<u32>,
pub IPR28: RWRegister<u32>,
pub IPR29: RWRegister<u32>,
pub IPR30: RWRegister<u32>,
pub IPR31: RWRegister<u32>,
pub IPR32: RWRegister<u32>,
pub IPR33: RWRegister<u32>,
pub IPR34: RWRegister<u32>,
pub IPR35: RWRegister<u32>,
pub IPR36: RWRegister<u32>,
pub IPR37: RWRegister<u32>,
pub IPR38: RWRegister<u32>,
}
pub struct ResetValues {
pub ISER0: u32,
pub ISER1: u32,
pub ISER2: u32,
pub ISER3: u32,
pub ISER4: u32,
pub ICER0: u32,
pub ICER1: u32,
pub ICER2: u32,
pub ICER3: u32,
pub ICER4: u32,
pub ISPR0: u32,
pub ISPR1: u32,
pub ISPR2: u32,
pub ISPR3: u32,
pub ISPR4: u32,
pub ICPR0: u32,
pub ICPR1: u32,
pub ICPR2: u32,
pub ICPR3: u32,
pub ICPR4: u32,
pub IABR0: u32,
pub IABR1: u32,
pub IABR2: u32,
pub IABR3: u32,
pub IABR4: u32,
pub IPR0: u32,
pub IPR1: u32,
pub IPR2: u32,
pub IPR3: u32,
pub IPR4: u32,
pub IPR5: u32,
pub IPR6: u32,
pub IPR7: u32,
pub IPR8: u32,
pub IPR9: u32,
pub IPR10: u32,
pub IPR11: u32,
pub IPR12: u32,
pub IPR13: u32,
pub IPR14: u32,
pub IPR15: u32,
pub IPR16: u32,
pub IPR17: u32,
pub IPR18: u32,
pub IPR19: u32,
pub IPR20: u32,
pub IPR21: u32,
pub IPR22: u32,
pub IPR23: u32,
pub IPR24: u32,
pub IPR25: u32,
pub IPR26: u32,
pub IPR27: u32,
pub IPR28: u32,
pub IPR29: u32,
pub IPR30: u32,
pub IPR31: u32,
pub IPR32: u32,
pub IPR33: u32,
pub IPR34: u32,
pub IPR35: u32,
pub IPR36: u32,
pub IPR37: u32,
pub IPR38: 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 = "rtic")]
unsafe impl Send for Instance {}