corstone300_pac/
ethernet.rs1#[doc = r"Register block"]
6#[repr(C)]
7pub struct RegisterBlock {
8 #[doc = "0x00 - RX Data FIFO Port"]
9 pub rx_data_fifo: RX_DATA_FIFO,
10 _reserved1: [u8; 0x1c],
11 #[doc = "0x20 - TX Data FIFO Port"]
12 pub tx_data_fifo: TX_DATA_FIFO,
13 _reserved2: [u8; 0x1c],
14 #[doc = "0x40 - RX Status FIFO Port"]
15 pub rx_status_fifo: RX_STATUS_FIFO,
16 #[doc = "0x44 - RX Status FIFO PEEK Port"]
17 pub rx_status_fifo_peek: RX_STATUS_FIFO_PEEK,
18 #[doc = "0x48 - TX Status FIFO Port"]
19 pub tx_status_fifo: TX_STATUS_FIFO,
20 #[doc = "0x4c - TX Status FIFO PEEK Port"]
21 pub tx_status_fifo_peek: TX_STATUS_FIFO_PEEK,
22 #[doc = "0x50 - ID and Revision"]
23 pub id_rev: ID_REV,
24 #[doc = "0x54 - Main Interrupt Configuration"]
25 pub irq_cfg: IRQ_CFG,
26 #[doc = "0x58 - Interrupt Status Register"]
27 pub int_sts: INT_STS,
28 #[doc = "0x5c - Interrupt Enable Register"]
29 pub int_en: INT_EN,
30 _reserved10: [u8; 0x04],
31 #[doc = "0x64 - Byte Order Test Register"]
32 pub test_byte: TEST_BYTE,
33 #[doc = "0x68 - FIFO Level Interrupt"]
34 pub fifo_int: FIFO_INT,
35 #[doc = "0x6c - Receive Configuration"]
36 pub rx_cfg: RX_CFG,
37 #[doc = "0x70 - Transmit Configuration"]
38 pub tx_cfg: TX_CFG,
39 #[doc = "0x74 - Hardware Configuration"]
40 pub hw_cfg: HW_CFG,
41 #[doc = "0x78 - RX Datapath Control"]
42 pub rx_dp_ctl: RX_DP_CTL,
43 #[doc = "0x7c - Receive FIFO Configuration"]
44 pub rx_fifo_inf: RX_FIFO_INF,
45 #[doc = "0x80 - Transmit FIFO Configuration"]
46 pub tx_fifo_inf: TX_FIFO_INF,
47 #[doc = "0x84 - Power Management Control"]
48 pub pmt_ctrl: PMT_CTRL,
49 #[doc = "0x88 - General Purpose IO Configuration"]
50 pub gpio_cfg: GPIO_CFG,
51 #[doc = "0x8c - General Purpose Timer Configuration"]
52 pub gpt_cfg: GPT_CFG,
53 #[doc = "0x90 - General Purpose Timer Count"]
54 pub gpt_cnt: GPT_CNT,
55 _reserved22: [u8; 0x04],
56 #[doc = "0x98 - WORD SWAP Register"]
57 pub word_swap: WORD_SWAP,
58 #[doc = "0x9c - Free Run Counter"]
59 pub free_run: FREE_RUN,
60 #[doc = "0xa0 - RX Dropped Frames Counter"]
61 pub rx_drop: RX_DROP,
62 #[doc = "0xa4 - MAC CSR Synchronizer Command"]
63 pub mac_csr_cmd: MAC_CSR_CMD,
64 #[doc = "0xa8 - MAC CSR Synchronizer Data"]
65 pub mac_csr_data: MAC_CSR_DATA,
66 #[doc = "0xac - Automatic Flow Control Configuration"]
67 pub afc_cfg: AFC_CFG,
68 #[doc = "0xb0 - EEPROM Command"]
69 pub e2p_cmd: E2P_CMD,
70 #[doc = "0xb4 - EEPROM Data"]
71 pub e2p_data: E2P_DATA,
72}
73#[doc = "RxDataFifo (r) register accessor: an alias for `Reg<RX_DATA_FIFO_SPEC>`"]
74pub type RX_DATA_FIFO = crate::Reg<rx_data_fifo::RX_DATA_FIFO_SPEC>;
75#[doc = "RX Data FIFO Port"]
76pub mod rx_data_fifo;
77#[doc = "TxDataFifo (w) register accessor: an alias for `Reg<TX_DATA_FIFO_SPEC>`"]
78pub type TX_DATA_FIFO = crate::Reg<tx_data_fifo::TX_DATA_FIFO_SPEC>;
79#[doc = "TX Data FIFO Port"]
80pub mod tx_data_fifo;
81#[doc = "RxStatusFifo (r) register accessor: an alias for `Reg<RX_STATUS_FIFO_SPEC>`"]
82pub type RX_STATUS_FIFO = crate::Reg<rx_status_fifo::RX_STATUS_FIFO_SPEC>;
83#[doc = "RX Status FIFO Port"]
84pub mod rx_status_fifo;
85#[doc = "RxStatusFifoPeek (r) register accessor: an alias for `Reg<RX_STATUS_FIFO_PEEK_SPEC>`"]
86pub type RX_STATUS_FIFO_PEEK = crate::Reg<rx_status_fifo_peek::RX_STATUS_FIFO_PEEK_SPEC>;
87#[doc = "RX Status FIFO PEEK Port"]
88pub mod rx_status_fifo_peek;
89#[doc = "TxStatusFifo (r) register accessor: an alias for `Reg<TX_STATUS_FIFO_SPEC>`"]
90pub type TX_STATUS_FIFO = crate::Reg<tx_status_fifo::TX_STATUS_FIFO_SPEC>;
91#[doc = "TX Status FIFO Port"]
92pub mod tx_status_fifo;
93#[doc = "TxStatusFifoPeek (r) register accessor: an alias for `Reg<TX_STATUS_FIFO_PEEK_SPEC>`"]
94pub type TX_STATUS_FIFO_PEEK = crate::Reg<tx_status_fifo_peek::TX_STATUS_FIFO_PEEK_SPEC>;
95#[doc = "TX Status FIFO PEEK Port"]
96pub mod tx_status_fifo_peek;
97#[doc = "ID_REV (r) register accessor: an alias for `Reg<ID_REV_SPEC>`"]
98pub type ID_REV = crate::Reg<id_rev::ID_REV_SPEC>;
99#[doc = "ID and Revision"]
100pub mod id_rev;
101#[doc = "IRQ_CFG (rw) register accessor: an alias for `Reg<IRQ_CFG_SPEC>`"]
102pub type IRQ_CFG = crate::Reg<irq_cfg::IRQ_CFG_SPEC>;
103#[doc = "Main Interrupt Configuration"]
104pub mod irq_cfg;
105#[doc = "INT_STS (rw) register accessor: an alias for `Reg<INT_STS_SPEC>`"]
106pub type INT_STS = crate::Reg<int_sts::INT_STS_SPEC>;
107#[doc = "Interrupt Status Register"]
108pub mod int_sts;
109#[doc = "INT_EN (rw) register accessor: an alias for `Reg<INT_EN_SPEC>`"]
110pub type INT_EN = crate::Reg<int_en::INT_EN_SPEC>;
111#[doc = "Interrupt Enable Register"]
112pub mod int_en;
113#[doc = "TEST_BYTE (r) register accessor: an alias for `Reg<TEST_BYTE_SPEC>`"]
114pub type TEST_BYTE = crate::Reg<test_byte::TEST_BYTE_SPEC>;
115#[doc = "Byte Order Test Register"]
116pub mod test_byte;
117#[doc = "FIFO_INT (rw) register accessor: an alias for `Reg<FIFO_INT_SPEC>`"]
118pub type FIFO_INT = crate::Reg<fifo_int::FIFO_INT_SPEC>;
119#[doc = "FIFO Level Interrupt"]
120pub mod fifo_int;
121#[doc = "RX_CFG (rw) register accessor: an alias for `Reg<RX_CFG_SPEC>`"]
122pub type RX_CFG = crate::Reg<rx_cfg::RX_CFG_SPEC>;
123#[doc = "Receive Configuration"]
124pub mod rx_cfg;
125#[doc = "TX_CFG (rw) register accessor: an alias for `Reg<TX_CFG_SPEC>`"]
126pub type TX_CFG = crate::Reg<tx_cfg::TX_CFG_SPEC>;
127#[doc = "Transmit Configuration"]
128pub mod tx_cfg;
129#[doc = "HW_CFG (rw) register accessor: an alias for `Reg<HW_CFG_SPEC>`"]
130pub type HW_CFG = crate::Reg<hw_cfg::HW_CFG_SPEC>;
131#[doc = "Hardware Configuration"]
132pub mod hw_cfg;
133#[doc = "RX_DP_CTL (r) register accessor: an alias for `Reg<RX_DP_CTL_SPEC>`"]
134pub type RX_DP_CTL = crate::Reg<rx_dp_ctl::RX_DP_CTL_SPEC>;
135#[doc = "RX Datapath Control"]
136pub mod rx_dp_ctl;
137#[doc = "RX_FIFO_INF (rw) register accessor: an alias for `Reg<RX_FIFO_INF_SPEC>`"]
138pub type RX_FIFO_INF = crate::Reg<rx_fifo_inf::RX_FIFO_INF_SPEC>;
139#[doc = "Receive FIFO Configuration"]
140pub mod rx_fifo_inf;
141#[doc = "TX_FIFO_INF (rw) register accessor: an alias for `Reg<TX_FIFO_INF_SPEC>`"]
142pub type TX_FIFO_INF = crate::Reg<tx_fifo_inf::TX_FIFO_INF_SPEC>;
143#[doc = "Transmit FIFO Configuration"]
144pub mod tx_fifo_inf;
145#[doc = "PMT_CTRL (rw) register accessor: an alias for `Reg<PMT_CTRL_SPEC>`"]
146pub type PMT_CTRL = crate::Reg<pmt_ctrl::PMT_CTRL_SPEC>;
147#[doc = "Power Management Control"]
148pub mod pmt_ctrl;
149#[doc = "GPIO_CFG (rw) register accessor: an alias for `Reg<GPIO_CFG_SPEC>`"]
150pub type GPIO_CFG = crate::Reg<gpio_cfg::GPIO_CFG_SPEC>;
151#[doc = "General Purpose IO Configuration"]
152pub mod gpio_cfg;
153#[doc = "GPT_CFG (rw) register accessor: an alias for `Reg<GPT_CFG_SPEC>`"]
154pub type GPT_CFG = crate::Reg<gpt_cfg::GPT_CFG_SPEC>;
155#[doc = "General Purpose Timer Configuration"]
156pub mod gpt_cfg;
157#[doc = "GPT_CNT (r) register accessor: an alias for `Reg<GPT_CNT_SPEC>`"]
158pub type GPT_CNT = crate::Reg<gpt_cnt::GPT_CNT_SPEC>;
159#[doc = "General Purpose Timer Count"]
160pub mod gpt_cnt;
161#[doc = "WORD_SWAP (rw) register accessor: an alias for `Reg<WORD_SWAP_SPEC>`"]
162pub type WORD_SWAP = crate::Reg<word_swap::WORD_SWAP_SPEC>;
163#[doc = "WORD SWAP Register"]
164pub mod word_swap;
165#[doc = "FREE_RUN (r) register accessor: an alias for `Reg<FREE_RUN_SPEC>`"]
166pub type FREE_RUN = crate::Reg<free_run::FREE_RUN_SPEC>;
167#[doc = "Free Run Counter"]
168pub mod free_run;
169#[doc = "RX_DROP (r) register accessor: an alias for `Reg<RX_DROP_SPEC>`"]
170pub type RX_DROP = crate::Reg<rx_drop::RX_DROP_SPEC>;
171#[doc = "RX Dropped Frames Counter"]
172pub mod rx_drop;
173#[doc = "MAC_CSR_CMD (rw) register accessor: an alias for `Reg<MAC_CSR_CMD_SPEC>`"]
174pub type MAC_CSR_CMD = crate::Reg<mac_csr_cmd::MAC_CSR_CMD_SPEC>;
175#[doc = "MAC CSR Synchronizer Command"]
176pub mod mac_csr_cmd;
177#[doc = "MAC_CSR_DATA (rw) register accessor: an alias for `Reg<MAC_CSR_DATA_SPEC>`"]
178pub type MAC_CSR_DATA = crate::Reg<mac_csr_data::MAC_CSR_DATA_SPEC>;
179#[doc = "MAC CSR Synchronizer Data"]
180pub mod mac_csr_data;
181#[doc = "AFC_CFG (rw) register accessor: an alias for `Reg<AFC_CFG_SPEC>`"]
182pub type AFC_CFG = crate::Reg<afc_cfg::AFC_CFG_SPEC>;
183#[doc = "Automatic Flow Control Configuration"]
184pub mod afc_cfg;
185#[doc = "E2P_CMD (rw) register accessor: an alias for `Reg<E2P_CMD_SPEC>`"]
186pub type E2P_CMD = crate::Reg<e2p_cmd::E2P_CMD_SPEC>;
187#[doc = "EEPROM Command"]
188pub mod e2p_cmd;
189#[doc = "E2P_DATA (rw) register accessor: an alias for `Reg<E2P_DATA_SPEC>`"]
190pub type E2P_DATA = crate::Reg<e2p_data::E2P_DATA_SPEC>;
191#[doc = "EEPROM Data"]
192pub mod e2p_data;