aboutsummaryrefslogtreecommitdiff
path: root/drivers/media/pci/cx25821/cx25821-reg.h
blob: a3fc25a4dc0bcfeb5699af9184bd12877851d882 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
/*
 *  Driver for the Conexant CX25821 PCIe bridge
 *
 *  Copyright (C) 2009 Conexant Systems Inc.
 *  Authors  <shu.lin@conexant.com>, <hiep.huynh@conexant.com>
 *
 *  This program is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation; either version 2 of the License, or
 *  (at your option) any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program; if not, write to the Free Software
 *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 */

#ifndef __CX25821_REGISTERS__
#define __CX25821_REGISTERS__

/* Risc Instructions */
#define RISC_CNT_INC	 0x00010000
#define RISC_CNT_RESET	 0x00030000
#define RISC_IRQ1		 0x01000000
#define RISC_IRQ2		 0x02000000
#define RISC_EOL		 0x04000000
#define RISC_SOL		 0x08000000
#define RISC_WRITE		 0x10000000
#define RISC_SKIP		 0x20000000
#define RISC_JUMP		 0x70000000
#define RISC_SYNC		 0x80000000
#define RISC_RESYNC		 0x80008000
#define RISC_READ		 0x90000000
#define RISC_WRITERM	 0xB0000000
#define RISC_WRITECM	 0xC0000000
#define RISC_WRITECR	 0xD0000000
#define RISC_WRITEC		 0x50000000
#define RISC_READC		 0xA0000000

#define RISC_SYNC_ODD		 0x00000000
#define RISC_SYNC_EVEN		 0x00000200
#define RISC_SYNC_ODD_VBI	 0x00000006
#define RISC_SYNC_EVEN_VBI	 0x00000207
#define RISC_NOOP			 0xF0000000

/*****************************************************************************
* ASB SRAM
 *****************************************************************************/
#define  TX_SRAM                   0x000000	/* Transmit SRAM */

/*****************************************************************************/
#define  RX_RAM                    0x010000	/* Receive SRAM */

/*****************************************************************************
* Application Layer (AL)
 *****************************************************************************/
#define  DEV_CNTRL2                0x040000	/* Device control */
#define  FLD_RUN_RISC              0x00000020

/* ***************************************************************************** */
#define  PCI_INT_MSK               0x040010	/* PCI interrupt mask */
#define  PCI_INT_STAT              0x040014	/* PCI interrupt status */
#define  PCI_INT_MSTAT             0x040018	/* PCI interrupt masked status */
#define  FLD_HAMMERHEAD_INT        (1 << 27)
#define  FLD_UART_INT              (1 << 26)
#define  FLD_IRQN_INT              (1 << 25)
#define  FLD_TM_INT                (1 << 28)
#define  FLD_I2C_3_RACK            (1 << 27)
#define  FLD_I2C_3_INT             (1 << 26)
#define  FLD_I2C_2_RACK            (1 << 25)
#define  FLD_I2C_2_INT             (1 << 24)
#define  FLD_I2C_1_RACK            (1 << 23)
#define  FLD_I2C_1_INT             (1 << 22)

#define  FLD_APB_DMA_BERR_INT      (1 << 21)
#define  FLD_AL_WR_BERR_INT        (1 << 20)
#define  FLD_AL_RD_BERR_INT        (1 << 19)
#define  FLD_RISC_WR_BERR_INT      (1 << 18)
#define  FLD_RISC_RD_BERR_INT      (1 << 17)

#define  FLD_VID_I_INT             (1 << 8)
#define  FLD_VID_H_INT             (1 << 7)
#define  FLD_VID_G_INT             (1 << 6)
#define  FLD_VID_F_INT             (1 << 5)
#define  FLD_VID_E_INT             (1 << 4)
#define  FLD_VID_D_INT             (1 << 3)
#define  FLD_VID_C_INT             (1 << 2)
#define  FLD_VID_B_INT             (1 << 1)
#define  FLD_VID_A_INT             (1 << 0)

/* ***************************************************************************** */
#define  VID_A_INT_MSK             0x040020	/* Video A interrupt mask */
#define  VID_A_INT_STAT            0x040024	/* Video A interrupt status */
#define  VID_A_INT_MSTAT           0x040028	/* Video A interrupt masked status */
#define  VID_A_INT_SSTAT           0x04002C	/* Video A interrupt set status */

/* ***************************************************************************** */
#define  VID_B_INT_MSK             0x040030	/* Video B interrupt mask */
#define  VID_B_INT_STAT            0x040034	/* Video B interrupt status */
#define  VID_B_INT_MSTAT           0x040038	/* Video B interrupt masked status */
#define  VID_B_INT_SSTAT           0x04003C	/* Video B interrupt set status */

/* ***************************************************************************** */
#define  VID_C_INT_MSK             0x040040	/* Video C interrupt mask */
#define  VID_C_INT_STAT            0x040044	/* Video C interrupt status */
#define  VID_C_INT_MSTAT           0x040048	/* Video C interrupt masked status */
#define  VID_C_INT_SSTAT           0x04004C	/* Video C interrupt set status */

/* ***************************************************************************** */
#define  VID_D_INT_MSK             0x040050	/* Video D interrupt mask */
#define  VID_D_INT_STAT            0x040054	/* Video D interrupt status */
#define  VID_D_INT_MSTAT           0x040058	/* Video D interrupt masked status */
#define  VID_D_INT_SSTAT           0x04005C	/* Video D interrupt set status */

/* ***************************************************************************** */
#define  VID_E_INT_MSK             0x040060	/* Video E interrupt mask */
#define  VID_E_INT_STAT            0x040064	/* Video E interrupt status */
#define  VID_E_INT_MSTAT           0x040068	/* Video E interrupt masked status */
#define  VID_E_INT_SSTAT           0x04006C	/* Video E interrupt set status */

/* ***************************************************************************** */
#define  VID_F_INT_MSK             0x040070	/* Video F interrupt mask */
#define  VID_F_INT_STAT            0x040074	/* Video F interrupt status */
#define  VID_F_INT_MSTAT           0x040078	/* Video F interrupt masked status */
#define  VID_F_INT_SSTAT           0x04007C	/* Video F interrupt set status */

/* ***************************************************************************** */
#define  VID_G_INT_MSK             0x040080	/* Video G interrupt mask */
#define  VID_G_INT_STAT            0x040084	/* Video G interrupt status */
#define  VID_G_INT_MSTAT           0x040088	/* Video G interrupt masked status */
#define  VID_G_INT_SSTAT           0x04008C	/* Video G interrupt set status */

/* ***************************************************************************** */
#define  VID_H_INT_MSK             0x040090	/* Video H interrupt mask */
#define  VID_H_INT_STAT            0x040094	/* Video H interrupt status */
#define  VID_H_INT_MSTAT           0x040098	/* Video H interrupt masked status */
#define  VID_H_INT_SSTAT           0x04009C	/* Video H interrupt set status */

/* ***************************************************************************** */
#define  VID_I_INT_MSK             0x0400A0	/* Video I interrupt mask */
#define  VID_I_INT_STAT            0x0400A4	/* Video I interrupt status */
#define  VID_I_INT_MSTAT           0x0400A8	/* Video I interrupt masked status */
#define  VID_I_INT_SSTAT           0x0400AC	/* Video I interrupt set status */

/* ***************************************************************************** */
#define  VID_J_INT_MSK             0x0400B0	/* Video J interrupt mask */
#define  VID_J_INT_STAT            0x0400B4	/* Video J interrupt status */
#define  VID_J_INT_MSTAT           0x0400B8	/* Video J interrupt masked status */
#define  VID_J_INT_SSTAT           0x0400BC	/* Video J interrupt set status */

#define  FLD_VID_SRC_OPC_ERR       0x00020000
#define  FLD_VID_DST_OPC_ERR       0x00010000
#define  FLD_VID_SRC_SYNC          0x00002000
#define  FLD_VID_DST_SYNC          0x00001000
#define  FLD_VID_SRC_UF            0x00000200
#define  FLD_VID_DST_OF            0x00000100
#define  FLD_VID_SRC_RISC2         0x00000020
#define  FLD_VID_DST_RISC2         0x00000010
#define  FLD_VID_SRC_RISC1         0x00000002
#define  FLD_VID_DST_RISC1         0x00000001
#define  FLD_VID_SRC_ERRORS		(FLD_VID_SRC_OPC_ERR | FLD_VID_SRC_SYNC | FLD_VID_SRC_UF)
#define  FLD_VID_DST_ERRORS		(FLD_VID_DST_OPC_ERR | FLD_VID_DST_SYNC | FLD_VID_DST_OF)

/* ***************************************************************************** */
#define  AUD_A_INT_MSK             0x0400C0	/* Audio Int interrupt mask */
#define  AUD_A_INT_STAT            0x0400C4	/* Audio Int interrupt status */
#define  AUD_A_INT_MSTAT           0x0400C8	/* Audio Int interrupt masked status */
#define  AUD_A_INT_SSTAT           0x0400CC	/* Audio Int interrupt set status */

/* ***************************************************************************** */
#define  AUD_B_INT_MSK             0x0400D0	/* Audio Int interrupt mask */
#define  AUD_B_INT_STAT            0x0400D4	/* Audio Int interrupt status */
#define  AUD_B_INT_MSTAT           0x0400D8	/* Audio Int interrupt masked status */
#define  AUD_B_INT_SSTAT           0x0400DC	/* Audio Int interrupt set status */

/* ***************************************************************************** */
#define  AUD_C_INT_MSK             0x0400E0	/* Audio Int interrupt mask */
#define  AUD_C_INT_STAT            0x0400E4	/* Audio Int interrupt status */
#define  AUD_C_INT_MSTAT           0x0400E8	/* Audio Int interrupt masked status */
#define  AUD_C_INT_SSTAT           0x0400EC	/* Audio Int interrupt set status */

/* ***************************************************************************** */
#define  AUD_D_INT_MSK             0x0400F0	/* Audio Int interrupt mask */
#define  AUD_D_INT_STAT            0x0400F4	/* Audio Int interrupt status */
#define  AUD_D_INT_MSTAT           0x0400F8	/* Audio Int interrupt masked status */
#define  AUD_D_INT_SSTAT           0x0400FC	/* Audio Int interrupt set status */

/* ***************************************************************************** */
#define  AUD_E_INT_MSK             0x040100	/* Audio Int interrupt mask */
#define  AUD_E_INT_STAT            0x040104	/* Audio Int interrupt status */
#define  AUD_E_INT_MSTAT           0x040108	/* Audio Int interrupt masked status */
#define  AUD_E_INT_SSTAT           0x04010C	/* Audio Int interrupt set status */

#define  FLD_AUD_SRC_OPC_ERR       0x00020000
#define  FLD_AUD_DST_OPC_ERR       0x00010000
#define  FLD_AUD_SRC_SYNC          0x00002000
#define  FLD_AUD_DST_SYNC          0x00001000
#define  FLD_AUD_SRC_OF            0x00000200
#define  FLD_AUD_DST_OF            0x00000100
#define  FLD_AUD_SRC_RISCI2        0x00000020
#define  FLD_AUD_DST_RISCI2        0x00000010
#define  FLD_AUD_SRC_RISCI1        0x00000002
#define  FLD_AUD_DST_RISCI1        0x00000001

/* ***************************************************************************** */
#define  MBIF_A_INT_MSK             0x040110	/* MBIF Int interrupt mask */
#define  MBIF_A_INT_STAT            0x040114	/* MBIF Int interrupt status */
#define  MBIF_A_INT_MSTAT           0x040118	/* MBIF Int interrupt masked status */
#define  MBIF_A_INT_SSTAT           0x04011C	/* MBIF Int interrupt set status */

/* ***************************************************************************** */
#define  MBIF_B_INT_MSK             0x040120	/* MBIF Int interrupt mask */
#define  MBIF_B_INT_STAT            0x040124	/* MBIF Int interrupt status */
#define  MBIF_B_INT_MSTAT           0x040128	/* MBIF Int interrupt masked status */
#define  MBIF_B_INT_SSTAT           0x04012C	/* MBIF Int interrupt set status */

#define  FLD_MBIF_DST_OPC_ERR       0x00010000
#define  FLD_MBIF_DST_SYNC          0x00001000
#define  FLD_MBIF_DST_OF            0x00000100
#define  FLD_MBIF_DST_RISCI2        0x00000010
#define  FLD_MBIF_DST_RISCI1        0x00000001

/* ***************************************************************************** */
#define  AUD_EXT_INT_MSK           0x040060	/* Audio Ext interrupt mask */
#define  AUD_EXT_INT_STAT          0x040064	/* Audio Ext interrupt status */
#define  AUD_EXT_INT_MSTAT         0x040068	/* Audio Ext interrupt masked status */
#define  AUD_EXT_INT_SSTAT         0x04006C	/* Audio Ext interrupt set status */
#define  FLD_AUD_EXT_OPC_ERR       0x00010000
#define  FLD_AUD_EXT_SYNC          0x00001000
#define  FLD_AUD_EXT_OF            0x00000100
#define  FLD_AUD_EXT_RISCI2        0x00000010
#define  FLD_AUD_EXT_RISCI1        0x00000001

/* ***************************************************************************** */
#define  GPIO_LO                   0x110010	/* Lower  of GPIO pins [31:0] */
#define  GPIO_HI                   0x110014	/* Upper WORD  of GPIO pins [47:31] */

#define  GPIO_LO_OE                0x110018	/* Lower  of GPIO output enable [31:0] */
#define  GPIO_HI_OE                0x11001C	/* Upper word  of GPIO output enable [47:32] */

#define  GPIO_LO_INT_MSK           0x11003C	/* GPIO interrupt mask */
#define  GPIO_LO_INT_STAT          0x110044	/* GPIO interrupt status */
#define  GPIO_LO_INT_MSTAT         0x11004C	/* GPIO interrupt masked status */
#define  GPIO_LO_ISM_SNS           0x110054	/* GPIO interrupt sensitivity */
#define  GPIO_LO_ISM_POL           0x11005C	/* GPIO interrupt polarity */

#define  GPIO_HI_INT_MSK           0x110040	/* GPIO interrupt mask */
#define  GPIO_HI_INT_STAT          0x110048	/* GPIO interrupt status */
#define  GPIO_HI_INT_MSTAT         0x110050	/* GPIO interrupt masked status */
#define  GPIO_HI_ISM_SNS           0x110058	/* GPIO interrupt sensitivity */
#define  GPIO_HI_ISM_POL           0x110060	/* GPIO interrupt polarity */

#define  FLD_GPIO43_INT            (1 << 11)
#define  FLD_GPIO42_INT            (1 << 10)
#define  FLD_GPIO41_INT            (1 << 9)
#define  FLD_GPIO40_INT            (1 << 8)

#define  FLD_GPIO9_INT             (1 << 9)
#define  FLD_GPIO8_INT             (1 << 8)
#define  FLD_GPIO7_INT             (1 << 7)
#define  FLD_GPIO6_INT             (1 << 6)
#define  FLD_GPIO5_INT             (1 << 5)
#define  FLD_GPIO4_INT             (1 << 4)
#define  FLD_GPIO3_INT             (1 << 3)
#define  FLD_GPIO2_INT             (1 << 2)
#define  FLD_GPIO1_INT             (1 << 1)
#define  FLD_GPIO0_INT             (1 << 0)

/* ***************************************************************************** */
#define  TC_REQ                    0x040090	/* Rider PCI Express traFFic class request */

/* ***************************************************************************** */
#define  TC_REQ_SET                0x040094	/* Rider PCI Express traFFic class request set */

/* ***************************************************************************** */
/* Rider */
/* ***************************************************************************** */

/* PCI Compatible Header */
/* ***************************************************************************** */
#define  RDR_CFG0                  0x050000
#define  RDR_VENDOR_DEVICE_ID_CFG  0x050000

/* ***************************************************************************** */
#define  RDR_CFG1                  0x050004

/* ***************************************************************************** */
#define  RDR_CFG2                  0x050008

/* ***************************************************************************** */
#define  RDR_CFG3                  0x05000C

/* ***************************************************************************** */
#define  RDR_CFG4                  0x050010

/* ***************************************************************************** */
#define  RDR_CFG5                  0x050014

/* ***************************************************************************** */
#define  RDR_CFG6                  0x050018

/* ***************************************************************************** */
#define  RDR_CFG7                  0x05001C

/* ***************************************************************************** */
#define  RDR_CFG8                  0x050020

/* ***************************************************************************** */
#define  RDR_CFG9                  0x050024

/* ***************************************************************************** */
#define  RDR_CFGA                  0x050028

/* ***************************************************************************** */
#define  RDR_CFGB                  0x05002C
#define  RDR_SUSSYSTEM_ID_CFG      0x05002C

/* ***************************************************************************** */
#define  RDR_CFGC                  0x050030

/* ***************************************************************************** */
#define  RDR_CFGD                  0x050034

/* ***************************************************************************** */
#define  RDR_CFGE                  0x050038

/* ***************************************************************************** */
#define  RDR_CFGF                  0x05003C

/* ***************************************************************************** */
/* PCI-Express Capabilities */
/* ***************************************************************************** */
#define  RDR_PECAP                 0x050040

/* ***************************************************************************** */
#define  RDR_PEDEVCAP              0x050044

/* ***************************************************************************** */
#define  RDR_PEDEVSC               0x050048

/* ***************************************************************************** */
#define  RDR_PELINKCAP             0x05004C

/* ***************************************************************************** */
#define  RDR_PELINKSC              0x050050

/* ***************************************************************************** */
#define  RDR_PMICAP                0x050080

/* ***************************************************************************** */
#define  RDR_PMCSR                 0x050084

/* ***************************************************************************** */
#define  RDR_VPDCAP                0x050090

/* ***************************************************************************** */
#define  RDR_VPDDATA               0x050094

/* ***************************************************************************** */
#define  RDR_MSICAP                0x0500A0

/* ***************************************************************************** */
#define  RDR_MSIARL                0x0500A4

/* ***************************************************************************** */
#define  RDR_MSIARU                0x0500A8

/* ***************************************************************************** */
#define  RDR_MSIDATA               0x0500AC

/* ***************************************************************************** */
/* PCI Express Extended Capabilities */
/* ***************************************************************************** */
#define  RDR_AERXCAP               0x050100

/* ***************************************************************************** */
#define  RDR_AERUESTA              0x050104

/* ***************************************************************************** */
#define  RDR_AERUEMSK              0x050108

/* ***************************************************************************** */
#define  RDR_AERUESEV              0x05010C

/* ***************************************************************************** */
#define  RDR_AERCESTA              0x050110

/* ***************************************************************************** */
#define  RDR_AERCEMSK              0x050114

/* ***************************************************************************** */
#define  RDR_AERCC                 0x050118

/* ***************************************************************************** */
#define  RDR_AERHL0                0x05011C

/* ***************************************************************************** */
#define  RDR_AERHL1                0x050120

/* ***************************************************************************** */
#define  RDR_AERHL2                0x050124

/* ***************************************************************************** */
#define  RDR_AERHL3                0x050128

/* ***************************************************************************** */
#define  RDR_VCXCAP                0x050200

/* ***************************************************************************** */
#define  RDR_VCCAP1                0x050204

/* ***************************************************************************** */
#define  RDR_VCCAP2                0x050208

/* ***************************************************************************** */
#define  RDR_VCSC                  0x05020C

/* ***************************************************************************** */
#define  RDR_VCR0_CAP              0x050210

/* ***************************************************************************** */
#define  RDR_VCR0_CTRL             0x050214

/* ***************************************************************************** */
#define  RDR_VCR0_STAT             0x050218

/* ***************************************************************************** */
#define  RDR_VCR1_CAP              0x05021C

/* ***************************************************************************** */
#define  RDR_VCR1_CTRL             0x050220

/* ***************************************************************************** */
#define  RDR_VCR1_STAT             0x050224

/* ***************************************************************************** */
#define  RDR_VCR2_CAP              0x050228

/* ***************************************************************************** */
#define  RDR_VCR2_CTRL             0x05022C

/* ***************************************************************************** */
#define  RDR_VCR2_STAT             0x050230

/* ***************************************************************************** */
#define  RDR_VCR3_CAP              0x050234

/* ***************************************************************************** */
#define  RDR_VCR3_CTRL             0x050238

/* ***************************************************************************** */
#define  RDR_VCR3_STAT             0x05023C

/* ***************************************************************************** */
#define  RDR_VCARB0                0x050240

/* ***************************************************************************** */
#define  RDR_VCARB1                0x050244

/* ***************************************************************************** */
#define  RDR_VCARB2                0x050248

/* ***************************************************************************** */
#define  RDR_VCARB3                0x05024C

/* ***************************************************************************** */
#define  RDR_VCARB4                0x050250

/* ***************************************************************************** */
#define  RDR_VCARB5                0x050254

/* ***************************************************************************** */
#define  RDR_VCARB6                0x050258

/* ***************************************************************************** */
#define  RDR_VCARB7                0x05025C

/* ***************************************************************************** */
#define  RDR_RDRSTAT0              0x050300

/* ***************************************************************************** */
#define  RDR_RDRSTAT1              0x050304

/* ***************************************************************************** */
#define  RDR_RDRCTL0               0x050308

/* ***************************************************************************** */
#define  RDR_RDRCTL1               0x05030C

/* ***************************************************************************** */
/* Transaction Layer Registers */
/* ***************************************************************************** */
#define  RDR_TLSTAT0               0x050310

/* ***************************************************************************** */
#define  RDR_TLSTAT1               0x050314

/* ***************************************************************************** */
#define  RDR_TLCTL0                0x050318
#define  FLD_CFG_UR_CPL_MODE       0x00000040
#define  FLD_CFG_CORR_ERR_QUITE    0x00000020
#define  FLD_CFG_RCB_CK_EN         0x00000010
#define  FLD_CFG_BNDRY_CK_EN       0x00000008
#define  FLD_CFG_BYTE_EN_CK_EN     0x00000004
#define  FLD_CFG_RELAX_ORDER_MSK   0x00000002
#define  FLD_CFG_TAG_ORDER_EN      0x00000001

/* ***************************************************************************** */
#define  RDR_TLCTL1                0x05031C

/* ***************************************************************************** */
#define  RDR_REQRCAL               0x050320

/* ***************************************************************************** */
#define  RDR_REQRCAU               0x050324

/* ***************************************************************************** */
#define  RDR_REQEPA                0x050328

/* ***************************************************************************** */
#define  RDR_REQCTRL               0x05032C

/* ***************************************************************************** */
#define  RDR_REQSTAT               0x050330

/* ***************************************************************************** */
#define  RDR_TL_TEST               0x050334

/* ***************************************************************************** */
#define  RDR_VCR01_CTL             0x050348

/* ***************************************************************************** */
#define  RDR_VCR23_CTL             0x05034C

/* ***************************************************************************** */
#define  RDR_RX_VCR0_FC            0x050350

/* ***************************************************************************** */
#define  RDR_RX_VCR1_FC            0x050354

/* ***************************************************************************** */
#define  RDR_RX_VCR2_FC            0x050358

/* ***************************************************************************** */
#define  RDR_RX_VCR3_FC            0x05035C

/* ***************************************************************************** */
/* Data Link Layer Registers */
/* ***************************************************************************** */
#define  RDR_DLLSTAT               0x050360

/* ***************************************************************************** */
#define  RDR_DLLCTRL               0x050364

/* ***************************************************************************** */
#define  RDR_REPLAYTO              0x050368

/* ***************************************************************************** */
#define  RDR_ACKLATTO              0x05036C

/* ***************************************************************************** */
/* MAC Layer Registers */
/* ***************************************************************************** */
#define  RDR_MACSTAT0              0x050380

/* ***************************************************************************** */
#define  RDR_MACSTAT1              0x050384

/* ***************************************************************************** */
#define  RDR_MACCTRL0              0x050388

/* ***************************************************************************** */
#define  RDR_MACCTRL1              0x05038C

/* ***************************************************************************** */
#define  RDR_MACCTRL2              0x050390

/* ***************************************************************************** */
#define  RDR_MAC_LB_DATA           0x050394

/* ***************************************************************************** */
#define  RDR_L0S_EXIT_LAT          0x050398

/* ***************************************************************************** */
/* DMAC */
/* ***************************************************************************** */
#define  DMA1_PTR1                 0x100000	/* DMA Current Ptr : Ch#1 */

/* ***************************************************************************** */
#define  DMA2_PTR1                 0x100004	/* DMA Current Ptr : Ch#2 */

/* ***************************************************************************** */
#define  DMA3_PTR1                 0x100008	/* DMA Current Ptr : Ch#3 */

/* ***************************************************************************** */
#define  DMA4_PTR1                 0x10000C	/* DMA Current Ptr : Ch#4 */

/* ***************************************************************************** */
#define  DMA5_PTR1                 0x100010	/* DMA Current Ptr : Ch#5 */

/* ***************************************************************************** */
#define  DMA6_PTR1                 0x100014	/* DMA Current Ptr : Ch#6 */

/* ***************************************************************************** */
#define  DMA7_PTR1                 0x100018	/* DMA Current Ptr : Ch#7 */

/* ***************************************************************************** */
#define  DMA8_PTR1                 0x10001C	/* DMA Current Ptr : Ch#8 */

/* ***************************************************************************** */
#define  DMA9_PTR1                 0x100020	/* DMA Current Ptr : Ch#9 */

/* ***************************************************************************** */
#define  DMA10_PTR1                0x100024	/* DMA Current Ptr : Ch#10 */

/* ***************************************************************************** */
#define  DMA11_PTR1                0x100028	/* DMA Current Ptr : Ch#11 */

/* ***************************************************************************** */
#define  DMA12_PTR1                0x10002C	/* DMA Current Ptr : Ch#12 */

/* ***************************************************************************** */
#define  DMA13_PTR1                0x100030	/* DMA Current Ptr : Ch#13 */

/* ***************************************************************************** */
#define  DMA14_PTR1                0x100034	/* DMA Current Ptr : Ch#14 */

/* ***************************************************************************** */
#define  DMA15_PTR1                0x100038	/* DMA Current Ptr : Ch#15 */

/* ***************************************************************************** */
#define  DMA16_PTR1                0x10003C	/* DMA Current Ptr : Ch#16 */

/* ***************************************************************************** */
#define  DMA17_PTR1                0x100040	/* DMA Current Ptr : Ch#17 */

/* ***************************************************************************** */
#define  DMA18_PTR1                0x100044	/* DMA Current Ptr : Ch#18 */

/* ***************************************************************************** */
#define  DMA19_PTR1                0x100048	/* DMA Current Ptr : Ch#19 */

/* ***************************************************************************** */
#define  DMA20_PTR1                0x10004C	/* DMA Current Ptr : Ch#20 */

/* ***************************************************************************** */
#define  DMA21_PTR1                0x100050	/* DMA Current Ptr : Ch#21 */

/* ***************************************************************************** */
#define  DMA22_PTR1                0x100054	/* DMA Current Ptr : Ch#22 */

/* ***************************************************************************** */
#define  DMA23_PTR1                0x100058	/* DMA Current Ptr : Ch#23 */

/* ***************************************************************************** */
#define  DMA24_PTR1                0x10005C	/* DMA Current Ptr : Ch#24 */

/* ***************************************************************************** */
#define  DMA25_PTR1                0x100060	/* DMA Current Ptr : Ch#25 */

/* ***************************************************************************** */
#define  DMA26_PTR1                0x100064	/* DMA Current Ptr : Ch#26 */

/* ***************************************************************************** */
#define  DMA1_PTR2                 0x100080	/* DMA Tab Ptr : Ch#1 */

/* ***************************************************************************** */
#define  DMA2_PTR2                 0x100084	/* DMA Tab Ptr : Ch#2 */

/* ***************************************************************************** */
#define  DMA3_PTR2                 0x100088	/* DMA Tab Ptr : Ch#3 */

/* ***************************************************************************** */
#define  DMA4_PTR2                 0x10008C	/* DMA Tab Ptr : Ch#4 */

/* ***************************************************************************** */
#define  DMA5_PTR2                 0x100090	/* DMA Tab Ptr : Ch#5 */

/* ***************************************************************************** */
#define  DMA6_PTR2                 0x100094	/* DMA Tab Ptr : Ch#6 */

/* ***************************************************************************** */
#define  DMA7_PTR2                 0x100098	/* DMA Tab Ptr : Ch#7 */

/* ***************************************************************************** */
#define  DMA8_PTR2                 0x10009C	/* DMA Tab Ptr : Ch#8 */

/* ***************************************************************************** */
#define  DMA9_PTR2                 0x1000A0	/* DMA Tab Ptr : Ch#9 */

/* ***************************************************************************** */
#define  DMA10_PTR2                0x1000A4	/* DMA Tab Ptr : Ch#10 */

/* ***************************************************************************** */
#define  DMA11_PTR2                0x1000A8	/* DMA Tab Ptr : Ch#11 */

/* ***************************************************************************** */
#define  DMA12_PTR2                0x1000AC	/* DMA Tab Ptr : Ch#12 */

/* ***************************************************************************** */
#define  DMA13_PTR2                0x1000B0	/* DMA Tab Ptr : Ch#13 */

/* ***************************************************************************** */
#define  DMA14_PTR2                0x1000B4	/* DMA Tab Ptr : Ch#14 */

/* ***************************************************************************** */
#define  DMA15_PTR2                0x1000B8	/* DMA Tab Ptr : Ch#15 */

/* ***************************************************************************** */
#define  DMA16_PTR2                0x1000BC	/* DMA Tab Ptr : Ch#16 */

/* ***************************************************************************** */
#define  DMA17_PTR2                0x1000C0	/* DMA Tab Ptr : Ch#17 */

/* ***************************************************************************** */
#define  DMA18_PTR2                0x1000C4	/* DMA Tab Ptr : Ch#18 */

/* ***************************************************************************** */
#define  DMA19_PTR2                0x1000C8	/* DMA Tab Ptr : Ch#19 */

/* ***************************************************************************** */
#define  DMA20_PTR2                0x1000CC	/* DMA Tab Ptr : Ch#20 */

/* ***************************************************************************** */
#define  DMA21_PTR2                0x1000D0	/* DMA Tab Ptr : Ch#21 */

/* ***************************************************************************** */
#define  DMA22_PTR2                0x1000D4	/* DMA Tab Ptr : Ch#22 */

/* ***************************************************************************** */
#define  DMA23_PTR2                0x1000D8	/* DMA Tab Ptr : Ch#23 */

/* ***************************************************************************** */
#define  DMA24_PTR2                0x1000DC	/* DMA Tab Ptr : Ch#24 */

/* ***************************************************************************** */
#define  DMA25_PTR2                0x1000E0	/* DMA Tab Ptr : Ch#25 */

/* ***************************************************************************** */
#define  DMA26_PTR2                0x1000E4	/* DMA Tab Ptr : Ch#26 */

/* ***************************************************************************** */
#define  DMA1_CNT1                 0x100100	/* DMA BuFFer Size : Ch#1 */

/* ***************************************************************************** */
#define  DMA2_CNT1                 0x100104	/* DMA BuFFer Size : Ch#2 */

/* ***************************************************************************** */
#define  DMA3_CNT1                 0x100108	/* DMA BuFFer Size : Ch#3 */

/* ***************************************************************************** */
#define  DMA4_CNT1                 0x10010C	/* DMA BuFFer Size : Ch#4 */

/* ***************************************************************************** */
#define  DMA5_CNT1                 0x100110	/* DMA BuFFer Size : Ch#5 */

/* ***************************************************************************** */
#define  DMA6_CNT1                 0x100114	/* DMA BuFFer Size : Ch#6 */

/* ***************************************************************************** */
#define  DMA7_CNT1                 0x100118	/* DMA BuFFer Size : Ch#7 */

/* ***************************************************************************** */
#define  DMA8_CNT1                 0x10011C	/* DMA BuFFer Size : Ch#8 */

/* ***************************************************************************** */
#define  DMA9_CNT1                 0x100120	/* DMA BuFFer Size : Ch#9 */

/* ***************************************************************************** */
#define  DMA10_CNT1                0x100124	/* DMA BuFFer Size : Ch#10 */

/* ***************************************************************************** */
#define  DMA11_CNT1                0x100128	/* DMA BuFFer Size : Ch#11 */

/* ***************************************************************************** */
#define  DMA12_CNT1                0x10012C	/* DMA BuFFer Size : Ch#12 */

/* ***************************************************************************** */
#define  DMA13_CNT1                0x100130	/* DMA BuFFer Size : Ch#13 */

/* ***************************************************************************** */
#define  DMA14_CNT1                0x100134	/* DMA BuFFer Size : Ch#14 */

/* ***************************************************************************** */
#define  DMA15_CNT1                0x100138	/* DMA BuFFer Size : Ch#15 */

/* ***************************************************************************** */
#define  DMA16_CNT1                0x10013C	/* DMA BuFFer Size : Ch#16 */

/* ***************************************************************************** */
#define  DMA17_CNT1                0x100140	/* DMA BuFFer Size : Ch#17 */

/* ***************************************************************************** */
#define  DMA18_CNT1                0x100144	/* DMA BuFFer Size : Ch#18 */

/* ***************************************************************************** */
#define  DMA19_CNT1                0x100148	/* DMA BuFFer Size : Ch#19 */

/* ***************************************************************************** */
#define  DMA20_CNT1                0x10014C	/* DMA BuFFer Size : Ch#20 */

/* ***************************************************************************** */
#define  DMA21_CNT1                0x100150	/* DMA BuFFer Size : Ch#21 */

/* ***************************************************************************** */
#define  DMA22_CNT1                0x100154	/* DMA BuFFer Size : Ch#22 */

/* ***************************************************************************** */
#define  DMA23_CNT1                0x100158	/* DMA BuFFer Size : Ch#23 */

/* ***************************************************************************** */
#define  DMA24_CNT1                0x10015C	/* DMA BuFFer Size : Ch#24 */

/* ***************************************************************************** */
#define  DMA25_CNT1                0x100160	/* DMA BuFFer Size : Ch#25 */

/* ***************************************************************************** */
#define  DMA26_CNT1                0x100164	/* DMA BuFFer Size : Ch#26 */

/* ***************************************************************************** */
#define  DMA1_CNT2                 0x100180	/* DMA Table Size : Ch#1 */

/* ***************************************************************************** */
#define  DMA2_CNT2                 0x100184	/* DMA Table Size : Ch#2 */

/* ***************************************************************************** */
#define  DMA3_CNT2                 0x100188	/* DMA Table Size : Ch#3 */

/* ***************************************************************************** */
#define  DMA4_CNT2                 0x10018C	/* DMA Table Size : Ch#4 */

/* ***************************************************************************** */
#define  DMA5_CNT2                 0x100190	/* DMA Table Size : Ch#5 */

/* ***************************************************************************** */
#define  DMA6_CNT2                 0x100194	/* DMA Table Size : Ch#6 */

/* ***************************************************************************** */
#define  DMA7_CNT2                 0x100198	/* DMA Table Size : Ch#7 */

/* ***************************************************************************** */
#define  DMA8_CNT2                 0x10019C	/* DMA Table Size : Ch#8 */

/* ***************************************************************************** */
#define  DMA9_CNT2                 0x1001A0	/* DMA Table Size : Ch#9 */

/* ***************************************************************************** */
#define  DMA10_CNT2                0x1001A4	/* DMA Table Size : Ch#10 */

/* ***************************************************************************** */
#define  DMA11_CNT2                0x1001A8	/* DMA Table Size : Ch#11 */

/* ***************************************************************************** */
#define  DMA12_CNT2                0x1001AC	/* DMA Table Size : Ch#12 */

/* ***************************************************************************** */
#define  DMA13_CNT2                0x1001B0	/* DMA Table Size : Ch#13 */

/* ***************************************************************************** */
#define  DMA14_CNT2                0x1001B4	/* DMA Table Size : Ch#14 */

/* ***************************************************************************** */
#define  DMA15_CNT2                0x1001B8	/* DMA Table Size : Ch#15 */

/* ***************************************************************************** */
#define  DMA16_CNT2                0x1001BC	/* DMA Table Size : Ch#16 */

/* ***************************************************************************** */
#define  DMA17_CNT2                0x1001C0	/* DMA Table Size : Ch#17 */

/* ***************************************************************************** */
#define  DMA18_CNT2                0x1001C4	/* DMA Table Size : Ch#18 */

/* ***************************************************************************** */
#define  DMA19_CNT2                0x1001C8	/* DMA Table Size : Ch#19 */

/* ***************************************************************************** */
#define  DMA20_CNT2                0x1001CC	/* DMA Table Size : Ch#20 */

/* ***************************************************************************** */
#define  DMA21_CNT2                0x1001D0	/* DMA Table Size : Ch#21 */

/* ***************************************************************************** */
#define  DMA22_CNT2                0x1001D4	/* DMA Table Size : Ch#22 */

/* ***************************************************************************** */
#define  DMA23_CNT2                0x1001D8	/* DMA Table Size : Ch#23 */

/* ***************************************************************************** */
#define  DMA24_CNT2                0x1001DC	/* DMA Table Size : Ch#24 */

/* ***************************************************************************** */
#define  DMA25_CNT2                0x1001E0	/* DMA Table Size : Ch#25 */

/* ***************************************************************************** */
#define  DMA26_CNT2                0x1001E4	/* DMA Table Size : Ch#26 */

/* ***************************************************************************** */
 /* ITG */
/* ***************************************************************************** */
#define  TM_CNT_LDW                0x110000	/* Timer : Counter low */

/* ***************************************************************************** */
#define  TM_CNT_UW                 0x110004	/* Timer : Counter high word */

/* ***************************************************************************** */
#define  TM_LMT_LDW                0x110008	/* Timer : Limit low */

/* ***************************************************************************** */
#define  TM_LMT_UW                 0x11000C	/* Timer : Limit high word */

/* ***************************************************************************** */
#define  GP0_IO                    0x110010	/* GPIO output enables data I/O */
#define  FLD_GP_OE                 0x00FF0000	/* GPIO: GP_OE output enable */
#define  FLD_GP_IN                 0x0000FF00	/* GPIO: GP_IN status */
#define  FLD_GP_OUT                0x000000FF	/* GPIO: GP_OUT control */

/* ***************************************************************************** */
#define  GPIO_ISM                  0x110014	/* GPIO interrupt sensitivity mode */
#define  FLD_GP_ISM_SNS            0x00000070
#define  FLD_GP_ISM_POL            0x00000007

/* ***************************************************************************** */
#define  SOFT_RESET                0x11001C	/* Output system reset reg */
#define  FLD_PECOS_SOFT_RESET      0x00000001

/* ***************************************************************************** */
#define  MC416_RWD                 0x110020	/* MC416 GPIO[18:3] pin */
#define  MC416_OEN                 0x110024	/* Output enable of GPIO[18:3] */
#define  MC416_CTL                 0x110028

/* ***************************************************************************** */
#define  ALT_PIN_OUT_SEL           0x11002C	/* Alternate GPIO output select */

#define  FLD_ALT_GPIO_OUT_SEL      0xF0000000
/* 0          Disabled <-- default */
/* 1          GPIO[0] */
/* 2          GPIO[10] */
/* 3          VIP_656_DATA_VAL */
/* 4          VIP_656_DATA[0] */
/* 5          VIP_656_CLK */
/* 6          VIP_656_DATA_EXT[1] */
/* 7          VIP_656_DATA_EXT[0] */
/* 8          ATT_IF */

#define  FLD_AUX_PLL_CLK_ALT_SEL   0x0F000000
/* 0          AUX_PLL_CLK<-- default */
/* 1          GPIO[2] */
/* 2          GPIO[10] */
/* 3          VIP_656_DATA_VAL */
/* 4          VIP_656_DATA[0] */
/* 5          VIP_656_CLK */
/* 6          VIP_656_DATA_EXT[1] */
/* 7          VIP_656_DATA_EXT[0] */

#define  FLD_IR_TX_ALT_SEL         0x00F00000
/* 0          IR_TX <-- default */
/* 1          GPIO[1] */
/* 2          GPIO[10] */
/* 3          VIP_656_DATA_VAL */
/* 4          VIP_656_DATA[0] */
/* 5          VIP_656_CLK */
/* 6          VIP_656_DATA_EXT[1] */
/* 7          VIP_656_DATA_EXT[0] */

#define  FLD_IR_RX_ALT_SEL         0x000F0000
/* 0          IR_RX <-- default */
/* 1          GPIO[0] */
/* 2          GPIO[10] */
/* 3          VIP_656_DATA_VAL */
/* 4          VIP_656_DATA[0] */
/* 5          VIP_656_CLK */
/* 6          VIP_656_DATA_EXT[1] */
/* 7          VIP_656_DATA_EXT[0] */

#define  FLD_GPIO10_ALT_SEL        0x0000F000
/* 0          GPIO[10] <-- default */
/* 1          GPIO[0] */
/* 2          GPIO[10] */
/* 3          VIP_656_DATA_VAL */
/* 4          VIP_656_DATA[0] */
/* 5          VIP_656_CLK */
/* 6          VIP_656_DATA_EXT[1] */
/* 7          VIP_656_DATA_EXT[0] */

#define  FLD_GPIO2_ALT_SEL         0x00000F00
/* 0          GPIO[2] <-- default */
/* 1          GPIO[1] */
/* 2          GPIO[10] */
/* 3          VIP_656_DATA_VAL */
/* 4          VIP_656_DATA[0] */
/* 5          VIP_656_CLK */
/* 6          VIP_656_DATA_EXT[1] */
/* 7          VIP_656_DATA_EXT[0] */

#define  FLD_GPIO1_ALT_SEL         0x000000F0
/* 0          GPIO[1] <-- default */
/* 1          GPIO[0] */
/* 2          GPIO[10] */
/* 3          VIP_656_DATA_VAL */
/* 4          VIP_656_DATA[0] */
/* 5          VIP_656_CLK */
/* 6          VIP_656_DATA_EXT[1] */
/* 7          VIP_656_DATA_EXT[0] */

#define  FLD_GPIO0_ALT_SEL         0x0000000F
/* 0          GPIO[0] <-- default */
/* 1          GPIO[1] */
/* 2          GPIO[10] */
/* 3          VIP_656_DATA_VAL */
/* 4          VIP_656_DATA[0] */
/* 5          VIP_656_CLK */
/* 6          VIP_656_DATA_EXT[1] */
/* 7          VIP_656_DATA_EXT[0] */

#define  ALT_PIN_IN_SEL            0x110030	/* Alternate GPIO input select */

#define  FLD_GPIO10_ALT_IN_SEL     0x0000F000
/* 0          GPIO[10] <-- default */
/* 1          IR_RX */
/* 2          IR_TX */
/* 3          AUX_PLL_CLK */
/* 4          IF_ATT_SEL */
/* 5          GPIO[0] */
/* 6          GPIO[1] */
/* 7          GPIO[2] */

#define  FLD_GPIO2_ALT_IN_SEL      0x00000F00
/* 0          GPIO[2] <-- default */
/* 1          IR_RX */
/* 2          IR_TX */
/* 3          AUX_PLL_CLK */
/* 4          IF_ATT_SEL */

#define  FLD_GPIO1_ALT_IN_SEL      0x000000F0
/* 0          GPIO[1] <-- default */
/* 1          IR_RX */
/* 2          IR_TX */
/* 3          AUX_PLL_CLK */
/* 4          IF_ATT_SEL */

#define  FLD_GPIO0_ALT_IN_SEL      0x0000000F
/* 0          GPIO[0] <-- default */
/* 1          IR_RX */
/* 2          IR_TX */
/* 3          AUX_PLL_CLK */
/* 4          IF_ATT_SEL */

/* ***************************************************************************** */
#define  TEST_BUS_CTL1             0x110040	/* Test bus control register #1 */

/* ***************************************************************************** */
#define  TEST_BUS_CTL2             0x110044	/* Test bus control register #2 */

/* ***************************************************************************** */
#define  CLK_DELAY                 0x110048	/* Clock delay */
#define  FLD_MOE_CLK_DIS           0x80000000	/* Disable MoE clock */

/* ***************************************************************************** */
#define  PAD_CTRL                  0x110068	/* Pad drive strength control */

/* ***************************************************************************** */
#define  MBIST_CTRL                0x110050	/* SRAM memory built-in self test control */

/* ***************************************************************************** */
#define  MBIST_STAT                0x110054	/* SRAM memory built-in self test status */

/* ***************************************************************************** */
/* PLL registers */
/* ***************************************************************************** */
#define  PLL_A_INT_FRAC            0x110088
#define  PLL_A_POST_STAT_BIST      0x11008C
#define  PLL_B_INT_FRAC            0x110090
#define  PLL_B_POST_STAT_BIST      0x110094
#define  PLL_C_INT_FRAC            0x110098
#define  PLL_C_POST_STAT_BIST      0x11009C
#define  PLL_D_INT_FRAC            0x1100A0
#define  PLL_D_POST_STAT_BIST      0x1100A4

#define  CLK_RST                   0x11002C
#define  FLD_VID_I_CLK_NOE         0x00001000
#define  FLD_VID_J_CLK_NOE         0x00002000
#define  FLD_USE_ALT_PLL_REF       0x00004000

#define  VID_CH_MODE_SEL           0x110078
#define  VID_CH_CLK_SEL            0x11007C

/* ***************************************************************************** */
#define  VBI_A_DMA                 0x130008	/* VBI A DMA data port */

/* ***************************************************************************** */
#define  VID_A_VIP_CTL             0x130080	/* Video A VIP format control */
#define  FLD_VIP_MODE              0x00000001

/* ***************************************************************************** */
#define  VID_A_PIXEL_FRMT          0x130084	/* Video A pixel format */
#define  FLD_VID_A_GAMMA_DIS       0x00000008
#define  FLD_VID_A_FORMAT          0x00000007
#define  FLD_VID_A_GAMMA_FACTOR    0x00000010

/* ***************************************************************************** */
#define  VID_A_VBI_CTL             0x130088	/* Video A VBI miscellaneous control */
#define  FLD_VID_A_VIP_EXT         0x00000003

/* ***************************************************************************** */
#define  VID_B_DMA                 0x130100	/* Video B DMA data port */

/* ***************************************************************************** */
#define  VBI_B_DMA                 0x130108	/* VBI B DMA data port */

/* ***************************************************************************** */
#define  VID_B_SRC_SEL             0x130144	/* Video B source select */
#define  FLD_VID_B_SRC_SEL         0x00000000

/* ***************************************************************************** */
#define  VID_B_LNGTH               0x130150	/* Video B line length */
#define  FLD_VID_B_LN_LNGTH        0x00000FFF

/* ***************************************************************************** */
#define  VID_B_VIP_CTL             0x130180	/* Video B VIP format control */

/* ***************************************************************************** */
#define  VID_B_PIXEL_FRMT          0x130184	/* Video B pixel format */
#define  FLD_VID_B_GAMMA_DIS       0x00000008
#define  FLD_VID_B_FORMAT          0x00000007
#define  FLD_VID_B_GAMMA_FACTOR    0x00000010

/* ***************************************************************************** */
#define  VID_C_DMA                 0x130200	/* Video C DMA data port */

/* ***************************************************************************** */
#define  VID_C_LNGTH               0x130250	/* Video C line length */
#define  FLD_VID_C_LN_LNGTH        0x00000FFF

/* ***************************************************************************** */
/* Video Destination Channels */
/* ***************************************************************************** */

#define  VID_DST_A_GPCNT           0x130020	/* Video A general purpose counter */
#define  VID_DST_B_GPCNT           0x130120	/* Video B general purpose counter */
#define  VID_DST_C_GPCNT           0x130220	/* Video C general purpose counter */
#define  VID_DST_D_GPCNT           0x130320	/* Video D general purpose counter */
#define  VID_DST_E_GPCNT           0x130420	/* Video E general purpose counter */
#define  VID_DST_F_GPCNT           0x130520	/* Video F general purpose counter */
#define  VID_DST_G_GPCNT           0x130620	/* Video G general purpose counter */
#define  VID_DST_H_GPCNT           0x130720	/* Video H general purpose counter */

/* ***************************************************************************** */

#define  VID_DST_A_GPCNT_CTL       0x130030	/* Video A general purpose control */
#define  VID_DST_B_GPCNT_CTL       0x130130	/* Video B general purpose control */
#define  VID_DST_C_GPCNT_CTL       0x130230	/* Video C general purpose control */
#define  VID_DST_D_GPCNT_CTL       0x130330	/* Video D general purpose control */
#define  VID_DST_E_GPCNT_CTL       0x130430	/* Video E general purpose control */
#define  VID_DST_F_GPCNT_CTL       0x130530	/* Video F general purpose control */
#define  VID_DST_G_GPCNT_CTL       0x130630	/* Video G general purpose control */
#define  VID_DST_H_GPCNT_CTL       0x130730	/* Video H general purpose control */

/* ***************************************************************************** */

#define  VID_DST_A_DMA_CTL         0x130040	/* Video A DMA control */
#define  VID_DST_B_DMA_CTL         0x130140	/* Video B DMA control */
#define  VID_DST_C_DMA_CTL         0x130240	/* Video C DMA control */
#define  VID_DST_D_DMA_CTL         0x130340	/* Video D DMA control */
#define  VID_DST_E_DMA_CTL         0x130440	/* Video E DMA control */
#define  VID_DST_F_DMA_CTL         0x130540	/* Video F DMA control */
#define  VID_DST_G_DMA_CTL         0x130640	/* Video G DMA control */
#define  VID_DST_H_DMA_CTL         0x130740	/* Video H DMA control */

#define  FLD_VID_RISC_EN           0x00000010
#define  FLD_VID_FIFO_EN           0x00000001

/* ***************************************************************************** */

#define  VID_DST_A_VIP_CTL         0x130080	/* Video A VIP control */
#define  VID_DST_B_VIP_CTL         0x130180	/* Video B VIP control */
#define  VID_DST_C_VIP_CTL         0x130280	/* Video C VIP control */
#define  VID_DST_D_VIP_CTL         0x130380	/* Video D VIP control */
#define  VID_DST_E_VIP_CTL         0x130480	/* Video E VIP control */
#define  VID_DST_F_VIP_CTL         0x130580	/* Video F VIP control */
#define  VID_DST_G_VIP_CTL         0x130680	/* Video G VIP control */
#define  VID_DST_H_VIP_CTL         0x130780	/* Video H VIP control */

/* ***************************************************************************** */

#define  VID_DST_A_PIX_FRMT        0x130084	/* Video A Pixel format */
#define  VID_DST_B_PIX_FRMT        0x130184	/* Video B Pixel format */
#define  VID_DST_C_PIX_FRMT        0x130284	/* Video C Pixel format */
#define  VID_DST_D_PIX_FRMT        0x130384	/* Video D Pixel format */
#define  VID_DST_E_PIX_FRMT        0x130484	/* Video E Pixel format */
#define  VID_DST_F_PIX_FRMT        0x130584	/* Video F Pixel format */
#define  VID_DST_G_PIX_FRMT        0x130684	/* Video G Pixel format */
#define  VID_DST_H_PIX_FRMT        0x130784	/* Video H Pixel format */

/* ***************************************************************************** */
/* Video Source Channels */
/* ***************************************************************************** */

#define  VID_SRC_A_GPCNT_CTL       0x130804	/* Video A general purpose control */
#define  VID_SRC_B_GPCNT_CTL       0x130904	/* Video B general purpose control */
#define  VID_SRC_C_GPCNT_CTL       0x130A04	/* Video C general purpose control */
#define  VID_SRC_D_GPCNT_CTL       0x130B04	/* Video D general purpose control */
#define  VID_SRC_E_GPCNT_CTL       0x130C04	/* Video E general purpose control */
#define  VID_SRC_F_GPCNT_CTL       0x130D04	/* Video F general purpose control */
#define  VID_SRC_I_GPCNT_CTL       0x130E04	/* Video I general purpose control */
#define  VID_SRC_J_GPCNT_CTL       0x130F04	/* Video J general purpose control */

/* ***************************************************************************** */

#define  VID_SRC_A_GPCNT           0x130808	/* Video A general purpose counter */
#define  VID_SRC_B_GPCNT           0x130908	/* Video B general purpose counter */
#define  VID_SRC_C_GPCNT           0x130A08	/* Video C general purpose counter */
#define  VID_SRC_D_GPCNT           0x130B08	/* Video D general purpose counter */
#define  VID_SRC_E_GPCNT           0x130C08	/* Video E general purpose counter */
#define  VID_SRC_F_GPCNT           0x130D08	/* Video F general purpose counter */
#define  VID_SRC_I_GPCNT           0x130E08	/* Video I general purpose counter */
#define  VID_SRC_J_GPCNT           0x130F08	/* Video J general purpose counter */

/* ***************************************************************************** */

#define  VID_SRC_A_DMA_CTL         0x13080C	/* Video A DMA control */
#define  VID_SRC_B_DMA_CTL         0x13090C	/* Video B DMA control */
#define  VID_SRC_C_DMA_CTL         0x130A0C	/* Video C DMA control */
#define  VID_SRC_D_DMA_CTL         0x130B0C	/* Video D DMA control */
#define  VID_SRC_E_DMA_CTL         0x130C0C	/* Video E DMA control */
#define  VID_SRC_F_DMA_CTL         0x130D0C	/* Video F DMA control */
#define  VID_SRC_I_DMA_CTL         0x130E0C	/* Video I DMA control */
#define  VID_SRC_J_DMA_CTL         0x130F0C	/* Video J DMA control */

#define  FLD_APB_RISC_EN           0x00000010
#define  FLD_APB_FIFO_EN           0x00000001

/* ***************************************************************************** */

#define  VID_SRC_A_FMT_CTL         0x130810	/* Video A format control */
#define  VID_SRC_B_FMT_CTL         0x130910	/* Video B format control */
#define  VID_SRC_C_FMT_CTL         0x130A10	/* Video C format control */
#define  VID_SRC_D_FMT_CTL         0x130B10	/* Video D format control */
#define  VID_SRC_E_FMT_CTL         0x130C10	/* Video E format control */
#define  VID_SRC_F_FMT_CTL         0x130D10	/* Video F format control */
#define  VID_SRC_I_FMT_CTL         0x130E10	/* Video I format control */
#define  VID_SRC_J_FMT_CTL         0x130F10	/* Video J format control */

/* ***************************************************************************** */

#define  VID_SRC_A_ACTIVE_CTL1     0x130814	/* Video A active control      1 */
#define  VID_SRC_B_ACTIVE_CTL1     0x130914	/* Video B active control      1 */
#define  VID_SRC_C_ACTIVE_CTL1     0x130A14	/* Video C active control      1 */
#define  VID_SRC_D_ACTIVE_CTL1     0x130B14	/* Video D active control      1 */
#define  VID_SRC_E_ACTIVE_CTL1     0x130C14	/* Video E active control      1 */
#define  VID_SRC_F_ACTIVE_CTL1     0x130D14	/* Video F active control      1 */
#define  VID_SRC_I_ACTIVE_CTL1     0x130E14	/* Video I active control      1 */
#define  VID_SRC_J_ACTIVE_CTL1     0x130F14	/* Video J active control      1 */

/* ***************************************************************************** */

#define  VID_SRC_A_ACTIVE_CTL2     0x130818	/* Video A active control      2 */
#define  VID_SRC_B_ACTIVE_CTL2     0x130918	/* Video B active control      2 */
#define  VID_SRC_C_ACTIVE_CTL2     0x130A18	/* Video C active control      2 */
#define  VID_SRC_D_ACTIVE_CTL2     0x130B18	/* Video D active control      2 */
#define  VID_SRC_E_ACTIVE_CTL2     0x130C18	/* Video E active control      2 */
#define  VID_SRC_F_ACTIVE_CTL2     0x130D18	/* Video F active control      2 */
#define  VID_SRC_I_ACTIVE_CTL2     0x130E18	/* Video I active control      2 */
#define  VID_SRC_J_ACTIVE_CTL2     0x130F18	/* Video J active control      2 */

/* ***************************************************************************** */

#define  VID_SRC_A_CDT_SZ          0x13081C	/* Video A CDT size */
#define  VID_SRC_B_CDT_SZ          0x13091C	/* Video B CDT size */
#define  VID_SRC_C_CDT_SZ          0x130A1C	/* Video C CDT size */
#define  VID_SRC_D_CDT_SZ          0x130B1C	/* Video D CDT size */
#define  VID_SRC_E_CDT_SZ          0x130C1C	/* Video E CDT size */
#define  VID_SRC_F_CDT_SZ          0x130D1C	/* Video F CDT size */
#define  VID_SRC_I_CDT_SZ          0x130E1C	/* Video I CDT size */
#define  VID_SRC_J_CDT_SZ          0x130F1C	/* Video J CDT size */

/* ***************************************************************************** */
/* Audio I/F */
/* ***************************************************************************** */
#define  AUD_DST_A_DMA             0x140000	/* Audio Int A DMA data port */
#define  AUD_SRC_A_DMA             0x140008	/* Audio Int A DMA data port */

#define  AUD_A_GPCNT               0x140010	/* Audio Int A gp counter */
#define  FLD_AUD_A_GP_CNT          0x0000FFFF

#define  AUD_A_GPCNT_CTL           0x140014	/* Audio Int A gp control */

#define  AUD_A_LNGTH               0x140018	/* Audio Int A line length */

#define  AUD_A_CFG                 0x14001C	/* Audio Int A configuration */

/* ***************************************************************************** */
#define  AUD_DST_B_DMA             0x140100	/* Audio Int B DMA data port */
#define  AUD_SRC_B_DMA             0x140108	/* Audio Int B DMA data port */

#define  AUD_B_GPCNT               0x140110	/* Audio Int B gp counter */
#define  FLD_AUD_B_GP_CNT          0x0000FFFF

#define  AUD_B_GPCNT_CTL           0x140114	/* Audio Int B gp control */

#define  AUD_B_LNGTH               0x140118	/* Audio Int B line length */

#define  AUD_B_CFG                 0x14011C	/* Audio Int B configuration */

/* ***************************************************************************** */
#define  AUD_DST_C_DMA             0x140200	/* Audio Int C DMA data port */
#define  AUD_SRC_C_DMA             0x140208	/* Audio Int C DMA data port */

#define  AUD_C_GPCNT               0x140210	/* Audio Int C gp counter */
#define  FLD_AUD_C_GP_CNT          0x0000FFFF

#define  AUD_C_GPCNT_CTL           0x140214	/* Audio Int C gp control */

#define  AUD_C_LNGTH               0x140218	/* Audio Int C line length */

#define  AUD_C_CFG                 0x14021C	/* Audio Int C configuration */

/* ***************************************************************************** */
#define  AUD_DST_D_DMA             0x140300	/* Audio Int D DMA data port */
#define  AUD_SRC_D_DMA             0x140308	/* Audio Int D DMA data port */

#define  AUD_D_GPCNT               0x140310	/* Audio Int D gp counter */
#define  FLD_AUD_D_GP_CNT          0x0000FFFF

#define  AUD_D_GPCNT_CTL           0x140314	/* Audio Int D gp control */

#define  AUD_D_LNGTH               0x140318	/* Audio Int D line length */

#define  AUD_D_CFG                 0x14031C	/* Audio Int D configuration */

/* ***************************************************************************** */
#define  AUD_SRC_E_DMA             0x140400	/* Audio Int E DMA data port */

#define  AUD_E_GPCNT               0x140410	/* Audio Int E gp counter */
#define  FLD_AUD_E_GP_CNT          0x0000FFFF

#define  AUD_E_GPCNT_CTL           0x140414	/* Audio Int E gp control */

#define  AUD_E_CFG                 0x14041C	/* Audio Int E configuration */

/* ***************************************************************************** */

#define  FLD_AUD_DST_LN_LNGTH      0x00000FFF

#define  FLD_AUD_DST_PK_MODE       0x00004000

#define  FLD_AUD_CLK_ENABLE        0x00000200

#define  FLD_AUD_MASTER_MODE       0x00000002

#define  FLD_AUD_SONY_MODE         0x00000001

#define  FLD_AUD_CLK_SELECT_PLL_D  0x00001800

#define  FLD_AUD_DST_ENABLE        0x00020000

#define  FLD_AUD_SRC_ENABLE        0x00010000

/* ***************************************************************************** */
#define  AUD_INT_DMA_CTL           0x140500	/* Audio Int DMA control */

#define  FLD_AUD_SRC_E_RISC_EN     0x00008000
#define  FLD_AUD_SRC_C_RISC_EN     0x00004000
#define  FLD_AUD_SRC_B_RISC_EN     0x00002000
#define  FLD_AUD_SRC_A_RISC_EN     0x00001000

#define  FLD_AUD_DST_D_RISC_EN     0x00000800
#define  FLD_AUD_DST_C_RISC_EN     0x00000400
#define  FLD_AUD_DST_B_RISC_EN     0x00000200
#define  FLD_AUD_DST_A_RISC_EN     0x00000100

#define  FLD_AUD_SRC_E_FIFO_EN     0x00000080
#define  FLD_AUD_SRC_C_FIFO_EN     0x00000040
#define  FLD_AUD_SRC_B_FIFO_EN     0x00000020
#define  FLD_AUD_SRC_A_FIFO_EN     0x00000010

#define  FLD_AUD_DST_D_FIFO_EN     0x00000008
#define  FLD_AUD_DST_C_FIFO_EN     0x00000004
#define  FLD_AUD_DST_B_FIFO_EN     0x00000002
#define  FLD_AUD_DST_A_FIFO_EN     0x00000001

/* ***************************************************************************** */
/*  */
/* Mobilygen Interface Registers */
/*  */
/* ***************************************************************************** */
/* Mobilygen Interface A */
/* ***************************************************************************** */
#define  MB_IF_A_DMA               0x150000	/* MBIF A DMA data port */
#define  MB_IF_A_GPCN              0x150008	/* MBIF A GP counter */
#define  MB_IF_A_GPCN_CTRL         0x15000C
#define  MB_IF_A_DMA_CTRL          0x150010
#define  MB_IF_A_LENGTH            0x150014
#define  MB_IF_A_HDMA_XFER_SZ      0x150018
#define  MB_IF_A_HCMD              0x15001C
#define  MB_IF_A_HCONFIG           0x150020
#define  MB_IF_A_DATA_STRUCT_0     0x150024
#define  MB_IF_A_DATA_STRUCT_1     0x150028
#define  MB_IF_A_DATA_STRUCT_2     0x15002C
#define  MB_IF_A_DATA_STRUCT_3     0x150030
#define  MB_IF_A_DATA_STRUCT_4     0x150034
#define  MB_IF_A_DATA_STRUCT_5     0x150038
#define  MB_IF_A_DATA_STRUCT_6     0x15003C
#define  MB_IF_A_DATA_STRUCT_7     0x150040
#define  MB_IF_A_DATA_STRUCT_8     0x150044
#define  MB_IF_A_DATA_STRUCT_9     0x150048
#define  MB_IF_A_DATA_STRUCT_A     0x15004C
#define  MB_IF_A_DATA_STRUCT_B     0x150050
#define  MB_IF_A_DATA_STRUCT_C     0x150054
#define  MB_IF_A_DATA_STRUCT_D     0x150058
#define  MB_IF_A_DATA_STRUCT_E     0x15005C
#define  MB_IF_A_DATA_STRUCT_F     0x150060
/* ***************************************************************************** */
/* Mobilygen Interface B */
/* ***************************************************************************** */
#define  MB_IF_B_DMA               0x160000	/* MBIF A DMA data port */
#define  MB_IF_B_GPCN              0x160008	/* MBIF A GP counter */
#define  MB_IF_B_GPCN_CTRL         0x16000C
#define  MB_IF_B_DMA_CTRL          0x160010
#define  MB_IF_B_LENGTH            0x160014
#define  MB_IF_B_HDMA_XFER_SZ      0x160018
#define  MB_IF_B_HCMD              0x16001C
#define  MB_IF_B_HCONFIG           0x160020
#define  MB_IF_B_DATA_STRUCT_0     0x160024
#define  MB_IF_B_DATA_STRUCT_1     0x160028
#define  MB_IF_B_DATA_STRUCT_2     0x16002C
#define  MB_IF_B_DATA_STRUCT_3     0x160030
#define  MB_IF_B_DATA_STRUCT_4     0x160034
#define  MB_IF_B_DATA_STRUCT_5     0x160038
#define  MB_IF_B_DATA_STRUCT_6     0x16003C
#define  MB_IF_B_DATA_STRUCT_7     0x160040
#define  MB_IF_B_DATA_STRUCT_8     0x160044
#define  MB_IF_B_DATA_STRUCT_9     0x160048
#define  MB_IF_B_DATA_STRUCT_A     0x16004C
#define  MB_IF_B_DATA_STRUCT_B     0x160050
#define  MB_IF_B_DATA_STRUCT_C     0x160054
#define  MB_IF_B_DATA_STRUCT_D     0x160058
#define  MB_IF_B_DATA_STRUCT_E     0x16005C
#define  MB_IF_B_DATA_STRUCT_F     0x160060

/* MB_DMA_CTRL */
#define  FLD_MB_IF_RISC_EN         0x00000010
#define  FLD_MB_IF_FIFO_EN         0x00000001

/* MB_LENGTH */
#define  FLD_MB_IF_LN_LNGTH        0x00000FFF

/* MB_HCMD register */
#define  FLD_MB_HCMD_H_GO          0x80000000
#define  FLD_MB_HCMD_H_BUSY        0x40000000
#define  FLD_MB_HCMD_H_DMA_HOLD    0x10000000
#define  FLD_MB_HCMD_H_DMA_BUSY    0x08000000
#define  FLD_MB_HCMD_H_DMA_TYPE    0x04000000
#define  FLD_MB_HCMD_H_DMA_XACT    0x02000000
#define  FLD_MB_HCMD_H_RW_N        0x01000000
#define  FLD_MB_HCMD_H_ADDR        0x00FF0000
#define  FLD_MB_HCMD_H_DATA        0x0000FFFF

/* ***************************************************************************** */
/* I2C #1 */
/* ***************************************************************************** */
#define  I2C1_ADDR                 0x180000	/* I2C #1 address */
#define  FLD_I2C_DADDR             0xfe000000	/* RW [31:25] I2C Device Address */
						 /* RO [24] reserved */
/* ***************************************************************************** */
#define  FLD_I2C_SADDR             0x00FFFFFF	/* RW [23:0]  I2C Sub-address */

/* ***************************************************************************** */
#define  I2C1_WDATA                0x180004	/* I2C #1 write data */
#define  FLD_I2C_WDATA             0xFFFFFFFF	/* RW [31:0] */

/* ***************************************************************************** */
#define  I2C1_CTRL                 0x180008	/* I2C #1 control */
#define  FLD_I2C_PERIOD            0xFF000000	/* RW [31:24] */
#define  FLD_I2C_SCL_IN            0x00200000	/* RW [21] */
#define  FLD_I2C_SDA_IN            0x00100000	/* RW [20] */
						 /* RO [19:18] reserved */
#define  FLD_I2C_SCL_OUT           0x00020000	/* RW [17] */
#define  FLD_I2C_SDA_OUT           0x00010000	/* RW [16] */
						 /* RO [15] reserved */
#define  FLD_I2C_DATA_LEN          0x00007000	/* RW [14:12] */
#define  FLD_I2C_SADDR_INC         0x00000800	/* RW [11] */
						 /* RO [10:9] reserved */
#define  FLD_I2C_SADDR_LEN         0x00000300	/* RW [9:8] */
						 /* RO [7:6] reserved */
#define  FLD_I2C_SOFT              0x00000020	/* RW [5] */
#define  FLD_I2C_NOSTOP            0x00000010	/* RW [4] */
#define  FLD_I2C_EXTEND            0x00000008	/* RW [3] */
#define  FLD_I2C_SYNC              0x00000004	/* RW [2] */
#define  FLD_I2C_READ_SA           0x00000002	/* RW [1] */
#define  FLD_I2C_READ_WRN          0x00000001	/* RW [0] */

/* ***************************************************************************** */
#define  I2C1_RDATA                0x18000C	/* I2C #1 read data */
#define  FLD_I2C_RDATA             0xFFFFFFFF	/* RO [31:0] */

/* ***************************************************************************** */
#define  I2C1_STAT                 0x180010	/* I2C #1 status */
#define  FLD_I2C_XFER_IN_PROG      0x00000002	/* RO [1] */
#define  FLD_I2C_RACK              0x00000001	/* RO [0] */

/* ***************************************************************************** */
/* I2C #2 */
/* ***************************************************************************** */
#define  I2C2_ADDR                 0x190000	/* I2C #2 address */

/* ***************************************************************************** */
#define  I2C2_WDATA                0x190004	/* I2C #2 write data */

/* ***************************************************************************** */
#define  I2C2_CTRL                 0x190008	/* I2C #2 control */

/* ***************************************************************************** */
#define  I2C2_RDATA                0x19000C	/* I2C #2 read data */

/* ***************************************************************************** */
#define  I2C2_STAT                 0x190010	/* I2C #2 status */

/* ***************************************************************************** */
/* I2C #3 */
/* ***************************************************************************** */
#define  I2C3_ADDR                 0x1A0000	/* I2C #3 address */

/* ***************************************************************************** */
#define  I2C3_WDATA                0x1A0004	/* I2C #3 write data */

/* ***************************************************************************** */
#define  I2C3_CTRL                 0x1A0008	/* I2C #3 control */

/* ***************************************************************************** */
#define  I2C3_RDATA                0x1A000C	/* I2C #3 read data */

/* ***************************************************************************** */
#define  I2C3_STAT                 0x1A0010	/* I2C #3 status */

/* ***************************************************************************** */
/* UART */
/* ***************************************************************************** */
#define  UART_CTL                  0x1B0000	/* UART Control Register */
#define  FLD_LOOP_BACK_EN          (1 << 7)	/* RW field - default 0 */
#define  FLD_RX_TRG_SZ             (3 << 2)	/* RW field - default 0 */
#define  FLD_RX_EN                 (1 << 1)	/* RW field - default 0 */
#define  FLD_TX_EN                 (1 << 0)	/* RW field - default 0 */

/* ***************************************************************************** */
#define  UART_BRD                  0x1B0004	/* UART Baud Rate Divisor */
#define  FLD_BRD                   0x0000FFFF	/* RW field - default 0x197 */

/* ***************************************************************************** */
#define  UART_DBUF                 0x1B0008	/* UART Tx/Rx Data BuFFer */
#define  FLD_DB                    0xFFFFFFFF	/* RW field - default 0 */

/* ***************************************************************************** */
#define  UART_ISR                  0x1B000C	/* UART Interrupt Status */
#define  FLD_RXD_TIMEOUT_EN        (1 << 7)	/* RW field - default 0 */
#define  FLD_FRM_ERR_EN            (1 << 6)	/* RW field - default 0 */
#define  FLD_RXD_RDY_EN            (1 << 5)	/* RW field - default 0 */
#define  FLD_TXD_EMPTY_EN          (1 << 4)	/* RW field - default 0 */
#define  FLD_RXD_OVERFLOW          (1 << 3)	/* RW field - default 0 */
#define  FLD_FRM_ERR               (1 << 2)	/* RW field - default 0 */
#define  FLD_RXD_RDY               (1 << 1)	/* RW field - default 0 */
#define  FLD_TXD_EMPTY             (1 << 0)	/* RW field - default 0 */

/* ***************************************************************************** */
#define  UART_CNT                  0x1B0010	/* UART Tx/Rx FIFO Byte Count */
#define  FLD_TXD_CNT               (0x1F << 8)	/* RW field - default 0 */
#define  FLD_RXD_CNT               (0x1F << 0)	/* RW field - default 0 */

/* ***************************************************************************** */
/* Motion Detection */
#define  MD_CH0_GRID_BLOCK_YCNT    0x170014
#define  MD_CH1_GRID_BLOCK_YCNT    0x170094
#define  MD_CH2_GRID_BLOCK_YCNT    0x170114
#define  MD_CH3_GRID_BLOCK_YCNT    0x170194
#define  MD_CH4_GRID_BLOCK_YCNT    0x170214
#define  MD_CH5_GRID_BLOCK_YCNT    0x170294
#define  MD_CH6_GRID_BLOCK_YCNT    0x170314
#define  MD_CH7_GRID_BLOCK_YCNT    0x170394

#define PIXEL_FRMT_422    4
#define PIXEL_FRMT_411    5
#define PIXEL_FRMT_Y8     6

#define PIXEL_ENGINE_VIP1 0
#define PIXEL_ENGINE_VIP2 1

#endif /* Athena_REGISTERS */