diff options
| author | Arne Dußin | 2021-11-06 11:50:33 +0100 |
|---|---|---|
| committer | Arne Dußin | 2021-11-06 11:50:33 +0100 |
| commit | 0666a6ba1dbd66cf8b93c113e362ccbcd99152a0 (patch) | |
| tree | a184284dbd2316f4624f092e4e7521ea8c90855b /src/dsu.rs | |
| download | samc21-0666a6ba1dbd66cf8b93c113e362ccbcd99152a0.tar.gz samc21-0666a6ba1dbd66cf8b93c113e362ccbcd99152a0.zip | |
Initial commit
Diffstat (limited to 'src/dsu.rs')
| -rw-r--r-- | src/dsu.rs | 158 |
1 files changed, 158 insertions, 0 deletions
diff --git a/src/dsu.rs b/src/dsu.rs new file mode 100644 index 0000000..14b78f6 --- /dev/null +++ b/src/dsu.rs @@ -0,0 +1,158 @@ +#[doc = r"Register block"] +#[repr(C)] +pub struct RegisterBlock { + #[doc = "0x00 - Control"] + pub ctrl: crate::Reg<ctrl::CTRL_SPEC>, + #[doc = "0x01 - Status A"] + pub statusa: crate::Reg<statusa::STATUSA_SPEC>, + #[doc = "0x02 - Status B"] + pub statusb: crate::Reg<statusb::STATUSB_SPEC>, + _reserved3: [u8; 0x01], + #[doc = "0x04 - Address"] + pub addr: crate::Reg<addr::ADDR_SPEC>, + #[doc = "0x08 - Length"] + pub length: crate::Reg<length::LENGTH_SPEC>, + #[doc = "0x0c - Data"] + pub data: crate::Reg<data::DATA_SPEC>, + #[doc = "0x10..0x18 - Debug Communication Channel n"] + pub dcc: [crate::Reg<dcc::DCC_SPEC>; 2], + #[doc = "0x18 - Device Identification"] + pub did: crate::Reg<did::DID_SPEC>, + _reserved8: [u8; 0xd4], + #[doc = "0xf0..0xf8 - Device Configuration"] + pub dcfg: [crate::Reg<dcfg::DCFG_SPEC>; 2], + _reserved9: [u8; 0x0f08], + #[doc = "0x1000 - CoreSight ROM Table Entry 0"] + pub entry0: crate::Reg<entry0::ENTRY0_SPEC>, + #[doc = "0x1004 - CoreSight ROM Table Entry 1"] + pub entry1: crate::Reg<entry1::ENTRY1_SPEC>, + #[doc = "0x1008 - CoreSight ROM Table End"] + pub end: crate::Reg<end::END_SPEC>, + _reserved12: [u8; 0x0fc0], + #[doc = "0x1fcc - CoreSight ROM Table Memory Type"] + pub memtype: crate::Reg<memtype::MEMTYPE_SPEC>, + #[doc = "0x1fd0 - Peripheral Identification 4"] + pub pid4: crate::Reg<pid4::PID4_SPEC>, + #[doc = "0x1fd4 - Peripheral Identification 5"] + pub pid5: crate::Reg<pid5::PID5_SPEC>, + #[doc = "0x1fd8 - Peripheral Identification 6"] + pub pid6: crate::Reg<pid6::PID6_SPEC>, + #[doc = "0x1fdc - Peripheral Identification 7"] + pub pid7: crate::Reg<pid7::PID7_SPEC>, + #[doc = "0x1fe0 - Peripheral Identification 0"] + pub pid0: crate::Reg<pid0::PID0_SPEC>, + #[doc = "0x1fe4 - Peripheral Identification 1"] + pub pid1: crate::Reg<pid1::PID1_SPEC>, + #[doc = "0x1fe8 - Peripheral Identification 2"] + pub pid2: crate::Reg<pid2::PID2_SPEC>, + #[doc = "0x1fec - Peripheral Identification 3"] + pub pid3: crate::Reg<pid3::PID3_SPEC>, + #[doc = "0x1ff0 - Component Identification 0"] + pub cid0: crate::Reg<cid0::CID0_SPEC>, + #[doc = "0x1ff4 - Component Identification 1"] + pub cid1: crate::Reg<cid1::CID1_SPEC>, + #[doc = "0x1ff8 - Component Identification 2"] + pub cid2: crate::Reg<cid2::CID2_SPEC>, + #[doc = "0x1ffc - Component Identification 3"] + pub cid3: crate::Reg<cid3::CID3_SPEC>, +} +#[doc = "CTRL register accessor: an alias for `Reg<CTRL_SPEC>`"] +pub type CTRL = crate::Reg<ctrl::CTRL_SPEC>; +#[doc = "Control"] +pub mod ctrl; +#[doc = "STATUSA register accessor: an alias for `Reg<STATUSA_SPEC>`"] +pub type STATUSA = crate::Reg<statusa::STATUSA_SPEC>; +#[doc = "Status A"] +pub mod statusa; +#[doc = "STATUSB register accessor: an alias for `Reg<STATUSB_SPEC>`"] +pub type STATUSB = crate::Reg<statusb::STATUSB_SPEC>; +#[doc = "Status B"] +pub mod statusb; +#[doc = "ADDR register accessor: an alias for `Reg<ADDR_SPEC>`"] +pub type ADDR = crate::Reg<addr::ADDR_SPEC>; +#[doc = "Address"] +pub mod addr; +#[doc = "LENGTH register accessor: an alias for `Reg<LENGTH_SPEC>`"] +pub type LENGTH = crate::Reg<length::LENGTH_SPEC>; +#[doc = "Length"] +pub mod length; +#[doc = "DATA register accessor: an alias for `Reg<DATA_SPEC>`"] +pub type DATA = crate::Reg<data::DATA_SPEC>; +#[doc = "Data"] +pub mod data; +#[doc = "DCC register accessor: an alias for `Reg<DCC_SPEC>`"] +pub type DCC = crate::Reg<dcc::DCC_SPEC>; +#[doc = "Debug Communication Channel n"] +pub mod dcc; +#[doc = "DID register accessor: an alias for `Reg<DID_SPEC>`"] +pub type DID = crate::Reg<did::DID_SPEC>; +#[doc = "Device Identification"] +pub mod did; +#[doc = "DCFG register accessor: an alias for `Reg<DCFG_SPEC>`"] +pub type DCFG = crate::Reg<dcfg::DCFG_SPEC>; +#[doc = "Device Configuration"] +pub mod dcfg; +#[doc = "ENTRY0 register accessor: an alias for `Reg<ENTRY0_SPEC>`"] +pub type ENTRY0 = crate::Reg<entry0::ENTRY0_SPEC>; +#[doc = "CoreSight ROM Table Entry 0"] +pub mod entry0; +#[doc = "ENTRY1 register accessor: an alias for `Reg<ENTRY1_SPEC>`"] +pub type ENTRY1 = crate::Reg<entry1::ENTRY1_SPEC>; +#[doc = "CoreSight ROM Table Entry 1"] +pub mod entry1; +#[doc = "END register accessor: an alias for `Reg<END_SPEC>`"] +pub type END = crate::Reg<end::END_SPEC>; +#[doc = "CoreSight ROM Table End"] +pub mod end; +#[doc = "MEMTYPE register accessor: an alias for `Reg<MEMTYPE_SPEC>`"] +pub type MEMTYPE = crate::Reg<memtype::MEMTYPE_SPEC>; +#[doc = "CoreSight ROM Table Memory Type"] +pub mod memtype; +#[doc = "PID4 register accessor: an alias for `Reg<PID4_SPEC>`"] +pub type PID4 = crate::Reg<pid4::PID4_SPEC>; +#[doc = "Peripheral Identification 4"] +pub mod pid4; +#[doc = "PID5 register accessor: an alias for `Reg<PID5_SPEC>`"] +pub type PID5 = crate::Reg<pid5::PID5_SPEC>; +#[doc = "Peripheral Identification 5"] +pub mod pid5; +#[doc = "PID6 register accessor: an alias for `Reg<PID6_SPEC>`"] +pub type PID6 = crate::Reg<pid6::PID6_SPEC>; +#[doc = "Peripheral Identification 6"] +pub mod pid6; +#[doc = "PID7 register accessor: an alias for `Reg<PID7_SPEC>`"] +pub type PID7 = crate::Reg<pid7::PID7_SPEC>; +#[doc = "Peripheral Identification 7"] +pub mod pid7; +#[doc = "PID0 register accessor: an alias for `Reg<PID0_SPEC>`"] +pub type PID0 = crate::Reg<pid0::PID0_SPEC>; +#[doc = "Peripheral Identification 0"] +pub mod pid0; +#[doc = "PID1 register accessor: an alias for `Reg<PID1_SPEC>`"] +pub type PID1 = crate::Reg<pid1::PID1_SPEC>; +#[doc = "Peripheral Identification 1"] +pub mod pid1; +#[doc = "PID2 register accessor: an alias for `Reg<PID2_SPEC>`"] +pub type PID2 = crate::Reg<pid2::PID2_SPEC>; +#[doc = "Peripheral Identification 2"] +pub mod pid2; +#[doc = "PID3 register accessor: an alias for `Reg<PID3_SPEC>`"] +pub type PID3 = crate::Reg<pid3::PID3_SPEC>; +#[doc = "Peripheral Identification 3"] +pub mod pid3; +#[doc = "CID0 register accessor: an alias for `Reg<CID0_SPEC>`"] +pub type CID0 = crate::Reg<cid0::CID0_SPEC>; +#[doc = "Component Identification 0"] +pub mod cid0; +#[doc = "CID1 register accessor: an alias for `Reg<CID1_SPEC>`"] +pub type CID1 = crate::Reg<cid1::CID1_SPEC>; +#[doc = "Component Identification 1"] +pub mod cid1; +#[doc = "CID2 register accessor: an alias for `Reg<CID2_SPEC>`"] +pub type CID2 = crate::Reg<cid2::CID2_SPEC>; +#[doc = "Component Identification 2"] +pub mod cid2; +#[doc = "CID3 register accessor: an alias for `Reg<CID3_SPEC>`"] +pub type CID3 = crate::Reg<cid3::CID3_SPEC>; +#[doc = "Component Identification 3"] +pub mod cid3; |
