blob: ac4806f056ac2d50534e94ff3f33ba418b777014 [file] [log] [blame]
Ray Zhang0d303af2015-01-21 10:17:02 +08001/* Copyright (c) 2014-2015, The Linux Foundation. All rights reserved.
Sandeep Pandabd63e282014-08-20 11:05:32 +05302 *
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_HX8394D_720P_VIDEO_H_
37
38#define _PANEL_HX8394D_720P_VIDEO_H_
39/*---------------------------------------------------------------------------*/
40/* HEADER files */
41/*---------------------------------------------------------------------------*/
42#include "panel.h"
43
44/*---------------------------------------------------------------------------*/
45/* Panel configuration */
46/*---------------------------------------------------------------------------*/
47
48static struct panel_config hx8394d_720p_video_panel_data = {
49 "qcom,mdss_dsi_hx8394d_720p_video", "dsi:0:", "qcom,mdss-dsi-panel",
50 10, 0, "DISPLAY_1", 0, 0, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
51};
52
53/*---------------------------------------------------------------------------*/
54/* Panel resolution */
55/*---------------------------------------------------------------------------*/
56static struct panel_resolution hx8394d_720p_video_panel_res = {
57 720, 1280, 52, 100, 24, 0, 8, 20, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0
58};
59
60/*---------------------------------------------------------------------------*/
61/* Panel Color Information */
62/*---------------------------------------------------------------------------*/
63static struct color_info hx8394d_720p_video_color = {
64 24, 0, 0xff, 0, 0, 0
65};
66
67/*---------------------------------------------------------------------------*/
68/* Panel Command information */
69/*---------------------------------------------------------------------------*/
70static char hx8394d_720p_video_on_cmd0[] = {
710x04, 0x00, 0x39, 0xC0,
720xb9, 0xff, 0x83, 0x94,
73 };
74
75
76static char hx8394d_720p_video_on_cmd1[] = {
770x03, 0x00, 0x39, 0xC0,
780xba, 0x33, 0x83, 0xFF, };
79
80static char hx8394d_720p_video_on_cmd2[] = {
810x10, 0x00, 0x39, 0xC0,
820xb1, 0x6c, 0x12, 0x12,
830x37, 0x04, 0x11, 0xf1,
840x80, 0xec, 0x94, 0x23,
850x80, 0xc0, 0xd2, 0x18,
86};
87
88
89static char hx8394d_720p_video_on_cmd3[] = {
900x0c, 0x00, 0x39, 0xC0,
910xb2, 0x00, 0x64, 0x0e,
920x0d, 0x32, 0x23, 0x08,
930x08, 0x1c, 0x4d, 0x00,
94};
95
96
97static char hx8394d_720p_video_on_cmd4[] = {
980x0d, 0x00, 0x39, 0xC0,
990xb4, 0x00, 0xff, 0x03,
1000x50, 0x03, 0x50, 0x03,
1010x50, 0x01, 0x6a, 0x01,
1020x6a, 0xFF, 0xFF, 0xFF,
103 };
104
105
106static char hx8394d_720p_video_on_cmd5[] = {
1070x02, 0x00, 0x39, 0xC0,
1080xbc, 0x07, 0xFF, 0xFF,
109 };
110
111
112static char hx8394d_720p_video_on_cmd6[] = {
1130x04, 0x00, 0x39, 0xC0,
1140xbf, 0x41, 0x0e, 0x01, };
115
116
117static char hx8394d_720p_video_on_cmd7[] = {
1180x1f, 0x00, 0x39, 0xC0,
1190xd3, 0x00, 0x07, 0x00,
1200x00, 0x00, 0x10, 0x00,
1210x32, 0x10, 0x05, 0x00,
1220x00, 0x32, 0x10, 0x00,
1230x00, 0x00, 0x32, 0x10,
1240x00, 0x00, 0x00, 0x36,
1250x03, 0x09, 0x09, 0x37,
1260x00, 0x00, 0x37, 0xFF,
127};
128
129
130static char hx8394d_720p_video_on_cmd8[] = {
1310x2d, 0x00, 0x39, 0xC0,
1320xd5, 0x02, 0x03, 0x00,
1330x01, 0x06, 0x07, 0x04,
1340x05, 0x20, 0x21, 0x22,
1350x23, 0x18, 0x18, 0x18,
1360x18, 0x18, 0x18, 0x18,
1370x18, 0x18, 0x18, 0x18,
1380x18, 0x18, 0x18, 0x18,
1390x18, 0x18, 0x18, 0x18,
1400x18, 0x18, 0x18, 0x18,
1410x18, 0x18, 0x18, 0x24,
1420x25, 0x18, 0x18, 0x19,
1430x19, 0xFF, 0xFF, 0xFF,
144};
145
146
147static char hx8394d_720p_video_on_cmd9[] = {
1480x2d, 0x00, 0x39, 0xC0,
1490xd6, 0x05, 0x04, 0x07,
1500x06, 0x01, 0x00, 0x03,
1510x02, 0x23, 0x22, 0x21,
1520x20, 0x18, 0x18, 0x18,
1530x18, 0x18, 0x18, 0x58,
1540x58, 0x18, 0x18, 0x18,
1550x18, 0x18, 0x18, 0x18,
1560x18, 0x18, 0x18, 0x18,
1570x18, 0x18, 0x18, 0x18,
1580x18, 0x18, 0x18, 0x25,
1590x24, 0x19, 0x19, 0x18,
1600x18, 0xFF, 0xFF, 0xFF,
161};
162
163
164static char hx8394d_720p_video_on_cmd10[] = {
1650x02, 0x00, 0x39, 0xC0,
1660xcc, 0x09, 0xFF, 0xFF, };
167
168
169static char hx8394d_720p_video_on_cmd11[] = {
1700x03, 0x00, 0x39, 0xC0,
1710xc0, 0x30, 0x14, 0xFF,
172};
173
174static char hx8394d_720p_video_on_cmd12[] = {
1750x05, 0x00, 0x39, 0xC0,
1760xc7, 0x00, 0xc0, 0x40,
1770xc0, 0xFF, 0xFF, 0xFF,
178};
179
180static char hx8394d_720p_video_on_cmd13[] = {
1810x03, 0x00, 0x39, 0xC0,
1820xb6, 0x43, 0x43, 0xFF,
183};
184
185static char hx8394d_720p_video_on_cmd14[] = {
1860x11, 0x00, 0x05, 0x80 };
187
188static char hx8394d_720p_video_on_cmd15[] = {
1890x29, 0x00, 0x05, 0x80 };
190
191static struct mipi_dsi_cmd hx8394d_720p_video_on_command[] = {
192{ 0x8 , hx8394d_720p_video_on_cmd0, 0x00},
193{ 0x8 , hx8394d_720p_video_on_cmd1, 0x00},
194{ 0x14 , hx8394d_720p_video_on_cmd2, 0x00},
195{ 0x10 , hx8394d_720p_video_on_cmd3, 0x00},
196{ 0x14 , hx8394d_720p_video_on_cmd4, 0x00},
197{ 0x8 , hx8394d_720p_video_on_cmd5, 0x00},
198{ 0x8 , hx8394d_720p_video_on_cmd6, 0x00},
199{ 0x24 , hx8394d_720p_video_on_cmd7, 0x00},
200{ 0x34 , hx8394d_720p_video_on_cmd8, 0x00},
201{ 0x34 , hx8394d_720p_video_on_cmd9, 0x00},
202{ 0x8 , hx8394d_720p_video_on_cmd10, 0x00},
203{ 0x8 , hx8394d_720p_video_on_cmd11, 0x00},
204{ 0xc , hx8394d_720p_video_on_cmd12, 0x00},
205{ 0x8 , hx8394d_720p_video_on_cmd13, 0x00},
206{ 0x4 , hx8394d_720p_video_on_cmd14, 0xc8},
207{ 0x4 , hx8394d_720p_video_on_cmd15, 0x0a}
208};
209#define HX8394D_720P_VIDEO_ON_COMMAND 16
210
Padmanabhan Komandurue9f07802014-11-04 15:14:59 +0530211static char hx8394d_720p_video_off_cmd0[] = {
212 0x28, 0x00, 0x05, 0x80
213};
214
215static char hx8394d_720p_video_off_cmd1[] = {
216 0x10, 0x00, 0x05, 0x80
217};
218
219static struct mipi_dsi_cmd hx8394d_720p_video_off_command[] = {
220 {0x4, hx8394d_720p_video_off_cmd0, 0x32},
221 {0x4, hx8394d_720p_video_off_cmd1, 0x78}
222};
223
224#define HX8394D_720P_VIDEO_OFF_COMMAND 2
225
Sandeep Pandabd63e282014-08-20 11:05:32 +0530226static struct command_state hx8394d_720p_video_state = {
227 0, 1
228};
229
230/*---------------------------------------------------------------------------*/
231/* Command mode panel information */
232/*---------------------------------------------------------------------------*/
233
234static struct commandpanel_info hx8394d_720p_video_command_panel = {
235 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
236};
237
238/*---------------------------------------------------------------------------*/
239/* Video mode panel information */
240/*---------------------------------------------------------------------------*/
241
242static struct videopanel_info hx8394d_720p_video_video_panel = {
243 1, 0, 0, 0, 1, 1, 2, 0, 0x9
244};
245
246/*---------------------------------------------------------------------------*/
247/* Lane Configuration */
248/*---------------------------------------------------------------------------*/
249
250static struct lane_configuration hx8394d_720p_video_lane_config = {
Ray Zhang0d303af2015-01-21 10:17:02 +0800251 4, 0, 1, 1, 1, 1, 0
Sandeep Pandabd63e282014-08-20 11:05:32 +0530252};
253
254
255/*---------------------------------------------------------------------------*/
256/* Panel Timing */
257/*---------------------------------------------------------------------------*/
258const uint32_t hx8394d_720p_video_timings[] = {
259 0x79, 0x1a, 0x12, 0x00, 0x3e, 0x42, 0x16, 0x1e, 0x15, 0x03, 0x04, 0x00
260};
261
262
263
264static struct mipi_dsi_cmd hx8394d_720p_video_rotation[] = {
265
266};
267#define HX8394D_720P_VIDEO_ROTATION 0
268
269
270static struct panel_timing hx8394d_720p_video_timing_info = {
271 0, 4, 0x04, 0x1b
272};
273
274static struct panel_reset_sequence hx8394d_720p_video_panel_reset_seq = {
275{ 1, 0, 1, }, { 20, 20, 20, }, 2
276};
277
278/*---------------------------------------------------------------------------*/
279/* Backlight Settings */
280/*---------------------------------------------------------------------------*/
281
282static struct backlight hx8394d_720p_video_backlight = {
283 1, 1, 4095, 100, 1, "PMIC_8941"
284};
285
Jayant Shekhar8c5d9d82015-01-08 14:52:30 +0530286#define HX8394D_720P_VIDEO_SIGNATURE 0xa0087
Sandeep Pandabd63e282014-08-20 11:05:32 +0530287
288#endif /*_HX8394D_720P_VIDEO_H_*/