1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    #[doc = "0x00 - Start the random number generator."]
5    pub tasks_start: TASKS_START,
6    #[doc = "0x04 - Stop the random number generator."]
7    pub tasks_stop: TASKS_STOP,
8    _reserved2: [u8; 0xf8],
9    #[doc = "0x100 - New random number generated and written to VALUE register."]
10    pub events_valrdy: EVENTS_VALRDY,
11    _reserved3: [u8; 0xfc],
12    #[doc = "0x200 - Shortcuts for the RNG."]
13    pub shorts: SHORTS,
14    _reserved4: [u8; 0x0100],
15    #[doc = "0x304 - Interrupt enable set register"]
16    pub intenset: INTENSET,
17    #[doc = "0x308 - Interrupt enable clear register"]
18    pub intenclr: INTENCLR,
19    _reserved6: [u8; 0x01f8],
20    #[doc = "0x504 - Configuration register."]
21    pub config: CONFIG,
22    #[doc = "0x508 - RNG random number."]
23    pub value: VALUE,
24    _reserved8: [u8; 0x0af0],
25    #[doc = "0xffc - Peripheral power control."]
26    pub power: POWER,
27}
28#[doc = "TASKS_START (w) register accessor: an alias for `Reg<TASKS_START_SPEC>`"]
29pub type TASKS_START = crate::Reg<tasks_start::TASKS_START_SPEC>;
30#[doc = "Start the random number generator."]
31pub mod tasks_start;
32#[doc = "TASKS_STOP (w) register accessor: an alias for `Reg<TASKS_STOP_SPEC>`"]
33pub type TASKS_STOP = crate::Reg<tasks_stop::TASKS_STOP_SPEC>;
34#[doc = "Stop the random number generator."]
35pub mod tasks_stop;
36#[doc = "EVENTS_VALRDY (rw) register accessor: an alias for `Reg<EVENTS_VALRDY_SPEC>`"]
37pub type EVENTS_VALRDY = crate::Reg<events_valrdy::EVENTS_VALRDY_SPEC>;
38#[doc = "New random number generated and written to VALUE register."]
39pub mod events_valrdy;
40#[doc = "SHORTS (rw) register accessor: an alias for `Reg<SHORTS_SPEC>`"]
41pub type SHORTS = crate::Reg<shorts::SHORTS_SPEC>;
42#[doc = "Shortcuts for the RNG."]
43pub mod shorts;
44#[doc = "INTENSET (rw) register accessor: an alias for `Reg<INTENSET_SPEC>`"]
45pub type INTENSET = crate::Reg<intenset::INTENSET_SPEC>;
46#[doc = "Interrupt enable set register"]
47pub mod intenset;
48#[doc = "INTENCLR (rw) register accessor: an alias for `Reg<INTENCLR_SPEC>`"]
49pub type INTENCLR = crate::Reg<intenclr::INTENCLR_SPEC>;
50#[doc = "Interrupt enable clear register"]
51pub mod intenclr;
52#[doc = "CONFIG (rw) register accessor: an alias for `Reg<CONFIG_SPEC>`"]
53pub type CONFIG = crate::Reg<config::CONFIG_SPEC>;
54#[doc = "Configuration register."]
55pub mod config;
56#[doc = "VALUE (r) register accessor: an alias for `Reg<VALUE_SPEC>`"]
57pub type VALUE = crate::Reg<value::VALUE_SPEC>;
58#[doc = "RNG random number."]
59pub mod value;
60#[doc = "POWER (rw) register accessor: an alias for `Reg<POWER_SPEC>`"]
61pub type POWER = crate::Reg<power::POWER_SPEC>;
62#[doc = "Peripheral power control."]
63pub mod power;