linux/drivers/staging/sm750fb/ddk750_reg.h
<<
>>
Prefs
   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
1456