diff --git a/qcom/dsi-panel-mot-tm-nt36672e-678-1080x2460-video-v1.dtsi b/qcom/dsi-panel-mot-tm-nt36672e-678-1080x2460-video-v1.dtsi new file mode 100644 index 000000000000..1428f791e616 --- /dev/null +++ b/qcom/dsi-panel-mot-tm-nt36672e-678-1080x2460-video-v1.dtsi @@ -0,0 +1,113 @@ +&mdss_mdp { + dsi_tm_nt36672e_678_fhdp_120_video_v1: qcom,mdss_dsi_tm_nt36672e_678_fhdp_120_video_v1 { + qcom,mdss-dsi-panel-name = + "mipi_mot_vid_tm_nt36672e_fhdp_678_120"; + qcom,mdss-dsi-panel-type = "dsi_video_mode"; + 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-border-color = <0>; + qcom,mdss-dsi-traffic-mode = "non_burst_sync_event"; + qcom,mdss-dsi-bllp-power-mode; + qcom,mdss-dsi-bllp-eof-power-mode; + qcom,mdss-dsi-lp11-init; + 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 10>, <0 2>, <1 10>; + qcom,mdss-dsi-tx-eot-append; + + qcom,mdss-pan-physical-width-dimension = <69>; + qcom,mdss-pan-physical-height-dimension = <158>; + + qcom,mdss-dsi-cabc-mv-command = [15 01 00 00 00 00 02 55 03]; + qcom,mdss-dsi-cabc-mv-command-state = "dsi_hs_mode"; + qcom,mdss-dsi-cabc-ui-command = [15 01 00 00 00 00 02 55 01]; + qcom,mdss-dsi-cabc-ui-command-state = "dsi_hs_mode"; + qcom,mdss-dsi-cabc-dis-command = [15 01 00 00 00 00 02 55 00]; + qcom,mdss-dsi-cabc-dis-command-state = "dsi_hs_mode"; + + qcom,mdss-dsi-display-timings { + timing@0 { + qcom,mdss-dsi-panel-width = <1080>; + qcom,mdss-dsi-panel-height = <2460>; + qcom,mdss-dsi-h-front-porch = <110>; + qcom,mdss-dsi-h-back-porch = <18>; + qcom,mdss-dsi-h-pulse-width = <4>; + qcom,mdss-dsi-h-sync-skew = <0>; + qcom,mdss-dsi-v-back-porch = <10>; + qcom,mdss-dsi-v-front-porch = <54>; + qcom,mdss-dsi-v-pulse-width = <10>; + qcom,mdss-dsi-panel-framerate = <120>; + qcom,mdss-dsi-on-command = [ + 29 01 00 00 00 00 02 FF 10 + 29 01 00 00 00 00 02 FB 01 + 29 01 00 00 00 00 02 36 00 + 29 01 00 00 00 00 06 3B 03 14 36 04 04 + 29 01 00 00 00 00 02 B0 00 + 29 01 00 00 00 00 02 C0 03 + 29 01 00 00 00 00 03 C2 1B A0 + 29 01 00 00 00 00 02 E9 01 + + 29 01 00 00 00 00 02 FF E0 + 29 01 00 00 00 00 02 FB 01 + 29 01 00 00 00 00 02 35 82 + 29 01 00 00 00 00 02 85 32 + + 29 01 00 00 00 00 02 FF F0 + 29 01 00 00 00 00 02 FB 01 + 29 01 00 00 00 00 02 1C 01 + 29 01 00 00 00 00 02 33 01 + 29 01 00 00 00 00 02 5A 00 + 29 01 00 00 00 00 02 9F 19 + + 29 01 00 00 00 00 02 FF D0 + 29 01 00 00 00 00 02 FB 01 + 29 01 00 00 00 00 02 53 22 + 29 01 00 00 00 00 02 54 02 + + 29 01 00 00 00 00 02 FF C0 + 29 01 00 00 00 00 02 FB 01 + 29 01 00 00 00 00 02 9C 11 + 29 01 00 00 00 00 02 9D 11 + + 29 01 00 00 00 00 02 FF 25 + 29 01 00 00 00 00 02 FB 01 + 29 01 00 00 00 00 02 0F 1B + 29 01 00 00 00 00 02 18 20 + + 15 01 00 00 00 00 02 FF 10 + 15 01 00 00 00 00 02 FB 01 + 29 01 00 00 00 00 02 C0 03 + 39 01 00 00 00 00 02 51 CC + 15 01 00 00 00 00 02 53 24 + 15 01 00 00 00 00 02 55 01 + + 05 01 00 00 65 00 01 11 + 05 01 00 00 29 00 01 29 + ]; + qcom,mdss-dsi-on-command-state = "dsi_lp_mode"; + + qcom,mdss-dsi-off-command = [ + 05 01 00 00 10 00 01 28 + 05 01 00 00 46 00 01 10 + ]; + qcom,mdss-dsi-off-command-state = "dsi_lp_mode"; + + qcom,compression-mode = "dsc"; + qcom,mdss-dsc-slice-height = <20>; + qcom,mdss-dsc-slice-width = <540>; + qcom,mdss-dsc-slice-per-pkt = <2>; + qcom,mdss-dsc-bit-per-component = <8>; + qcom,mdss-dsc-bit-per-pixel = <8>; + qcom,mdss-dsc-block-prediction-enable; + + }; + }; + }; +}; diff --git a/qcom/milanf-display.dtsi b/qcom/milanf-display.dtsi index 706dcebe9b0a..164abe2303b3 100644 --- a/qcom/milanf-display.dtsi +++ b/qcom/milanf-display.dtsi @@ -1,6 +1,7 @@ #include "dsi-panel-mot-dummy-qhd-video.dtsi" #include "dsi-panel-mot-tm-nt36672e-678-1080x2460-video.dtsi" #include "dsi-panel-mot-csot-nt36672e-678-1080x2460-video.dtsi" +#include "dsi-panel-mot-tm-nt36672e-678-1080x2460-video-v1.dtsi" &display_panel_avdd { /delete-property/ gpio; @@ -227,6 +228,52 @@ }; }; + +&dsi_tm_nt36672e_678_fhdp_120_video_v1 { + qcom,platform-te-gpio = <&tlmm 23 0>; + qcom,platform-reset-gpio = <&pmr735a_gpios 2 0>; + + qcom,panel-supply-entries = <&dsi_panel_pwr_supply_ext_bias>; + + qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_i2c"; + qcom,mdss-dsi-bl-min-level = <1>; + qcom,mdss-dsi-bl-max-level = <2047>; + qcom,mdss-dsi-bl-default-level = <1024>; + qcom,mdss-brightness-max-level = <2047>; + + qcom,dsi-supported-dfps-list = <120 90 60>; + qcom,mdss-dsi-pan-enable-dynamic-fps; + qcom,mdss-dsi-pan-fps-update = "dfps_immediate_porch_mode_vfp"; + + 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_lp_mode"; + qcom,mdss-dsi-panel-status-value = <0x9c>; + qcom,mdss-dsi-panel-status-read-length = <1>; + qcom,mdss-dsi-no-panel-on-read-support; + qcom,mdss-dsi-panel-supplier = "tm"; + + qcom,tp_state_check_enable; + + qcom,mdss-dsi-hbm-on-command = [39 01 00 00 00 00 02 51 FF]; + qcom,mdss-dsi-hbm-on-command-state = "dsi_lp_mode"; + qcom,mdss-dsi-hbm-off-command = [39 01 00 00 00 00 02 51 CC]; + qcom,mdss-dsi-hbm-off-command-state = "dsi_lp_mode"; + qcom,mdss-dsi-hbm-type = "lcd-dcs-wled"; + + qcom,dsi-select-clocks = "mux_byte_clk0", "mux_pixel_clk0"; + + qcom,mdss-dsi-display-timings { + timing@0 { + qcom,mdss-dsi-panel-phy-timings = [00 1A 07 06 22 21 07 + 07 07 02 04 00 1A 0C]; + qcom,display-topology = <1 1 1>; + qcom,default-topology-index = <0>; + }; + }; +}; + &qupv3_se10_i2c { status = "ok";