blob: ed969429207b72c402bc64fb2f1cda1783ec0313 [file] [log] [blame]
Ray Zhang7bb7b322015-09-07 11:32:21 +08001/* Copyright (c) 2015, The Linux Foundation. All rights reserved.
2 *
3 * Redistribution and use in source and binary forms, with or without
4 * modification, are permitted provided that the following conditions
5 * are met:
6 * * Redistributions of source code must retain the above copyright
7 * notice, this list of conditions and the following disclaimer.
8 * * Redistributions in binary form must reproduce the above copyright
9 * notice, this list of conditions and the following disclaimer in
10 * the documentation and/or other materials provided with the
11 * distribution.
12 * * Neither the name of The Linux Foundation nor the names of its
13 * contributors may be used to endorse or promote products derived
14 * from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
19 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
20 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
21 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
22 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
23 * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
24 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
25 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
26 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27 * SUCH DAMAGE.
28 */
29
30/*---------------------------------------------------------------------------
31 * This file is autogenerated file using gcdb parser. Please do not edit it.
32 * Update input XML file to add a new entry or update variable in this file
33 * VERSION = "1.0"
34 *---------------------------------------------------------------------------*/
35
36#ifndef _PANEL_R69006_1080P_CMD_H_
37#define _PANEL_R69006_1080P_CMD_H_
38/*---------------------------------------------------------------------------*/
39/* HEADER files */
40/*---------------------------------------------------------------------------*/
41#include "panel.h"
42
43/*---------------------------------------------------------------------------*/
44/* Panel configuration */
45/*---------------------------------------------------------------------------*/
46static struct panel_config r69006_1080p_cmd_panel_data = {
47 "qcom,mdss_dsi_r69006_1080p_cmd", "dsi:0:", "qcom,mdss-dsi-panel",
48 10, 1, "DISPLAY_1", 0, 0, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, NULL
49};
50
51/*---------------------------------------------------------------------------*/
52/* Panel resolution */
53/*---------------------------------------------------------------------------*/
54static struct panel_resolution r69006_1080p_cmd_panel_res = {
55 1080, 1920, 100, 82, 20, 0, 3, 9, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0
56};
57
58/*---------------------------------------------------------------------------*/
59/* Panel color information */
60/*---------------------------------------------------------------------------*/
61static struct color_info r69006_1080p_cmd_color = {
62 24, 0, 0xff, 0, 0, 0
63};
64
65/*---------------------------------------------------------------------------*/
66/* Panel on/off command information */
67/*---------------------------------------------------------------------------*/
68static char r69006_1080p_cmd_on_cmd0[] = {
69 0XB0, 0x00, 0x23, 0x80
70};
71
72static char r69006_1080p_cmd_on_cmd1[] = {
73 0x06, 0x00, 0x29, 0xC0,
74 0XB3, 0x04, 0x10, 0x00,
75 0x00, 0x00, 0xFF, 0xFF,
76};
77
78static char r69006_1080p_cmd_on_cmd2[] = {
79 0x03, 0x00, 0x29, 0xC0,
80 0XB4, 0x0c, 0x00, 0xFF,
81};
82
83static char r69006_1080p_cmd_on_cmd3[] = {
84 0x04, 0x00, 0x29, 0xC0,
85 0XB6, 0x3b, 0xc3, 0x00,
86};
87
88static char r69006_1080p_cmd_on_cmd4[] = {
89 0XC0, 0x00, 0x23, 0x80
90};
91
92static char r69006_1080p_cmd_on_cmd5[] = {
93 0X36, 0x90, 0x15, 0x80
94};
95
96static char r69006_1080p_cmd_on_cmd6[] = {
97 0XCC, 0x04, 0x23, 0x80
98};
99
100static char r69006_1080p_cmd_on_cmd7[] = {
101 0x20, 0x00, 0x29, 0xC0,
102 0xC1, 0x84, 0x00, 0x10,
103 0xEF, 0x8B, 0xF1, 0xFF,
104 0xFF, 0xDF, 0x9C, 0xC5,
105 0x9A, 0x73, 0x8D, 0xAD,
106 0x63, 0xFE, 0xFF, 0xFF,
107 0xCB, 0xF8, 0x01, 0x00,
108 0xAA, 0x40, 0x00, 0xC2,
109 0x01, 0x08, 0x00, 0x01,
110};
111
112static char r69006_1080p_cmd_on_cmd8[] = {
113 0x0A, 0x00, 0x29, 0xC0,
114 0xCB, 0x0D, 0xFE, 0x1F,
115 0x2C, 0x00, 0x00, 0x00,
116 0x00, 0x00, 0xFF, 0xFF,
117};
118
119static char r69006_1080p_cmd_on_cmd9[] = {
120 0x0B, 0x00, 0x29, 0xC0,
121 0xC2, 0x01, 0xF7, 0x80,
122 0x04, 0x63, 0x00, 0x60,
123 0x00, 0x01, 0x30, 0xFF,
124};
125
126static char r69006_1080p_cmd_on_cmd10[] = {
127 0x07, 0x00, 0x29, 0xC0,
128 0XC3, 0x55, 0x01, 0x00,
129 0x01, 0x00, 0x00, 0xFF,
130};
131
132static char r69006_1080p_cmd_on_cmd11[] = {
133 0x12, 0x00, 0x29, 0xC0,
134 0XC4, 0x70, 0x00, 0x00,
135 0x00, 0x00, 0x00, 0x00,
136 0x00, 0x00, 0x02, 0x01,
137 0x00, 0x05, 0x01, 0x00,
138 0x00, 0x00, 0xFF, 0xFF,
139};
140
141static char r69006_1080p_cmd_on_cmd12[] = {
142 0x0F, 0x00, 0x29, 0xC0,
143 0xC6, 0x59, 0x07, 0x4a,
144 0x07, 0x4a, 0x01, 0x0E,
145 0x01, 0x02, 0x01, 0x02,
146 0x09, 0x15, 0x07, 0xFF,
147};
148
149static char r69006_1080p_cmd_on_cmd13[] = {
150 0x1F, 0x00, 0x29, 0xC0,
151 0XC7, 0x00, 0x30, 0x32,
152 0x34, 0x42, 0x4E, 0x56,
153 0x62, 0x44, 0x4A, 0x54,
154 0x62, 0x6B, 0x73, 0x7F,
155 0x08, 0x30, 0x32, 0x34,
156 0x42, 0x4E, 0x56, 0x62,
157 0x44, 0x4A, 0x54, 0x62,
158 0x6B, 0x73, 0x7F, 0xFF,
159};
160
161static char r69006_1080p_cmd_on_cmd14[] = {
162 0x14, 0x00, 0x29, 0xC0,
163 0xC8, 0x00, 0x00, 0x00,
164 0x00, 0x00, 0xFC, 0x00,
165 0x00, 0x00, 0x00, 0x00,
166 0xFC, 0x00, 0x00, 0x00,
167 0x00, 0x00, 0xFC, 0x00,
168};
169
170static char r69006_1080p_cmd_on_cmd15[] = {
171 0x09, 0x00, 0x29, 0xC0,
172 0xC9, 0x1F, 0x68, 0x1F,
173 0x68, 0x4C, 0x4C, 0xC4,
174 0x11, 0xFF, 0xFF, 0xFF,
175};
176
177static char r69006_1080p_cmd_on_cmd16[] = {
178 0x11, 0x00, 0x29, 0xC0,
179 0xD0, 0x33, 0x01, 0x91,
180 0x0B, 0xD9, 0x19, 0x19,
181 0x00, 0x00, 0x00, 0x19,
182 0x99, 0x00, 0x00, 0x00,
183 0x00, 0xFF, 0xFF, 0xFF,
184};
185
186static char r69006_1080p_cmd_on_cmd17[] = {
187 0x1D, 0x00, 0x29, 0xC0,
188 0xD3, 0x1B, 0x3B, 0xBB,
189 0xAD, 0xA5, 0x33, 0x33,
190 0x33, 0x00, 0x80, 0xAD,
191 0xA8, 0x6f, 0x6f, 0x33,
192 0x33, 0x33, 0xF7, 0xF2,
193 0x1F, 0x7D, 0x7C, 0xFF,
194 0x0F, 0x99, 0x00, 0xFF,
195 0xFF, 0xFF, 0xFF, 0xFF,
196};
197
198static char r69006_1080p_cmd_on_cmd18[] = {
199 0x04, 0x00, 0x29, 0xC0,
200 0xD4, 0x57, 0x33, 0x03,
201};
202
203static char r69006_1080p_cmd_on_cmd19[] = {
204 0x0C, 0x00, 0x29, 0xC0,
205 0XD5, 0x66, 0x00, 0x00,
206 0x01, 0x27, 0x01, 0x27,
207 0x00, 0x6D, 0x00, 0x6D,
208};
209
210static char r69006_1080p_cmd_on_cmd20[] = {
211 0xD6, 0x81, 0x23, 0x80
212};
213
214static char r69006_1080p_cmd_on_cmd21[] = {
215 0x29, 0x00, 0x05, 0x80
216};
217
218static char r69006_1080p_cmd_on_cmd22[] = {
219 0x11, 0x00, 0x05, 0x80
220};
221
222static struct mipi_dsi_cmd r69006_1080p_cmd_on_command[] = {
223 {0x4, r69006_1080p_cmd_on_cmd0, 0x00},
224 {0xc, r69006_1080p_cmd_on_cmd1, 0x00},
225 {0x8, r69006_1080p_cmd_on_cmd2, 0x00},
226 {0x8, r69006_1080p_cmd_on_cmd3, 0x00},
227 {0x4, r69006_1080p_cmd_on_cmd4, 0x00},
228 {0x4, r69006_1080p_cmd_on_cmd5, 0x00},
229 {0x4, r69006_1080p_cmd_on_cmd6, 0x00},
230 {0x24, r69006_1080p_cmd_on_cmd7, 0x00},
231 {0x10, r69006_1080p_cmd_on_cmd8, 0x00},
232 {0x10, r69006_1080p_cmd_on_cmd9, 0x00},
233 {0xc, r69006_1080p_cmd_on_cmd10, 0x00},
234 {0x18, r69006_1080p_cmd_on_cmd11, 0x00},
235 {0x14, r69006_1080p_cmd_on_cmd12, 0x00},
236 {0x24, r69006_1080p_cmd_on_cmd13, 0x00},
237 {0x18, r69006_1080p_cmd_on_cmd14, 0x00},
238 {0x10, r69006_1080p_cmd_on_cmd15, 0x00},
239 {0x18, r69006_1080p_cmd_on_cmd16, 0x00},
240 {0x24, r69006_1080p_cmd_on_cmd17, 0x00},
241 {0x8, r69006_1080p_cmd_on_cmd18, 0x00},
242 {0x10, r69006_1080p_cmd_on_cmd19, 0x00},
243 {0x4, r69006_1080p_cmd_on_cmd20, 0x00},
244 {0x4, r69006_1080p_cmd_on_cmd21, 0x78},
245 {0x4, r69006_1080p_cmd_on_cmd22, 0x78}
246};
247
248#define R69006_1080P_CMD_ON_COMMAND 23
249
250
251static char r69006_1080p_cmdoff_cmd0[] = {
252 0x28, 0x00, 0x05, 0x80
253};
254
255static char r69006_1080p_cmdoff_cmd1[] = {
256 0x10, 0x00, 0x05, 0x80
257};
258
259static struct mipi_dsi_cmd r69006_1080p_cmd_off_command[] = {
260 {0x4, r69006_1080p_cmdoff_cmd0, 0x78},
261 {0x4, r69006_1080p_cmdoff_cmd1, 0x96}
262};
263
264#define R69006_1080P_CMD_OFF_COMMAND 2
265
266
267static struct command_state r69006_1080p_cmd_state = {
268 0, 1
269};
270
271/*---------------------------------------------------------------------------*/
272/* Command mode panel information */
273/*---------------------------------------------------------------------------*/
274static struct commandpanel_info r69006_1080p_cmd_command_panel = {
275 1, 1, 1, 0, 0, 0x2c, 0, 0, 0, 1, 0, 0
276};
277
278/*---------------------------------------------------------------------------*/
279/* Video mode panel information */
280/*---------------------------------------------------------------------------*/
281static struct videopanel_info r69006_1080p_cmd_video_panel = {
282 1, 0, 0, 0, 1, 1, 2, 0, 0x9
283};
284
285/*---------------------------------------------------------------------------*/
286/* Lane configuration */
287/*---------------------------------------------------------------------------*/
288static struct lane_configuration r69006_1080p_cmd_lane_config = {
289 4, 0, 1, 1, 1, 1, 0
290};
291
292/*---------------------------------------------------------------------------*/
293/* Panel timing */
294/*---------------------------------------------------------------------------*/
295static const uint32_t r69006_1080p_cmd_timings[] = {
296 0x7d, 0x25, 0x1d, 0x00, 0x37, 0x33, 0x22, 0x27, 0x1e, 0x03, 0x04, 0x00
297};
298
299static struct panel_timing r69006_1080p_cmd_timing_info = {
300 0, 4, 0x20, 0x2c
301};
302
303/*---------------------------------------------------------------------------*/
304/* Panel reset sequence */
305/*---------------------------------------------------------------------------*/
306static struct panel_reset_sequence r69006_1080p_cmd_reset_seq = {
307 {1, 0, 1, }, {20, 2, 20, }, 2
308};
309
310/*---------------------------------------------------------------------------*/
311/* Backlight setting */
312/*---------------------------------------------------------------------------*/
313static struct backlight r69006_1080p_cmd_backlight = {
314 1, 1, 4095, 100, 1, "PMIC_8941"
315};
316
317#endif /*_PANEL_R69006_1080P_CMD_H_*/