cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

ddk750_reg.h (80088B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2#ifndef DDK750_REG_H__
      3#define DDK750_REG_H__
      4
      5/* New register for SM750LE */
      6#define DE_STATE1                                        0x100054
      7#define DE_STATE1_DE_ABORT                               BIT(0)
      8
      9#define DE_STATE2                                        0x100058
     10#define DE_STATE2_DE_FIFO_EMPTY                          BIT(3)
     11#define DE_STATE2_DE_STATUS_BUSY                         BIT(2)
     12#define DE_STATE2_DE_MEM_FIFO_EMPTY                      BIT(1)
     13
     14#define SYSTEM_CTRL                                   0x000000
     15#define SYSTEM_CTRL_DPMS_MASK                         (0x3 << 30)
     16#define SYSTEM_CTRL_DPMS_VPHP                         (0x0 << 30)
     17#define SYSTEM_CTRL_DPMS_VPHN                         (0x1 << 30)
     18#define SYSTEM_CTRL_DPMS_VNHP                         (0x2 << 30)
     19#define SYSTEM_CTRL_DPMS_VNHN                         (0x3 << 30)
     20#define SYSTEM_CTRL_PCI_BURST                         BIT(29)
     21#define SYSTEM_CTRL_PCI_MASTER                        BIT(25)
     22#define SYSTEM_CTRL_LATENCY_TIMER_OFF                 BIT(24)
     23#define SYSTEM_CTRL_DE_FIFO_EMPTY                     BIT(23)
     24#define SYSTEM_CTRL_DE_STATUS_BUSY                    BIT(22)
     25#define SYSTEM_CTRL_DE_MEM_FIFO_EMPTY                 BIT(21)
     26#define SYSTEM_CTRL_CSC_STATUS_BUSY                   BIT(20)
     27#define SYSTEM_CTRL_CRT_VSYNC_ACTIVE                  BIT(19)
     28#define SYSTEM_CTRL_PANEL_VSYNC_ACTIVE                BIT(18)
     29#define SYSTEM_CTRL_CURRENT_BUFFER_FLIP_PENDING       BIT(17)
     30#define SYSTEM_CTRL_DMA_STATUS_BUSY                   BIT(16)
     31#define SYSTEM_CTRL_PCI_BURST_READ                    BIT(15)
     32#define SYSTEM_CTRL_DE_ABORT                          BIT(13)
     33#define SYSTEM_CTRL_PCI_SUBSYS_ID_LOCK                BIT(11)
     34#define SYSTEM_CTRL_PCI_RETRY_OFF                     BIT(7)
     35#define SYSTEM_CTRL_PCI_SLAVE_BURST_READ_SIZE_MASK    (0x3 << 4)
     36#define SYSTEM_CTRL_PCI_SLAVE_BURST_READ_SIZE_1       (0x0 << 4)
     37#define SYSTEM_CTRL_PCI_SLAVE_BURST_READ_SIZE_2       (0x1 << 4)
     38#define SYSTEM_CTRL_PCI_SLAVE_BURST_READ_SIZE_4       (0x2 << 4)
     39#define SYSTEM_CTRL_PCI_SLAVE_BURST_READ_SIZE_8       (0x3 << 4)
     40#define SYSTEM_CTRL_CRT_TRISTATE                      BIT(3)
     41#define SYSTEM_CTRL_PCIMEM_TRISTATE                   BIT(2)
     42#define SYSTEM_CTRL_LOCALMEM_TRISTATE                 BIT(1)
     43#define SYSTEM_CTRL_PANEL_TRISTATE                    BIT(0)
     44
     45#define MISC_CTRL                                     0x000004
     46#define MISC_CTRL_DRAM_RERESH_COUNT                   BIT(27)
     47#define MISC_CTRL_DRAM_REFRESH_TIME_MASK              (0x3 << 25)
     48#define MISC_CTRL_DRAM_REFRESH_TIME_8                 (0x0 << 25)
     49#define MISC_CTRL_DRAM_REFRESH_TIME_16                (0x1 << 25)
     50#define MISC_CTRL_DRAM_REFRESH_TIME_32                (0x2 << 25)
     51#define MISC_CTRL_DRAM_REFRESH_TIME_64                (0x3 << 25)
     52#define MISC_CTRL_INT_OUTPUT_INVERT                   BIT(24)
     53#define MISC_CTRL_PLL_CLK_COUNT                       BIT(23)
     54#define MISC_CTRL_DAC_POWER_OFF                       BIT(20)
     55#define MISC_CTRL_CLK_SELECT_TESTCLK                  BIT(16)
     56#define MISC_CTRL_DRAM_COLUMN_SIZE_MASK               (0x3 << 14)
     57#define MISC_CTRL_DRAM_COLUMN_SIZE_256                (0x0 << 14)
     58#define MISC_CTRL_DRAM_COLUMN_SIZE_512                (0x1 << 14)
     59#define MISC_CTRL_DRAM_COLUMN_SIZE_1024               (0x2 << 14)
     60#define MISC_CTRL_LOCALMEM_SIZE_MASK                  (0x3 << 12)
     61#define MISC_CTRL_LOCALMEM_SIZE_8M                    (0x3 << 12)
     62#define MISC_CTRL_LOCALMEM_SIZE_16M                   (0x0 << 12)
     63#define MISC_CTRL_LOCALMEM_SIZE_32M                   (0x1 << 12)
     64#define MISC_CTRL_LOCALMEM_SIZE_64M                   (0x2 << 12)
     65#define MISC_CTRL_DRAM_TWTR                           BIT(11)
     66#define MISC_CTRL_DRAM_TWR                            BIT(10)
     67#define MISC_CTRL_DRAM_TRP                            BIT(9)
     68#define MISC_CTRL_DRAM_TRFC                           BIT(8)
     69#define MISC_CTRL_DRAM_TRAS                           BIT(7)
     70#define MISC_CTRL_LOCALMEM_RESET                      BIT(6)
     71#define MISC_CTRL_LOCALMEM_STATE_INACTIVE             BIT(5)
     72#define MISC_CTRL_CPU_CAS_LATENCY                     BIT(4)
     73#define MISC_CTRL_DLL_OFF                             BIT(3)
     74#define MISC_CTRL_DRAM_OUTPUT_HIGH                    BIT(2)
     75#define MISC_CTRL_LOCALMEM_BUS_SIZE                   BIT(1)
     76#define MISC_CTRL_EMBEDDED_LOCALMEM_OFF               BIT(0)
     77
     78#define GPIO_MUX                                      0x000008
     79#define GPIO_MUX_31                                   BIT(31)
     80#define GPIO_MUX_30                                   BIT(30)
     81#define GPIO_MUX_29                                   BIT(29)
     82#define GPIO_MUX_28                                   BIT(28)
     83#define GPIO_MUX_27                                   BIT(27)
     84#define GPIO_MUX_26                                   BIT(26)
     85#define GPIO_MUX_25                                   BIT(25)
     86#define GPIO_MUX_24                                   BIT(24)
     87#define GPIO_MUX_23                                   BIT(23)
     88#define GPIO_MUX_22                                   BIT(22)
     89#define GPIO_MUX_21                                   BIT(21)
     90#define GPIO_MUX_20                                   BIT(20)
     91#define GPIO_MUX_19                                   BIT(19)
     92#define GPIO_MUX_18                                   BIT(18)
     93#define GPIO_MUX_17                                   BIT(17)
     94#define GPIO_MUX_16                                   BIT(16)
     95#define GPIO_MUX_15                                   BIT(15)
     96#define GPIO_MUX_14                                   BIT(14)
     97#define GPIO_MUX_13                                   BIT(13)
     98#define GPIO_MUX_12                                   BIT(12)
     99#define GPIO_MUX_11                                   BIT(11)
    100#define GPIO_MUX_10                                   BIT(10)
    101#define GPIO_MUX_9                                    BIT(9)
    102#define GPIO_MUX_8                                    BIT(8)
    103#define GPIO_MUX_7                                    BIT(7)
    104#define GPIO_MUX_6                                    BIT(6)
    105#define GPIO_MUX_5                                    BIT(5)
    106#define GPIO_MUX_4                                    BIT(4)
    107#define GPIO_MUX_3                                    BIT(3)
    108#define GPIO_MUX_2                                    BIT(2)
    109#define GPIO_MUX_1                                    BIT(1)
    110#define GPIO_MUX_0                                    BIT(0)
    111
    112#define LOCALMEM_ARBITRATION                          0x00000C
    113#define LOCALMEM_ARBITRATION_ROTATE                   BIT(28)
    114#define LOCALMEM_ARBITRATION_VGA_MASK                 (0x7 << 24)
    115#define LOCALMEM_ARBITRATION_VGA_OFF                  (0x0 << 24)
    116#define LOCALMEM_ARBITRATION_VGA_PRIORITY_1           (0x1 << 24)
    117#define LOCALMEM_ARBITRATION_VGA_PRIORITY_2           (0x2 << 24)
    118#define LOCALMEM_ARBITRATION_VGA_PRIORITY_3           (0x3 << 24)
    119#define LOCALMEM_ARBITRATION_VGA_PRIORITY_4           (0x4 << 24)
    120#define LOCALMEM_ARBITRATION_VGA_PRIORITY_5           (0x5 << 24)
    121#define LOCALMEM_ARBITRATION_VGA_PRIORITY_6           (0x6 << 24)
    122#define LOCALMEM_ARBITRATION_VGA_PRIORITY_7           (0x7 << 24)
    123#define LOCALMEM_ARBITRATION_DMA_MASK                 (0x7 << 20)
    124#define LOCALMEM_ARBITRATION_DMA_OFF                  (0x0 << 20)
    125#define LOCALMEM_ARBITRATION_DMA_PRIORITY_1           (0x1 << 20)
    126#define LOCALMEM_ARBITRATION_DMA_PRIORITY_2           (0x2 << 20)
    127#define LOCALMEM_ARBITRATION_DMA_PRIORITY_3           (0x3 << 20)
    128#define LOCALMEM_ARBITRATION_DMA_PRIORITY_4           (0x4 << 20)
    129#define LOCALMEM_ARBITRATION_DMA_PRIORITY_5           (0x5 << 20)
    130#define LOCALMEM_ARBITRATION_DMA_PRIORITY_6           (0x6 << 20)
    131#define LOCALMEM_ARBITRATION_DMA_PRIORITY_7           (0x7 << 20)
    132#define LOCALMEM_ARBITRATION_ZVPORT1_MASK             (0x7 << 16)
    133#define LOCALMEM_ARBITRATION_ZVPORT1_OFF              (0x0 << 16)
    134#define LOCALMEM_ARBITRATION_ZVPORT1_PRIORITY_1       (0x1 << 16)
    135#define LOCALMEM_ARBITRATION_ZVPORT1_PRIORITY_2       (0x2 << 16)
    136#define LOCALMEM_ARBITRATION_ZVPORT1_PRIORITY_3       (0x3 << 16)
    137#define LOCALMEM_ARBITRATION_ZVPORT1_PRIORITY_4       (0x4 << 16)
    138#define LOCALMEM_ARBITRATION_ZVPORT1_PRIORITY_5       (0x5 << 16)
    139#define LOCALMEM_ARBITRATION_ZVPORT1_PRIORITY_6       (0x6 << 16)
    140#define LOCALMEM_ARBITRATION_ZVPORT1_PRIORITY_7       (0x7 << 16)
    141#define LOCALMEM_ARBITRATION_ZVPORT0_MASK             (0x7 << 12)
    142#define LOCALMEM_ARBITRATION_ZVPORT0_OFF              (0x0 << 12)
    143#define LOCALMEM_ARBITRATION_ZVPORT0_PRIORITY_1       (0x1 << 12)
    144#define LOCALMEM_ARBITRATION_ZVPORT0_PRIORITY_2       (0x2 << 12)
    145#define LOCALMEM_ARBITRATION_ZVPORT0_PRIORITY_3       (0x3 << 12)
    146#define LOCALMEM_ARBITRATION_ZVPORT0_PRIORITY_4       (0x4 << 12)
    147#define LOCALMEM_ARBITRATION_ZVPORT0_PRIORITY_5       (0x5 << 12)
    148#define LOCALMEM_ARBITRATION_ZVPORT0_PRIORITY_6       (0x6 << 12)
    149#define LOCALMEM_ARBITRATION_ZVPORT0_PRIORITY_7       (0x7 << 12)
    150#define LOCALMEM_ARBITRATION_VIDEO_MASK               (0x7 << 8)
    151#define LOCALMEM_ARBITRATION_VIDEO_OFF                (0x0 << 8)
    152#define LOCALMEM_ARBITRATION_VIDEO_PRIORITY_1         (0x1 << 8)
    153#define LOCALMEM_ARBITRATION_VIDEO_PRIORITY_2         (0x2 << 8)
    154#define LOCALMEM_ARBITRATION_VIDEO_PRIORITY_3         (0x3 << 8)
    155#define LOCALMEM_ARBITRATION_VIDEO_PRIORITY_4         (0x4 << 8)
    156#define LOCALMEM_ARBITRATION_VIDEO_PRIORITY_5         (0x5 << 8)
    157#define LOCALMEM_ARBITRATION_VIDEO_PRIORITY_6         (0x6 << 8)
    158#define LOCALMEM_ARBITRATION_VIDEO_PRIORITY_7         (0x7 << 8)
    159#define LOCALMEM_ARBITRATION_PANEL_MASK               (0x7 << 4)
    160#define LOCALMEM_ARBITRATION_PANEL_OFF                (0x0 << 4)
    161#define LOCALMEM_ARBITRATION_PANEL_PRIORITY_1         (0x1 << 4)
    162#define LOCALMEM_ARBITRATION_PANEL_PRIORITY_2         (0x2 << 4)
    163#define LOCALMEM_ARBITRATION_PANEL_PRIORITY_3         (0x3 << 4)
    164#define LOCALMEM_ARBITRATION_PANEL_PRIORITY_4         (0x4 << 4)
    165#define LOCALMEM_ARBITRATION_PANEL_PRIORITY_5         (0x5 << 4)
    166#define LOCALMEM_ARBITRATION_PANEL_PRIORITY_6         (0x6 << 4)
    167#define LOCALMEM_ARBITRATION_PANEL_PRIORITY_7         (0x7 << 4)
    168#define LOCALMEM_ARBITRATION_CRT_MASK                 0x7
    169#define LOCALMEM_ARBITRATION_CRT_OFF                  0x0
    170#define LOCALMEM_ARBITRATION_CRT_PRIORITY_1           0x1
    171#define LOCALMEM_ARBITRATION_CRT_PRIORITY_2           0x2
    172#define LOCALMEM_ARBITRATION_CRT_PRIORITY_3           0x3
    173#define LOCALMEM_ARBITRATION_CRT_PRIORITY_4           0x4
    174#define LOCALMEM_ARBITRATION_CRT_PRIORITY_5           0x5
    175#define LOCALMEM_ARBITRATION_CRT_PRIORITY_6           0x6
    176#define LOCALMEM_ARBITRATION_CRT_PRIORITY_7           0x7
    177
    178#define PCIMEM_ARBITRATION                            0x000010
    179#define PCIMEM_ARBITRATION_ROTATE                     BIT(28)
    180#define PCIMEM_ARBITRATION_VGA_MASK                   (0x7 << 24)
    181#define PCIMEM_ARBITRATION_VGA_OFF                    (0x0 << 24)
    182#define PCIMEM_ARBITRATION_VGA_PRIORITY_1             (0x1 << 24)
    183#define PCIMEM_ARBITRATION_VGA_PRIORITY_2             (0x2 << 24)
    184#define PCIMEM_ARBITRATION_VGA_PRIORITY_3             (0x3 << 24)
    185#define PCIMEM_ARBITRATION_VGA_PRIORITY_4             (0x4 << 24)
    186#define PCIMEM_ARBITRATION_VGA_PRIORITY_5             (0x5 << 24)
    187#define PCIMEM_ARBITRATION_VGA_PRIORITY_6             (0x6 << 24)
    188#define PCIMEM_ARBITRATION_VGA_PRIORITY_7             (0x7 << 24)
    189#define PCIMEM_ARBITRATION_DMA_MASK                   (0x7 << 20)
    190#define PCIMEM_ARBITRATION_DMA_OFF                    (0x0 << 20)
    191#define PCIMEM_ARBITRATION_DMA_PRIORITY_1             (0x1 << 20)
    192#define PCIMEM_ARBITRATION_DMA_PRIORITY_2             (0x2 << 20)
    193#define PCIMEM_ARBITRATION_DMA_PRIORITY_3             (0x3 << 20)
    194#define PCIMEM_ARBITRATION_DMA_PRIORITY_4             (0x4 << 20)
    195#define PCIMEM_ARBITRATION_DMA_PRIORITY_5             (0x5 << 20)
    196#define PCIMEM_ARBITRATION_DMA_PRIORITY_6             (0x6 << 20)
    197#define PCIMEM_ARBITRATION_DMA_PRIORITY_7             (0x7 << 20)
    198#define PCIMEM_ARBITRATION_ZVPORT1_MASK               (0x7 << 16)
    199#define PCIMEM_ARBITRATION_ZVPORT1_OFF                (0x0 << 16)
    200#define PCIMEM_ARBITRATION_ZVPORT1_PRIORITY_1         (0x1 << 16)
    201#define PCIMEM_ARBITRATION_ZVPORT1_PRIORITY_2         (0x2 << 16)
    202#define PCIMEM_ARBITRATION_ZVPORT1_PRIORITY_3         (0x3 << 16)
    203#define PCIMEM_ARBITRATION_ZVPORT1_PRIORITY_4         (0x4 << 16)
    204#define PCIMEM_ARBITRATION_ZVPORT1_PRIORITY_5         (0x5 << 16)
    205#define PCIMEM_ARBITRATION_ZVPORT1_PRIORITY_6         (0x6 << 16)
    206#define PCIMEM_ARBITRATION_ZVPORT1_PRIORITY_7         (0x7 << 16)
    207#define PCIMEM_ARBITRATION_ZVPORT0_MASK               (0x7 << 12)
    208#define PCIMEM_ARBITRATION_ZVPORT0_OFF                (0x0 << 12)
    209#define PCIMEM_ARBITRATION_ZVPORT0_PRIORITY_1         (0x1 << 12)
    210#define PCIMEM_ARBITRATION_ZVPORT0_PRIORITY_2         (0x2 << 12)
    211#define PCIMEM_ARBITRATION_ZVPORT0_PRIORITY_3         (0x3 << 12)
    212#define PCIMEM_ARBITRATION_ZVPORT0_PRIORITY_4         (0x4 << 12)
    213#define PCIMEM_ARBITRATION_ZVPORT0_PRIORITY_5         (0x5 << 12)
    214#define PCIMEM_ARBITRATION_ZVPORT0_PRIORITY_6         (0x6 << 12)
    215#define PCIMEM_ARBITRATION_ZVPORT0_PRIORITY_7         (0x7 << 12)
    216#define PCIMEM_ARBITRATION_VIDEO_MASK                 (0x7 << 8)
    217#define PCIMEM_ARBITRATION_VIDEO_OFF                  (0x0 << 8)
    218#define PCIMEM_ARBITRATION_VIDEO_PRIORITY_1           (0x1 << 8)
    219#define PCIMEM_ARBITRATION_VIDEO_PRIORITY_2           (0x2 << 8)
    220#define PCIMEM_ARBITRATION_VIDEO_PRIORITY_3           (0x3 << 8)
    221#define PCIMEM_ARBITRATION_VIDEO_PRIORITY_4           (0x4 << 8)
    222#define PCIMEM_ARBITRATION_VIDEO_PRIORITY_5           (0x5 << 8)
    223#define PCIMEM_ARBITRATION_VIDEO_PRIORITY_6           (0x6 << 8)
    224#define PCIMEM_ARBITRATION_VIDEO_PRIORITY_7           (0x7 << 8)
    225#define PCIMEM_ARBITRATION_PANEL_MASK                 (0x7 << 4)
    226#define PCIMEM_ARBITRATION_PANEL_OFF                  (0x0 << 4)
    227#define PCIMEM_ARBITRATION_PANEL_PRIORITY_1           (0x1 << 4)
    228#define PCIMEM_ARBITRATION_PANEL_PRIORITY_2           (0x2 << 4)
    229#define PCIMEM_ARBITRATION_PANEL_PRIORITY_3           (0x3 << 4)
    230#define PCIMEM_ARBITRATION_PANEL_PRIORITY_4           (0x4 << 4)
    231#define PCIMEM_ARBITRATION_PANEL_PRIORITY_5           (0x5 << 4)
    232#define PCIMEM_ARBITRATION_PANEL_PRIORITY_6           (0x6 << 4)
    233#define PCIMEM_ARBITRATION_PANEL_PRIORITY_7           (0x7 << 4)
    234#define PCIMEM_ARBITRATION_CRT_MASK                   0x7
    235#define PCIMEM_ARBITRATION_CRT_OFF                    0x0
    236#define PCIMEM_ARBITRATION_CRT_PRIORITY_1             0x1
    237#define PCIMEM_ARBITRATION_CRT_PRIORITY_2             0x2
    238#define PCIMEM_ARBITRATION_CRT_PRIORITY_3             0x3
    239#define PCIMEM_ARBITRATION_CRT_PRIORITY_4             0x4
    240#define PCIMEM_ARBITRATION_CRT_PRIORITY_5             0x5
    241#define PCIMEM_ARBITRATION_CRT_PRIORITY_6             0x6
    242#define PCIMEM_ARBITRATION_CRT_PRIORITY_7             0x7
    243
    244#define RAW_INT                                       0x000020
    245#define RAW_INT_ZVPORT1_VSYNC                         BIT(4)
    246#define RAW_INT_ZVPORT0_VSYNC                         BIT(3)
    247#define RAW_INT_CRT_VSYNC                             BIT(2)
    248#define RAW_INT_PANEL_VSYNC                           BIT(1)
    249#define RAW_INT_VGA_VSYNC                             BIT(0)
    250
    251#define INT_STATUS                                    0x000024
    252#define INT_STATUS_GPIO31                             BIT(31)
    253#define INT_STATUS_GPIO30                             BIT(30)
    254#define INT_STATUS_GPIO29                             BIT(29)
    255#define INT_STATUS_GPIO28                             BIT(28)
    256#define INT_STATUS_GPIO27                             BIT(27)
    257#define INT_STATUS_GPIO26                             BIT(26)
    258#define INT_STATUS_GPIO25                             BIT(25)
    259#define INT_STATUS_I2C                                BIT(12)
    260#define INT_STATUS_PWM                                BIT(11)
    261#define INT_STATUS_DMA1                               BIT(10)
    262#define INT_STATUS_DMA0                               BIT(9)
    263#define INT_STATUS_PCI                                BIT(8)
    264#define INT_STATUS_SSP1                               BIT(7)
    265#define INT_STATUS_SSP0                               BIT(6)
    266#define INT_STATUS_DE                                 BIT(5)
    267#define INT_STATUS_ZVPORT1_VSYNC                      BIT(4)
    268#define INT_STATUS_ZVPORT0_VSYNC                      BIT(3)
    269#define INT_STATUS_CRT_VSYNC                          BIT(2)
    270#define INT_STATUS_PANEL_VSYNC                        BIT(1)
    271#define INT_STATUS_VGA_VSYNC                          BIT(0)
    272
    273#define INT_MASK                                      0x000028
    274#define INT_MASK_GPIO31                               BIT(31)
    275#define INT_MASK_GPIO30                               BIT(30)
    276#define INT_MASK_GPIO29                               BIT(29)
    277#define INT_MASK_GPIO28                               BIT(28)
    278#define INT_MASK_GPIO27                               BIT(27)
    279#define INT_MASK_GPIO26                               BIT(26)
    280#define INT_MASK_GPIO25                               BIT(25)
    281#define INT_MASK_I2C                                  BIT(12)
    282#define INT_MASK_PWM                                  BIT(11)
    283#define INT_MASK_DMA1                                 BIT(10)
    284#define INT_MASK_DMA                                  BIT(9)
    285#define INT_MASK_PCI                                  BIT(8)
    286#define INT_MASK_SSP1                                 BIT(7)
    287#define INT_MASK_SSP0                                 BIT(6)
    288#define INT_MASK_DE                                   BIT(5)
    289#define INT_MASK_ZVPORT1_VSYNC                        BIT(4)
    290#define INT_MASK_ZVPORT0_VSYNC                        BIT(3)
    291#define INT_MASK_CRT_VSYNC                            BIT(2)
    292#define INT_MASK_PANEL_VSYNC                          BIT(1)
    293#define INT_MASK_VGA_VSYNC                            BIT(0)
    294
    295#define CURRENT_GATE                                  0x000040
    296#define CURRENT_GATE_MCLK_MASK                        (0x3 << 14)
    297#ifdef VALIDATION_CHIP
    298    #define CURRENT_GATE_MCLK_112MHZ                  (0x0 << 14)
    299    #define CURRENT_GATE_MCLK_84MHZ                   (0x1 << 14)
    300    #define CURRENT_GATE_MCLK_56MHZ                   (0x2 << 14)
    301    #define CURRENT_GATE_MCLK_42MHZ                   (0x3 << 14)
    302#else
    303    #define CURRENT_GATE_MCLK_DIV_3                   (0x0 << 14)
    304    #define CURRENT_GATE_MCLK_DIV_4                   (0x1 << 14)
    305    #define CURRENT_GATE_MCLK_DIV_6                   (0x2 << 14)
    306    #define CURRENT_GATE_MCLK_DIV_8                   (0x3 << 14)
    307#endif
    308#define CURRENT_GATE_M2XCLK_MASK                      (0x3 << 12)
    309#ifdef VALIDATION_CHIP
    310    #define CURRENT_GATE_M2XCLK_336MHZ                (0x0 << 12)
    311    #define CURRENT_GATE_M2XCLK_168MHZ                (0x1 << 12)
    312    #define CURRENT_GATE_M2XCLK_112MHZ                (0x2 << 12)
    313    #define CURRENT_GATE_M2XCLK_84MHZ                 (0x3 << 12)
    314#else
    315    #define CURRENT_GATE_M2XCLK_DIV_1                 (0x0 << 12)
    316    #define CURRENT_GATE_M2XCLK_DIV_2                 (0x1 << 12)
    317    #define CURRENT_GATE_M2XCLK_DIV_3                 (0x2 << 12)
    318    #define CURRENT_GATE_M2XCLK_DIV_4                 (0x3 << 12)
    319#endif
    320#define CURRENT_GATE_VGA                              BIT(10)
    321#define CURRENT_GATE_PWM                              BIT(9)
    322#define CURRENT_GATE_I2C                              BIT(8)
    323#define CURRENT_GATE_SSP                              BIT(7)
    324#define CURRENT_GATE_GPIO                             BIT(6)
    325#define CURRENT_GATE_ZVPORT                           BIT(5)
    326#define CURRENT_GATE_CSC                              BIT(4)
    327#define CURRENT_GATE_DE                               BIT(3)
    328#define CURRENT_GATE_DISPLAY                          BIT(2)
    329#define CURRENT_GATE_LOCALMEM                         BIT(1)
    330#define CURRENT_GATE_DMA                              BIT(0)
    331
    332#define MODE0_GATE                                    0x000044
    333#define MODE0_GATE_MCLK_MASK                          (0x3 << 14)
    334#define MODE0_GATE_MCLK_112MHZ                        (0x0 << 14)
    335#define MODE0_GATE_MCLK_84MHZ                         (0x1 << 14)
    336#define MODE0_GATE_MCLK_56MHZ                         (0x2 << 14)
    337#define MODE0_GATE_MCLK_42MHZ                         (0x3 << 14)
    338#define MODE0_GATE_M2XCLK_MASK                        (0x3 << 12)
    339#define MODE0_GATE_M2XCLK_336MHZ                      (0x0 << 12)
    340#define MODE0_GATE_M2XCLK_168MHZ                      (0x1 << 12)
    341#define MODE0_GATE_M2XCLK_112MHZ                      (0x2 << 12)
    342#define MODE0_GATE_M2XCLK_84MHZ                       (0x3 << 12)
    343#define MODE0_GATE_VGA                                BIT(10)
    344#define MODE0_GATE_PWM                                BIT(9)
    345#define MODE0_GATE_I2C                                BIT(8)
    346#define MODE0_GATE_SSP                                BIT(7)
    347#define MODE0_GATE_GPIO                               BIT(6)
    348#define MODE0_GATE_ZVPORT                             BIT(5)
    349#define MODE0_GATE_CSC                                BIT(4)
    350#define MODE0_GATE_DE                                 BIT(3)
    351#define MODE0_GATE_DISPLAY                            BIT(2)
    352#define MODE0_GATE_LOCALMEM                           BIT(1)
    353#define MODE0_GATE_DMA                                BIT(0)
    354
    355#define MODE1_GATE                                    0x000048
    356#define MODE1_GATE_MCLK_MASK                          (0x3 << 14)
    357#define MODE1_GATE_MCLK_112MHZ                        (0x0 << 14)
    358#define MODE1_GATE_MCLK_84MHZ                         (0x1 << 14)
    359#define MODE1_GATE_MCLK_56MHZ                         (0x2 << 14)
    360#define MODE1_GATE_MCLK_42MHZ                         (0x3 << 14)
    361#define MODE1_GATE_M2XCLK_MASK                        (0x3 << 12)
    362#define MODE1_GATE_M2XCLK_336MHZ                      (0x0 << 12)
    363#define MODE1_GATE_M2XCLK_168MHZ                      (0x1 << 12)
    364#define MODE1_GATE_M2XCLK_112MHZ                      (0x2 << 12)
    365#define MODE1_GATE_M2XCLK_84MHZ                       (0x3 << 12)
    366#define MODE1_GATE_VGA                                BIT(10)
    367#define MODE1_GATE_PWM                                BIT(9)
    368#define MODE1_GATE_I2C                                BIT(8)
    369#define MODE1_GATE_SSP                                BIT(7)
    370#define MODE1_GATE_GPIO                               BIT(6)
    371#define MODE1_GATE_ZVPORT                             BIT(5)
    372#define MODE1_GATE_CSC                                BIT(4)
    373#define MODE1_GATE_DE                                 BIT(3)
    374#define MODE1_GATE_DISPLAY                            BIT(2)
    375#define MODE1_GATE_LOCALMEM                           BIT(1)
    376#define MODE1_GATE_DMA                                BIT(0)
    377
    378#define POWER_MODE_CTRL                               0x00004C
    379#ifdef VALIDATION_CHIP
    380    #define POWER_MODE_CTRL_336CLK                    BIT(4)
    381#endif
    382#define POWER_MODE_CTRL_OSC_INPUT                     BIT(3)
    383#define POWER_MODE_CTRL_ACPI                          BIT(2)
    384#define POWER_MODE_CTRL_MODE_MASK                     (0x3 << 0)
    385#define POWER_MODE_CTRL_MODE_MODE0                    (0x0 << 0)
    386#define POWER_MODE_CTRL_MODE_MODE1                    (0x1 << 0)
    387#define POWER_MODE_CTRL_MODE_SLEEP                    (0x2 << 0)
    388
    389#define PCI_MASTER_BASE                               0x000050
    390#define PCI_MASTER_BASE_ADDRESS_MASK                  0xff
    391
    392#define DEVICE_ID                                     0x000054
    393#define DEVICE_ID_DEVICE_ID_MASK                      (0xffff << 16)
    394#define DEVICE_ID_REVISION_ID_MASK                    0xff
    395
    396#define PLL_CLK_COUNT                                 0x000058
    397#define PLL_CLK_COUNT_COUNTER_MASK                    0xffff
    398
    399#define PANEL_PLL_CTRL                                0x00005C
    400#define PLL_CTRL_BYPASS                               BIT(18)
    401#define PLL_CTRL_POWER                                BIT(17)
    402#define PLL_CTRL_INPUT                                BIT(16)
    403#ifdef VALIDATION_CHIP
    404    #define PLL_CTRL_OD_SHIFT                         14
    405    #define PLL_CTRL_OD_MASK                          (0x3 << 14)
    406#else
    407    #define PLL_CTRL_POD_SHIFT                        14
    408    #define PLL_CTRL_POD_MASK                         (0x3 << 14)
    409    #define PLL_CTRL_OD_SHIFT                         12
    410    #define PLL_CTRL_OD_MASK                          (0x3 << 12)
    411#endif
    412#define PLL_CTRL_N_SHIFT                              8
    413#define PLL_CTRL_N_MASK                               (0xf << 8)
    414#define PLL_CTRL_M_SHIFT                              0
    415#define PLL_CTRL_M_MASK                               0xff
    416
    417#define CRT_PLL_CTRL                                  0x000060
    418
    419#define VGA_PLL0_CTRL                                 0x000064
    420
    421#define VGA_PLL1_CTRL                                 0x000068
    422
    423#define SCRATCH_DATA                                  0x00006c
    424
    425#ifndef VALIDATION_CHIP
    426
    427#define MXCLK_PLL_CTRL                                0x000070
    428
    429#define VGA_CONFIGURATION                             0x000088
    430#define VGA_CONFIGURATION_USER_DEFINE_MASK            (0x3 << 4)
    431#define VGA_CONFIGURATION_PLL                         BIT(2)
    432#define VGA_CONFIGURATION_MODE                        BIT(1)
    433
    434#endif
    435
    436#define GPIO_DATA                                       0x010000
    437#define GPIO_DATA_31                                    BIT(31)
    438#define GPIO_DATA_30                                    BIT(30)
    439#define GPIO_DATA_29                                    BIT(29)
    440#define GPIO_DATA_28                                    BIT(28)
    441#define GPIO_DATA_27                                    BIT(27)
    442#define GPIO_DATA_26                                    BIT(26)
    443#define GPIO_DATA_25                                    BIT(25)
    444#define GPIO_DATA_24                                    BIT(24)
    445#define GPIO_DATA_23                                    BIT(23)
    446#define GPIO_DATA_22                                    BIT(22)
    447#define GPIO_DATA_21                                    BIT(21)
    448#define GPIO_DATA_20                                    BIT(20)
    449#define GPIO_DATA_19                                    BIT(19)
    450#define GPIO_DATA_18                                    BIT(18)
    451#define GPIO_DATA_17                                    BIT(17)
    452#define GPIO_DATA_16                                    BIT(16)
    453#define GPIO_DATA_15                                    BIT(15)
    454#define GPIO_DATA_14                                    BIT(14)
    455#define GPIO_DATA_13                                    BIT(13)
    456#define GPIO_DATA_12                                    BIT(12)
    457#define GPIO_DATA_11                                    BIT(11)
    458#define GPIO_DATA_10                                    BIT(10)
    459#define GPIO_DATA_9                                     BIT(9)
    460#define GPIO_DATA_8                                     BIT(8)
    461#define GPIO_DATA_7                                     BIT(7)
    462#define GPIO_DATA_6                                     BIT(6)
    463#define GPIO_DATA_5                                     BIT(5)
    464#define GPIO_DATA_4                                     BIT(4)
    465#define GPIO_DATA_3                                     BIT(3)
    466#define GPIO_DATA_2                                     BIT(2)
    467#define GPIO_DATA_1                                     BIT(1)
    468#define GPIO_DATA_0                                     BIT(0)
    469
    470#define GPIO_DATA_DIRECTION                             0x010004
    471#define GPIO_DATA_DIRECTION_31                          BIT(31)
    472#define GPIO_DATA_DIRECTION_30                          BIT(30)
    473#define GPIO_DATA_DIRECTION_29                          BIT(29)
    474#define GPIO_DATA_DIRECTION_28                          BIT(28)
    475#define GPIO_DATA_DIRECTION_27                          BIT(27)
    476#define GPIO_DATA_DIRECTION_26                          BIT(26)
    477#define GPIO_DATA_DIRECTION_25                          BIT(25)
    478#define GPIO_DATA_DIRECTION_24                          BIT(24)
    479#define GPIO_DATA_DIRECTION_23                          BIT(23)
    480#define GPIO_DATA_DIRECTION_22                          BIT(22)
    481#define GPIO_DATA_DIRECTION_21                          BIT(21)
    482#define GPIO_DATA_DIRECTION_20                          BIT(20)
    483#define GPIO_DATA_DIRECTION_19                          BIT(19)
    484#define GPIO_DATA_DIRECTION_18                          BIT(18)
    485#define GPIO_DATA_DIRECTION_17                          BIT(17)
    486#define GPIO_DATA_DIRECTION_16                          BIT(16)
    487#define GPIO_DATA_DIRECTION_15                          BIT(15)
    488#define GPIO_DATA_DIRECTION_14                          BIT(14)
    489#define GPIO_DATA_DIRECTION_13                          BIT(13)
    490#define GPIO_DATA_DIRECTION_12                          BIT(12)
    491#define GPIO_DATA_DIRECTION_11                          BIT(11)
    492#define GPIO_DATA_DIRECTION_10                          BIT(10)
    493#define GPIO_DATA_DIRECTION_9                           BIT(9)
    494#define GPIO_DATA_DIRECTION_8                           BIT(8)
    495#define GPIO_DATA_DIRECTION_7                           BIT(7)
    496#define GPIO_DATA_DIRECTION_6                           BIT(6)
    497#define GPIO_DATA_DIRECTION_5                           BIT(5)
    498#define GPIO_DATA_DIRECTION_4                           BIT(4)
    499#define GPIO_DATA_DIRECTION_3                           BIT(3)
    500#define GPIO_DATA_DIRECTION_2                           BIT(2)
    501#define GPIO_DATA_DIRECTION_1                           BIT(1)
    502#define GPIO_DATA_DIRECTION_0                           BIT(0)
    503
    504#define GPIO_INTERRUPT_SETUP                            0x010008
    505#define GPIO_INTERRUPT_SETUP_TRIGGER_31                 BIT(22)
    506#define GPIO_INTERRUPT_SETUP_TRIGGER_30                 BIT(21)
    507#define GPIO_INTERRUPT_SETUP_TRIGGER_29                 BIT(20)
    508#define GPIO_INTERRUPT_SETUP_TRIGGER_28                 BIT(19)
    509#define GPIO_INTERRUPT_SETUP_TRIGGER_27                 BIT(18)
    510#define GPIO_INTERRUPT_SETUP_TRIGGER_26                 BIT(17)
    511#define GPIO_INTERRUPT_SETUP_TRIGGER_25                 BIT(16)
    512#define GPIO_INTERRUPT_SETUP_ACTIVE_31                  BIT(14)
    513#define GPIO_INTERRUPT_SETUP_ACTIVE_30                  BIT(13)
    514#define GPIO_INTERRUPT_SETUP_ACTIVE_29                  BIT(12)
    515#define GPIO_INTERRUPT_SETUP_ACTIVE_28                  BIT(11)
    516#define GPIO_INTERRUPT_SETUP_ACTIVE_27                  BIT(10)
    517#define GPIO_INTERRUPT_SETUP_ACTIVE_26                  BIT(9)
    518#define GPIO_INTERRUPT_SETUP_ACTIVE_25                  BIT(8)
    519#define GPIO_INTERRUPT_SETUP_ENABLE_31                  BIT(6)
    520#define GPIO_INTERRUPT_SETUP_ENABLE_30                  BIT(5)
    521#define GPIO_INTERRUPT_SETUP_ENABLE_29                  BIT(4)
    522#define GPIO_INTERRUPT_SETUP_ENABLE_28                  BIT(3)
    523#define GPIO_INTERRUPT_SETUP_ENABLE_27                  BIT(2)
    524#define GPIO_INTERRUPT_SETUP_ENABLE_26                  BIT(1)
    525#define GPIO_INTERRUPT_SETUP_ENABLE_25                  BIT(0)
    526
    527#define GPIO_INTERRUPT_STATUS                           0x01000C
    528#define GPIO_INTERRUPT_STATUS_31                        BIT(22)
    529#define GPIO_INTERRUPT_STATUS_30                        BIT(21)
    530#define GPIO_INTERRUPT_STATUS_29                        BIT(20)
    531#define GPIO_INTERRUPT_STATUS_28                        BIT(19)
    532#define GPIO_INTERRUPT_STATUS_27                        BIT(18)
    533#define GPIO_INTERRUPT_STATUS_26                        BIT(17)
    534#define GPIO_INTERRUPT_STATUS_25                        BIT(16)
    535
    536#define PANEL_DISPLAY_CTRL                            0x080000
    537#define PANEL_DISPLAY_CTRL_RESERVED_MASK              0xc0f08000
    538#define PANEL_DISPLAY_CTRL_SELECT_SHIFT               28
    539#define PANEL_DISPLAY_CTRL_SELECT_MASK                (0x3 << 28)
    540#define PANEL_DISPLAY_CTRL_SELECT_PANEL               (0x0 << 28)
    541#define PANEL_DISPLAY_CTRL_SELECT_VGA                 (0x1 << 28)
    542#define PANEL_DISPLAY_CTRL_SELECT_CRT                 (0x2 << 28)
    543#define PANEL_DISPLAY_CTRL_FPEN                       BIT(27)
    544#define PANEL_DISPLAY_CTRL_VBIASEN                    BIT(26)
    545#define PANEL_DISPLAY_CTRL_DATA                       BIT(25)
    546#define PANEL_DISPLAY_CTRL_FPVDDEN                    BIT(24)
    547#define PANEL_DISPLAY_CTRL_DUAL_DISPLAY               BIT(19)
    548#define PANEL_DISPLAY_CTRL_DOUBLE_PIXEL               BIT(18)
    549#define PANEL_DISPLAY_CTRL_FIFO                       (0x3 << 16)
    550#define PANEL_DISPLAY_CTRL_FIFO_1                     (0x0 << 16)
    551#define PANEL_DISPLAY_CTRL_FIFO_3                     (0x1 << 16)
    552#define PANEL_DISPLAY_CTRL_FIFO_7                     (0x2 << 16)
    553#define PANEL_DISPLAY_CTRL_FIFO_11                    (0x3 << 16)
    554#define DISPLAY_CTRL_CLOCK_PHASE                      BIT(14)
    555#define DISPLAY_CTRL_VSYNC_PHASE                      BIT(13)
    556#define DISPLAY_CTRL_HSYNC_PHASE                      BIT(12)
    557#define PANEL_DISPLAY_CTRL_VSYNC                      BIT(11)
    558#define PANEL_DISPLAY_CTRL_CAPTURE_TIMING             BIT(10)
    559#define PANEL_DISPLAY_CTRL_COLOR_KEY                  BIT(9)
    560#define DISPLAY_CTRL_TIMING                           BIT(8)
    561#define PANEL_DISPLAY_CTRL_VERTICAL_PAN_DIR           BIT(7)
    562#define PANEL_DISPLAY_CTRL_VERTICAL_PAN               BIT(6)
    563#define PANEL_DISPLAY_CTRL_HORIZONTAL_PAN_DIR         BIT(5)
    564#define PANEL_DISPLAY_CTRL_HORIZONTAL_PAN             BIT(4)
    565#define DISPLAY_CTRL_GAMMA                            BIT(3)
    566#define DISPLAY_CTRL_PLANE                            BIT(2)
    567#define PANEL_DISPLAY_CTRL_FORMAT                     (0x3 << 0)
    568#define PANEL_DISPLAY_CTRL_FORMAT_8                   (0x0 << 0)
    569#define PANEL_DISPLAY_CTRL_FORMAT_16                  (0x1 << 0)
    570#define PANEL_DISPLAY_CTRL_FORMAT_32                  (0x2 << 0)
    571
    572#define PANEL_PAN_CTRL                                0x080004
    573#define PANEL_PAN_CTRL_VERTICAL_PAN_MASK              (0xff << 24)
    574#define PANEL_PAN_CTRL_VERTICAL_VSYNC_MASK            (0x3f << 16)
    575#define PANEL_PAN_CTRL_HORIZONTAL_PAN_MASK            (0xff << 8)
    576#define PANEL_PAN_CTRL_HORIZONTAL_VSYNC_MASK          0x3f
    577
    578#define PANEL_COLOR_KEY                               0x080008
    579#define PANEL_COLOR_KEY_MASK_MASK                     (0xffff << 16)
    580#define PANEL_COLOR_KEY_VALUE_MASK                    0xffff
    581
    582#define PANEL_FB_ADDRESS                              0x08000C
    583#define PANEL_FB_ADDRESS_STATUS                       BIT(31)
    584#define PANEL_FB_ADDRESS_EXT                          BIT(27)
    585#define PANEL_FB_ADDRESS_ADDRESS_MASK                 0x1ffffff
    586
    587#define PANEL_FB_WIDTH                                0x080010
    588#define PANEL_FB_WIDTH_WIDTH_SHIFT                    16
    589#define PANEL_FB_WIDTH_WIDTH_MASK                     (0x3fff << 16)
    590#define PANEL_FB_WIDTH_OFFSET_MASK                    0x3fff
    591
    592#define PANEL_WINDOW_WIDTH                            0x080014
    593#define PANEL_WINDOW_WIDTH_WIDTH_SHIFT                16
    594#define PANEL_WINDOW_WIDTH_WIDTH_MASK                 (0xfff << 16)
    595#define PANEL_WINDOW_WIDTH_X_MASK                     0xfff
    596
    597#define PANEL_WINDOW_HEIGHT                           0x080018
    598#define PANEL_WINDOW_HEIGHT_HEIGHT_SHIFT              16
    599#define PANEL_WINDOW_HEIGHT_HEIGHT_MASK               (0xfff << 16)
    600#define PANEL_WINDOW_HEIGHT_Y_MASK                    0xfff
    601
    602#define PANEL_PLANE_TL                                0x08001C
    603#define PANEL_PLANE_TL_TOP_SHIFT                      16
    604#define PANEL_PLANE_TL_TOP_MASK                       (0x7ff << 16)
    605#define PANEL_PLANE_TL_LEFT_MASK                      0x7ff
    606
    607#define PANEL_PLANE_BR                                0x080020
    608#define PANEL_PLANE_BR_BOTTOM_SHIFT                   16
    609#define PANEL_PLANE_BR_BOTTOM_MASK                    (0x7ff << 16)
    610#define PANEL_PLANE_BR_RIGHT_MASK                     0x7ff
    611
    612#define PANEL_HORIZONTAL_TOTAL                        0x080024
    613#define PANEL_HORIZONTAL_TOTAL_TOTAL_SHIFT            16
    614#define PANEL_HORIZONTAL_TOTAL_TOTAL_MASK             (0xfff << 16)
    615#define PANEL_HORIZONTAL_TOTAL_DISPLAY_END_MASK       0xfff
    616
    617#define PANEL_HORIZONTAL_SYNC                         0x080028
    618#define PANEL_HORIZONTAL_SYNC_WIDTH_SHIFT             16
    619#define PANEL_HORIZONTAL_SYNC_WIDTH_MASK              (0xff << 16)
    620#define PANEL_HORIZONTAL_SYNC_START_MASK              0xfff
    621
    622#define PANEL_VERTICAL_TOTAL                          0x08002C
    623#define PANEL_VERTICAL_TOTAL_TOTAL_SHIFT              16
    624#define PANEL_VERTICAL_TOTAL_TOTAL_MASK               (0x7ff << 16)
    625#define PANEL_VERTICAL_TOTAL_DISPLAY_END_MASK         0x7ff
    626
    627#define PANEL_VERTICAL_SYNC                           0x080030
    628#define PANEL_VERTICAL_SYNC_HEIGHT_SHIFT              16
    629#define PANEL_VERTICAL_SYNC_HEIGHT_MASK               (0x3f << 16)
    630#define PANEL_VERTICAL_SYNC_START_MASK                0x7ff
    631
    632#define PANEL_CURRENT_LINE                            0x080034
    633#define PANEL_CURRENT_LINE_LINE_MASK                  0x7ff
    634
    635/* Video Control */
    636
    637#define VIDEO_DISPLAY_CTRL                              0x080040
    638#define VIDEO_DISPLAY_CTRL_LINE_BUFFER                  BIT(18)
    639#define VIDEO_DISPLAY_CTRL_FIFO_MASK                    (0x3 << 16)
    640#define VIDEO_DISPLAY_CTRL_FIFO_1                       (0x0 << 16)
    641#define VIDEO_DISPLAY_CTRL_FIFO_3                       (0x1 << 16)
    642#define VIDEO_DISPLAY_CTRL_FIFO_7                       (0x2 << 16)
    643#define VIDEO_DISPLAY_CTRL_FIFO_11                      (0x3 << 16)
    644#define VIDEO_DISPLAY_CTRL_BUFFER                       BIT(15)
    645#define VIDEO_DISPLAY_CTRL_CAPTURE                      BIT(14)
    646#define VIDEO_DISPLAY_CTRL_DOUBLE_BUFFER                BIT(13)
    647#define VIDEO_DISPLAY_CTRL_BYTE_SWAP                    BIT(12)
    648#define VIDEO_DISPLAY_CTRL_VERTICAL_SCALE               BIT(11)
    649#define VIDEO_DISPLAY_CTRL_HORIZONTAL_SCALE             BIT(10)
    650#define VIDEO_DISPLAY_CTRL_VERTICAL_MODE                BIT(9)
    651#define VIDEO_DISPLAY_CTRL_HORIZONTAL_MODE              BIT(8)
    652#define VIDEO_DISPLAY_CTRL_PIXEL_MASK                   (0xf << 4)
    653#define VIDEO_DISPLAY_CTRL_GAMMA                        BIT(3)
    654#define VIDEO_DISPLAY_CTRL_FORMAT_MASK                  0x3
    655#define VIDEO_DISPLAY_CTRL_FORMAT_8                     0x0
    656#define VIDEO_DISPLAY_CTRL_FORMAT_16                    0x1
    657#define VIDEO_DISPLAY_CTRL_FORMAT_32                    0x2
    658#define VIDEO_DISPLAY_CTRL_FORMAT_YUV                   0x3
    659
    660#define VIDEO_FB_0_ADDRESS                            0x080044
    661#define VIDEO_FB_0_ADDRESS_STATUS                     BIT(31)
    662#define VIDEO_FB_0_ADDRESS_EXT                        BIT(27)
    663#define VIDEO_FB_0_ADDRESS_ADDRESS_MASK               0x3ffffff
    664
    665#define VIDEO_FB_WIDTH                                0x080048
    666#define VIDEO_FB_WIDTH_WIDTH_MASK                     (0x3fff << 16)
    667#define VIDEO_FB_WIDTH_OFFSET_MASK                    0x3fff
    668
    669#define VIDEO_FB_0_LAST_ADDRESS                       0x08004C
    670#define VIDEO_FB_0_LAST_ADDRESS_EXT                   BIT(27)
    671#define VIDEO_FB_0_LAST_ADDRESS_ADDRESS_MASK          0x3ffffff
    672
    673#define VIDEO_PLANE_TL                                0x080050
    674#define VIDEO_PLANE_TL_TOP_MASK                       (0x7ff << 16)
    675#define VIDEO_PLANE_TL_LEFT_MASK                      0x7ff
    676
    677#define VIDEO_PLANE_BR                                0x080054
    678#define VIDEO_PLANE_BR_BOTTOM_MASK                    (0x7ff << 16)
    679#define VIDEO_PLANE_BR_RIGHT_MASK                     0x7ff
    680
    681#define VIDEO_SCALE                                   0x080058
    682#define VIDEO_SCALE_VERTICAL_MODE                     BIT(31)
    683#define VIDEO_SCALE_VERTICAL_SCALE_MASK               (0xfff << 16)
    684#define VIDEO_SCALE_HORIZONTAL_MODE                   BIT(15)
    685#define VIDEO_SCALE_HORIZONTAL_SCALE_MASK             0xfff
    686
    687#define VIDEO_INITIAL_SCALE                           0x08005C
    688#define VIDEO_INITIAL_SCALE_FB_1_MASK                 (0xfff << 16)
    689#define VIDEO_INITIAL_SCALE_FB_0_MASK                 0xfff
    690
    691#define VIDEO_YUV_CONSTANTS                           0x080060
    692#define VIDEO_YUV_CONSTANTS_Y_MASK                    (0xff << 24)
    693#define VIDEO_YUV_CONSTANTS_R_MASK                    (0xff << 16)
    694#define VIDEO_YUV_CONSTANTS_G_MASK                    (0xff << 8)
    695#define VIDEO_YUV_CONSTANTS_B_MASK                    0xff
    696
    697#define VIDEO_FB_1_ADDRESS                            0x080064
    698#define VIDEO_FB_1_ADDRESS_STATUS                     BIT(31)
    699#define VIDEO_FB_1_ADDRESS_EXT                        BIT(27)
    700#define VIDEO_FB_1_ADDRESS_ADDRESS_MASK               0x3ffffff
    701
    702#define VIDEO_FB_1_LAST_ADDRESS                       0x080068
    703#define VIDEO_FB_1_LAST_ADDRESS_EXT                   BIT(27)
    704#define VIDEO_FB_1_LAST_ADDRESS_ADDRESS_MASK          0x3ffffff
    705
    706/* Video Alpha Control */
    707
    708#define VIDEO_ALPHA_DISPLAY_CTRL                        0x080080
    709#define VIDEO_ALPHA_DISPLAY_CTRL_SELECT                 BIT(28)
    710#define VIDEO_ALPHA_DISPLAY_CTRL_ALPHA_MASK             (0xf << 24)
    711#define VIDEO_ALPHA_DISPLAY_CTRL_FIFO_MASK              (0x3 << 16)
    712#define VIDEO_ALPHA_DISPLAY_CTRL_FIFO_1                 (0x0 << 16)
    713#define VIDEO_ALPHA_DISPLAY_CTRL_FIFO_3                 (0x1 << 16)
    714#define VIDEO_ALPHA_DISPLAY_CTRL_FIFO_7                 (0x2 << 16)
    715#define VIDEO_ALPHA_DISPLAY_CTRL_FIFO_11                (0x3 << 16)
    716#define VIDEO_ALPHA_DISPLAY_CTRL_VERT_SCALE             BIT(11)
    717#define VIDEO_ALPHA_DISPLAY_CTRL_HORZ_SCALE             BIT(10)
    718#define VIDEO_ALPHA_DISPLAY_CTRL_VERT_MODE              BIT(9)
    719#define VIDEO_ALPHA_DISPLAY_CTRL_HORZ_MODE              BIT(8)
    720#define VIDEO_ALPHA_DISPLAY_CTRL_PIXEL_MASK             (0xf << 4)
    721#define VIDEO_ALPHA_DISPLAY_CTRL_CHROMA_KEY             BIT(3)
    722#define VIDEO_ALPHA_DISPLAY_CTRL_FORMAT_MASK            0x3
    723#define VIDEO_ALPHA_DISPLAY_CTRL_FORMAT_8               0x0
    724#define VIDEO_ALPHA_DISPLAY_CTRL_FORMAT_16              0x1
    725#define VIDEO_ALPHA_DISPLAY_CTRL_FORMAT_ALPHA_4_4       0x2
    726#define VIDEO_ALPHA_DISPLAY_CTRL_FORMAT_ALPHA_4_4_4_4   0x3
    727
    728#define VIDEO_ALPHA_FB_ADDRESS                        0x080084
    729#define VIDEO_ALPHA_FB_ADDRESS_STATUS                 BIT(31)
    730#define VIDEO_ALPHA_FB_ADDRESS_EXT                    BIT(27)
    731#define VIDEO_ALPHA_FB_ADDRESS_ADDRESS_MASK           0x3ffffff
    732
    733#define VIDEO_ALPHA_FB_WIDTH                          0x080088
    734#define VIDEO_ALPHA_FB_WIDTH_WIDTH_MASK               (0x3fff << 16)
    735#define VIDEO_ALPHA_FB_WIDTH_OFFSET_MASK              0x3fff
    736
    737#define VIDEO_ALPHA_FB_LAST_ADDRESS                   0x08008C
    738#define VIDEO_ALPHA_FB_LAST_ADDRESS_EXT               BIT(27)
    739#define VIDEO_ALPHA_FB_LAST_ADDRESS_ADDRESS_MASK      0x3ffffff
    740
    741#define VIDEO_ALPHA_PLANE_TL                          0x080090
    742#define VIDEO_ALPHA_PLANE_TL_TOP_MASK                 (0x7ff << 16)
    743#define VIDEO_ALPHA_PLANE_TL_LEFT_MASK                0x7ff
    744
    745#define VIDEO_ALPHA_PLANE_BR                          0x080094
    746#define VIDEO_ALPHA_PLANE_BR_BOTTOM_MASK              (0x7ff << 16)
    747#define VIDEO_ALPHA_PLANE_BR_RIGHT_MASK               0x7ff
    748
    749#define VIDEO_ALPHA_SCALE                             0x080098
    750#define VIDEO_ALPHA_SCALE_VERTICAL_MODE               BIT(31)
    751#define VIDEO_ALPHA_SCALE_VERTICAL_SCALE_MASK         (0xfff << 16)
    752#define VIDEO_ALPHA_SCALE_HORIZONTAL_MODE             BIT(15)
    753#define VIDEO_ALPHA_SCALE_HORIZONTAL_SCALE_MASK       0xfff
    754
    755#define VIDEO_ALPHA_INITIAL_SCALE                     0x08009C
    756#define VIDEO_ALPHA_INITIAL_SCALE_VERTICAL_MASK       (0xfff << 16)
    757#define VIDEO_ALPHA_INITIAL_SCALE_HORIZONTAL_MASK     0xfff
    758
    759#define VIDEO_ALPHA_CHROMA_KEY                        0x0800A0
    760#define VIDEO_ALPHA_CHROMA_KEY_MASK_MASK              (0xffff << 16)
    761#define VIDEO_ALPHA_CHROMA_KEY_VALUE_MASK             0xffff
    762
    763#define VIDEO_ALPHA_COLOR_LOOKUP_01                   0x0800A4
    764#define VIDEO_ALPHA_COLOR_LOOKUP_01_1_MASK            (0xffff << 16)
    765#define VIDEO_ALPHA_COLOR_LOOKUP_01_1_RED_MASK        (0x1f << 27)
    766#define VIDEO_ALPHA_COLOR_LOOKUP_01_1_GREEN_MASK      (0x3f << 21)
    767#define VIDEO_ALPHA_COLOR_LOOKUP_01_1_BLUE_MASK       (0x1f << 16)
    768#define VIDEO_ALPHA_COLOR_LOOKUP_01_0_MASK            0xffff
    769#define VIDEO_ALPHA_COLOR_LOOKUP_01_0_RED_MASK        (0x1f << 11)
    770#define VIDEO_ALPHA_COLOR_LOOKUP_01_0_GREEN_MASK      (0x3f << 5)
    771#define VIDEO_ALPHA_COLOR_LOOKUP_01_0_BLUE_MASK       0x1f
    772
    773#define VIDEO_ALPHA_COLOR_LOOKUP_23                   0x0800A8
    774#define VIDEO_ALPHA_COLOR_LOOKUP_23_3_MASK            (0xffff << 16)
    775#define VIDEO_ALPHA_COLOR_LOOKUP_23_3_RED_MASK        (0x1f << 27)
    776#define VIDEO_ALPHA_COLOR_LOOKUP_23_3_GREEN_MASK      (0x3f << 21)
    777#define VIDEO_ALPHA_COLOR_LOOKUP_23_3_BLUE_MASK       (0x1f << 16)
    778#define VIDEO_ALPHA_COLOR_LOOKUP_23_2_MASK            0xffff
    779#define VIDEO_ALPHA_COLOR_LOOKUP_23_2_RED_MASK        (0x1f << 11)
    780#define VIDEO_ALPHA_COLOR_LOOKUP_23_2_GREEN_MASK      (0x3f << 5)
    781#define VIDEO_ALPHA_COLOR_LOOKUP_23_2_BLUE_MASK       0x1f
    782
    783#define VIDEO_ALPHA_COLOR_LOOKUP_45                   0x0800AC
    784#define VIDEO_ALPHA_COLOR_LOOKUP_45_5_MASK            (0xffff << 16)
    785#define VIDEO_ALPHA_COLOR_LOOKUP_45_5_RED_MASK        (0x1f << 27)
    786#define VIDEO_ALPHA_COLOR_LOOKUP_45_5_GREEN_MASK      (0x3f << 21)
    787#define VIDEO_ALPHA_COLOR_LOOKUP_45_5_BLUE_MASK       (0x1f << 16)
    788#define VIDEO_ALPHA_COLOR_LOOKUP_45_4_MASK            0xffff
    789#define VIDEO_ALPHA_COLOR_LOOKUP_45_4_RED_MASK        (0x1f << 11)
    790#define VIDEO_ALPHA_COLOR_LOOKUP_45_4_GREEN_MASK      (0x3f << 5)
    791#define VIDEO_ALPHA_COLOR_LOOKUP_45_4_BLUE_MASK       0x1f
    792
    793#define VIDEO_ALPHA_COLOR_LOOKUP_67                   0x0800B0
    794#define VIDEO_ALPHA_COLOR_LOOKUP_67_7_MASK            (0xffff << 16)
    795#define VIDEO_ALPHA_COLOR_LOOKUP_67_7_RED_MASK        (0x1f << 27)
    796#define VIDEO_ALPHA_COLOR_LOOKUP_67_7_GREEN_MASK      (0x3f << 21)
    797#define VIDEO_ALPHA_COLOR_LOOKUP_67_7_BLUE_MASK       (0x1f << 16)
    798#define VIDEO_ALPHA_COLOR_LOOKUP_67_6_MASK            0xffff
    799#define VIDEO_ALPHA_COLOR_LOOKUP_67_6_RED_MASK        (0x1f << 11)
    800#define VIDEO_ALPHA_COLOR_LOOKUP_67_6_GREEN_MASK      (0x3f << 5)
    801#define VIDEO_ALPHA_COLOR_LOOKUP_67_6_BLUE_MASK       0x1f
    802
    803#define VIDEO_ALPHA_COLOR_LOOKUP_89                   0x0800B4
    804#define VIDEO_ALPHA_COLOR_LOOKUP_89_9_MASK            (0xffff << 16)
    805#define VIDEO_ALPHA_COLOR_LOOKUP_89_9_RED_MASK        (0x1f << 27)
    806#define VIDEO_ALPHA_COLOR_LOOKUP_89_9_GREEN_MASK      (0x3f << 21)
    807#define VIDEO_ALPHA_COLOR_LOOKUP_89_9_BLUE_MASK       (0x1f << 16)
    808#define VIDEO_ALPHA_COLOR_LOOKUP_89_8_MASK            0xffff
    809#define VIDEO_ALPHA_COLOR_LOOKUP_89_8_RED_MASK        (0x1f << 11)
    810#define VIDEO_ALPHA_COLOR_LOOKUP_89_8_GREEN_MASK      (0x3f << 5)
    811#define VIDEO_ALPHA_COLOR_LOOKUP_89_8_BLUE_MASK       0x1f
    812
    813#define VIDEO_ALPHA_COLOR_LOOKUP_AB                   0x0800B8
    814#define VIDEO_ALPHA_COLOR_LOOKUP_AB_B_MASK            (0xffff << 16)
    815#define VIDEO_ALPHA_COLOR_LOOKUP_AB_B_RED_MASK        (0x1f << 27)
    816#define VIDEO_ALPHA_COLOR_LOOKUP_AB_B_GREEN_MASK      (0x3f << 21)
    817#define VIDEO_ALPHA_COLOR_LOOKUP_AB_B_BLUE_MASK       (0x1f << 16)
    818#define VIDEO_ALPHA_COLOR_LOOKUP_AB_A_MASK            0xffff
    819#define VIDEO_ALPHA_COLOR_LOOKUP_AB_A_RED_MASK        (0x1f << 11)
    820#define VIDEO_ALPHA_COLOR_LOOKUP_AB_A_GREEN_MASK      (0x3f << 5)
    821#define VIDEO_ALPHA_COLOR_LOOKUP_AB_A_BLUE_MASK       0x1f
    822
    823#define VIDEO_ALPHA_COLOR_LOOKUP_CD                   0x0800BC
    824#define VIDEO_ALPHA_COLOR_LOOKUP_CD_D_MASK            (0xffff << 16)
    825#define VIDEO_ALPHA_COLOR_LOOKUP_CD_D_RED_MASK        (0x1f << 27)
    826#define VIDEO_ALPHA_COLOR_LOOKUP_CD_D_GREEN_MASK      (0x3f << 21)
    827#define VIDEO_ALPHA_COLOR_LOOKUP_CD_D_BLUE_MASK       (0x1f << 16)
    828#define VIDEO_ALPHA_COLOR_LOOKUP_CD_C_MASK            0xffff
    829#define VIDEO_ALPHA_COLOR_LOOKUP_CD_C_RED_MASK        (0x1f << 11)
    830#define VIDEO_ALPHA_COLOR_LOOKUP_CD_C_GREEN_MASK      (0x3f << 5)
    831#define VIDEO_ALPHA_COLOR_LOOKUP_CD_C_BLUE_MASK       0x1f
    832
    833#define VIDEO_ALPHA_COLOR_LOOKUP_EF                   0x0800C0
    834#define VIDEO_ALPHA_COLOR_LOOKUP_EF_F_MASK            (0xffff << 16)
    835#define VIDEO_ALPHA_COLOR_LOOKUP_EF_F_RED_MASK        (0x1f << 27)
    836#define VIDEO_ALPHA_COLOR_LOOKUP_EF_F_GREEN_MASK      (0x3f << 21)
    837#define VIDEO_ALPHA_COLOR_LOOKUP_EF_F_BLUE_MASK       (0x1f << 16)
    838#define VIDEO_ALPHA_COLOR_LOOKUP_EF_E_MASK            0xffff
    839#define VIDEO_ALPHA_COLOR_LOOKUP_EF_E_RED_MASK        (0x1f << 11)
    840#define VIDEO_ALPHA_COLOR_LOOKUP_EF_E_GREEN_MASK      (0x3f << 5)
    841#define VIDEO_ALPHA_COLOR_LOOKUP_EF_E_BLUE_MASK       0x1f
    842
    843/* Panel Cursor Control */
    844
    845#define PANEL_HWC_ADDRESS                             0x0800F0
    846#define PANEL_HWC_ADDRESS_ENABLE                      BIT(31)
    847#define PANEL_HWC_ADDRESS_EXT                         BIT(27)
    848#define PANEL_HWC_ADDRESS_ADDRESS_MASK                0x3ffffff
    849
    850#define PANEL_HWC_LOCATION                            0x0800F4
    851#define PANEL_HWC_LOCATION_TOP                        BIT(27)
    852#define PANEL_HWC_LOCATION_Y_MASK                     (0x7ff << 16)
    853#define PANEL_HWC_LOCATION_LEFT                       BIT(11)
    854#define PANEL_HWC_LOCATION_X_MASK                     0x7ff
    855
    856#define PANEL_HWC_COLOR_12                            0x0800F8
    857#define PANEL_HWC_COLOR_12_2_RGB565_MASK              (0xffff << 16)
    858#define PANEL_HWC_COLOR_12_1_RGB565_MASK              0xffff
    859
    860#define PANEL_HWC_COLOR_3                             0x0800FC
    861#define PANEL_HWC_COLOR_3_RGB565_MASK                 0xffff
    862
    863/* Old Definitions +++ */
    864#define PANEL_HWC_COLOR_01                            0x0800F8
    865#define PANEL_HWC_COLOR_01_1_RED_MASK                 (0x1f << 27)
    866#define PANEL_HWC_COLOR_01_1_GREEN_MASK               (0x3f << 21)
    867#define PANEL_HWC_COLOR_01_1_BLUE_MASK                (0x1f << 16)
    868#define PANEL_HWC_COLOR_01_0_RED_MASK                 (0x1f << 11)
    869#define PANEL_HWC_COLOR_01_0_GREEN_MASK               (0x3f << 5)
    870#define PANEL_HWC_COLOR_01_0_BLUE_MASK                0x1f
    871
    872#define PANEL_HWC_COLOR_2                             0x0800FC
    873#define PANEL_HWC_COLOR_2_RED_MASK                    (0x1f << 11)
    874#define PANEL_HWC_COLOR_2_GREEN_MASK                  (0x3f << 5)
    875#define PANEL_HWC_COLOR_2_BLUE_MASK                   0x1f
    876/* Old Definitions --- */
    877
    878/* Alpha Control */
    879
    880#define ALPHA_DISPLAY_CTRL                            0x080100
    881#define ALPHA_DISPLAY_CTRL_SELECT                     BIT(28)
    882#define ALPHA_DISPLAY_CTRL_ALPHA_MASK                 (0xf << 24)
    883#define ALPHA_DISPLAY_CTRL_FIFO_MASK                  (0x3 << 16)
    884#define ALPHA_DISPLAY_CTRL_FIFO_1                     (0x0 << 16)
    885#define ALPHA_DISPLAY_CTRL_FIFO_3                     (0x1 << 16)
    886#define ALPHA_DISPLAY_CTRL_FIFO_7                     (0x2 << 16)
    887#define ALPHA_DISPLAY_CTRL_FIFO_11                    (0x3 << 16)
    888#define ALPHA_DISPLAY_CTRL_PIXEL_MASK                 (0xf << 4)
    889#define ALPHA_DISPLAY_CTRL_CHROMA_KEY                 BIT(3)
    890#define ALPHA_DISPLAY_CTRL_FORMAT_MASK                0x3
    891#define ALPHA_DISPLAY_CTRL_FORMAT_16                  0x1
    892#define ALPHA_DISPLAY_CTRL_FORMAT_ALPHA_4_4           0x2
    893#define ALPHA_DISPLAY_CTRL_FORMAT_ALPHA_4_4_4_4       0x3
    894
    895#define ALPHA_FB_ADDRESS                              0x080104
    896#define ALPHA_FB_ADDRESS_STATUS                       BIT(31)
    897#define ALPHA_FB_ADDRESS_EXT                          BIT(27)
    898#define ALPHA_FB_ADDRESS_ADDRESS_MASK                 0x3ffffff
    899
    900#define ALPHA_FB_WIDTH                                0x080108
    901#define ALPHA_FB_WIDTH_WIDTH_MASK                     (0x3fff << 16)
    902#define ALPHA_FB_WIDTH_OFFSET_MASK                    0x3fff
    903
    904#define ALPHA_PLANE_TL                                0x08010C
    905#define ALPHA_PLANE_TL_TOP_MASK                       (0x7ff << 16)
    906#define ALPHA_PLANE_TL_LEFT_MASK                      0x7ff
    907
    908#define ALPHA_PLANE_BR                                0x080110
    909#define ALPHA_PLANE_BR_BOTTOM_MASK                    (0x7ff << 16)
    910#define ALPHA_PLANE_BR_RIGHT_MASK                     0x7ff
    911
    912#define ALPHA_CHROMA_KEY                              0x080114
    913#define ALPHA_CHROMA_KEY_MASK_MASK                    (0xffff << 16)
    914#define ALPHA_CHROMA_KEY_VALUE_MASK                   0xffff
    915
    916#define ALPHA_COLOR_LOOKUP_01                         0x080118
    917#define ALPHA_COLOR_LOOKUP_01_1_MASK                  (0xffff << 16)
    918#define ALPHA_COLOR_LOOKUP_01_1_RED_MASK              (0x1f << 27)
    919#define ALPHA_COLOR_LOOKUP_01_1_GREEN_MASK            (0x3f << 21)
    920#define ALPHA_COLOR_LOOKUP_01_1_BLUE_MASK             (0x1f << 16)
    921#define ALPHA_COLOR_LOOKUP_01_0_MASK                  0xffff
    922#define ALPHA_COLOR_LOOKUP_01_0_RED_MASK              (0x1f << 11)
    923#define ALPHA_COLOR_LOOKUP_01_0_GREEN_MASK            (0x3f << 5)
    924#define ALPHA_COLOR_LOOKUP_01_0_BLUE_MASK             0x1f
    925
    926#define ALPHA_COLOR_LOOKUP_23                         0x08011C
    927#define ALPHA_COLOR_LOOKUP_23_3_MASK                  (0xffff << 16)
    928#define ALPHA_COLOR_LOOKUP_23_3_RED_MASK              (0x1f << 27)
    929#define ALPHA_COLOR_LOOKUP_23_3_GREEN_MASK            (0x3f << 21)
    930#define ALPHA_COLOR_LOOKUP_23_3_BLUE_MASK             (0x1f << 16)
    931#define ALPHA_COLOR_LOOKUP_23_2_MASK                  0xffff
    932#define ALPHA_COLOR_LOOKUP_23_2_RED_MASK              (0x1f << 11)
    933#define ALPHA_COLOR_LOOKUP_23_2_GREEN_MASK            (0x3f << 5)
    934#define ALPHA_COLOR_LOOKUP_23_2_BLUE_MASK             0x1f
    935
    936#define ALPHA_COLOR_LOOKUP_45                         0x080120
    937#define ALPHA_COLOR_LOOKUP_45_5_MASK                  (0xffff << 16)
    938#define ALPHA_COLOR_LOOKUP_45_5_RED_MASK              (0x1f << 27)
    939#define ALPHA_COLOR_LOOKUP_45_5_GREEN_MASK            (0x3f << 21)
    940#define ALPHA_COLOR_LOOKUP_45_5_BLUE_MASK             (0x1f << 16)
    941#define ALPHA_COLOR_LOOKUP_45_4_MASK                  0xffff
    942#define ALPHA_COLOR_LOOKUP_45_4_RED_MASK              (0x1f << 11)
    943#define ALPHA_COLOR_LOOKUP_45_4_GREEN_MASK            (0x3f << 5)
    944#define ALPHA_COLOR_LOOKUP_45_4_BLUE_MASK             0x1f
    945
    946#define ALPHA_COLOR_LOOKUP_67                         0x080124
    947#define ALPHA_COLOR_LOOKUP_67_7_MASK                  (0xffff << 16)
    948#define ALPHA_COLOR_LOOKUP_67_7_RED_MASK              (0x1f << 27)
    949#define ALPHA_COLOR_LOOKUP_67_7_GREEN_MASK            (0x3f << 21)
    950#define ALPHA_COLOR_LOOKUP_67_7_BLUE_MASK             (0x1f << 16)
    951#define ALPHA_COLOR_LOOKUP_67_6_MASK                  0xffff
    952#define ALPHA_COLOR_LOOKUP_67_6_RED_MASK              (0x1f << 11)
    953#define ALPHA_COLOR_LOOKUP_67_6_GREEN_MASK            (0x3f << 5)
    954#define ALPHA_COLOR_LOOKUP_67_6_BLUE_MASK             0x1f
    955
    956#define ALPHA_COLOR_LOOKUP_89                         0x080128
    957#define ALPHA_COLOR_LOOKUP_89_9_MASK                  (0xffff << 16)
    958#define ALPHA_COLOR_LOOKUP_89_9_RED_MASK              (0x1f << 27)
    959#define ALPHA_COLOR_LOOKUP_89_9_GREEN_MASK            (0x3f << 21)
    960#define ALPHA_COLOR_LOOKUP_89_9_BLUE_MASK             (0x1f << 16)
    961#define ALPHA_COLOR_LOOKUP_89_8_MASK                  0xffff
    962#define ALPHA_COLOR_LOOKUP_89_8_RED_MASK              (0x1f << 11)
    963#define ALPHA_COLOR_LOOKUP_89_8_GREEN_MASK            (0x3f << 5)
    964#define ALPHA_COLOR_LOOKUP_89_8_BLUE_MASK             0x1f
    965
    966#define ALPHA_COLOR_LOOKUP_AB                         0x08012C
    967#define ALPHA_COLOR_LOOKUP_AB_B_MASK                  (0xffff << 16)
    968#define ALPHA_COLOR_LOOKUP_AB_B_RED_MASK              (0x1f << 27)
    969#define ALPHA_COLOR_LOOKUP_AB_B_GREEN_MASK            (0x3f << 21)
    970#define ALPHA_COLOR_LOOKUP_AB_B_BLUE_MASK             (0x1f << 16)
    971#define ALPHA_COLOR_LOOKUP_AB_A_MASK                  0xffff
    972#define ALPHA_COLOR_LOOKUP_AB_A_RED_MASK              (0x1f << 11)
    973#define ALPHA_COLOR_LOOKUP_AB_A_GREEN_MASK            (0x3f << 5)
    974#define ALPHA_COLOR_LOOKUP_AB_A_BLUE_MASK             0x1f
    975
    976#define ALPHA_COLOR_LOOKUP_CD                         0x080130
    977#define ALPHA_COLOR_LOOKUP_CD_D_MASK                  (0xffff << 16)
    978#define ALPHA_COLOR_LOOKUP_CD_D_RED_MASK              (0x1f << 27)
    979#define ALPHA_COLOR_LOOKUP_CD_D_GREEN_MASK            (0x3f << 21)
    980#define ALPHA_COLOR_LOOKUP_CD_D_BLUE_MASK             (0x1f << 16)
    981#define ALPHA_COLOR_LOOKUP_CD_C_MASK                  0xffff
    982#define ALPHA_COLOR_LOOKUP_CD_C_RED_MASK              (0x1f << 11)
    983#define ALPHA_COLOR_LOOKUP_CD_C_GREEN_MASK            (0x3f << 5)
    984#define ALPHA_COLOR_LOOKUP_CD_C_BLUE_MASK             0x1f
    985
    986#define ALPHA_COLOR_LOOKUP_EF                         0x080134
    987#define ALPHA_COLOR_LOOKUP_EF_F_MASK                  (0xffff << 16)
    988#define ALPHA_COLOR_LOOKUP_EF_F_RED_MASK              (0x1f << 27)
    989#define ALPHA_COLOR_LOOKUP_EF_F_GREEN_MASK            (0x3f << 21)
    990#define ALPHA_COLOR_LOOKUP_EF_F_BLUE_MASK             (0x1f << 16)
    991#define ALPHA_COLOR_LOOKUP_EF_E_MASK                  0xffff
    992#define ALPHA_COLOR_LOOKUP_EF_E_RED_MASK              (0x1f << 11)
    993#define ALPHA_COLOR_LOOKUP_EF_E_GREEN_MASK            (0x3f << 5)
    994#define ALPHA_COLOR_LOOKUP_EF_E_BLUE_MASK             0x1f
    995
    996/* CRT Graphics Control */
    997
    998#define CRT_DISPLAY_CTRL                              0x080200
    999#define CRT_DISPLAY_CTRL_RESERVED_MASK                0xfb008200
   1000
   1001/* SM750LE definition */
   1002#define CRT_DISPLAY_CTRL_DPMS_SHIFT                   30
   1003#define CRT_DISPLAY_CTRL_DPMS_MASK                    (0x3 << 30)
   1004#define CRT_DISPLAY_CTRL_DPMS_0                       (0x0 << 30)
   1005#define CRT_DISPLAY_CTRL_DPMS_1                       (0x1 << 30)
   1006#define CRT_DISPLAY_CTRL_DPMS_2                       (0x2 << 30)
   1007#define CRT_DISPLAY_CTRL_DPMS_3                       (0x3 << 30)
   1008#define CRT_DISPLAY_CTRL_CLK_MASK                     (0x7 << 27)
   1009#define CRT_DISPLAY_CTRL_CLK_PLL25                    (0x0 << 27)
   1010#define CRT_DISPLAY_CTRL_CLK_PLL41                    (0x1 << 27)
   1011#define CRT_DISPLAY_CTRL_CLK_PLL62                    (0x2 << 27)
   1012#define CRT_DISPLAY_CTRL_CLK_PLL65                    (0x3 << 27)
   1013#define CRT_DISPLAY_CTRL_CLK_PLL74                    (0x4 << 27)
   1014#define CRT_DISPLAY_CTRL_CLK_PLL80                    (0x5 << 27)
   1015#define CRT_DISPLAY_CTRL_CLK_PLL108                   (0x6 << 27)
   1016#define CRT_DISPLAY_CTRL_CLK_RESERVED                 (0x7 << 27)
   1017#define CRT_DISPLAY_CTRL_SHIFT_VGA_DAC                BIT(26)
   1018
   1019/* SM750LE definition */
   1020#define CRT_DISPLAY_CTRL_CRTSELECT                    BIT(25)
   1021#define CRT_DISPLAY_CTRL_RGBBIT                       BIT(24)
   1022
   1023#ifndef VALIDATION_CHIP
   1024    #define CRT_DISPLAY_CTRL_CENTERING                BIT(24)
   1025#endif
   1026#define CRT_DISPLAY_CTRL_LOCK_TIMING                  BIT(23)
   1027#define CRT_DISPLAY_CTRL_EXPANSION                    BIT(22)
   1028#define CRT_DISPLAY_CTRL_VERTICAL_MODE                BIT(21)
   1029#define CRT_DISPLAY_CTRL_HORIZONTAL_MODE              BIT(20)
   1030#define CRT_DISPLAY_CTRL_SELECT_SHIFT                 18
   1031#define CRT_DISPLAY_CTRL_SELECT_MASK                  (0x3 << 18)
   1032#define CRT_DISPLAY_CTRL_SELECT_PANEL                 (0x0 << 18)
   1033#define CRT_DISPLAY_CTRL_SELECT_VGA                   (0x1 << 18)
   1034#define CRT_DISPLAY_CTRL_SELECT_CRT                   (0x2 << 18)
   1035#define CRT_DISPLAY_CTRL_FIFO_MASK                    (0x3 << 16)
   1036#define CRT_DISPLAY_CTRL_FIFO_1                       (0x0 << 16)
   1037#define CRT_DISPLAY_CTRL_FIFO_3                       (0x1 << 16)
   1038#define CRT_DISPLAY_CTRL_FIFO_7                       (0x2 << 16)
   1039#define CRT_DISPLAY_CTRL_FIFO_11                      (0x3 << 16)
   1040#define CRT_DISPLAY_CTRL_BLANK                        BIT(10)
   1041#define CRT_DISPLAY_CTRL_PIXEL_MASK                   (0xf << 4)
   1042#define CRT_DISPLAY_CTRL_FORMAT_MASK                  (0x3 << 0)
   1043#define CRT_DISPLAY_CTRL_FORMAT_8                     (0x0 << 0)
   1044#define CRT_DISPLAY_CTRL_FORMAT_16                    (0x1 << 0)
   1045#define CRT_DISPLAY_CTRL_FORMAT_32                    (0x2 << 0)
   1046
   1047#define CRT_FB_ADDRESS                                0x080204
   1048#define CRT_FB_ADDRESS_STATUS                         BIT(31)
   1049#define CRT_FB_ADDRESS_EXT                            BIT(27)
   1050#define CRT_FB_ADDRESS_ADDRESS_MASK                   0x3ffffff
   1051
   1052#define CRT_FB_WIDTH                                  0x080208
   1053#define CRT_FB_WIDTH_WIDTH_SHIFT                      16
   1054#define CRT_FB_WIDTH_WIDTH_MASK                       (0x3fff << 16)
   1055#define CRT_FB_WIDTH_OFFSET_MASK                      0x3fff
   1056
   1057#define CRT_HORIZONTAL_TOTAL                          0x08020C
   1058#define CRT_HORIZONTAL_TOTAL_TOTAL_SHIFT              16
   1059#define CRT_HORIZONTAL_TOTAL_TOTAL_MASK               (0xfff << 16)
   1060#define CRT_HORIZONTAL_TOTAL_DISPLAY_END_MASK         0xfff
   1061
   1062#define CRT_HORIZONTAL_SYNC                           0x080210
   1063#define CRT_HORIZONTAL_SYNC_WIDTH_SHIFT               16
   1064#define CRT_HORIZONTAL_SYNC_WIDTH_MASK                (0xff << 16)
   1065#define CRT_HORIZONTAL_SYNC_START_MASK                0xfff
   1066
   1067#define CRT_VERTICAL_TOTAL                            0x080214
   1068#define CRT_VERTICAL_TOTAL_TOTAL_SHIFT                16
   1069#define CRT_VERTICAL_TOTAL_TOTAL_MASK                 (0x7ff << 16)
   1070#define CRT_VERTICAL_TOTAL_DISPLAY_END_MASK           (0x7ff)
   1071
   1072#define CRT_VERTICAL_SYNC                             0x080218
   1073#define CRT_VERTICAL_SYNC_HEIGHT_SHIFT                16
   1074#define CRT_VERTICAL_SYNC_HEIGHT_MASK                 (0x3f << 16)
   1075#define CRT_VERTICAL_SYNC_START_MASK                  0x7ff
   1076
   1077#define CRT_SIGNATURE_ANALYZER                        0x08021C
   1078#define CRT_SIGNATURE_ANALYZER_STATUS_MASK            (0xffff << 16)
   1079#define CRT_SIGNATURE_ANALYZER_ENABLE                 BIT(3)
   1080#define CRT_SIGNATURE_ANALYZER_RESET                  BIT(2)
   1081#define CRT_SIGNATURE_ANALYZER_SOURCE_MASK            0x3
   1082#define CRT_SIGNATURE_ANALYZER_SOURCE_RED             0
   1083#define CRT_SIGNATURE_ANALYZER_SOURCE_GREEN           1
   1084#define CRT_SIGNATURE_ANALYZER_SOURCE_BLUE            2
   1085
   1086#define CRT_CURRENT_LINE                              0x080220
   1087#define CRT_CURRENT_LINE_LINE_MASK                    0x7ff
   1088
   1089#define CRT_MONITOR_DETECT                            0x080224
   1090#define CRT_MONITOR_DETECT_VALUE                      BIT(25)
   1091#define CRT_MONITOR_DETECT_ENABLE                     BIT(24)
   1092#define CRT_MONITOR_DETECT_RED_MASK                   (0xff << 16)
   1093#define CRT_MONITOR_DETECT_GREEN_MASK                 (0xff << 8)
   1094#define CRT_MONITOR_DETECT_BLUE_MASK                  0xff
   1095
   1096#define CRT_SCALE                                     0x080228
   1097#define CRT_SCALE_VERTICAL_MODE                       BIT(31)
   1098#define CRT_SCALE_VERTICAL_SCALE_MASK                 (0xfff << 16)
   1099#define CRT_SCALE_HORIZONTAL_MODE                     BIT(15)
   1100#define CRT_SCALE_HORIZONTAL_SCALE_MASK               0xfff
   1101
   1102/* CRT Cursor Control */
   1103
   1104#define CRT_HWC_ADDRESS                               0x080230
   1105#define CRT_HWC_ADDRESS_ENABLE                        BIT(31)
   1106#define CRT_HWC_ADDRESS_EXT                           BIT(27)
   1107#define CRT_HWC_ADDRESS_ADDRESS_MASK                  0x3ffffff
   1108
   1109#define CRT_HWC_LOCATION                              0x080234
   1110#define CRT_HWC_LOCATION_TOP                          BIT(27)
   1111#define CRT_HWC_LOCATION_Y_MASK                       (0x7ff << 16)
   1112#define CRT_HWC_LOCATION_LEFT                         BIT(11)
   1113#define CRT_HWC_LOCATION_X_MASK                       0x7ff
   1114
   1115#define CRT_HWC_COLOR_12                              0x080238
   1116#define CRT_HWC_COLOR_12_2_RGB565_MASK                (0xffff << 16)
   1117#define CRT_HWC_COLOR_12_1_RGB565_MASK                0xffff
   1118
   1119#define CRT_HWC_COLOR_3                               0x08023C
   1120#define CRT_HWC_COLOR_3_RGB565_MASK                   0xffff
   1121
   1122/* This vertical expansion below start at 0x080240 ~ 0x080264 */
   1123#define CRT_VERTICAL_EXPANSION                        0x080240
   1124#ifndef VALIDATION_CHIP
   1125    #define CRT_VERTICAL_CENTERING_VALUE_MASK         (0xff << 24)
   1126#endif
   1127#define CRT_VERTICAL_EXPANSION_COMPARE_VALUE_MASK     (0xff << 16)
   1128#define CRT_VERTICAL_EXPANSION_LINE_BUFFER_MASK       (0xf << 12)
   1129#define CRT_VERTICAL_EXPANSION_SCALE_FACTOR_MASK      0xfff
   1130
   1131/* This horizontal expansion below start at 0x080268 ~ 0x08027C */
   1132#define CRT_HORIZONTAL_EXPANSION                      0x080268
   1133#ifndef VALIDATION_CHIP
   1134    #define CRT_HORIZONTAL_CENTERING_VALUE_MASK       (0xff << 24)
   1135#endif
   1136#define CRT_HORIZONTAL_EXPANSION_COMPARE_VALUE_MASK   (0xff << 16)
   1137#define CRT_HORIZONTAL_EXPANSION_SCALE_FACTOR_MASK    0xfff
   1138
   1139#ifndef VALIDATION_CHIP
   1140    /* Auto Centering */
   1141    #define CRT_AUTO_CENTERING_TL                     0x080280
   1142    #define CRT_AUTO_CENTERING_TL_TOP_MASK            (0x7ff << 16)
   1143    #define CRT_AUTO_CENTERING_TL_LEFT_MASK           0x7ff
   1144
   1145    #define CRT_AUTO_CENTERING_BR                     0x080284
   1146    #define CRT_AUTO_CENTERING_BR_BOTTOM_MASK         (0x7ff << 16)
   1147    #define CRT_AUTO_CENTERING_BR_BOTTOM_SHIFT        16
   1148    #define CRT_AUTO_CENTERING_BR_RIGHT_MASK          0x7ff
   1149#endif
   1150
   1151/* sm750le new register to control panel output */
   1152#define DISPLAY_CONTROL_750LE			      0x80288
   1153/* Palette RAM */
   1154
   1155/* Panel Palette register starts at 0x080400 ~ 0x0807FC */
   1156#define PANEL_PALETTE_RAM                             0x080400
   1157
   1158/* Panel Palette register starts at 0x080C00 ~ 0x080FFC */
   1159#define CRT_PALETTE_RAM                               0x080C00
   1160
   1161/* Color Space Conversion registers. */
   1162
   1163#define CSC_Y_SOURCE_BASE                               0x1000C8
   1164#define CSC_Y_SOURCE_BASE_EXT                           BIT(27)
   1165#define CSC_Y_SOURCE_BASE_CS                            BIT(26)
   1166#define CSC_Y_SOURCE_BASE_ADDRESS_MASK                  0x3ffffff
   1167
   1168#define CSC_CONSTANTS                                   0x1000CC
   1169#define CSC_CONSTANTS_Y_MASK                            (0xff << 24)
   1170#define CSC_CONSTANTS_R_MASK                            (0xff << 16)
   1171#define CSC_CONSTANTS_G_MASK                            (0xff << 8)
   1172#define CSC_CONSTANTS_B_MASK                            0xff
   1173
   1174#define CSC_Y_SOURCE_X                                  0x1000D0
   1175#define CSC_Y_SOURCE_X_INTEGER_MASK                     (0x7ff << 16)
   1176#define CSC_Y_SOURCE_X_FRACTION_MASK                    (0x1fff << 3)
   1177
   1178#define CSC_Y_SOURCE_Y                                  0x1000D4
   1179#define CSC_Y_SOURCE_Y_INTEGER_MASK                     (0xfff << 16)
   1180#define CSC_Y_SOURCE_Y_FRACTION_MASK                    (0x1fff << 3)
   1181
   1182#define CSC_U_SOURCE_BASE                               0x1000D8
   1183#define CSC_U_SOURCE_BASE_EXT                           BIT(27)
   1184#define CSC_U_SOURCE_BASE_CS                            BIT(26)
   1185#define CSC_U_SOURCE_BASE_ADDRESS_MASK                  0x3ffffff
   1186
   1187#define CSC_V_SOURCE_BASE                               0x1000DC
   1188#define CSC_V_SOURCE_BASE_EXT                           BIT(27)
   1189#define CSC_V_SOURCE_BASE_CS                            BIT(26)
   1190#define CSC_V_SOURCE_BASE_ADDRESS_MASK                  0x3ffffff
   1191
   1192#define CSC_SOURCE_DIMENSION                            0x1000E0
   1193#define CSC_SOURCE_DIMENSION_X_MASK                     (0xffff << 16)
   1194#define CSC_SOURCE_DIMENSION_Y_MASK                     0xffff
   1195
   1196#define CSC_SOURCE_PITCH                                0x1000E4
   1197#define CSC_SOURCE_PITCH_Y_MASK                         (0xffff << 16)
   1198#define CSC_SOURCE_PITCH_UV_MASK                        0xffff
   1199
   1200#define CSC_DESTINATION                                 0x1000E8
   1201#define CSC_DESTINATION_WRAP                            BIT(31)
   1202#define CSC_DESTINATION_X_MASK                          (0xfff << 16)
   1203#define CSC_DESTINATION_Y_MASK                          0xfff
   1204
   1205#define CSC_DESTINATION_DIMENSION                       0x1000EC
   1206#define CSC_DESTINATION_DIMENSION_X_MASK                (0xffff << 16)
   1207#define CSC_DESTINATION_DIMENSION_Y_MASK                0xffff
   1208
   1209#define CSC_DESTINATION_PITCH                           0x1000F0
   1210#define CSC_DESTINATION_PITCH_X_MASK                    (0xffff << 16)
   1211#define CSC_DESTINATION_PITCH_Y_MASK                    0xffff
   1212
   1213#define CSC_SCALE_FACTOR                                0x1000F4
   1214#define CSC_SCALE_FACTOR_HORIZONTAL_MASK                (0xffff << 16)
   1215#define CSC_SCALE_FACTOR_VERTICAL_MASK                  0xffff
   1216
   1217#define CSC_DESTINATION_BASE                            0x1000F8
   1218#define CSC_DESTINATION_BASE_EXT                        BIT(27)
   1219#define CSC_DESTINATION_BASE_CS                         BIT(26)
   1220#define CSC_DESTINATION_BASE_ADDRESS_MASK               0x3ffffff
   1221
   1222#define CSC_CONTROL                                     0x1000FC
   1223#define CSC_CONTROL_STATUS                              BIT(31)
   1224#define CSC_CONTROL_SOURCE_FORMAT_MASK                  (0x7 << 28)
   1225#define CSC_CONTROL_SOURCE_FORMAT_YUV422                (0x0 << 28)
   1226#define CSC_CONTROL_SOURCE_FORMAT_YUV420I               (0x1 << 28)
   1227#define CSC_CONTROL_SOURCE_FORMAT_YUV420                (0x2 << 28)
   1228#define CSC_CONTROL_SOURCE_FORMAT_YVU9                  (0x3 << 28)
   1229#define CSC_CONTROL_SOURCE_FORMAT_IYU1                  (0x4 << 28)
   1230#define CSC_CONTROL_SOURCE_FORMAT_IYU2                  (0x5 << 28)
   1231#define CSC_CONTROL_SOURCE_FORMAT_RGB565                (0x6 << 28)
   1232#define CSC_CONTROL_SOURCE_FORMAT_RGB8888               (0x7 << 28)
   1233#define CSC_CONTROL_DESTINATION_FORMAT_MASK             (0x3 << 26)
   1234#define CSC_CONTROL_DESTINATION_FORMAT_RGB565           (0x0 << 26)
   1235#define CSC_CONTROL_DESTINATION_FORMAT_RGB8888          (0x1 << 26)
   1236#define CSC_CONTROL_HORIZONTAL_FILTER                   BIT(25)
   1237#define CSC_CONTROL_VERTICAL_FILTER                     BIT(24)
   1238#define CSC_CONTROL_BYTE_ORDER                          BIT(23)
   1239
   1240#define DE_DATA_PORT                                    0x110000
   1241
   1242#define I2C_BYTE_COUNT                                  0x010040
   1243#define I2C_BYTE_COUNT_COUNT_MASK                       0xf
   1244
   1245#define I2C_CTRL                                        0x010041
   1246#define I2C_CTRL_INT                                    BIT(4)
   1247#define I2C_CTRL_DIR                                    BIT(3)
   1248#define I2C_CTRL_CTRL                                   BIT(2)
   1249#define I2C_CTRL_MODE                                   BIT(1)
   1250#define I2C_CTRL_EN                                     BIT(0)
   1251
   1252#define I2C_STATUS                                      0x010042
   1253#define I2C_STATUS_TX                                   BIT(3)
   1254#define I2C_STATUS_ERR                                  BIT(2)
   1255#define I2C_STATUS_ACK                                  BIT(1)
   1256#define I2C_STATUS_BSY                                  BIT(0)
   1257
   1258#define I2C_RESET                                       0x010042
   1259#define I2C_RESET_BUS_ERROR                             BIT(2)
   1260
   1261#define I2C_SLAVE_ADDRESS                               0x010043
   1262#define I2C_SLAVE_ADDRESS_ADDRESS_MASK                  (0x7f << 1)
   1263#define I2C_SLAVE_ADDRESS_RW                            BIT(0)
   1264
   1265#define I2C_DATA0                                       0x010044
   1266#define I2C_DATA1                                       0x010045
   1267#define I2C_DATA2                                       0x010046
   1268#define I2C_DATA3                                       0x010047
   1269#define I2C_DATA4                                       0x010048
   1270#define I2C_DATA5                                       0x010049
   1271#define I2C_DATA6                                       0x01004A
   1272#define I2C_DATA7                                       0x01004B
   1273#define I2C_DATA8                                       0x01004C
   1274#define I2C_DATA9                                       0x01004D
   1275#define I2C_DATA10                                      0x01004E
   1276#define I2C_DATA11                                      0x01004F
   1277#define I2C_DATA12                                      0x010050
   1278#define I2C_DATA13                                      0x010051
   1279#define I2C_DATA14                                      0x010052
   1280#define I2C_DATA15                                      0x010053
   1281
   1282#define ZV0_CAPTURE_CTRL                                0x090000
   1283#define ZV0_CAPTURE_CTRL_FIELD_INPUT                    BIT(27)
   1284#define ZV0_CAPTURE_CTRL_SCAN                           BIT(26)
   1285#define ZV0_CAPTURE_CTRL_CURRENT_BUFFER                 BIT(25)
   1286#define ZV0_CAPTURE_CTRL_VERTICAL_SYNC                  BIT(24)
   1287#define ZV0_CAPTURE_CTRL_ADJ                            BIT(19)
   1288#define ZV0_CAPTURE_CTRL_HA                             BIT(18)
   1289#define ZV0_CAPTURE_CTRL_VSK                            BIT(17)
   1290#define ZV0_CAPTURE_CTRL_HSK                            BIT(16)
   1291#define ZV0_CAPTURE_CTRL_FD                             BIT(15)
   1292#define ZV0_CAPTURE_CTRL_VP                             BIT(14)
   1293#define ZV0_CAPTURE_CTRL_HP                             BIT(13)
   1294#define ZV0_CAPTURE_CTRL_CP                             BIT(12)
   1295#define ZV0_CAPTURE_CTRL_UVS                            BIT(11)
   1296#define ZV0_CAPTURE_CTRL_BS                             BIT(10)
   1297#define ZV0_CAPTURE_CTRL_CS                             BIT(9)
   1298#define ZV0_CAPTURE_CTRL_CF                             BIT(8)
   1299#define ZV0_CAPTURE_CTRL_FS                             BIT(7)
   1300#define ZV0_CAPTURE_CTRL_WEAVE                          BIT(6)
   1301#define ZV0_CAPTURE_CTRL_BOB                            BIT(5)
   1302#define ZV0_CAPTURE_CTRL_DB                             BIT(4)
   1303#define ZV0_CAPTURE_CTRL_CC                             BIT(3)
   1304#define ZV0_CAPTURE_CTRL_RGB                            BIT(2)
   1305#define ZV0_CAPTURE_CTRL_656                            BIT(1)
   1306#define ZV0_CAPTURE_CTRL_CAP                            BIT(0)
   1307
   1308#define ZV0_CAPTURE_CLIP                                0x090004
   1309#define ZV0_CAPTURE_CLIP_EYCLIP_MASK                    (0x3ff << 16)
   1310#define ZV0_CAPTURE_CLIP_XCLIP_MASK                     0x3ff
   1311
   1312#define ZV0_CAPTURE_SIZE                                0x090008
   1313#define ZV0_CAPTURE_SIZE_HEIGHT_MASK                    (0x7ff << 16)
   1314#define ZV0_CAPTURE_SIZE_WIDTH_MASK                     0x7ff
   1315
   1316#define ZV0_CAPTURE_BUF0_ADDRESS                        0x09000C
   1317#define ZV0_CAPTURE_BUF0_ADDRESS_STATUS                 BIT(31)
   1318#define ZV0_CAPTURE_BUF0_ADDRESS_EXT                    BIT(27)
   1319#define ZV0_CAPTURE_BUF0_ADDRESS_CS                     BIT(26)
   1320#define ZV0_CAPTURE_BUF0_ADDRESS_ADDRESS_MASK           0x3ffffff
   1321
   1322#define ZV0_CAPTURE_BUF1_ADDRESS                        0x090010
   1323#define ZV0_CAPTURE_BUF1_ADDRESS_STATUS                 BIT(31)
   1324#define ZV0_CAPTURE_BUF1_ADDRESS_EXT                    BIT(27)
   1325#define ZV0_CAPTURE_BUF1_ADDRESS_CS                     BIT(26)
   1326#define ZV0_CAPTURE_BUF1_ADDRESS_ADDRESS_MASK           0x3ffffff
   1327
   1328#define ZV0_CAPTURE_BUF_OFFSET                          0x090014
   1329#ifndef VALIDATION_CHIP
   1330    #define ZV0_CAPTURE_BUF_OFFSET_YCLIP_ODD_FIELD      (0x3ff << 16)
   1331#endif
   1332#define ZV0_CAPTURE_BUF_OFFSET_OFFSET_MASK              0xffff
   1333
   1334#define ZV0_CAPTURE_FIFO_CTRL                           0x090018
   1335#define ZV0_CAPTURE_FIFO_CTRL_FIFO_MASK                 0x7
   1336#define ZV0_CAPTURE_FIFO_CTRL_FIFO_0                    0
   1337#define ZV0_CAPTURE_FIFO_CTRL_FIFO_1                    1
   1338#define ZV0_CAPTURE_FIFO_CTRL_FIFO_2                    2
   1339#define ZV0_CAPTURE_FIFO_CTRL_FIFO_3                    3
   1340#define ZV0_CAPTURE_FIFO_CTRL_FIFO_4                    4
   1341#define ZV0_CAPTURE_FIFO_CTRL_FIFO_5                    5
   1342#define ZV0_CAPTURE_FIFO_CTRL_FIFO_6                    6
   1343#define ZV0_CAPTURE_FIFO_CTRL_FIFO_7                    7
   1344
   1345#define ZV0_CAPTURE_YRGB_CONST                          0x09001C
   1346#define ZV0_CAPTURE_YRGB_CONST_Y_MASK                   (0xff << 24)
   1347#define ZV0_CAPTURE_YRGB_CONST_R_MASK                   (0xff << 16)
   1348#define ZV0_CAPTURE_YRGB_CONST_G_MASK                   (0xff << 8)
   1349#define ZV0_CAPTURE_YRGB_CONST_B_MASK                   0xff
   1350
   1351#define ZV0_CAPTURE_LINE_COMP                           0x090020
   1352#define ZV0_CAPTURE_LINE_COMP_LC_MASK                   0x7ff
   1353
   1354/* ZV1 */
   1355
   1356#define ZV1_CAPTURE_CTRL                                0x098000
   1357#define ZV1_CAPTURE_CTRL_FIELD_INPUT                    BIT(27)
   1358#define ZV1_CAPTURE_CTRL_SCAN                           BIT(26)
   1359#define ZV1_CAPTURE_CTRL_CURRENT_BUFFER                 BIT(25)
   1360#define ZV1_CAPTURE_CTRL_VERTICAL_SYNC                  BIT(24)
   1361#define ZV1_CAPTURE_CTRL_PANEL                          BIT(20)
   1362#define ZV1_CAPTURE_CTRL_ADJ                            BIT(19)
   1363#define ZV1_CAPTURE_CTRL_HA                             BIT(18)
   1364#define ZV1_CAPTURE_CTRL_VSK                            BIT(17)
   1365#define ZV1_CAPTURE_CTRL_HSK                            BIT(16)
   1366#define ZV1_CAPTURE_CTRL_FD                             BIT(15)
   1367#define ZV1_CAPTURE_CTRL_VP                             BIT(14)
   1368#define ZV1_CAPTURE_CTRL_HP                             BIT(13)
   1369#define ZV1_CAPTURE_CTRL_CP                             BIT(12)
   1370#define ZV1_CAPTURE_CTRL_UVS                            BIT(11)
   1371#define ZV1_CAPTURE_CTRL_BS                             BIT(10)
   1372#define ZV1_CAPTURE_CTRL_CS                             BIT(9)
   1373#define ZV1_CAPTURE_CTRL_CF                             BIT(8)
   1374#define ZV1_CAPTURE_CTRL_FS                             BIT(7)
   1375#define ZV1_CAPTURE_CTRL_WEAVE                          BIT(6)
   1376#define ZV1_CAPTURE_CTRL_BOB                            BIT(5)
   1377#define ZV1_CAPTURE_CTRL_DB                             BIT(4)
   1378#define ZV1_CAPTURE_CTRL_CC                             BIT(3)
   1379#define ZV1_CAPTURE_CTRL_RGB                            BIT(2)
   1380#define ZV1_CAPTURE_CTRL_656                            BIT(1)
   1381#define ZV1_CAPTURE_CTRL_CAP                            BIT(0)
   1382
   1383#define ZV1_CAPTURE_CLIP                                0x098004
   1384#define ZV1_CAPTURE_CLIP_YCLIP_MASK                     (0x3ff << 16)
   1385#define ZV1_CAPTURE_CLIP_XCLIP_MASK                     0x3ff
   1386
   1387#define ZV1_CAPTURE_SIZE                                0x098008
   1388#define ZV1_CAPTURE_SIZE_HEIGHT_MASK                    (0x7ff << 16)
   1389#define ZV1_CAPTURE_SIZE_WIDTH_MASK                     0x7ff
   1390
   1391#define ZV1_CAPTURE_BUF0_ADDRESS                        0x09800C
   1392#define ZV1_CAPTURE_BUF0_ADDRESS_STATUS                 BIT(31)
   1393#define ZV1_CAPTURE_BUF0_ADDRESS_EXT                    BIT(27)
   1394#define ZV1_CAPTURE_BUF0_ADDRESS_CS                     BIT(26)
   1395#define ZV1_CAPTURE_BUF0_ADDRESS_ADDRESS_MASK           0x3ffffff
   1396
   1397#define ZV1_CAPTURE_BUF1_ADDRESS                        0x098010
   1398#define ZV1_CAPTURE_BUF1_ADDRESS_STATUS                 BIT(31)
   1399#define ZV1_CAPTURE_BUF1_ADDRESS_EXT                    BIT(27)
   1400#define ZV1_CAPTURE_BUF1_ADDRESS_CS                     BIT(26)
   1401#define ZV1_CAPTURE_BUF1_ADDRESS_ADDRESS_MASK           0x3ffffff
   1402
   1403#define ZV1_CAPTURE_BUF_OFFSET                          0x098014
   1404#define ZV1_CAPTURE_BUF_OFFSET_OFFSET_MASK              0xffff
   1405
   1406#define ZV1_CAPTURE_FIFO_CTRL                           0x098018
   1407#define ZV1_CAPTURE_FIFO_CTRL_FIFO_MASK                 0x7
   1408#define ZV1_CAPTURE_FIFO_CTRL_FIFO_0                    0
   1409#define ZV1_CAPTURE_FIFO_CTRL_FIFO_1                    1
   1410#define ZV1_CAPTURE_FIFO_CTRL_FIFO_2                    2
   1411#define ZV1_CAPTURE_FIFO_CTRL_FIFO_3                    3
   1412#define ZV1_CAPTURE_FIFO_CTRL_FIFO_4                    4
   1413#define ZV1_CAPTURE_FIFO_CTRL_FIFO_5                    5
   1414#define ZV1_CAPTURE_FIFO_CTRL_FIFO_6                    6
   1415#define ZV1_CAPTURE_FIFO_CTRL_FIFO_7                    7
   1416
   1417#define ZV1_CAPTURE_YRGB_CONST                          0x09801C
   1418#define ZV1_CAPTURE_YRGB_CONST_Y_MASK                   (0xff << 24)
   1419#define ZV1_CAPTURE_YRGB_CONST_R_MASK                   (0xff << 16)
   1420#define ZV1_CAPTURE_YRGB_CONST_G_MASK                   (0xff << 8)
   1421#define ZV1_CAPTURE_YRGB_CONST_B_MASK                   0xff
   1422
   1423#define DMA_1_SOURCE                                    0x0D0010
   1424#define DMA_1_SOURCE_ADDRESS_EXT                        BIT(27)
   1425#define DMA_1_SOURCE_ADDRESS_CS                         BIT(26)
   1426#define DMA_1_SOURCE_ADDRESS_MASK                       0x3ffffff
   1427
   1428#define DMA_1_DESTINATION                               0x0D0014
   1429#define DMA_1_DESTINATION_ADDRESS_EXT                   BIT(27)
   1430#define DMA_1_DESTINATION_ADDRESS_CS                    BIT(26)
   1431#define DMA_1_DESTINATION_ADDRESS_MASK                  0x3ffffff
   1432
   1433#define DMA_1_SIZE_CONTROL                              0x0D0018
   1434#define DMA_1_SIZE_CONTROL_STATUS                       BIT(31)
   1435#define DMA_1_SIZE_CONTROL_SIZE_MASK                    0xffffff
   1436
   1437#define DMA_ABORT_INTERRUPT                             0x0D0020
   1438#define DMA_ABORT_INTERRUPT_ABORT_1                     BIT(5)
   1439#define DMA_ABORT_INTERRUPT_ABORT_0                     BIT(4)
   1440#define DMA_ABORT_INTERRUPT_INT_1                       BIT(1)
   1441#define DMA_ABORT_INTERRUPT_INT_0                       BIT(0)
   1442
   1443/* Default i2c CLK and Data GPIO. These are the default i2c pins */
   1444#define DEFAULT_I2C_SCL                     30
   1445#define DEFAULT_I2C_SDA                     31
   1446
   1447#define GPIO_DATA_SM750LE                               0x020018
   1448#define GPIO_DATA_SM750LE_1                             BIT(1)
   1449#define GPIO_DATA_SM750LE_0                             BIT(0)
   1450
   1451#define GPIO_DATA_DIRECTION_SM750LE                     0x02001C
   1452#define GPIO_DATA_DIRECTION_SM750LE_1                   BIT(1)
   1453#define GPIO_DATA_DIRECTION_SM750LE_0                   BIT(0)
   1454
   1455#endif