ARM: dts: msm: add 90hz video and cmd mode panel for holi

Add 90hz video and cmd mode for r66451 panel.

Change-Id: Ie80d6118e431687c7f10341c0d44a6120b349742
This commit is contained in:
Zhao, Yuan 2020-09-10 13:26:24 +08:00 • committed by Gerrit - the friendly Code Review server
commit 22421eae87
5 changed files with 406 additions and 0 deletions

View file

@ -0,0 +1,247 @@
&mdss_mdp {
dsi_r66451_amoled_90hz_cmd: qcom,mdss_dsi_r66451_fhd_plus_90hz_cmd {
qcom,mdss-dsi-panel-name =
"r66451 amoled cmd mode dsi visionox panel with DSC";
qcom,mdss-dsi-panel-type = "dsi_cmd_mode";
qcom,mdss-dsi-panel-physical-type = "oled";
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,dsi-ctrl-num = <0>;
qcom,dsi-phy-num = <0>;
qcom,dsi-sec-ctrl-num = <1>;
qcom,dsi-sec-phy-num = <1>;
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-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 10>, <1 10>;
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-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-display-timings {
timing@0 {
qcom,mdss-dsi-panel-framerate = <60>;
qcom,mdss-dsi-panel-width = <1080>;
qcom,mdss-dsi-panel-height = <2340>;
qcom,mdss-dsi-h-front-porch = <95>;
qcom,mdss-dsi-h-back-porch = <40>;
qcom,mdss-dsi-h-pulse-width = <1>;
qcom,mdss-dsi-h-sync-skew = <0>;
qcom,mdss-dsi-v-back-porch = <4>;
qcom,mdss-dsi-v-front-porch = <25>;
qcom,mdss-dsi-v-pulse-width = <1>;
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-jitter = <0x4 0x1>;
qcom,mdss-dsi-timing-switch-command = [
39 01 00 00 00 00 02 b0 00
39 01 00 00 00 00 1a c2 09 24 0c 00 00
0c 09 3c 00 09 3c 00 00 00 00 00 00
00 00 00 00 00 30 00 6c
];
qcom,mdss-dsi-on-command = [
39 01 00 00 00 00 02 b0 00
39 01 00 00 00 00 0c c2 09 24 0c 00 00
0c 00 00 00 09 3c
39 01 00 00 00 00 1a d7 00 b9 3c 00 40
04 00 a0 0a 00 40 00 00 00 00 00 00
19 3c 00 40 04 00 a0 0a
39 01 00 00 00 00 02 b0 80
39 01 00 00 00 00 14 de 40 00 18 00 18
00 18 00 18 10 00 18 00 18 00 18 02
00 00
39 01 00 00 00 00 02 b0 04
39 01 00 00 00 00 03 e8 00 02
39 01 00 00 00 00 03 e4 00 08
39 01 00 00 00 00 02 b0 00
39 01 00 00 00 00 11 c4 00 00 00 00
00 00 00 00 00 00 00 02 00 00 00 32
39 01 00 00 00 00 19 cf 64 0b 00 00 00
00 00 00 08 00 0b 77 01 01 01 01 01
01 02 02 02 02 02 03
39 01 00 00 00 00 15 d3 45 00 00 01 13
15 00 15 07 0f 77 77 77 37 b2 11 00
a0 3c 9c
39 01 00 00 00 00 1a d7 00 b9 34 00 40
04 00 a0 0a 00 40 00 00 00 00 00 00
19 34 00 40 04 00 a0 0a
39 01 00 00 00 00 34 d8 00 00 00 00 00
00 00 00 00 3a 00 3a 00 3a 00 3a 00
3a 05 00 00 00 00 00 00 00 00 00 0a
00 0a 00 00 00 00 00 00 00 00 00 00
00 00 00 0a 00 32 00 0a 00 22
39 01 00 00 00 00 2b df 50 42 58 81 2d
00 00 00 00 00 00 6b 00 00 00 00 00
00 00 00 01 0f ff d4 0e 00 00 00 00
00 00 0f 53 f1 00 00 00 00 00 00 00
00
39 01 00 00 00 00 02 f7 01
39 01 00 00 00 00 02 b0 80
39 01 00 00 00 00 0a e4 34 b4 00 00 00
39 04 09 34
39 01 00 00 00 00 02 e6 00
39 01 00 00 00 00 02 b0 04
39 01 00 00 00 00 03 df 50 40
39 01 00 00 00 00 06 f3 50 00 00 00 00
39 01 00 00 00 00 02 f2 11
39 01 00 00 00 00 06 f3 01 00 00 00 01
39 01 00 00 00 00 03 f4 00 02
39 01 00 00 00 00 02 f2 19
39 01 00 00 00 00 03 df 50 42
39 01 00 00 00 00 02 35 00
39 01 00 00 00 00 05 2a 00 00 04 37
39 01 00 00 00 00 05 2b 00 00 09 23
05 01 00 00 78 00 01 11
05 01 00 00 14 00 01 29
39 01 00 00 00 00 02 b0 00
39 01 00 00 00 00 1a c2 09 24 0c 00 00
0c 09 3c 00 09 3c 00 00 00 00 00 00
00 00 00 00 00 30 00 6c
];
qcom,mdss-dsi-off-command = [
05 01 00 00 14 00 02 28 00
05 01 00 00 78 00 02 10 00];
qcom,mdss-dsi-on-command-state = "dsi_lp_mode";
qcom,mdss-dsi-off-command-state = "dsi_hs_mode";
qcom,mdss-dsi-timing-switch-command-state =
"dsi_lp_mode";
qcom,mdss-dsi-h-sync-pulse = <0>;
qcom,compression-mode = "dsc";
qcom,mdss-dsc-slice-height = <20>;
qcom,mdss-dsc-slice-width = <540>;
qcom,mdss-dsc-slice-per-pkt = <1>;
qcom,mdss-dsc-bit-per-component = <8>;
qcom,mdss-dsc-bit-per-pixel = <8>;
qcom,mdss-dsc-block-prediction-enable;
};
timing@1 {
qcom,mdss-dsi-panel-framerate = <90>;
qcom,mdss-dsi-panel-width = <1080>;
qcom,mdss-dsi-panel-height = <2340>;
qcom,mdss-dsi-h-front-porch = <95>;
qcom,mdss-dsi-h-back-porch = <40>;
qcom,mdss-dsi-h-pulse-width = <1>;
qcom,mdss-dsi-h-sync-skew = <0>;
qcom,mdss-dsi-v-back-porch = <4>;
qcom,mdss-dsi-v-front-porch = <25>;
qcom,mdss-dsi-v-pulse-width = <1>;
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-jitter = <0x4 0x1>;
qcom,mdss-dsi-timing-switch-command = [
39 01 00 00 00 00 02 b0 00
39 01 00 00 00 00 1a c2 09 24 0c 00 00
0c 03 14 00 09 3c 00 00 00 00 00 00
00 00 00 00 00 30 00 6c
];
qcom,mdss-dsi-on-command = [
39 01 00 00 00 00 02 b0 00
39 01 00 00 00 00 0c c2 09 24 0c 00 00
0c 00 00 00 09 3c
39 01 00 00 00 00 1a d7 00 b9 3c 00 40
04 00 a0 0a 00 40 00 00 00 00 00 00
19 3c 00 40 04 00 a0 0a
39 01 00 00 00 00 02 b0 80
39 01 00 00 00 00 14 de 40 00 18 00 18
00 18 00 18 10 00 18 00 18 00 18 02
00 00
39 01 00 00 00 00 02 b0 04
39 01 00 00 00 00 03 e8 00 02
39 01 00 00 00 00 03 e4 00 08
39 01 00 00 00 00 02 b0 00
39 01 00 00 00 00 11 c4 00 00 00 00
00 00 00 00 00 00 00 02 00 00 00 32
39 01 00 00 00 00 19 cf 64 0b 00 00 00
00 00 00 08 00 0b 77 01 01 01 01 01
01 02 02 02 02 02 03
39 01 00 00 00 00 15 d3 45 00 00 01 13
15 00 15 07 0f 77 77 77 37 b2 11 00
a0 3c 9c
39 01 00 00 00 00 1a d7 00 b9 34 00 40
04 00 a0 0a 00 40 00 00 00 00 00 00
19 34 00 40 04 00 a0 0a
39 01 00 00 00 00 34 d8 00 00 00 00 00
00 00 00 00 3a 00 3a 00 3a 00 3a 00
3a 05 00 00 00 00 00 00 00 00 00 0a
00 0a 00 00 00 00 00 00 00 00 00 00
00 00 00 0a 00 32 00 0a 00 22
39 01 00 00 00 00 2b df 50 42 58 81 2d
00 00 00 00 00 00 6b 00 00 00 00 00
00 00 00 01 0f ff d4 0e 00 00 00 00
00 00 0f 53 f1 00 00 00 00 00 00 00
00
39 01 00 00 00 00 02 f7 01
39 01 00 00 00 00 02 b0 80
39 01 00 00 00 00 0a e4 34 b4 00 00 00
39 04 09 34
39 01 00 00 00 00 02 e6 00
39 01 00 00 00 00 02 b0 04
39 01 00 00 00 00 03 df 50 40
39 01 00 00 00 00 06 f3 50 00 00 00 00
39 01 00 00 00 00 02 f2 11
39 01 00 00 00 00 06 f3 01 00 00 00 01
39 01 00 00 00 00 03 f4 00 02
39 01 00 00 00 00 02 f2 19
39 01 00 00 00 00 03 df 50 42
39 01 00 00 00 00 02 35 00
39 01 00 00 00 00 05 2a 00 00 04 37
39 01 00 00 00 00 05 2b 00 00 09 23
05 01 00 00 78 00 01 11
05 01 00 00 14 00 01 29
39 01 00 00 00 00 02 b0 00
39 01 00 00 00 00 1a c2 09 24 0c 00 00
0c 03 14 00 09 3c 00 00 00 00 00 00
00 00 00 00 00 30 00 6c
];
qcom,mdss-dsi-off-command = [
05 01 00 00 14 00 02 28 00
05 01 00 00 78 00 02 10 00];
qcom,mdss-dsi-on-command-state = "dsi_lp_mode";
qcom,mdss-dsi-off-command-state = "dsi_hs_mode";
qcom,mdss-dsi-timing-switch-command-state =
"dsi_lp_mode";
qcom,mdss-dsi-h-sync-pulse = <0>;
qcom,compression-mode = "dsc";
qcom,mdss-dsc-slice-height = <20>;
qcom,mdss-dsc-slice-width = <540>;
qcom,mdss-dsc-slice-per-pkt = <1>;
qcom,mdss-dsc-bit-per-component = <8>;
qcom,mdss-dsc-bit-per-pixel = <8>;
qcom,mdss-dsc-block-prediction-enable;
};
};
};
};

View file

@ -0,0 +1,83 @@
&mdss_mdp {
dsi_r66451_amoled_90hz_video: qcom,mdss_dsi_r66451_fhd_plus_90hz_video {
qcom,mdss-dsi-panel-name =
"r66451 amoled video mode dsi visionox panel with DSC";
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-border-color = <0>;
qcom,mdss-dsi-traffic-mode = "non_burst_sync_event";
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 10>, <0 10>, <1 10>;
qcom,adjust-timer-wakeup-ms = <1>;
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-display-timings {
timing@0 {
qcom,mdss-dsi-panel-width = <1080>;
qcom,mdss-dsi-panel-height = <2340>;
qcom,mdss-dsi-h-front-porch = <95>;
qcom,mdss-dsi-h-back-porch = <40>;
qcom,mdss-dsi-h-pulse-width = <1>;
qcom,mdss-dsi-h-sync-skew = <0>;
qcom,mdss-dsi-v-back-porch = <4>;
qcom,mdss-dsi-v-front-porch = <25>;
qcom,mdss-dsi-v-pulse-width = <1>;
qcom,mdss-dsi-panel-framerate = <90>;
qcom,mdss-dsi-on-command = [
39 01 00 00 00 00 02 b0 00
39 01 00 00 00 00 02 b3 01
39 01 00 00 00 00 02 b0 80
39 01 00 00 00 00 02 e6 00
39 01 00 00 00 00 02 b0 00
39 01 00 00 00 00 19 cf 64 0b 00 00 00
00 00 00 08 00 0b 77 01 01 01 01 01
01 04 04 04 04 04 05
39 01 00 00 00 00 02 b0 04
39 01 00 00 00 00 02 f7 01
39 01 00 00 00 00 03 df 50 40
39 01 00 00 00 00 06 f3 50 00 00 00 00
39 01 00 00 00 00 02 f2 11
39 01 00 00 00 00 06 f3 01 00 00 00 01
39 01 00 00 00 00 03 f4 00 02
39 01 00 00 00 00 02 f2 19
39 01 00 00 00 00 03 df 50 42
39 01 00 00 00 00 02 35 00
39 01 00 00 00 00 05 2a 00 00 04 37
39 01 00 00 00 00 05 2b 00 00 09 23
05 01 00 00 78 00 01 11
05 01 00 00 00 00 01 29
];
qcom,mdss-dsi-off-command = [
05 01 00 00 14 00 02 28 00
05 01 00 00 78 00 02 10 00];
qcom,mdss-dsi-on-command-state = "dsi_lp_mode";
qcom,mdss-dsi-off-command-state = "dsi_hs_mode";
qcom,mdss-dsi-h-sync-pulse = <0>;
qcom,compression-mode = "dsc";
qcom,mdss-dsc-slice-height = <20>;
qcom,mdss-dsc-slice-width = <540>;
qcom,mdss-dsc-slice-per-pkt = <1>;
qcom,mdss-dsc-bit-per-component = <8>;
qcom,mdss-dsc-bit-per-pixel = <8>;
qcom,mdss-dsc-block-prediction-enable;
};
};
};
};

View file

@ -3,6 +3,8 @@
#include "dsi-panel-rm69299-visionox-fhd-plus-cmd.dtsi"
#include "dsi-panel-r66451-dsc-fhd-plus-cmd.dtsi"
#include "dsi-panel-r66451-dsc-fhd-plus-video.dtsi"
#include "dsi-panel-r66451-dsc-fhd-plus-90hz-cmd.dtsi"
#include "dsi-panel-r66451-dsc-fhd-plus-90hz-video.dtsi"
#include <dt-bindings/clock/mdss-10nm-pll-clk.h>
&soc {
@ -155,3 +157,38 @@
};
};
};
&dsi_r66451_amoled_90hz_cmd {
qcom,dsi-select-clocks = "mux_byte_clk0", "mux_pixel_clk0";
qcom,mdss-dsi-t-clk-post = <0x0A>;
qcom,mdss-dsi-t-clk-pre = <0x1D>;
qcom,mdss-dsi-display-timings {
timing@0 {
qcom,mdss-dsi-panel-phy-timings = [00 10 04 04 1E 1E 04
04 03 02 04 00];
qcom,display-topology = <1 1 1>;
qcom,default-topology-index = <0>;
};
timing@1 {
qcom,mdss-dsi-panel-phy-timings = [00 16 06 05 20 1F 06
06 06 02 04 00];
qcom,display-topology = <1 1 1>;
qcom,default-topology-index = <0>;
};
};
};
&dsi_r66451_amoled_90hz_video {
qcom,dsi-select-clocks = "mux_byte_clk0", "mux_pixel_clk0";
qcom,mdss-dsi-t-clk-post = <0x0B>;
qcom,mdss-dsi-t-clk-pre = <0x27>;
qcom,mdss-dsi-display-timings {
timing@0 {
qcom,mdss-dsi-panel-phy-timings = [00 16 06 05 20 1F 06
06 06 02 04 00];
qcom,display-topology = <1 1 1>;
qcom,default-topology-index = <0>;
};
};
};

View file

@ -20,6 +20,26 @@
qcom,platform-reset-gpio = <&pm6150l_gpios 9 0>;
};
&dsi_r66451_amoled_90hz_cmd {
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 = <255>;
qcom,mdss-dsi-bl-max-level = <4095>;
qcom,mdss-dsi-bl-inverted-dbv;
qcom,platform-reset-gpio = <&pm6150l_gpios 9 0>;
};
&dsi_r66451_amoled_90hz_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 = <255>;
qcom,mdss-dsi-bl-inverted-dbv;
qcom,mdss-dsi-bl-max-level = <4095>;
qcom,platform-reset-gpio = <&pm6150l_gpios 9 0>;
};
&dsi_sim_vid {
qcom,panel-supply-entries = <&dsi_panel_pwr_supply>;
qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs";

View file

@ -80,3 +80,22 @@
qcom,mdss-dsi-panel-status-value = <0x1c>;
qcom,mdss-dsi-panel-status-read-length = <1>;
};
&dsi_r66451_amoled_90hz_cmd {
qcom,ulps-enabled;
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 = <0x1c>;
qcom,mdss-dsi-panel-status-read-length = <1>;
};
&dsi_r66451_amoled_90hz_video {
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 = <0x1c>;
qcom,mdss-dsi-panel-status-read-length = <1>;
};