From 49bf4e2e94da6be79ad28700a3f8949791e91d5a Mon Sep 17 00:00:00 2001 From: hujing3 Date: Mon, 10 Jan 2022 16:01:49 +0800 Subject: [PATCH] kernel/dts:hawaii OLED:2nd:visionox rm692cx display driver bringup hawaii OLED: 2nd panel visionox rm692cx display driver bringup Change-Id: I18ff33aff64c0cae1e343d74b06ac99939834a75 Signed-off-by: hujing3 Reviewed-on: https://gerrit.mot.com/2166992 SME-Granted: SME Approvals Granted SLTApproved: Slta Waiver Tested-by: Jira Key Reviewed-by: Xiangpo Zhao Submit-Approved: Jira Key --- ...-rm692c9-ft3519-643-1080x2400-fhd-vid.dtsi | 158 ++++++++++++++++++ qcom/khaje-hawao-display.dtsi | 37 ++++ 2 files changed, 195 insertions(+) create mode 100644 qcom/dsi-panel-mot-visionox-rm692c9-ft3519-643-1080x2400-fhd-vid.dtsi diff --git a/qcom/dsi-panel-mot-visionox-rm692c9-ft3519-643-1080x2400-fhd-vid.dtsi b/qcom/dsi-panel-mot-visionox-rm692c9-ft3519-643-1080x2400-fhd-vid.dtsi new file mode 100644 index 000000000000..262a62d93b4a --- /dev/null +++ b/qcom/dsi-panel-mot-visionox-rm692c9-ft3519-643-1080x2400-fhd-vid.dtsi @@ -0,0 +1,158 @@ +&mdss_mdp { + dsi_rm692c9_visionox_ft3519_643_video: qcom,mdss_dsi_rm692c9_ft3519_643_visionox_video { + qcom,mdss-dsi-panel-name = + "mipi_mot_vid_visionoxrm_1080p_643"; + qcom,mdss-dsi-panel-type = "dsi_video_mode"; + qcom,mdss-dsi-panel-physical-type = "oled"; + qcom,dsi-ctrl-num = <0>; + qcom,dsi-phy-num = <0>; + qcom,mdss-dsi-virtual-channel-id = <0>; + qcom,mdss-dsi-stream = <0>; + qcom,mdss-dsi-bpp = <24>; + qcom,mdss-dsi-color-order = "rgb_swap_rgb"; + qcom,mdss-dsi-underflow-color = <0xff>; + qcom,mdss-dsi-border-color = <0>; + qcom,mdss-dsi-h-sync-pulse = <0>; + qcom,mdss-dsi-traffic-mode = "non_burst_sync_event"; + qcom,mdss-dsi-lane-map = "lane_map_0123"; + qcom,mdss-dsi-bllp-eof-power-mode; + qcom,mdss-dsi-bllp-power-mode; + qcom,mdss-dsi-tx-eot-append; + 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-lp11-init; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <255>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,mdss-dsi-reset-sequence = <0 3>, <1 5>, <0 3>, <1 5>; + qcom,mdss-pan-physical-width-dimension = <67>; + qcom,mdss-pan-physical-height-dimension = <149>; + + qcom,mdss-dsi-hbm-on-command = [ + 15 00 00 00 00 00 02 FE 00 + 39 00 00 00 00 00 03 51 0F FF + 15 00 00 00 00 00 02 FE 20 + 15 00 00 00 00 00 02 B8 08 + 15 00 00 00 00 00 02 B9 09 + 15 00 00 00 00 00 02 BA 09 + 15 01 00 00 00 00 02 FE 00]; + qcom,mdss-dsi-hbm-on-command-state = "dsi_lp_mode"; + qcom,mdss-dsi-hbm-off-command = [ + 15 00 00 00 00 00 02 FE 00 + 39 00 00 00 00 00 03 51 07 FF + 15 00 00 00 00 00 02 FE 20 + 15 00 00 00 00 00 02 B8 08 + 15 00 00 00 00 00 02 B9 09 + 15 00 00 00 00 00 02 BA 09 + 15 01 00 00 00 00 02 FE 00]; + qcom,mdss-dsi-hbm-off-command-state = "dsi_lp_mode"; + + qcom,mdss-dsi-brightness-1e-command = [ + 15 00 00 00 00 00 02 FE 20 + 15 00 00 00 00 00 02 B8 1D + 15 00 00 00 00 00 02 B9 1D + 15 00 00 00 00 00 02 BA 1D + 15 01 00 00 00 00 02 FE 00]; + qcom,mdss-dsi-brightness-1e-command-state = "dsi_lp_mode"; + + qcom,mdss-dsi-brightness-1fd-command = [ + 15 00 00 00 00 00 02 FE 20 + 15 00 00 00 00 00 02 B8 12 + 15 00 00 00 00 00 02 B9 12 + 15 00 00 00 00 00 02 BA 12 + 15 01 00 00 00 00 02 FE 00]; + qcom,mdss-dsi-brightness-1fd-command-state = "dsi_lp_mode"; + + qcom,mdss-dsi-brightness-2ff-command = [ + 15 00 00 00 00 00 02 FE 20 + 15 00 00 00 00 00 02 B8 0D + 15 00 00 00 00 00 02 B9 0D + 15 00 00 00 00 00 02 BA 0D + 15 01 00 00 00 00 02 FE 00]; + qcom,mdss-dsi-brightness-2ff-command-state = "dsi_lp_mode"; + + qcom,mdss-dsi-brightness-3ff-command = [ + 15 00 00 00 00 00 02 FE 20 + 15 00 00 00 00 00 02 B8 0B + 15 00 00 00 00 00 02 B9 0B + 15 00 00 00 00 00 02 BA 0B + 15 01 00 00 00 00 02 FE 00]; + qcom,mdss-dsi-brightness-3ff-command-state = "dsi_lp_mode"; + + qcom,mdss-dsi-brightness-4ff-command = [ + 15 00 00 00 00 00 02 FE 20 + 15 00 00 00 00 00 02 B8 0A + 15 00 00 00 00 00 02 B9 0A + 15 00 00 00 00 00 02 BA 0A + 15 01 00 00 00 00 02 FE 00]; + qcom,mdss-dsi-brightness-4ff-command-state = "dsi_lp_mode"; + + qcom,mdss-dsi-brightness-5ff-command = [ + 15 00 00 00 00 00 02 FE 20 + 15 00 00 00 00 00 02 B8 09 + 15 00 00 00 00 00 02 B9 09 + 15 00 00 00 00 00 02 BA 09 + 15 01 00 00 00 00 02 FE 00]; + qcom,mdss-dsi-brightness-5ff-command-state = "dsi_lp_mode"; + + qcom,mdss-dsi-brightness-fff-command = [ + 15 00 00 00 00 00 02 FE 20 + 15 00 00 00 00 00 02 B8 08 + 15 00 00 00 00 00 02 B9 09 + 15 00 00 00 00 00 02 BA 09 + 15 01 00 00 00 00 02 FE 00]; + qcom,mdss-dsi-brightness-fff-command-state = "dsi_lp_mode"; + + qcom,brightness-demura-command; + + qcom,mdss-dsi-display-timings { + timing@0 { + qcom,mdss-dsi-panel-width = <1080>; + qcom,mdss-dsi-panel-height = <2400>; + qcom,mdss-dsi-h-front-porch = <40>; + qcom,mdss-dsi-h-back-porch = <40>; + qcom,mdss-dsi-h-pulse-width = <2>; + qcom,mdss-dsi-h-sync-skew = <0>; + qcom,mdss-dsi-h-sync-pulse = <0>; + qcom,mdss-dsi-v-back-porch = <12>; + qcom,mdss-dsi-v-front-porch = <16>; + qcom,mdss-dsi-v-pulse-width = <4>; + qcom,mdss-dsi-panel-framerate = <60>; + 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-on-command = + [ + 15 00 00 00 00 00 02 FE 60 + 15 00 00 00 00 00 02 09 E0 + 15 00 00 00 00 00 02 0E 08 + 15 00 00 00 00 00 02 12 E0 + 15 00 00 00 00 00 02 17 07 + 15 00 00 00 00 00 02 20 10 + 15 00 00 00 00 00 02 29 0E + 15 00 00 00 00 00 02 FE 00 + 15 00 00 00 00 00 02 5E 01 + 15 00 00 00 00 00 02 C2 03 + 15 00 00 00 00 00 02 35 00 + 39 00 00 00 00 00 03 51 00 00 + 05 01 00 00 78 00 01 11 + 05 01 00 00 00 00 01 29 + ]; + qcom,mdss-dsi-off-command = [ + 15 00 00 00 00 00 02 FE 00 + 05 01 00 00 23 00 01 28 + 05 01 00 00 11 00 01 10 + 15 01 00 00 00 00 02 4F 01 + ]; + qcom,mdss-dsi-on-command-state = "dsi_lp_mode"; + qcom,mdss-dsi-off-command-state = "dsi_lp_mode"; + }; + }; + + }; +}; diff --git a/qcom/khaje-hawao-display.dtsi b/qcom/khaje-hawao-display.dtsi index c70c19df18a1..6f1f631bac57 100644 --- a/qcom/khaje-hawao-display.dtsi +++ b/qcom/khaje-hawao-display.dtsi @@ -1,4 +1,5 @@ #include "dsi-panel-mot-visionox-vtdr6110c-643-1080x2400-fhp-vid.dtsi" +#include "dsi-panel-mot-visionox-rm692c9-ft3519-643-1080x2400-fhd-vid.dtsi" #include "dsi-panel-mot-dummy-qhd-video.dtsi" &soc { @@ -43,6 +44,42 @@ }; }; +&dsi_rm692c9_visionox_ft3519_643_video { + qcom,platform-te-gpio = <&tlmm 81 0>; + qcom,platform-reset-gpio = <&tlmm 82 0>; + qcom,5v-boost-gpio = <&tlmm 3 0>; + + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_no_labibb>; + + qcom,mdss-dsi-bl-min-level = <16>; + qcom,mdss-dsi-bl-max-level = <2047>; + qcom,mdss-dsi-bl-default-level = <1023>; + qcom,mdss-brightness-max-level = <2047>; + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs"; + qcom,bklt-dcs-2bytes-enabled; + qcom,keep-regulators-on; + qcom,platform-reset-gpio-always-on; + + qcom,esd-check-enabled; + qcom,mdss-dsi-panel-status-check-mode = "reg_read"; + qcom,mdss-dsi-panel-status-command = [06 01 00 01 00 00 01 0a]; + qcom,mdss-dsi-panel-status-command-state = "dsi_hs_mode"; + qcom,mdss-dsi-panel-status-value = <0x9c>; + qcom,mdss-dsi-panel-status-read-length = <1>; + + qcom,dsi-select-clocks = "mux_byte_clk0", "mux_pixel_clk0"; + qcom,mdss-dsi-t-clk-post = <0x0E>; + qcom,mdss-dsi-t-clk-pre = <0x1D>; + qcom,mdss-dsi-display-timings { + timing@0 { + qcom,mdss-dsi-panel-phy-timings = [00 22 09 09 19 23 09 + 09 09 02 04 00 1D 0E]; + qcom,display-topology = <1 0 1>; + qcom,default-topology-index = <0>; + }; + }; +}; + &mot_dummy_vid_qhd { qcom,panel-supply-entries = <&dsi_panel_pwr_supply_no_labibb>; qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs";