You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

253 lines
9.0 KiB

/*
* Copyright (C) 2016 MediaTek Inc.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See http://www.gnu.org/licenses/gpl-2.0.html for more details.
*/
#include "lcm_define.h"
&odm {
/* LCM standardization */
lcm_params {
compatible = "mediatek,lcm_params-hx8392a_vdo_cmd";
lcm_params-types = <2 0 0 0>;
/* type, ctrl, lcm_if, lcm_cmd_if */
lcm_params-resolution = <720 1280>;
/* width, height */
lcm_params-io_select_mode;
lcm_params-dbi-port;
lcm_params-dbi-clock_freq;
lcm_params-dbi-data_width;
lcm_params-dbi-data_format = <0 0 0 0 0>;
/* color_order, trans_seq, padding, format, width */
lcm_params-dbi-cpu_write_bits;
lcm_params-dbi-io_driving_current;
lcm_params-dbi-msb_io_driving_current;
lcm_params-dbi-ctrl_io_driving_current;
lcm_params-dbi-te_mode = <1>;
lcm_params-dbi-te_edge_polarity = <0>;
lcm_params-dbi-te_hs_delay_cnt;
lcm_params-dbi-te_vs_width_cnt;
lcm_params-dbi-te_vs_width_cnt_div;
lcm_params-dbi-serial-params0 = <0 0 0 0 0 0>;
/* cs_polarity, clk_polarity, clk_phase, is_non_dbi_mode, clock_base, clock_div */
lcm_params-dbi-serial-params1 = <0 0 0 0 0 0>;
/* css, csh, rd_1st, rd_2nd, wr_1st, wr_2nd */
lcm_params-dbi-serial-params2 = <0 0 0 0 0 0>;
/* sif_1st_pol, sif_sck_def, sif_3wire, sif_sdi sif_div2, sif_hw_cs */
lcm_params-dbi-parallel-params0 = <0 0 0 0>;
/* write_setup, write_hold, write_wait, read_setup */
lcm_params-dbi-parallel-params1 = <0 0 0 0>;
/* read_hold, read_latency, wait_period, cs_high_width */
lcm_params-dpi-mipi_pll_clk_ref;
lcm_params-dpi-mipi_pll_clk_div1;
lcm_params-dpi-mipi_pll_clk_div2;
lcm_params-dpi-mipi_pll_clk_fbk_div;
lcm_params-dpi-dpi_clk_div;
lcm_params-dpi-dpi_clk_duty;
lcm_params-dpi-PLL_CLOCK;
lcm_params-dpi-dpi_clock;
lcm_params-dpi-ssc_disable;
lcm_params-dpi-ssc_range;
lcm_params-dpi-width;
lcm_params-dpi-height;
lcm_params-dpi-bg_width;
lcm_params-dpi-bg_height;
lcm_params-dpi-clk_pol;
lcm_params-dpi-de_pol;
lcm_params-dpi-vsync_pol;
lcm_params-dpi-hsync_pol;
lcm_params-dpi-hsync_pulse_width;
lcm_params-dpi-hsync_back_porch;
lcm_params-dpi-hsync_front_porch;
lcm_params-dpi-vsync_pulse_width;
lcm_params-dpi-vsync_back_porch;
lcm_params-dpi-vsync_front_porch;
lcm_params-dpi-format;
lcm_params-dpi-rgb_order;
lcm_params-dpi-is_serial_output;
lcm_params-dpi-i2x_en;
lcm_params-dpi-i2x_edge;
lcm_params-dpi-embsync;
lcm_params-dpi-lvds_tx_en;
lcm_params-dpi-bit_swap;
lcm_params-dpi-intermediat_buffer_num;
lcm_params-dpi-io_driving_current;
lcm_params-dpi-lsb_io_driving_current;
lcm_params-dsi-mode = <1>;
lcm_params-dsi-switch_mode = <1>;
lcm_params-dsi-DSI_WMEM_CONTI;
lcm_params-dsi-DSI_RMEM_CONTI;
lcm_params-dsi-VC_NUM;
lcm_params-dsi-lane_num = <4>;
lcm_params-dsi-data_format = <0 0 0 2>;
/* color_order, trans_seq, padding, format */
lcm_params-dsi-intermediat_buffer_num;
lcm_params-dsi-ps = <2>;
lcm_params-dsi-word_count;
lcm_params-dsi-packet_size = <256>;
lcm_params-dsi-vertical_sync_active = <2>;
lcm_params-dsi-vertical_backporch = <6>;
lcm_params-dsi-vertical_frontporch = <17>;
lcm_params-dsi-vertical_frontporch_for_low_power;
lcm_params-dsi-vertical_active_line = <1280>;
lcm_params-dsi-horizontal_sync_active = <50>;
lcm_params-dsi-horizontal_backporch = <50>;
lcm_params-dsi-horizontal_frontporch = <50>;
lcm_params-dsi-horizontal_blanking_pixel;
lcm_params-dsi-horizontal_active_pixel = <720>;
lcm_params-dsi-horizontal_bllp;
lcm_params-dsi-line_byte;
lcm_params-dsi-horizontal_sync_active_byte;
lcm_params-dsi-horizontal_backportch_byte;
lcm_params-dsi-horizontal_frontporch_byte;
lcm_params-dsi-rgb_byte;
lcm_params-dsi-horizontal_sync_active_word_count;
lcm_params-dsi-horizontal_backporch_word_count;
lcm_params-dsi-horizontal_frontporch_word_count;
lcm_params-dsi-HS_TRAIL;
lcm_params-dsi-ZERO;
lcm_params-dsi-HS_PRPR;
lcm_params-dsi-LPX;
lcm_params-dsi-TA_SACK;
lcm_params-dsi-TA_GET;
lcm_params-dsi-TA_SURE;
lcm_params-dsi-TA_GO;
lcm_params-dsi-CLK_TRAIL;
lcm_params-dsi-CLK_ZERO;
lcm_params-dsi-LPX_WAIT;
lcm_params-dsi-CONT_DET;
lcm_params-dsi-CLK_HS_PRPR;
lcm_params-dsi-CLK_HS_POST;
lcm_params-dsi-DA_HS_EXIT;
lcm_params-dsi-CLK_HS_EXIT;
lcm_params-dsi-pll_select;
lcm_params-dsi-pll_div1;
lcm_params-dsi-pll_div2;
lcm_params-dsi-fbk_div;
lcm_params-dsi-fbk_sel;
lcm_params-dsi-rg_bir;
lcm_params-dsi-rg_bic;
lcm_params-dsi-rg_bp;
lcm_params-dsi-pll_clock = <218>;
lcm_params-dsi-dsi_clock;
lcm_params-dsi-ssc_disable;
lcm_params-dsi-ssc_range;
lcm_params-dsi-compatibility_for_nvk;
lcm_params-dsi-cont_clock = <1>;
lcm_params-dsi-ufoe_enable;
lcm_params-dsi-ufoe_params = <0 0 0 0>;
/* compress_ratio, lr_mode_en, vlc_disable, vlc_config */
lcm_params-dsi-edp_panel;
lcm_params-dsi-customization_esd_check_enable = <0>;
lcm_params-dsi-esd_check_enable = <1>;
lcm_params-dsi-lcm_int_te_monitor;
lcm_params-dsi-lcm_int_te_period;
lcm_params-dsi-lcm_ext_te_monitor;
lcm_params-dsi-lcm_ext_te_enable;
lcm_params-dsi-noncont_clock;
lcm_params-dsi-noncont_clock_period;
lcm_params-dsi-clk_lp_per_line_enable = <0>;
lcm_params-dsi-lcm_esd_check_table0 = <0x53 0x01 0x24 0x0>;
/* cmd, count, para_list[0], para_list[1] */
lcm_params-dsi-lcm_esd_check_table1;
lcm_params-dsi-lcm_esd_check_table2;
lcm_params-dsi-switch_mode_enable;
lcm_params-dsi-dual_dsi_type;
lcm_params-dsi-lane_swap_en;
lcm_params-dsi-lane_swap0 = <0 0 0 0 0 0>;
/* lane_swap[0][0~5] */
lcm_params-dsi-lane_swap1 = <0 0 0 0 0 0>;
/* lane_swap[1][0~5] */
lcm_params-dsi-vertical_vfp_lp;
lcm_params-physical_width = <59>;
lcm_params-physical_height = <104>;
lcm_params-physical_width_um = <59500>;
lcm_params-physical_height_um = <104700>;
lcm_params-od_table_size;
lcm_params-od_table;
};
lcm_ops {
compatible = "mediatek,lcm_ops-hx8392a_vdo_cmd";
init = <LCM_FUNC_UTIL LCM_UTIL_RESET 1 LCM_UTIL_RESET_HIGH>,
<LCM_FUNC_UTIL LCM_UTIL_RESET 1 LCM_UTIL_RESET_LOW>,
<LCM_FUNC_UTIL LCM_UTIL_MDELAY 1 10>,
<LCM_FUNC_UTIL LCM_UTIL_RESET 1 LCM_UTIL_RESET_HIGH>,
<LCM_FUNC_UTIL LCM_UTIL_MDELAY 1 20>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 2 0x11 0>,
<LCM_FUNC_UTIL LCM_UTIL_MDELAY 1 120>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 5 0xB9 3 0xFF 0x83 0x92>,
<LCM_FUNC_UTIL LCM_UTIL_MDELAY 1 10>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 19 0xBA 17 0x13 0x83 0x00 0xD6>,
<0xC5 0x10 0x09 0xFF 0x0F 0x27 0x03 0x21 0x27 0x25 0x20 0x00 0x10>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 15 0xB1 13 0x7C 0x00 0x43 0xBB>,
<0x00 0x1A 0x1A 0x2F 0x36 0x3F 0x3F 0x42 0x7A>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 14 0xB2 12 0x08 0xC8 0x06 0x06>,
<0x04 0x84 0x00 0xFF 0x06 0x06 0x04 0x20>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 25 0xB4 23 0x00 0x00 0x05 0x0A>,
<0x8F 0x06 0x0A 0x95 0x01 0x07 0x06 0x0C 0x02 0x08 0x08 0x21 0x04>,
<0x02 0x08 0x01 0x04 0x1A 0x95>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 3 0x35 1 0x00>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 6 0xBF 4 0x05 0x60 0x02 0x00>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 3 0xB6 1 0x6A>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 3 0x36 1 0x08>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 4 0xC0 2 0x03 0x94>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 3 0xC2 1 0x03>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 6 0xC6 4 0x35 0x08 0x20 0x04>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 3 0xCC 1 0x09>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 3 0xD4 1 0x00>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 25 0xD5 23 0x00 0x01 0x04 0x00>,
<0x01 0x67 0x89 0xAB 0x45 0xCC 0xCC 0xCC 0x00 0x10 0x54 0xBA 0x98>,
<0x76 0xCC 0xCC 0xCC 0x00 0x00>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 25 0xD8 23 0x00 0x00 0x05 0x00>,
<0x9A 0x00 0x02 0x95 0x01 0x07 0x06 0x00 0x08 0x08 0x00 0x1D 0x08>,
<0x08 0x08 0x00 0x00 0x00 0x77>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 36 0xE0 34 0x00 0x12 0x19 0x33>,
<0x36 0x3F 0x28 0x47 0x06 0x0C 0x0E 0x12 0x14 0x12 0x14 0x12 0x1A>,
<0x00 0x12 0x19 0x33 0x36 0x3F 0x28 0x47 0x06 0x0C 0x0E 0x12 0x14>,
<0x12 0x14 0x12 0x1A>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 36 0xE1 34 0x00 0x12 0x19 0x33>,
<0x36 0x3F 0x28 0x47 0x06 0x0C 0x0E 0x12 0x14 0x12 0x14 0x12 0x1A>,
<0x00 0x12 0x19 0x33 0x36 0x3F 0x28 0x47 0x06 0x0C 0x0E 0x12 0x14>,
<0x12 0x14 0x12 0x1A>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 36 0xE2 34 0x00 0x12 0x19 0x33>,
<0x36 0x3F 0x28 0x47 0x06 0x0C 0x0E 0x12 0x14 0x12 0x14 0x12 0x1A>,
<0x00 0x12 0x19 0x33 0x36 0x3F 0x28 0x47 0x06 0x0C 0x0E 0x12 0x14>,
<0x12 0x14 0x12 0x1A>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 3 0x3A 1 0x77>,
<LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 2 0x29 0>;
suspend = <LCM_FUNC_CMD LCM_UTIL_WRITE_CMD_V2 2 0x10 0>,
<LCM_FUNC_UTIL LCM_UTIL_MDELAY 1 120>;
};
/* LCM standardization end */
};