1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
#[doc = r"Register block"]
#[repr(C)]
pub struct RegisterBlock {
    #[doc = "0x00 - TV Global Control Register"]
    pub tv_gctl: TV_GCTL,
    #[doc = "0x04 - TV Global Interrupt Register0"]
    pub tv_gint0: TV_GINT0,
    #[doc = "0x08 - TV Global Interrupt Register1"]
    pub tv_gint1: TV_GINT1,
    _reserved3: [u8; 0x34],
    #[doc = "0x40 - TV Source Control Register"]
    pub tv_src_ctl: TV_SRC_CTL,
    _reserved4: [u8; 0x44],
    #[doc = "0x88 - TV SYNC Signal Polarity Register"]
    pub tv_io_pol: TV_IO_POL,
    #[doc = "0x8c - TV SYNC Signal IO Control Register"]
    pub tv_io_tri: TV_IO_TRI,
    #[doc = "0x90 - TV Control Register"]
    pub tv_ctl: TV_CTL,
    #[doc = "0x94 - TV Basic Timing Register0"]
    pub tv_basic0: TV_BASIC0,
    #[doc = "0x98 - TV Basic Timing Register1"]
    pub tv_basic1: TV_BASIC1,
    #[doc = "0x9c - TV Basic Timing Register2"]
    pub tv_basic2: TV_BASIC2,
    #[doc = "0xa0 - TV Basic Timing Register3"]
    pub tv_basic3: TV_BASIC3,
    #[doc = "0xa4 - TV Basic Timing Register4"]
    pub tv_basic4: TV_BASIC4,
    #[doc = "0xa8 - TV Basic Timing Register5"]
    pub tv_basic5: TV_BASIC5,
    _reserved13: [u8; 0x50],
    #[doc = "0xfc - TV Debug Register"]
    pub tv_debug: TV_DEBUG,
    #[doc = "0x100 - TV CEU Control Register"]
    pub tv_ceu_ctl: TV_CEU_CTL,
    _reserved15: [u8; 0x0c],
    #[doc = "0x110..0x13c - TV CEU Coefficient Register0"]
    pub tv_ceu_coef_mul: [TV_CEU_COEF_MUL; 11],
    _reserved16: [u8; 0x04],
    #[doc = "0x140..0x14c - TV CEU Coefficient Register2"]
    pub tv_ceu_coef_rang: [TV_CEU_COEF_RANG; 3],
    _reserved17: [u8; 0xa4],
    #[doc = "0x1f0 - TV Safe Period Register"]
    pub tv_safe_period: TV_SAFE_PERIOD,
    _reserved18: [u8; 0x010c],
    #[doc = "0x300 - TV Fill Data Control Register"]
    pub tv_fill_ctl: TV_FILL_CTL,
    #[doc = "0x304 - TV Fill Data Begin Register"]
    pub tv_fill_begin0: TV_FILL_BEGIN,
    #[doc = "0x308 - TV Fill Data End Register"]
    pub tv_fill_end0: TV_FILL_END,
    #[doc = "0x30c - TV Fill Data Value Register"]
    pub tv_fill_data0: TV_FILL_DATA,
    #[doc = "0x310 - TV Fill Data Begin Register"]
    pub tv_fill_begin1: TV_FILL_BEGIN,
    #[doc = "0x314 - TV Fill Data End Register"]
    pub tv_fill_end1: TV_FILL_END,
    #[doc = "0x318 - TV Fill Data Value Register"]
    pub tv_fill_data1: TV_FILL_DATA,
    #[doc = "0x31c - TV Fill Data Begin Register"]
    pub tv_fill_begin2: TV_FILL_BEGIN,
    #[doc = "0x320 - TV Fill Data End Register"]
    pub tv_fill_end2: TV_FILL_END,
    #[doc = "0x324 - TV Fill Data Value Register"]
    pub tv_fill_data2: TV_FILL_DATA,
    _reserved28: [u8; 0x08],
    #[doc = "0x330 - TCON Data IO Polarity Control0"]
    pub tv_data_io_pol0: TV_DATA_IO_POL0,
    #[doc = "0x334 - TCON Data IO Polarity Control1"]
    pub tv_data_io_pol1: TV_DATA_IO_POL1,
    #[doc = "0x338 - TCON Data IO Enable Control0"]
    pub tv_data_io_tri0: TV_DATA_IO_TRI0,
    #[doc = "0x33c - TCON Data IO Enable Control1"]
    pub tv_data_io_tri1: TV_DATA_IO_TRI1,
    #[doc = "0x340 - TV Pixeldepth Mode Control Register"]
    pub tv_pixeldepth_mode: TV_PIXELDEPTH_MODE,
}
#[doc = "tv_gctl (rw) register accessor: an alias for `Reg<TV_GCTL_SPEC>`"]
pub type TV_GCTL = crate::Reg<tv_gctl::TV_GCTL_SPEC>;
#[doc = "TV Global Control Register"]
pub mod tv_gctl;
#[doc = "tv_gint0 (rw) register accessor: an alias for `Reg<TV_GINT0_SPEC>`"]
pub type TV_GINT0 = crate::Reg<tv_gint0::TV_GINT0_SPEC>;
#[doc = "TV Global Interrupt Register0"]
pub mod tv_gint0;
#[doc = "tv_gint1 (rw) register accessor: an alias for `Reg<TV_GINT1_SPEC>`"]
pub type TV_GINT1 = crate::Reg<tv_gint1::TV_GINT1_SPEC>;
#[doc = "TV Global Interrupt Register1"]
pub mod tv_gint1;
#[doc = "tv_src_ctl (rw) register accessor: an alias for `Reg<TV_SRC_CTL_SPEC>`"]
pub type TV_SRC_CTL = crate::Reg<tv_src_ctl::TV_SRC_CTL_SPEC>;
#[doc = "TV Source Control Register"]
pub mod tv_src_ctl;
#[doc = "tv_ctl (rw) register accessor: an alias for `Reg<TV_CTL_SPEC>`"]
pub type TV_CTL = crate::Reg<tv_ctl::TV_CTL_SPEC>;
#[doc = "TV Control Register"]
pub mod tv_ctl;
#[doc = "tv_basic0 (rw) register accessor: an alias for `Reg<TV_BASIC0_SPEC>`"]
pub type TV_BASIC0 = crate::Reg<tv_basic0::TV_BASIC0_SPEC>;
#[doc = "TV Basic Timing Register0"]
pub mod tv_basic0;
#[doc = "tv_basic1 (rw) register accessor: an alias for `Reg<TV_BASIC1_SPEC>`"]
pub type TV_BASIC1 = crate::Reg<tv_basic1::TV_BASIC1_SPEC>;
#[doc = "TV Basic Timing Register1"]
pub mod tv_basic1;
#[doc = "tv_basic2 (rw) register accessor: an alias for `Reg<TV_BASIC2_SPEC>`"]
pub type TV_BASIC2 = crate::Reg<tv_basic2::TV_BASIC2_SPEC>;
#[doc = "TV Basic Timing Register2"]
pub mod tv_basic2;
#[doc = "tv_basic3 (rw) register accessor: an alias for `Reg<TV_BASIC3_SPEC>`"]
pub type TV_BASIC3 = crate::Reg<tv_basic3::TV_BASIC3_SPEC>;
#[doc = "TV Basic Timing Register3"]
pub mod tv_basic3;
#[doc = "tv_basic4 (rw) register accessor: an alias for `Reg<TV_BASIC4_SPEC>`"]
pub type TV_BASIC4 = crate::Reg<tv_basic4::TV_BASIC4_SPEC>;
#[doc = "TV Basic Timing Register4"]
pub mod tv_basic4;
#[doc = "tv_basic5 (rw) register accessor: an alias for `Reg<TV_BASIC5_SPEC>`"]
pub type TV_BASIC5 = crate::Reg<tv_basic5::TV_BASIC5_SPEC>;
#[doc = "TV Basic Timing Register5"]
pub mod tv_basic5;
#[doc = "tv_io_pol (rw) register accessor: an alias for `Reg<TV_IO_POL_SPEC>`"]
pub type TV_IO_POL = crate::Reg<tv_io_pol::TV_IO_POL_SPEC>;
#[doc = "TV SYNC Signal Polarity Register"]
pub mod tv_io_pol;
#[doc = "tv_io_tri (rw) register accessor: an alias for `Reg<TV_IO_TRI_SPEC>`"]
pub type TV_IO_TRI = crate::Reg<tv_io_tri::TV_IO_TRI_SPEC>;
#[doc = "TV SYNC Signal IO Control Register"]
pub mod tv_io_tri;
#[doc = "tv_debug (rw) register accessor: an alias for `Reg<TV_DEBUG_SPEC>`"]
pub type TV_DEBUG = crate::Reg<tv_debug::TV_DEBUG_SPEC>;
#[doc = "TV Debug Register"]
pub mod tv_debug;
#[doc = "tv_ceu_ctl (rw) register accessor: an alias for `Reg<TV_CEU_CTL_SPEC>`"]
pub type TV_CEU_CTL = crate::Reg<tv_ceu_ctl::TV_CEU_CTL_SPEC>;
#[doc = "TV CEU Control Register"]
pub mod tv_ceu_ctl;
#[doc = "tv_ceu_coef_mul (rw) register accessor: an alias for `Reg<TV_CEU_COEF_MUL_SPEC>`"]
pub type TV_CEU_COEF_MUL = crate::Reg<tv_ceu_coef_mul::TV_CEU_COEF_MUL_SPEC>;
#[doc = "TV CEU Coefficient Register0"]
pub mod tv_ceu_coef_mul;
#[doc = "tv_ceu_coef_rang (rw) register accessor: an alias for `Reg<TV_CEU_COEF_RANG_SPEC>`"]
pub type TV_CEU_COEF_RANG = crate::Reg<tv_ceu_coef_rang::TV_CEU_COEF_RANG_SPEC>;
#[doc = "TV CEU Coefficient Register2"]
pub mod tv_ceu_coef_rang;
#[doc = "tv_safe_period (rw) register accessor: an alias for `Reg<TV_SAFE_PERIOD_SPEC>`"]
pub type TV_SAFE_PERIOD = crate::Reg<tv_safe_period::TV_SAFE_PERIOD_SPEC>;
#[doc = "TV Safe Period Register"]
pub mod tv_safe_period;
#[doc = "tv_fill_ctl (rw) register accessor: an alias for `Reg<TV_FILL_CTL_SPEC>`"]
pub type TV_FILL_CTL = crate::Reg<tv_fill_ctl::TV_FILL_CTL_SPEC>;
#[doc = "TV Fill Data Control Register"]
pub mod tv_fill_ctl;
#[doc = "tv_fill_begin (rw) register accessor: an alias for `Reg<TV_FILL_BEGIN_SPEC>`"]
pub type TV_FILL_BEGIN = crate::Reg<tv_fill_begin::TV_FILL_BEGIN_SPEC>;
#[doc = "TV Fill Data Begin Register"]
pub mod tv_fill_begin;
#[doc = "tv_fill_end (rw) register accessor: an alias for `Reg<TV_FILL_END_SPEC>`"]
pub type TV_FILL_END = crate::Reg<tv_fill_end::TV_FILL_END_SPEC>;
#[doc = "TV Fill Data End Register"]
pub mod tv_fill_end;
#[doc = "tv_fill_data (rw) register accessor: an alias for `Reg<TV_FILL_DATA_SPEC>`"]
pub type TV_FILL_DATA = crate::Reg<tv_fill_data::TV_FILL_DATA_SPEC>;
#[doc = "TV Fill Data Value Register"]
pub mod tv_fill_data;
#[doc = "tv_data_io_pol0 (rw) register accessor: an alias for `Reg<TV_DATA_IO_POL0_SPEC>`"]
pub type TV_DATA_IO_POL0 = crate::Reg<tv_data_io_pol0::TV_DATA_IO_POL0_SPEC>;
#[doc = "TCON Data IO Polarity Control0"]
pub mod tv_data_io_pol0;
#[doc = "tv_data_io_pol1 (rw) register accessor: an alias for `Reg<TV_DATA_IO_POL1_SPEC>`"]
pub type TV_DATA_IO_POL1 = crate::Reg<tv_data_io_pol1::TV_DATA_IO_POL1_SPEC>;
#[doc = "TCON Data IO Polarity Control1"]
pub mod tv_data_io_pol1;
#[doc = "tv_data_io_tri0 (rw) register accessor: an alias for `Reg<TV_DATA_IO_TRI0_SPEC>`"]
pub type TV_DATA_IO_TRI0 = crate::Reg<tv_data_io_tri0::TV_DATA_IO_TRI0_SPEC>;
#[doc = "TCON Data IO Enable Control0"]
pub mod tv_data_io_tri0;
#[doc = "tv_data_io_tri1 (rw) register accessor: an alias for `Reg<TV_DATA_IO_TRI1_SPEC>`"]
pub type TV_DATA_IO_TRI1 = crate::Reg<tv_data_io_tri1::TV_DATA_IO_TRI1_SPEC>;
#[doc = "TCON Data IO Enable Control1"]
pub mod tv_data_io_tri1;
#[doc = "tv_pixeldepth_mode (rw) register accessor: an alias for `Reg<TV_PIXELDEPTH_MODE_SPEC>`"]
pub type TV_PIXELDEPTH_MODE = crate::Reg<tv_pixeldepth_mode::TV_PIXELDEPTH_MODE_SPEC>;
#[doc = "TV Pixeldepth Mode Control Register"]
pub mod tv_pixeldepth_mode;