// rigless svd from STM32H743.svd, sha256 28dd22d7923a16c1167bda9cfe6cb20cc9e98d44095dd930fd987029a839af58. Do not edit.
// Copyright (c) 2025 STMicroelectronics.
// SPDX-License-Identifier: Apache-2.0
//! Registers of `RTC` and the instances derived from it.
use rigless::soc::{Access, FieldSpec, Layout, ReadAction, RegisterSpec, Width, WriteModify};
/// The registers by name, where a variant's index is its row in [`REGISTERS`].
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum Register {
/// `RTC_TR` at offset `0x0`, resets to `0x0000_0000`, read-write.
RtcTr = 0,
/// `RTC_DR` at offset `0x4`, resets to `0x0000_2101`, read-write.
RtcDr = 1,
/// `RTC_CR` at offset `0x8`, resets to `0x0000_0000`, read-write.
RtcCr = 2,
/// `RTC_ISR` at offset `0xC`, resets to `0x0000_0007`, read-write.
RtcIsr = 3,
/// `RTC_PRER` at offset `0x10`, resets to `0x007F_00FF`, read-write.
RtcPrer = 4,
/// `RTC_WUTR` at offset `0x14`, resets to `0x0000_FFFF`, read-write.
RtcWutr = 5,
/// `RTC_ALRMAR` at offset `0x1C`, resets to `0x0000_0000`, read-write.
RtcAlrmar = 6,
/// `RTC_ALRMBR` at offset `0x20`, resets to `0x0000_0000`, read-write.
RtcAlrmbr = 7,
/// `RTC_WPR` at offset `0x24`, resets to `0x0000_0000`, write-only.
RtcWpr = 8,
/// `RTC_SSR` at offset `0x28`, resets to `0x0000_0000`, read-only.
RtcSsr = 9,
/// `RTC_SHIFTR` at offset `0x2C`, resets to `0x0000_0000`, write-only.
RtcShiftr = 10,
/// `RTC_TSTR` at offset `0x30`, resets to `0x0000_0000`, read-only.
RtcTstr = 11,
/// `RTC_TSDR` at offset `0x34`, resets to `0x0000_0000`, read-only.
RtcTsdr = 12,
/// `RTC_TSSSR` at offset `0x38`, resets to `0x0000_0000`, read-only.
RtcTsssr = 13,
/// `RTC_CALR` at offset `0x3C`, resets to `0x0000_0000`, read-write.
RtcCalr = 14,
/// `RTC_TAMPCR` at offset `0x40`, resets to `0x0000_0000`, read-write.
RtcTampcr = 15,
/// `RTC_ALRMASSR` at offset `0x44`, resets to `0x0000_0000`, read-write.
RtcAlrmassr = 16,
/// `RTC_ALRMBSSR` at offset `0x48`, resets to `0x0000_0000`, read-write.
RtcAlrmbssr = 17,
/// `RTC_OR` at offset `0x4C`, resets to `0x0000_0000`, read-write.
RtcOr = 18,
/// `RTC_BKP0R` at offset `0x50`, resets to `0x0000_0000`, read-write.
RtcBkp0r = 19,
/// `RTC_BKP1R` at offset `0x54`, resets to `0x0000_0000`, read-write.
RtcBkp1r = 20,
/// `RTC_BKP2R` at offset `0x58`, resets to `0x0000_0000`, read-write.
RtcBkp2r = 21,
/// `RTC_BKP3R` at offset `0x5C`, resets to `0x0000_0000`, read-write.
RtcBkp3r = 22,
/// `RTC_BKP4R` at offset `0x60`, resets to `0x0000_0000`, read-write.
RtcBkp4r = 23,
/// `RTC_BKP5R` at offset `0x64`, resets to `0x0000_0000`, read-write.
RtcBkp5r = 24,
/// `RTC_BKP6R` at offset `0x68`, resets to `0x0000_0000`, read-write.
RtcBkp6r = 25,
/// `RTC_BKP7R` at offset `0x6C`, resets to `0x0000_0000`, read-write.
RtcBkp7r = 26,
/// `RTC_BKP8R` at offset `0x70`, resets to `0x0000_0000`, read-write.
RtcBkp8r = 27,
/// `RTC_BKP9R` at offset `0x74`, resets to `0x0000_0000`, read-write.
RtcBkp9r = 28,
/// `RTC_BKP10R` at offset `0x78`, resets to `0x0000_0000`, read-write.
RtcBkp10r = 29,
/// `RTC_BKP11R` at offset `0x7C`, resets to `0x0000_0000`, read-write.
RtcBkp11r = 30,
/// `RTC_BKP12R` at offset `0x80`, resets to `0x0000_0000`, read-write.
RtcBkp12r = 31,
/// `RTC_BKP13R` at offset `0x84`, resets to `0x0000_0000`, read-write.
RtcBkp13r = 32,
/// `RTC_BKP14R` at offset `0x88`, resets to `0x0000_0000`, read-write.
RtcBkp14r = 33,
/// `RTC_BKP15R` at offset `0x8C`, resets to `0x0000_0000`, read-write.
RtcBkp15r = 34,
/// `RTC_BKP16R` at offset `0x90`, resets to `0x0000_0000`, read-write.
RtcBkp16r = 35,
/// `RTC_BKP17R` at offset `0x94`, resets to `0x0000_0000`, read-write.
RtcBkp17r = 36,
/// `RTC_BKP18R` at offset `0x98`, resets to `0x0000_0000`, read-write.
RtcBkp18r = 37,
/// `RTC_BKP19R` at offset `0x9C`, resets to `0x0000_0000`, read-write.
RtcBkp19r = 38,
/// `RTC_BKP20R` at offset `0xA0`, resets to `0x0000_0000`, read-write.
RtcBkp20r = 39,
/// `RTC_BKP21R` at offset `0xA4`, resets to `0x0000_0000`, read-write.
RtcBkp21r = 40,
/// `RTC_BKP22R` at offset `0xA8`, resets to `0x0000_0000`, read-write.
RtcBkp22r = 41,
/// `RTC_BKP23R` at offset `0xAC`, resets to `0x0000_0000`, read-write.
RtcBkp23r = 42,
/// `RTC_BKP24R` at offset `0xB0`, resets to `0x0000_0000`, read-write.
RtcBkp24r = 43,
/// `RTC_BKP25R` at offset `0xB4`, resets to `0x0000_0000`, read-write.
RtcBkp25r = 44,
/// `RTC_BKP26R` at offset `0xB8`, resets to `0x0000_0000`, read-write.
RtcBkp26r = 45,
/// `RTC_BKP27R` at offset `0xBC`, resets to `0x0000_0000`, read-write.
RtcBkp27r = 46,
/// `RTC_BKP28R` at offset `0xC0`, resets to `0x0000_0000`, read-write.
RtcBkp28r = 47,
/// `RTC_BKP29R` at offset `0xC4`, resets to `0x0000_0000`, read-write.
RtcBkp29r = 48,
/// `RTC_BKP30R` at offset `0xC8`, resets to `0x0000_0000`, read-write.
RtcBkp30r = 49,
/// `RTC_BKP31R` at offset `0xCC`, resets to `0x0000_0000`, read-write.
RtcBkp31r = 50,
}
impl Register {
/// Every register, in table order.
pub const ALL: [Self; 51] = [Self::RtcTr, Self::RtcDr, Self::RtcCr, Self::RtcIsr, Self::RtcPrer, Self::RtcWutr, Self::RtcAlrmar, Self::RtcAlrmbr, Self::RtcWpr, Self::RtcSsr, Self::RtcShiftr, Self::RtcTstr, Self::RtcTsdr, Self::RtcTsssr, Self::RtcCalr, Self::RtcTampcr, Self::RtcAlrmassr, Self::RtcAlrmbssr, Self::RtcOr, Self::RtcBkp0r, Self::RtcBkp1r, Self::RtcBkp2r, Self::RtcBkp3r, Self::RtcBkp4r, Self::RtcBkp5r, Self::RtcBkp6r, Self::RtcBkp7r, Self::RtcBkp8r, Self::RtcBkp9r, Self::RtcBkp10r, Self::RtcBkp11r, Self::RtcBkp12r, Self::RtcBkp13r, Self::RtcBkp14r, Self::RtcBkp15r, Self::RtcBkp16r, Self::RtcBkp17r, Self::RtcBkp18r, Self::RtcBkp19r, Self::RtcBkp20r, Self::RtcBkp21r, Self::RtcBkp22r, Self::RtcBkp23r, Self::RtcBkp24r, Self::RtcBkp25r, Self::RtcBkp26r, Self::RtcBkp27r, Self::RtcBkp28r, Self::RtcBkp29r, Self::RtcBkp30r, Self::RtcBkp31r];
}
impl Layout for Register {
const REGISTERS: &'static [RegisterSpec] = ®ISTERS;
fn from_index(index: usize) -> Option<Self> {
Self::ALL.get(index).copied()
}
fn index(self) -> usize {
self as usize
}
}
/// The fields of `RTC_TR`.
pub mod rtc_tr {
use super::FieldSpec;
/// `SU`, bits 0..=3.
pub const SU: &FieldSpec = &super::REGISTERS[0].fields[0];
/// `ST`, bits 4..=6.
pub const ST: &FieldSpec = &super::REGISTERS[0].fields[1];
/// `MNU`, bits 8..=11.
pub const MNU: &FieldSpec = &super::REGISTERS[0].fields[2];
/// `MNT`, bits 12..=14.
pub const MNT: &FieldSpec = &super::REGISTERS[0].fields[3];
/// `HU`, bits 16..=19.
pub const HU: &FieldSpec = &super::REGISTERS[0].fields[4];
/// `HT`, bits 20..=21.
pub const HT: &FieldSpec = &super::REGISTERS[0].fields[5];
/// `PM`, bit 22.
pub const PM: &FieldSpec = &super::REGISTERS[0].fields[6];
}
/// The fields of `RTC_DR`.
pub mod rtc_dr {
use super::FieldSpec;
/// `DU`, bits 0..=3.
pub const DU: &FieldSpec = &super::REGISTERS[1].fields[0];
/// `DT`, bits 4..=5.
pub const DT: &FieldSpec = &super::REGISTERS[1].fields[1];
/// `MU`, bits 8..=11.
pub const MU: &FieldSpec = &super::REGISTERS[1].fields[2];
/// `MT`, bit 12.
pub const MT: &FieldSpec = &super::REGISTERS[1].fields[3];
/// `WDU`, bits 13..=15.
pub const WDU: &FieldSpec = &super::REGISTERS[1].fields[4];
/// `YU`, bits 16..=19.
pub const YU: &FieldSpec = &super::REGISTERS[1].fields[5];
/// `YT`, bits 20..=23.
pub const YT: &FieldSpec = &super::REGISTERS[1].fields[6];
}
/// The fields of `RTC_CR`.
pub mod rtc_cr {
use super::FieldSpec;
/// `WUCKSEL`, bits 0..=2.
pub const WUCKSEL: &FieldSpec = &super::REGISTERS[2].fields[0];
/// `TSEDGE`, bit 3.
pub const TSEDGE: &FieldSpec = &super::REGISTERS[2].fields[1];
/// `REFCKON`, bit 4.
pub const REFCKON: &FieldSpec = &super::REGISTERS[2].fields[2];
/// `BYPSHAD`, bit 5.
pub const BYPSHAD: &FieldSpec = &super::REGISTERS[2].fields[3];
/// `FMT`, bit 6.
pub const FMT: &FieldSpec = &super::REGISTERS[2].fields[4];
/// `ALRAE`, bit 8.
pub const ALRAE: &FieldSpec = &super::REGISTERS[2].fields[5];
/// `ALRBE`, bit 9.
pub const ALRBE: &FieldSpec = &super::REGISTERS[2].fields[6];
/// `WUTE`, bit 10.
pub const WUTE: &FieldSpec = &super::REGISTERS[2].fields[7];
/// `TSE`, bit 11.
pub const TSE: &FieldSpec = &super::REGISTERS[2].fields[8];
/// `ALRAIE`, bit 12.
pub const ALRAIE: &FieldSpec = &super::REGISTERS[2].fields[9];
/// `ALRBIE`, bit 13.
pub const ALRBIE: &FieldSpec = &super::REGISTERS[2].fields[10];
/// `WUTIE`, bit 14.
pub const WUTIE: &FieldSpec = &super::REGISTERS[2].fields[11];
/// `TSIE`, bit 15.
pub const TSIE: &FieldSpec = &super::REGISTERS[2].fields[12];
/// `ADD1H`, bit 16, write-only.
pub const ADD1H: &FieldSpec = &super::REGISTERS[2].fields[13];
/// `SUB1H`, bit 17, write-only.
pub const SUB1H: &FieldSpec = &super::REGISTERS[2].fields[14];
/// `BKP`, bit 18.
pub const BKP: &FieldSpec = &super::REGISTERS[2].fields[15];
/// `COSEL`, bit 19.
pub const COSEL: &FieldSpec = &super::REGISTERS[2].fields[16];
/// `POL`, bit 20.
pub const POL: &FieldSpec = &super::REGISTERS[2].fields[17];
/// `OSEL`, bits 21..=22.
pub const OSEL: &FieldSpec = &super::REGISTERS[2].fields[18];
/// `COE`, bit 23.
pub const COE: &FieldSpec = &super::REGISTERS[2].fields[19];
/// `ITSE`, bit 24.
pub const ITSE: &FieldSpec = &super::REGISTERS[2].fields[20];
}
/// The fields of `RTC_ISR`.
pub mod rtc_isr {
use super::FieldSpec;
/// `ALRAWF`, bit 0, read-only.
pub const ALRAWF: &FieldSpec = &super::REGISTERS[3].fields[0];
/// `ALRBWF`, bit 1, read-only.
pub const ALRBWF: &FieldSpec = &super::REGISTERS[3].fields[1];
/// `WUTWF`, bit 2, read-only.
pub const WUTWF: &FieldSpec = &super::REGISTERS[3].fields[2];
/// `SHPF`, bit 3, read-only.
pub const SHPF: &FieldSpec = &super::REGISTERS[3].fields[3];
/// `INITS`, bit 4, read-only.
pub const INITS: &FieldSpec = &super::REGISTERS[3].fields[4];
/// `RSF`, bit 5.
pub const RSF: &FieldSpec = &super::REGISTERS[3].fields[5];
/// `INITF`, bit 6, read-only.
pub const INITF: &FieldSpec = &super::REGISTERS[3].fields[6];
/// `INIT`, bit 7.
pub const INIT: &FieldSpec = &super::REGISTERS[3].fields[7];
/// `ALRAF`, bit 8.
pub const ALRAF: &FieldSpec = &super::REGISTERS[3].fields[8];
/// `ALRBF`, bit 9.
pub const ALRBF: &FieldSpec = &super::REGISTERS[3].fields[9];
/// `WUTF`, bit 10.
pub const WUTF: &FieldSpec = &super::REGISTERS[3].fields[10];
/// `TSF`, bit 11.
pub const TSF: &FieldSpec = &super::REGISTERS[3].fields[11];
/// `TSOVF`, bit 12.
pub const TSOVF: &FieldSpec = &super::REGISTERS[3].fields[12];
/// `TAMP1F`, bit 13.
pub const TAMP1F: &FieldSpec = &super::REGISTERS[3].fields[13];
/// `TAMP2F`, bit 14.
pub const TAMP2F: &FieldSpec = &super::REGISTERS[3].fields[14];
/// `TAMP3F`, bit 15.
pub const TAMP3F: &FieldSpec = &super::REGISTERS[3].fields[15];
/// `RECALPF`, bit 16, read-only.
pub const RECALPF: &FieldSpec = &super::REGISTERS[3].fields[16];
/// `ITSF`, bit 17.
pub const ITSF: &FieldSpec = &super::REGISTERS[3].fields[17];
}
/// The fields of `RTC_PRER`.
pub mod rtc_prer {
use super::FieldSpec;
/// `PREDIV_S`, bits 0..=14.
pub const PREDIV_S: &FieldSpec = &super::REGISTERS[4].fields[0];
/// `PREDIV_A`, bits 16..=22.
pub const PREDIV_A: &FieldSpec = &super::REGISTERS[4].fields[1];
}
/// The fields of `RTC_WUTR`.
pub mod rtc_wutr {
use super::FieldSpec;
/// `WUT`, bits 0..=15.
pub const WUT: &FieldSpec = &super::REGISTERS[5].fields[0];
}
/// The fields of `RTC_ALRMAR`.
pub mod rtc_alrmar {
use super::FieldSpec;
/// `SU`, bits 0..=3.
pub const SU: &FieldSpec = &super::REGISTERS[6].fields[0];
/// `ST`, bits 4..=6.
pub const ST: &FieldSpec = &super::REGISTERS[6].fields[1];
/// `MSK1`, bit 7.
pub const MSK1: &FieldSpec = &super::REGISTERS[6].fields[2];
/// `MNU`, bits 8..=11.
pub const MNU: &FieldSpec = &super::REGISTERS[6].fields[3];
/// `MNT`, bits 12..=14.
pub const MNT: &FieldSpec = &super::REGISTERS[6].fields[4];
/// `MSK2`, bit 15.
pub const MSK2: &FieldSpec = &super::REGISTERS[6].fields[5];
/// `HU`, bits 16..=19.
pub const HU: &FieldSpec = &super::REGISTERS[6].fields[6];
/// `HT`, bits 20..=21.
pub const HT: &FieldSpec = &super::REGISTERS[6].fields[7];
/// `PM`, bit 22.
pub const PM: &FieldSpec = &super::REGISTERS[6].fields[8];
/// `MSK3`, bit 23.
pub const MSK3: &FieldSpec = &super::REGISTERS[6].fields[9];
/// `DU`, bits 24..=27.
pub const DU: &FieldSpec = &super::REGISTERS[6].fields[10];
/// `DT`, bits 28..=29.
pub const DT: &FieldSpec = &super::REGISTERS[6].fields[11];
/// `WDSEL`, bit 30.
pub const WDSEL: &FieldSpec = &super::REGISTERS[6].fields[12];
/// `MSK4`, bit 31.
pub const MSK4: &FieldSpec = &super::REGISTERS[6].fields[13];
}
/// The fields of `RTC_ALRMBR`.
pub mod rtc_alrmbr {
use super::FieldSpec;
/// `SU`, bits 0..=3.
pub const SU: &FieldSpec = &super::REGISTERS[7].fields[0];
/// `ST`, bits 4..=6.
pub const ST: &FieldSpec = &super::REGISTERS[7].fields[1];
/// `MSK1`, bit 7.
pub const MSK1: &FieldSpec = &super::REGISTERS[7].fields[2];
/// `MNU`, bits 8..=11.
pub const MNU: &FieldSpec = &super::REGISTERS[7].fields[3];
/// `MNT`, bits 12..=14.
pub const MNT: &FieldSpec = &super::REGISTERS[7].fields[4];
/// `MSK2`, bit 15.
pub const MSK2: &FieldSpec = &super::REGISTERS[7].fields[5];
/// `HU`, bits 16..=19.
pub const HU: &FieldSpec = &super::REGISTERS[7].fields[6];
/// `HT`, bits 20..=21.
pub const HT: &FieldSpec = &super::REGISTERS[7].fields[7];
/// `PM`, bit 22.
pub const PM: &FieldSpec = &super::REGISTERS[7].fields[8];
/// `MSK3`, bit 23.
pub const MSK3: &FieldSpec = &super::REGISTERS[7].fields[9];
/// `DU`, bits 24..=27.
pub const DU: &FieldSpec = &super::REGISTERS[7].fields[10];
/// `DT`, bits 28..=29.
pub const DT: &FieldSpec = &super::REGISTERS[7].fields[11];
/// `WDSEL`, bit 30.
pub const WDSEL: &FieldSpec = &super::REGISTERS[7].fields[12];
/// `MSK4`, bit 31.
pub const MSK4: &FieldSpec = &super::REGISTERS[7].fields[13];
}
/// The fields of `RTC_WPR`.
pub mod rtc_wpr {
use super::FieldSpec;
/// `KEY`, bits 0..=7.
pub const KEY: &FieldSpec = &super::REGISTERS[8].fields[0];
}
/// The fields of `RTC_SSR`.
pub mod rtc_ssr {
use super::FieldSpec;
/// `SS`, bits 0..=15.
pub const SS: &FieldSpec = &super::REGISTERS[9].fields[0];
}
/// The fields of `RTC_SHIFTR`.
pub mod rtc_shiftr {
use super::FieldSpec;
/// `SUBFS`, bits 0..=14.
pub const SUBFS: &FieldSpec = &super::REGISTERS[10].fields[0];
/// `ADD1S`, bit 31.
pub const ADD1S: &FieldSpec = &super::REGISTERS[10].fields[1];
}
/// The fields of `RTC_TSTR`.
pub mod rtc_tstr {
use super::FieldSpec;
/// `SU`, bits 0..=3.
pub const SU: &FieldSpec = &super::REGISTERS[11].fields[0];
/// `ST`, bits 4..=6.
pub const ST: &FieldSpec = &super::REGISTERS[11].fields[1];
/// `MNU`, bits 8..=11.
pub const MNU: &FieldSpec = &super::REGISTERS[11].fields[2];
/// `MNT`, bits 12..=14.
pub const MNT: &FieldSpec = &super::REGISTERS[11].fields[3];
/// `HU`, bits 16..=19.
pub const HU: &FieldSpec = &super::REGISTERS[11].fields[4];
/// `HT`, bits 20..=21.
pub const HT: &FieldSpec = &super::REGISTERS[11].fields[5];
/// `PM`, bit 22.
pub const PM: &FieldSpec = &super::REGISTERS[11].fields[6];
}
/// The fields of `RTC_TSDR`.
pub mod rtc_tsdr {
use super::FieldSpec;
/// `DU`, bits 0..=3.
pub const DU: &FieldSpec = &super::REGISTERS[12].fields[0];
/// `DT`, bits 4..=5.
pub const DT: &FieldSpec = &super::REGISTERS[12].fields[1];
/// `MU`, bits 8..=11.
pub const MU: &FieldSpec = &super::REGISTERS[12].fields[2];
/// `MT`, bit 12.
pub const MT: &FieldSpec = &super::REGISTERS[12].fields[3];
/// `WDU`, bits 13..=15.
pub const WDU: &FieldSpec = &super::REGISTERS[12].fields[4];
}
/// The fields of `RTC_TSSSR`.
pub mod rtc_tsssr {
use super::FieldSpec;
/// `SS`, bits 0..=15.
pub const SS: &FieldSpec = &super::REGISTERS[13].fields[0];
}
/// The fields of `RTC_CALR`.
pub mod rtc_calr {
use super::FieldSpec;
/// `CALM`, bits 0..=8.
pub const CALM: &FieldSpec = &super::REGISTERS[14].fields[0];
/// `CALW16`, bit 13.
pub const CALW16: &FieldSpec = &super::REGISTERS[14].fields[1];
/// `CALW8`, bit 14.
pub const CALW8: &FieldSpec = &super::REGISTERS[14].fields[2];
/// `CALP`, bit 15.
pub const CALP: &FieldSpec = &super::REGISTERS[14].fields[3];
}
/// The fields of `RTC_TAMPCR`.
pub mod rtc_tampcr {
use super::FieldSpec;
/// `TAMP1E`, bit 0.
pub const TAMP1E: &FieldSpec = &super::REGISTERS[15].fields[0];
/// `TAMP1TRG`, bit 1.
pub const TAMP1TRG: &FieldSpec = &super::REGISTERS[15].fields[1];
/// `TAMPIE`, bit 2.
pub const TAMPIE: &FieldSpec = &super::REGISTERS[15].fields[2];
/// `TAMP2E`, bit 3.
pub const TAMP2E: &FieldSpec = &super::REGISTERS[15].fields[3];
/// `TAMP2TRG`, bit 4.
pub const TAMP2TRG: &FieldSpec = &super::REGISTERS[15].fields[4];
/// `TAMP3E`, bit 5.
pub const TAMP3E: &FieldSpec = &super::REGISTERS[15].fields[5];
/// `TAMP3TRG`, bit 6.
pub const TAMP3TRG: &FieldSpec = &super::REGISTERS[15].fields[6];
/// `TAMPTS`, bit 7.
pub const TAMPTS: &FieldSpec = &super::REGISTERS[15].fields[7];
/// `TAMPFREQ`, bits 8..=10.
pub const TAMPFREQ: &FieldSpec = &super::REGISTERS[15].fields[8];
/// `TAMPFLT`, bits 11..=12.
pub const TAMPFLT: &FieldSpec = &super::REGISTERS[15].fields[9];
/// `TAMPPRCH`, bits 13..=14.
pub const TAMPPRCH: &FieldSpec = &super::REGISTERS[15].fields[10];
/// `TAMPPUDIS`, bit 15.
pub const TAMPPUDIS: &FieldSpec = &super::REGISTERS[15].fields[11];
/// `TAMP1IE`, bit 16.
pub const TAMP1IE: &FieldSpec = &super::REGISTERS[15].fields[12];
/// `TAMP1NOERASE`, bit 17.
pub const TAMP1NOERASE: &FieldSpec = &super::REGISTERS[15].fields[13];
/// `TAMP1MF`, bit 18.
pub const TAMP1MF: &FieldSpec = &super::REGISTERS[15].fields[14];
/// `TAMP2IE`, bit 19.
pub const TAMP2IE: &FieldSpec = &super::REGISTERS[15].fields[15];
/// `TAMP2NOERASE`, bit 20.
pub const TAMP2NOERASE: &FieldSpec = &super::REGISTERS[15].fields[16];
/// `TAMP2MF`, bit 21.
pub const TAMP2MF: &FieldSpec = &super::REGISTERS[15].fields[17];
/// `TAMP3IE`, bit 22.
pub const TAMP3IE: &FieldSpec = &super::REGISTERS[15].fields[18];
/// `TAMP3NOERASE`, bit 23.
pub const TAMP3NOERASE: &FieldSpec = &super::REGISTERS[15].fields[19];
/// `TAMP3MF`, bit 24.
pub const TAMP3MF: &FieldSpec = &super::REGISTERS[15].fields[20];
}
/// The fields of `RTC_ALRMASSR`.
pub mod rtc_alrmassr {
use super::FieldSpec;
/// `SS`, bits 0..=14.
pub const SS: &FieldSpec = &super::REGISTERS[16].fields[0];
/// `MASKSS`, bits 24..=27.
pub const MASKSS: &FieldSpec = &super::REGISTERS[16].fields[1];
}
/// The fields of `RTC_ALRMBSSR`.
pub mod rtc_alrmbssr {
use super::FieldSpec;
/// `SS`, bits 0..=14.
pub const SS: &FieldSpec = &super::REGISTERS[17].fields[0];
/// `MASKSS`, bits 24..=27.
pub const MASKSS: &FieldSpec = &super::REGISTERS[17].fields[1];
}
/// The fields of `RTC_OR`.
pub mod rtc_or {
use super::FieldSpec;
/// `RTC_ALARM_TYPE`, bit 0.
pub const RTC_ALARM_TYPE: &FieldSpec = &super::REGISTERS[18].fields[0];
/// `RTC_OUT_RMP`, bit 1.
pub const RTC_OUT_RMP: &FieldSpec = &super::REGISTERS[18].fields[1];
}
/// The fields of `RTC_BKP0R`.
pub mod rtc_bkp0r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[19].fields[0];
}
/// The fields of `RTC_BKP1R`.
pub mod rtc_bkp1r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[20].fields[0];
}
/// The fields of `RTC_BKP2R`.
pub mod rtc_bkp2r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[21].fields[0];
}
/// The fields of `RTC_BKP3R`.
pub mod rtc_bkp3r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[22].fields[0];
}
/// The fields of `RTC_BKP4R`.
pub mod rtc_bkp4r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[23].fields[0];
}
/// The fields of `RTC_BKP5R`.
pub mod rtc_bkp5r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[24].fields[0];
}
/// The fields of `RTC_BKP6R`.
pub mod rtc_bkp6r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[25].fields[0];
}
/// The fields of `RTC_BKP7R`.
pub mod rtc_bkp7r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[26].fields[0];
}
/// The fields of `RTC_BKP8R`.
pub mod rtc_bkp8r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[27].fields[0];
}
/// The fields of `RTC_BKP9R`.
pub mod rtc_bkp9r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[28].fields[0];
}
/// The fields of `RTC_BKP10R`.
pub mod rtc_bkp10r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[29].fields[0];
}
/// The fields of `RTC_BKP11R`.
pub mod rtc_bkp11r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[30].fields[0];
}
/// The fields of `RTC_BKP12R`.
pub mod rtc_bkp12r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[31].fields[0];
}
/// The fields of `RTC_BKP13R`.
pub mod rtc_bkp13r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[32].fields[0];
}
/// The fields of `RTC_BKP14R`.
pub mod rtc_bkp14r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[33].fields[0];
}
/// The fields of `RTC_BKP15R`.
pub mod rtc_bkp15r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[34].fields[0];
}
/// The fields of `RTC_BKP16R`.
pub mod rtc_bkp16r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[35].fields[0];
}
/// The fields of `RTC_BKP17R`.
pub mod rtc_bkp17r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[36].fields[0];
}
/// The fields of `RTC_BKP18R`.
pub mod rtc_bkp18r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[37].fields[0];
}
/// The fields of `RTC_BKP19R`.
pub mod rtc_bkp19r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[38].fields[0];
}
/// The fields of `RTC_BKP20R`.
pub mod rtc_bkp20r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[39].fields[0];
}
/// The fields of `RTC_BKP21R`.
pub mod rtc_bkp21r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[40].fields[0];
}
/// The fields of `RTC_BKP22R`.
pub mod rtc_bkp22r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[41].fields[0];
}
/// The fields of `RTC_BKP23R`.
pub mod rtc_bkp23r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[42].fields[0];
}
/// The fields of `RTC_BKP24R`.
pub mod rtc_bkp24r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[43].fields[0];
}
/// The fields of `RTC_BKP25R`.
pub mod rtc_bkp25r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[44].fields[0];
}
/// The fields of `RTC_BKP26R`.
pub mod rtc_bkp26r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[45].fields[0];
}
/// The fields of `RTC_BKP27R`.
pub mod rtc_bkp27r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[46].fields[0];
}
/// The fields of `RTC_BKP28R`.
pub mod rtc_bkp28r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[47].fields[0];
}
/// The fields of `RTC_BKP29R`.
pub mod rtc_bkp29r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[48].fields[0];
}
/// The fields of `RTC_BKP30R`.
pub mod rtc_bkp30r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[49].fields[0];
}
/// The fields of `RTC_BKP31R`.
pub mod rtc_bkp31r {
use super::FieldSpec;
/// `BKP`, bits 0..=31.
pub const BKP: &FieldSpec = &super::REGISTERS[50].fields[0];
}
/// The register table.
pub static REGISTERS: [RegisterSpec; 51] = [
RegisterSpec { name: "RTC_TR", offset: 0x0, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "SU", bit: 0, width: 4, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "ST", bit: 4, width: 3, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MNU", bit: 8, width: 4, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MNT", bit: 12, width: 3, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "HU", bit: 16, width: 4, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "HT", bit: 20, width: 2, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "PM", bit: 22, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_DR", offset: 0x4, width: Width::W32, reset: 0x0000_2101, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "DU", bit: 0, width: 4, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "DT", bit: 4, width: 2, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MU", bit: 8, width: 4, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MT", bit: 12, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "WDU", bit: 13, width: 3, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "YU", bit: 16, width: 4, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "YT", bit: 20, width: 4, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_CR", offset: 0x8, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "WUCKSEL", bit: 0, width: 3, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TSEDGE", bit: 3, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "REFCKON", bit: 4, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "BYPSHAD", bit: 5, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "FMT", bit: 6, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "ALRAE", bit: 8, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "ALRBE", bit: 9, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "WUTE", bit: 10, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TSE", bit: 11, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "ALRAIE", bit: 12, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "ALRBIE", bit: 13, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "WUTIE", bit: 14, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TSIE", bit: 15, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "ADD1H", bit: 16, width: 1, access: Access::WriteOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "SUB1H", bit: 17, width: 1, access: Access::WriteOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "BKP", bit: 18, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "COSEL", bit: 19, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "POL", bit: 20, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "OSEL", bit: 21, width: 2, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "COE", bit: 23, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "ITSE", bit: 24, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_ISR", offset: 0xC, width: Width::W32, reset: 0x0000_0007, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "ALRAWF", bit: 0, width: 1, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "ALRBWF", bit: 1, width: 1, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "WUTWF", bit: 2, width: 1, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "SHPF", bit: 3, width: 1, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "INITS", bit: 4, width: 1, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "RSF", bit: 5, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "INITF", bit: 6, width: 1, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "INIT", bit: 7, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "ALRAF", bit: 8, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "ALRBF", bit: 9, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "WUTF", bit: 10, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TSF", bit: 11, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TSOVF", bit: 12, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMP1F", bit: 13, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMP2F", bit: 14, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMP3F", bit: 15, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "RECALPF", bit: 16, width: 1, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "ITSF", bit: 17, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_PRER", offset: 0x10, width: Width::W32, reset: 0x007F_00FF, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "PREDIV_S", bit: 0, width: 15, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "PREDIV_A", bit: 16, width: 7, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_WUTR", offset: 0x14, width: Width::W32, reset: 0x0000_FFFF, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "WUT", bit: 0, width: 16, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_ALRMAR", offset: 0x1C, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "SU", bit: 0, width: 4, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "ST", bit: 4, width: 3, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MSK1", bit: 7, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MNU", bit: 8, width: 4, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MNT", bit: 12, width: 3, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MSK2", bit: 15, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "HU", bit: 16, width: 4, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "HT", bit: 20, width: 2, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "PM", bit: 22, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MSK3", bit: 23, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "DU", bit: 24, width: 4, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "DT", bit: 28, width: 2, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "WDSEL", bit: 30, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MSK4", bit: 31, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_ALRMBR", offset: 0x20, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "SU", bit: 0, width: 4, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "ST", bit: 4, width: 3, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MSK1", bit: 7, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MNU", bit: 8, width: 4, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MNT", bit: 12, width: 3, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MSK2", bit: 15, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "HU", bit: 16, width: 4, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "HT", bit: 20, width: 2, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "PM", bit: 22, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MSK3", bit: 23, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "DU", bit: 24, width: 4, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "DT", bit: 28, width: 2, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "WDSEL", bit: 30, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MSK4", bit: 31, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_WPR", offset: 0x24, width: Width::W32, reset: 0x0000_0000, access: Access::WriteOnly, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "KEY", bit: 0, width: 8, access: Access::WriteOnly, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_SSR", offset: 0x28, width: Width::W32, reset: 0x0000_0000, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "SS", bit: 0, width: 16, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_SHIFTR", offset: 0x2C, width: Width::W32, reset: 0x0000_0000, access: Access::WriteOnly, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "SUBFS", bit: 0, width: 15, access: Access::WriteOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "ADD1S", bit: 31, width: 1, access: Access::WriteOnly, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_TSTR", offset: 0x30, width: Width::W32, reset: 0x0000_0000, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "SU", bit: 0, width: 4, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "ST", bit: 4, width: 3, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MNU", bit: 8, width: 4, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MNT", bit: 12, width: 3, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "HU", bit: 16, width: 4, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "HT", bit: 20, width: 2, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "PM", bit: 22, width: 1, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_TSDR", offset: 0x34, width: Width::W32, reset: 0x0000_0000, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "DU", bit: 0, width: 4, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "DT", bit: 4, width: 2, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MU", bit: 8, width: 4, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MT", bit: 12, width: 1, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "WDU", bit: 13, width: 3, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_TSSSR", offset: 0x38, width: Width::W32, reset: 0x0000_0000, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "SS", bit: 0, width: 16, access: Access::ReadOnly, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_CALR", offset: 0x3C, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "CALM", bit: 0, width: 9, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "CALW16", bit: 13, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "CALW8", bit: 14, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "CALP", bit: 15, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_TAMPCR", offset: 0x40, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "TAMP1E", bit: 0, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMP1TRG", bit: 1, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMPIE", bit: 2, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMP2E", bit: 3, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMP2TRG", bit: 4, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMP3E", bit: 5, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMP3TRG", bit: 6, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMPTS", bit: 7, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMPFREQ", bit: 8, width: 3, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMPFLT", bit: 11, width: 2, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMPPRCH", bit: 13, width: 2, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMPPUDIS", bit: 15, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMP1IE", bit: 16, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMP1NOERASE", bit: 17, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMP1MF", bit: 18, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMP2IE", bit: 19, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMP2NOERASE", bit: 20, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMP2MF", bit: 21, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMP3IE", bit: 22, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMP3NOERASE", bit: 23, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "TAMP3MF", bit: 24, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_ALRMASSR", offset: 0x44, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "SS", bit: 0, width: 15, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MASKSS", bit: 24, width: 4, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_ALRMBSSR", offset: 0x48, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "SS", bit: 0, width: 15, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "MASKSS", bit: 24, width: 4, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_OR", offset: 0x4C, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "RTC_ALARM_TYPE", bit: 0, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
FieldSpec { name: "RTC_OUT_RMP", bit: 1, width: 1, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP0R", offset: 0x50, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP1R", offset: 0x54, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP2R", offset: 0x58, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP3R", offset: 0x5C, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP4R", offset: 0x60, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP5R", offset: 0x64, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP6R", offset: 0x68, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP7R", offset: 0x6C, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP8R", offset: 0x70, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP9R", offset: 0x74, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP10R", offset: 0x78, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP11R", offset: 0x7C, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP12R", offset: 0x80, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP13R", offset: 0x84, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP14R", offset: 0x88, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP15R", offset: 0x8C, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP16R", offset: 0x90, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP17R", offset: 0x94, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP18R", offset: 0x98, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP19R", offset: 0x9C, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP20R", offset: 0xA0, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP21R", offset: 0xA4, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP22R", offset: 0xA8, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP23R", offset: 0xAC, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP24R", offset: 0xB0, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP25R", offset: 0xB4, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP26R", offset: 0xB8, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP27R", offset: 0xBC, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP28R", offset: 0xC0, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP29R", offset: 0xC4, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP30R", offset: 0xC8, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
RegisterSpec { name: "RTC_BKP31R", offset: 0xCC, width: Width::W32, reset: 0x0000_0000, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None, fields: &[
FieldSpec { name: "BKP", bit: 0, width: 32, access: Access::ReadWrite, read: ReadAction::None, write: WriteModify::None },
] },
];