1 /*
2  * Copyright (c) 2021 HiSilicon (Shanghai) Technologies CO., LIMITED.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #ifndef MIPI_RX_REG_H
17 #define MIPI_RX_REG_H
18 
19 /* Define the union U_PHY_MODE_LINK */
20 typedef union {
21     /* Define the struct bits */
22     struct {
23         unsigned int phy0_rg_en_d : 4; /* [3..0]  */
24         unsigned int phy0_rg_en_clk0 : 1; /* [4]  */
25         unsigned int phy0_rg_en_clk1 : 1; /* [5]  */
26         unsigned int reserved_0 : 2; /* [7..6]  */
27         unsigned int phy0_rg_en_cmos : 1; /* [8]  */
28         unsigned int reserved_1 : 3; /* [11..9]  */
29         unsigned int phy0_rg_en_lp0 : 1; /* [12]  */
30         unsigned int phy0_rg_en_lp1 : 1; /* [13]  */
31         unsigned int reserved_2 : 2; /* [15..14]  */
32         unsigned int phy0_rg_faclk0_en : 1; /* [16]  */
33         unsigned int phy0_rg_faclk1_en : 1; /* [17]  */
34         unsigned int reserved_3 : 2; /* [19..18]  */
35         unsigned int phy0_rg_en_2l2l : 1; /* [20]  */
36         unsigned int reserved_4 : 3; /* [23..21]  */
37         unsigned int phy0_rg_mipi_mode0 : 1; /* [24]  */
38         unsigned int phy0_rg_mipi_mode1 : 1; /* [25]  */
39         unsigned int reserved_5 : 6; /* [31..26]  */
40     } bits;
41 
42     /* Define an unsigned member */
43     unsigned int u32;
44 } U_PHY_MODE_LINK;
45 
46 /* Define the union U_PHY_SKEW_LINK */
47 typedef union {
48     /* Define the struct bits */
49     struct {
50         unsigned int phy0_clk0_skew : 3; /* [2..0]  */
51         unsigned int reserved_0 : 1; /* [3]  */
52         unsigned int phy0_clk1_skew : 3; /* [6..4]  */
53         unsigned int reserved_1 : 1; /* [7]  */
54         unsigned int phy0_d0_skew : 3; /* [10..8]  */
55         unsigned int reserved_2 : 1; /* [11]  */
56         unsigned int phy0_d1_skew : 3; /* [14..12]  */
57         unsigned int reserved_3 : 1; /* [15]  */
58         unsigned int phy0_d2_skew : 3; /* [18..16]  */
59         unsigned int reserved_4 : 1; /* [19]  */
60         unsigned int phy0_d3_skew : 3; /* [22..20]  */
61         unsigned int reserved_5 : 9; /* [31..23]  */
62     } bits;
63 
64     /* Define an unsigned member */
65     unsigned int u32;
66 } U_PHY_SKEW_LINK;
67 
68 /* Define the union U_PHY_EN_LINK */
69 typedef union {
70     /* Define the struct bits */
71     struct {
72         unsigned int phy_da_d0_valid : 1; /* [0]  */
73         unsigned int phy_da_d1_valid : 1; /* [1]  */
74         unsigned int phy_da_d2_valid : 1; /* [2]  */
75         unsigned int phy_da_d3_valid : 1; /* [3]  */
76         unsigned int reserved_0 : 4; /* [7..4]  */
77         unsigned int phy_d0_term_en : 1; /* [8]  */
78         unsigned int phy_d1_term_en : 1; /* [9]  */
79         unsigned int phy_d2_term_en : 1; /* [10]  */
80         unsigned int phy_d3_term_en : 1; /* [11]  */
81         unsigned int phy_clk0_term_en : 1; /* [12]  */
82         unsigned int phy_clk1_term_en : 1; /* [13]  */
83         unsigned int reserved_1 : 18; /* [31..14]  */
84     } bits;
85 
86     /* Define an unsigned member */
87     unsigned int u32;
88 } U_PHY_EN_LINK;
89 
90 /* Define the union U_PHY_CFG_LINK */
91 typedef union {
92     /* Define the struct bits */
93     struct {
94         unsigned int phy0_da_ulpb : 4; /* [3..0]  */
95         unsigned int phy0_da_ulpb_ck0 : 1; /* [4]  */
96         unsigned int phy0_da_ulpb_ck1 : 1; /* [5]  */
97         unsigned int reserved_0 : 2; /* [7..6]  */
98         unsigned int phy0_rg_it_lp : 2; /* [9..8]  */
99         unsigned int phy0_rg_it_ck : 2; /* [11..10]  */
100         unsigned int phy0_rg_it_dt : 2; /* [13..12]  */
101         unsigned int phy0_rg_sa_en : 1; /* [14]  */
102         unsigned int reserved_1 : 17; /* [31..15]  */
103     } bits;
104 
105     /* Define an unsigned member */
106     unsigned int u32;
107 } U_PHY_CFG_LINK;
108 
109 /* Define the union U_PHY_DATA_LINK */
110 typedef union {
111     /* Define the struct bits */
112     struct {
113         unsigned int phy_data0_mipi : 8; /* [7..0]  */
114         unsigned int phy_data1_mipi : 8; /* [15..8]  */
115         unsigned int phy_data2_mipi : 8; /* [23..16]  */
116         unsigned int phy_data3_mipi : 8; /* [31..24]  */
117     } bits;
118 
119     /* Define an unsigned member */
120     unsigned int u32;
121 } U_PHY_DATA_LINK;
122 
123 /* Define the union U_PHY_PH_MIPI_LINK */
124 typedef union {
125     /* Define the struct bits */
126     struct {
127         unsigned int phy_ph0_mipi : 8; /* [7..0]  */
128         unsigned int phy_ph1_mipi : 8; /* [15..8]  */
129         unsigned int phy_ph2_mipi : 8; /* [23..16]  */
130         unsigned int phy_ph3_mipi : 8; /* [31..24]  */
131     } bits;
132 
133     /* Define an unsigned member */
134     unsigned int u32;
135 } U_PHY_PH_MIPI_LINK;
136 
137 /* Define the union U_PHY_DATA_MIPI_LINK */
138 typedef union {
139     /* Define the struct bits */
140     struct {
141         unsigned int phy_data0_mipi_hs : 8; /* [7..0]  */
142         unsigned int phy_data1_mipi_hs : 8; /* [15..8]  */
143         unsigned int phy_data2_mipi_hs : 8; /* [23..16]  */
144         unsigned int phy_data3_mipi_hs : 8; /* [31..24]  */
145     } bits;
146 
147     /* Define an unsigned member */
148     unsigned int u32;
149 } U_PHY_DATA_MIPI_LINK;
150 
151 /* Define the union U_PHY_SYNC_DCT_LINK */
152 typedef union {
153     /* Define the struct bits */
154     struct {
155         unsigned int cil_raw_type0 : 3; /* [2..0]  */
156         unsigned int reserved_0 : 5; /* [7..3]  */
157         unsigned int cil_code_big_endian0 : 1; /* [8]  */
158         unsigned int reserved_1 : 3; /* [11..9]  */
159         unsigned int cil_raw_type1 : 3; /* [14..12]  */
160         unsigned int reserved_2 : 5; /* [19..15]  */
161         unsigned int cil_code_big_endian1 : 1; /* [20]  */
162         unsigned int reserved_3 : 4; /* [24..21]  */
163         unsigned int cil_sync_det_mode : 1; /* [25]  */
164         unsigned int reserved_4 : 6; /* [31..26]  */
165     } bits;
166 
167     /* Define an unsigned member */
168     unsigned int u32;
169 } U_PHY_SYNC_DCT_LINK;
170 
171 /* Define the union U_PHY_SYNC_SOF0_LINK */
172 typedef union {
173     /* Define the struct bits */
174     struct {
175         unsigned int cil_sof0_word4_0 : 16; /* [15..0]  */
176         unsigned int cil_sof1_word4_0 : 16; /* [31..16]  */
177     } bits;
178 
179     /* Define an unsigned member */
180     unsigned int u32;
181 } U_PHY_SYNC_SOF0_LINK;
182 
183 /* Define the union U_PHY_SYNC_SOF1_LINK */
184 typedef union {
185     /* Define the struct bits */
186     struct {
187         unsigned int cil_sof0_word4_1 : 16; /* [15..0]  */
188         unsigned int cil_sof1_word4_1 : 16; /* [31..16]  */
189     } bits;
190 
191     /* Define an unsigned member */
192     unsigned int u32;
193 } U_PHY_SYNC_SOF1_LINK;
194 
195 /* Define the union U_PHY_SYNC_SOF2_LINK */
196 typedef union {
197     /* Define the struct bits */
198     struct {
199         unsigned int cil_sof0_word4_2 : 16; /* [15..0]  */
200         unsigned int cil_sof1_word4_2 : 16; /* [31..16]  */
201     } bits;
202 
203     /* Define an unsigned member */
204     unsigned int u32;
205 } U_PHY_SYNC_SOF2_LINK;
206 
207 /* Define the union U_PHY_SYNC_SOF3_LINK */
208 typedef union {
209     /* Define the struct bits */
210     struct {
211         unsigned int cil_sof0_word4_3 : 16; /* [15..0]  */
212         unsigned int cil_sof1_word4_3 : 16; /* [31..16]  */
213     } bits;
214 
215     /* Define an unsigned member */
216     unsigned int u32;
217 } U_PHY_SYNC_SOF3_LINK;
218 
219 /* Define the union U_PHY_OUT_VALID_LINK */
220 typedef union {
221     /* Define the struct bits */
222     struct {
223         unsigned int cil_lvds_out_valid : 4; /* [3..0]  */
224         unsigned int cil_mipi_out_valid : 4; /* [7..4]  */
225         unsigned int reserved_0 : 24; /* [31..8]  */
226     } bits;
227 
228     /* Define an unsigned member */
229     unsigned int u32;
230 } U_PHY_OUT_VALID_LINK;
231 
232 /* Define the union U_PHY_DATA_LVDS_LINK */
233 typedef union {
234     /* Define the struct bits */
235     struct {
236         unsigned int phy_data0_lvds_hs : 8; /* [7..0]  */
237         unsigned int phy_data1_lvds_hs : 8; /* [15..8]  */
238         unsigned int phy_data2_lvds_hs : 8; /* [23..16]  */
239         unsigned int phy_data3_lvds_hs : 8; /* [31..24]  */
240     } bits;
241 
242     /* Define an unsigned member */
243     unsigned int u32;
244 } U_PHY_DATA_LVDS_LINK;
245 
246 /* Define the union U_PHY_PIX_PUM_LINK */
247 typedef union {
248     /* Define the struct bits */
249     struct {
250         unsigned int phy_lane02_pix_num : 16; /* [15..0]  */
251         unsigned int phy_lane13_pix_num : 16; /* [31..16]  */
252     } bits;
253 
254     /* Define an unsigned member */
255     unsigned int u32;
256 } U_PHY_PIX_PUM_LINK;
257 
258 /* Define the union U_PHY_SYNC_SOL0_LINK */
259 typedef union {
260     /* Define the struct bits */
261     struct {
262         unsigned int cil_sol0_word4_0 : 16; /* [15..0]  */
263         unsigned int cil_sol1_word4_0 : 16; /* [31..16]  */
264     } bits;
265 
266     /* Define an unsigned member */
267     unsigned int u32;
268 } U_PHY_SYNC_SOL0_LINK;
269 
270 /* Define the union U_PHY_SYNC_SOL1_LINK */
271 typedef union {
272     /* Define the struct bits */
273     struct {
274         unsigned int cil_sol0_word4_1 : 16; /* [15..0]  */
275         unsigned int cil_sol1_word4_1 : 16; /* [31..16]  */
276     } bits;
277 
278     /* Define an unsigned member */
279     unsigned int u32;
280 } U_PHY_SYNC_SOL1_LINK;
281 
282 /* Define the union U_PHY_SYNC_SOL2_LINK */
283 typedef union {
284     /* Define the struct bits */
285     struct {
286         unsigned int cil_sol0_word4_2 : 16; /* [15..0]  */
287         unsigned int cil_sol1_word4_2 : 16; /* [31..16]  */
288     } bits;
289 
290     /* Define an unsigned member */
291     unsigned int u32;
292 } U_PHY_SYNC_SOL2_LINK;
293 
294 /* Define the union U_PHY_SYNC_SOL3_LINK */
295 typedef union {
296     /* Define the struct bits */
297     struct {
298         unsigned int cil_sol0_word4_3 : 16; /* [15..0]  */
299         unsigned int cil_sol1_word4_3 : 16; /* [31..16]  */
300     } bits;
301 
302     /* Define an unsigned member */
303     unsigned int u32;
304 } U_PHY_SYNC_SOL3_LINK;
305 
306 /* Define the union U_CIL_TIMEOUT_LINK */
307 typedef union {
308     /* Define the struct bits */
309     struct {
310         unsigned int cil_timeout_cyc : 24; /* [23..0]  */
311         unsigned int reserved_0 : 6; /* [29..24]  */
312         unsigned int cil_timeout_en_ck : 1; /* [30]  */
313         unsigned int cil_timeout_en_d : 1; /* [31]  */
314     } bits;
315 
316     /* Define an unsigned member */
317     unsigned int u32;
318 } U_CIL_TIMEOUT_LINK;
319 
320 /* Define the union U_CIL_FSM0_LINK */
321 typedef union {
322     /* Define the struct bits */
323     struct {
324         unsigned int cil_cyc_clk_lp00 : 6; /* [5..0]  */
325         unsigned int reserved_0 : 2; /* [7..6]  */
326         unsigned int cil_cyc_clk_hs0 : 6; /* [13..8]  */
327         unsigned int reserved_1 : 2; /* [15..14]  */
328         unsigned int cil_cyc_clk_hs_exit : 6; /* [21..16]  */
329         unsigned int reserved_2 : 2; /* [23..22]  */
330         unsigned int cil_cyc_clk_hs_trail : 6; /* [29..24]  */
331         unsigned int reserved_3 : 2; /* [31..30]  */
332     } bits;
333 
334     /* Define an unsigned member */
335     unsigned int u32;
336 } U_CIL_FSM0_LINK;
337 
338 /* Define the union U_CIL_FSM_ST0_LINK */
339 typedef union {
340     /* Define the struct bits */
341     struct {
342         unsigned int cil_cur_st_d0 : 4; /* [3..0]  */
343         unsigned int cil_nxt_st_d0 : 4; /* [7..4]  */
344         unsigned int cil_cur_st_d1 : 4; /* [11..8]  */
345         unsigned int cil_nxt_st_d1 : 4; /* [15..12]  */
346         unsigned int cil_cur_st_d2 : 4; /* [19..16]  */
347         unsigned int cil_nxt_st_d2 : 4; /* [23..20]  */
348         unsigned int cil_cur_st_d3 : 4; /* [27..24]  */
349         unsigned int cil_nxt_st_d3 : 4; /* [31..28]  */
350     } bits;
351 
352     /* Define an unsigned member */
353     unsigned int u32;
354 } U_CIL_FSM_ST0_LINK;
355 
356 /* Define the union U_CIL_FSM_ST1_LINK */
357 typedef union {
358     /* Define the struct bits */
359     struct {
360         unsigned int cil_cur_st_ck : 4; /* [3..0]  */
361         unsigned int cil_nxt_st_ck : 4; /* [7..4]  */
362         unsigned int cil_cur_st_ck2 : 4; /* [11..8]  */
363         unsigned int cil_nxt_st_ck2 : 4; /* [15..12]  */
364         unsigned int reserved_0 : 16; /* [31..16]  */
365     } bits;
366 
367     /* Define an unsigned member */
368     unsigned int u32;
369 } U_CIL_FSM_ST1_LINK;
370 
371 /* Define the union U_PHY_ST0_LINK */
372 typedef union {
373     /* Define the struct bits */
374     struct {
375         unsigned int physt0_rg_en_d : 4; /* [3..0]  */
376         unsigned int physt0_rg_en_clk0 : 1; /* [4]  */
377         unsigned int physt0_rg_en_clk1 : 1; /* [5]  */
378         unsigned int reserved_0 : 2; /* [7..6]  */
379         unsigned int physt0_rg_en_cmos : 1; /* [8]  */
380         unsigned int reserved_1 : 3; /* [11..9]  */
381         unsigned int physt0_rg_en_lp0 : 1; /* [12]  */
382         unsigned int physt0_rg_en_lp1 : 1; /* [13]  */
383         unsigned int reserved_2 : 2; /* [15..14]  */
384         unsigned int physt0_rg_faclk0_en : 1; /* [16]  */
385         unsigned int physt0_rg_faclk1_en : 1; /* [17]  */
386         unsigned int reserved_3 : 2; /* [19..18]  */
387         unsigned int physt0_rg_en_2l2l : 1; /* [20]  */
388         unsigned int reserved_4 : 3; /* [23..21]  */
389         unsigned int physt0_rg_mipi_mode0 : 1; /* [24]  */
390         unsigned int physt0_rg_mipi_mode1 : 1; /* [25]  */
391         unsigned int reserved_5 : 6; /* [31..26]  */
392     } bits;
393 
394     /* Define an unsigned member */
395     unsigned int u32;
396 } U_PHY_ST0_LINK;
397 
398 /* Define the union U_PHY_ST1_LINK */
399 typedef union {
400     /* Define the struct bits */
401     struct {
402         unsigned int physt0_clk0_skew : 3; /* [2..0]  */
403         unsigned int reserved_0 : 1; /* [3]  */
404         unsigned int physt0_clk1_skew : 3; /* [6..4]  */
405         unsigned int reserved_1 : 1; /* [7]  */
406         unsigned int physt0_d0_skew : 3; /* [10..8]  */
407         unsigned int reserved_2 : 1; /* [11]  */
408         unsigned int physt0_d1_skew : 3; /* [14..12]  */
409         unsigned int reserved_3 : 1; /* [15]  */
410         unsigned int physt0_d2_skew : 3; /* [18..16]  */
411         unsigned int reserved_4 : 1; /* [19]  */
412         unsigned int physt0_d3_skew : 3; /* [22..20]  */
413         unsigned int reserved_5 : 9; /* [31..23]  */
414     } bits;
415 
416     /* Define an unsigned member */
417     unsigned int u32;
418 } U_PHY_ST1_LINK;
419 
420 /* Define the union U_PHY_ST2_LINK */
421 typedef union {
422     /* Define the struct bits */
423     struct {
424         unsigned int physt_da_d0_valid : 1; /* [0]  */
425         unsigned int physt_da_d1_valid : 1; /* [1]  */
426         unsigned int physt_da_d2_valid : 1; /* [2]  */
427         unsigned int physt_da_d3_valid : 1; /* [3]  */
428         unsigned int reserved_0 : 4; /* [7..4]  */
429         unsigned int physt_d0_term_en : 1; /* [8]  */
430         unsigned int physt_d1_term_en : 1; /* [9]  */
431         unsigned int physt_d2_term_en : 1; /* [10]  */
432         unsigned int physt_d3_term_en : 1; /* [11]  */
433         unsigned int physt_clk0_term_en : 1; /* [12]  */
434         unsigned int physt_clk1_term_en : 1; /* [13]  */
435         unsigned int reserved_1 : 18; /* [31..14]  */
436     } bits;
437 
438     /* Define an unsigned member */
439     unsigned int u32;
440 } U_PHY_ST2_LINK;
441 
442 /* Define the union U_PHY_ST3_LINK */
443 typedef union {
444     /* Define the struct bits */
445     struct {
446         unsigned int physt0_da_ulpb : 4; /* [3..0]  */
447         unsigned int physt0_da_ulpb_ck0 : 1; /* [4]  */
448         unsigned int physt0_da_ulpb_ck1 : 1; /* [5]  */
449         unsigned int reserved_0 : 2; /* [7..6]  */
450         unsigned int physt0_rg_it_lp : 2; /* [9..8]  */
451         unsigned int physt0_rg_it_ck : 2; /* [11..10]  */
452         unsigned int physt0_rg_it_dt : 2; /* [13..12]  */
453         unsigned int physt0_rg_sa_en : 1; /* [14]  */
454         unsigned int reserved_1 : 17; /* [31..15]  */
455     } bits;
456 
457     /* Define an unsigned member */
458     unsigned int u32;
459 } U_PHY_ST3_LINK;
460 
461 /* Define the union U_CIL_FSM1_LINK */
462 typedef union {
463     /* Define the struct bits */
464     struct {
465         unsigned int cil_cyc_data_lp00 : 6; /* [5..0]  */
466         unsigned int reserved_0 : 2; /* [7..6]  */
467         unsigned int cil_cyc_data_hs0 : 6; /* [13..8]  */
468         unsigned int reserved_1 : 2; /* [15..14]  */
469         unsigned int cil_cyc_data_hs_exit : 6; /* [21..16]  */
470         unsigned int reserved_2 : 2; /* [23..22]  */
471         unsigned int cil_cyc_data_hs_trail : 6; /* [29..24]  */
472         unsigned int reserved_3 : 2; /* [31..30]  */
473     } bits;
474 
475     /* Define an unsigned member */
476     unsigned int u32;
477 } U_CIL_FSM1_LINK;
478 
479 /* Define the union U_SKEW_CAL_LENGTH0_LINK */
480 typedef union {
481     /* Define the struct bits */
482     struct {
483         unsigned int skew_cal_length0 : 16; /* [15..0]  */
484         unsigned int skew_cal_length1 : 16; /* [31..16]  */
485     } bits;
486 
487     /* Define an unsigned member */
488     unsigned int u32;
489 } U_SKEW_CAL_LENGTH0_LINK;
490 
491 /* Define the union U_SKEW_CAL_LENGTH1_LINK */
492 typedef union {
493     /* Define the struct bits */
494     struct {
495         unsigned int skew_cal_length2 : 16; /* [15..0]  */
496         unsigned int skew_cal_length3 : 16; /* [31..16]  */
497     } bits;
498 
499     /* Define an unsigned member */
500     unsigned int u32;
501 } U_SKEW_CAL_LENGTH1_LINK;
502 
503 /* Define the union U_MIPI_CIL_INT_RAW_LINK */
504 typedef union {
505     /* Define the struct bits */
506     struct {
507         unsigned int err0_escape_d0_raw : 1; /* [0]  */
508         unsigned int err0_escape_d1_raw : 1; /* [1]  */
509         unsigned int err0_escape_d2_raw : 1; /* [2]  */
510         unsigned int err0_escape_d3_raw : 1; /* [3]  */
511         unsigned int err0_escape_ck0_raw : 1; /* [4]  */
512         unsigned int err0_escape_ck1_raw : 1; /* [5]  */
513         unsigned int reserved_0 : 2; /* [7..6]  */
514         unsigned int err0_timeout_d0_raw : 1; /* [8]  */
515         unsigned int err0_timeout_d1_raw : 1; /* [9]  */
516         unsigned int err0_timeout_d2_raw : 1; /* [10]  */
517         unsigned int err0_timeout_d3_raw : 1; /* [11]  */
518         unsigned int err0_timeout_ck0_raw : 1; /* [12]  */
519         unsigned int err0_timeout_ck1_raw : 1; /* [13]  */
520         unsigned int reserved_1 : 18; /* [31..14]  */
521     } bits;
522 
523     /* Define an unsigned member */
524     unsigned int u32;
525 } U_MIPI_CIL_INT_RAW_LINK;
526 
527 /* Define the union U_MIPI_CIL_INT_LINK */
528 typedef union {
529     /* Define the struct bits */
530     struct {
531         unsigned int err0_escape_d0_st : 1; /* [0]  */
532         unsigned int err0_escape_d1_st : 1; /* [1]  */
533         unsigned int err0_escape_d2_st : 1; /* [2]  */
534         unsigned int err0_escape_d3_st : 1; /* [3]  */
535         unsigned int err0_escape_ck0_st : 1; /* [4]  */
536         unsigned int err0_escape_ck1_st : 1; /* [5]  */
537         unsigned int reserved_0 : 2; /* [7..6]  */
538         unsigned int err0_timeout_d0_st : 1; /* [8]  */
539         unsigned int err0_timeout_d1_st : 1; /* [9]  */
540         unsigned int err0_timeout_d2_st : 1; /* [10]  */
541         unsigned int err0_timeout_d3_st : 1; /* [11]  */
542         unsigned int err0_timeout_ck0_st : 1; /* [12]  */
543         unsigned int err0_timeout_ck1_st : 1; /* [13]  */
544         unsigned int reserved_1 : 18; /* [31..14]  */
545     } bits;
546 
547     /* Define an unsigned member */
548     unsigned int u32;
549 } U_MIPI_CIL_INT_LINK;
550 
551 /* Define the union U_MIPI_CIL_INT_MSK_LINK */
552 typedef union {
553     /* Define the struct bits */
554     struct {
555         unsigned int err3_escape_d0_msk : 1; /* [0]  */
556         unsigned int err3_escape_d1_msk : 1; /* [1]  */
557         unsigned int err3_escape_d2_msk : 1; /* [2]  */
558         unsigned int err3_escape_d3_msk : 1; /* [3]  */
559         unsigned int err3_escape_ck0_msk : 1; /* [4]  */
560         unsigned int err3_escape_ck1_msk : 1; /* [5]  */
561         unsigned int reserved_0 : 2; /* [7..6]  */
562         unsigned int err3_timeout_d0_msk : 1; /* [8]  */
563         unsigned int err3_timeout_d1_msk : 1; /* [9]  */
564         unsigned int err3_timeout_d2_msk : 1; /* [10]  */
565         unsigned int err3_timeout_d3_msk : 1; /* [11]  */
566         unsigned int err3_timeout_ck0_msk : 1; /* [12]  */
567         unsigned int err3_timeout_ck1_msk : 1; /* [13]  */
568         unsigned int reserved_1 : 18; /* [31..14]  */
569     } bits;
570 
571     /* Define an unsigned member */
572     unsigned int u32;
573 } U_MIPI_CIL_INT_MSK_LINK;
574 
575 /* Define the union U_HS_MODE_SELECT */
576 typedef union {
577     /* Define the struct bits */
578     struct {
579         unsigned int hs_mode : 1; /* [0]  */
580         unsigned int reserved_0 : 31; /* [31..1]  */
581     } bits;
582 
583     /* Define an unsigned member */
584     unsigned int u32;
585 } U_HS_MODE_SELECT;
586 
587 /* Define the union U_PHY_EN */
588 typedef union {
589     /* Define the struct bits */
590     struct {
591         unsigned int phy0_en : 1; /* [0]  */
592         unsigned int reserved_0 : 31; /* [31..1]  */
593     } bits;
594 
595     /* Define an unsigned member */
596     unsigned int u32;
597 } U_PHY_EN;
598 
599 /* Define the union U_LANE_EN */
600 typedef union {
601     /* Define the struct bits */
602     struct {
603         unsigned int lane0_en : 1; /* [0]  */
604         unsigned int lane1_en : 1; /* [1]  */
605         unsigned int lane2_en : 1; /* [2]  */
606         unsigned int lane3_en : 1; /* [3]  */
607         unsigned int reserved_0 : 28; /* [31..4]  */
608     } bits;
609 
610     /* Define an unsigned member */
611     unsigned int u32;
612 } U_LANE_EN;
613 
614 /* Define the union U_PHY_CIL_CTRL */
615 typedef union {
616     /* Define the struct bits */
617     struct {
618         unsigned int phycil0_cken : 1; /* [0]  */
619         unsigned int reserved_0 : 7; /* [7..1]  */
620         unsigned int cil0_rst_req : 1; /* [8]  */
621         unsigned int cil1_rst_req : 1; /* [9]  */
622         unsigned int reserved_1 : 22; /* [31..10]  */
623     } bits;
624 
625     /* Define an unsigned member */
626     unsigned int u32;
627 } U_PHY_CIL_CTRL;
628 
629 /* Define the union U_PHYCFG_MODE */
630 typedef union {
631     /* Define the struct bits */
632     struct {
633         unsigned int phycil0_0_cfg_mode : 3; /* [2..0]  */
634         unsigned int phycil0_cfg_mode_sel : 1; /* [3]  */
635         unsigned int phycil0_1_cfg_mode : 3; /* [6..4]  */
636         unsigned int reserved_0 : 25; /* [31..7]  */
637     } bits;
638 
639     /* Define an unsigned member */
640     unsigned int u32;
641 } U_PHYCFG_MODE;
642 
643 /* Define the union U_PHYCFG_EN */
644 typedef union {
645     /* Define the struct bits */
646     struct {
647         unsigned int phycil0_cfg_en : 1; /* [0]  */
648         unsigned int reserved_0 : 31; /* [31..1]  */
649     } bits;
650 
651     /* Define an unsigned member */
652     unsigned int u32;
653 } U_PHYCFG_EN;
654 
655 /* Define the union U_CHN0_MEM_CTRL */
656 typedef union {
657     /* Define the struct bits */
658     struct {
659         unsigned int chn0_mem_ck_gt : 1; /* [0]  */
660         unsigned int reserved_0 : 3; /* [3..1]  */
661         unsigned int chn0_mem_emasa : 1; /* [4]  */
662         unsigned int chn0_mem_ret1n : 1; /* [5]  */
663         unsigned int reserved_1 : 2; /* [7..6]  */
664         unsigned int chn0_mem_emaa : 3; /* [10..8]  */
665         unsigned int reserved_2 : 1; /* [11]  */
666         unsigned int chn0_mem_emab : 3; /* [14..12]  */
667         unsigned int reserved_3 : 17; /* [31..15]  */
668     } bits;
669 
670     /* Define an unsigned member */
671     unsigned int u32;
672 } U_CHN0_MEM_CTRL;
673 
674 /* Define the union U_CHN0_CLR_EN */
675 typedef union {
676     /* Define the struct bits */
677     struct {
678         unsigned int chn0_clr_en_lvds : 1; /* [0]  */
679         unsigned int chn0_clr_en_align : 1; /* [1]  */
680         unsigned int reserved_0 : 30; /* [31..2]  */
681     } bits;
682 
683     /* Define an unsigned member */
684     unsigned int u32;
685 } U_CHN0_CLR_EN;
686 
687 /* Define the union U_CHN1_MEM_CTRL */
688 typedef union {
689     /* Define the struct bits */
690     struct {
691         unsigned int chn1_mem_ck_gt : 1; /* [0]  */
692         unsigned int reserved_0 : 3; /* [3..1]  */
693         unsigned int chn1_mem_emasa : 1; /* [4]  */
694         unsigned int chn1_mem_ret1n : 1; /* [5]  */
695         unsigned int reserved_1 : 2; /* [7..6]  */
696         unsigned int chn1_mem_emaa : 3; /* [10..8]  */
697         unsigned int reserved_2 : 1; /* [11]  */
698         unsigned int chn1_mem_emab : 3; /* [14..12]  */
699         unsigned int reserved_3 : 17; /* [31..15]  */
700     } bits;
701 
702     /* Define an unsigned member */
703     unsigned int u32;
704 } U_CHN1_MEM_CTRL;
705 
706 /* Define the union U_CHN1_CLR_EN */
707 typedef union {
708     /* Define the struct bits */
709     struct {
710         unsigned int chn1_clr_en_lvds : 1; /* [0]  */
711         unsigned int chn1_clr_en_align : 1; /* [1]  */
712         unsigned int reserved_0 : 30; /* [31..2]  */
713     } bits;
714 
715     /* Define an unsigned member */
716     unsigned int u32;
717 } U_CHN1_CLR_EN;
718 
719 /* Define the union U_MIPI_TEST_PHY */
720 typedef union {
721     /* Define the struct bits */
722     struct {
723         unsigned int test_phy_en : 1; /* [0]  */
724         unsigned int reserved_0 : 3; /* [3..1]  */
725         unsigned int test_phy_srst_req : 1; /* [4]  */
726         unsigned int reserved_1 : 27; /* [31..5]  */
727     } bits;
728 
729     /* Define an unsigned member */
730     unsigned int u32;
731 } U_MIPI_TEST_PHY;
732 
733 /* Define the union U_COLORBAR_CTRL_LINK0 */
734 typedef union {
735     /* Define the struct bits */
736     struct {
737         unsigned int colorbar0_en : 1; /* [0]  */
738         unsigned int colorbar0_mode : 1; /* [1]  */
739         unsigned int colorbar0_pattern : 1; /* [2]  */
740         unsigned int colorbar0_line_init : 1; /* [3]  */
741         unsigned int colorbar0_width : 10; /* [13..4]  */
742         unsigned int reserved_0 : 18; /* [31..14]  */
743     } bits;
744 
745     /* Define an unsigned member */
746     unsigned int u32;
747 } U_COLORBAR_CTRL_LINK0;
748 
749 /* Define the union U_COLORBAR_INIT_LINK0 */
750 typedef union {
751     /* Define the struct bits */
752     struct {
753         unsigned int colorbar0_data_init : 12; /* [11..0]  */
754         unsigned int reserved_0 : 4; /* [15..12]  */
755         unsigned int colorbar0_data_inc : 12; /* [27..16]  */
756         unsigned int reserved_1 : 4; /* [31..28]  */
757     } bits;
758 
759     /* Define an unsigned member */
760     unsigned int u32;
761 } U_COLORBAR_INIT_LINK0;
762 
763 /* Define the union U_COLORBAR_V_BLK_LINK0 */
764 typedef union {
765     /* Define the struct bits */
766     struct {
767         unsigned int colorbar0_vertical_blk : 20; /* [19..0]  */
768         unsigned int reserved_0 : 12; /* [31..20]  */
769     } bits;
770 
771     /* Define an unsigned member */
772     unsigned int u32;
773 } U_COLORBAR_V_BLK_LINK0;
774 
775 /* Define the union U_COLORBAR_H_BLK_LINK0 */
776 typedef union {
777     /* Define the struct bits */
778     struct {
779         unsigned int colorbar0_line_blk : 20; /* [19..0]  */
780         unsigned int reserved_0 : 12; /* [31..20]  */
781     } bits;
782 
783     /* Define an unsigned member */
784     unsigned int u32;
785 } U_COLORBAR_H_BLK_LINK0;
786 
787 /* Define the union U_COLORBAR_IMG_SIZE_LINK0 */
788 typedef union {
789     /* Define the struct bits */
790     struct {
791         unsigned int colorbar0_imgwidth : 16; /* [15..0]  */
792         unsigned int colorbar0_imgheight : 16; /* [31..16]  */
793     } bits;
794 
795     /* Define an unsigned member */
796     unsigned int u32;
797 } U_COLORBAR_IMG_SIZE_LINK0;
798 
799 /* Define the union U_COLORBAR_SYNC_CODE0_LINK0 */
800 typedef union {
801     /* Define the struct bits */
802     struct {
803         unsigned int colorbar0_sof : 12; /* [11..0]  */
804         unsigned int reserved_0 : 4; /* [15..12]  */
805         unsigned int colorbar0_eof : 12; /* [27..16]  */
806         unsigned int reserved_1 : 4; /* [31..28]  */
807     } bits;
808 
809     /* Define an unsigned member */
810     unsigned int u32;
811 } U_COLORBAR_SYNC_CODE0_LINK0;
812 
813 /* Define the union U_COLORBAR_SYNC_CODE1_LINK0 */
814 typedef union {
815     /* Define the struct bits */
816     struct {
817         unsigned int colorbar0_sol : 12; /* [11..0]  */
818         unsigned int reserved_0 : 4; /* [15..12]  */
819         unsigned int colorbar0_eol : 12; /* [27..16]  */
820         unsigned int reserved_1 : 4; /* [31..28]  */
821     } bits;
822 
823     /* Define an unsigned member */
824     unsigned int u32;
825 } U_COLORBAR_SYNC_CODE1_LINK0;
826 
827 /* Define the union U_PHY0_TEST_OUT */
828 typedef union {
829     /* Define the struct bits */
830     struct {
831         unsigned int test_phy0_resault : 4; /* [3..0]  */
832         unsigned int test_phy0_compare : 4; /* [7..4]  */
833         unsigned int test_phy0_done : 4; /* [11..8]  */
834         unsigned int reserved_0 : 20; /* [31..12]  */
835     } bits;
836 
837     /* Define an unsigned member */
838     unsigned int u32;
839 } U_PHY0_TEST_OUT;
840 
841 /* Define the union U_MIPI_INT_RAW */
842 typedef union {
843     /* Define the struct bits */
844     struct {
845         unsigned int int_phycil0_raw : 1; /* [0]  */
846         unsigned int reserved_0 : 3; /* [3..1]  */
847         unsigned int int_chn0_raw : 1; /* [4]  */
848         unsigned int int_chn1_raw : 1; /* [5]  */
849         unsigned int reserved_1 : 26; /* [31..6]  */
850     } bits;
851 
852     /* Define an unsigned member */
853     unsigned int u32;
854 } U_MIPI_INT_RAW;
855 
856 /* Define the union U_MIPI_INT_ST */
857 typedef union {
858     /* Define the struct bits */
859     struct {
860         unsigned int int_phycil0_st : 1; /* [0]  */
861         unsigned int reserved_0 : 3; /* [3..1]  */
862         unsigned int int_chn0_st : 1; /* [4]  */
863         unsigned int int_chn1_st : 1; /* [5]  */
864         unsigned int reserved_1 : 26; /* [31..6]  */
865     } bits;
866 
867     /* Define an unsigned member */
868     unsigned int u32;
869 } U_MIPI_INT_ST;
870 
871 /* Define the union U_MIPI_INT_MSK */
872 typedef union {
873     /* Define the struct bits */
874     struct {
875         unsigned int int_phycil0_mask : 1; /* [0]  */
876         unsigned int reserved_0 : 3; /* [3..1]  */
877         unsigned int int_chn0_mask : 1; /* [4]  */
878         unsigned int int_chn1_mask : 1; /* [5]  */
879         unsigned int reserved_1 : 26; /* [31..6]  */
880     } bits;
881 
882     /* Define an unsigned member */
883     unsigned int u32;
884 } U_MIPI_INT_MSK;
885 
886 /* Define the union U_MIPI_LANES_NUM */
887 typedef union {
888     /* Define the struct bits */
889     struct {
890         unsigned int lane_num : 3; /* [2..0]  */
891         unsigned int reserved_0 : 29; /* [31..3]  */
892     } bits;
893 
894     /* Define an unsigned member */
895     unsigned int u32;
896 } U_MIPI_LANES_NUM;
897 
898 /* Define the union U_MIPI_MAIN_INT_ST */
899 typedef union {
900     /* Define the struct bits */
901     struct {
902         unsigned int reserved_0 : 1; /* [0]  */
903         unsigned int status_int_pkt_fatal : 1; /* [1]  */
904         unsigned int status_int_frame_fatal : 1; /* [2]  */
905         unsigned int reserved_1 : 14; /* [16..3]  */
906         unsigned int status_int_pkt : 1; /* [17]  */
907         unsigned int status_int_line : 1; /* [18]  */
908         unsigned int reserved_2 : 13; /* [31..19]  */
909     } bits;
910 
911     /* Define an unsigned member */
912     unsigned int u32;
913 } U_MIPI_MAIN_INT_ST;
914 
915 /* Define the union U_MIPI_DI_1 */
916 typedef union {
917     /* Define the struct bits */
918     struct {
919         unsigned int di0_dt : 6; /* [5..0]  */
920         unsigned int di0_vc : 2; /* [7..6]  */
921         unsigned int di1_dt : 6; /* [13..8]  */
922         unsigned int di1_vc : 2; /* [15..14]  */
923         unsigned int di2_dt : 6; /* [21..16]  */
924         unsigned int di2_vc : 2; /* [23..22]  */
925         unsigned int di3_dt : 6; /* [29..24]  */
926         unsigned int di3_vc : 2; /* [31..30]  */
927     } bits;
928 
929     /* Define an unsigned member */
930     unsigned int u32;
931 } U_MIPI_DI_1;
932 
933 /* Define the union U_MIPI_DI_2 */
934 typedef union {
935     /* Define the struct bits */
936     struct {
937         unsigned int di4_dt : 6; /* [5..0]  */
938         unsigned int di4_vc : 2; /* [7..6]  */
939         unsigned int di5_dt : 6; /* [13..8]  */
940         unsigned int di5_vc : 2; /* [15..14]  */
941         unsigned int di6_dt : 6; /* [21..16]  */
942         unsigned int di6_vc : 2; /* [23..22]  */
943         unsigned int di7_dt : 6; /* [29..24]  */
944         unsigned int di7_vc : 2; /* [31..30]  */
945     } bits;
946 
947     /* Define an unsigned member */
948     unsigned int u32;
949 } U_MIPI_DI_2;
950 
951 /* Define the union U_MIPI_PKT_INTR_ST */
952 typedef union {
953     /* Define the struct bits */
954     struct {
955         unsigned int vc0_err_crc : 1; /* [0]  */
956         unsigned int vc1_err_crc : 1; /* [1]  */
957         unsigned int vc2_err_crc : 1; /* [2]  */
958         unsigned int vc3_err_crc : 1; /* [3]  */
959         unsigned int reserved_0 : 12; /* [15..4]  */
960         unsigned int err_ecc_double : 1; /* [16]  */
961         unsigned int reserved_1 : 15; /* [31..17]  */
962     } bits;
963 
964     /* Define an unsigned member */
965     unsigned int u32;
966 } U_MIPI_PKT_INTR_ST;
967 
968 /* Define the union U_MIPI_PKT_INTR_MSK */
969 typedef union {
970     /* Define the struct bits */
971     struct {
972         unsigned int mask_vc0_err_crc : 1; /* [0]  */
973         unsigned int mask_vc1_err_crc : 1; /* [1]  */
974         unsigned int mask_vc2_err_crc : 1; /* [2]  */
975         unsigned int mask_vc3_err_crc : 1; /* [3]  */
976         unsigned int reserved_0 : 12; /* [15..4]  */
977         unsigned int mask_err_ecc_double : 1; /* [16]  */
978         unsigned int reserved_1 : 15; /* [31..17]  */
979     } bits;
980 
981     /* Define an unsigned member */
982     unsigned int u32;
983 } U_MIPI_PKT_INTR_MSK;
984 
985 /* Define the union U_MIPI_PKT_INTR_FORCE */
986 typedef union {
987     /* Define the struct bits */
988     struct {
989         unsigned int force_vc0_err_crc : 1; /* [0]  */
990         unsigned int force_vc1_err_crc : 1; /* [1]  */
991         unsigned int force_vc2_err_crc : 1; /* [2]  */
992         unsigned int force_vc3_err_crc : 1; /* [3]  */
993         unsigned int reserved_0 : 12; /* [15..4]  */
994         unsigned int force_err_ecc_double : 1; /* [16]  */
995         unsigned int reserved_1 : 15; /* [31..17]  */
996     } bits;
997 
998     /* Define an unsigned member */
999     unsigned int u32;
1000 } U_MIPI_PKT_INTR_FORCE;
1001 
1002 /* Define the union U_MIPI_PKT_INTR2_ST */
1003 typedef union {
1004     /* Define the struct bits */
1005     struct {
1006         unsigned int err_id_vc0 : 1; /* [0]  */
1007         unsigned int err_id_vc1 : 1; /* [1]  */
1008         unsigned int err_id_vc2 : 1; /* [2]  */
1009         unsigned int err_id_vc3 : 1; /* [3]  */
1010         unsigned int reserved_0 : 12; /* [15..4]  */
1011         unsigned int vc0_err_ecc_corrected : 1; /* [16]  */
1012         unsigned int vc1_err_ecc_corrected : 1; /* [17]  */
1013         unsigned int vc2_err_ecc_corrected : 1; /* [18]  */
1014         unsigned int vc3_err_ecc_corrected : 1; /* [19]  */
1015         unsigned int reserved_1 : 12; /* [31..20]  */
1016     } bits;
1017 
1018     /* Define an unsigned member */
1019     unsigned int u32;
1020 } U_MIPI_PKT_INTR2_ST;
1021 
1022 /* Define the union U_MIPI_PKT_INTR2_MSK */
1023 typedef union {
1024     /* Define the struct bits */
1025     struct {
1026         unsigned int mask_err_id_vc0 : 1; /* [0]  */
1027         unsigned int mask_err_id_vc1 : 1; /* [1]  */
1028         unsigned int mask_err_id_vc2 : 1; /* [2]  */
1029         unsigned int mask_err_id_vc3 : 1; /* [3]  */
1030         unsigned int reserved_0 : 12; /* [15..4]  */
1031         unsigned int mask_vc0_err_ecc_corrected : 1; /* [16]  */
1032         unsigned int mask_vc1_err_ecc_corrected : 1; /* [17]  */
1033         unsigned int mask_vc2_err_ecc_corrected : 1; /* [18]  */
1034         unsigned int mask_vc3_err_ecc_corrected : 1; /* [19]  */
1035         unsigned int reserved_1 : 12; /* [31..20]  */
1036     } bits;
1037 
1038     /* Define an unsigned member */
1039     unsigned int u32;
1040 } U_MIPI_PKT_INTR2_MSK;
1041 
1042 /* Define the union U_MIPI_PKT_INTR2_FORCE */
1043 typedef union {
1044     /* Define the struct bits */
1045     struct {
1046         unsigned int force_err_id_vc0 : 1; /* [0]  */
1047         unsigned int force_err_id_vc1 : 1; /* [1]  */
1048         unsigned int force_err_id_vc2 : 1; /* [2]  */
1049         unsigned int force_err_id_vc3 : 1; /* [3]  */
1050         unsigned int reserved_0 : 12; /* [15..4]  */
1051         unsigned int force_vc0_err_ecc_corrected : 1; /* [16]  */
1052         unsigned int force_vc1_err_ecc_corrected : 1; /* [17]  */
1053         unsigned int force_vc2_err_ecc_corrected : 1; /* [18]  */
1054         unsigned int force_vc3_err_ecc_corrected : 1; /* [19]  */
1055         unsigned int reserved_1 : 12; /* [31..20]  */
1056     } bits;
1057 
1058     /* Define an unsigned member */
1059     unsigned int u32;
1060 } U_MIPI_PKT_INTR2_FORCE;
1061 
1062 /* Define the union U_MIPI_FRAME_INTR_ST */
1063 typedef union {
1064     /* Define the struct bits */
1065     struct {
1066         unsigned int err_f_bndry_match_vc0 : 1; /* [0]  */
1067         unsigned int err_f_bndry_match_vc1 : 1; /* [1]  */
1068         unsigned int err_f_bndry_match_vc2 : 1; /* [2]  */
1069         unsigned int err_f_bndry_match_vc3 : 1; /* [3]  */
1070         unsigned int reserved_0 : 4; /* [7..4]  */
1071         unsigned int err_f_seq_vc0 : 1; /* [8]  */
1072         unsigned int err_f_seq_vc1 : 1; /* [9]  */
1073         unsigned int err_f_seq_vc2 : 1; /* [10]  */
1074         unsigned int err_f_seq_vc3 : 1; /* [11]  */
1075         unsigned int reserved_1 : 4; /* [15..12]  */
1076         unsigned int err_frame_data_vc0 : 1; /* [16]  */
1077         unsigned int err_frame_data_vc1 : 1; /* [17]  */
1078         unsigned int err_frame_data_vc2 : 1; /* [18]  */
1079         unsigned int err_frame_data_vc3 : 1; /* [19]  */
1080         unsigned int reserved_2 : 12; /* [31..20]  */
1081     } bits;
1082 
1083     /* Define an unsigned member */
1084     unsigned int u32;
1085 } U_MIPI_FRAME_INTR_ST;
1086 
1087 /* Define the union U_MIPI_FRAME_INTR_MSK */
1088 typedef union {
1089     /* Define the struct bits */
1090     struct {
1091         unsigned int mask_err_f_bndry_match_vc0 : 1; /* [0]  */
1092         unsigned int mask_err_f_bndry_match_vc1 : 1; /* [1]  */
1093         unsigned int mask_err_f_bndry_match_vc2 : 1; /* [2]  */
1094         unsigned int mask_err_f_bndry_match_vc3 : 1; /* [3]  */
1095         unsigned int reserved_0 : 4; /* [7..4]  */
1096         unsigned int mask_err_f_seq_vc0 : 1; /* [8]  */
1097         unsigned int mask_err_f_seq_vc1 : 1; /* [9]  */
1098         unsigned int mask_err_f_seq_vc2 : 1; /* [10]  */
1099         unsigned int mask_err_f_seq_vc3 : 1; /* [11]  */
1100         unsigned int reserved_1 : 4; /* [15..12]  */
1101         unsigned int mask_err_frame_data_vc0 : 1; /* [16]  */
1102         unsigned int mask_err_frame_data_vc1 : 1; /* [17]  */
1103         unsigned int mask_err_frame_data_vc2 : 1; /* [18]  */
1104         unsigned int mask_err_frame_data_vc3 : 1; /* [19]  */
1105         unsigned int reserved_2 : 12; /* [31..20]  */
1106     } bits;
1107 
1108     /* Define an unsigned member */
1109     unsigned int u32;
1110 } U_MIPI_FRAME_INTR_MSK;
1111 
1112 /* Define the union U_MIPI_FRAME_INTR_FORCE */
1113 typedef union {
1114     /* Define the struct bits */
1115     struct {
1116         unsigned int force_err_f_bndry_match_vc0 : 1; /* [0]  */
1117         unsigned int force_err_f_bndry_match_vc1 : 1; /* [1]  */
1118         unsigned int force_err_f_bndry_match_vc2 : 1; /* [2]  */
1119         unsigned int force_err_f_bndry_match_vc3 : 1; /* [3]  */
1120         unsigned int reserved_0 : 4; /* [7..4]  */
1121         unsigned int force_err_f_seq_vc0 : 1; /* [8]  */
1122         unsigned int force_err_f_seq_vc1 : 1; /* [9]  */
1123         unsigned int force_err_f_seq_vc2 : 1; /* [10]  */
1124         unsigned int force_err_f_seq_vc3 : 1; /* [11]  */
1125         unsigned int reserved_1 : 4; /* [15..12]  */
1126         unsigned int force_err_frame_data_vc0 : 1; /* [16]  */
1127         unsigned int force_err_frame_data_vc1 : 1; /* [17]  */
1128         unsigned int force_err_frame_data_vc2 : 1; /* [18]  */
1129         unsigned int force_err_frame_data_vc3 : 1; /* [19]  */
1130         unsigned int reserved_2 : 12; /* [31..20]  */
1131     } bits;
1132 
1133     /* Define an unsigned member */
1134     unsigned int u32;
1135 } U_MIPI_FRAME_INTR_FORCE;
1136 
1137 /* Define the union U_MIPI_LINE_INTR_ST */
1138 typedef union {
1139     /* Define the struct bits */
1140     struct {
1141         unsigned int err_l_bndry_match_di0 : 1; /* [0]  */
1142         unsigned int err_l_bndry_match_di1 : 1; /* [1]  */
1143         unsigned int err_l_bndry_match_di2 : 1; /* [2]  */
1144         unsigned int err_l_bndry_match_di3 : 1; /* [3]  */
1145         unsigned int err_l_bndry_match_di4 : 1; /* [4]  */
1146         unsigned int err_l_bndry_match_di5 : 1; /* [5]  */
1147         unsigned int err_l_bndry_match_di6 : 1; /* [6]  */
1148         unsigned int err_l_bndry_match_di7 : 1; /* [7]  */
1149         unsigned int reserved_0 : 8; /* [15..8]  */
1150         unsigned int err_l_seq_di0 : 1; /* [16]  */
1151         unsigned int err_l_seq_di1 : 1; /* [17]  */
1152         unsigned int err_l_seq_di2 : 1; /* [18]  */
1153         unsigned int err_l_seq_di3 : 1; /* [19]  */
1154         unsigned int err_l_seq_di4 : 1; /* [20]  */
1155         unsigned int err_l_seq_di5 : 1; /* [21]  */
1156         unsigned int err_l_seq_di6 : 1; /* [22]  */
1157         unsigned int err_l_seq_di7 : 1; /* [23]  */
1158         unsigned int reserved_1 : 8; /* [31..24]  */
1159     } bits;
1160 
1161     /* Define an unsigned member */
1162     unsigned int u32;
1163 } U_MIPI_LINE_INTR_ST;
1164 
1165 /* Define the union U_MIPI_LINE_INTR_MSK */
1166 typedef union {
1167     /* Define the struct bits */
1168     struct {
1169         unsigned int mask_err_l_bndry_match_di0 : 1; /* [0]  */
1170         unsigned int mask_err_l_bndry_match_di1 : 1; /* [1]  */
1171         unsigned int mask_err_l_bndry_match_di2 : 1; /* [2]  */
1172         unsigned int mask_err_l_bndry_match_di3 : 1; /* [3]  */
1173         unsigned int mask_err_l_bndry_match_di4 : 1; /* [4]  */
1174         unsigned int mask_err_l_bndry_match_di5 : 1; /* [5]  */
1175         unsigned int mask_err_l_bndry_match_di6 : 1; /* [6]  */
1176         unsigned int mask_err_l_bndry_match_di7 : 1; /* [7]  */
1177         unsigned int reserved_0 : 8; /* [15..8]  */
1178         unsigned int mask_err_l_seq_di0 : 1; /* [16]  */
1179         unsigned int mask_err_l_seq_di1 : 1; /* [17]  */
1180         unsigned int mask_err_l_seq_di2 : 1; /* [18]  */
1181         unsigned int mask_err_l_seq_di3 : 1; /* [19]  */
1182         unsigned int mask_err_l_seq_di4 : 1; /* [20]  */
1183         unsigned int mask_err_l_seq_di5 : 1; /* [21]  */
1184         unsigned int mask_err_l_seq_di6 : 1; /* [22]  */
1185         unsigned int mask_err_l_seq_di7 : 1; /* [23]  */
1186         unsigned int reserved_1 : 8; /* [31..24]  */
1187     } bits;
1188 
1189     /* Define an unsigned member */
1190     unsigned int u32;
1191 } U_MIPI_LINE_INTR_MSK;
1192 
1193 /* Define the union U_MIPI_LINE_INTR_FORCE */
1194 typedef union {
1195     /* Define the struct bits */
1196     struct {
1197         unsigned int force_err_l_bndry_match_di0 : 1; /* [0]  */
1198         unsigned int force_err_l_bndry_match_di1 : 1; /* [1]  */
1199         unsigned int force_err_l_bndry_match_di2 : 1; /* [2]  */
1200         unsigned int force_err_l_bndry_match_di3 : 1; /* [3]  */
1201         unsigned int force_err_l_bndry_match_di4 : 1; /* [4]  */
1202         unsigned int force_err_l_bndry_match_di5 : 1; /* [5]  */
1203         unsigned int force_err_l_bndry_match_di6 : 1; /* [6]  */
1204         unsigned int force_err_l_bndry_match_di7 : 1; /* [7]  */
1205         unsigned int reserved_0 : 8; /* [15..8]  */
1206         unsigned int force_err_l_seq_di0 : 1; /* [16]  */
1207         unsigned int force_err_l_seq_di1 : 1; /* [17]  */
1208         unsigned int force_err_l_seq_di2 : 1; /* [18]  */
1209         unsigned int force_err_l_seq_di3 : 1; /* [19]  */
1210         unsigned int force_err_l_seq_di4 : 1; /* [20]  */
1211         unsigned int force_err_l_seq_di5 : 1; /* [21]  */
1212         unsigned int force_err_l_seq_di6 : 1; /* [22]  */
1213         unsigned int force_err_l_seq_di7 : 1; /* [23]  */
1214         unsigned int reserved_1 : 8; /* [31..24]  */
1215     } bits;
1216 
1217     /* Define an unsigned member */
1218     unsigned int u32;
1219 } U_MIPI_LINE_INTR_FORCE;
1220 
1221 /* Define the union U_MIPI_USERDEF_DT */
1222 typedef union {
1223     /* Define the struct bits */
1224     struct {
1225         unsigned int user_def0_dt : 3; /* [2..0]  */
1226         unsigned int reserved_0 : 1; /* [3]  */
1227         unsigned int user_def1_dt : 3; /* [6..4]  */
1228         unsigned int reserved_1 : 1; /* [7]  */
1229         unsigned int user_def2_dt : 3; /* [10..8]  */
1230         unsigned int reserved_2 : 1; /* [11]  */
1231         unsigned int user_def3_dt : 3; /* [14..12]  */
1232         unsigned int reserved_3 : 17; /* [31..15]  */
1233     } bits;
1234 
1235     /* Define an unsigned member */
1236     unsigned int u32;
1237 } U_MIPI_USERDEF_DT;
1238 
1239 /* Define the union U_MIPI_USER_DEF */
1240 typedef union {
1241     /* Define the struct bits */
1242     struct {
1243         unsigned int user_def0 : 6; /* [5..0]  */
1244         unsigned int reserved_0 : 2; /* [7..6]  */
1245         unsigned int user_def1 : 6; /* [13..8]  */
1246         unsigned int reserved_1 : 2; /* [15..14]  */
1247         unsigned int user_def2 : 6; /* [21..16]  */
1248         unsigned int reserved_2 : 2; /* [23..22]  */
1249         unsigned int user_def3 : 6; /* [29..24]  */
1250         unsigned int reserved_3 : 2; /* [31..30]  */
1251     } bits;
1252 
1253     /* Define an unsigned member */
1254     unsigned int u32;
1255 } U_MIPI_USER_DEF;
1256 
1257 /* Define the union U_MIPI_CTRL_MODE_HS */
1258 typedef union {
1259     /* Define the struct bits */
1260     struct {
1261         unsigned int hdr_mode : 1; /* [0]  */
1262         unsigned int reserved_0 : 3; /* [3..1]  */
1263         unsigned int vc_mode : 1; /* [4]  */
1264         unsigned int reserved_1 : 3; /* [7..5]  */
1265         unsigned int user_def_en : 1; /* [8]  */
1266         unsigned int reserved_2 : 3; /* [11..9]  */
1267         unsigned int lane0_location : 3; /* [14..12]  */
1268         unsigned int reserved_3 : 17; /* [31..15]  */
1269     } bits;
1270 
1271     /* Define an unsigned member */
1272     unsigned int u32;
1273 } U_MIPI_CTRL_MODE_HS;
1274 
1275 /* Define the union U_MIPI_DOL_ID_CODE0 */
1276 typedef union {
1277     /* Define the struct bits */
1278     struct {
1279         unsigned int vend_delay : 16; /* [15..0]  */
1280         unsigned int hend_delay : 16; /* [31..16]  */
1281     } bits;
1282 
1283     /* Define an unsigned member */
1284     unsigned int u32;
1285 } U_MIPI_VHEND_DELAY;
1286 
1287 /* Define the union U_MIPI_DOL_ID_CODE0 */
1288 typedef union {
1289     /* Define the struct bits */
1290     struct {
1291         unsigned int id_code_reg0 : 16; /* [15..0]  */
1292         unsigned int id_code_reg1 : 16; /* [31..16]  */
1293     } bits;
1294 
1295     /* Define an unsigned member */
1296     unsigned int u32;
1297 } U_MIPI_DOL_ID_CODE0;
1298 
1299 /* Define the union U_MIPI_DOL_ID_CODE1 */
1300 typedef union {
1301     /* Define the struct bits */
1302     struct {
1303         unsigned int id_code_reg2 : 16; /* [15..0]  */
1304         unsigned int id_code_reg3 : 16; /* [31..16]  */
1305     } bits;
1306 
1307     /* Define an unsigned member */
1308     unsigned int u32;
1309 } U_MIPI_DOL_ID_CODE1;
1310 
1311 /* Define the union U_MIPI_DOL_ID_CODE2 */
1312 typedef union {
1313     /* Define the struct bits */
1314     struct {
1315         unsigned int id_code_reg4 : 16; /* [15..0]  */
1316         unsigned int id_code_reg5 : 16; /* [31..16]  */
1317     } bits;
1318 
1319     /* Define an unsigned member */
1320     unsigned int u32;
1321 } U_MIPI_DOL_ID_CODE2;
1322 
1323 /* Define the union U_MIPI_CROP_START_CHN0 */
1324 typedef union {
1325     /* Define the struct bits */
1326     struct {
1327         unsigned int mipi_start_x_chn0 : 16; /* [15..0]  */
1328         unsigned int mipi_start_y_chn0 : 16; /* [31..16]  */
1329     } bits;
1330 
1331     /* Define an unsigned member */
1332     unsigned int u32;
1333 } U_MIPI_CROP_START_CHN0;
1334 
1335 /* Define the union U_MIPI_CROP_START_CHN1 */
1336 typedef union {
1337     /* Define the struct bits */
1338     struct {
1339         unsigned int mipi_start_x_chn1 : 16; /* [15..0]  */
1340         unsigned int mipi_start_y_chn1 : 16; /* [31..16]  */
1341     } bits;
1342 
1343     /* Define an unsigned member */
1344     unsigned int u32;
1345 } U_MIPI_CROP_START_CHN1;
1346 
1347 /* Define the union U_MIPI_CROP_START_CHN2 */
1348 typedef union {
1349     /* Define the struct bits */
1350     struct {
1351         unsigned int mipi_start_x_chn2 : 16; /* [15..0]  */
1352         unsigned int mipi_start_y_chn2 : 16; /* [31..16]  */
1353     } bits;
1354 
1355     /* Define an unsigned member */
1356     unsigned int u32;
1357 } U_MIPI_CROP_START_CHN2;
1358 
1359 /* Define the union U_MIPI_CROP_START_CHN3 */
1360 typedef union {
1361     /* Define the struct bits */
1362     struct {
1363         unsigned int mipi_start_x_chn3 : 16; /* [15..0]  */
1364         unsigned int mipi_start_y_chn3 : 16; /* [31..16]  */
1365     } bits;
1366 
1367     /* Define an unsigned member */
1368     unsigned int u32;
1369 } U_MIPI_CROP_START_CHN3;
1370 
1371 /* Define the union U_MIPI_IMGSIZE */
1372 typedef union {
1373     /* Define the struct bits */
1374     struct {
1375         unsigned int mipi_imgwidth : 16; /* [15..0]  */
1376         unsigned int mipi_imgheight : 16; /* [31..16]  */
1377     } bits;
1378 
1379     /* Define an unsigned member */
1380     unsigned int u32;
1381 } U_MIPI_IMGSIZE;
1382 
1383 /* Define the union U_MIPI_CTRL_MODE_PIXEL */
1384 typedef union {
1385     /* Define the struct bits */
1386     struct {
1387         unsigned int crop_en : 1; /* [0]  */
1388         unsigned int reserved_0 : 3; /* [3..1]  */
1389         unsigned int mipi_dol_mode : 1; /* [4]  */
1390         unsigned int reserved_1 : 3; /* [7..5]  */
1391         unsigned int rx2mode : 1; /* [8]  */
1392         unsigned int data_merge_mode : 2; /* [10..9]  */
1393         unsigned int sync_clear_en : 1; /* [11]  */
1394         unsigned int stagger_hdr_mode : 1; /* [12]  */
1395         unsigned int stagger_frm_num : 2; /* [14..13]  */
1396         unsigned int dummy_line_detect : 1; /* [15]  */
1397         unsigned int mipi_double_pix_en : 1; /* [16]  */
1398         unsigned int mipi_double_yuv_en : 1; /* [17]  */
1399         unsigned int mipi_yuv_422_en : 1; /* [18]  */
1400         unsigned int mipi_yuv_420_nolegacy_en : 1; /* [19]  */
1401         unsigned int mipi_yuv_420_legacy_en : 1; /* [20]  */
1402         unsigned int mipi_yuv_420_nolegacy_init : 1; /* [21]  */
1403         unsigned int mipi_yuv420_even_detect : 1; /* [22]  */
1404         unsigned int reserved_2 : 9; /* [31..23]  */
1405     } bits;
1406 
1407     /* Define an unsigned member */
1408     unsigned int u32;
1409 } U_MIPI_CTRL_MODE_PIXEL;
1410 
1411 /* Define the union U_MIPI_DUMMY_PIX_REG */
1412 typedef union {
1413     /* Define the struct bits */
1414     struct {
1415         unsigned int dummy_pix_reg : 16; /* [15..0]  */
1416         unsigned int reserved_0 : 16; /* [31..16]  */
1417     } bits;
1418 
1419     /* Define an unsigned member */
1420     unsigned int u32;
1421 } U_MIPI_DUMMY_PIX_REG;
1422 
1423 /* Define the union U_MIPI_YUVEVEN_THOLD */
1424 typedef union {
1425     /* Define the struct bits */
1426     struct {
1427         unsigned int mipi_yuv_even_thold : 16; /* [15..0]  */
1428         unsigned int reserved_0 : 16; /* [31..16]  */
1429     } bits;
1430 
1431     /* Define an unsigned member */
1432     unsigned int u32;
1433 } U_MIPI_YUVEVEN_THOLD;
1434 
1435 /* Define the union U_MIPI_IMGSIZE0_STATIS */
1436 typedef union {
1437     /* Define the struct bits */
1438     struct {
1439         unsigned int imgwidth_statis_vc0 : 16; /* [15..0]  */
1440         unsigned int imgheight_statis_vc0 : 16; /* [31..16]  */
1441     } bits;
1442 
1443     /* Define an unsigned member */
1444     unsigned int u32;
1445 } U_MIPI_IMGSIZE0_STATIS;
1446 
1447 /* Define the union U_MIPI_IMGSIZE1_STATIS */
1448 typedef union {
1449     /* Define the struct bits */
1450     struct {
1451         unsigned int imgwidth_statis_vc1 : 16; /* [15..0]  */
1452         unsigned int imgheight_statis_vc1 : 16; /* [31..16]  */
1453     } bits;
1454 
1455     /* Define an unsigned member */
1456     unsigned int u32;
1457 } U_MIPI_IMGSIZE1_STATIS;
1458 
1459 /* Define the union U_MIPI_IMGSIZE2_STATIS */
1460 typedef union {
1461     /* Define the struct bits */
1462     struct {
1463         unsigned int imgwidth_statis_vc2 : 16; /* [15..0]  */
1464         unsigned int imgheight_statis_vc2 : 16; /* [31..16]  */
1465     } bits;
1466 
1467     /* Define an unsigned member */
1468     unsigned int u32;
1469 } U_MIPI_IMGSIZE2_STATIS;
1470 
1471 /* Define the union U_MIPI_IMGSIZE3_STATIS */
1472 typedef union {
1473     /* Define the struct bits */
1474     struct {
1475         unsigned int imgwidth_statis_vc3 : 16; /* [15..0]  */
1476         unsigned int imgheight_statis_vc3 : 16; /* [31..16]  */
1477     } bits;
1478 
1479     /* Define an unsigned member */
1480     unsigned int u32;
1481 } U_MIPI_IMGSIZE3_STATIS;
1482 
1483 /* Define the union U_MIPI_CTRL_INT_RAW */
1484 typedef union {
1485     /* Define the struct bits */
1486     struct {
1487         unsigned int int_cfifo_wrerr_raw : 1; /* [0]  */
1488         unsigned int int_dfifo_wrerr_raw : 1; /* [1]  */
1489         unsigned int reserved_0 : 2; /* [3..2]  */
1490         unsigned int int_vsync_raw : 1; /* [4]  */
1491         unsigned int reserved_1 : 11; /* [15..5]  */
1492         unsigned int int_cfifo_rderr_raw : 1; /* [16]  */
1493         unsigned int int_dfifo_rderr_raw : 1; /* [17]  */
1494         unsigned int reserved_2 : 14; /* [31..18]  */
1495     } bits;
1496 
1497     /* Define an unsigned member */
1498     unsigned int u32;
1499 } U_MIPI_CTRL_INT_RAW;
1500 
1501 /* Define the union U_MIPI_CTRL_INT */
1502 typedef union {
1503     /* Define the struct bits */
1504     struct {
1505         unsigned int int_cfifo_wrerr_st : 1; /* [0]  */
1506         unsigned int int_dfifo_wrerr_st : 1; /* [1]  */
1507         unsigned int reserved_0 : 2; /* [3..2]  */
1508         unsigned int int_vsync_st : 1; /* [4]  */
1509         unsigned int reserved_1 : 11; /* [15..5]  */
1510         unsigned int int_cfifo_rderr_st : 1; /* [16]  */
1511         unsigned int int_dfifo_rderr_st : 1; /* [17]  */
1512         unsigned int reserved_2 : 14; /* [31..18]  */
1513     } bits;
1514 
1515     /* Define an unsigned member */
1516     unsigned int u32;
1517 } U_MIPI_CTRL_INT;
1518 
1519 /* Define the union U_MIPI_CTRL_INT_MSK */
1520 typedef union {
1521     /* Define the struct bits */
1522     struct {
1523         unsigned int int_cfifo_wrerr_msk : 1; /* [0]  */
1524         unsigned int int_dfifo_wrerr_msk : 1; /* [1]  */
1525         unsigned int reserved_0 : 2; /* [3..2]  */
1526         unsigned int int_vsync_msk : 1; /* [4]  */
1527         unsigned int reserved_1 : 11; /* [15..5]  */
1528         unsigned int int_cfifo_rderr_msk : 1; /* [16]  */
1529         unsigned int int_dfifo_rderr_msk : 1; /* [17]  */
1530         unsigned int reserved_2 : 14; /* [31..18]  */
1531     } bits;
1532 
1533     /* Define an unsigned member */
1534     unsigned int u32;
1535 } U_MIPI_CTRL_INT_MSK;
1536 
1537 /* Define the union U_LVDS_WDR */
1538 typedef union {
1539     /* Define the struct bits */
1540     struct {
1541         unsigned int lvds_wdr_en : 1; /* [0]  */
1542         unsigned int reserved_0 : 3; /* [3..1]  */
1543         unsigned int lvds_wdr_num : 2; /* [5..4]  */
1544         unsigned int reserved_1 : 2; /* [7..6]  */
1545         unsigned int lvds_wdr_mode : 4; /* [11..8]  */
1546         unsigned int lvds_wdr_id_shift : 4; /* [15..12]  */
1547         unsigned int reserved_2 : 16; /* [31..16]  */
1548     } bits;
1549 
1550     /* Define an unsigned member */
1551     unsigned int u32;
1552 } U_LVDS_WDR;
1553 
1554 /* Define the union U_LVDS_DOLSCD_HBLK */
1555 typedef union {
1556     /* Define the struct bits */
1557     struct {
1558         unsigned int dol_hblank1 : 16; /* [15..0]  */
1559         unsigned int dol_hblank2 : 16; /* [31..16]  */
1560     } bits;
1561 
1562     /* Define an unsigned member */
1563     unsigned int u32;
1564 } U_LVDS_DOLSCD_HBLK;
1565 
1566 /* Define the union U_LVDS_CTRL */
1567 typedef union {
1568     /* Define the struct bits */
1569     struct {
1570         unsigned int lvds_sync_mode : 1; /* [0]  */
1571         unsigned int reserved_0 : 3; /* [3..1]  */
1572         unsigned int lvds_raw_type : 3; /* [6..4]  */
1573         unsigned int reserved_1 : 1; /* [7]  */
1574         unsigned int lvds_pix_big_endian : 1; /* [8]  */
1575         unsigned int lvds_code_big_endian : 1; /* [9]  */
1576         unsigned int reserved_2 : 2; /* [11..10]  */
1577         unsigned int lvds_crop_en : 1; /* [12]  */
1578         unsigned int reserved_3 : 19; /* [31..13]  */
1579     } bits;
1580 
1581     /* Define an unsigned member */
1582     unsigned int u32;
1583 } U_LVDS_CTRL;
1584 
1585 /* Define the union U_LVDS_IMGSIZE */
1586 typedef union {
1587     /* Define the struct bits */
1588     struct {
1589         unsigned int lvds_imgwidth_lane : 16; /* [15..0]  */
1590         unsigned int lvds_imgheight : 16; /* [31..16]  */
1591     } bits;
1592 
1593     /* Define an unsigned member */
1594     unsigned int u32;
1595 } U_LVDS_IMGSIZE;
1596 
1597 /* Define the union U_LVDS_CROP_START0 */
1598 typedef union {
1599     /* Define the struct bits */
1600     struct {
1601         unsigned int lvds_start_x0_lane : 16; /* [15..0]  */
1602         unsigned int lvds_start_y0 : 16; /* [31..16]  */
1603     } bits;
1604 
1605     /* Define an unsigned member */
1606     unsigned int u32;
1607 } U_LVDS_CROP_START0;
1608 
1609 /* Define the union U_LVDS_CROP_START1 */
1610 typedef union {
1611     /* Define the struct bits */
1612     struct {
1613         unsigned int lvds_start_x1_lane : 16; /* [15..0]  */
1614         unsigned int lvds_start_y1 : 16; /* [31..16]  */
1615     } bits;
1616 
1617     /* Define an unsigned member */
1618     unsigned int u32;
1619 } U_LVDS_CROP_START1;
1620 
1621 /* Define the union U_LVDS_CROP_START2 */
1622 typedef union {
1623     /* Define the struct bits */
1624     struct {
1625         unsigned int lvds_start_x2_lane : 16; /* [15..0]  */
1626         unsigned int lvds_start_y2 : 16; /* [31..16]  */
1627     } bits;
1628 
1629     /* Define an unsigned member */
1630     unsigned int u32;
1631 } U_LVDS_CROP_START2;
1632 
1633 /* Define the union U_LVDS_CROP_START3 */
1634 typedef union {
1635     /* Define the struct bits */
1636     struct {
1637         unsigned int lvds_start_x3_lane : 16; /* [15..0]  */
1638         unsigned int lvds_start_y3 : 16; /* [31..16]  */
1639     } bits;
1640 
1641     /* Define an unsigned member */
1642     unsigned int u32;
1643 } U_LVDS_CROP_START3;
1644 
1645 /* Define the union U_LVDS_LANE_SOF_01 */
1646 typedef union {
1647     /* Define the struct bits */
1648     struct {
1649         unsigned int lane_sof_0 : 16; /* [15..0]  */
1650         unsigned int lane_sof_1 : 16; /* [31..16]  */
1651     } bits;
1652 
1653     /* Define an unsigned member */
1654     unsigned int u32;
1655 } U_LVDS_LANE_SOF_01;
1656 
1657 /* Define the union U_LVDS_LANE_SOF_23 */
1658 typedef union {
1659     /* Define the struct bits */
1660     struct {
1661         unsigned int lane_sof_2 : 16; /* [15..0]  */
1662         unsigned int lane_sof_3 : 16; /* [31..16]  */
1663     } bits;
1664 
1665     /* Define an unsigned member */
1666     unsigned int u32;
1667 } U_LVDS_LANE_SOF_23;
1668 
1669 /* Define the union U_LVDS_LANE_EOF_01 */
1670 typedef union {
1671     /* Define the struct bits */
1672     struct {
1673         unsigned int lane_eof_0 : 16; /* [15..0]  */
1674         unsigned int lane_eof_1 : 16; /* [31..16]  */
1675     } bits;
1676 
1677     /* Define an unsigned member */
1678     unsigned int u32;
1679 } U_LVDS_LANE_EOF_01;
1680 
1681 /* Define the union U_LVDS_LANE_EOF_23 */
1682 typedef union {
1683     /* Define the struct bits */
1684     struct {
1685         unsigned int lane_eof_2 : 16; /* [15..0]  */
1686         unsigned int lane_eof_3 : 16; /* [31..16]  */
1687     } bits;
1688 
1689     /* Define an unsigned member */
1690     unsigned int u32;
1691 } U_LVDS_LANE_EOF_23;
1692 
1693 /* Define the union U_LVDS_LANE_SOL_01 */
1694 typedef union {
1695     /* Define the struct bits */
1696     struct {
1697         unsigned int lane_sol_0 : 16; /* [15..0]  */
1698         unsigned int lane_sol_1 : 16; /* [31..16]  */
1699     } bits;
1700 
1701     /* Define an unsigned member */
1702     unsigned int u32;
1703 } U_LVDS_LANE_SOL_01;
1704 
1705 /* Define the union U_LVDS_LANE_SOL_23 */
1706 typedef union {
1707     /* Define the struct bits */
1708     struct {
1709         unsigned int lane_sol_2 : 16; /* [15..0]  */
1710         unsigned int lane_sol_3 : 16; /* [31..16]  */
1711     } bits;
1712 
1713     /* Define an unsigned member */
1714     unsigned int u32;
1715 } U_LVDS_LANE_SOL_23;
1716 
1717 /* Define the union U_LVDS_LANE_EOL_01 */
1718 typedef union {
1719     /* Define the struct bits */
1720     struct {
1721         unsigned int lane_eol_0 : 16; /* [15..0]  */
1722         unsigned int lane_eol_1 : 16; /* [31..16]  */
1723     } bits;
1724 
1725     /* Define an unsigned member */
1726     unsigned int u32;
1727 } U_LVDS_LANE_EOL_01;
1728 
1729 /* Define the union U_LVDS_LANE_EOL_23 */
1730 typedef union {
1731     /* Define the struct bits */
1732     struct {
1733         unsigned int lane_eol_2 : 16; /* [15..0]  */
1734         unsigned int lane_eol_3 : 16; /* [31..16]  */
1735     } bits;
1736 
1737     /* Define an unsigned member */
1738     unsigned int u32;
1739 } U_LVDS_LANE_EOL_23;
1740 
1741 /* Define the union U_LVDS_LANE_NXT_SOF_01 */
1742 typedef union {
1743     /* Define the struct bits */
1744     struct {
1745         unsigned int lane_nxt_sof_0 : 16; /* [15..0]  */
1746         unsigned int lane_nxt_sof_1 : 16; /* [31..16]  */
1747     } bits;
1748 
1749     /* Define an unsigned member */
1750     unsigned int u32;
1751 } U_LVDS_LANE_NXT_SOF_01;
1752 
1753 /* Define the union U_LVDS_LANE_NXT_SOF_23 */
1754 typedef union {
1755     /* Define the struct bits */
1756     struct {
1757         unsigned int lane_nxt_sof_2 : 16; /* [15..0]  */
1758         unsigned int lane_nxt_sof_3 : 16; /* [31..16]  */
1759     } bits;
1760 
1761     /* Define an unsigned member */
1762     unsigned int u32;
1763 } U_LVDS_LANE_NXT_SOF_23;
1764 
1765 /* Define the union U_LVDS_LANE_NXT_EOF_01 */
1766 typedef union {
1767     /* Define the struct bits */
1768     struct {
1769         unsigned int lane_nxt_eof_0 : 16; /* [15..0]  */
1770         unsigned int lane_nxt_eof_1 : 16; /* [31..16]  */
1771     } bits;
1772 
1773     /* Define an unsigned member */
1774     unsigned int u32;
1775 } U_LVDS_LANE_NXT_EOF_01;
1776 
1777 /* Define the union U_LVDS_LANE_NXT_EOF_23 */
1778 typedef union {
1779     /* Define the struct bits */
1780     struct {
1781         unsigned int lane_nxt_eof_2 : 16; /* [15..0]  */
1782         unsigned int lane_nxt_eof_3 : 16; /* [31..16]  */
1783     } bits;
1784 
1785     /* Define an unsigned member */
1786     unsigned int u32;
1787 } U_LVDS_LANE_NXT_EOF_23;
1788 
1789 /* Define the union U_LVDS_LANE_NXT_SOL_01 */
1790 typedef union {
1791     /* Define the struct bits */
1792     struct {
1793         unsigned int lane_nxt_sol_0 : 16; /* [15..0]  */
1794         unsigned int lane_nxt_sol_1 : 16; /* [31..16]  */
1795     } bits;
1796 
1797     /* Define an unsigned member */
1798     unsigned int u32;
1799 } U_LVDS_LANE_NXT_SOL_01;
1800 
1801 /* Define the union U_LVDS_LANE_NXT_SOL_23 */
1802 typedef union {
1803     /* Define the struct bits */
1804     struct {
1805         unsigned int lane_nxt_sol_2 : 16; /* [15..0]  */
1806         unsigned int lane_nxt_sol_3 : 16; /* [31..16]  */
1807     } bits;
1808 
1809     /* Define an unsigned member */
1810     unsigned int u32;
1811 } U_LVDS_LANE_NXT_SOL_23;
1812 
1813 /* Define the union U_LVDS_LANE_NXT_EOL_01 */
1814 typedef union {
1815     /* Define the struct bits */
1816     struct {
1817         unsigned int lane_nxt_eol_0 : 16; /* [15..0]  */
1818         unsigned int lane_nxt_eol_1 : 16; /* [31..16]  */
1819     } bits;
1820 
1821     /* Define an unsigned member */
1822     unsigned int u32;
1823 } U_LVDS_LANE_NXT_EOL_01;
1824 
1825 /* Define the union U_LVDS_LANE_NXT_EOL_23 */
1826 typedef union {
1827     /* Define the struct bits */
1828     struct {
1829         unsigned int lane_nxt_eol_2 : 16; /* [15..0]  */
1830         unsigned int lane_nxt_eol_3 : 16; /* [31..16]  */
1831     } bits;
1832 
1833     /* Define an unsigned member */
1834     unsigned int u32;
1835 } U_LVDS_LANE_NXT_EOL_23;
1836 
1837 /* Define the union U_LVDS_LI_WORD0 */
1838 typedef union {
1839     /* Define the struct bits */
1840     struct {
1841         unsigned int li_word0_0 : 16; /* [15..0]  */
1842         unsigned int li_word0_1 : 16; /* [31..16]  */
1843     } bits;
1844 
1845     /* Define an unsigned member */
1846     unsigned int u32;
1847 } U_LVDS_LI_WORD0;
1848 
1849 /* Define the union U_LVDS_LI_WORD1 */
1850 typedef union {
1851     /* Define the struct bits */
1852     struct {
1853         unsigned int li_word1_0 : 16; /* [15..0]  */
1854         unsigned int li_word1_1 : 16; /* [31..16]  */
1855     } bits;
1856 
1857     /* Define an unsigned member */
1858     unsigned int u32;
1859 } U_LVDS_LI_WORD1;
1860 
1861 /* Define the union U_LVDS_LI_WORD2 */
1862 typedef union {
1863     /* Define the struct bits */
1864     struct {
1865         unsigned int li_word2_0 : 16; /* [15..0]  */
1866         unsigned int li_word2_1 : 16; /* [31..16]  */
1867     } bits;
1868 
1869     /* Define an unsigned member */
1870     unsigned int u32;
1871 } U_LVDS_LI_WORD2;
1872 
1873 /* Define the union U_LVDS_LI_WORD3 */
1874 typedef union {
1875     /* Define the struct bits */
1876     struct {
1877         unsigned int li_word3_0 : 16; /* [15..0]  */
1878         unsigned int li_word3_1 : 16; /* [31..16]  */
1879     } bits;
1880 
1881     /* Define an unsigned member */
1882     unsigned int u32;
1883 } U_LVDS_LI_WORD3;
1884 
1885 /* Define the union U_LVDS_SYNC_BORD0 */
1886 typedef union {
1887     /* Define the struct bits */
1888     struct {
1889         unsigned int sync_bord0_lane0 : 4; /* [3..0]  */
1890         unsigned int sync_bord0_lane1 : 4; /* [7..4]  */
1891         unsigned int sync_bord0_lane2 : 4; /* [11..8]  */
1892         unsigned int sync_bord0_lane3 : 4; /* [15..12]  */
1893         unsigned int reserved_0 : 16; /* [31..16]  */
1894     } bits;
1895 
1896     /* Define an unsigned member */
1897     unsigned int u32;
1898 } U_LVDS_SYNC_BORD0;
1899 
1900 /* Define the union U_LVDS_SYNC_BORD1 */
1901 typedef union {
1902     /* Define the struct bits */
1903     struct {
1904         unsigned int sync_bord1_lane0 : 4; /* [3..0]  */
1905         unsigned int sync_bord1_lane1 : 4; /* [7..4]  */
1906         unsigned int sync_bord1_lane2 : 4; /* [11..8]  */
1907         unsigned int sync_bord1_lane3 : 4; /* [15..12]  */
1908         unsigned int reserved_0 : 16; /* [31..16]  */
1909     } bits;
1910 
1911     /* Define an unsigned member */
1912     unsigned int u32;
1913 } U_LVDS_SYNC_BORD1;
1914 
1915 /* Define the union U_LVDS_SYNC_BORD2 */
1916 typedef union {
1917     /* Define the struct bits */
1918     struct {
1919         unsigned int sync_bord2_lane0 : 4; /* [3..0]  */
1920         unsigned int sync_bord2_lane1 : 4; /* [7..4]  */
1921         unsigned int sync_bord2_lane2 : 4; /* [11..8]  */
1922         unsigned int sync_bord2_lane3 : 4; /* [15..12]  */
1923         unsigned int reserved_0 : 16; /* [31..16]  */
1924     } bits;
1925 
1926     /* Define an unsigned member */
1927     unsigned int u32;
1928 } U_LVDS_SYNC_BORD2;
1929 
1930 /* Define the union U_LVDS_SYNC_BORD3 */
1931 typedef union {
1932     /* Define the struct bits */
1933     struct {
1934         unsigned int sync_bord3_lane0 : 4; /* [3..0]  */
1935         unsigned int sync_bord3_lane1 : 4; /* [7..4]  */
1936         unsigned int sync_bord3_lane2 : 4; /* [11..8]  */
1937         unsigned int sync_bord3_lane3 : 4; /* [15..12]  */
1938         unsigned int reserved_0 : 16; /* [31..16]  */
1939     } bits;
1940 
1941     /* Define an unsigned member */
1942     unsigned int u32;
1943 } U_LVDS_SYNC_BORD3;
1944 
1945 /* Define the union U_LVDS_LANE_IMGSIZE_STATIS */
1946 typedef union {
1947     /* Define the struct bits */
1948     struct {
1949         unsigned int lane_imgwidth : 16; /* [15..0]  */
1950         unsigned int lane_imgheight : 16; /* [31..16]  */
1951     } bits;
1952 
1953     /* Define an unsigned member */
1954     unsigned int u32;
1955 } U_LVDS_LANE_IMGSIZE_STATIS;
1956 
1957 /* Define the union U_LVDS_IMGSIZE0_STATIS */
1958 typedef union {
1959     /* Define the struct bits */
1960     struct {
1961         unsigned int lvds_imgwidth0 : 16; /* [15..0]  */
1962         unsigned int lvds_imgheight0 : 16; /* [31..16]  */
1963     } bits;
1964 
1965     /* Define an unsigned member */
1966     unsigned int u32;
1967 } U_LVDS_IMGSIZE0_STATIS;
1968 
1969 /* Define the union U_LVDS_IMGSIZE1_STATIS */
1970 typedef union {
1971     /* Define the struct bits */
1972     struct {
1973         unsigned int lvds_imgwidth1 : 16; /* [15..0]  */
1974         unsigned int lvds_imgheight1 : 16; /* [31..16]  */
1975     } bits;
1976 
1977     /* Define an unsigned member */
1978     unsigned int u32;
1979 } U_LVDS_IMGSIZE1_STATIS;
1980 
1981 /* Define the union U_LVDS_IMGSIZE2_STATIS */
1982 typedef union {
1983     /* Define the struct bits */
1984     struct {
1985         unsigned int lvds_imgwidth2 : 16; /* [15..0]  */
1986         unsigned int lvds_imgheight2 : 16; /* [31..16]  */
1987     } bits;
1988 
1989     /* Define an unsigned member */
1990     unsigned int u32;
1991 } U_LVDS_IMGSIZE2_STATIS;
1992 
1993 /* Define the union U_LVDS_IMGSIZE3_STATIS */
1994 typedef union {
1995     /* Define the struct bits */
1996     struct {
1997         unsigned int lvds_imgwidth3 : 16; /* [15..0]  */
1998         unsigned int lvds_imgheight3 : 16; /* [31..16]  */
1999     } bits;
2000 
2001     /* Define an unsigned member */
2002     unsigned int u32;
2003 } U_LVDS_IMGSIZE3_STATIS;
2004 
2005 /* Define the union U_LVDS_LANE_ORDERS0 */
2006 typedef union {
2007     /* Define the struct bits */
2008     struct {
2009         unsigned int lvds_lane0_id : 4; /* [3..0]  */
2010         unsigned int lvds_lane1_id : 4; /* [7..4]  */
2011         unsigned int lvds_lane2_id : 4; /* [11..8]  */
2012         unsigned int lvds_lane3_id : 4; /* [15..12]  */
2013         unsigned int reserved_0 : 16; /* [31..16]  */
2014     } bits;
2015 
2016     /* Define an unsigned member */
2017     unsigned int u32;
2018 } U_LVDS_LANE_ORDERS0;
2019 
2020 /* Define the union U_LVDS(N)_OUTPUT_PIX_NUM */
2021 typedef union {
2022     /* Define the struct bits */
2023     struct {
2024         unsigned int lvds_double_pix_en : 1; /* [0]  */
2025         unsigned int reserved_0 : 31; /* [31..1]  */
2026     } bits;
2027 
2028     /* Define an unsigned member */
2029     unsigned int u32;
2030 } U_LVDS_OUTPUT_PIX_NUM;
2031 
2032 /* Define the union U_LVDS_CTRL_INT_RAW */
2033 typedef union {
2034     /* Define the struct bits */
2035     struct {
2036         unsigned int lane0_sync_err_raw : 1; /* [0]  */
2037         unsigned int lane1_sync_err_raw : 1; /* [1]  */
2038         unsigned int lane2_sync_err_raw : 1; /* [2]  */
2039         unsigned int lane3_sync_err_raw : 1; /* [3]  */
2040         unsigned int reserved_0 : 12; /* [15..4]  */
2041         unsigned int link0_wr_err_raw : 1; /* [16]  */
2042         unsigned int reserved_1 : 3; /* [19..17]  */
2043         unsigned int link0_rd_err_raw : 1; /* [20]  */
2044         unsigned int reserved_2 : 3; /* [23..21]  */
2045         unsigned int lvds_state_err_raw : 1; /* [24]  */
2046         unsigned int pop_err_raw : 1; /* [25]  */
2047         unsigned int cmd_wr_err_raw : 1; /* [26]  */
2048         unsigned int cmd_rd_err_raw : 1; /* [27]  */
2049         unsigned int lvds_vsync_raw : 1; /* [28]  */
2050         unsigned int reserved_3 : 3; /* [31..29]  */
2051     } bits;
2052 
2053     /* Define an unsigned member */
2054     unsigned int u32;
2055 } U_LVDS_CTRL_INT_RAW;
2056 
2057 /* Define the union U_LVDS_CTRL_INT */
2058 typedef union {
2059     /* Define the struct bits */
2060     struct {
2061         unsigned int lane0_sync_err_st : 1; /* [0]  */
2062         unsigned int lane1_sync_err_st : 1; /* [1]  */
2063         unsigned int lane2_sync_err_st : 1; /* [2]  */
2064         unsigned int lane3_sync_err_st : 1; /* [3]  */
2065         unsigned int reserved_0 : 12; /* [15..4]  */
2066         unsigned int link0_wr_err_st : 1; /* [16]  */
2067         unsigned int reserved_1 : 3; /* [19..17]  */
2068         unsigned int link0_rd_err_st : 1; /* [20]  */
2069         unsigned int reserved_2 : 3; /* [23..21]  */
2070         unsigned int lvds_state_err_st : 1; /* [24]  */
2071         unsigned int pop_err_st : 1; /* [25]  */
2072         unsigned int cmd_wr_err_st : 1; /* [26]  */
2073         unsigned int cmd_rd_err_st : 1; /* [27]  */
2074         unsigned int lvds_vsync_st : 1; /* [28]  */
2075         unsigned int reserved_3 : 3; /* [31..29]  */
2076     } bits;
2077 
2078     /* Define an unsigned member */
2079     unsigned int u32;
2080 } U_LVDS_CTRL_INT;
2081 
2082 /* Define the union U_LVDS_CTRL_INT_MSK */
2083 typedef union {
2084     /* Define the struct bits */
2085     struct {
2086         unsigned int lane0_sync_err_msk : 1; /* [0]  */
2087         unsigned int lane1_sync_err_msk : 1; /* [1]  */
2088         unsigned int lane2_sync_err_msk : 1; /* [2]  */
2089         unsigned int lane3_sync_err_msk : 1; /* [3]  */
2090         unsigned int reserved_0 : 12; /* [15..4]  */
2091         unsigned int link0_wr_err_msk : 1; /* [16]  */
2092         unsigned int reserved_1 : 3; /* [19..17]  */
2093         unsigned int link0_rd_err_msk : 1; /* [20]  */
2094         unsigned int reserved_2 : 3; /* [23..21]  */
2095         unsigned int lvds_state_err_msk : 1; /* [24]  */
2096         unsigned int pop_err_msk : 1; /* [25]  */
2097         unsigned int cmd_wr_err_msk : 1; /* [26]  */
2098         unsigned int cmd_rd_err_msk : 1; /* [27]  */
2099         unsigned int lvds_vsync_msk : 1; /* [28]  */
2100         unsigned int reserved_3 : 3; /* [31..29]  */
2101     } bits;
2102 
2103     /* Define an unsigned member */
2104     unsigned int u32;
2105 } U_LVDS_CTRL_INT_MSK;
2106 
2107 /* Define the union U_LANE_ID0_CHN */
2108 typedef union {
2109     /* Define the struct bits */
2110     struct {
2111         unsigned int lane0_id : 4; /* [3..0]  */
2112         unsigned int lane1_id : 4; /* [7..4]  */
2113         unsigned int lane2_id : 4; /* [11..8]  */
2114         unsigned int lane3_id : 4; /* [15..12]  */
2115         unsigned int reserved_0 : 16; /* [31..16]  */
2116     } bits;
2117 
2118     /* Define an unsigned member */
2119     unsigned int u32;
2120 } U_LANE_ID0_CHN;
2121 
2122 /* Define the union U_ALIGN_INT_RAW */
2123 typedef union {
2124     /* Define the struct bits */
2125     struct {
2126         unsigned int err_full_raw : 1; /* [0]  */
2127         unsigned int err_lane0_raw : 1; /* [1]  */
2128         unsigned int err_lane1_raw : 1; /* [2]  */
2129         unsigned int err_lane2_raw : 1; /* [3]  */
2130         unsigned int err_lane3_raw : 1; /* [4]  */
2131         unsigned int reserved_0 : 27; /* [31..5]  */
2132     } bits;
2133 
2134     /* Define an unsigned member */
2135     unsigned int u32;
2136 } U_ALIGN0_INT_RAW;
2137 
2138 /* Define the union U_ALIGN_INT */
2139 typedef union {
2140     /* Define the struct bits */
2141     struct {
2142         unsigned int err_full_st : 1; /* [0]  */
2143         unsigned int err_lane0_st : 1; /* [1]  */
2144         unsigned int err_lane1_st : 1; /* [2]  */
2145         unsigned int err_lane2_st : 1; /* [3]  */
2146         unsigned int err_lane3_st : 1; /* [4]  */
2147         unsigned int reserved_0 : 27; /* [31..5]  */
2148     } bits;
2149 
2150     /* Define an unsigned member */
2151     unsigned int u32;
2152 } U_ALIGN0_INT;
2153 
2154 /* Define the union U_ALIGN_INT_MASK */
2155 typedef union {
2156     /* Define the struct bits */
2157     struct {
2158         unsigned int err_full_mask : 1; /* [0]  */
2159         unsigned int err_lane0_mask : 1; /* [1]  */
2160         unsigned int err_lane1_mask : 1; /* [2]  */
2161         unsigned int err_lane2_mask : 1; /* [3]  */
2162         unsigned int err_lane3_mask : 1; /* [4]  */
2163         unsigned int reserved_0 : 27; /* [31..5]  */
2164     } bits;
2165 
2166     /* Define an unsigned member */
2167     unsigned int u32;
2168 } U_ALIGN0_INT_MSK;
2169 
2170 /* Define the union U_CHN_INT_RAW */
2171 typedef union {
2172     /* Define the struct bits */
2173     struct {
2174         unsigned int int_lvds_ctrl_raw : 1; /* [0]  */
2175         unsigned int int_mipi_csi_raw : 1; /* [1]  */
2176         unsigned int int_mipi_ctrl_raw : 1; /* [2]  */
2177         unsigned int int_data_align_raw : 1; /* [3]  */
2178         unsigned int reserved_0 : 28; /* [31..4]  */
2179     } bits;
2180 
2181     /* Define an unsigned member */
2182     unsigned int u32;
2183 } U_CHN_INT_RAW;
2184 
2185 /* Define the union U_CHN_INT */
2186 typedef union {
2187     /* Define the struct bits */
2188     struct {
2189         unsigned int int_lvds_ctrl_st : 1; /* [0]  */
2190         unsigned int int_mipi_csi_st : 1; /* [1]  */
2191         unsigned int int_mipi_ctrl_st : 1; /* [2]  */
2192         unsigned int int_data_align_st : 1; /* [3]  */
2193         unsigned int reserved_0 : 28; /* [31..4]  */
2194     } bits;
2195 
2196     /* Define an unsigned member */
2197     unsigned int u32;
2198 } U_CHN_INT;
2199 
2200 /* Define the union U_CHN_INT_MASK */
2201 typedef union {
2202     /* Define the struct bits */
2203     struct {
2204         unsigned int int_lvds_ctrl_mask : 1; /* [0]  */
2205         unsigned int int_mipi_csi_mask : 1; /* [1]  */
2206         unsigned int int_mipi_ctrl_mask : 1; /* [2]  */
2207         unsigned int int_data_align_mask : 1; /* [3]  */
2208         unsigned int reserved_0 : 28; /* [31..4]  */
2209     } bits;
2210 
2211     /* Define an unsigned member */
2212     unsigned int u32;
2213 } U_CHN_INT_MASK;
2214 
2215 // ==============================================================================
2216 /* Define the global struct */
2217 typedef struct {
2218     volatile U_PHY_MODE_LINK PHY_MODE_LINK; /* 0x0 */
2219     volatile U_PHY_SKEW_LINK PHY_SKEW_LINK; /* 0x4 */
2220     volatile unsigned int reserved_0; /* 0x8 */
2221     volatile U_PHY_EN_LINK PHY_EN_LINK; /* 0xc */
2222     volatile unsigned int reserved_1; /* 0x10 */
2223     volatile U_PHY_CFG_LINK PHY_CFG_LINK; /* 0x14 */
2224     volatile U_PHY_DATA_LINK PHY_DATA_LINK; /* 0x18 */
2225     volatile U_PHY_PH_MIPI_LINK PHY_PH_MIPI_LINK; /* 0x1c */
2226     volatile U_PHY_DATA_MIPI_LINK PHY_DATA_MIPI_LINK; /* 0x20 */
2227     volatile U_PHY_SYNC_DCT_LINK PHY_SYNC_DCT_LINK; /* 0x24 */
2228     volatile unsigned int reserved_2[2]; /* 0x28~0x2c */
2229     volatile U_PHY_SYNC_SOF0_LINK PHY_SYNC_SOF0_LINK; /* 0x30 */
2230     volatile U_PHY_SYNC_SOF1_LINK PHY_SYNC_SOF1_LINK; /* 0x34 */
2231     volatile U_PHY_SYNC_SOF2_LINK PHY_SYNC_SOF2_LINK; /* 0x38 */
2232     volatile U_PHY_SYNC_SOF3_LINK PHY_SYNC_SOF3_LINK; /* 0x3c */
2233     volatile U_PHY_OUT_VALID_LINK PHY_OUT_VALID_LINK; /* 0x40 */
2234     volatile U_PHY_DATA_LVDS_LINK PHY_DATA_LVDS_LINK; /* 0x44 */
2235     volatile unsigned int reserved_3[3]; /* 0x48~0x50, 3 index */
2236     volatile U_PHY_PIX_PUM_LINK PHY_PIX_PUM_LINK; /* 0x54 */
2237     volatile unsigned int reserved_4[2]; /* 0x58~0x5c, 2 index */
2238     volatile U_PHY_SYNC_SOL0_LINK PHY_SYNC_SOL0_LINK; /* 0x60 */
2239     volatile U_PHY_SYNC_SOL1_LINK PHY_SYNC_SOL1_LINK; /* 0x64 */
2240     volatile U_PHY_SYNC_SOL2_LINK PHY_SYNC_SOL2_LINK; /* 0x68 */
2241     volatile U_PHY_SYNC_SOL3_LINK PHY_SYNC_SOL3_LINK; /* 0x6c */
2242     volatile unsigned int reserved_5[36]; /* 0x70~0xfc, 36 index */
2243     volatile U_CIL_TIMEOUT_LINK CIL_TIMEOUT_LINK; /* 0x100 */
2244     volatile U_CIL_FSM0_LINK CIL_FSM0_LINK; /* 0x104 */
2245     volatile U_CIL_FSM_ST0_LINK CIL_FSM_ST0_LINK; /* 0x108 */
2246     volatile U_CIL_FSM_ST1_LINK CIL_FSM_ST1_LINK; /* 0x10c */
2247     volatile U_PHY_ST0_LINK PHY_ST0_LINK; /* 0x110 */
2248     volatile U_PHY_ST1_LINK PHY_ST1_LINK; /* 0x114 */
2249     volatile U_PHY_ST2_LINK PHY_ST2_LINK; /* 0x118 */
2250     volatile U_PHY_ST3_LINK PHY_ST3_LINK; /* 0x11c */
2251     volatile unsigned int reserved_6[3]; /* 0x120~0x128, 3 index */
2252     volatile U_CIL_FSM1_LINK CIL_FSM1_LINK; /* 0x12c */
2253     volatile U_SKEW_CAL_LENGTH0_LINK SKEW_CAL_LENGTH0_LINK; /* 0x130 */
2254     volatile U_SKEW_CAL_LENGTH1_LINK SKEW_CAL_LENGTH1_LINK; /* 0x134 */
2255     volatile unsigned int reserved_7[46]; /* 0x138~0x1ec, 46 index */
2256     volatile U_MIPI_CIL_INT_RAW_LINK MIPI_CIL_INT_RAW_LINK; /* 0x1f0 */
2257     volatile U_MIPI_CIL_INT_LINK MIPI_CIL_INT_LINK; /* 0x1f4 */
2258     volatile U_MIPI_CIL_INT_MSK_LINK MIPI_CIL_INT_MSK_LINK; /* 0x1f8 */
2259     volatile unsigned int reserved_8; /* 0x1fc */
2260 } MipiRxPhyCfgTag;
2261 
2262 typedef struct {
2263     volatile U_HS_MODE_SELECT HS_MODE_SELECT; /* 0x800 */
2264     volatile unsigned int reserved_0; /* 0x804 */
2265     volatile U_PHY_EN PHY_EN; /* 0x808 */
2266     volatile U_LANE_EN LANE_EN; /* 0x80c */
2267     volatile U_PHY_CIL_CTRL PHY_CIL_CTRL; /* 0x810 */
2268     volatile unsigned int reserved_1; /* 0x814 */
2269     volatile U_PHYCFG_MODE PHYCFG_MODE; /* 0x818 */
2270     volatile U_PHYCFG_EN PHYCFG_EN; /* 0x81c */
2271     volatile U_CHN0_MEM_CTRL CHN0_MEM_CTRL; /* 0x820 */
2272     volatile U_CHN0_CLR_EN CHN0_CLR_EN; /* 0x824 */
2273     volatile U_CHN1_MEM_CTRL CHN1_MEM_CTRL; /* 0x828 */
2274     volatile U_CHN1_CLR_EN CHN1_CLR_EN; /* 0x82c */
2275     volatile unsigned int reserved_2[20]; /* 0x830~0x87c, 20 index */
2276     volatile U_MIPI_TEST_PHY MIPI_TEST_PHY; /* 0x880 */
2277     volatile unsigned int reserved_3[31]; /* 0x884~0x8fc, 31 index */
2278     volatile U_COLORBAR_CTRL_LINK0 COLORBAR_CTRL_LINK0; /* 0x900 */
2279     volatile U_COLORBAR_INIT_LINK0 COLORBAR_INIT_LINK0; /* 0x904 */
2280     volatile U_COLORBAR_V_BLK_LINK0 COLORBAR_V_BLK_LINK0; /* 0x908 */
2281     volatile U_COLORBAR_H_BLK_LINK0 COLORBAR_H_BLK_LINK0; /* 0x90c */
2282     volatile U_COLORBAR_IMG_SIZE_LINK0 COLORBAR_IMG_SIZE_LINK0; /* 0x910 */
2283     volatile U_COLORBAR_SYNC_CODE0_LINK0 COLORBAR_SYNC_CODE0_LINK0; /* 0x914 */
2284     volatile U_COLORBAR_SYNC_CODE1_LINK0 COLORBAR_SYNC_CODE1_LINK0; /* 0x918 */
2285     volatile unsigned int reserved_4[57]; /* 0x91c~0x9fc, 57 index */
2286     volatile U_PHY0_TEST_OUT PHY0_TEST_OUT; /* 0xa00 */
2287     volatile unsigned int reserved_5[379]; /* 0xa04~0xfec, 379 index */
2288     volatile U_MIPI_INT_RAW MIPI_INT_RAW; /* 0xff0 */
2289     volatile U_MIPI_INT_ST MIPI_INT_ST; /* 0xff4 */
2290     volatile U_MIPI_INT_MSK MIPI_INT_MSK; /* 0xff8 */
2291     volatile unsigned int reserved_6; /* 0xffc */
2292 } MipiRxSysRegsTag;
2293 
2294 typedef struct {
2295     volatile unsigned int reserved_0; /* 0x1000 */
2296     volatile U_MIPI_LANES_NUM MIPI_LANES_NUM; /* 0x1004 */
2297     volatile unsigned int reserved_1; /* 0x1008 */
2298     volatile U_MIPI_MAIN_INT_ST MIPI_MAIN_INT_ST; /* 0x100c */
2299     volatile U_MIPI_DI_1 MIPI_DI_1; /* 0x1010 */
2300     volatile U_MIPI_DI_2 MIPI_DI_2; /* 0x1014 */
2301     volatile unsigned int reserved_2[18]; /* 0x1018~0x105c, 18 index */
2302     volatile U_MIPI_PKT_INTR_ST MIPI_PKT_INTR_ST; /* 0x1060 */
2303     volatile U_MIPI_PKT_INTR_MSK MIPI_PKT_INTR_MSK; /* 0x1064 */
2304     volatile U_MIPI_PKT_INTR_FORCE MIPI_PKT_INTR_FORCE; /* 0x1068 */
2305     volatile unsigned int reserved_3; /* 0x106c */
2306     volatile U_MIPI_PKT_INTR2_ST MIPI_PKT_INTR2_ST; /* 0x1070 */
2307     volatile U_MIPI_PKT_INTR2_MSK MIPI_PKT_INTR2_MSK; /* 0x1074 */
2308     volatile U_MIPI_PKT_INTR2_FORCE MIPI_PKT_INTR2_FORCE; /* 0x1078 */
2309     volatile unsigned int reserved_4; /* 0x107c */
2310     volatile U_MIPI_FRAME_INTR_ST MIPI_FRAME_INTR_ST; /* 0x1080 */
2311     volatile U_MIPI_FRAME_INTR_MSK MIPI_FRAME_INTR_MSK; /* 0x1084 */
2312     volatile U_MIPI_FRAME_INTR_FORCE MIPI_FRAME_INTR_FORCE; /* 0x1088 */
2313     volatile unsigned int reserved_5; /* 0x108c */
2314     volatile U_MIPI_LINE_INTR_ST MIPI_LINE_INTR_ST; /* 0x1090 */
2315     volatile U_MIPI_LINE_INTR_MSK MIPI_LINE_INTR_MSK; /* 0x1094 */
2316     volatile U_MIPI_LINE_INTR_FORCE MIPI_LINE_INTR_FORCE; /* 0x1098 */
2317     volatile unsigned int reserved_6[25]; /* 0x109c~0x10fc, 25 index */
2318     volatile U_MIPI_USERDEF_DT MIPI_USERDEF_DT; /* 0x1100 */
2319     volatile U_MIPI_USER_DEF MIPI_USER_DEF; /* 0x1104 */
2320     volatile U_MIPI_CTRL_MODE_HS MIPI_CTRL_MODE_HS; /* 0x1108 */
2321     volatile U_MIPI_VHEND_DELAY MIPI_VHEND_DELAY; /* 0x110c */
2322     volatile unsigned int reserved_7[60]; /* 0x1110~0x11fc, 60 index */
2323     volatile U_MIPI_DOL_ID_CODE0 MIPI_DOL_ID_CODE0; /* 0x1200 */
2324     volatile U_MIPI_DOL_ID_CODE1 MIPI_DOL_ID_CODE1; /* 0x1204 */
2325     volatile U_MIPI_DOL_ID_CODE2 MIPI_DOL_ID_CODE2; /* 0x1208 */
2326     volatile unsigned int reserved_8; /* 0x120c */
2327     volatile U_MIPI_CROP_START_CHN0 MIPI_CROP_START_CHN0; /* 0x1210 */
2328     volatile U_MIPI_CROP_START_CHN1 MIPI_CROP_START_CHN1; /* 0x1214 */
2329     volatile U_MIPI_CROP_START_CHN2 MIPI_CROP_START_CHN2; /* 0x1218 */
2330     volatile U_MIPI_CROP_START_CHN3 MIPI_CROP_START_CHN3; /* 0x121c */
2331     volatile unsigned int reserved_9; /* 0x1220 */
2332     volatile U_MIPI_IMGSIZE MIPI_IMGSIZE; /* 0x1224 */
2333     volatile unsigned int reserved_10[2]; /* 0x1228~0x122c, 2 index */
2334     volatile U_MIPI_CTRL_MODE_PIXEL MIPI_CTRL_MODE_PIXEL; /* 0x1230 */
2335     volatile unsigned int reserved_11[3]; /* 0x1234~0x123c, 3 index */
2336     volatile U_MIPI_DUMMY_PIX_REG MIPI_DUMMY_PIX_REG; /* 0x1240 */
2337     volatile U_MIPI_YUVEVEN_THOLD MIPI_YUVEVEN_THOLD; /* 0x1244 */
2338     volatile unsigned int reserved_12[2]; /* 0x1248~0x124c, 2 index */
2339     volatile U_MIPI_IMGSIZE0_STATIS MIPI_IMGSIZE0_STATIS; /* 0x1250 */
2340     volatile U_MIPI_IMGSIZE1_STATIS MIPI_IMGSIZE1_STATIS; /* 0x1254 */
2341     volatile U_MIPI_IMGSIZE2_STATIS MIPI_IMGSIZE2_STATIS; /* 0x1258 */
2342     volatile U_MIPI_IMGSIZE3_STATIS MIPI_IMGSIZE3_STATIS; /* 0x125c */
2343     volatile unsigned int reserved_13[36]; /* 0x1260~0x12ec, 36 index */
2344     volatile U_MIPI_CTRL_INT_RAW MIPI_CTRL_INT_RAW; /* 0x12f0 */
2345     volatile U_MIPI_CTRL_INT MIPI_CTRL_INT; /* 0x12f4 */
2346     volatile U_MIPI_CTRL_INT_MSK MIPI_CTRL_INT_MSK; /* 0x12f8 */
2347     volatile unsigned int reserved_14; /* 0x12fc */
2348 } MipiCtrlRegsTag;
2349 
2350 typedef struct {
2351     volatile U_LVDS_LANE_SOF_01 LVDS_LANE_SOF_01; /* 0x1320 */
2352     volatile U_LVDS_LANE_SOF_23 LVDS_LANE_SOF_23; /* 0x1324 */
2353     volatile U_LVDS_LANE_EOF_01 LVDS_LANE_EOF_01; /* 0x1328 */
2354     volatile U_LVDS_LANE_EOF_23 LVDS_LANE_EOF_23; /* 0x132c */
2355     volatile U_LVDS_LANE_SOL_01 LVDS_LANE_SOL_01; /* 0x1330 */
2356     volatile U_LVDS_LANE_SOL_23 LVDS_LANE_SOL_23; /* 0x1334 */
2357     volatile U_LVDS_LANE_EOL_01 LVDS_LANE_EOL_01; /* 0x1338 */
2358     volatile U_LVDS_LANE_EOL_23 LVDS_LANE_EOL_23; /* 0x133c */
2359 } LvdsSyncCodeCfgTag;
2360 
2361 typedef struct {
2362     volatile U_LVDS_WDR LVDS_WDR; /* 0x1300 */
2363     volatile U_LVDS_DOLSCD_HBLK LVDS_DOLSCD_HBLK; /* 0x1304 */
2364     volatile U_LVDS_CTRL LVDS_CTRL; /* 0x1308 */
2365     volatile U_LVDS_IMGSIZE LVDS_IMGSIZE; /* 0x130c */
2366     volatile U_LVDS_CROP_START0 LVDS_CROP_START0; /* 0x1310 */
2367     volatile U_LVDS_CROP_START1 LVDS_CROP_START1; /* 0x1314 */
2368     volatile U_LVDS_CROP_START2 LVDS_CROP_START2; /* 0x1318 */
2369     volatile U_LVDS_CROP_START3 LVDS_CROP_START3; /* 0x131c */
2370     volatile LvdsSyncCodeCfgTag lvds_this_frame_sync_code[16]; /* 0x1320~0x151c, 16 index */
2371     volatile LvdsSyncCodeCfgTag lvds_next_frame_sync_code[16]; /* 0x1520~0x171c, 16 index */
2372     volatile U_LVDS_LI_WORD0 LVDS_LI_WORD0; /* 0x1720 */
2373     volatile U_LVDS_LI_WORD1 LVDS_LI_WORD1; /* 0x1724 */
2374     volatile U_LVDS_LI_WORD2 LVDS_LI_WORD2; /* 0x1728 */
2375     volatile U_LVDS_LI_WORD3 LVDS_LI_WORD3; /* 0x172c */
2376     volatile U_LVDS_SYNC_BORD0 LVDS_SYNC_BORD0; /* 0x1730 */
2377     volatile U_LVDS_SYNC_BORD1 LVDS_SYNC_BORD1; /* 0x1734 */
2378     volatile U_LVDS_SYNC_BORD2 LVDS_SYNC_BORD2; /* 0x1738 */
2379     volatile U_LVDS_SYNC_BORD3 LVDS_SYNC_BORD3; /* 0x173c */
2380     volatile U_LVDS_LANE_IMGSIZE_STATIS LVDS_LANE_IMGSIZE_STATIS[16]; /* 0x1740~0x177c, 16 index */
2381     volatile U_LVDS_IMGSIZE0_STATIS LVDS_IMGSIZE0_STATIS; /* 0x1780 */
2382     volatile U_LVDS_IMGSIZE1_STATIS LVDS_IMGSIZE1_STATIS; /* 0x1784 */
2383     volatile U_LVDS_IMGSIZE2_STATIS LVDS_IMGSIZE2_STATIS; /* 0x1788 */
2384     volatile U_LVDS_IMGSIZE3_STATIS LVDS_IMGSIZE3_STATIS; /* 0x178c */
2385     volatile U_LVDS_LANE_ORDERS0 LVDS_LANE_ORDERS0; /* 0x1790 */
2386     volatile unsigned int reserved_0[3]; /* 0x1794~0x179c, 3 index */
2387     volatile U_LVDS_OUTPUT_PIX_NUM LVDS_OUTPUT_PIX_NUM; /* 0x17a0 */
2388     volatile unsigned int reserved_1[19]; /* 0x17a4~0x17ec, 19 index */
2389     volatile U_LVDS_CTRL_INT_RAW LVDS_CTRL_INT_RAW; /* 0x17f0 */
2390     volatile U_LVDS_CTRL_INT LVDS_CTRL_INT; /* 0x17f4 */
2391     volatile U_LVDS_CTRL_INT_MSK LVDS_CTRL_INT_MSK; /* 0x17f8 */
2392     volatile unsigned int reserved_2; /* 0x17fc */
2393     volatile U_LANE_ID0_CHN LANE_ID0_CHN0; /* 0x1800 */
2394     volatile unsigned int reserved_3[59]; /* 0x1804~0x18ec, 59 index */
2395     volatile U_ALIGN0_INT_RAW ALIGN0_INT_RAW; /* 0x18f0 */
2396     volatile U_ALIGN0_INT ALIGN0_INT; /* 0x18f4 */
2397     volatile U_ALIGN0_INT_MSK ALIGN0_INT_MSK; /* 0x18f8 */
2398     volatile unsigned int reserved_4[445]; /* 0x18fc~0x1fec, 445 index */
2399     volatile U_CHN_INT_RAW CHN_INT_RAW; /* 0x1ff0 */
2400     volatile U_CHN_INT CHN_INT; /* 0x1ff4 */
2401     volatile U_CHN_INT_MASK CHN_INT_MASK; /* 0x1ff8 */
2402     volatile unsigned int reserved_5; /* 0x1ffc */
2403 } LvdsCtrlRegsTag;
2404 
2405 typedef struct {
2406     MipiCtrlRegsTag mipiCtrlRegs; /* 0x1004 ~ 0x12fc */
2407     LvdsCtrlRegsTag lvdsCtrlRegs; /* 0x1300 ~ 0x1ffc */
2408 } MipiRxCtrlRegsTag;
2409 
2410 /* ============================================================================== */
2411 /* Define the global struct */
2412 typedef struct {
2413     MipiRxPhyCfgTag mipiRxPhyCfg[1]; /* 0x0 ~ 0x1fc */
2414     volatile unsigned int reserved_0[384]; /* 0x200 ~ 0x7fc, 384 index */
2415     MipiRxSysRegsTag mipiRxSysRegs; /* 0x800 ~ 0xffc */
2416     MipiRxCtrlRegsTag mipiRxCtrlRegs[2]; /* 0x1000 ~ 0x1ffc, 2 index */
2417 } MipiRxRegsTypeTag;
2418 
2419 #endif /* MIPI_RX_REG_H */
2420