esp32p4 0.2.0

Peripheral access crate for the ESP32-P4
Documentation
#[repr(C)]
#[cfg_attr(feature = "impl-register-debug", derive(Debug))]
#[doc = "Register block"]
pub struct RegisterBlock {
    clk_en: CLK_EN,
    core_clk_sel: CORE_CLK_SEL,
    reset_en: RESET_EN,
    cpu: CPU,
    _reserved4: [u8; 0x18],
    mem_ctrl: MEM_CTRL,
    adc_ctrl: ADC_CTRL,
    lp_i2s_rxclk_div_num: LP_I2S_RXCLK_DIV_NUM,
    lp_i2s_rxclk_div_xyz: LP_I2S_RXCLK_DIV_XYZ,
    lp_i2s_txclk_div_num: LP_I2S_TXCLK_DIV_NUM,
    lp_i2s_txclk_div_xyz: LP_I2S_TXCLK_DIV_XYZ,
    _reserved10: [u8; 0x03bc],
    date: DATE,
}
impl RegisterBlock {
    #[doc = "0x00 - need_des"]
    #[inline(always)]
    pub const fn clk_en(&self) -> &CLK_EN {
        &self.clk_en
    }
    #[doc = "0x04 - need_des"]
    #[inline(always)]
    pub const fn core_clk_sel(&self) -> &CORE_CLK_SEL {
        &self.core_clk_sel
    }
    #[doc = "0x08 - need_des"]
    #[inline(always)]
    pub const fn reset_en(&self) -> &RESET_EN {
        &self.reset_en
    }
    #[doc = "0x0c - need_des"]
    #[inline(always)]
    pub const fn cpu(&self) -> &CPU {
        &self.cpu
    }
    #[doc = "0x28 - need_des"]
    #[inline(always)]
    pub const fn mem_ctrl(&self) -> &MEM_CTRL {
        &self.mem_ctrl
    }
    #[doc = "0x2c - need_des"]
    #[inline(always)]
    pub const fn adc_ctrl(&self) -> &ADC_CTRL {
        &self.adc_ctrl
    }
    #[doc = "0x30 - need_des"]
    #[inline(always)]
    pub const fn lp_i2s_rxclk_div_num(&self) -> &LP_I2S_RXCLK_DIV_NUM {
        &self.lp_i2s_rxclk_div_num
    }
    #[doc = "0x34 - need_des"]
    #[inline(always)]
    pub const fn lp_i2s_rxclk_div_xyz(&self) -> &LP_I2S_RXCLK_DIV_XYZ {
        &self.lp_i2s_rxclk_div_xyz
    }
    #[doc = "0x38 - need_des"]
    #[inline(always)]
    pub const fn lp_i2s_txclk_div_num(&self) -> &LP_I2S_TXCLK_DIV_NUM {
        &self.lp_i2s_txclk_div_num
    }
    #[doc = "0x3c - need_des"]
    #[inline(always)]
    pub const fn lp_i2s_txclk_div_xyz(&self) -> &LP_I2S_TXCLK_DIV_XYZ {
        &self.lp_i2s_txclk_div_xyz
    }
    #[doc = "0x3fc - need_des"]
    #[inline(always)]
    pub const fn date(&self) -> &DATE {
        &self.date
    }
}
#[doc = "CLK_EN (rw) register accessor: need_des\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`clk_en::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`clk_en::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@clk_en`] module"]
pub type CLK_EN = crate::Reg<clk_en::CLK_EN_SPEC>;
#[doc = "need_des"]
pub mod clk_en;
#[doc = "CORE_CLK_SEL (rw) register accessor: need_des\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`core_clk_sel::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`core_clk_sel::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@core_clk_sel`] module"]
pub type CORE_CLK_SEL = crate::Reg<core_clk_sel::CORE_CLK_SEL_SPEC>;
#[doc = "need_des"]
pub mod core_clk_sel;
#[doc = "RESET_EN (rw) register accessor: need_des\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`reset_en::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`reset_en::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@reset_en`] module"]
pub type RESET_EN = crate::Reg<reset_en::RESET_EN_SPEC>;
#[doc = "need_des"]
pub mod reset_en;
#[doc = "CPU (rw) register accessor: need_des\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`cpu::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`cpu::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cpu`] module"]
pub type CPU = crate::Reg<cpu::CPU_SPEC>;
#[doc = "need_des"]
pub mod cpu;
#[doc = "MEM_CTRL (rw) register accessor: need_des\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`mem_ctrl::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`mem_ctrl::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@mem_ctrl`] module"]
pub type MEM_CTRL = crate::Reg<mem_ctrl::MEM_CTRL_SPEC>;
#[doc = "need_des"]
pub mod mem_ctrl;
#[doc = "ADC_CTRL (rw) register accessor: need_des\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`adc_ctrl::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`adc_ctrl::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@adc_ctrl`] module"]
pub type ADC_CTRL = crate::Reg<adc_ctrl::ADC_CTRL_SPEC>;
#[doc = "need_des"]
pub mod adc_ctrl;
#[doc = "LP_I2S_RXCLK_DIV_NUM (rw) register accessor: need_des\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lp_i2s_rxclk_div_num::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`lp_i2s_rxclk_div_num::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@lp_i2s_rxclk_div_num`] module"]
pub type LP_I2S_RXCLK_DIV_NUM = crate::Reg<lp_i2s_rxclk_div_num::LP_I2S_RXCLK_DIV_NUM_SPEC>;
#[doc = "need_des"]
pub mod lp_i2s_rxclk_div_num;
#[doc = "LP_I2S_RXCLK_DIV_XYZ (rw) register accessor: need_des\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lp_i2s_rxclk_div_xyz::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`lp_i2s_rxclk_div_xyz::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@lp_i2s_rxclk_div_xyz`] module"]
pub type LP_I2S_RXCLK_DIV_XYZ = crate::Reg<lp_i2s_rxclk_div_xyz::LP_I2S_RXCLK_DIV_XYZ_SPEC>;
#[doc = "need_des"]
pub mod lp_i2s_rxclk_div_xyz;
#[doc = "LP_I2S_TXCLK_DIV_NUM (rw) register accessor: need_des\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lp_i2s_txclk_div_num::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`lp_i2s_txclk_div_num::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@lp_i2s_txclk_div_num`] module"]
pub type LP_I2S_TXCLK_DIV_NUM = crate::Reg<lp_i2s_txclk_div_num::LP_I2S_TXCLK_DIV_NUM_SPEC>;
#[doc = "need_des"]
pub mod lp_i2s_txclk_div_num;
#[doc = "LP_I2S_TXCLK_DIV_XYZ (rw) register accessor: need_des\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lp_i2s_txclk_div_xyz::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`lp_i2s_txclk_div_xyz::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@lp_i2s_txclk_div_xyz`] module"]
pub type LP_I2S_TXCLK_DIV_XYZ = crate::Reg<lp_i2s_txclk_div_xyz::LP_I2S_TXCLK_DIV_XYZ_SPEC>;
#[doc = "need_des"]
pub mod lp_i2s_txclk_div_xyz;
#[doc = "DATE (rw) register accessor: need_des\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`date::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`date::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@date`] module"]
pub type DATE = crate::Reg<date::DATE_SPEC>;
#[doc = "need_des"]
pub mod date;