Home | History | Annotate | Download | only in mach
      1 /* SPDX-License-Identifier: GPL-2.0+ */
      2 /*
      3  * (C) Copyright 2012 Samsung Electronics
      4  * Donghwa Lee <dh09.lee (at) samsung.com>
      5  */
      6 
      7 #ifndef __ASM_ARM_ARCH_FB_H_
      8 #define __ASM_ARM_ARCH_FB_H_
      9 
     10 #ifndef __ASSEMBLY__
     11 struct exynos_fb {
     12 	unsigned int vidcon0;
     13 	unsigned int vidcon1;
     14 	unsigned int vidcon2;
     15 	unsigned int vidcon3;
     16 	unsigned int vidtcon0;
     17 	unsigned int vidtcon1;
     18 	unsigned int vidtcon2;
     19 	unsigned int vidtcon3;
     20 	unsigned int wincon0;
     21 	unsigned int wincon1;
     22 	unsigned int wincon2;
     23 	unsigned int wincon3;
     24 	unsigned int wincon4;
     25 
     26 	unsigned int winshmap;
     27 	unsigned int res1;
     28 
     29 	unsigned int winchmap2;
     30 	unsigned int vidosd0a;
     31 	unsigned int vidosd0b;
     32 	unsigned int vidosd0c;
     33 	unsigned int res2;
     34 
     35 	unsigned int vidosd1a;
     36 	unsigned int vidosd1b;
     37 	unsigned int vidosd1c;
     38 	unsigned int vidosd1d;
     39 
     40 	unsigned int vidosd2a;
     41 	unsigned int vidosd2b;
     42 	unsigned int vidosd2c;
     43 	unsigned int vidosd2d;
     44 
     45 	unsigned int vidosd3a;
     46 	unsigned int vidosd3b;
     47 	unsigned int vidosd3c;
     48 	unsigned int res3;
     49 
     50 	unsigned int vidosd4a;
     51 	unsigned int vidosd4b;
     52 	unsigned int vidosd4c;
     53 	unsigned int res4[5];
     54 
     55 	unsigned int vidw00add0b0;
     56 	unsigned int vidw00add0b1;
     57 	unsigned int vidw01add0b0;
     58 	unsigned int vidw01add0b1;
     59 
     60 	unsigned int vidw02add0b0;
     61 	unsigned int vidw02add0b1;
     62 	unsigned int vidw03add0b0;
     63 	unsigned int vidw03add0b1;
     64 	unsigned int vidw04add0b0;
     65 	unsigned int vidw04add0b1;
     66 	unsigned int res5[2];
     67 
     68 	unsigned int vidw00add1b0;
     69 	unsigned int vidw00add1b1;
     70 	unsigned int vidw01add1b0;
     71 	unsigned int vidw01add1b1;
     72 
     73 	unsigned int vidw02add1b0;
     74 	unsigned int vidw02add1b1;
     75 	unsigned int vidw03add1b0;
     76 	unsigned int vidw03add1b1;
     77 
     78 	unsigned int vidw04add1b0;
     79 	unsigned int vidw04add1b1;
     80 	unsigned int res7[2];
     81 
     82 	unsigned int vidw00add2;
     83 	unsigned int vidw01add2;
     84 	unsigned int vidw02add2;
     85 	unsigned int vidw03add2;
     86 	unsigned int vidw04add2;
     87 	unsigned int res8[7];
     88 
     89 	unsigned int vidintcon0;
     90 	unsigned int vidintcon1;
     91 	unsigned int res9[1];
     92 
     93 	unsigned int w1keycon0;
     94 	unsigned int w1keycon1;
     95 	unsigned int w2keycon0;
     96 	unsigned int w2keycon1;
     97 	unsigned int w3keycon0;
     98 	unsigned int w3keycon1;
     99 	unsigned int w4keycon0;
    100 	unsigned int w4keycon1;
    101 
    102 	unsigned int w1keyalpha;
    103 	unsigned int w2keyalpha;
    104 	unsigned int w3keyalpha;
    105 	unsigned int w4keyalpha;
    106 
    107 	unsigned int dithmode;
    108 	unsigned int res10[2];
    109 
    110 	unsigned int win0map;
    111 	unsigned int win1map;
    112 	unsigned int win2map;
    113 	unsigned int win3map;
    114 	unsigned int win4map;
    115 	unsigned int res11[1];
    116 
    117 	unsigned int wpalcon_h;
    118 	unsigned int wpalcon_l;
    119 
    120 	unsigned int trigcon;
    121 	unsigned int res12[2];
    122 
    123 	unsigned int i80ifcona0;
    124 	unsigned int i80ifcona1;
    125 	unsigned int i80ifconb0;
    126 	unsigned int i80ifconb1;
    127 
    128 	unsigned int colorgaincon;
    129 	unsigned int res13[2];
    130 
    131 	unsigned int ldi_cmdcon0;
    132 	unsigned int ldi_cmdcon1;
    133 	unsigned int res14[1];
    134 
    135 	/* To be updated */
    136 
    137 	unsigned char res15[156];
    138 	unsigned int dualrgb;
    139 	unsigned char res16[16];
    140 	unsigned int dp_mie_clkcon;
    141 };
    142 #endif
    143 
    144 /* LCD IF register offset */
    145 #define EXYNOS4_LCD_IF_BASE_OFFSET			0x0
    146 #define EXYNOS5_LCD_IF_BASE_OFFSET			0x20000
    147 
    148 static inline unsigned int exynos_fimd_get_base_offset(void)
    149 {
    150 	if (cpu_is_exynos5())
    151 		return EXYNOS5_LCD_IF_BASE_OFFSET;
    152 	else
    153 		return EXYNOS4_LCD_IF_BASE_OFFSET;
    154 }
    155 
    156 /*
    157  *  Register offsets
    158 */
    159 #define EXYNOS_WINCON(x)				(x * 0x04)
    160 #define EXYNOS_VIDOSD(x)				(x * 0x10)
    161 #define EXYNOS_BUFFER_OFFSET(x)				(x * 0x08)
    162 #define EXYNOS_BUFFER_SIZE(x)				(x * 0x04)
    163 
    164 /*
    165  * Bit Definitions
    166 */
    167 
    168 /* VIDCON0 */
    169 #define EXYNOS_VIDCON0_DSI_DISABLE			(0 << 30)
    170 #define EXYNOS_VIDCON0_DSI_ENABLE			(1 << 30)
    171 #define EXYNOS_VIDCON0_SCAN_PROGRESSIVE			(0 << 29)
    172 #define EXYNOS_VIDCON0_SCAN_INTERLACE			(1 << 29)
    173 #define EXYNOS_VIDCON0_SCAN_MASK			(1 << 29)
    174 #define EXYNOS_VIDCON0_VIDOUT_RGB			(0 << 26)
    175 #define EXYNOS_VIDCON0_VIDOUT_ITU			(1 << 26)
    176 #define EXYNOS_VIDCON0_VIDOUT_I80LDI0			(2 << 26)
    177 #define EXYNOS_VIDCON0_VIDOUT_I80LDI1			(3 << 26)
    178 #define EXYNOS_VIDCON0_VIDOUT_WB_RGB			(4 << 26)
    179 #define EXYNOS_VIDCON0_VIDOUT_WB_I80LDI0		(6 << 26)
    180 #define EXYNOS_VIDCON0_VIDOUT_WB_I80LDI1		(7 << 26)
    181 #define EXYNOS_VIDCON0_VIDOUT_MASK			(7 << 26)
    182 #define EXYNOS_VIDCON0_PNRMODE_RGB_P			(0 << 17)
    183 #define EXYNOS_VIDCON0_PNRMODE_BGR_P			(1 << 17)
    184 #define EXYNOS_VIDCON0_PNRMODE_RGB_S			(2 << 17)
    185 #define EXYNOS_VIDCON0_PNRMODE_BGR_S			(3 << 17)
    186 #define EXYNOS_VIDCON0_PNRMODE_MASK			(3 << 17)
    187 #define EXYNOS_VIDCON0_PNRMODE_SHIFT			(17)
    188 #define EXYNOS_VIDCON0_CLKVALUP_ALWAYS			(0 << 16)
    189 #define EXYNOS_VIDCON0_CLKVALUP_START_FRAME		(1 << 16)
    190 #define EXYNOS_VIDCON0_CLKVALUP_MASK			(1 << 16)
    191 #define EXYNOS_VIDCON0_CLKVAL_F(x)			(((x) & 0xff) << 6)
    192 #define EXYNOS_VIDCON0_VCLKEN_NORMAL			(0 << 5)
    193 #define EXYNOS_VIDCON0_VCLKEN_FREERUN			(1 << 5)
    194 #define EXYNOS_VIDCON0_VCLKEN_MASK			(1 << 5)
    195 #define EXYNOS_VIDCON0_CLKDIR_DIRECTED			(0 << 4)
    196 #define EXYNOS_VIDCON0_CLKDIR_DIVIDED			(1 << 4)
    197 #define EXYNOS_VIDCON0_CLKDIR_MASK			(1 << 4)
    198 #define EXYNOS_VIDCON0_CLKSEL_HCLK			(0 << 2)
    199 #define EXYNOS_VIDCON0_CLKSEL_SCLK			(1 << 2)
    200 #define EXYNOS_VIDCON0_CLKSEL_MASK			(1 << 2)
    201 #define EXYNOS_VIDCON0_ENVID_ENABLE			(1 << 1)
    202 #define EXYNOS_VIDCON0_ENVID_DISABLE			(0 << 1)
    203 #define EXYNOS_VIDCON0_ENVID_F_ENABLE			(1 << 0)
    204 #define EXYNOS_VIDCON0_ENVID_F_DISABLE			(0 << 0)
    205 
    206 /* VIDCON1 */
    207 #define EXYNOS_VIDCON1_IVCLK_FALLING_EDGE		(0 << 7)
    208 #define EXYNOS_VIDCON1_IVCLK_RISING_EDGE		(1 << 7)
    209 #define EXYNOS_VIDCON1_IHSYNC_NORMAL			(0 << 6)
    210 #define EXYNOS_VIDCON1_IHSYNC_INVERT			(1 << 6)
    211 #define EXYNOS_VIDCON1_IVSYNC_NORMAL			(0 << 5)
    212 #define EXYNOS_VIDCON1_IVSYNC_INVERT			(1 << 5)
    213 #define EXYNOS_VIDCON1_IVDEN_NORMAL			(0 << 4)
    214 #define EXYNOS_VIDCON1_IVDEN_INVERT			(1 << 4)
    215 
    216 /* VIDCON2 */
    217 #define EXYNOS_VIDCON2_EN601_DISABLE			(0 << 23)
    218 #define EXYNOS_VIDCON2_EN601_ENABLE			(1 << 23)
    219 #define EXYNOS_VIDCON2_EN601_MASK			(1 << 23)
    220 #define EXYNOS_VIDCON2_WB_DISABLE			(0 << 15)
    221 #define EXYNOS_VIDCON2_WB_ENABLE			(1 << 15)
    222 #define EXYNOS_VIDCON2_WB_MASK				(1 << 15)
    223 #define EXYNOS_VIDCON2_TVFORMATSEL_HW			(0 << 14)
    224 #define EXYNOS_VIDCON2_TVFORMATSEL_SW			(1 << 14)
    225 #define EXYNOS_VIDCON2_TVFORMATSEL_MASK			(1 << 14)
    226 #define EXYNOS_VIDCON2_TVFORMATSEL_YUV422		(1 << 12)
    227 #define EXYNOS_VIDCON2_TVFORMATSEL_YUV444		(2 << 12)
    228 #define EXYNOS_VIDCON2_TVFORMATSEL_YUV_MASK		(3 << 12)
    229 #define EXYNOS_VIDCON2_ORGYUV_YCBCR			(0 << 8)
    230 #define EXYNOS_VIDCON2_ORGYUV_CBCRY			(1 << 8)
    231 #define EXYNOS_VIDCON2_ORGYUV_MASK			(1 << 8)
    232 #define EXYNOS_VIDCON2_YUVORD_CBCR			(0 << 7)
    233 #define EXYNOS_VIDCON2_YUVORD_CRCB			(1 << 7)
    234 #define EXYNOS_VIDCON2_YUVORD_MASK			(1 << 7)
    235 
    236 /* PRTCON */
    237 #define EXYNOS_PRTCON_UPDATABLE				(0 << 11)
    238 #define EXYNOS_PRTCON_PROTECT				(1 << 11)
    239 
    240 /* VIDTCON0 */
    241 #define EXYNOS_VIDTCON0_VBPDE(x)			(((x) & 0xff) << 24)
    242 #define EXYNOS_VIDTCON0_VBPD(x)				(((x) & 0xff) << 16)
    243 #define EXYNOS_VIDTCON0_VFPD(x)				(((x) & 0xff) << 8)
    244 #define EXYNOS_VIDTCON0_VSPW(x)				(((x) & 0xff) << 0)
    245 
    246 /* VIDTCON1 */
    247 #define EXYNOS_VIDTCON1_VFPDE(x)			(((x) & 0xff) << 24)
    248 #define EXYNOS_VIDTCON1_HBPD(x)				(((x) & 0xff) << 16)
    249 #define EXYNOS_VIDTCON1_HFPD(x)				(((x) & 0xff) << 8)
    250 #define EXYNOS_VIDTCON1_HSPW(x)				(((x) & 0xff) << 0)
    251 
    252 /* VIDTCON2 */
    253 #define EXYNOS_VIDTCON2_LINEVAL(x)			(((x) & 0x7ff) << 11)
    254 #define EXYNOS_VIDTCON2_HOZVAL(x)			(((x) & 0x7ff) << 0)
    255 #define EXYNOS_VIDTCON2_LINEVAL_E(x)			((((x) & 0x800) >> 11) << 23)
    256 #define EXYNOS_VIDTCON2_HOZVAL_E(x)			((((x) & 0x800) >> 11) << 22)
    257 
    258 /* Window 0~4 Control - WINCONx */
    259 #define EXYNOS_WINCON_DATAPATH_DMA			(0 << 22)
    260 #define EXYNOS_WINCON_DATAPATH_LOCAL			(1 << 22)
    261 #define EXYNOS_WINCON_DATAPATH_MASK			(1 << 22)
    262 #define EXYNOS_WINCON_BUFSEL_0				(0 << 20)
    263 #define EXYNOS_WINCON_BUFSEL_1				(1 << 20)
    264 #define EXYNOS_WINCON_BUFSEL_MASK			(1 << 20)
    265 #define EXYNOS_WINCON_BUFSEL_SHIFT			(20)
    266 #define EXYNOS_WINCON_BUFAUTO_DISABLE			(0 << 19)
    267 #define EXYNOS_WINCON_BUFAUTO_ENABLE			(1 << 19)
    268 #define EXYNOS_WINCON_BUFAUTO_MASK			(1 << 19)
    269 #define EXYNOS_WINCON_BITSWP_DISABLE			(0 << 18)
    270 #define EXYNOS_WINCON_BITSWP_ENABLE			(1 << 18)
    271 #define EXYNOS_WINCON_BITSWP_SHIFT			(18)
    272 #define EXYNOS_WINCON_BYTESWP_DISABLE			(0 << 17)
    273 #define EXYNOS_WINCON_BYTESWP_ENABLE			(1 << 17)
    274 #define EXYNOS_WINCON_BYTESWP_SHIFT			(17)
    275 #define EXYNOS_WINCON_HAWSWP_DISABLE			(0 << 16)
    276 #define EXYNOS_WINCON_HAWSWP_ENABLE			(1 << 16)
    277 #define EXYNOS_WINCON_HAWSWP_SHIFT			(16)
    278 #define EXYNOS_WINCON_WSWP_DISABLE			(0 << 15)
    279 #define EXYNOS_WINCON_WSWP_ENABLE			(1 << 15)
    280 #define EXYNOS_WINCON_WSWP_SHIFT			(15)
    281 #define EXYNOS_WINCON_INRGB_RGB				(0 << 13)
    282 #define EXYNOS_WINCON_INRGB_YUV				(1 << 13)
    283 #define EXYNOS_WINCON_INRGB_MASK			(1 << 13)
    284 #define EXYNOS_WINCON_BURSTLEN_16WORD			(0 << 9)
    285 #define EXYNOS_WINCON_BURSTLEN_8WORD			(1 << 9)
    286 #define EXYNOS_WINCON_BURSTLEN_4WORD			(2 << 9)
    287 #define EXYNOS_WINCON_BURSTLEN_MASK			(3 << 9)
    288 #define EXYNOS_WINCON_ALPHA_MULTI_DISABLE		(0 << 7)
    289 #define EXYNOS_WINCON_ALPHA_MULTI_ENABLE		(1 << 7)
    290 #define EXYNOS_WINCON_BLD_PLANE				(0 << 6)
    291 #define EXYNOS_WINCON_BLD_PIXEL				(1 << 6)
    292 #define EXYNOS_WINCON_BLD_MASK				(1 << 6)
    293 #define EXYNOS_WINCON_BPPMODE_1BPP			(0 << 2)
    294 #define EXYNOS_WINCON_BPPMODE_2BPP			(1 << 2)
    295 #define EXYNOS_WINCON_BPPMODE_4BPP			(2 << 2)
    296 #define EXYNOS_WINCON_BPPMODE_8BPP_PAL			(3 << 2)
    297 #define EXYNOS_WINCON_BPPMODE_8BPP			(4 << 2)
    298 #define EXYNOS_WINCON_BPPMODE_16BPP_565			(5 << 2)
    299 #define EXYNOS_WINCON_BPPMODE_16BPP_A555		(6 << 2)
    300 #define EXYNOS_WINCON_BPPMODE_18BPP_666			(8 << 2)
    301 #define EXYNOS_WINCON_BPPMODE_18BPP_A665		(9 << 2)
    302 #define EXYNOS_WINCON_BPPMODE_24BPP_888			(0xb << 2)
    303 #define EXYNOS_WINCON_BPPMODE_24BPP_A887		(0xc << 2)
    304 #define EXYNOS_WINCON_BPPMODE_32BPP			(0xd << 2)
    305 #define EXYNOS_WINCON_BPPMODE_16BPP_A444		(0xe << 2)
    306 #define EXYNOS_WINCON_BPPMODE_15BPP_555			(0xf << 2)
    307 #define EXYNOS_WINCON_BPPMODE_MASK			(0xf << 2)
    308 #define EXYNOS_WINCON_BPPMODE_SHIFT			(2)
    309 #define EXYNOS_WINCON_ALPHA0_SEL			(0 << 1)
    310 #define EXYNOS_WINCON_ALPHA1_SEL			(1 << 1)
    311 #define EXYNOS_WINCON_ALPHA_SEL_MASK			(1 << 1)
    312 #define EXYNOS_WINCON_ENWIN_DISABLE			(0 << 0)
    313 #define EXYNOS_WINCON_ENWIN_ENABLE			(1 << 0)
    314 
    315 /* WINCON1 special */
    316 #define EXYNOS_WINCON1_VP_DISABLE			(0 << 24)
    317 #define EXYNOS_WINCON1_VP_ENABLE			(1 << 24)
    318 #define EXYNOS_WINCON1_LOCALSEL_FIMC1			(0 << 23)
    319 #define EXYNOS_WINCON1_LOCALSEL_VP			(1 << 23)
    320 #define EXYNOS_WINCON1_LOCALSEL_MASK			(1 << 23)
    321 
    322 /* WINSHMAP */
    323 #define EXYNOS_WINSHMAP_PROTECT(x)			(((x) & 0x1f) << 10)
    324 #define EXYNOS_WINSHMAP_CH_ENABLE(x)			(1 << (x))
    325 #define EXYNOS_WINSHMAP_CH_DISABLE(x)			(1 << (x))
    326 #define EXYNOS_WINSHMAP_LOCAL_ENABLE(x)			(0x20 << (x))
    327 #define EXYNOS_WINSHMAP_LOCAL_DISABLE(x)		(0x20 << (x))
    328 
    329 /* VIDOSDxA, VIDOSDxB */
    330 #define EXYNOS_VIDOSD_LEFT_X(x)				(((x) & 0x7ff) << 11)
    331 #define EXYNOS_VIDOSD_TOP_Y(x)				(((x) & 0x7ff) << 0)
    332 #define EXYNOS_VIDOSD_RIGHT_X(x)			(((x) & 0x7ff) << 11)
    333 #define EXYNOS_VIDOSD_BOTTOM_Y(x)			(((x) & 0x7ff) << 0)
    334 #define EXYNOS_VIDOSD_RIGHT_X_E(x)			(((x) & 0x1) << 23)
    335 #define EXYNOS_VIDOSD_BOTTOM_Y_E(x)			(((x) & 0x1) << 22)
    336 
    337 /* VIDOSD0C, VIDOSDxD */
    338 #define EXYNOS_VIDOSD_SIZE(x)				(((x) & 0xffffff) << 0)
    339 
    340 /* VIDOSDxC (1~4) */
    341 #define EXYNOS_VIDOSD_ALPHA0_R(x)			(((x) & 0xf) << 20)
    342 #define EXYNOS_VIDOSD_ALPHA0_G(x)			(((x) & 0xf) << 16)
    343 #define EXYNOS_VIDOSD_ALPHA0_B(x)			(((x) & 0xf) << 12)
    344 #define EXYNOS_VIDOSD_ALPHA1_R(x)			(((x) & 0xf) << 8)
    345 #define EXYNOS_VIDOSD_ALPHA1_G(x)			(((x) & 0xf) << 4)
    346 #define EXYNOS_VIDOSD_ALPHA1_B(x)			(((x) & 0xf) << 0)
    347 #define EXYNOS_VIDOSD_ALPHA0_SHIFT			(12)
    348 #define EXYNOS_VIDOSD_ALPHA1_SHIFT			(0)
    349 
    350 /* Start Address */
    351 #define EXYNOS_VIDADDR_START_VBANK(x)			(((x) & 0xff) << 24)
    352 #define EXYNOS_VIDADDR_START_VBASEU(x)			(((x) & 0xffffff) << 0)
    353 
    354 /* End Address */
    355 #define EXYNOS_VIDADDR_END_VBASEL(x)			(((x) & 0xffffff) << 0)
    356 
    357 /* Buffer Size */
    358 #define EXYNOS_VIDADDR_OFFSIZE(x)			(((x) & 0x1fff) << 13)
    359 #define EXYNOS_VIDADDR_PAGEWIDTH(x)			(((x) & 0x1fff) << 0)
    360 #define EXYNOS_VIDADDR_OFFSIZE_E(x)			((((x) & 0x2000) >> 13) << 27)
    361 #define EXYNOS_VIDADDR_PAGEWIDTH_E(x)			((((x) & 0x2000) >> 13) << 26)
    362 
    363 /* WIN Color Map */
    364 #define EXYNOS_WINMAP_COLOR(x)				((x) & 0xffffff)
    365 
    366 /* VIDINTCON0 */
    367 #define EXYNOS_VIDINTCON0_SYSMAINCON_DISABLE		(0 << 19)
    368 #define EXYNOS_VIDINTCON0_SYSMAINCON_ENABLE		(1 << 19)
    369 #define EXYNOS_VIDINTCON0_SYSSUBCON_DISABLE		(0 << 18)
    370 #define EXYNOS_VIDINTCON0_SYSSUBCON_ENABLE		(1 << 18)
    371 #define EXYNOS_VIDINTCON0_SYSIFDONE_DISABLE		(0 << 17)
    372 #define EXYNOS_VIDINTCON0_SYSIFDONE_ENABLE		(1 << 17)
    373 #define EXYNOS_VIDINTCON0_FRAMESEL0_BACK		(0 << 15)
    374 #define EXYNOS_VIDINTCON0_FRAMESEL0_VSYNC		(1 << 15)
    375 #define EXYNOS_VIDINTCON0_FRAMESEL0_ACTIVE		(2 << 15)
    376 #define EXYNOS_VIDINTCON0_FRAMESEL0_FRONT		(3 << 15)
    377 #define EXYNOS_VIDINTCON0_FRAMESEL0_MASK		(3 << 15)
    378 #define EXYNOS_VIDINTCON0_FRAMESEL1_NONE		(0 << 13)
    379 #define EXYNOS_VIDINTCON0_FRAMESEL1_BACK		(1 << 13)
    380 #define EXYNOS_VIDINTCON0_FRAMESEL1_VSYNC		(2 << 13)
    381 #define EXYNOS_VIDINTCON0_FRAMESEL1_FRONT		(3 << 13)
    382 #define EXYNOS_VIDINTCON0_INTFRMEN_DISABLE		(0 << 12)
    383 #define EXYNOS_VIDINTCON0_INTFRMEN_ENABLE		(1 << 12)
    384 #define EXYNOS_VIDINTCON0_FIFOSEL_WIN4			(1 << 11)
    385 #define EXYNOS_VIDINTCON0_FIFOSEL_WIN3			(1 << 10)
    386 #define EXYNOS_VIDINTCON0_FIFOSEL_WIN2			(1 << 9)
    387 #define EXYNOS_VIDINTCON0_FIFOSEL_WIN1			(1 << 6)
    388 #define EXYNOS_VIDINTCON0_FIFOSEL_WIN0			(1 << 5)
    389 #define EXYNOS_VIDINTCON0_FIFOSEL_ALL			(0x73 << 5)
    390 #define EXYNOS_VIDINTCON0_FIFOSEL_MASK			(0x73 << 5)
    391 #define EXYNOS_VIDINTCON0_FIFOLEVEL_25			(0 << 2)
    392 #define EXYNOS_VIDINTCON0_FIFOLEVEL_50			(1 << 2)
    393 #define EXYNOS_VIDINTCON0_FIFOLEVEL_75			(2 << 2)
    394 #define EXYNOS_VIDINTCON0_FIFOLEVEL_EMPTY		(3 << 2)
    395 #define EXYNOS_VIDINTCON0_FIFOLEVEL_FULL		(4 << 2)
    396 #define EXYNOS_VIDINTCON0_FIFOLEVEL_MASK		(7 << 2)
    397 #define EXYNOS_VIDINTCON0_INTFIFO_DISABLE		(0 << 1)
    398 #define EXYNOS_VIDINTCON0_INTFIFO_ENABLE		(1 << 1)
    399 #define EXYNOS_VIDINTCON0_INT_DISABLE			(0 << 0)
    400 #define EXYNOS_VIDINTCON0_INT_ENABLE			(1 << 0)
    401 #define EXYNOS_VIDINTCON0_INT_MASK			(1 << 0)
    402 
    403 /* VIDINTCON1 */
    404 #define EXYNOS_VIDINTCON1_INTVPPEND			(1 << 5)
    405 #define EXYNOS_VIDINTCON1_INTI80PEND			(1 << 2)
    406 #define EXYNOS_VIDINTCON1_INTFRMPEND			(1 << 1)
    407 #define EXYNOS_VIDINTCON1_INTFIFOPEND			(1 << 0)
    408 
    409 /* WINMAP */
    410 #define EXYNOS_WINMAP_ENABLE				(1 << 24)
    411 
    412 /* WxKEYCON0 (1~4) */
    413 #define EXYNOS_KEYCON0_KEYBLEN_DISABLE			(0 << 26)
    414 #define EXYNOS_KEYCON0_KEYBLEN_ENABLE			(1 << 26)
    415 #define EXYNOS_KEYCON0_KEY_DISABLE			(0 << 25)
    416 #define EXYNOS_KEYCON0_KEY_ENABLE			(1 << 25)
    417 #define EXYNOS_KEYCON0_DIRCON_MATCH_FG			(0 << 24)
    418 #define EXYNOS_KEYCON0_DIRCON_MATCH_BG			(1 << 24)
    419 #define EXYNOS_KEYCON0_COMPKEY(x)			(((x) & 0xffffff) << 0)
    420 
    421 /* WxKEYCON1 (1~4) */
    422 #define EXYNOS_KEYCON1_COLVAL(x)			(((x) & 0xffffff) << 0)
    423 
    424 /* DUALRGB */
    425 #define EXYNOS_DUALRGB_BYPASS_SINGLE			(0x00 << 0)
    426 #define EXYNOS_DUALRGB_BYPASS_DUAL			(0x01 << 0)
    427 #define EXYNOS_DUALRGB_MIE_DUAL				(0x10 << 0)
    428 #define EXYNOS_DUALRGB_MIE_SINGLE			(0x11 << 0)
    429 #define EXYNOS_DUALRGB_LINESPLIT			(0x0 << 2)
    430 #define EXYNOS_DUALRGB_FRAMESPLIT			(0x1 << 2)
    431 #define EXYNOS_DUALRGB_SUB_CNT(x)			((x & 0xfff) << 4)
    432 #define EXYNOS_DUALRGB_VDEN_EN_DISABLE			(0x0 << 16)
    433 #define EXYNOS_DUALRGB_VDEN_EN_ENABLE			(0x1 << 16)
    434 #define EXYNOS_DUALRGB_MAIN_CNT(x)			((x & 0xfff) << 18)
    435 
    436 /* I80IFCONA0 and I80IFCONA1 */
    437 #define EXYNOS_LCD_CS_SETUP(x)				(((x) & 0xf) << 16)
    438 #define EXYNOS_LCD_WR_SETUP(x)				(((x) & 0xf) << 12)
    439 #define EXYNOS_LCD_WR_ACT(x)				(((x) & 0xf) << 8)
    440 #define EXYNOS_LCD_WR_HOLD(x)				(((x) & 0xf) << 4)
    441 #define EXYNOS_RSPOL_LOW				(0 << 2)
    442 #define EXYNOS_RSPOL_HIGH				(1 << 2)
    443 #define EXYNOS_I80IFEN_DISABLE				(0 << 0)
    444 #define EXYNOS_I80IFEN_ENABLE				(1 << 0)
    445 
    446 /* TRIGCON */
    447 #define EXYNOS_I80SOFT_TRIG_EN				(1 << 0)
    448 #define EXYNOS_I80START_TRIG				(1 << 1)
    449 #define EXYNOS_I80STATUS_TRIG_DONE			(1 << 2)
    450 
    451 /* DP_MIE_CLKCON */
    452 #define EXYNOS_DP_MIE_DISABLE				(0 << 0)
    453 #define EXYNOS_DP_CLK_ENABLE				(1 << 1)
    454 #define EXYNOS_MIE_CLK_ENABLE				(3 << 0)
    455 
    456 #endif /* _REGS_FB_H */
    457