Clip+: LCD display (with FlynDice help)
[kugel-rb.git] / firmware / export / ltv350qv.h
blob31fb58ac6c83989c49d23bb744b71e303a15187d
1 /***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
10 * Copyright (C) 2008 by Maurus Cuelenaere
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
20 ****************************************************************************/
22 * Register definitions for Samsung LTV350QV Quarter VGA LCD Panel
24 * Copyright (C) 2006, 2007 Atmel Corporation
26 * This program is free software; you can redistribute it and/or modify
27 * it under the terms of the GNU General Public License version 2 as
28 * published by the Free Software Foundation.
30 #ifndef __LTV350QV_H
31 #define __LTV350QV_H
33 #define LTV_OPC_INDEX 0x74
34 #define LTV_OPC_DATA 0x76
36 #define LTV_ID 0x00 /* ID Read */
37 #define LTV_IFCTL 0x01 /* Display Interface Control */
38 #define LTV_DATACTL 0x02 /* Display Data Control */
39 #define LTV_ENTRY_MODE 0x03 /* Entry Mode */
40 #define LTV_GATECTL1 0x04 /* Gate Control 1 */
41 #define LTV_GATECTL2 0x05 /* Gate Control 2 */
42 #define LTV_VBP 0x06 /* Vertical Back Porch */
43 #define LTV_HBP 0x07 /* Horizontal Back Porch */
44 #define LTV_SOTCTL 0x08 /* Source Output Timing Control */
45 #define LTV_PWRCTL1 0x09 /* Power Control 1 */
46 #define LTV_PWRCTL2 0x0a /* Power Control 2 */
47 #define LTV_GAMMA(x) (0x10 + (x))/* Gamma control */
49 /* Bit definitions for LTV_IFCTL */
50 #define LTV_IM (1 << 15)
51 #define LTV_NMD (1 << 14)
52 #define LTV_SSMD (1 << 13)
53 #define LTV_REV (1 << 7)
54 #define LTV_NL(x) (((x) & 0x001f) << 0)
56 /* Bit definitions for LTV_DATACTL */
57 #define LTV_DS_SAME (0 << 12)
58 #define LTV_DS_D_TO_S (1 << 12)
59 #define LTV_DS_S_TO_D (2 << 12)
60 #define LTV_CHS_384 (0 << 9)
61 #define LTV_CHS_480 (1 << 9)
62 #define LTV_CHS_492 (2 << 9)
63 #define LTV_DF_RGB (0 << 6)
64 #define LTV_DF_RGBX (1 << 6)
65 #define LTV_DF_XRGB (2 << 6)
66 #define LTV_RGB_RGB (0 << 2)
67 #define LTV_RGB_BGR (1 << 2)
68 #define LTV_RGB_GRB (2 << 2)
69 #define LTV_RGB_RBG (3 << 2)
71 /* Bit definitions for LTV_ENTRY_MODE */
72 #define LTV_VSPL_ACTIVE_LOW (0 << 15)
73 #define LTV_VSPL_ACTIVE_HIGH (1 << 15)
74 #define LTV_HSPL_ACTIVE_LOW (0 << 14)
75 #define LTV_HSPL_ACTIVE_HIGH (1 << 14)
76 #define LTV_DPL_SAMPLE_RISING (0 << 13)
77 #define LTV_DPL_SAMPLE_FALLING (1 << 13)
78 #define LTV_EPL_ACTIVE_LOW (0 << 12)
79 #define LTV_EPL_ACTIVE_HIGH (1 << 12)
80 #define LTV_SS_LEFT_TO_RIGHT (0 << 8)
81 #define LTV_SS_RIGHT_TO_LEFT (1 << 8)
82 #define LTV_STB (1 << 1)
84 /* Bit definitions for LTV_GATECTL1 */
85 #define LTV_CLW(x) (((x) & 0x0007) << 12)
86 #define LTV_GAON (1 << 5)
87 #define LTV_SDR (1 << 3)
89 /* Bit definitions for LTV_GATECTL2 */
90 #define LTV_NW_INV_FRAME (0 << 14)
91 #define LTV_NW_INV_1LINE (1 << 14)
92 #define LTV_NW_INV_2LINE (2 << 14)
93 #define LTV_DSC (1 << 12)
94 #define LTV_GIF (1 << 8)
95 #define LTV_FHN (1 << 7)
96 #define LTV_FTI(x) (((x) & 0x0003) << 4)
97 #define LTV_FWI(x) (((x) & 0x0003) << 0)
99 /* Bit definitions for LTV_SOTCTL */
100 #define LTV_SDT(x) (((x) & 0x0007) << 10)
101 #define LTV_EQ(x) (((x) & 0x0007) << 2)
103 /* Bit definitions for LTV_PWRCTL1 */
104 #define LTV_VCOM_DISABLE (1 << 14)
105 #define LTV_VCOMOUT_ENABLE (1 << 11)
106 #define LTV_POWER_ON (1 << 9)
107 #define LTV_DRIVE_CURRENT(x) (((x) & 0x0007) << 4) /* 0=off, 5=max */
108 #define LTV_SUPPLY_CURRENT(x) (((x) & 0x0007) << 0) /* 0=off, 5=max */
110 /* Bit definitions for LTV_PWRCTL2 */
111 #define LTV_VCOML_ENABLE (1 << 13)
112 #define LTV_VCOML_VOLTAGE(x) (((x) & 0x001f) << 8) /* 0=1V, 31=-1V */
113 #define LTV_VCOMH_VOLTAGE(x) (((x) & 0x001f) << 0) /* 0=3V, 31=4.5V */
115 #endif /* __LTV350QV_H */