d1_pac/
tcon_lcd0.rs

1#[doc = r"Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4    lcd_gctl: LCD_GCTL,
5    lcd_gint0: LCD_GINT0,
6    lcd_gint1: LCD_GINT1,
7    _reserved3: [u8; 0x04],
8    lcd_frm_ctl: LCD_FRM_CTL,
9    lcd_frm_seed: [LCD_FRM_SEED; 6],
10    lcd_frm_tab: [LCD_FRM_TAB; 4],
11    lcd_3d_fifo: LCD_3D_FIFO,
12    lcd_ctl: LCD_CTL,
13    lcd_dclk: LCD_DCLK,
14    lcd_basic0: LCD_BASIC0,
15    lcd_basic1: LCD_BASIC1,
16    lcd_basic2: LCD_BASIC2,
17    lcd_basic3: LCD_BASIC3,
18    lcd_hv_if: LCD_HV_IF,
19    _reserved14: [u8; 0x04],
20    lcd_cpu_if: LCD_CPU_IF,
21    lcd_cpu_wr: LCD_CPU_WR,
22    lcd_cpu_rd: [LCD_CPU_RD; 2],
23    _reserved17: [u8; 0x14],
24    lcd_lvds_if: LCD_LVDS_IF,
25    lcd_io_pol: LCD_IO_POL,
26    lcd_io_tri: LCD_IO_TRI,
27    _reserved20: [u8; 0x6c],
28    lcd_debug: LCD_DEBUG,
29    lcd_ceu_ctl: LCD_CEU_CTL,
30    _reserved22: [u8; 0x0c],
31    lcd_ceu_coef_mul: [LCD_CEU_COEF_MUL; 3],
32    lcd_ceu_coef_add: (),
33    _reserved24: [u8; 0x24],
34    lcd_ceu_coef_rang: [LCD_CEU_COEF_RANG; 3],
35    _reserved25: [u8; 0x14],
36    lcd_cpu_tri0: LCD_CPU_TRI0,
37    lcd_cpu_tri1: LCD_CPU_TRI1,
38    lcd_cpu_tri2: LCD_CPU_TRI2,
39    lcd_cpu_tri3: LCD_CPU_TRI3,
40    lcd_cpu_tri4: LCD_CPU_TRI4,
41    lcd_cpu_tri5: LCD_CPU_TRI5,
42    _reserved31: [u8; 0x08],
43    lcd_cmap_ctl: LCD_CMAP_CTL,
44    _reserved32: [u8; 0x0c],
45    lcd_cmap_odd: [LCD_CMAP_ODD; 2],
46    lcd_cmap_even: [LCD_CMAP_EVEN; 2],
47    _reserved34: [u8; 0x50],
48    lcd_safe_period: LCD_SAFE_PERIOD,
49    _reserved35: [u8; 0x2c],
50    lcd_lvds_ana: [LCD_LVDS_ANA; 2],
51    fsync_gen_ctrl: FSYNC_GEN_CTRL,
52    fsync_gen_dly: FSYNC_GEN_DLY,
53    lcd_sync_ctl: LCD_SYNC_CTL,
54    lcd_sync_pos: LCD_SYNC_POS,
55    lcd_slave_stop_pos: LCD_SLAVE_STOP_POS,
56    _reserved41: [u8; 0x01c4],
57    lcd_gamma_table: [LCD_GAMMA_TABLE; 256],
58}
59impl RegisterBlock {
60    #[doc = "0x00 - LCD Global Control Register"]
61    #[inline(always)]
62    pub const fn lcd_gctl(&self) -> &LCD_GCTL {
63        &self.lcd_gctl
64    }
65    #[doc = "0x04 - LCD Global Interrupt Register0"]
66    #[inline(always)]
67    pub const fn lcd_gint0(&self) -> &LCD_GINT0 {
68        &self.lcd_gint0
69    }
70    #[doc = "0x08 - LCD Global Interrupt Register1"]
71    #[inline(always)]
72    pub const fn lcd_gint1(&self) -> &LCD_GINT1 {
73        &self.lcd_gint1
74    }
75    #[doc = "0x10 - LCD FRM Control Register"]
76    #[inline(always)]
77    pub const fn lcd_frm_ctl(&self) -> &LCD_FRM_CTL {
78        &self.lcd_frm_ctl
79    }
80    #[doc = "0x14..0x2c - LCD FRM Seed Register"]
81    #[inline(always)]
82    pub const fn lcd_frm_seed(&self, n: usize) -> &LCD_FRM_SEED {
83        &self.lcd_frm_seed[n]
84    }
85    #[doc = "0x2c..0x3c - LCD FRM Table Register"]
86    #[inline(always)]
87    pub const fn lcd_frm_tab(&self, n: usize) -> &LCD_FRM_TAB {
88        &self.lcd_frm_tab[n]
89    }
90    #[doc = "0x3c - LCD 3D FIFO Register"]
91    #[inline(always)]
92    pub const fn lcd_3d_fifo(&self) -> &LCD_3D_FIFO {
93        &self.lcd_3d_fifo
94    }
95    #[doc = "0x40 - LCD Control Register"]
96    #[inline(always)]
97    pub const fn lcd_ctl(&self) -> &LCD_CTL {
98        &self.lcd_ctl
99    }
100    #[doc = "0x44 - LCD Data Clock Register"]
101    #[inline(always)]
102    pub const fn lcd_dclk(&self) -> &LCD_DCLK {
103        &self.lcd_dclk
104    }
105    #[doc = "0x48 - LCD Basic Timing Register0"]
106    #[inline(always)]
107    pub const fn lcd_basic0(&self) -> &LCD_BASIC0 {
108        &self.lcd_basic0
109    }
110    #[doc = "0x4c - LCD Basic Timing Register1"]
111    #[inline(always)]
112    pub const fn lcd_basic1(&self) -> &LCD_BASIC1 {
113        &self.lcd_basic1
114    }
115    #[doc = "0x50 - LCD Basic Timing Register2"]
116    #[inline(always)]
117    pub const fn lcd_basic2(&self) -> &LCD_BASIC2 {
118        &self.lcd_basic2
119    }
120    #[doc = "0x54 - LCD Basic Timing Register3"]
121    #[inline(always)]
122    pub const fn lcd_basic3(&self) -> &LCD_BASIC3 {
123        &self.lcd_basic3
124    }
125    #[doc = "0x58 - LCD HV Panel Interface Register"]
126    #[inline(always)]
127    pub const fn lcd_hv_if(&self) -> &LCD_HV_IF {
128        &self.lcd_hv_if
129    }
130    #[doc = "0x60 - LCD CPU Panel Interface Register"]
131    #[inline(always)]
132    pub const fn lcd_cpu_if(&self) -> &LCD_CPU_IF {
133        &self.lcd_cpu_if
134    }
135    #[doc = "0x64 - LCD CPU Panel Write Data Register"]
136    #[inline(always)]
137    pub const fn lcd_cpu_wr(&self) -> &LCD_CPU_WR {
138        &self.lcd_cpu_wr
139    }
140    #[doc = "0x68..0x70 - LCD CPU Panel Read Data Register\\[i\\]"]
141    #[inline(always)]
142    pub const fn lcd_cpu_rd(&self, n: usize) -> &LCD_CPU_RD {
143        &self.lcd_cpu_rd[n]
144    }
145    #[doc = "0x84 - LCD LVDS Configure Register"]
146    #[inline(always)]
147    pub const fn lcd_lvds_if(&self) -> &LCD_LVDS_IF {
148        &self.lcd_lvds_if
149    }
150    #[doc = "0x88 - LCD IO Polarity Register"]
151    #[inline(always)]
152    pub const fn lcd_io_pol(&self) -> &LCD_IO_POL {
153        &self.lcd_io_pol
154    }
155    #[doc = "0x8c - LCD IO Control Register"]
156    #[inline(always)]
157    pub const fn lcd_io_tri(&self) -> &LCD_IO_TRI {
158        &self.lcd_io_tri
159    }
160    #[doc = "0xfc - LCD Debug Register"]
161    #[inline(always)]
162    pub const fn lcd_debug(&self) -> &LCD_DEBUG {
163        &self.lcd_debug
164    }
165    #[doc = "0x100 - LCD CEU Control Register"]
166    #[inline(always)]
167    pub const fn lcd_ceu_ctl(&self) -> &LCD_CEU_CTL {
168        &self.lcd_ceu_ctl
169    }
170    #[doc = "0x110..0x11c - LCD CEU Coefficient Register0"]
171    #[inline(always)]
172    pub const fn lcd_ceu_coef_mul(&self, n: usize) -> &LCD_CEU_COEF_MUL {
173        &self.lcd_ceu_coef_mul[n]
174    }
175    #[doc = "0x11c..0x128 - LCD CEU Coefficient Register1"]
176    #[inline(always)]
177    pub const fn lcd_ceu_coef_add(&self, n: usize) -> &LCD_CEU_COEF_ADD {
178        #[allow(clippy::no_effect)]
179        [(); 3][n];
180        unsafe {
181            &*(self as *const Self)
182                .cast::<u8>()
183                .add(284)
184                .add(16 * n)
185                .cast()
186        }
187    }
188    #[doc = "0x140..0x14c - LCD CEU Coefficient Register2"]
189    #[inline(always)]
190    pub const fn lcd_ceu_coef_rang(&self, n: usize) -> &LCD_CEU_COEF_RANG {
191        &self.lcd_ceu_coef_rang[n]
192    }
193    #[doc = "0x160 - LCD CPU Panel Trigger Register0"]
194    #[inline(always)]
195    pub const fn lcd_cpu_tri0(&self) -> &LCD_CPU_TRI0 {
196        &self.lcd_cpu_tri0
197    }
198    #[doc = "0x164 - LCD CPU Panel Trigger Register1"]
199    #[inline(always)]
200    pub const fn lcd_cpu_tri1(&self) -> &LCD_CPU_TRI1 {
201        &self.lcd_cpu_tri1
202    }
203    #[doc = "0x168 - LCD CPU Panel Trigger Register2"]
204    #[inline(always)]
205    pub const fn lcd_cpu_tri2(&self) -> &LCD_CPU_TRI2 {
206        &self.lcd_cpu_tri2
207    }
208    #[doc = "0x16c - LCD CPU Panel Trigger Register3"]
209    #[inline(always)]
210    pub const fn lcd_cpu_tri3(&self) -> &LCD_CPU_TRI3 {
211        &self.lcd_cpu_tri3
212    }
213    #[doc = "0x170 - LCD CPU Panel Trigger Register4"]
214    #[inline(always)]
215    pub const fn lcd_cpu_tri4(&self) -> &LCD_CPU_TRI4 {
216        &self.lcd_cpu_tri4
217    }
218    #[doc = "0x174 - LCD CPU Panel Trigger Register5"]
219    #[inline(always)]
220    pub const fn lcd_cpu_tri5(&self) -> &LCD_CPU_TRI5 {
221        &self.lcd_cpu_tri5
222    }
223    #[doc = "0x180 - LCD Color Map Control Register"]
224    #[inline(always)]
225    pub const fn lcd_cmap_ctl(&self) -> &LCD_CMAP_CTL {
226        &self.lcd_cmap_ctl
227    }
228    #[doc = "0x190..0x198 - LCD Color Map Odd Line Register\\[i\\]"]
229    #[inline(always)]
230    pub const fn lcd_cmap_odd(&self, n: usize) -> &LCD_CMAP_ODD {
231        &self.lcd_cmap_odd[n]
232    }
233    #[doc = "0x198..0x1a0 - LCD Color Map Even Line Register\\[i\\]"]
234    #[inline(always)]
235    pub const fn lcd_cmap_even(&self, n: usize) -> &LCD_CMAP_EVEN {
236        &self.lcd_cmap_even[n]
237    }
238    #[doc = "0x1f0 - LCD Safe Period Register"]
239    #[inline(always)]
240    pub const fn lcd_safe_period(&self) -> &LCD_SAFE_PERIOD {
241        &self.lcd_safe_period
242    }
243    #[doc = "0x220..0x228 - LCD LVDS Analog Register \\[i\\]"]
244    #[inline(always)]
245    pub const fn lcd_lvds_ana(&self, n: usize) -> &LCD_LVDS_ANA {
246        &self.lcd_lvds_ana[n]
247    }
248    #[doc = "0x228 - FSYNC_GEN_CTRL"]
249    #[inline(always)]
250    pub const fn fsync_gen_ctrl(&self) -> &FSYNC_GEN_CTRL {
251        &self.fsync_gen_ctrl
252    }
253    #[doc = "0x22c - FSYNC_GEN_DLY"]
254    #[inline(always)]
255    pub const fn fsync_gen_dly(&self) -> &FSYNC_GEN_DLY {
256        &self.fsync_gen_dly
257    }
258    #[doc = "0x230 - LCD Sync Control Register"]
259    #[inline(always)]
260    pub const fn lcd_sync_ctl(&self) -> &LCD_SYNC_CTL {
261        &self.lcd_sync_ctl
262    }
263    #[doc = "0x234 - LCD Sync Position Register"]
264    #[inline(always)]
265    pub const fn lcd_sync_pos(&self) -> &LCD_SYNC_POS {
266        &self.lcd_sync_pos
267    }
268    #[doc = "0x238 - LCD Slave Stop Position Register"]
269    #[inline(always)]
270    pub const fn lcd_slave_stop_pos(&self) -> &LCD_SLAVE_STOP_POS {
271        &self.lcd_slave_stop_pos
272    }
273    #[doc = "0x400..0x800 - LCD Gamma Table Register"]
274    #[inline(always)]
275    pub const fn lcd_gamma_table(&self, n: usize) -> &LCD_GAMMA_TABLE {
276        &self.lcd_gamma_table[n]
277    }
278}
279#[doc = "lcd_gctl (rw) register accessor: LCD Global Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_gctl::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 [`lcd_gctl::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@lcd_gctl`] module"]
280pub type LCD_GCTL = crate::Reg<lcd_gctl::LCD_GCTL_SPEC>;
281#[doc = "LCD Global Control Register"]
282pub mod lcd_gctl;
283#[doc = "lcd_gint0 (rw) register accessor: LCD Global Interrupt Register0\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_gint0::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 [`lcd_gint0::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@lcd_gint0`] module"]
284pub type LCD_GINT0 = crate::Reg<lcd_gint0::LCD_GINT0_SPEC>;
285#[doc = "LCD Global Interrupt Register0"]
286pub mod lcd_gint0;
287#[doc = "lcd_gint1 (rw) register accessor: LCD Global Interrupt Register1\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_gint1::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 [`lcd_gint1::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@lcd_gint1`] module"]
288pub type LCD_GINT1 = crate::Reg<lcd_gint1::LCD_GINT1_SPEC>;
289#[doc = "LCD Global Interrupt Register1"]
290pub mod lcd_gint1;
291#[doc = "lcd_frm_ctl (rw) register accessor: LCD FRM Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_frm_ctl::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 [`lcd_frm_ctl::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@lcd_frm_ctl`] module"]
292pub type LCD_FRM_CTL = crate::Reg<lcd_frm_ctl::LCD_FRM_CTL_SPEC>;
293#[doc = "LCD FRM Control Register"]
294pub mod lcd_frm_ctl;
295#[doc = "lcd_frm_seed (rw) register accessor: LCD FRM Seed Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_frm_seed::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 [`lcd_frm_seed::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@lcd_frm_seed`] module"]
296pub type LCD_FRM_SEED = crate::Reg<lcd_frm_seed::LCD_FRM_SEED_SPEC>;
297#[doc = "LCD FRM Seed Register"]
298pub mod lcd_frm_seed;
299#[doc = "lcd_frm_tab (rw) register accessor: LCD FRM Table Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_frm_tab::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 [`lcd_frm_tab::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@lcd_frm_tab`] module"]
300pub type LCD_FRM_TAB = crate::Reg<lcd_frm_tab::LCD_FRM_TAB_SPEC>;
301#[doc = "LCD FRM Table Register"]
302pub mod lcd_frm_tab;
303#[doc = "lcd_3d_fifo (rw) register accessor: LCD 3D FIFO Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_3d_fifo::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 [`lcd_3d_fifo::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@lcd_3d_fifo`] module"]
304pub type LCD_3D_FIFO = crate::Reg<lcd_3d_fifo::LCD_3D_FIFO_SPEC>;
305#[doc = "LCD 3D FIFO Register"]
306pub mod lcd_3d_fifo;
307#[doc = "lcd_ctl (rw) register accessor: LCD Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_ctl::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 [`lcd_ctl::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@lcd_ctl`] module"]
308pub type LCD_CTL = crate::Reg<lcd_ctl::LCD_CTL_SPEC>;
309#[doc = "LCD Control Register"]
310pub mod lcd_ctl;
311#[doc = "lcd_dclk (rw) register accessor: LCD Data Clock Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_dclk::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 [`lcd_dclk::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@lcd_dclk`] module"]
312pub type LCD_DCLK = crate::Reg<lcd_dclk::LCD_DCLK_SPEC>;
313#[doc = "LCD Data Clock Register"]
314pub mod lcd_dclk;
315#[doc = "lcd_basic0 (rw) register accessor: LCD Basic Timing Register0\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_basic0::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 [`lcd_basic0::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@lcd_basic0`] module"]
316pub type LCD_BASIC0 = crate::Reg<lcd_basic0::LCD_BASIC0_SPEC>;
317#[doc = "LCD Basic Timing Register0"]
318pub mod lcd_basic0;
319#[doc = "lcd_basic1 (rw) register accessor: LCD Basic Timing Register1\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_basic1::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 [`lcd_basic1::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@lcd_basic1`] module"]
320pub type LCD_BASIC1 = crate::Reg<lcd_basic1::LCD_BASIC1_SPEC>;
321#[doc = "LCD Basic Timing Register1"]
322pub mod lcd_basic1;
323#[doc = "lcd_basic2 (rw) register accessor: LCD Basic Timing Register2\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_basic2::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 [`lcd_basic2::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@lcd_basic2`] module"]
324pub type LCD_BASIC2 = crate::Reg<lcd_basic2::LCD_BASIC2_SPEC>;
325#[doc = "LCD Basic Timing Register2"]
326pub mod lcd_basic2;
327#[doc = "lcd_basic3 (rw) register accessor: LCD Basic Timing Register3\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_basic3::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 [`lcd_basic3::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@lcd_basic3`] module"]
328pub type LCD_BASIC3 = crate::Reg<lcd_basic3::LCD_BASIC3_SPEC>;
329#[doc = "LCD Basic Timing Register3"]
330pub mod lcd_basic3;
331#[doc = "lcd_hv_if (rw) register accessor: LCD HV Panel Interface Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_hv_if::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 [`lcd_hv_if::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@lcd_hv_if`] module"]
332pub type LCD_HV_IF = crate::Reg<lcd_hv_if::LCD_HV_IF_SPEC>;
333#[doc = "LCD HV Panel Interface Register"]
334pub mod lcd_hv_if;
335#[doc = "lcd_cpu_if (rw) register accessor: LCD CPU Panel Interface Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_cpu_if::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 [`lcd_cpu_if::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@lcd_cpu_if`] module"]
336pub type LCD_CPU_IF = crate::Reg<lcd_cpu_if::LCD_CPU_IF_SPEC>;
337#[doc = "LCD CPU Panel Interface Register"]
338pub mod lcd_cpu_if;
339#[doc = "lcd_cpu_wr (rw) register accessor: LCD CPU Panel Write Data Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_cpu_wr::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 [`lcd_cpu_wr::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@lcd_cpu_wr`] module"]
340pub type LCD_CPU_WR = crate::Reg<lcd_cpu_wr::LCD_CPU_WR_SPEC>;
341#[doc = "LCD CPU Panel Write Data Register"]
342pub mod lcd_cpu_wr;
343#[doc = "lcd_cpu_rd (rw) register accessor: LCD CPU Panel Read Data Register\\[i\\]\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_cpu_rd::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 [`lcd_cpu_rd::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@lcd_cpu_rd`] module"]
344pub type LCD_CPU_RD = crate::Reg<lcd_cpu_rd::LCD_CPU_RD_SPEC>;
345#[doc = "LCD CPU Panel Read Data Register\\[i\\]"]
346pub mod lcd_cpu_rd;
347#[doc = "lcd_lvds_if (rw) register accessor: LCD LVDS Configure Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_lvds_if::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 [`lcd_lvds_if::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@lcd_lvds_if`] module"]
348pub type LCD_LVDS_IF = crate::Reg<lcd_lvds_if::LCD_LVDS_IF_SPEC>;
349#[doc = "LCD LVDS Configure Register"]
350pub mod lcd_lvds_if;
351#[doc = "lcd_io_pol (rw) register accessor: LCD IO Polarity Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_io_pol::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 [`lcd_io_pol::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@lcd_io_pol`] module"]
352pub type LCD_IO_POL = crate::Reg<lcd_io_pol::LCD_IO_POL_SPEC>;
353#[doc = "LCD IO Polarity Register"]
354pub mod lcd_io_pol;
355#[doc = "lcd_io_tri (rw) register accessor: LCD IO Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_io_tri::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 [`lcd_io_tri::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@lcd_io_tri`] module"]
356pub type LCD_IO_TRI = crate::Reg<lcd_io_tri::LCD_IO_TRI_SPEC>;
357#[doc = "LCD IO Control Register"]
358pub mod lcd_io_tri;
359#[doc = "lcd_debug (rw) register accessor: LCD Debug Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_debug::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 [`lcd_debug::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@lcd_debug`] module"]
360pub type LCD_DEBUG = crate::Reg<lcd_debug::LCD_DEBUG_SPEC>;
361#[doc = "LCD Debug Register"]
362pub mod lcd_debug;
363#[doc = "lcd_ceu_ctl (rw) register accessor: LCD CEU Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_ceu_ctl::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 [`lcd_ceu_ctl::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@lcd_ceu_ctl`] module"]
364pub type LCD_CEU_CTL = crate::Reg<lcd_ceu_ctl::LCD_CEU_CTL_SPEC>;
365#[doc = "LCD CEU Control Register"]
366pub mod lcd_ceu_ctl;
367#[doc = "lcd_ceu_coef_mul (rw) register accessor: LCD CEU Coefficient Register0\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_ceu_coef_mul::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 [`lcd_ceu_coef_mul::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@lcd_ceu_coef_mul`] module"]
368pub type LCD_CEU_COEF_MUL = crate::Reg<lcd_ceu_coef_mul::LCD_CEU_COEF_MUL_SPEC>;
369#[doc = "LCD CEU Coefficient Register0"]
370pub mod lcd_ceu_coef_mul;
371#[doc = "lcd_ceu_coef_add (rw) register accessor: LCD CEU Coefficient Register1\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_ceu_coef_add::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 [`lcd_ceu_coef_add::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@lcd_ceu_coef_add`] module"]
372pub type LCD_CEU_COEF_ADD = crate::Reg<lcd_ceu_coef_add::LCD_CEU_COEF_ADD_SPEC>;
373#[doc = "LCD CEU Coefficient Register1"]
374pub mod lcd_ceu_coef_add;
375#[doc = "lcd_ceu_coef_rang (rw) register accessor: LCD CEU Coefficient Register2\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_ceu_coef_rang::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 [`lcd_ceu_coef_rang::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@lcd_ceu_coef_rang`] module"]
376pub type LCD_CEU_COEF_RANG = crate::Reg<lcd_ceu_coef_rang::LCD_CEU_COEF_RANG_SPEC>;
377#[doc = "LCD CEU Coefficient Register2"]
378pub mod lcd_ceu_coef_rang;
379#[doc = "lcd_cpu_tri0 (rw) register accessor: LCD CPU Panel Trigger Register0\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_cpu_tri0::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 [`lcd_cpu_tri0::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@lcd_cpu_tri0`] module"]
380pub type LCD_CPU_TRI0 = crate::Reg<lcd_cpu_tri0::LCD_CPU_TRI0_SPEC>;
381#[doc = "LCD CPU Panel Trigger Register0"]
382pub mod lcd_cpu_tri0;
383#[doc = "lcd_cpu_tri1 (rw) register accessor: LCD CPU Panel Trigger Register1\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_cpu_tri1::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 [`lcd_cpu_tri1::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@lcd_cpu_tri1`] module"]
384pub type LCD_CPU_TRI1 = crate::Reg<lcd_cpu_tri1::LCD_CPU_TRI1_SPEC>;
385#[doc = "LCD CPU Panel Trigger Register1"]
386pub mod lcd_cpu_tri1;
387#[doc = "lcd_cpu_tri2 (rw) register accessor: LCD CPU Panel Trigger Register2\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_cpu_tri2::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 [`lcd_cpu_tri2::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@lcd_cpu_tri2`] module"]
388pub type LCD_CPU_TRI2 = crate::Reg<lcd_cpu_tri2::LCD_CPU_TRI2_SPEC>;
389#[doc = "LCD CPU Panel Trigger Register2"]
390pub mod lcd_cpu_tri2;
391#[doc = "lcd_cpu_tri3 (rw) register accessor: LCD CPU Panel Trigger Register3\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_cpu_tri3::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 [`lcd_cpu_tri3::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@lcd_cpu_tri3`] module"]
392pub type LCD_CPU_TRI3 = crate::Reg<lcd_cpu_tri3::LCD_CPU_TRI3_SPEC>;
393#[doc = "LCD CPU Panel Trigger Register3"]
394pub mod lcd_cpu_tri3;
395#[doc = "lcd_cpu_tri4 (rw) register accessor: LCD CPU Panel Trigger Register4\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_cpu_tri4::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 [`lcd_cpu_tri4::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@lcd_cpu_tri4`] module"]
396pub type LCD_CPU_TRI4 = crate::Reg<lcd_cpu_tri4::LCD_CPU_TRI4_SPEC>;
397#[doc = "LCD CPU Panel Trigger Register4"]
398pub mod lcd_cpu_tri4;
399#[doc = "lcd_cpu_tri5 (rw) register accessor: LCD CPU Panel Trigger Register5\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_cpu_tri5::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 [`lcd_cpu_tri5::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@lcd_cpu_tri5`] module"]
400pub type LCD_CPU_TRI5 = crate::Reg<lcd_cpu_tri5::LCD_CPU_TRI5_SPEC>;
401#[doc = "LCD CPU Panel Trigger Register5"]
402pub mod lcd_cpu_tri5;
403#[doc = "lcd_cmap_ctl (rw) register accessor: LCD Color Map Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_cmap_ctl::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 [`lcd_cmap_ctl::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@lcd_cmap_ctl`] module"]
404pub type LCD_CMAP_CTL = crate::Reg<lcd_cmap_ctl::LCD_CMAP_CTL_SPEC>;
405#[doc = "LCD Color Map Control Register"]
406pub mod lcd_cmap_ctl;
407#[doc = "lcd_cmap_odd (rw) register accessor: LCD Color Map Odd Line Register\\[i\\]\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_cmap_odd::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 [`lcd_cmap_odd::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@lcd_cmap_odd`] module"]
408pub type LCD_CMAP_ODD = crate::Reg<lcd_cmap_odd::LCD_CMAP_ODD_SPEC>;
409#[doc = "LCD Color Map Odd Line Register\\[i\\]"]
410pub mod lcd_cmap_odd;
411#[doc = "lcd_cmap_even (rw) register accessor: LCD Color Map Even Line Register\\[i\\]\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_cmap_even::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 [`lcd_cmap_even::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@lcd_cmap_even`] module"]
412pub type LCD_CMAP_EVEN = crate::Reg<lcd_cmap_even::LCD_CMAP_EVEN_SPEC>;
413#[doc = "LCD Color Map Even Line Register\\[i\\]"]
414pub mod lcd_cmap_even;
415#[doc = "lcd_safe_period (rw) register accessor: LCD Safe Period Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_safe_period::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 [`lcd_safe_period::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@lcd_safe_period`] module"]
416pub type LCD_SAFE_PERIOD = crate::Reg<lcd_safe_period::LCD_SAFE_PERIOD_SPEC>;
417#[doc = "LCD Safe Period Register"]
418pub mod lcd_safe_period;
419#[doc = "lcd_lvds_ana (rw) register accessor: LCD LVDS Analog Register \\[i\\]\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_lvds_ana::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 [`lcd_lvds_ana::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@lcd_lvds_ana`] module"]
420pub type LCD_LVDS_ANA = crate::Reg<lcd_lvds_ana::LCD_LVDS_ANA_SPEC>;
421#[doc = "LCD LVDS Analog Register \\[i\\]"]
422pub mod lcd_lvds_ana;
423#[doc = "fsync_gen_ctrl (rw) register accessor: FSYNC_GEN_CTRL\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`fsync_gen_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 [`fsync_gen_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@fsync_gen_ctrl`] module"]
424pub type FSYNC_GEN_CTRL = crate::Reg<fsync_gen_ctrl::FSYNC_GEN_CTRL_SPEC>;
425#[doc = "FSYNC_GEN_CTRL"]
426pub mod fsync_gen_ctrl;
427#[doc = "fsync_gen_dly (rw) register accessor: FSYNC_GEN_DLY\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`fsync_gen_dly::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 [`fsync_gen_dly::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@fsync_gen_dly`] module"]
428pub type FSYNC_GEN_DLY = crate::Reg<fsync_gen_dly::FSYNC_GEN_DLY_SPEC>;
429#[doc = "FSYNC_GEN_DLY"]
430pub mod fsync_gen_dly;
431#[doc = "lcd_sync_ctl (rw) register accessor: LCD Sync Control Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_sync_ctl::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 [`lcd_sync_ctl::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@lcd_sync_ctl`] module"]
432pub type LCD_SYNC_CTL = crate::Reg<lcd_sync_ctl::LCD_SYNC_CTL_SPEC>;
433#[doc = "LCD Sync Control Register"]
434pub mod lcd_sync_ctl;
435#[doc = "lcd_sync_pos (rw) register accessor: LCD Sync Position Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_sync_pos::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 [`lcd_sync_pos::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@lcd_sync_pos`] module"]
436pub type LCD_SYNC_POS = crate::Reg<lcd_sync_pos::LCD_SYNC_POS_SPEC>;
437#[doc = "LCD Sync Position Register"]
438pub mod lcd_sync_pos;
439#[doc = "lcd_slave_stop_pos (rw) register accessor: LCD Slave Stop Position Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_slave_stop_pos::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 [`lcd_slave_stop_pos::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@lcd_slave_stop_pos`] module"]
440pub type LCD_SLAVE_STOP_POS = crate::Reg<lcd_slave_stop_pos::LCD_SLAVE_STOP_POS_SPEC>;
441#[doc = "LCD Slave Stop Position Register"]
442pub mod lcd_slave_stop_pos;
443#[doc = "lcd_gamma_table (rw) register accessor: LCD Gamma Table Register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`lcd_gamma_table::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 [`lcd_gamma_table::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@lcd_gamma_table`] module"]
444pub type LCD_GAMMA_TABLE = crate::Reg<lcd_gamma_table::LCD_GAMMA_TABLE_SPEC>;
445#[doc = "LCD Gamma Table Register"]
446pub mod lcd_gamma_table;