#[doc = r"Register block"]
#[repr(C)]
pub struct RegisterBlock {
#[doc = "0x00 - Interrupt Enable Clear"]
pub intenclr: INTENCLR,
#[doc = "0x04 - Interrupt Enable Set"]
pub intenset: INTENSET,
#[doc = "0x08 - Interrupt Flag Status and Clear"]
pub intflag: INTFLAG,
#[doc = "0x0c - Power and Clocks Status"]
pub status: STATUS,
#[doc = "0x10 - RTC Clock Selection"]
pub rtcctrl: RTCCTRL,
_reserved5: [u8; 3usize],
#[doc = "0x14 - 32kHz External Crystal Oscillator (XOSC32K) Control"]
pub xosc32k: XOSC32K,
#[doc = "0x16 - Clock Failure Detector Control"]
pub cfdctrl: CFDCTRL,
#[doc = "0x17 - Event Control"]
pub evctrl: EVCTRL,
_reserved8: [u8; 4usize],
#[doc = "0x1c - 32kHz Ultra Low Power Internal Oscillator (OSCULP32K) Control"]
pub osculp32k: OSCULP32K,
}
#[doc = "Interrupt Enable Clear\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [intenclr](intenclr) module"]
pub type INTENCLR = crate::Reg<u32, _INTENCLR>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _INTENCLR;
#[doc = "`read()` method returns [intenclr::R](intenclr::R) reader structure"]
impl crate::Readable for INTENCLR {}
#[doc = "`write(|w| ..)` method takes [intenclr::W](intenclr::W) writer structure"]
impl crate::Writable for INTENCLR {}
#[doc = "Interrupt Enable Clear"]
pub mod intenclr;
#[doc = "Interrupt Enable Set\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [intenset](intenset) module"]
pub type INTENSET = crate::Reg<u32, _INTENSET>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _INTENSET;
#[doc = "`read()` method returns [intenset::R](intenset::R) reader structure"]
impl crate::Readable for INTENSET {}
#[doc = "`write(|w| ..)` method takes [intenset::W](intenset::W) writer structure"]
impl crate::Writable for INTENSET {}
#[doc = "Interrupt Enable Set"]
pub mod intenset;
#[doc = "Interrupt Flag Status and Clear\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [intflag](intflag) module"]
pub type INTFLAG = crate::Reg<u32, _INTFLAG>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _INTFLAG;
#[doc = "`read()` method returns [intflag::R](intflag::R) reader structure"]
impl crate::Readable for INTFLAG {}
#[doc = "`write(|w| ..)` method takes [intflag::W](intflag::W) writer structure"]
impl crate::Writable for INTFLAG {}
#[doc = "Interrupt Flag Status and Clear"]
pub mod intflag;
#[doc = "Power and Clocks Status\n\nThis register you can [`read`](crate::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [status](status) module"]
pub type STATUS = crate::Reg<u32, _STATUS>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _STATUS;
#[doc = "`read()` method returns [status::R](status::R) reader structure"]
impl crate::Readable for STATUS {}
#[doc = "Power and Clocks Status"]
pub mod status;
#[doc = "RTC Clock Selection\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rtcctrl](rtcctrl) module"]
pub type RTCCTRL = crate::Reg<u8, _RTCCTRL>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _RTCCTRL;
#[doc = "`read()` method returns [rtcctrl::R](rtcctrl::R) reader structure"]
impl crate::Readable for RTCCTRL {}
#[doc = "`write(|w| ..)` method takes [rtcctrl::W](rtcctrl::W) writer structure"]
impl crate::Writable for RTCCTRL {}
#[doc = "RTC Clock Selection"]
pub mod rtcctrl;
#[doc = "32kHz External Crystal Oscillator (XOSC32K) Control\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [xosc32k](xosc32k) module"]
pub type XOSC32K = crate::Reg<u16, _XOSC32K>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _XOSC32K;
#[doc = "`read()` method returns [xosc32k::R](xosc32k::R) reader structure"]
impl crate::Readable for XOSC32K {}
#[doc = "`write(|w| ..)` method takes [xosc32k::W](xosc32k::W) writer structure"]
impl crate::Writable for XOSC32K {}
#[doc = "32kHz External Crystal Oscillator (XOSC32K) Control"]
pub mod xosc32k;
#[doc = "Clock Failure Detector Control\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [cfdctrl](cfdctrl) module"]
pub type CFDCTRL = crate::Reg<u8, _CFDCTRL>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _CFDCTRL;
#[doc = "`read()` method returns [cfdctrl::R](cfdctrl::R) reader structure"]
impl crate::Readable for CFDCTRL {}
#[doc = "`write(|w| ..)` method takes [cfdctrl::W](cfdctrl::W) writer structure"]
impl crate::Writable for CFDCTRL {}
#[doc = "Clock Failure Detector Control"]
pub mod cfdctrl;
#[doc = "Event Control\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [evctrl](evctrl) module"]
pub type EVCTRL = crate::Reg<u8, _EVCTRL>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _EVCTRL;
#[doc = "`read()` method returns [evctrl::R](evctrl::R) reader structure"]
impl crate::Readable for EVCTRL {}
#[doc = "`write(|w| ..)` method takes [evctrl::W](evctrl::W) writer structure"]
impl crate::Writable for EVCTRL {}
#[doc = "Event Control"]
pub mod evctrl;
#[doc = "32kHz Ultra Low Power Internal Oscillator (OSCULP32K) Control\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [osculp32k](osculp32k) module"]
pub type OSCULP32K = crate::Reg<u32, _OSCULP32K>;
#[allow(missing_docs)]
#[doc(hidden)]
pub struct _OSCULP32K;
#[doc = "`read()` method returns [osculp32k::R](osculp32k::R) reader structure"]
impl crate::Readable for OSCULP32K {}
#[doc = "`write(|w| ..)` method takes [osculp32k::W](osculp32k::W) writer structure"]
impl crate::Writable for OSCULP32K {}
#[doc = "32kHz Ultra Low Power Internal Oscillator (OSCULP32K) Control"]
pub mod osculp32k;