#[doc = r"Register block"]
#[repr(C)]
pub struct RegisterBlock {
    #[doc = "0x00..0x30 - Channel group tasks"]
    pub tasks_chg: [TASKS_CHG; 6],
    _reserved1: [u8; 0x04d0],
    #[doc = "0x500 - Channel enable register"]
    pub chen: crate::Reg<chen::CHEN_SPEC>,
    #[doc = "0x504 - Channel enable set register"]
    pub chenset: crate::Reg<chenset::CHENSET_SPEC>,
    #[doc = "0x508 - Channel enable clear register"]
    pub chenclr: crate::Reg<chenclr::CHENCLR_SPEC>,
    _reserved4: [u8; 0x04],
    #[doc = "0x510..0x5b0 - PPI Channel"]
    pub ch: [CH; 20],
    _reserved5: [u8; 0x0250],
    #[doc = "0x800..0x818 - Description collection\\[n\\]: Channel group n"]
    pub chg: [crate::Reg<chg::CHG_SPEC>; 6],
    _reserved6: [u8; 0xf8],
    #[doc = "0x910..0x990 - Fork"]
    pub fork: [FORK; 32],
}
#[doc = r"Register block"]
#[repr(C)]
pub struct TASKS_CHG {
    #[doc = "0x00 - Description cluster\\[n\\]: Enable channel group n"]
    pub en: crate::Reg<self::tasks_chg::en::EN_SPEC>,
    #[doc = "0x04 - Description cluster\\[n\\]: Disable channel group n"]
    pub dis: crate::Reg<self::tasks_chg::dis::DIS_SPEC>,
}
#[doc = r"Register block"]
#[doc = "Channel group tasks"]
pub mod tasks_chg;
#[doc = r"Register block"]
#[repr(C)]
pub struct CH {
    #[doc = "0x00 - Description cluster\\[n\\]: Channel n event end-point"]
    pub eep: crate::Reg<self::ch::eep::EEP_SPEC>,
    #[doc = "0x04 - Description cluster\\[n\\]: Channel n task end-point"]
    pub tep: crate::Reg<self::ch::tep::TEP_SPEC>,
}
#[doc = r"Register block"]
#[doc = "PPI Channel"]
pub mod ch;
#[doc = r"Register block"]
#[repr(C)]
pub struct FORK {
    #[doc = "0x00 - Description cluster\\[n\\]: Channel n task end-point"]
    pub tep: crate::Reg<self::fork::tep::TEP_SPEC>,
}
#[doc = r"Register block"]
#[doc = "Fork"]
pub mod fork;
#[doc = "CHEN register accessor: an alias for `Reg<CHEN_SPEC>`"]
pub type CHEN = crate::Reg<chen::CHEN_SPEC>;
#[doc = "Channel enable register"]
pub mod chen;
#[doc = "CHENSET register accessor: an alias for `Reg<CHENSET_SPEC>`"]
pub type CHENSET = crate::Reg<chenset::CHENSET_SPEC>;
#[doc = "Channel enable set register"]
pub mod chenset;
#[doc = "CHENCLR register accessor: an alias for `Reg<CHENCLR_SPEC>`"]
pub type CHENCLR = crate::Reg<chenclr::CHENCLR_SPEC>;
#[doc = "Channel enable clear register"]
pub mod chenclr;
#[doc = "CHG register accessor: an alias for `Reg<CHG_SPEC>`"]
pub type CHG = crate::Reg<chg::CHG_SPEC>;
#[doc = "Description collection\\[n\\]: Channel group n"]
pub mod chg;
