rust-embedded-talk/example-source/msp432p401r/src/flctl.rs

414 lines
15 KiB
Rust

#[doc = r" Register block"]
#[repr(C)]
pub struct RegisterBlock {
#[doc = "0x00 - Power Status Register"]
pub flctl_power_stat: FLCTL_POWER_STAT,
_reserved0: [u8; 12usize],
#[doc = "0x10 - Bank0 Read Control Register"]
pub flctl_bank0_rdctl: FLCTL_BANK0_RDCTL,
#[doc = "0x14 - Bank1 Read Control Register"]
pub flctl_bank1_rdctl: FLCTL_BANK1_RDCTL,
_reserved1: [u8; 8usize],
#[doc = "0x20 - Read Burst/Compare Control and Status Register"]
pub flctl_rdbrst_ctlstat: FLCTL_RDBRST_CTLSTAT,
#[doc = "0x24 - Read Burst/Compare Start Address Register"]
pub flctl_rdbrst_startaddr: FLCTL_RDBRST_STARTADDR,
#[doc = "0x28 - Read Burst/Compare Length Register"]
pub flctl_rdbrst_len: FLCTL_RDBRST_LEN,
_reserved2: [u8; 16usize],
#[doc = "0x3c - Read Burst/Compare Fail Address Register"]
pub flctl_rdbrst_failaddr: FLCTL_RDBRST_FAILADDR,
#[doc = "0x40 - Read Burst/Compare Fail Count Register"]
pub flctl_rdbrst_failcnt: FLCTL_RDBRST_FAILCNT,
_reserved3: [u8; 12usize],
#[doc = "0x50 - Program Control and Status Register"]
pub flctl_prg_ctlstat: FLCTL_PRG_CTLSTAT,
#[doc = "0x54 - Program Burst Control and Status Register"]
pub flctl_prgbrst_ctlstat: FLCTL_PRGBRST_CTLSTAT,
#[doc = "0x58 - Program Burst Start Address Register"]
pub flctl_prgbrst_startaddr: FLCTL_PRGBRST_STARTADDR,
_reserved4: [u8; 4usize],
#[doc = "0x60 - Program Burst Data0 Register0"]
pub flctl_prgbrst_data0_0: FLCTL_PRGBRST_DATA0_0,
#[doc = "0x64 - Program Burst Data0 Register1"]
pub flctl_prgbrst_data0_1: FLCTL_PRGBRST_DATA0_1,
#[doc = "0x68 - Program Burst Data0 Register2"]
pub flctl_prgbrst_data0_2: FLCTL_PRGBRST_DATA0_2,
#[doc = "0x6c - Program Burst Data0 Register3"]
pub flctl_prgbrst_data0_3: FLCTL_PRGBRST_DATA0_3,
#[doc = "0x70 - Program Burst Data1 Register0"]
pub flctl_prgbrst_data1_0: FLCTL_PRGBRST_DATA1_0,
#[doc = "0x74 - Program Burst Data1 Register1"]
pub flctl_prgbrst_data1_1: FLCTL_PRGBRST_DATA1_1,
#[doc = "0x78 - Program Burst Data1 Register2"]
pub flctl_prgbrst_data1_2: FLCTL_PRGBRST_DATA1_2,
#[doc = "0x7c - Program Burst Data1 Register3"]
pub flctl_prgbrst_data1_3: FLCTL_PRGBRST_DATA1_3,
#[doc = "0x80 - Program Burst Data2 Register0"]
pub flctl_prgbrst_data2_0: FLCTL_PRGBRST_DATA2_0,
#[doc = "0x84 - Program Burst Data2 Register1"]
pub flctl_prgbrst_data2_1: FLCTL_PRGBRST_DATA2_1,
#[doc = "0x88 - Program Burst Data2 Register2"]
pub flctl_prgbrst_data2_2: FLCTL_PRGBRST_DATA2_2,
#[doc = "0x8c - Program Burst Data2 Register3"]
pub flctl_prgbrst_data2_3: FLCTL_PRGBRST_DATA2_3,
#[doc = "0x90 - Program Burst Data3 Register0"]
pub flctl_prgbrst_data3_0: FLCTL_PRGBRST_DATA3_0,
#[doc = "0x94 - Program Burst Data3 Register1"]
pub flctl_prgbrst_data3_1: FLCTL_PRGBRST_DATA3_1,
#[doc = "0x98 - Program Burst Data3 Register2"]
pub flctl_prgbrst_data3_2: FLCTL_PRGBRST_DATA3_2,
#[doc = "0x9c - Program Burst Data3 Register3"]
pub flctl_prgbrst_data3_3: FLCTL_PRGBRST_DATA3_3,
#[doc = "0xa0 - Erase Control and Status Register"]
pub flctl_erase_ctlstat: FLCTL_ERASE_CTLSTAT,
#[doc = "0xa4 - Erase Sector Address Register"]
pub flctl_erase_sectaddr: FLCTL_ERASE_SECTADDR,
_reserved5: [u8; 8usize],
#[doc = "0xb0 - Information Memory Bank0 Write/Erase Protection Register"]
pub flctl_bank0_info_weprot: FLCTL_BANK0_INFO_WEPROT,
#[doc = "0xb4 - Main Memory Bank0 Write/Erase Protection Register"]
pub flctl_bank0_main_weprot: FLCTL_BANK0_MAIN_WEPROT,
_reserved6: [u8; 8usize],
#[doc = "0xc0 - Information Memory Bank1 Write/Erase Protection Register"]
pub flctl_bank1_info_weprot: FLCTL_BANK1_INFO_WEPROT,
#[doc = "0xc4 - Main Memory Bank1 Write/Erase Protection Register"]
pub flctl_bank1_main_weprot: FLCTL_BANK1_MAIN_WEPROT,
_reserved7: [u8; 8usize],
#[doc = "0xd0 - Benchmark Control and Status Register"]
pub flctl_bmrk_ctlstat: FLCTL_BMRK_CTLSTAT,
#[doc = "0xd4 - Benchmark Instruction Fetch Count Register"]
pub flctl_bmrk_ifetch: FLCTL_BMRK_IFETCH,
#[doc = "0xd8 - Benchmark Data Read Count Register"]
pub flctl_bmrk_dread: FLCTL_BMRK_DREAD,
#[doc = "0xdc - Benchmark Count Compare Register"]
pub flctl_bmrk_cmp: FLCTL_BMRK_CMP,
_reserved8: [u8; 16usize],
#[doc = "0xf0 - Interrupt Flag Register"]
pub flctl_ifg: FLCTL_IFG,
#[doc = "0xf4 - Interrupt Enable Register"]
pub flctl_ie: FLCTL_IE,
#[doc = "0xf8 - Clear Interrupt Flag Register"]
pub flctl_clrifg: FLCTL_CLRIFG,
#[doc = "0xfc - Set Interrupt Flag Register"]
pub flctl_setifg: FLCTL_SETIFG,
#[doc = "0x100 - Read Timing Control Register"]
pub flctl_read_timctl: FLCTL_READ_TIMCTL,
#[doc = "0x104 - Read Margin Timing Control Register"]
pub flctl_readmargin_timctl: FLCTL_READMARGIN_TIMCTL,
#[doc = "0x108 - Program Verify Timing Control Register"]
pub flctl_prgver_timctl: FLCTL_PRGVER_TIMCTL,
#[doc = "0x10c - Erase Verify Timing Control Register"]
pub flctl_ersver_timctl: FLCTL_ERSVER_TIMCTL,
#[doc = "0x110 - Leakage Verify Timing Control Register"]
pub flctl_lkgver_timctl: FLCTL_LKGVER_TIMCTL,
#[doc = "0x114 - Program Timing Control Register"]
pub flctl_program_timctl: FLCTL_PROGRAM_TIMCTL,
#[doc = "0x118 - Erase Timing Control Register"]
pub flctl_erase_timctl: FLCTL_ERASE_TIMCTL,
#[doc = "0x11c - Mass Erase Timing Control Register"]
pub flctl_masserase_timctl: FLCTL_MASSERASE_TIMCTL,
#[doc = "0x120 - Burst Program Timing Control Register"]
pub flctl_burstprg_timctl: FLCTL_BURSTPRG_TIMCTL,
}
#[doc = "Power Status Register"]
pub struct FLCTL_POWER_STAT {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Power Status Register"]
pub mod flctl_power_stat;
#[doc = "Bank0 Read Control Register"]
pub struct FLCTL_BANK0_RDCTL {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Bank0 Read Control Register"]
pub mod flctl_bank0_rdctl;
#[doc = "Bank1 Read Control Register"]
pub struct FLCTL_BANK1_RDCTL {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Bank1 Read Control Register"]
pub mod flctl_bank1_rdctl;
#[doc = "Read Burst/Compare Control and Status Register"]
pub struct FLCTL_RDBRST_CTLSTAT {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Read Burst/Compare Control and Status Register"]
pub mod flctl_rdbrst_ctlstat;
#[doc = "Read Burst/Compare Start Address Register"]
pub struct FLCTL_RDBRST_STARTADDR {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Read Burst/Compare Start Address Register"]
pub mod flctl_rdbrst_startaddr;
#[doc = "Read Burst/Compare Length Register"]
pub struct FLCTL_RDBRST_LEN {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Read Burst/Compare Length Register"]
pub mod flctl_rdbrst_len;
#[doc = "Read Burst/Compare Fail Address Register"]
pub struct FLCTL_RDBRST_FAILADDR {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Read Burst/Compare Fail Address Register"]
pub mod flctl_rdbrst_failaddr;
#[doc = "Read Burst/Compare Fail Count Register"]
pub struct FLCTL_RDBRST_FAILCNT {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Read Burst/Compare Fail Count Register"]
pub mod flctl_rdbrst_failcnt;
#[doc = "Program Control and Status Register"]
pub struct FLCTL_PRG_CTLSTAT {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Control and Status Register"]
pub mod flctl_prg_ctlstat;
#[doc = "Program Burst Control and Status Register"]
pub struct FLCTL_PRGBRST_CTLSTAT {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Control and Status Register"]
pub mod flctl_prgbrst_ctlstat;
#[doc = "Program Burst Start Address Register"]
pub struct FLCTL_PRGBRST_STARTADDR {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Start Address Register"]
pub mod flctl_prgbrst_startaddr;
#[doc = "Program Burst Data0 Register0"]
pub struct FLCTL_PRGBRST_DATA0_0 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Data0 Register0"]
pub mod flctl_prgbrst_data0_0;
#[doc = "Program Burst Data0 Register1"]
pub struct FLCTL_PRGBRST_DATA0_1 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Data0 Register1"]
pub mod flctl_prgbrst_data0_1;
#[doc = "Program Burst Data0 Register2"]
pub struct FLCTL_PRGBRST_DATA0_2 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Data0 Register2"]
pub mod flctl_prgbrst_data0_2;
#[doc = "Program Burst Data0 Register3"]
pub struct FLCTL_PRGBRST_DATA0_3 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Data0 Register3"]
pub mod flctl_prgbrst_data0_3;
#[doc = "Program Burst Data1 Register0"]
pub struct FLCTL_PRGBRST_DATA1_0 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Data1 Register0"]
pub mod flctl_prgbrst_data1_0;
#[doc = "Program Burst Data1 Register1"]
pub struct FLCTL_PRGBRST_DATA1_1 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Data1 Register1"]
pub mod flctl_prgbrst_data1_1;
#[doc = "Program Burst Data1 Register2"]
pub struct FLCTL_PRGBRST_DATA1_2 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Data1 Register2"]
pub mod flctl_prgbrst_data1_2;
#[doc = "Program Burst Data1 Register3"]
pub struct FLCTL_PRGBRST_DATA1_3 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Data1 Register3"]
pub mod flctl_prgbrst_data1_3;
#[doc = "Program Burst Data2 Register0"]
pub struct FLCTL_PRGBRST_DATA2_0 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Data2 Register0"]
pub mod flctl_prgbrst_data2_0;
#[doc = "Program Burst Data2 Register1"]
pub struct FLCTL_PRGBRST_DATA2_1 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Data2 Register1"]
pub mod flctl_prgbrst_data2_1;
#[doc = "Program Burst Data2 Register2"]
pub struct FLCTL_PRGBRST_DATA2_2 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Data2 Register2"]
pub mod flctl_prgbrst_data2_2;
#[doc = "Program Burst Data2 Register3"]
pub struct FLCTL_PRGBRST_DATA2_3 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Data2 Register3"]
pub mod flctl_prgbrst_data2_3;
#[doc = "Program Burst Data3 Register0"]
pub struct FLCTL_PRGBRST_DATA3_0 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Data3 Register0"]
pub mod flctl_prgbrst_data3_0;
#[doc = "Program Burst Data3 Register1"]
pub struct FLCTL_PRGBRST_DATA3_1 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Data3 Register1"]
pub mod flctl_prgbrst_data3_1;
#[doc = "Program Burst Data3 Register2"]
pub struct FLCTL_PRGBRST_DATA3_2 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Data3 Register2"]
pub mod flctl_prgbrst_data3_2;
#[doc = "Program Burst Data3 Register3"]
pub struct FLCTL_PRGBRST_DATA3_3 {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Burst Data3 Register3"]
pub mod flctl_prgbrst_data3_3;
#[doc = "Erase Control and Status Register"]
pub struct FLCTL_ERASE_CTLSTAT {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Erase Control and Status Register"]
pub mod flctl_erase_ctlstat;
#[doc = "Erase Sector Address Register"]
pub struct FLCTL_ERASE_SECTADDR {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Erase Sector Address Register"]
pub mod flctl_erase_sectaddr;
#[doc = "Information Memory Bank0 Write/Erase Protection Register"]
pub struct FLCTL_BANK0_INFO_WEPROT {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Information Memory Bank0 Write/Erase Protection Register"]
pub mod flctl_bank0_info_weprot;
#[doc = "Main Memory Bank0 Write/Erase Protection Register"]
pub struct FLCTL_BANK0_MAIN_WEPROT {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Main Memory Bank0 Write/Erase Protection Register"]
pub mod flctl_bank0_main_weprot;
#[doc = "Information Memory Bank1 Write/Erase Protection Register"]
pub struct FLCTL_BANK1_INFO_WEPROT {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Information Memory Bank1 Write/Erase Protection Register"]
pub mod flctl_bank1_info_weprot;
#[doc = "Main Memory Bank1 Write/Erase Protection Register"]
pub struct FLCTL_BANK1_MAIN_WEPROT {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Main Memory Bank1 Write/Erase Protection Register"]
pub mod flctl_bank1_main_weprot;
#[doc = "Benchmark Control and Status Register"]
pub struct FLCTL_BMRK_CTLSTAT {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Benchmark Control and Status Register"]
pub mod flctl_bmrk_ctlstat;
#[doc = "Benchmark Instruction Fetch Count Register"]
pub struct FLCTL_BMRK_IFETCH {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Benchmark Instruction Fetch Count Register"]
pub mod flctl_bmrk_ifetch;
#[doc = "Benchmark Data Read Count Register"]
pub struct FLCTL_BMRK_DREAD {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Benchmark Data Read Count Register"]
pub mod flctl_bmrk_dread;
#[doc = "Benchmark Count Compare Register"]
pub struct FLCTL_BMRK_CMP {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Benchmark Count Compare Register"]
pub mod flctl_bmrk_cmp;
#[doc = "Interrupt Flag Register"]
pub struct FLCTL_IFG {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Interrupt Flag Register"]
pub mod flctl_ifg;
#[doc = "Interrupt Enable Register"]
pub struct FLCTL_IE {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Interrupt Enable Register"]
pub mod flctl_ie;
#[doc = "Clear Interrupt Flag Register"]
pub struct FLCTL_CLRIFG {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Clear Interrupt Flag Register"]
pub mod flctl_clrifg;
#[doc = "Set Interrupt Flag Register"]
pub struct FLCTL_SETIFG {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Set Interrupt Flag Register"]
pub mod flctl_setifg;
#[doc = "Read Timing Control Register"]
pub struct FLCTL_READ_TIMCTL {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Read Timing Control Register"]
pub mod flctl_read_timctl;
#[doc = "Read Margin Timing Control Register"]
pub struct FLCTL_READMARGIN_TIMCTL {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Read Margin Timing Control Register"]
pub mod flctl_readmargin_timctl;
#[doc = "Program Verify Timing Control Register"]
pub struct FLCTL_PRGVER_TIMCTL {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Verify Timing Control Register"]
pub mod flctl_prgver_timctl;
#[doc = "Erase Verify Timing Control Register"]
pub struct FLCTL_ERSVER_TIMCTL {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Erase Verify Timing Control Register"]
pub mod flctl_ersver_timctl;
#[doc = "Leakage Verify Timing Control Register"]
pub struct FLCTL_LKGVER_TIMCTL {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Leakage Verify Timing Control Register"]
pub mod flctl_lkgver_timctl;
#[doc = "Program Timing Control Register"]
pub struct FLCTL_PROGRAM_TIMCTL {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Program Timing Control Register"]
pub mod flctl_program_timctl;
#[doc = "Erase Timing Control Register"]
pub struct FLCTL_ERASE_TIMCTL {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Erase Timing Control Register"]
pub mod flctl_erase_timctl;
#[doc = "Mass Erase Timing Control Register"]
pub struct FLCTL_MASSERASE_TIMCTL {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Mass Erase Timing Control Register"]
pub mod flctl_masserase_timctl;
#[doc = "Burst Program Timing Control Register"]
pub struct FLCTL_BURSTPRG_TIMCTL {
register: ::vcell::VolatileCell<u32>,
}
#[doc = "Burst Program Timing Control Register"]
pub mod flctl_burstprg_timctl;