From 32afd20b564a34625d531ff899745e00fe872bd8 Mon Sep 17 00:00:00 2001 From: Arian Date: Thu, 14 Mar 2024 15:24:17 +0100 Subject: [PATCH] display: Add support for Xiaomi 12 (cupid|L3) Change-Id: I4046014ac60f5273b434bee8c7cf2d993f1d752d --- qcom/display/Kbuild | 3 +- .../display/cupid-sde-display-mtp-overlay.dts | 12 + .../display/cupid-sde-display-mtp.dtsi | 322 +++ .../dsi-panel-l3-42-02-0a-dsc-cmd.dtsi | 1741 +++++++++++++++++ 4 files changed, 2077 insertions(+), 1 deletion(-) create mode 100644 qcom/display/display/cupid-sde-display-mtp-overlay.dts create mode 100644 qcom/display/display/cupid-sde-display-mtp.dtsi create mode 100644 qcom/display/display/dsi-panel-l3-42-02-0a-dsc-cmd.dtsi diff --git a/qcom/display/Kbuild b/qcom/display/Kbuild index 9e32aa28..8fd6a525 100644 --- a/qcom/display/Kbuild +++ b/qcom/display/Kbuild @@ -23,7 +23,8 @@ dtbo-$(CONFIG_ARCH_WAIPIO) += display/waipio-sde.dtbo \ display/waipio-sde-display-waipio-lemur-cdp-overlay.dtbo \ display/waipio-sde-display-waipio-lemur-mtp-overlay.dtbo \ display/waipio-sde-display-rumi-overlay.dtbo \ - display/zeus-sde-display-mtp-overlay.dtbo + display/zeus-sde-display-mtp-overlay.dtbo \ + display/cupid-sde-display-mtp-overlay.dtbo else dtbo-$(CONFIG_ARCH_WAIPIO) += display/trustedvm-waipio-sde-display-mtp-overlay.dtbo \ display/trustedvm-waipio-sde-display-cdp-overlay.dtbo \ diff --git a/qcom/display/display/cupid-sde-display-mtp-overlay.dts b/qcom/display/display/cupid-sde-display-mtp-overlay.dts new file mode 100644 index 00000000..b2f0fa8d --- /dev/null +++ b/qcom/display/display/cupid-sde-display-mtp-overlay.dts @@ -0,0 +1,12 @@ +/dts-v1/; +/plugin/; + +#include "cupid-sde-display-mtp.dtsi" + +/ { + model = "Qualcomm Technologies, Inc. 8450 zeus"; + compatible = "qcom,waipio-mtp", "qcom,waipio", "qcom,mtp"; + qcom,msm-id = <457 0x10000>, <482 0x10000>, <457 0x20000>, <482 0x20000>, <552 0x10000>; + qcom,board-id = <0x10008 0>; + xiaomi,miboard-id = <0x2 0>; +}; diff --git a/qcom/display/display/cupid-sde-display-mtp.dtsi b/qcom/display/display/cupid-sde-display-mtp.dtsi new file mode 100644 index 00000000..115debea --- /dev/null +++ b/qcom/display/display/cupid-sde-display-mtp.dtsi @@ -0,0 +1,322 @@ +#include "waipio-sde-display.dtsi" +#include "dsi-panel-l3-42-02-0a-dsc-cmd.dtsi" + +&soc { + dsi_panel_pwr_supply_L3: dsi_panel_pwr_supply_L3 { + #address-cells = <1>; + #size-cells = <0>; + qcom,panel-supply-entry@0 { + reg = <0>; + qcom,supply-name = "vddio"; + qcom,supply-min-voltage = <1800000>; + qcom,supply-max-voltage = <1800000>; + qcom,supply-enable-load = <300000>; + qcom,supply-disable-load = <80>; + qcom,supply-post-on-sleep = <10>; + qcom,supply-post-off-sleep = <2>; + }; + qcom,panel-supply-entry@1 { + reg = <1>; + qcom,supply-name = "vddd"; + qcom,supply-min-voltage = <1220000>; + qcom,supply-max-voltage = <1220000>; + qcom,supply-enable-load = <300000>; + qcom,supply-disable-load = <0>; + qcom,supply-post-on-sleep = <10>; + qcom,supply-post-off-sleep = <2>; + }; + qcom,panel-supply-entry@2 { + reg = <2>; + qcom,supply-name = "vci"; + qcom,supply-min-voltage = <3000000>; + qcom,supply-max-voltage = <3000000>; + qcom,supply-enable-load = <300000>; + qcom,supply-disable-load = <0>; + qcom,supply-post-on-sleep = <10>; + qcom,supply-post-off-sleep = <2>; + }; + }; +}; + +&dsi_l3_42_02_0a_dsc_cmd { + qcom,mdss-dsi-panel-vsync-delay; + qcom,dsi-select-clocks = "pll_byte_clk0", "pll_dsi_clk0"; + qcom,mdss-dsi-clk-strength = <0xFF>; + qcom,mdss-dsi-display-timings { + /* 60 Hz */ + timing@0{ + qcom,mdss-dsi-panel-phy-timings = [00 1D 07 07 17 22 07 + 07 08 02 04 00 19 0C]; + qcom,display-topology = <1 1 1>; + qcom,default-topology-index = <0>; + }; + + /*120 Hz*/ + timing@1{ + qcom,mdss-dsi-panel-phy-timings = [00 1D 07 07 17 22 07 + 07 08 02 04 00 19 0C]; + qcom,display-topology = <1 1 1>; + qcom,default-topology-index = <0>; + }; + /*90 Hz*/ + timing@2{ + qcom,mdss-dsi-panel-phy-timings = [00 1D 07 07 17 22 07 + 07 08 02 04 00 19 0C]; + qcom,display-topology = <1 1 1>; + + qcom,default-topology-index = <0>; + }; + }; +}; + +&dsi_r66451_amoled_144hz_cmd_cphy { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; + qcom,mdss-brightness-max-level = <255>; + qcom,mdss-dsi-bl-inverted-dbv; +}; + +&dsi_r66451_amoled_144hz_video_cphy { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; + qcom,mdss-brightness-max-level = <255>; + qcom,mdss-dsi-bl-inverted-dbv; +}; + +&dsi_r66451_amoled_120hz_cmd_cphy { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; + qcom,mdss-brightness-max-level = <255>; + qcom,mdss-dsi-bl-inverted-dbv; +}; + +&dsi_r66451_amoled_cmd { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply>; + qcom,panel-sec-supply-entries = <&dsi_panel_pwr_supply>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; + qcom,mdss-brightness-max-level = <255>; + qcom,mdss-dsi-bl-inverted-dbv; + qcom,platform-reset-gpio = <&tlmm 0 0>; +}; + +&dsi_dual_nt35597_truly_sl_cmd { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_external"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; +}; + +&dsi_r66451_amoled_video { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; + qcom,mdss-brightness-max-level = <255>; + qcom,mdss-dsi-bl-inverted-dbv; + qcom,platform-reset-gpio = <&tlmm 0 0>; +}; + +&dsi_r66451_amoled_144hz_cmd { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; + qcom,mdss-brightness-max-level = <255>; + qcom,mdss-dsi-bl-inverted-dbv; +}; + +&dsi_r66451_amoled_sync_cmd { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply>; + qcom,panel-sec-supply-entries = <&dsi_panel_pwr_supply>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,mdss-dsi-sec-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; + qcom,mdss-brightness-max-level = <255>; + qcom,mdss-dsi-bl-inverted-dbv; + qcom,platform-reset-gpio = <&tlmm 0 0>; +}; + +&dsi_sharp_4k_dsc_cmd { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_external"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; +}; + +&dsi_sharp_4k_dsc_video { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_external"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; +}; + +&dsi_sharp_1080_cmd { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_external"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; +}; + +&dsi_sharp_qsync_wqhd_cmd { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_external"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; +}; + +&dsi_sharp_qsync_wqhd_video { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_external"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; +}; + +&dsi_sharp_qhd_plus_dsc_cmd { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_external"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; +}; + +&dsi_nt35695b_truly_fhd_cmd { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_external"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; +}; + +&dsi_dual_nt35597_truly_cmd { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_external"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; +}; + +&dsi_dual_nt35597_truly_video { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_external"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; +}; + +&dsi_sim_cmd { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; +}; + +&dsi_sim_vid { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; +}; + +&dsi_sim_dsc_375_cmd { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; +}; + +&dsi_sim_dsc_10b_cmd { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; +}; + +&dsi_dual_sim_cmd { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,bl-dsc-cmd-state = "dsi_lp_mode"; +}; + +&dsi_dual_sim_vid { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; +}; + +&dsi_sim_vdc_vid { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; +}; + +&dsi_dual_sim_dsc_375_cmd { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; +}; + +&dsi_sim_sec_hd_cmd { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,panel-sec-supply-entries = <&dsi_panel_pwr_supply_sim>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,mdss-dsi-sec-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <1023>; +}; + +&dsi_l3_42_02_0a_dsc_cmd { + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_L3>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <4095>; + qcom,mdss-brightness-max-level = <4095>; + qcom,mdss-dsi-bl-inverted-dbv; + qcom,platform-reset-gpio = <&tlmm 0 0>; +}; + +&sde_dsi { + qcom,dsi-default-panel = <&dsi_r66451_amoled_video>; + vddd-supply = <&L10C>; + vci-supply = <&L13C>; + vddio-supply = <&L12C>; +}; + +&qupv3_se4_spi { + fts@0 { + panel = <&dsi_l3_42_02_0a_dsc_cmd + &dsi_r66451_amoled_video>; + }; +}; + +&soc { + thermal-message { + board-sensor = "VIRTUAL-SENSOR0"; + }; + thermal_screen: thermal-screen { + panel = <&dsi_l3_42_02_0a_dsc_cmd + &dsi_r66451_amoled_video>; + }; + charge_screen: charge-screen { + panel = <&dsi_l3_42_02_0a_dsc_cmd + &dsi_r66451_amoled_video>; + }; +}; + +&spmi_bus { + qcom,pm8350b@3 { + qcom,amoled-ecm@f900 { + display-panels = <&dsi_l3_42_02_0a_dsc_cmd + &dsi_r66451_amoled_video>; + }; + }; +}; + +&sde_dsi1 { + status = "disabled"; +}; + +&sde_dp { + status = "disabled"; +}; + +&pm8350c_rgb { + status = "disabled"; +}; + +&mdss_mdp { + connectors = <&sde_dsi &smmu_sde_unsec &smmu_sde_sec &sde_wb &sde_rscc>; +}; diff --git a/qcom/display/display/dsi-panel-l3-42-02-0a-dsc-cmd.dtsi b/qcom/display/display/dsi-panel-l3-42-02-0a-dsc-cmd.dtsi new file mode 100644 index 00000000..ecf2ba8d --- /dev/null +++ b/qcom/display/display/dsi-panel-l3-42-02-0a-dsc-cmd.dtsi @@ -0,0 +1,1741 @@ +&mdss_mdp { + dsi_l3_42_02_0a_dsc_cmd: qcom,mdss_dsi_l3_42_02_0a_dsc_cmd { + qcom,mdss-dsi-panel-name = "xiaomi 42 02 0a mp cmd mode dsc dsi panel"; + qcom,mdss-dsi-panel-type = "dsi_cmd_mode"; + qcom,mdss-dsi-virtual-channel-id = <0>; + qcom,mdss-dsi-stream = <0>; + qcom,mdss-dsi-bpp = <30>; + qcom,mdss-dsi-color-order = "rgb_swap_rgb"; + qcom,mdss-dsi-underflow-color = <0xff>; + qcom,mdss-dsi-border-color = <0>; + + qcom,dsi-ctrl-num = <0>; + qcom,dsi-phy-num = <0>; + + qcom,mdss-dsi-traffic-mode = "burst_mode"; + qcom,mdss-dsi-lane-map = "lane_map_0123"; + qcom,mdss-dsi-bllp-eof-power-mode; + qcom,mdss-dsi-bllp-power-mode; + qcom,mdss-dsi-lane-0-state; + qcom,mdss-dsi-lane-1-state; + qcom,mdss-dsi-lane-2-state; + qcom,mdss-dsi-lane-3-state; + qcom,mdss-dsi-dma-trigger = "trigger_sw"; + qcom,mdss-dsi-mdp-trigger = "none"; + qcom,mdss-dsi-reset-sequence = <1 11>, <0 1>, <1 11>; + qcom,mdss-pan-physical-width-dimension = <654>; + qcom,mdss-pan-physical-height-dimension = <1454>; + qcom,mdss-dsi-te-pin-select = <1>; + qcom,mdss-dsi-wr-mem-start = <0x2c>; + qcom,mdss-dsi-wr-mem-continue = <0x3c>; + qcom,mdss-dsi-te-dcs-command = <1>; + qcom,mdss-dsi-te-check-enable; + qcom,mdss-dsi-te-using-te-pin; + qcom,mdss-dsi-tx-eot-append; + qcom,mdss-dsi-lp11-init; + + qcom,mdss-dsi-bl-inverted-dbv; + qcom,bl-update-flag = "delay_until_first_frame"; + qcom,mdss-dsi-panel-mode-switch; + + qcom,mdss-dsi-panel-hdr-enabled; + qcom,mdss-dsi-panel-hdr-color-primaries = <14500 15500 32000 17000 15500 30000 8000 3000>; + qcom,mdss-dsi-panel-peak-brightness = <4200000>; + qcom,mdss-dsi-panel-blackness-level = <3230>; + qcom,mdss-dsi-dma-schedule-line = <1>; + qcom,mdss-dsi-dma-schedule-window = <10>; + + qcom,mdss-dsi-display-timings { + /* 60 Hz */ + timing@0{ + qcom,mdss-dsi-cmd-mode; + qcom,mdss-dsi-panel-framerate = <60>; + qcom,mdss-dsi-panel-width = <1080>; + qcom,mdss-dsi-panel-height = <2400>; + qcom,mdss-dsi-h-front-porch = <32>; + qcom,mdss-dsi-h-back-porch = <32>; + qcom,mdss-dsi-h-pulse-width = <16>; + qcom,mdss-dsi-h-sync-skew = <0>; + qcom,mdss-dsi-v-back-porch = <32>; + qcom,mdss-dsi-v-front-porch = <64>; + qcom,mdss-dsi-v-pulse-width = <16>; + qcom,mdss-dsi-h-sync-pulse = <0>; + qcom,mdss-dsi-h-left-border = <0>; + qcom,mdss-dsi-h-right-border = <0>; + qcom,mdss-dsi-v-top-border = <0>; + qcom,mdss-dsi-v-bottom-border = <0>; + qcom,mdss-dsi-panel-clockrate = <832000000>; + qcom,mdss-dsi-panel-jitter = <0x5 0x1>; + qcom,mdss-mdp-transfer-time-us = <7000>; + qcom,mdss-dsi-on-command = [ + /* VESA ON */ + 15 00 00 00 00 00 02 90 01 + /* VESA Edition */ + 39 00 00 40 00 00 13 91 + AB 28 00 0C C2 00 03 1C 01 7E 00 0F 08 BB 04 3D + 10 F0 + 39 00 00 40 00 00 02 03 01 + 39 00 00 00 00 00 02 2C 00 + /* TE ON */ + 15 00 00 00 00 00 02 35 00 + /* BACKLIGHT ON */ + 15 00 00 00 00 00 02 53 20 + 39 00 00 00 00 00 05 51 00 00 00 00 + /* CASET/RASET */ + 39 00 00 40 00 00 05 2A 00 00 04 37 + 39 00 00 00 00 00 05 2B 00 00 09 5F + /* 60 Hz */ + 15 00 00 00 00 00 02 2F 01 + 15 00 00 00 00 00 02 26 01 + /* OSC calibration */ + 39 00 00 40 00 00 06 F0 55 AA 52 08 01 + 39 00 00 00 00 00 08 C3 94 01 8C D0 22 02 00 + /* enter aod with no black */ + 39 00 00 40 00 00 02 6F 01 + 39 00 00 40 00 00 04 D2 00 00 11 + 39 00 00 40 00 00 02 6F 06 + 39 00 00 40 00 00 02 D2 05 + 39 00 00 40 00 00 02 6F 0F + 39 00 00 40 00 00 02 D2 00 + 39 00 00 40 00 00 02 6F 09 + 39 00 00 40 00 00 03 D2 00 00 + 39 00 00 40 00 00 02 CE 00 + 39 00 00 40 00 00 05 FF AA 55 A5 80 + 39 00 00 40 00 00 02 6F 61 + 39 00 00 40 00 00 02 F3 80 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 C0 46 + 39 00 00 40 00 00 02 6F 0B + 39 00 00 40 00 00 03 B5 23 2B + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 29 + 39 00 00 40 00 00 02 D9 00 + 39 00 00 40 00 00 02 6F 01 + 39 00 00 40 00 00 02 D9 80 + 39 00 00 40 00 00 02 6F 07 + 39 00 00 40 00 00 03 B2 07 FF + 39 00 00 40 00 00 02 6F 17 + 39 00 00 40 00 00 03 B2 07 FF + 39 00 00 40 00 00 02 6F 1F + 39 00 00 00 00 00 03 B2 00 50 + /* round for fpr, corner and cup */ + 39 00 00 40 00 00 06 F0 55 AA 52 08 07 + 39 00 00 40 00 00 2C C9 + 21 00 27 D9 27 D9 00 00 3F E0 8E C6 3F E0 8E C6 + 80 06 33 D5 F1 00 16 13 00 7B 78 33 D0 27 D9 0F + 9B 9B 00 00 00 00 00 00 00 00 00 + 39 00 00 40 00 00 2C CA + 27 00 27 D9 27 D9 00 00 00 00 00 00 3F E0 8E C6 + 80 00 00 00 00 00 7C 13 00 E1 78 33 D0 00 00 03 + 65 9B 00 00 00 00 00 00 00 00 00 + 39 00 00 40 00 00 2C CB + 2D 00 27 D9 27 D9 00 00 3F E0 8E C6 80 00 00 00 + 00 00 00 00 00 00 16 79 00 7B DE 33 70 00 00 0C + 9B 65 00 00 00 00 00 00 00 00 00 + 39 00 00 40 00 00 2C CC + 2B 00 27 D9 27 D9 00 00 00 00 00 00 80 00 00 00 + 7F F9 CC 2A 0F 00 7C 79 00 E1 DE 33 7F D8 27 00 + 65 65 00 00 00 00 00 00 00 00 00 + 39 00 00 40 00 00 02 C1 00 + 39 00 00 40 00 00 02 C2 00 + 39 00 00 40 00 00 02 C3 00 + 39 00 00 40 00 00 02 C4 00 + 39 00 00 40 00 00 02 C5 00 + 39 00 00 40 00 00 02 C6 00 + 39 00 00 40 00 00 02 C7 00 + 39 00 00 40 00 00 02 C8 00 + 39 00 00 40 00 00 02 CD 00 + 39 00 00 40 00 00 02 CE 00 + 39 00 00 40 00 00 02 CF 00 + 39 00 00 00 00 00 02 D0 00 + /* round on */ + 39 00 00 00 00 00 03 C0 05 02 + /*ESD Error flag Active high*/ + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 05 + 39 00 00 00 00 00 02 BE 0A + /*SRAM not power off at idle mode*/ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 00 00 00 02 6F 01 + 39 00 00 00 00 00 02 C0 B3 + 39 00 00 00 00 00 05 FF AA 55 A5 80 + 39 00 00 00 00 00 02 6F 2E + 39 00 00 00 00 00 02 FB D1 + /* Sleep Out */ + 05 00 00 00 50 00 02 11 00 + /* Display On */ + 05 00 00 00 00 00 02 29 00 + ]; + qcom,mdss-dsi-off-command = [ + 05 00 00 00 14 00 02 28 00 + 05 00 00 00 64 00 02 10 00]; + qcom,mdss-dsi-on-command-state = "dsi_lp_mode"; + qcom,mdss-dsi-off-command-state = "dsi_lp_mode"; + + qcom,mdss-dsi-timing-switch-command = [ + /* 60 Hz */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 CC 00 + 39 00 00 00 00 00 02 2F 01 + 39 00 00 00 00 00 02 26 01 + ]; + qcom,mdss-dsi-timing-switch-command-state = "dsi_hs_mode"; + qcom,mdss-dsi-timing-switch-command-update = <0x26 3 1>; + + qcom,mdss-dsi-nolp-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 00 00 00 02 38 00 + /* 60 Hz */ + 39 00 00 00 00 00 02 2F 01 + 39 00 00 00 00 00 02 26 01 + ]; + qcom,mdss-dsi-nolp-command-state = "dsi_lp_mode"; + qcom,mdss-dsi-nolp-command-update = <0xB2 1 1>; + + qcom,compression-mode = "dsc"; + qcom,mdss-dsc-version = <0x11>; + qcom,mdss-dsc-scr-version = <0x0>; + qcom,mdss-dsc-slice-height = <12>; + qcom,mdss-dsc-slice-width = <1080>; + qcom,mdss-dsc-slice-per-pkt = <1>; + qcom,mdss-dsc-bit-per-component = <10>; + qcom,mdss-dsc-bit-per-pixel = <8>; + qcom,mdss-dsc-block-prediction-enable; + }; + + /* 120Hz */ + timing@1 { + qcom,mdss-dsi-cmd-mode; + qcom,mdss-dsi-panel-framerate = <120>; + qcom,mdss-dsi-panel-width = <1080>; + qcom,mdss-dsi-panel-height = <2400>; + qcom,mdss-dsi-h-front-porch = <32>; + qcom,mdss-dsi-h-back-porch = <32>; + qcom,mdss-dsi-h-pulse-width = <16>; + qcom,mdss-dsi-h-sync-skew = <0>; + qcom,mdss-dsi-v-back-porch = <32>; + qcom,mdss-dsi-v-front-porch = <64>; + qcom,mdss-dsi-v-pulse-width = <16>; + qcom,mdss-dsi-h-sync-pulse = <0>; + qcom,mdss-dsi-h-left-border = <0>; + qcom,mdss-dsi-h-right-border = <0>; + qcom,mdss-dsi-v-top-border = <0>; + qcom,mdss-dsi-v-bottom-border = <0>; + qcom,mdss-dsi-panel-clockrate = <832000000>; + qcom,mdss-dsi-panel-jitter = <0x5 0x1>; + qcom,mdss-mdp-transfer-time-us = <7000>; + qcom,mdss-dsi-on-command = [ + /* VESA ON */ + 15 00 00 00 00 00 02 90 01 + /* VESA Edition */ + 39 00 00 40 00 00 13 91 + AB 28 00 0C C2 00 03 1C 01 7E 00 0F 08 BB 04 3D + 10 F0 + 39 00 00 40 00 00 02 03 01 + 39 00 00 00 00 00 02 2C 00 + /* TE ON */ + 15 00 00 00 00 00 02 35 00 + /* BACKLIGHT ON */ + 15 00 00 00 00 00 02 53 20 + 39 00 00 00 00 00 05 51 00 00 00 00 + /* CASET/RASET */ + 39 00 00 40 00 00 05 2A 00 00 04 37 + 39 00 00 00 00 00 05 2B 00 00 09 5F + /* 120 Hz */ + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 09 + 39 00 00 40 00 00 02 C0 20 + 39 00 00 00 00 00 02 2F 02 + /* OSC calibration */ + 39 00 00 40 00 00 06 F0 55 AA 52 08 01 + 39 00 00 00 00 00 08 C3 94 01 8C D0 22 02 00 + /* enter aod with no black */ + 39 00 00 40 00 00 02 6F 01 + 39 00 00 40 00 00 04 D2 00 00 11 + 39 00 00 40 00 00 02 6F 06 + 39 00 00 40 00 00 02 D2 05 + 39 00 00 40 00 00 02 6F 0F + 39 00 00 40 00 00 02 D2 00 + 39 00 00 40 00 00 02 6F 09 + 39 00 00 40 00 00 03 D2 00 00 + 39 00 00 40 00 00 02 CE 00 + 39 00 00 40 00 00 05 FF AA 55 A5 80 + 39 00 00 40 00 00 02 6F 61 + 39 00 00 40 00 00 02 F3 80 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 C0 46 + 39 00 00 40 00 00 02 6F 0B + 39 00 00 40 00 00 03 B5 23 2B + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 29 + 39 00 00 40 00 00 02 D9 00 + 39 00 00 40 00 00 02 6F 01 + 39 00 00 40 00 00 02 D9 80 + 39 00 00 40 00 00 02 6F 07 + 39 00 00 40 00 00 03 B2 07 FF + 39 00 00 40 00 00 02 6F 17 + 39 00 00 40 00 00 03 B2 07 FF + 39 00 00 40 00 00 02 6F 1F + 39 00 00 00 00 00 03 B2 00 50 + /* round for fpr, corner and cup */ + 39 00 00 40 00 00 06 F0 55 AA 52 08 07 + 39 00 00 40 00 00 2C C9 + 21 00 27 D9 27 D9 00 00 3F E0 8E C6 3F E0 8E C6 + 80 06 33 D5 F1 00 16 13 00 7B 78 33 D0 27 D9 0F + 9B 9B 00 00 00 00 00 00 00 00 00 + 39 00 00 40 00 00 2C CA + 27 00 27 D9 27 D9 00 00 00 00 00 00 3F E0 8E C6 + 80 00 00 00 00 00 7C 13 00 E1 78 33 D0 00 00 03 + 65 9B 00 00 00 00 00 00 00 00 00 + 39 00 00 40 00 00 2C CB + 2D 00 27 D9 27 D9 00 00 3F E0 8E C6 80 00 00 00 + 00 00 00 00 00 00 16 79 00 7B DE 33 70 00 00 0C + 9B 65 00 00 00 00 00 00 00 00 00 + 39 00 00 40 00 00 2C CC + 2B 00 27 D9 27 D9 00 00 00 00 00 00 80 00 00 00 + 7F F9 CC 2A 0F 00 7C 79 00 E1 DE 33 7F D8 27 00 + 65 65 00 00 00 00 00 00 00 00 00 + 39 00 00 40 00 00 02 C1 00 + 39 00 00 40 00 00 02 C2 00 + 39 00 00 40 00 00 02 C3 00 + 39 00 00 40 00 00 02 C4 00 + 39 00 00 40 00 00 02 C5 00 + 39 00 00 40 00 00 02 C6 00 + 39 00 00 40 00 00 02 C7 00 + 39 00 00 40 00 00 02 C8 00 + 39 00 00 40 00 00 02 CD 00 + 39 00 00 40 00 00 02 CE 00 + 39 00 00 40 00 00 02 CF 00 + 39 00 00 00 00 00 02 D0 00 + /* round on */ + 39 00 00 00 00 00 03 C0 05 02 + /*ESD Error flag Active high*/ + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 05 + 39 00 00 00 00 00 02 BE 0A + /*SRAM not power off at idle mode*/ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 00 00 00 02 6F 01 + 39 00 00 00 00 00 02 C0 B3 + 39 00 00 00 00 00 05 FF AA 55 A5 80 + 39 00 00 00 00 00 02 6F 2E + 39 00 00 00 00 00 02 FB D1 + /* Sleep Out */ + 05 00 00 00 50 00 02 11 00 + /* Display On */ + 05 00 00 00 00 00 02 29 00 + ]; + qcom,mdss-dsi-off-command = [ + 05 00 00 00 14 00 02 28 00 + 05 00 00 00 64 00 02 10 00]; + qcom,mdss-dsi-on-command-state = "dsi_lp_mode"; + qcom,mdss-dsi-off-command-state = "dsi_lp_mode"; + + qcom,mdss-dsi-timing-switch-command = [ + /* 120 Hz cmd_1*/ + 39 00 00 00 00 00 02 2F 02 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 09 + 39 00 00 40 00 00 02 C0 20 + 39 00 00 40 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 CC 30 + 39 00 00 00 0A 00 02 CE 01 + /*120 Hz cmd_2*/ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 CC 00 + ]; + qcom,mdss-dsi-timing-switch-command-update = <0xC0 3 1>; + qcom,mdss-dsi-timing-switch-command-state = "dsi_hs_mode"; + + qcom,mdss-dsi-nolp-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 40 00 00 02 38 00 + /* 120 Hz */ + 39 00 00 40 00 00 02 2F 02 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 09 + 39 00 00 40 00 00 02 C0 20 + 39 00 00 40 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 CC 30 + 39 00 00 00 14 00 02 CE 01 + 39 00 00 00 00 00 02 CC 00 + ]; + qcom,mdss-dsi-nolp-command-state = "dsi_lp_mode"; + qcom,mdss-dsi-nolp-command-update = <0xB2 1 1>; + + qcom,compression-mode = "dsc"; + qcom,mdss-dsc-version = <0x11>; + qcom,mdss-dsc-scr-version = <0x0>; + qcom,mdss-dsc-slice-height = <12>; + qcom,mdss-dsc-slice-width = <1080>; + qcom,mdss-dsc-slice-per-pkt = <1>; + qcom,mdss-dsc-bit-per-component = <10>; + qcom,mdss-dsc-bit-per-pixel = <8>; + qcom,mdss-dsc-block-prediction-enable; + }; + + /* 90 Hz */ + timing@2{ + qcom,mdss-dsi-cmd-mode; + qcom,mdss-dsi-panel-framerate = <90>; + qcom,mdss-dsi-panel-width = <1080>; + qcom,mdss-dsi-panel-height = <2400>; + qcom,mdss-dsi-h-front-porch = <32>; + qcom,mdss-dsi-h-back-porch = <32>; + qcom,mdss-dsi-h-pulse-width = <16>; + qcom,mdss-dsi-h-sync-skew = <0>; + qcom,mdss-dsi-v-back-porch = <32>; + qcom,mdss-dsi-v-front-porch = <64>; + qcom,mdss-dsi-v-pulse-width = <16>; + qcom,mdss-dsi-h-sync-pulse = <0>; + qcom,mdss-dsi-h-left-border = <0>; + qcom,mdss-dsi-h-right-border = <0>; + qcom,mdss-dsi-v-top-border = <0>; + qcom,mdss-dsi-v-bottom-border = <0>; + qcom,mdss-dsi-panel-clockrate = <832000000>; + qcom,mdss-dsi-panel-jitter = <0x5 0x1>; + qcom,mdss-mdp-transfer-time-us = <7000>; + qcom,mdss-dsi-on-command = [ + /* VESA ON */ + 15 00 00 00 00 00 02 90 01 + /* VESA Edition */ + 39 00 00 40 00 00 13 91 + AB 28 00 0C C2 00 03 1C 01 7E 00 0F 08 BB 04 3D + 10 F0 + 39 00 00 40 00 00 02 03 01 + 39 00 00 00 00 00 02 2C 00 + /* TE ON */ + 15 00 00 00 00 00 02 35 00 + /* BACKLIGHT ON */ + 15 00 00 00 00 00 02 53 20 + 39 00 00 00 00 00 05 51 00 00 00 00 + /* CASET/RASET */ + 39 00 00 40 00 00 05 2A 00 00 04 37 + 39 00 00 00 00 00 05 2B 00 00 09 5F + /* 90 Hz */ + 39 00 00 40 00 00 02 2F 03 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 0A + 39 00 00 40 00 00 02 C0 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 CC 30 + 39 00 00 00 14 00 02 CE 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 CC 00 + /* OSC calibration */ + 39 00 00 40 00 00 06 F0 55 AA 52 08 01 + 39 00 00 00 00 00 08 C3 94 01 8C D0 22 02 00 + /* enter aod with no black */ + 39 00 00 40 00 00 02 6F 01 + 39 00 00 40 00 00 04 D2 00 00 11 + 39 00 00 40 00 00 02 6F 06 + 39 00 00 40 00 00 02 D2 05 + 39 00 00 40 00 00 02 6F 0F + 39 00 00 40 00 00 02 D2 00 + 39 00 00 40 00 00 02 6F 09 + 39 00 00 40 00 00 03 D2 00 00 + 39 00 00 40 00 00 02 CE 00 + 39 00 00 40 00 00 05 FF AA 55 A5 80 + 39 00 00 40 00 00 02 6F 61 + 39 00 00 40 00 00 02 F3 80 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 C0 46 + 39 00 00 40 00 00 02 6F 0B + 39 00 00 40 00 00 03 B5 23 2B + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 29 + 39 00 00 40 00 00 02 D9 00 + 39 00 00 40 00 00 02 6F 01 + 39 00 00 40 00 00 02 D9 80 + 39 00 00 40 00 00 02 6F 07 + 39 00 00 40 00 00 03 B2 07 FF + 39 00 00 40 00 00 02 6F 17 + 39 00 00 40 00 00 03 B2 07 FF + 39 00 00 40 00 00 02 6F 1F + 39 00 00 00 00 00 03 B2 00 50 + /* round for fpr, corner and cup */ + 39 00 00 40 00 00 06 F0 55 AA 52 08 07 + 39 00 00 40 00 00 2C C9 + 21 00 27 D9 27 D9 00 00 3F E0 8E C6 3F E0 8E C6 + 80 06 33 D5 F1 00 16 13 00 7B 78 33 D0 27 D9 0F + 9B 9B 00 00 00 00 00 00 00 00 00 + 39 00 00 40 00 00 2C CA + 27 00 27 D9 27 D9 00 00 00 00 00 00 3F E0 8E C6 + 80 00 00 00 00 00 7C 13 00 E1 78 33 D0 00 00 03 + 65 9B 00 00 00 00 00 00 00 00 00 + 39 00 00 40 00 00 2C CB + 2D 00 27 D9 27 D9 00 00 3F E0 8E C6 80 00 00 00 + 00 00 00 00 00 00 16 79 00 7B DE 33 70 00 00 0C + 9B 65 00 00 00 00 00 00 00 00 00 + 39 00 00 40 00 00 2C CC + 2B 00 27 D9 27 D9 00 00 00 00 00 00 80 00 00 00 + 7F F9 CC 2A 0F 00 7C 79 00 E1 DE 33 7F D8 27 00 + 65 65 00 00 00 00 00 00 00 00 00 + 39 00 00 40 00 00 02 C1 00 + 39 00 00 40 00 00 02 C2 00 + 39 00 00 40 00 00 02 C3 00 + 39 00 00 40 00 00 02 C4 00 + 39 00 00 40 00 00 02 C5 00 + 39 00 00 40 00 00 02 C6 00 + 39 00 00 40 00 00 02 C7 00 + 39 00 00 40 00 00 02 C8 00 + 39 00 00 40 00 00 02 CD 00 + 39 00 00 40 00 00 02 CE 00 + 39 00 00 40 00 00 02 CF 00 + 39 00 00 00 00 00 02 D0 00 + /* round on */ + 39 00 00 00 00 00 03 C0 05 02 + /*ESD Error flag Active high*/ + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 05 + 39 00 00 00 00 00 02 BE 0A + /*SRAM not power off at idle mode*/ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 00 00 00 02 6F 01 + 39 00 00 00 00 00 02 C0 B3 + 39 00 00 00 00 00 05 FF AA 55 A5 80 + 39 00 00 00 00 00 02 6F 2E + 39 00 00 00 00 00 02 FB D1 + /* Sleep Out */ + 05 00 00 00 50 00 02 11 00 + /* Display On */ + 05 00 00 00 00 00 02 29 00 + ]; + qcom,mdss-dsi-off-command = [ + 05 00 00 00 14 00 02 28 00 + 05 00 00 00 64 00 02 10 00]; + qcom,mdss-dsi-on-command-state = "dsi_lp_mode"; + qcom,mdss-dsi-off-command-state = "dsi_lp_mode"; + + qcom,mdss-dsi-timing-switch-command = [ + /* 90 Hz cmd_1*/ + 39 00 00 00 00 00 02 2F 03 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 0A + 39 00 00 40 00 00 02 C0 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 CC 30 + 39 00 00 00 0D 00 02 CE 01 + /* 90 Hz */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 CC 00 + ]; + qcom,mdss-dsi-timing-switch-command-update = <0xC0 3 1>; + qcom,mdss-dsi-timing-switch-command-state = "dsi_hs_mode"; + + qcom,mdss-dsi-nolp-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 40 00 00 02 38 00 + /* 90 Hz */ + 39 00 00 40 00 00 02 2F 03 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 0A + 39 00 00 40 00 00 02 C0 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 CC 30 + 39 00 00 00 14 00 02 CE 01 + 39 00 00 00 00 00 02 CC 00 + ]; + qcom,mdss-dsi-nolp-command-state = "dsi_lp_mode"; + qcom,mdss-dsi-nolp-command-update = <0xB2 1 1>; + + qcom,compression-mode = "dsc"; + qcom,mdss-dsc-version = <0x11>; + qcom,mdss-dsc-scr-version = <0x0>; + qcom,mdss-dsc-slice-height = <12>; + qcom,mdss-dsc-slice-width = <1080>; + qcom,mdss-dsc-slice-per-pkt = <1>; + qcom,mdss-dsc-bit-per-component = <10>; + qcom,mdss-dsc-bit-per-pixel = <8>; + qcom,mdss-dsc-block-prediction-enable; + }; + }; + }; +}; + +&dsi_l3_42_02_0a_dsc_cmd { + mi,panel-id = <0x00004C33 0x00420200>; + mi,hbm-51-ctl-flag; + mi,hbm-bl-min-level = <1>; + mi,hbm-bl-max-level = <2047>; + mi,panel-on-dimming-delay = <120>; + + /* IRQF_ONESHOT | IRQF_TRIGGER_HIGH */ + mi,esd-err-irq-gpio = <&tlmm 116 0x2004>; + qcom,esd-check-enabled; + qcom,esd-aod-check-enabled; + qcom,mdss-dsi-panel-status-check-mode = "reg_read"; + qcom,mdss-dsi-panel-status-offset-command = [ + 39 00 00 00 00 00 05 FF AA 55 A5 81 + 39 00 00 00 00 00 02 6F 0F]; + qcom,mdss-dsi-panel-status-command = [06 01 00 00 00 00 01 FA]; + qcom,mdss-dsi-panel-status-command-state = "dsi_lp_mode"; + qcom,mdss-dsi-panel-status-offset-command-state = "dsi_lp_mode"; + qcom,mdss-dsi-panel-status-value = <0x00>; + qcom,mdss-dsi-panel-status-read-length = <1>; + + mi,local-hbm-enabled; + + mi,fod-low-brightness-clone-threshold = <200>; + mi,fod-low-brightness-lux-threshold = <3>; + + mi,local-hbm-white-1000nit-update-flag; + mi,local-hbm-white-110nit-update-flag; + mi,local-hbm-alpha-ctrl-aa-area; + + mi,ddic-round-corner-enabled; + + mi,flat-update-flag; + mi,flat-need-sync-te; + + mi,dc-feature-enabled; + mi,dc-feature-type = "lut_compatible_backlight"; + mi,dc-update-flag; + + mi,max-brightness-clone = <16383>; + mi,mdss-dsi-fac-bl-max-level = <2047>; + mi,mdss-fac-brightness-max-level = <2047>; + mi,doze-hbm-dbv-level = <252>; + mi,doze-lbm-dbv-level = <20>; + mi,thermal-dimming-flag; + + qcom,mdss-dsi-display-timings { + timing@0{ /* 60 hz */ + /**/ + mi,mdss-flat-status-control-gamma-cfg = <0x04 0x01>; + + mi,mdss-dsi-dimmingon-command = [39 00 00 00 00 00 02 53 28]; + mi,mdss-dsi-dimmingon-command-state = "dsi_hs_mode"; + mi,mdss-dsi-dimmingoff-command = [39 00 00 00 00 00 02 53 20]; + mi,mdss-dsi-dimmingoff-command-state = "dsi_hs_mode"; + + mi,mdss-dsi-switch-page-command = [ + /* switch page, last byte is page config */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + ]; + /* */ + mi,mdss-dsi-switch-page-command-update = <0xF0 0 5>; + mi,mdss-dsi-switch-page-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-flat-mode-read-pre-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 00 00 00 02 6F 3F + ]; + mi,mdss-dsi-flat-mode-read-pre-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-flat-mode-on-command = [ + /* 60 Hz */ + 39 00 00 00 00 00 02 2F 01 + 39 00 00 60 00 00 02 26 04 + 39 00 00 60 00 00 06 F0 55 AA 52 08 08 + 39 00 00 60 00 00 02 6F 07 + 39 00 00 20 00 00 05 B9 00 00 00 00 + ]; + /* */ + mi,mdss-dsi-flat-mode-on-command-update = <0xB9 4 4>; + mi,mdss-dsi-flat-mode-on-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-flat-mode-off-command = [ + /* 60 Hz */ + 39 00 00 00 00 00 02 2F 01 + 39 00 00 60 00 00 02 26 01 + 39 00 00 60 00 00 06 F0 55 AA 52 08 08 + 39 00 00 60 00 00 02 6F 07 + 39 00 00 20 00 00 05 B9 00 00 00 18 + ]; + mi,mdss-dsi-flat-mode-off-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-dc-on-command = [ + /* Page 0 */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 98 + 39 00 00 40 00 00 02 6F 0F + 39 00 00 40 00 00 05 B2 00 00 01 47 + 39 00 00 40 00 00 25 B3 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 01 47 03 33 + 03 33 07 FF 07 FF 0F FF + 39 00 00 40 00 00 02 6F AC + 39 00 00 40 00 00 47 B2 + 00 00 02 FD 04 47 05 40 06 03 06 AD 07 4A + 07 D3 08 57 08 CD 09 41 09 A9 0A 11 0A 71 + 0A D0 0B 27 0B 7F 0B D1 0C 20 0C 70 0C BA + 0D 06 0D 4C 0D 94 0D D7 0E 1C 0E 5C 0E 9D + 0E DB 0F 1A 0F 55 0F 92 0F CB 0F E2 0F FF + 39 00 00 40 00 00 02 6F 52 + 39 00 00 00 00 00 45 B3 + 00 08 00 12 00 1C 00 26 00 30 00 3A 00 44 + 00 4E 00 58 00 62 00 6C 00 76 00 80 00 8A + 00 94 00 9E 00 A8 00 B2 00 BC 00 C6 00 D0 + 00 DA 00 E4 00 EE 00 F8 01 02 01 0C 01 16 + 01 20 01 2A 01 34 01 3E 01 42 01 47 + /* Page 4 */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 04 + /* 60Hz DC Lut */ + 39 00 00 00 00 00 4C D2 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 + /* 120Hz DC Lut */ + 39 00 00 00 00 00 4C D4 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 + ]; + /* */ + mi,mdss-dsi-dc-on-command-update = <0xD2 10 75>, <0xD4 11 75>; + mi,mdss-dsi-dc-on-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-dc-off-command = [ + /* Page 0 */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 40 00 00 02 6F 0F + 39 00 00 40 00 00 05 B2 30 20 81 47 + 39 00 00 00 00 00 25 B3 + 00 08 00 18 00 18 00 31 00 31 00 62 00 62 + 00 C0 00 C0 01 46 01 46 01 47 01 47 03 33 + 03 33 07 FF 07 FF 0F FF + /* Page 4 */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 04 + /* 60Hz normal Lut */ + 39 00 00 00 00 00 4C D2 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 + /* 120Hz normal Lut */ + 39 00 00 00 00 00 4C D4 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 + ]; + /* */ + mi,mdss-dsi-dc-off-command-update = <0xD2 6 75>, <0xD4 7 75>; + mi,mdss-dsi-dc-off-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-hbm-on-command = [ + 39 00 00 00 00 00 05 51 07 FF 00 00]; + mi,mdss-dsi-hbm-on-command-state = "dsi_lp_mode"; + mi,mdss-dsi-hbm-off-command = [ + 39 00 00 00 00 00 05 51 07 FF 00 00]; + mi,mdss-dsi-hbm-off-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-hbm-fod-on-command = [ + 39 00 00 00 00 00 05 51 0F FF 00 00]; + mi,mdss-dsi-hbm-fod-on-command-state = "dsi_lp_mode"; + mi,mdss-dsi-hbm-fod-off-command = [ + 39 00 00 00 00 00 05 51 07 FF 00 00]; + mi,mdss-dsi-hbm-fod-off-command-state = "dsi_lp_mode"; + mi,mdss-dsi-hbm-fod-off-command-update = <0x51 0 2>; + + mi,mdss-dsi-doze-hbm-command = [ + /* 60 Hz */ + 39 00 00 00 00 00 02 2F 01 + 39 00 00 00 11 00 02 26 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 08 + 39 00 00 40 00 00 05 51 00 FC 0F FF + 39 00 00 00 00 00 02 39 00 + ]; + mi,mdss-dsi-doze-hbm-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-doze-lbm-command = [ + /* 60 Hz */ + 39 00 00 00 00 00 02 2F 01 + 39 00 00 00 11 00 02 26 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 08 + 39 00 00 40 00 00 05 51 00 14 01 55 + 39 00 00 00 00 00 02 39 00 + ]; + mi,mdss-dsi-doze-lbm-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-doze-hbm-nolp-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 40 00 00 05 51 00 FC 0F FF + 39 00 00 00 07 00 02 38 00 + 39 00 00 00 00 00 06 F0 55 AA 52 08 01 + 39 00 00 00 1B 00 05 BA 10 1A 10 1A + 39 00 00 00 00 00 05 BA 10 10 10 10 + /* 60 Hz */ + 39 00 00 00 00 00 02 2F 01 + 39 00 00 00 00 00 02 26 01 + ]; + mi,mdss-dsi-doze-hbm-nolp-command-state = "dsi_lp_mode"; + mi,mdss-dsi-doze-hbm-nolp-command-update = <0xB2 1 1>; + + mi,mdss-dsi-doze-lbm-nolp-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 40 00 00 05 51 00 14 0F FF + 39 00 00 00 07 00 02 38 00 + 39 00 00 00 00 00 06 F0 55 AA 52 08 01 + 39 00 00 00 1B 00 05 BA 10 1A 10 1A + 39 00 00 00 00 00 05 BA 10 10 10 10 + /* 60 Hz */ + 39 00 00 00 00 00 02 2F 01 + 39 00 00 00 00 00 02 26 01 + ]; + mi,mdss-dsi-doze-lbm-nolp-command-state = "dsi_lp_mode"; + mi,mdss-dsi-doze-lbm-nolp-command-update = <0xB2 1 1>; + + mi,mdss-dsi-local-hbm-white-1000nit-giron-pre-read-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 BF 39 + ]; + mi,mdss-dsi-local-hbm-white-1000nit-giron-pre-read-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-white-1000nit-giroff-pre-read-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 BF 19 + ]; + mi,mdss-dsi-local-hbm-white-1000nit-giroff-pre-read-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-normal-white-1000nit-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 6F 08 + /*FPR area RGB[11:0] setting*/ + 39 00 00 40 00 00 07 D0 0B 00 09 92 0B 0E + /*FPR center postion x[11:0], y[11:0]*/ + 39 00 00 40 00 00 05 88 02 1C 08 73 + /*alpha for AA*/ + 39 00 00 40 00 00 03 87 0F FF + 39 00 00 40 00 00 02 6F 02 + 39 00 00 00 34 00 02 87 05 + ]; + mi,mdss-dsi-local-hbm-normal-white-1000nit-command-update = <0x87 4 2>, <0xD0 2 6>; + mi,mdss-dsi-local-hbm-normal-white-1000nit-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-hlpm-white-1000nit-command = [ + /* AOD off */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 40 00 00 05 51 00 FC 0F FF + 39 00 00 00 07 00 02 38 00 + 39 00 00 00 00 00 06 F0 55 AA 52 08 01 + 39 00 00 00 1B 00 05 BA 10 1A 10 1A + 39 00 00 00 00 00 05 BA 10 10 10 10 + /* Local HBM setting*/ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 6F 08 + /*FPR area RGB[11:0] setting*/ + 39 00 00 40 00 00 07 D0 0B 00 09 92 0B 0E + /*FPR center postion x[11:0], y[11:0]*/ + 39 00 00 40 00 00 05 88 02 1C 08 73 + /*alpha for AA*/ + 39 00 00 40 00 00 03 87 0F FF + 39 00 00 40 00 00 02 6F 02 + 39 00 00 00 34 00 02 87 05 + ]; + mi,mdss-dsi-local-hbm-hlpm-white-1000nit-command-update = <0x51 2 2>, <0x87 11 2>, <0xD0 9 6>; + mi,mdss-dsi-local-hbm-hlpm-white-1000nit-command-b2-update = <0xB2 1 1>; + mi,mdss-dsi-local-hbm-hlpm-white-1000nit-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-white-110nit-giron-pre-read-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 BF 37 + ]; + mi,mdss-dsi-local-hbm-white-110nit-giron-pre-read-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-white-110nit-giroff-pre-read-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 BF 17 + ]; + mi,mdss-dsi-local-hbm-white-110nit-giroff-pre-read-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-normal-white-110nit-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 6F 08 + /*FPR area RGB[11:0] setting*/ + 39 00 00 40 00 00 07 D0 07 13 06 49 07 A4 + /*FPR center postion x[11:0], y[11:0]*/ + 39 00 00 40 00 00 05 88 02 1C 08 73 + /*alpha for AA*/ + 39 00 00 40 00 00 03 87 0F FF + 39 00 00 40 00 00 02 6F 02 + 39 00 00 00 34 00 02 87 05 + ]; + mi,mdss-dsi-local-hbm-normal-white-110nit-command-update = <0x87 4 2>, <0xD0 2 6>; + mi,mdss-dsi-local-hbm-normal-white-110nit-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-hlpm-white-110nit-command = [ + /* AOD off */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 40 00 00 05 51 00 14 0F FF + 39 00 00 00 07 00 02 38 00 + 39 00 00 00 00 00 06 F0 55 AA 52 08 01 + 39 00 00 00 1B 00 05 BA 10 1A 10 1A + 39 00 00 00 00 00 05 BA 10 10 10 10 + /* Local HBM setting*/ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 6F 08 + /*FPR area RGB[11:0] setting*/ + 39 00 00 40 00 00 07 D0 07 13 06 49 07 A4 + /*FPR center postion x[11:0], y[11:0]*/ + 39 00 00 40 00 00 05 88 02 1C 08 73 + /*alpha for AA*/ + 39 00 00 40 00 00 03 87 0F FF + 39 00 00 40 00 00 02 6F 02 + 39 00 00 00 34 00 02 87 05 + ]; + mi,mdss-dsi-local-hbm-hlpm-white-110nit-command-update = <0x51 2 2>, <0x87 11 2>, <0xD0 9 6>; + mi,mdss-dsi-local-hbm-hlpm-white-110nit-command-b2-update = <0xB2 1 1>; + mi,mdss-dsi-local-hbm-hlpm-white-110nit-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-normal-green-500nit-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 6F 08 + /*FPR area RGB[11:0] setting*/ + 39 00 00 40 00 00 07 D0 00 00 08 A8 00 00 + /*FPR center postion x[11:0], y[11:0]*/ + 39 00 00 40 00 00 05 88 02 1C 08 73 + /*alpha for AA*/ + 39 00 00 40 00 00 03 87 0F FF + 39 00 00 40 00 00 02 6F 02 + 39 00 00 00 34 00 02 87 05 + ]; + /* */ + mi,mdss-dsi-local-hbm-normal-green-500nit-command-update = <0x87 4 2>; + mi,mdss-dsi-local-hbm-normal-green-500nit-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-off-to-normal-command = [ + 39 00 00 00 00 00 02 53 20 + 39 00 00 40 00 00 03 51 07 FF + 39 00 00 00 00 00 04 87 00 00 04 + ]; + mi,mdss-dsi-local-hbm-off-to-normal-command-update = <0x51 1 2>; + mi,mdss-dsi-local-hbm-off-to-normal-command-state = "dsi_hs_mode"; + + mi,mdss-dsi-local-hbm-off-to-hbm-command= [ + 39 00 00 00 00 00 02 53 20 + 39 00 00 40 00 00 03 51 07 FF + 39 00 00 00 00 00 04 87 00 00 04 + ]; + mi,mdss-dsi-local-hbm-off-to-hbm-command-update = <0x51 1 2>; + mi,mdss-dsi-local-hbm-off-to-hbm-command-state = "dsi_hs_mode"; + + mi,mdss-dsi-local-hbm-off-to-hlpm-command = [ + /*Lhbm off*/ + 39 00 00 00 00 00 02 53 20 + 39 00 00 40 00 00 03 51 00 00 + 39 00 00 00 00 00 04 87 00 00 04 + /*Aod hbm*/ + 39 00 00 00 00 00 02 2F 01 + 39 00 00 40 00 00 02 26 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 08 + 39 00 00 40 00 00 05 51 00 FC 0F FF + 39 00 00 00 00 00 02 39 00 + ]; + mi,mdss-dsi-local-hbm-off-to-hlpm-command-state = "dsi_hs_mode"; + + mi,mdss-dsi-local-hbm-off-to-llpm-command = [ + /*Lhbm off*/ + 39 00 00 00 00 00 02 53 20 + 39 00 00 40 00 00 03 51 00 00 + 39 00 00 00 00 00 04 87 00 00 04 + /*Aod lbm*/ + 39 00 00 00 00 00 02 2F 01 + 39 00 00 40 00 00 02 26 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 08 + 39 00 00 40 00 00 05 51 00 14 01 55 + 39 00 00 00 00 00 02 39 00 + ]; + mi,mdss-dsi-local-hbm-off-to-llpm-command-state = "dsi_hs_mode"; + + mi,mdss-dsi-round-corner-on-command = [ + /* Page 07 */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 07 + /* Round on */ + 39 00 00 00 00 00 03 C0 05 02 + ]; + mi,mdss-dsi-round-corner-on-command-state = "dsi_lp_mode"; + mi,mdss-dsi-round-corner-off-command = [ + /* Page 07 */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 07 + /* Round off */ + 39 00 00 00 00 00 03 C0 00 02 + ]; + mi,mdss-dsi-round-corner-off-command-state = "dsi_lp_mode"; + }; + + timing@1{ /* 120 hz */ + /**/ + mi,mdss-flat-status-control-gamma-cfg = <0x60 0x20>; + + mi,mdss-dsi-dimmingon-command = [39 00 00 00 00 00 02 53 28]; + mi,mdss-dsi-dimmingon-command-state = "dsi_hs_mode"; + mi,mdss-dsi-dimmingoff-command = [39 00 00 00 00 00 02 53 20]; + mi,mdss-dsi-dimmingoff-command-state = "dsi_hs_mode"; + + mi,mdss-dsi-dc-off-command = [ + /* Page 0 */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 40 00 00 02 6F 0F + 39 00 00 40 00 00 05 B2 30 20 81 47 + 39 00 00 00 00 00 25 B3 + 00 08 00 18 00 18 00 31 00 31 00 62 00 62 + 00 C0 00 C0 01 46 01 46 01 47 01 47 03 33 + 03 33 07 FF 07 FF 0F FF + /* Page 4 */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 04 + /* 60Hz normal Lut */ + 39 00 00 00 00 00 4C D2 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 + /* 120Hz normal Lut */ + 39 00 00 00 00 00 4C D4 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 + ]; + /* */ + mi,mdss-dsi-dc-off-command-update = <0xD2 6 75>, <0xD4 7 75>; + mi,mdss-dsi-dc-off-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-hbm-on-command = [ + 39 00 00 00 00 00 05 51 07 FF 00 00]; + mi,mdss-dsi-hbm-on-command-state = "dsi_lp_mode"; + mi,mdss-dsi-hbm-off-command = [ + 39 00 00 00 00 00 05 51 07 FF 00 00]; + mi,mdss-dsi-hbm-off-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-hbm-fod-on-command = [ + 39 00 00 00 00 00 05 51 0F FF 00 00]; + mi,mdss-dsi-hbm-fod-on-command-state = "dsi_lp_mode"; + mi,mdss-dsi-hbm-fod-off-command = [ + 39 00 00 00 00 00 05 51 07 FF 00 00]; + mi,mdss-dsi-hbm-fod-off-command-state = "dsi_lp_mode"; + mi,mdss-dsi-hbm-fod-off-command-update = <0x51 0 2>; + + mi,mdss-dsi-switch-page-command = [ + /* switch page, last byte is page config */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + ]; + /* */ + mi,mdss-dsi-switch-page-command-update = <0xF0 0 5>; + mi,mdss-dsi-switch-page-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-flat-mode-read-pre-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 00 00 00 02 6F 3F + ]; + mi,mdss-dsi-flat-mode-read-pre-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-flat-mode-on-command = [ + /* 120 Hz gir cmd_1,need sync te*/ + 39 00 00 00 00 00 02 2F 02 + 39 00 00 60 00 00 06 F0 55 AA 52 08 00 + 39 00 00 60 00 00 02 6F 09 + 39 00 00 60 00 00 02 C0 60 + 39 00 00 60 00 00 06 F0 55 AA 52 08 02 + 39 00 00 60 00 00 02 CC 30 + 39 00 00 60 00 00 02 CE 01 + 39 00 00 60 00 00 06 F0 55 AA 52 08 08 + 39 00 00 60 00 00 02 6F 07 + 39 00 00 20 14 00 05 B9 00 00 00 00 + ]; + /* */ + mi,mdss-dsi-flat-mode-on-command-update = <0xB9 9 4>; + + mi,mdss-dsi-flat-mode-on-sec-command = [ + /* 120 Hz gir cmd_2*/ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 CC 00 + ]; + mi,mdss-dsi-flat-mode-on-command-state = "dsi_lp_mode"; + mi,mdss-dsi-flat-mode-on-sec-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-flat-mode-off-command = [ + /* 120 Hz gir cmd_1,need sync te*/ + 39 00 00 00 00 00 02 2F 02 + 39 00 00 60 00 00 06 F0 55 AA 52 08 00 + 39 00 00 60 00 00 02 6F 09 + 39 00 00 60 00 00 02 C0 20 + 39 00 00 60 00 00 06 F0 55 AA 52 08 02 + 39 00 00 60 00 00 02 CC 30 + 39 00 00 60 00 00 02 CE 01 + 39 00 00 60 00 00 06 F0 55 AA 52 08 08 + 39 00 00 60 00 00 02 6F 07 + 39 00 00 20 14 00 05 B9 00 00 00 18 + ]; + + mi,mdss-dsi-flat-mode-off-sec-command = [ + /* 120 Hz gir cmd_2*/ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 CC 00 + ]; + mi,mdss-dsi-flat-mode-off-command-state = "dsi_lp_mode"; + mi,mdss-dsi-flat-mode-off-sec-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-doze-hbm-command = [ + /* 60 Hz */ + 39 00 00 00 00 00 02 2F 01 + 39 00 00 40 00 00 02 26 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 08 + 39 00 00 40 00 00 05 51 00 FC 0F FF + 39 00 00 00 00 00 02 39 00 + ]; + mi,mdss-dsi-doze-hbm-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-doze-lbm-command = [ + /* 60 Hz */ + 39 00 00 00 00 00 02 2F 01 + 39 00 00 40 00 00 02 26 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 08 + 39 00 00 40 00 00 05 51 00 14 01 55 + 39 00 00 00 00 00 02 39 00 + ]; + mi,mdss-dsi-doze-lbm-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-doze-hbm-nolp-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 40 00 00 05 51 00 FC 0F FF + 39 00 00 00 07 00 02 38 00 + 39 00 00 00 00 00 06 F0 55 AA 52 08 01 + 39 00 00 00 1B 00 05 BA 10 1A 10 1A + 39 00 00 00 00 00 05 BA 10 10 10 10 + /* 120 Hz */ + 39 00 00 00 00 00 02 2F 02 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 09 + 39 00 00 40 00 00 02 C0 20 + 39 00 00 40 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 CC 30 + 39 00 00 00 14 00 02 CE 01 + 39 00 00 00 00 00 02 CC 00 + ]; + mi,mdss-dsi-doze-hbm-nolp-command-state = "dsi_lp_mode"; + mi,mdss-dsi-doze-hbm-nolp-command-update = <0xB2 1 1>; + + mi,mdss-dsi-doze-lbm-nolp-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 40 00 00 05 51 00 14 0F FF + 39 00 00 00 07 00 02 38 00 + 39 00 00 00 00 00 06 F0 55 AA 52 08 01 + 39 00 00 00 1B 00 05 BA 10 1A 10 1A + 39 00 00 00 00 00 05 BA 10 10 10 10 + /* 120 Hz */ + 39 00 00 00 00 00 02 2F 02 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 09 + 39 00 00 40 00 00 02 C0 20 + 39 00 00 40 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 CC 30 + 39 00 00 00 14 00 02 CE 01 + 39 00 00 00 00 00 02 CC 00 + ]; + mi,mdss-dsi-doze-lbm-nolp-command-state = "dsi_lp_mode"; + mi,mdss-dsi-doze-lbm-nolp-command-update = <0xB2 1 1>; + + mi,mdss-dsi-local-hbm-white-1000nit-giron-pre-read-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 BF 39 + ]; + mi,mdss-dsi-local-hbm-white-1000nit-giron-pre-read-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-white-1000nit-giroff-pre-read-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 BF 19 + ]; + mi,mdss-dsi-local-hbm-white-1000nit-giroff-pre-read-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-normal-white-1000nit-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 6F 08 + /*FPR area RGB[11:0] setting*/ + 39 00 00 40 00 00 07 D0 0B 00 09 92 0B 0E + /*FPR center postion x[11:0], y[11:0]*/ + 39 00 00 40 00 00 05 88 02 1C 08 73 + /*alpha for AA*/ + 39 00 00 40 00 00 03 87 0F FF + 39 00 00 40 00 00 02 6F 02 + 39 00 00 00 1B 00 02 87 05 + ]; + mi,mdss-dsi-local-hbm-normal-white-1000nit-command-update = <0x87 4 2>, <0xD0 2 6>; + mi,mdss-dsi-local-hbm-normal-white-1000nit-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-hlpm-white-1000nit-command = [ + /* AOD off */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 40 00 00 05 51 00 FC 0F FF + 39 00 00 00 07 00 02 38 00 + 39 00 00 00 00 00 06 F0 55 AA 52 08 01 + 39 00 00 00 1B 00 05 BA 10 1A 10 1A + 39 00 00 00 00 00 05 BA 10 10 10 10 + /* 120 Hz */ + 39 00 00 00 00 00 02 2F 02 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 09 + 39 00 00 40 00 00 02 C0 20 + 39 00 00 40 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 CC 30 + 39 00 00 00 14 00 02 CE 01 + 39 00 00 00 00 00 02 CC 00 + /* Local HBM setting*/ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 6F 08 + /*FPR area RGB[11:0] setting*/ + 39 00 00 40 00 00 07 D0 0B 00 09 92 0B 0E + /*FPR center postion x[11:0], y[11:0]*/ + 39 00 00 40 00 00 05 88 02 1C 08 73 + /*alpha for AA*/ + 39 00 00 40 00 00 03 87 0F FF + 39 00 00 40 00 00 02 6F 02 + 39 00 00 00 1B 00 02 87 05 + ]; + mi,mdss-dsi-local-hbm-hlpm-white-1000nit-command-update = <0x51 2 2>, <0x87 19 2>, <0xD0 17 6>; + mi,mdss-dsi-local-hbm-hlpm-white-1000nit-command-b2-update = <0xB2 1 1>; + mi,mdss-dsi-local-hbm-hlpm-white-1000nit-command-state = "dsi_lp_mode"; + mi,mdss-dsi-local-hbm-white-110nit-giron-pre-read-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 BF 37 + ]; + mi,mdss-dsi-local-hbm-white-110nit-giron-pre-read-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-white-110nit-giroff-pre-read-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 BF 17 + ]; + mi,mdss-dsi-local-hbm-white-110nit-giroff-pre-read-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-normal-white-110nit-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 6F 08 + /*FPR area RGB[11:0] setting*/ + 39 00 00 40 00 00 07 D0 07 13 06 49 07 A4 + /*FPR center postion x[11:0], y[11:0]*/ + 39 00 00 40 00 00 05 88 02 1C 08 73 + /*alpha for AA*/ + 39 00 00 40 00 00 03 87 0F FF + 39 00 00 40 00 00 02 6F 02 + 39 00 00 00 1B 00 02 87 05 + ]; + mi,mdss-dsi-local-hbm-normal-white-110nit-command-update = <0x87 4 2>, <0xD0 2 6>; + mi,mdss-dsi-local-hbm-normal-white-110nit-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-hlpm-white-110nit-command = [ + /* AOD off */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 40 00 00 05 51 00 14 0F FF + 39 00 00 00 07 00 02 38 00 + 39 00 00 00 00 00 06 F0 55 AA 52 08 01 + 39 00 00 00 1B 00 05 BA 10 1A 10 1A + 39 00 00 00 00 00 05 BA 10 10 10 10 + /* 120 Hz */ + 39 00 00 00 00 00 02 2F 02 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 09 + 39 00 00 40 00 00 02 C0 20 + 39 00 00 40 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 CC 30 + 39 00 00 00 14 00 02 CE 01 + 39 00 00 00 00 00 02 CC 00 + /* Local HBM setting*/ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 6F 08 + /*FPR area RGB[11:0] setting*/ + 39 00 00 40 00 00 07 D0 07 13 06 49 07 A4 + /*FPR center postion x[11:0], y[11:0]*/ + 39 00 00 40 00 00 05 88 02 1C 08 73 + /*alpha for AA*/ + 39 00 00 40 00 00 03 87 0F FF + 39 00 00 40 00 00 02 6F 02 + 39 00 00 00 1B 00 02 87 05 + ]; + mi,mdss-dsi-local-hbm-hlpm-white-110nit-command-update = <0x51 2 2>, <0x87 19 2>, <0xD0 17 6>; + mi,mdss-dsi-local-hbm-hlpm-white-110nit-command-b2-update = <0xB2 1 1>; + mi,mdss-dsi-local-hbm-hlpm-white-110nit-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-normal-green-500nit-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 6F 08 + /*FPR area RGB[11:0] setting*/ + 39 00 00 40 00 00 07 D0 00 00 08 A8 00 00 + /*FPR center postion x[11:0], y[11:0]*/ + 39 00 00 40 00 00 05 88 02 1C 08 73 + /*alpha for AA*/ + 39 00 00 40 00 00 03 87 0F FF + 39 00 00 40 00 00 02 6F 02 + 39 00 00 00 1B 00 02 87 05 + ]; + /* */ + mi,mdss-dsi-local-hbm-normal-green-500nit-command-update = <0x87 4 2>; + mi,mdss-dsi-local-hbm-normal-green-500nit-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-off-to-normal-command = [ + 39 00 00 00 00 00 02 53 20 + 39 00 00 40 00 00 03 51 07 FF + 39 00 00 00 00 00 04 87 00 00 04 + ]; + mi,mdss-dsi-local-hbm-off-to-normal-command-update = <0x51 1 2>; + mi,mdss-dsi-local-hbm-off-to-normal-command-state = "dsi_hs_mode"; + + mi,mdss-dsi-local-hbm-off-to-hbm-command= [ + 39 00 00 00 00 00 02 53 20 + 39 00 00 40 00 00 03 51 07 FF + 39 00 00 00 00 00 04 87 00 00 04 + ]; + mi,mdss-dsi-local-hbm-off-to-hbm-command-update = <0x51 1 2>; + mi,mdss-dsi-local-hbm-off-to-hbm-command-state = "dsi_hs_mode"; + + mi,mdss-dsi-local-hbm-off-to-hlpm-command = [ + /*Lhbm off*/ + 39 00 00 00 00 00 02 53 20 + 39 00 00 40 00 00 03 51 00 00 + 39 00 00 00 00 00 04 87 00 00 04 + /*Aod hbm*/ + 39 00 00 00 00 00 02 2F 01 + 39 00 00 40 00 00 02 26 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 08 + 39 00 00 40 00 00 05 51 00 FC 0F FF + 39 00 00 00 00 00 02 39 00 + ]; + mi,mdss-dsi-local-hbm-off-to-hlpm-command-state = "dsi_hs_mode"; + + mi,mdss-dsi-local-hbm-off-to-llpm-command = [ + /*Lhbm off*/ + 39 00 00 00 00 00 02 53 20 + 39 00 00 40 00 00 03 51 00 00 + 39 00 00 00 00 00 04 87 00 00 04 + /*Aod lbm*/ + 39 00 00 00 00 00 02 2F 01 + 39 00 00 40 00 00 02 26 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 08 + 39 00 00 40 00 00 05 51 00 14 01 55 + 39 00 00 00 00 00 02 39 00 + ]; + mi,mdss-dsi-local-hbm-off-to-llpm-command-state = "dsi_hs_mode"; + + mi,mdss-dsi-round-corner-on-command = [ + /* Page 07 */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 07 + /* Round on */ + 39 00 00 00 00 00 03 C0 05 02 + ]; + mi,mdss-dsi-round-corner-on-command-state = "dsi_lp_mode"; + mi,mdss-dsi-round-corner-off-command = [ + /* Page 07 */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 07 + /* Round off */ + 39 00 00 00 00 00 03 C0 00 02 + ]; + mi,mdss-dsi-round-corner-off-command-state = "dsi_lp_mode"; + }; + + timing@2{ /* 90 hz */ + /**/ + mi,mdss-flat-status-control-gamma-cfg = <0x41 0x01>; + + mi,mdss-dsi-dimmingon-command = [39 00 00 00 00 00 02 53 28]; + mi,mdss-dsi-dimmingon-command-state = "dsi_hs_mode"; + mi,mdss-dsi-dimmingoff-command = [39 00 00 00 00 00 02 53 20]; + mi,mdss-dsi-dimmingoff-command-state = "dsi_hs_mode"; + + mi,mdss-dsi-dc-off-command = [ + /* Page 0 */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 40 00 00 02 6F 0F + 39 00 00 40 00 00 05 B2 30 20 81 47 + 39 00 00 00 00 00 25 B3 + 00 08 00 18 00 18 00 31 00 31 00 62 00 62 + 00 C0 00 C0 01 46 01 46 01 47 01 47 03 33 + 03 33 07 FF 07 FF 0F FF + /* Page 4 */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 04 + /* 60Hz normal Lut */ + 39 00 00 00 00 00 4C D2 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 + /* 120Hz normal Lut */ + 39 00 00 00 00 00 4C D4 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 00 00 00 00 00 00 00 00 00 + 00 00 00 00 00 + ]; + /* */ + mi,mdss-dsi-dc-off-command-update = <0xD2 6 75>, <0xD4 7 75>; + mi,mdss-dsi-dc-off-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-hbm-on-command = [ + 39 00 00 00 00 00 05 51 07 FF 00 00]; + mi,mdss-dsi-hbm-on-command-state = "dsi_lp_mode"; + mi,mdss-dsi-hbm-off-command = [ + 39 00 00 00 00 00 05 51 07 FF 00 00]; + mi,mdss-dsi-hbm-off-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-hbm-fod-on-command = [ + 39 00 00 00 00 00 05 51 0F FF 00 00]; + mi,mdss-dsi-hbm-fod-on-command-state = "dsi_lp_mode"; + mi,mdss-dsi-hbm-fod-off-command = [ + 39 00 00 00 00 00 05 51 07 FF 00 00]; + mi,mdss-dsi-hbm-fod-off-command-state = "dsi_lp_mode"; + mi,mdss-dsi-hbm-fod-off-command-update = <0x51 0 2>; + + mi,mdss-dsi-switch-page-command = [ + /* switch page, last byte is page config */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + ]; + /* */ + mi,mdss-dsi-switch-page-command-update = <0xF0 0 5>; + mi,mdss-dsi-switch-page-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-flat-mode-read-pre-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 00 00 00 02 6F 3F + ]; + mi,mdss-dsi-flat-mode-read-pre-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-flat-mode-on-command = [ + /* 90 Hz gir cmd_1,need sync te*/ + 39 00 00 00 00 00 02 2F 03 + 39 00 00 60 00 00 06 F0 55 AA 52 08 00 + 39 00 00 60 00 00 02 6F 0A + 39 00 00 60 00 00 02 C0 41 + 39 00 00 60 00 00 06 F0 55 AA 52 08 02 + 39 00 00 60 00 00 02 CC 30 + 39 00 00 60 00 00 02 CE 01 + 39 00 00 60 00 00 06 F0 55 AA 52 08 08 + 39 00 00 60 00 00 02 6F 07 + 39 00 00 20 14 00 05 B9 00 00 00 00 + ]; + /* */ + mi,mdss-dsi-flat-mode-on-command-update = <0xB9 9 4>; + + mi,mdss-dsi-flat-mode-on-sec-command = [ + /* 90 Hz gir cmd_2*/ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 CC 00 + ]; + mi,mdss-dsi-flat-mode-on-command-state = "dsi_lp_mode"; + mi,mdss-dsi-flat-mode-on-sec-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-flat-mode-off-command = [ + /* 90 Hz gir cmd_1,need sync te*/ + 39 00 00 00 00 00 02 2F 03 + 39 00 00 60 00 00 06 F0 55 AA 52 08 00 + 39 00 00 60 00 00 02 6F 0A + 39 00 00 60 00 00 02 C0 01 + 39 00 00 60 00 00 06 F0 55 AA 52 08 02 + 39 00 00 60 00 00 02 CC 30 + 39 00 00 60 00 00 02 CE 01 + 39 00 00 60 00 00 06 F0 55 AA 52 08 08 + 39 00 00 60 00 00 02 6F 07 + 39 00 00 20 14 00 05 B9 00 00 00 18 + ]; + + mi,mdss-dsi-flat-mode-off-sec-command = [ + /* 90 Hz gir cmd_2*/ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 CC 00 + ]; + mi,mdss-dsi-flat-mode-off-command-state = "dsi_lp_mode"; + mi,mdss-dsi-flat-mode-off-sec-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-doze-hbm-command = [ + /* 60 Hz */ + 39 00 00 00 00 00 02 2F 01 + 39 00 00 40 00 00 02 26 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 08 + 39 00 00 40 00 00 05 51 00 FC 0F FF + 39 00 00 00 00 00 02 39 00 + ]; + mi,mdss-dsi-doze-hbm-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-doze-lbm-command = [ + /* 60 Hz */ + 39 00 00 00 00 00 02 2F 01 + 39 00 00 40 00 00 02 26 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 08 + 39 00 00 40 00 00 05 51 00 14 01 55 + 39 00 00 00 00 00 02 39 00 + ]; + mi,mdss-dsi-doze-lbm-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-doze-hbm-nolp-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 40 00 00 05 51 00 FC 0F FF + 39 00 00 00 07 00 02 38 00 + 39 00 00 00 00 00 06 F0 55 AA 52 08 01 + 39 00 00 00 1B 00 05 BA 10 1A 10 1A + 39 00 00 00 00 00 05 BA 10 10 10 10 + /* 90 Hz */ + 39 00 00 00 00 00 02 2F 03 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 0A + 39 00 00 40 00 00 02 C0 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 CC 30 + 39 00 00 00 14 00 02 CE 01 + 39 00 00 00 00 00 02 CC 00 + ]; + mi,mdss-dsi-doze-hbm-nolp-command-state = "dsi_lp_mode"; + mi,mdss-dsi-doze-hbm-nolp-command-update = <0xB2 1 1>; + + mi,mdss-dsi-doze-lbm-nolp-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 40 00 00 05 51 00 14 0F FF + 39 00 00 00 07 00 02 38 00 + 39 00 00 00 00 00 06 F0 55 AA 52 08 01 + 39 00 00 00 1B 00 05 BA 10 1A 10 1A + 39 00 00 00 00 00 05 BA 10 10 10 10 + /* 90 Hz */ + 39 00 00 00 00 00 02 2F 03 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 0A + 39 00 00 40 00 00 02 C0 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 CC 30 + 39 00 00 00 14 00 02 CE 01 + 39 00 00 00 00 00 02 CC 00 + ]; + mi,mdss-dsi-doze-lbm-nolp-command-state = "dsi_lp_mode"; + mi,mdss-dsi-doze-lbm-nolp-command-update = <0xB2 1 1>; + + mi,mdss-dsi-local-hbm-white-1000nit-giron-pre-read-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 BF 39 + ]; + mi,mdss-dsi-local-hbm-white-1000nit-giron-pre-read-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-white-1000nit-giroff-pre-read-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 BF 19 + ]; + mi,mdss-dsi-local-hbm-white-1000nit-giroff-pre-read-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-normal-white-1000nit-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 6F 08 + /*FPR area RGB[11:0] setting*/ + 39 00 00 40 00 00 07 D0 0B 00 09 92 0B 0E + /*FPR center postion x[11:0], y[11:0]*/ + 39 00 00 40 00 00 05 88 02 1C 08 73 + /*alpha for AA*/ + 39 00 00 40 00 00 03 87 0F FF + 39 00 00 40 00 00 02 6F 02 + 39 00 00 00 23 00 02 87 05 + ]; + mi,mdss-dsi-local-hbm-normal-white-1000nit-command-update = <0x87 4 2>, <0xD0 2 6>; + mi,mdss-dsi-local-hbm-normal-white-1000nit-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-hlpm-white-1000nit-command = [ + /* AOD off */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 40 00 00 05 51 00 FC 0F FF + 39 00 00 00 07 00 02 38 00 + 39 00 00 00 00 00 06 F0 55 AA 52 08 01 + 39 00 00 00 1B 00 05 BA 10 1A 10 1A + 39 00 00 00 00 00 05 BA 10 10 10 10 + /* 90 Hz */ + 39 00 00 00 00 00 02 2F 03 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 0A + 39 00 00 40 00 00 02 C0 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 CC 30 + 39 00 00 00 14 00 02 CE 01 + 39 00 00 00 00 00 02 CC 00 + /* Local HBM setting*/ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 6F 08 + /*FPR area RGB[11:0] setting*/ + 39 00 00 40 00 00 07 D0 0B 00 09 92 0B 0E + /*FPR center postion x[11:0], y[11:0]*/ + 39 00 00 40 00 00 05 88 02 1C 08 73 + /*alpha for AA*/ + 39 00 00 40 00 00 03 87 0F FF + 39 00 00 40 00 00 02 6F 02 + 39 00 00 00 23 00 02 87 05 + ]; + mi,mdss-dsi-local-hbm-hlpm-white-1000nit-command-update = <0x51 2 2>, <0x87 19 2>, <0xD0 17 6>; + mi,mdss-dsi-local-hbm-hlpm-white-1000nit-command-b2-update = <0xB2 1 1>; + mi,mdss-dsi-local-hbm-hlpm-white-1000nit-command-state = "dsi_lp_mode"; + mi,mdss-dsi-local-hbm-white-110nit-giron-pre-read-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 BF 37 + ]; + mi,mdss-dsi-local-hbm-white-110nit-giron-pre-read-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-white-110nit-giroff-pre-read-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 00 00 00 02 BF 17 + ]; + mi,mdss-dsi-local-hbm-white-110nit-giroff-pre-read-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-normal-white-110nit-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 6F 08 + /*FPR area RGB[11:0] setting*/ + 39 00 00 40 00 00 07 D0 07 13 06 49 07 A4 + /*FPR center postion x[11:0], y[11:0]*/ + 39 00 00 40 00 00 05 88 02 1C 08 73 + /*alpha for AA*/ + 39 00 00 40 00 00 03 87 0F FF + 39 00 00 40 00 00 02 6F 02 + 39 00 00 00 23 00 02 87 05 + ]; + mi,mdss-dsi-local-hbm-normal-white-110nit-command-update = <0x87 4 2>, <0xD0 2 6>; + mi,mdss-dsi-local-hbm-normal-white-110nit-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-hlpm-white-110nit-command = [ + /* AOD off */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 18 + 39 00 00 40 00 00 05 51 00 14 0F FF + 39 00 00 00 07 00 02 38 00 + 39 00 00 00 00 00 06 F0 55 AA 52 08 01 + 39 00 00 00 1B 00 05 BA 10 1A 10 1A + 39 00 00 00 00 00 05 BA 10 10 10 10 + /* 90 Hz */ + 39 00 00 00 00 00 02 2F 03 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 6F 0A + 39 00 00 40 00 00 02 C0 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 CC 30 + 39 00 00 00 14 00 02 CE 01 + 39 00 00 00 00 00 02 CC 00 + /* Local HBM setting*/ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 6F 08 + /*FPR area RGB[11:0] setting*/ + 39 00 00 40 00 00 07 D0 07 13 06 49 07 A4 + /*FPR center postion x[11:0], y[11:0]*/ + 39 00 00 40 00 00 05 88 02 1C 08 73 + /*alpha for AA*/ + 39 00 00 40 00 00 03 87 0F FF + 39 00 00 40 00 00 02 6F 02 + 39 00 00 00 23 00 02 87 05 + ]; + mi,mdss-dsi-local-hbm-hlpm-white-110nit-command-update = <0x51 2 2>, <0x87 19 2>, <0xD0 17 6>; + mi,mdss-dsi-local-hbm-hlpm-white-110nit-command-b2-update = <0xB2 1 1>; + mi,mdss-dsi-local-hbm-hlpm-white-110nit-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-normal-green-500nit-command = [ + 39 00 00 00 00 00 06 F0 55 AA 52 08 02 + 39 00 00 40 00 00 02 6F 08 + /*FPR area RGB[11:0] setting*/ + 39 00 00 40 00 00 07 D0 00 00 08 A8 00 00 + /*FPR center postion x[11:0], y[11:0]*/ + 39 00 00 40 00 00 05 88 02 1C 08 73 + /*alpha for AA*/ + 39 00 00 40 00 00 03 87 0F FF + 39 00 00 40 00 00 02 6F 02 + 39 00 00 00 23 00 02 87 05 + ]; + /* */ + mi,mdss-dsi-local-hbm-normal-green-500nit-command-update = <0x87 4 2>; + mi,mdss-dsi-local-hbm-normal-green-500nit-command-state = "dsi_lp_mode"; + + mi,mdss-dsi-local-hbm-off-to-normal-command = [ + 39 00 00 00 00 00 02 53 20 + 39 00 00 40 00 00 03 51 07 FF + 39 00 00 00 00 00 04 87 00 00 04 + ]; + mi,mdss-dsi-local-hbm-off-to-normal-command-update = <0x51 1 2>; + mi,mdss-dsi-local-hbm-off-to-normal-command-state = "dsi_hs_mode"; + + mi,mdss-dsi-local-hbm-off-to-hbm-command= [ + 39 00 00 00 00 00 02 53 20 + 39 00 00 40 00 00 03 51 07 FF + 39 00 00 00 00 00 04 87 00 00 04 + ]; + mi,mdss-dsi-local-hbm-off-to-hbm-command-update = <0x51 1 2>; + mi,mdss-dsi-local-hbm-off-to-hbm-command-state = "dsi_hs_mode"; + + mi,mdss-dsi-local-hbm-off-to-hlpm-command = [ + /*Lhbm off*/ + 39 00 00 00 00 00 02 53 20 + 39 00 00 40 00 00 03 51 00 00 + 39 00 00 00 00 00 04 87 00 00 04 + /*Aod hbm*/ + 39 00 00 00 00 00 02 2F 01 + 39 00 00 40 00 00 02 26 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 08 + 39 00 00 40 00 00 05 51 00 FC 0F FF + 39 00 00 00 00 00 02 39 00 + ]; + mi,mdss-dsi-local-hbm-off-to-hlpm-command-state = "dsi_hs_mode"; + + mi,mdss-dsi-local-hbm-off-to-llpm-command = [ + /*Lhbm off*/ + 39 00 00 00 00 00 02 53 20 + 39 00 00 40 00 00 03 51 00 00 + 39 00 00 00 00 00 04 87 00 00 04 + /*Aod lbm*/ + 39 00 00 00 00 00 02 2F 01 + 39 00 00 40 00 00 02 26 01 + 39 00 00 40 00 00 06 F0 55 AA 52 08 00 + 39 00 00 40 00 00 02 B2 08 + 39 00 00 40 00 00 05 51 00 14 01 55 + 39 00 00 00 00 00 02 39 00 + ]; + mi,mdss-dsi-local-hbm-off-to-llpm-command-state = "dsi_hs_mode"; + + mi,mdss-dsi-round-corner-on-command = [ + /* Page 07 */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 07 + /* Round on */ + 39 00 00 00 00 00 03 C0 05 02 + ]; + mi,mdss-dsi-round-corner-on-command-state = "dsi_lp_mode"; + mi,mdss-dsi-round-corner-off-command = [ + /* Page 07 */ + 39 00 00 00 00 00 06 F0 55 AA 52 08 07 + /* Round off */ + 39 00 00 00 00 00 03 C0 00 02 + ]; + mi,mdss-dsi-round-corner-off-command-state = "dsi_lp_mode"; + }; + }; +}; +