1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4 #[doc = "0x00 - CRC Control Register0"]
5 pub crccr0: CRCCR0,
6 #[doc = "0x01 - CRC Control Register1"]
7 pub crccr1: CRCCR1,
8 _reserved2: [u8; 0x02],
9 _reserved_2_crcdir: [u8; 0x04],
10 _reserved_3_crcdor: [u8; 0x04],
11 #[doc = "0x0c - Snoop Address Register"]
12 pub crcsar: CRCSAR,
13}
14impl RegisterBlock {
15 #[doc = "0x04 - CRC Data Input Register (byte access)"]
16 #[inline(always)]
17 pub const fn crcdir_by(&self) -> &CRCDIR_BY {
18 unsafe { &*(self as *const Self).cast::<u8>().add(4usize).cast() }
19 }
20 #[doc = "0x04 - CRC Data Input Register"]
21 #[inline(always)]
22 pub const fn crcdir(&self) -> &CRCDIR {
23 unsafe { &*(self as *const Self).cast::<u8>().add(4usize).cast() }
24 }
25 #[doc = "0x08 - CRC Data Output Register(byte access)"]
26 #[inline(always)]
27 pub const fn crcdor_by(&self) -> &CRCDOR_BY {
28 unsafe { &*(self as *const Self).cast::<u8>().add(8usize).cast() }
29 }
30 #[doc = "0x08 - CRC Data Output Register (halfword access)"]
31 #[inline(always)]
32 pub const fn crcdor_ha(&self) -> &CRCDOR_HA {
33 unsafe { &*(self as *const Self).cast::<u8>().add(8usize).cast() }
34 }
35 #[doc = "0x08 - CRC Data Output Register"]
36 #[inline(always)]
37 pub const fn crcdor(&self) -> &CRCDOR {
38 unsafe { &*(self as *const Self).cast::<u8>().add(8usize).cast() }
39 }
40}
41#[doc = "CRCCR0 (rw) register accessor: an alias for `Reg<CRCCR0_SPEC>`"]
42pub type CRCCR0 = crate::Reg<crccr0::CRCCR0_SPEC>;
43#[doc = "CRC Control Register0"]
44pub mod crccr0;
45#[doc = "CRCCR1 (rw) register accessor: an alias for `Reg<CRCCR1_SPEC>`"]
46pub type CRCCR1 = crate::Reg<crccr1::CRCCR1_SPEC>;
47#[doc = "CRC Control Register1"]
48pub mod crccr1;
49#[doc = "CRCDIR (rw) register accessor: an alias for `Reg<CRCDIR_SPEC>`"]
50pub type CRCDIR = crate::Reg<crcdir::CRCDIR_SPEC>;
51#[doc = "CRC Data Input Register"]
52pub mod crcdir;
53#[doc = "CRCDIR_BY (rw) register accessor: an alias for `Reg<CRCDIR_BY_SPEC>`"]
54pub type CRCDIR_BY = crate::Reg<crcdir_by::CRCDIR_BY_SPEC>;
55#[doc = "CRC Data Input Register (byte access)"]
56pub mod crcdir_by;
57#[doc = "CRCDOR (rw) register accessor: an alias for `Reg<CRCDOR_SPEC>`"]
58pub type CRCDOR = crate::Reg<crcdor::CRCDOR_SPEC>;
59#[doc = "CRC Data Output Register"]
60pub mod crcdor;
61#[doc = "CRCDOR_HA (rw) register accessor: an alias for `Reg<CRCDOR_HA_SPEC>`"]
62pub type CRCDOR_HA = crate::Reg<crcdor_ha::CRCDOR_HA_SPEC>;
63#[doc = "CRC Data Output Register (halfword access)"]
64pub mod crcdor_ha;
65#[doc = "CRCDOR_BY (rw) register accessor: an alias for `Reg<CRCDOR_BY_SPEC>`"]
66pub type CRCDOR_BY = crate::Reg<crcdor_by::CRCDOR_BY_SPEC>;
67#[doc = "CRC Data Output Register(byte access)"]
68pub mod crcdor_by;
69#[doc = "CRCSAR (rw) register accessor: an alias for `Reg<CRCSAR_SPEC>`"]
70pub type CRCSAR = crate::Reg<crcsar::CRCSAR_SPEC>;
71#[doc = "Snoop Address Register"]
72pub mod crcsar;