Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*
0003  * tc358743 - Toshiba HDMI to CSI-2 bridge - register names and bit masks
0004  *
0005  * Copyright 2015 Cisco Systems, Inc. and/or its affiliates. All rights
0006  * reserved.
0007  */
0008 
0009 /*
0010  * References (c = chapter, p = page):
0011  * REF_01 - Toshiba, TC358743XBG (H2C), Functional Specification, Rev 0.60
0012  */
0013 
0014 /* Bit masks has prefix 'MASK_' and options after '_'. */
0015 
0016 #ifndef __TC358743_REGS_H
0017 #define __TC358743_REGS_H
0018 
0019 #define CHIPID                                0x0000
0020 #define MASK_CHIPID                           0xff00
0021 #define MASK_REVID                            0x00ff
0022 
0023 #define SYSCTL                                0x0002
0024 #define MASK_IRRST                            0x0800
0025 #define MASK_CECRST                           0x0400
0026 #define MASK_CTXRST                           0x0200
0027 #define MASK_HDMIRST                          0x0100
0028 #define MASK_SLEEP                            0x0001
0029 
0030 #define CONFCTL                               0x0004
0031 #define MASK_PWRISO                           0x8000
0032 #define MASK_ACLKOPT                          0x1000
0033 #define MASK_AUDCHNUM                         0x0c00
0034 #define MASK_AUDCHNUM_8                       0x0000
0035 #define MASK_AUDCHNUM_6                       0x0400
0036 #define MASK_AUDCHNUM_4                       0x0800
0037 #define MASK_AUDCHNUM_2                       0x0c00
0038 #define MASK_AUDCHSEL                         0x0200
0039 #define MASK_I2SDLYOPT                        0x0100
0040 #define MASK_YCBCRFMT                         0x00c0
0041 #define MASK_YCBCRFMT_444                     0x0000
0042 #define MASK_YCBCRFMT_422_12_BIT              0x0040
0043 #define MASK_YCBCRFMT_COLORBAR                0x0080
0044 #define MASK_YCBCRFMT_422_8_BIT               0x00c0
0045 #define MASK_INFRMEN                          0x0020
0046 #define MASK_AUDOUTSEL                        0x0018
0047 #define MASK_AUDOUTSEL_CSI                    0x0000
0048 #define MASK_AUDOUTSEL_I2S                    0x0010
0049 #define MASK_AUDOUTSEL_TDM                    0x0018
0050 #define MASK_AUTOINDEX                        0x0004
0051 #define MASK_ABUFEN                           0x0002
0052 #define MASK_VBUFEN                           0x0001
0053 
0054 #define FIFOCTL                               0x0006
0055 
0056 #define INTSTATUS                             0x0014
0057 #define MASK_AMUTE_INT                        0x0400
0058 #define MASK_HDMI_INT                         0x0200
0059 #define MASK_CSI_INT                          0x0100
0060 #define MASK_SYS_INT                          0x0020
0061 #define MASK_CEC_EINT                         0x0010
0062 #define MASK_CEC_TINT                         0x0008
0063 #define MASK_CEC_RINT                         0x0004
0064 #define MASK_IR_EINT                          0x0002
0065 #define MASK_IR_DINT                          0x0001
0066 
0067 #define INTMASK                               0x0016
0068 #define MASK_AMUTE_MSK                        0x0400
0069 #define MASK_HDMI_MSK                         0x0200
0070 #define MASK_CSI_MSK                          0x0100
0071 #define MASK_SYS_MSK                          0x0020
0072 #define MASK_CEC_EMSK                         0x0010
0073 #define MASK_CEC_TMSK                         0x0008
0074 #define MASK_CEC_RMSK                         0x0004
0075 #define MASK_IR_EMSK                          0x0002
0076 #define MASK_IR_DMSK                          0x0001
0077 
0078 #define INTFLAG                               0x0018
0079 #define INTSYSSTATUS                          0x001A
0080 
0081 #define PLLCTL0                               0x0020
0082 #define MASK_PLL_PRD                          0xf000
0083 #define SET_PLL_PRD(prd)                      ((((prd) - 1) << 12) &\
0084                         MASK_PLL_PRD)
0085 #define MASK_PLL_FBD                          0x01ff
0086 #define SET_PLL_FBD(fbd)                      (((fbd) - 1) & MASK_PLL_FBD)
0087 
0088 #define PLLCTL1                               0x0022
0089 #define MASK_PLL_FRS                          0x0c00
0090 #define SET_PLL_FRS(frs)                      (((frs) << 10) & MASK_PLL_FRS)
0091 #define MASK_PLL_LBWS                         0x0300
0092 #define MASK_LFBREN                           0x0040
0093 #define MASK_BYPCKEN                          0x0020
0094 #define MASK_CKEN                             0x0010
0095 #define MASK_RESETB                           0x0002
0096 #define MASK_PLL_EN                           0x0001
0097 
0098 #define CLW_CNTRL                             0x0140
0099 #define MASK_CLW_LANEDISABLE                  0x0001
0100 
0101 #define D0W_CNTRL                             0x0144
0102 #define MASK_D0W_LANEDISABLE                  0x0001
0103 
0104 #define D1W_CNTRL                             0x0148
0105 #define MASK_D1W_LANEDISABLE                  0x0001
0106 
0107 #define D2W_CNTRL                             0x014C
0108 #define MASK_D2W_LANEDISABLE                  0x0001
0109 
0110 #define D3W_CNTRL                             0x0150
0111 #define MASK_D3W_LANEDISABLE                  0x0001
0112 
0113 #define STARTCNTRL                            0x0204
0114 #define MASK_START                            0x00000001
0115 
0116 #define LINEINITCNT                           0x0210
0117 #define LPTXTIMECNT                           0x0214
0118 #define TCLK_HEADERCNT                        0x0218
0119 #define TCLK_TRAILCNT                         0x021C
0120 #define THS_HEADERCNT                         0x0220
0121 #define TWAKEUP                               0x0224
0122 #define TCLK_POSTCNT                          0x0228
0123 #define THS_TRAILCNT                          0x022C
0124 #define HSTXVREGCNT                           0x0230
0125 
0126 #define HSTXVREGEN                            0x0234
0127 #define MASK_D3M_HSTXVREGEN                   0x0010
0128 #define MASK_D2M_HSTXVREGEN                   0x0008
0129 #define MASK_D1M_HSTXVREGEN                   0x0004
0130 #define MASK_D0M_HSTXVREGEN                   0x0002
0131 #define MASK_CLM_HSTXVREGEN                   0x0001
0132 
0133 
0134 #define TXOPTIONCNTRL                         0x0238
0135 #define MASK_CONTCLKMODE                      0x00000001
0136 
0137 #define CSI_CONTROL                           0x040C
0138 #define MASK_CSI_MODE                         0x8000
0139 #define MASK_HTXTOEN                          0x0400
0140 #define MASK_TXHSMD                           0x0080
0141 #define MASK_HSCKMD                           0x0020
0142 #define MASK_NOL                              0x0006
0143 #define MASK_NOL_1                            0x0000
0144 #define MASK_NOL_2                            0x0002
0145 #define MASK_NOL_3                            0x0004
0146 #define MASK_NOL_4                            0x0006
0147 #define MASK_EOTDIS                           0x0001
0148 
0149 #define CSI_INT                               0x0414
0150 #define MASK_INTHLT                           0x00000008
0151 #define MASK_INTER                            0x00000004
0152 
0153 #define CSI_INT_ENA                           0x0418
0154 #define MASK_IENHLT                           0x00000008
0155 #define MASK_IENER                            0x00000004
0156 
0157 #define CSI_ERR                               0x044C
0158 #define MASK_INER                             0x00000200
0159 #define MASK_WCER                             0x00000100
0160 #define MASK_QUNK                             0x00000010
0161 #define MASK_TXBRK                            0x00000002
0162 
0163 #define CSI_ERR_INTENA                        0x0450
0164 #define CSI_ERR_HALT                          0x0454
0165 
0166 #define CSI_CONFW                             0x0500
0167 #define MASK_MODE                             0xe0000000
0168 #define MASK_MODE_SET                         0xa0000000
0169 #define MASK_MODE_CLEAR                       0xc0000000
0170 #define MASK_ADDRESS                          0x1f000000
0171 #define MASK_ADDRESS_CSI_CONTROL              0x03000000
0172 #define MASK_ADDRESS_CSI_INT_ENA              0x06000000
0173 #define MASK_ADDRESS_CSI_ERR_INTENA           0x14000000
0174 #define MASK_ADDRESS_CSI_ERR_HALT             0x15000000
0175 #define MASK_DATA                             0x0000ffff
0176 
0177 #define CSI_INT_CLR                           0x050C
0178 #define MASK_ICRER                            0x00000004
0179 
0180 #define CSI_START                             0x0518
0181 #define MASK_STRT                             0x00000001
0182 
0183 /* *** CEC (32 bit) *** */
0184 #define CECHCLK                   0x0028    /* 16 bits */
0185 #define MASK_CECHCLK                  (0x7ff << 0)
0186 
0187 #define CECLCLK                   0x002a    /* 16 bits */
0188 #define MASK_CECLCLK                  (0x7ff << 0)
0189 
0190 #define CECEN                     0x0600
0191 #define MASK_CECEN                0x0001
0192 
0193 #define CECADD                    0x0604
0194 #define CECRST                    0x0608
0195 #define MASK_CECRESET                 0x0001
0196 
0197 #define CECREN                    0x060c
0198 #define MASK_CECREN               0x0001
0199 
0200 #define CECRCTL1                  0x0614
0201 #define MASK_CECACKDIS                (1 << 24)
0202 #define MASK_CECHNC               (3 << 20)
0203 #define MASK_CECLNC               (7 << 16)
0204 #define MASK_CECMIN               (7 << 12)
0205 #define MASK_CECMAX               (7 << 8)
0206 #define MASK_CECDAT               (7 << 4)
0207 #define MASK_CECTOUT                  (3 << 2)
0208 #define MASK_CECRIHLD                 (1 << 1)
0209 #define MASK_CECOTH               (1 << 0)
0210 
0211 #define CECRCTL2                  0x0618
0212 #define MASK_CECSWAV3                 (7 << 12)
0213 #define MASK_CECSWAV2                 (7 << 8)
0214 #define MASK_CECSWAV1                 (7 << 4)
0215 #define MASK_CECSWAV0                 (7 << 0)
0216 
0217 #define CECRCTL3                  0x061c
0218 #define MASK_CECWAV3                  (7 << 20)
0219 #define MASK_CECWAV2                  (7 << 16)
0220 #define MASK_CECWAV1                  (7 << 12)
0221 #define MASK_CECWAV0                  (7 << 8)
0222 #define MASK_CECACKEI                 (1 << 4)
0223 #define MASK_CECMINEI                 (1 << 3)
0224 #define MASK_CECMAXEI                 (1 << 2)
0225 #define MASK_CECRSTEI                 (1 << 1)
0226 #define MASK_CECWAVEI                 (1 << 0)
0227 
0228 #define CECTEN                    0x0620
0229 #define MASK_CECTBUSY                 (1 << 1)
0230 #define MASK_CECTEN               (1 << 0)
0231 
0232 #define CECTCTL                   0x0628
0233 #define MASK_CECSTRS                  (7 << 20)
0234 #define MASK_CECSPRD                  (7 << 16)
0235 #define MASK_CECDTRS                  (7 << 12)
0236 #define MASK_CECDPRD                  (15 << 8)
0237 #define MASK_CECBRD               (1 << 4)
0238 #define MASK_CECFREE                  (15 << 0)
0239 
0240 #define CECRSTAT                  0x062c
0241 #define MASK_CECRIWA                  (1 << 6)
0242 #define MASK_CECRIOR                  (1 << 5)
0243 #define MASK_CECRIACK                 (1 << 4)
0244 #define MASK_CECRIMIN                 (1 << 3)
0245 #define MASK_CECRIMAX                 (1 << 2)
0246 #define MASK_CECRISTA                 (1 << 1)
0247 #define MASK_CECRIEND                 (1 << 0)
0248 
0249 #define CECTSTAT                  0x0630
0250 #define MASK_CECTIUR                  (1 << 4)
0251 #define MASK_CECTIACK                 (1 << 3)
0252 #define MASK_CECTIAL                  (1 << 2)
0253 #define MASK_CECTIEND                 (1 << 1)
0254 
0255 #define CECRBUF1                  0x0634
0256 #define MASK_CECRACK                  (1 << 9)
0257 #define MASK_CECEOM               (1 << 8)
0258 #define MASK_CECRBYTE                 (0xff << 0)
0259 
0260 #define CECTBUF1                  0x0674
0261 #define MASK_CECTEOM                  (1 << 8)
0262 #define MASK_CECTBYTE                 (0xff << 0)
0263 
0264 #define CECRCTR                   0x06b4
0265 #define MASK_CECRCTR                  (0x1f << 0)
0266 
0267 #define CECIMSK                   0x06c0
0268 #define MASK_CECTIM               (1 << 1)
0269 #define MASK_CECRIM               (1 << 0)
0270 
0271 #define CECICLR                   0x06cc
0272 #define MASK_CECTICLR                 (1 << 1)
0273 #define MASK_CECRICLR                 (1 << 0)
0274 
0275 
0276 #define HDMI_INT0                             0x8500
0277 #define MASK_I_KEY                            0x80
0278 #define MASK_I_MISC                           0x02
0279 #define MASK_I_PHYERR                         0x01
0280 
0281 #define HDMI_INT1                             0x8501
0282 #define MASK_I_GBD                            0x80
0283 #define MASK_I_HDCP                           0x40
0284 #define MASK_I_ERR                            0x20
0285 #define MASK_I_AUD                            0x10
0286 #define MASK_I_CBIT                           0x08
0287 #define MASK_I_PACKET                         0x04
0288 #define MASK_I_CLK                            0x02
0289 #define MASK_I_SYS                            0x01
0290 
0291 #define SYS_INT                               0x8502
0292 #define MASK_I_ACR_CTS                        0x80
0293 #define MASK_I_ACRN                           0x40
0294 #define MASK_I_DVI                            0x20
0295 #define MASK_I_HDMI                           0x10
0296 #define MASK_I_NOPMBDET                       0x08
0297 #define MASK_I_DPMBDET                        0x04
0298 #define MASK_I_TMDS                           0x02
0299 #define MASK_I_DDC                            0x01
0300 
0301 #define CLK_INT                               0x8503
0302 #define MASK_I_OUT_H_CHG                      0x40
0303 #define MASK_I_IN_DE_CHG                      0x20
0304 #define MASK_I_IN_HV_CHG                      0x10
0305 #define MASK_I_DC_CHG                         0x08
0306 #define MASK_I_PXCLK_CHG                      0x04
0307 #define MASK_I_PHYCLK_CHG                     0x02
0308 #define MASK_I_TMDSCLK_CHG                    0x01
0309 
0310 #define CBIT_INT                              0x8505
0311 #define MASK_I_AF_LOCK                        0x80
0312 #define MASK_I_AF_UNLOCK                      0x40
0313 #define MASK_I_CBIT_FS                        0x02
0314 
0315 #define AUDIO_INT                             0x8506
0316 
0317 #define ERR_INT                               0x8507
0318 #define MASK_I_EESS_ERR                       0x80
0319 
0320 #define HDCP_INT                              0x8508
0321 #define MASK_I_AVM_SET                        0x80
0322 #define MASK_I_AVM_CLR                        0x40
0323 #define MASK_I_LINKERR                        0x20
0324 #define MASK_I_SHA_END                        0x10
0325 #define MASK_I_R0_END                         0x08
0326 #define MASK_I_KM_END                         0x04
0327 #define MASK_I_AKSV_END                       0x02
0328 #define MASK_I_AN_END                         0x01
0329 
0330 #define MISC_INT                              0x850B
0331 #define MASK_I_AS_LAYOUT                      0x10
0332 #define MASK_I_NO_SPD                         0x08
0333 #define MASK_I_NO_VS                          0x03
0334 #define MASK_I_SYNC_CHG                       0x02
0335 #define MASK_I_AUDIO_MUTE                     0x01
0336 
0337 #define KEY_INT                               0x850F
0338 
0339 #define SYS_INTM                              0x8512
0340 #define MASK_M_ACR_CTS                        0x80
0341 #define MASK_M_ACR_N                          0x40
0342 #define MASK_M_DVI_DET                        0x20
0343 #define MASK_M_HDMI_DET                       0x10
0344 #define MASK_M_NOPMBDET                       0x08
0345 #define MASK_M_BPMBDET                        0x04
0346 #define MASK_M_TMDS                           0x02
0347 #define MASK_M_DDC                            0x01
0348 
0349 #define CLK_INTM                              0x8513
0350 #define MASK_M_OUT_H_CHG                      0x40
0351 #define MASK_M_IN_DE_CHG                      0x20
0352 #define MASK_M_IN_HV_CHG                      0x10
0353 #define MASK_M_DC_CHG                         0x08
0354 #define MASK_M_PXCLK_CHG                      0x04
0355 #define MASK_M_PHYCLK_CHG                     0x02
0356 #define MASK_M_TMDS_CHG                       0x01
0357 
0358 #define PACKET_INTM                           0x8514
0359 
0360 #define CBIT_INTM                             0x8515
0361 #define MASK_M_AF_LOCK                        0x80
0362 #define MASK_M_AF_UNLOCK                      0x40
0363 #define MASK_M_CBIT_FS                        0x02
0364 
0365 #define AUDIO_INTM                            0x8516
0366 #define MASK_M_BUFINIT_END                    0x01
0367 
0368 #define ERR_INTM                              0x8517
0369 #define MASK_M_EESS_ERR                       0x80
0370 
0371 #define HDCP_INTM                             0x8518
0372 #define MASK_M_AVM_SET                        0x80
0373 #define MASK_M_AVM_CLR                        0x40
0374 #define MASK_M_LINKERR                        0x20
0375 #define MASK_M_SHA_END                        0x10
0376 #define MASK_M_R0_END                         0x08
0377 #define MASK_M_KM_END                         0x04
0378 #define MASK_M_AKSV_END                       0x02
0379 #define MASK_M_AN_END                         0x01
0380 
0381 #define MISC_INTM                             0x851B
0382 #define MASK_M_AS_LAYOUT                      0x10
0383 #define MASK_M_NO_SPD                         0x08
0384 #define MASK_M_NO_VS                          0x03
0385 #define MASK_M_SYNC_CHG                       0x02
0386 #define MASK_M_AUDIO_MUTE                     0x01
0387 
0388 #define KEY_INTM                              0x851F
0389 
0390 #define SYS_STATUS                            0x8520
0391 #define MASK_S_SYNC                           0x80
0392 #define MASK_S_AVMUTE                         0x40
0393 #define MASK_S_HDCP                           0x20
0394 #define MASK_S_HDMI                           0x10
0395 #define MASK_S_PHY_SCDT                       0x08
0396 #define MASK_S_PHY_PLL                        0x04
0397 #define MASK_S_TMDS                           0x02
0398 #define MASK_S_DDC5V                          0x01
0399 
0400 #define CSI_STATUS                            0x0410
0401 #define MASK_S_WSYNC                          0x0400
0402 #define MASK_S_TXACT                          0x0200
0403 #define MASK_S_RXACT                          0x0100
0404 #define MASK_S_HLT                            0x0001
0405 
0406 #define VI_STATUS1                            0x8522
0407 #define MASK_S_V_GBD                          0x08
0408 #define MASK_S_DEEPCOLOR                      0x0c
0409 #define MASK_S_V_422                          0x02
0410 #define MASK_S_V_INTERLACE                    0x01
0411 
0412 #define AU_STATUS0                            0x8523
0413 #define MASK_S_A_SAMPLE                       0x01
0414 
0415 #define VI_STATUS3                            0x8528
0416 #define MASK_S_V_COLOR                        0x1e
0417 #define MASK_LIMITED                          0x01
0418 
0419 #define PHY_CTL0                              0x8531
0420 #define MASK_PHY_SYSCLK_IND                   0x02
0421 #define MASK_PHY_CTL                          0x01
0422 
0423 
0424 #define PHY_CTL1                              0x8532 /* Not in REF_01 */
0425 #define MASK_PHY_AUTO_RST1                    0xf0
0426 #define MASK_PHY_AUTO_RST1_OFF                0x00
0427 #define SET_PHY_AUTO_RST1_US(us)             ((((us) / 200) << 4) & \
0428                         MASK_PHY_AUTO_RST1)
0429 #define MASK_FREQ_RANGE_MODE                  0x0f
0430 #define SET_FREQ_RANGE_MODE_CYCLES(cycles)   (((cycles) - 1) & \
0431                         MASK_FREQ_RANGE_MODE)
0432 
0433 #define PHY_CTL2                              0x8533 /* Not in REF_01 */
0434 #define MASK_PHY_AUTO_RST4                    0x04
0435 #define MASK_PHY_AUTO_RST3                    0x02
0436 #define MASK_PHY_AUTO_RST2                    0x01
0437 #define MASK_PHY_AUTO_RSTn                    (MASK_PHY_AUTO_RST4 | \
0438                         MASK_PHY_AUTO_RST3 | \
0439                         MASK_PHY_AUTO_RST2)
0440 
0441 #define PHY_EN                                0x8534
0442 #define MASK_ENABLE_PHY                       0x01
0443 
0444 #define PHY_RST                               0x8535
0445 #define MASK_RESET_CTRL                       0x01   /* Reset active low */
0446 
0447 #define PHY_BIAS                              0x8536 /* Not in REF_01 */
0448 
0449 #define PHY_CSQ                               0x853F /* Not in REF_01 */
0450 #define MASK_CSQ_CNT                          0x0f
0451 #define SET_CSQ_CNT_LEVEL(n)                 (n & MASK_CSQ_CNT)
0452 
0453 #define SYS_FREQ0                             0x8540
0454 #define SYS_FREQ1                             0x8541
0455 
0456 #define SYS_CLK                               0x8542 /* Not in REF_01 */
0457 #define MASK_CLK_DIFF                         0x0C
0458 #define MASK_CLK_DIV                          0x03
0459 
0460 #define DDC_CTL                               0x8543
0461 #define MASK_DDC_ACK_POL                      0x08
0462 #define MASK_DDC_ACTION                       0x04
0463 #define MASK_DDC5V_MODE                       0x03
0464 #define MASK_DDC5V_MODE_0MS                   0x00
0465 #define MASK_DDC5V_MODE_50MS                  0x01
0466 #define MASK_DDC5V_MODE_100MS                 0x02
0467 #define MASK_DDC5V_MODE_200MS                 0x03
0468 
0469 #define HPD_CTL                               0x8544
0470 #define MASK_HPD_CTL0                         0x10
0471 #define MASK_HPD_OUT0                         0x01
0472 
0473 #define ANA_CTL                               0x8545
0474 #define MASK_APPL_PCSX                        0x30
0475 #define MASK_APPL_PCSX_HIZ                    0x00
0476 #define MASK_APPL_PCSX_L_FIX                  0x10
0477 #define MASK_APPL_PCSX_H_FIX                  0x20
0478 #define MASK_APPL_PCSX_NORMAL                 0x30
0479 #define MASK_ANALOG_ON                        0x01
0480 
0481 #define AVM_CTL                               0x8546
0482 
0483 #define INIT_END                              0x854A
0484 #define MASK_INIT_END                         0x01
0485 
0486 #define HDMI_DET                              0x8552 /* Not in REF_01 */
0487 #define MASK_HDMI_DET_MOD1                    0x80
0488 #define MASK_HDMI_DET_MOD0                    0x40
0489 #define MASK_HDMI_DET_V                       0x30
0490 #define MASK_HDMI_DET_V_SYNC                  0x00
0491 #define MASK_HDMI_DET_V_ASYNC_25MS            0x10
0492 #define MASK_HDMI_DET_V_ASYNC_50MS            0x20
0493 #define MASK_HDMI_DET_V_ASYNC_100MS           0x30
0494 #define MASK_HDMI_DET_NUM                     0x0f
0495 
0496 #define HDCP_MODE                             0x8560
0497 #define MASK_MODE_RST_TN                      0x20
0498 #define MASK_LINE_REKEY                       0x10
0499 #define MASK_AUTO_CLR                         0x04
0500 #define MASK_MANUAL_AUTHENTICATION            0x02 /* Not in REF_01 */
0501 
0502 #define HDCP_REG1                             0x8563 /* Not in REF_01 */
0503 #define MASK_AUTH_UNAUTH_SEL                  0x70
0504 #define MASK_AUTH_UNAUTH_SEL_12_FRAMES        0x70
0505 #define MASK_AUTH_UNAUTH_SEL_8_FRAMES         0x60
0506 #define MASK_AUTH_UNAUTH_SEL_4_FRAMES         0x50
0507 #define MASK_AUTH_UNAUTH_SEL_2_FRAMES         0x40
0508 #define MASK_AUTH_UNAUTH_SEL_64_FRAMES        0x30
0509 #define MASK_AUTH_UNAUTH_SEL_32_FRAMES        0x20
0510 #define MASK_AUTH_UNAUTH_SEL_16_FRAMES        0x10
0511 #define MASK_AUTH_UNAUTH_SEL_ONCE             0x00
0512 #define MASK_AUTH_UNAUTH                      0x01
0513 #define MASK_AUTH_UNAUTH_AUTO                 0x01
0514 
0515 #define HDCP_REG2                             0x8564 /* Not in REF_01 */
0516 #define MASK_AUTO_P3_RESET                    0x0F
0517 #define SET_AUTO_P3_RESET_FRAMES(n)          (n & MASK_AUTO_P3_RESET)
0518 #define MASK_AUTO_P3_RESET_OFF                0x00
0519 
0520 #define VI_MODE                               0x8570
0521 #define MASK_RGB_DVI                          0x08 /* Not in REF_01 */
0522 
0523 #define VOUT_SET2                             0x8573
0524 #define MASK_SEL422                           0x80
0525 #define MASK_VOUT_422FIL_100                  0x40
0526 #define MASK_VOUTCOLORMODE                    0x03
0527 #define MASK_VOUTCOLORMODE_THROUGH            0x00
0528 #define MASK_VOUTCOLORMODE_AUTO               0x01
0529 #define MASK_VOUTCOLORMODE_MANUAL             0x03
0530 
0531 #define VOUT_SET3                             0x8574
0532 #define MASK_VOUT_EXTCNT                      0x08
0533 
0534 #define VI_REP                                0x8576
0535 #define MASK_VOUT_COLOR_SEL                   0xe0
0536 #define MASK_VOUT_COLOR_RGB_FULL              0x00
0537 #define MASK_VOUT_COLOR_RGB_LIMITED           0x20
0538 #define MASK_VOUT_COLOR_601_YCBCR_FULL        0x40
0539 #define MASK_VOUT_COLOR_601_YCBCR_LIMITED     0x60
0540 #define MASK_VOUT_COLOR_709_YCBCR_FULL        0x80
0541 #define MASK_VOUT_COLOR_709_YCBCR_LIMITED     0xa0
0542 #define MASK_VOUT_COLOR_FULL_TO_LIMITED       0xc0
0543 #define MASK_VOUT_COLOR_LIMITED_TO_FULL       0xe0
0544 #define MASK_IN_REP_HEN                       0x10
0545 #define MASK_IN_REP                           0x0f
0546 
0547 #define VI_MUTE                               0x857F
0548 #define MASK_AUTO_MUTE                        0xc0
0549 #define MASK_VI_MUTE                          0x10
0550 
0551 #define DE_WIDTH_H_LO                         0x8582 /* Not in REF_01 */
0552 #define DE_WIDTH_H_HI                         0x8583 /* Not in REF_01 */
0553 #define DE_WIDTH_V_LO                         0x8588 /* Not in REF_01 */
0554 #define DE_WIDTH_V_HI                         0x8589 /* Not in REF_01 */
0555 #define H_SIZE_LO                             0x858A /* Not in REF_01 */
0556 #define H_SIZE_HI                             0x858B /* Not in REF_01 */
0557 #define V_SIZE_LO                             0x858C /* Not in REF_01 */
0558 #define V_SIZE_HI                             0x858D /* Not in REF_01 */
0559 #define FV_CNT_LO                             0x85A1 /* Not in REF_01 */
0560 #define FV_CNT_HI                             0x85A2 /* Not in REF_01 */
0561 
0562 #define FH_MIN0                               0x85AA /* Not in REF_01 */
0563 #define FH_MIN1                               0x85AB /* Not in REF_01 */
0564 #define FH_MAX0                               0x85AC /* Not in REF_01 */
0565 #define FH_MAX1                               0x85AD /* Not in REF_01 */
0566 
0567 #define HV_RST                                0x85AF /* Not in REF_01 */
0568 #define MASK_H_PI_RST                         0x20
0569 #define MASK_V_PI_RST                         0x10
0570 
0571 #define EDID_MODE                             0x85C7
0572 #define MASK_EDID_SPEED                       0x40
0573 #define MASK_EDID_MODE                        0x03
0574 #define MASK_EDID_MODE_DISABLE                0x00
0575 #define MASK_EDID_MODE_DDC2B                  0x01
0576 #define MASK_EDID_MODE_E_DDC                  0x02
0577 
0578 #define EDID_LEN1                             0x85CA
0579 #define EDID_LEN2                             0x85CB
0580 
0581 #define HDCP_REG3                             0x85D1 /* Not in REF_01 */
0582 #define KEY_RD_CMD                            0x01
0583 
0584 #define FORCE_MUTE                            0x8600
0585 #define MASK_FORCE_AMUTE                      0x10
0586 #define MASK_FORCE_DMUTE                      0x01
0587 
0588 #define CMD_AUD                               0x8601
0589 #define MASK_CMD_BUFINIT                      0x04
0590 #define MASK_CMD_LOCKDET                      0x02
0591 #define MASK_CMD_MUTE                         0x01
0592 
0593 #define AUTO_CMD0                             0x8602
0594 #define MASK_AUTO_MUTE7                       0x80
0595 #define MASK_AUTO_MUTE6                       0x40
0596 #define MASK_AUTO_MUTE5                       0x20
0597 #define MASK_AUTO_MUTE4                       0x10
0598 #define MASK_AUTO_MUTE3                       0x08
0599 #define MASK_AUTO_MUTE2                       0x04
0600 #define MASK_AUTO_MUTE1                       0x02
0601 #define MASK_AUTO_MUTE0                       0x01
0602 
0603 #define AUTO_CMD1                             0x8603
0604 #define MASK_AUTO_MUTE10                      0x04
0605 #define MASK_AUTO_MUTE9                       0x02
0606 #define MASK_AUTO_MUTE8                       0x01
0607 
0608 #define AUTO_CMD2                             0x8604
0609 #define MASK_AUTO_PLAY3                       0x08
0610 #define MASK_AUTO_PLAY2                       0x04
0611 
0612 #define BUFINIT_START                         0x8606
0613 #define SET_BUFINIT_START_MS(milliseconds)   ((milliseconds) / 100)
0614 
0615 #define FS_MUTE                               0x8607
0616 #define MASK_FS_ELSE_MUTE                     0x80
0617 #define MASK_FS22_MUTE                        0x40
0618 #define MASK_FS24_MUTE                        0x20
0619 #define MASK_FS88_MUTE                        0x10
0620 #define MASK_FS96_MUTE                        0x08
0621 #define MASK_FS176_MUTE                       0x04
0622 #define MASK_FS192_MUTE                       0x02
0623 #define MASK_FS_NO_MUTE                       0x01
0624 
0625 #define FS_IMODE                              0x8620
0626 #define MASK_NLPCM_HMODE                      0x40
0627 #define MASK_NLPCM_SMODE                      0x20
0628 #define MASK_NLPCM_IMODE                      0x10
0629 #define MASK_FS_HMODE                         0x08
0630 #define MASK_FS_AMODE                         0x04
0631 #define MASK_FS_SMODE                         0x02
0632 #define MASK_FS_IMODE                         0x01
0633 
0634 #define FS_SET                                0x8621
0635 #define MASK_FS                               0x0f
0636 
0637 #define LOCKDET_REF0                          0x8630
0638 #define LOCKDET_REF1                          0x8631
0639 #define LOCKDET_REF2                          0x8632
0640 
0641 #define ACR_MODE                              0x8640
0642 #define MASK_ACR_LOAD                         0x10
0643 #define MASK_N_MODE                           0x04
0644 #define MASK_CTS_MODE                         0x01
0645 
0646 #define ACR_MDF0                              0x8641
0647 #define MASK_ACR_L2MDF                        0x70
0648 #define MASK_ACR_L2MDF_0_PPM                  0x00
0649 #define MASK_ACR_L2MDF_61_PPM                 0x10
0650 #define MASK_ACR_L2MDF_122_PPM                0x20
0651 #define MASK_ACR_L2MDF_244_PPM                0x30
0652 #define MASK_ACR_L2MDF_488_PPM                0x40
0653 #define MASK_ACR_L2MDF_976_PPM                0x50
0654 #define MASK_ACR_L2MDF_1976_PPM               0x60
0655 #define MASK_ACR_L2MDF_3906_PPM               0x70
0656 #define MASK_ACR_L1MDF                        0x07
0657 #define MASK_ACR_L1MDF_0_PPM                  0x00
0658 #define MASK_ACR_L1MDF_61_PPM                 0x01
0659 #define MASK_ACR_L1MDF_122_PPM                0x02
0660 #define MASK_ACR_L1MDF_244_PPM                0x03
0661 #define MASK_ACR_L1MDF_488_PPM                0x04
0662 #define MASK_ACR_L1MDF_976_PPM                0x05
0663 #define MASK_ACR_L1MDF_1976_PPM               0x06
0664 #define MASK_ACR_L1MDF_3906_PPM               0x07
0665 
0666 #define ACR_MDF1                              0x8642
0667 #define MASK_ACR_L3MDF                        0x07
0668 #define MASK_ACR_L3MDF_0_PPM                  0x00
0669 #define MASK_ACR_L3MDF_61_PPM                 0x01
0670 #define MASK_ACR_L3MDF_122_PPM                0x02
0671 #define MASK_ACR_L3MDF_244_PPM                0x03
0672 #define MASK_ACR_L3MDF_488_PPM                0x04
0673 #define MASK_ACR_L3MDF_976_PPM                0x05
0674 #define MASK_ACR_L3MDF_1976_PPM               0x06
0675 #define MASK_ACR_L3MDF_3906_PPM               0x07
0676 
0677 #define SDO_MODE1                             0x8652
0678 #define MASK_SDO_BIT_LENG                     0x70
0679 #define MASK_SDO_FMT                          0x03
0680 #define MASK_SDO_FMT_RIGHT                    0x00
0681 #define MASK_SDO_FMT_LEFT                     0x01
0682 #define MASK_SDO_FMT_I2S                      0x02
0683 
0684 #define DIV_MODE                              0x8665 /* Not in REF_01 */
0685 #define MASK_DIV_DLY                          0xf0
0686 #define SET_DIV_DLY_MS(milliseconds)         ((((milliseconds) / 100) << 4) & \
0687                         MASK_DIV_DLY)
0688 #define MASK_DIV_MODE                         0x01
0689 
0690 #define NCO_F0_MOD                            0x8670
0691 #define MASK_NCO_F0_MOD                       0x03
0692 #define MASK_NCO_F0_MOD_42MHZ                 0x00
0693 #define MASK_NCO_F0_MOD_27MHZ                 0x01
0694 
0695 #define PK_INT_MODE                           0x8709
0696 #define MASK_ISRC2_INT_MODE                   0x80
0697 #define MASK_ISRC_INT_MODE                    0x40
0698 #define MASK_ACP_INT_MODE                     0x20
0699 #define MASK_VS_INT_MODE                      0x10
0700 #define MASK_SPD_INT_MODE                     0x08
0701 #define MASK_MS_INT_MODE                      0x04
0702 #define MASK_AUD_INT_MODE                     0x02
0703 #define MASK_AVI_INT_MODE                     0x01
0704 
0705 #define NO_PKT_LIMIT                          0x870B
0706 #define MASK_NO_ACP_LIMIT                     0xf0
0707 #define SET_NO_ACP_LIMIT_MS(milliseconds)    ((((milliseconds) / 80) << 4) & \
0708                         MASK_NO_ACP_LIMIT)
0709 #define MASK_NO_AVI_LIMIT                     0x0f
0710 #define SET_NO_AVI_LIMIT_MS(milliseconds)    (((milliseconds) / 80) & \
0711                         MASK_NO_AVI_LIMIT)
0712 
0713 #define NO_PKT_CLR                            0x870C
0714 #define MASK_NO_VS_CLR                        0x40
0715 #define MASK_NO_SPD_CLR                       0x20
0716 #define MASK_NO_ACP_CLR                       0x10
0717 #define MASK_NO_AVI_CLR1                      0x02
0718 #define MASK_NO_AVI_CLR0                      0x01
0719 
0720 #define ERR_PK_LIMIT                          0x870D
0721 #define NO_PKT_LIMIT2                         0x870E
0722 #define PK_AVI_0HEAD                          0x8710
0723 #define PK_AVI_1HEAD                          0x8711
0724 #define PK_AVI_2HEAD                          0x8712
0725 #define PK_AVI_0BYTE                          0x8713
0726 #define PK_AVI_1BYTE                          0x8714
0727 #define PK_AVI_2BYTE                          0x8715
0728 #define PK_AVI_3BYTE                          0x8716
0729 #define PK_AVI_4BYTE                          0x8717
0730 #define PK_AVI_5BYTE                          0x8718
0731 #define PK_AVI_6BYTE                          0x8719
0732 #define PK_AVI_7BYTE                          0x871A
0733 #define PK_AVI_8BYTE                          0x871B
0734 #define PK_AVI_9BYTE                          0x871C
0735 #define PK_AVI_10BYTE                         0x871D
0736 #define PK_AVI_11BYTE                         0x871E
0737 #define PK_AVI_12BYTE                         0x871F
0738 #define PK_AVI_13BYTE                         0x8720
0739 #define PK_AVI_14BYTE                         0x8721
0740 #define PK_AVI_15BYTE                         0x8722
0741 #define PK_AVI_16BYTE                         0x8723
0742 
0743 #define BKSV                                  0x8800
0744 
0745 #define BCAPS                                 0x8840
0746 #define MASK_HDMI_RSVD                        0x80
0747 #define MASK_REPEATER                         0x40
0748 #define MASK_READY                            0x20
0749 #define MASK_FASTI2C                          0x10
0750 #define MASK_1_1_FEA                          0x02
0751 #define MASK_FAST_REAU                        0x01
0752 
0753 #define BSTATUS1                              0x8842
0754 #define MASK_MAX_EXCED                        0x08
0755 
0756 #define EDID_RAM                              0x8C00
0757 #define NO_GDB_LIMIT                          0x9007
0758 
0759 #endif