arm/dts: display: add panel dtsi for rhode

add panel dtsi for rhode:
1.visionox rm692e5 6.55 inch v0 panel

Change-Id: I4177b8725fdcaec1e168ecb2a01159de4d24571c
Reviewed-on: https://gerrit.mot.com/2262795
SME-Granted: SME Approvals Granted
SLTApproved: Slta Waiver
Tested-by: Jira Key
Reviewed-by: Hua Tan <tanhua1@motorola.com>
Reviewed-by: <hqjiangy@motorola.com>
Submit-Approved: Jira Key
This commit is contained in:
hqjiangy authored and Carlos Pinho committed 2023-05-31 17:01:05 -03:00
1 parent ab43aada22
commit bbeeadcd82
3 files changed
+386 -1

No files matched your search

@@ -0,0 +1,340 @@
/* Copyright (c) 2019-2020, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
* only version 2 as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
&mdss_mdp {
mot_visionox_rm692e5_655_1080x2400_dsc_cmd_v0: qcom,mdss_dsi_mot_visionox_rm692e5_655_1080x2400_dsc_cmd_v0 {
compatible = "qcom,mdss-dsi-panel";
qcom,mdss-dsi-panel-name = "mipi_mot_cmd_visionox_1080p_dsc_655";
qcom,mdss-dsi-panel-supplier = "visionox";
qcom,mdss-dsi-panel-type = "dsi_cmd_mode";
qcom,mdss-dsi-virtual-channel-id = <0>;
qcom,mdss-dsi-stream = <0>;
qcom,mdss-pan-physical-width-dimension = <68>;
qcom,mdss-pan-physical-height-dimension = <152>;
qcom,mdss-dsi-bpp = <30>;
qcom,mdss-dsi-underflow-color = <0xff>;
qcom,mdss-dsi-border-color = <0>;
qcom,mdss-dsi-panel-param-verision = <121201>;
qcom,mdss-dsi-panel-param-num = <5>;
qcom,dsi-ctrl-num = <0>;
qcom,dsi-phy-num = <0>;
qcom,mdss-dsi-traffic-mode = "burst_mode";
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 = <0 11>, <1 1>, <0 1>, <1 32>;
qcom,mdss-dsi-lp11-init;
qcom,mdss-dsi-tx-eot-append;
qcom,mdss-dsi-te-pin-select = <1>;
qcom,mdss-dsi-te-dcs-command = <1>;
qcom,mdss-dsi-te-using-te-pin;
qcom,bklt-dcs-2bytes-enabled;
qcom,mdss-dsi-bl-min-level = <3>;
qcom,mdss-dsi-bl-max-level = <4095>;
qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs";
/*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-hbm-on-command = [
39 01 00 00 00 00 03 51 0F FF];
qcom,mdss-dsi-hbm-off-command = [
39 01 00 00 00 00 03 51 0D BA];
qcom,mdss-dsi-hbm-fod;
qcom,mdss-dsi-hbm-fod-on-command = [
39 01 00 00 00 00 03 51 0F FF];
//qcom,mdss-dsi-acl-on-command = [
// 39 01 00 00 00 00 06 F0 55 AA 52 08 00
// 15 00 00 00 00 00 02 B0 0C
// 15 01 00 00 00 00 02 55 05];
//qcom,mdss-dsi-acl-off-command = [
// 15 01 00 00 00 00 02 55 00];
qcom,mdss-dsi-dc-off-command = [
15 00 00 00 00 00 02 FE 40
15 00 00 00 00 00 02 BD 00
15 01 00 00 00 00 02 FE 00];
qcom,mdss-dsi-dc-off-command-state = "dsi_lp_mode";
qcom,mdss-dsi-dc-on-command = [
15 00 00 00 00 00 02 FE 40
15 00 00 00 00 00 02 BD 06
15 01 00 00 00 00 02 FE 00];
qcom,mdss-dsi-dc-on-command-state = "dsi_lp_mode";
qcom,mdss-dsi-display-timings {
timing@0{
qcom,mdss-dsi-cmd-mode;
qcom,mdss-dsi-panel-framerate = <48>;
qcom,mdss-dsi-panel-width = <1080>;
qcom,mdss-dsi-panel-height = <2400>;
qcom,mdss-dsi-h-front-porch = <28>;
qcom,mdss-dsi-h-back-porch = <36>;
qcom,mdss-dsi-h-pulse-width = <40>;
qcom,mdss-dsi-h-sync-skew = <0>;
qcom,mdss-dsi-h-sync-pulse = <0>;
qcom,mdss-dsi-v-back-porch = <14>;
qcom,mdss-dsi-v-front-porch = <16>;
qcom,mdss-dsi-v-pulse-width = <18>;
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 = <0x20 0xa>; /* 90fps +/- 2 */
qcom,mdss-dsi-timing-switch-command = [
15 01 00 00 00 00 02 FE 00
05 01 00 00 00 00 01 39 /*Aod on*/
];
qcom,mdss-dsi-on-command = [
39 01 00 00 00 00 02 FE 40
39 01 00 00 00 00 02 BD 00
15 01 00 00 00 00 02 FE A1
15 01 00 00 00 00 02 CD 6B
15 01 00 00 00 00 02 CE BB
15 01 00 00 00 00 02 FE 38
15 01 00 00 00 00 02 17 0F
15 01 00 00 00 00 02 18 0F
15 01 00 00 00 00 02 FE D1
15 01 00 00 00 00 02 B4 01
15 01 00 00 00 00 02 FE FD
15 01 00 00 00 00 02 80 F6
39 01 00 00 00 00 02 FE F2
39 01 00 00 00 00 02 00 9E
39 01 00 00 00 00 02 05 54
39 01 00 00 00 00 02 11 04
39 01 00 00 00 00 02 13 5A
39 01 00 00 00 00 02 14 B3
39 01 00 00 00 00 02 15 DF
39 01 00 00 00 00 02 36 00
39 01 00 00 00 00 02 37 00
39 01 00 00 00 00 02 1A 02
39 01 00 00 00 00 02 1B D0
39 01 00 00 00 00 02 80 00
39 01 00 00 00 00 02 FE 14
39 01 00 00 00 00 02 A2 01
39 01 00 00 00 00 02 51 80
15 01 00 00 00 00 02 FE 00
15 01 00 00 00 00 02 FA 01
15 01 00 00 00 00 02 C2 08
15 01 00 00 00 00 02 35 00
39 01 00 00 00 00 03 51 00 00
05 01 00 00 50 00 01 11
05 01 00 00 00 00 01 29
15 01 00 00 00 00 02 FE 00
05 01 00 00 00 00 01 39]; /* display on */
qcom,mdss-dsi-off-command = [
05 01 00 00 C8 00 01 28 /* display_off */
05 01 00 00 00 00 01 10]; /* enter sleep mode */
qcom,mdss-dsi-on-command-state = "dsi_lp_mode";
qcom,mdss-dsi-off-command-state = "dsi_lp_mode";
qcom,mdss-dsi-timing-switch-command-state =
"dsi_lp_mode";
qcom,compression-mode = "dsc";
/* Why QCOM doesn't use this, even it used 2 encoder
* as for that dsi_sw43404_amoled_cmd, for ex */
/* qcom,mdss-dsc-encoders = <2>; */
qcom,mdss-dsc-version = <0x11>;
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-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 = <28>;
qcom,mdss-dsi-h-back-porch = <36>;
qcom,mdss-dsi-h-pulse-width = <40>;
qcom,mdss-dsi-h-sync-skew = <0>;
qcom,mdss-dsi-h-sync-pulse = <0>;
qcom,mdss-dsi-v-back-porch = <14>;
qcom,mdss-dsi-v-front-porch = <16>;
qcom,mdss-dsi-v-pulse-width = <18>;
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 = <0x20 0xa>; /* 90fps +/- 2 */
qcom,mdss-dsi-timing-switch-command = [
15 01 00 00 00 00 02 FE 00
05 01 00 00 00 00 01 38 /*Aod off*/
39 01 00 00 00 00 02 FE 40
39 01 00 00 00 00 02 BD 00 //00:60Hz 05:90Hz
15 01 00 00 00 00 02 FE 00
];
qcom,mdss-dsi-on-command = [
39 01 00 00 00 00 02 FE 40
39 01 00 00 00 00 02 BD 00
15 01 00 00 00 00 02 FE A1
15 01 00 00 00 00 02 CD 6B
15 01 00 00 00 00 02 CE BB
15 01 00 00 00 00 02 FE 38
15 01 00 00 00 00 02 17 0F
15 01 00 00 00 00 02 18 0F
15 01 00 00 00 00 02 FE D1
15 01 00 00 00 00 02 B4 01
15 01 00 00 00 00 02 FE FD
15 01 00 00 00 00 02 80 F6
39 01 00 00 00 00 02 FE F2
39 01 00 00 00 00 02 00 9E
39 01 00 00 00 00 02 05 54
39 01 00 00 00 00 02 11 04
39 01 00 00 00 00 02 13 5A
39 01 00 00 00 00 02 14 B3
39 01 00 00 00 00 02 15 DF
39 01 00 00 00 00 02 36 00
39 01 00 00 00 00 02 37 00
39 01 00 00 00 00 02 1A 02
39 01 00 00 00 00 02 1B D0
39 01 00 00 00 00 02 80 00
39 01 00 00 00 00 02 FE 14
39 01 00 00 00 00 02 A2 01
39 01 00 00 00 00 02 51 80
15 01 00 00 00 00 02 FE 00
15 01 00 00 00 00 02 FA 01
15 01 00 00 00 00 02 C2 08
15 01 00 00 00 00 02 35 00
39 01 00 00 00 00 03 51 00 00
05 01 00 00 50 00 01 11
05 01 00 00 00 00 01 29]; /* display on */
qcom,mdss-dsi-off-command = [
05 01 00 00 C8 00 01 28 /* display_off */
05 01 00 00 00 00 01 10]; /* enter sleep mode */
qcom,mdss-dsi-on-command-state = "dsi_lp_mode";
qcom,mdss-dsi-off-command-state = "dsi_lp_mode";
qcom,mdss-dsi-timing-switch-command-state =
"dsi_lp_mode";
qcom,compression-mode = "dsc";
/* Why QCOM doesn't use this, even it used 2 encoder
* as for that dsi_sw43404_amoled_cmd, for ex */
/* qcom,mdss-dsc-encoders = <2>; */
qcom,mdss-dsc-version = <0x11>;
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@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 = <28>;
qcom,mdss-dsi-h-back-porch = <36>;
qcom,mdss-dsi-h-pulse-width = <40>;
qcom,mdss-dsi-h-sync-skew = <0>;
qcom,mdss-dsi-h-sync-pulse = <0>;
qcom,mdss-dsi-v-back-porch = <14>;
qcom,mdss-dsi-v-front-porch = <16>;
qcom,mdss-dsi-v-pulse-width = <18>;
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 = <0x20 0xa>; /* 90fps +/- 2 */
qcom,mdss-dsi-timing-switch-command = [
15 01 00 00 00 00 02 FE 00
05 01 00 00 00 00 01 38 /*Aod off*/
39 01 00 00 00 00 02 FE 40
39 01 00 00 00 00 02 BD 05 //00:60Hz 05:90Hz
15 01 00 00 00 00 02 FE 00
];
qcom,mdss-dsi-on-command = [
39 01 00 00 00 00 02 FE 40
39 01 00 00 00 00 02 BD 05
15 01 00 00 00 00 02 FE A1
15 01 00 00 00 00 02 CD 6B
15 01 00 00 00 00 02 CE BB
15 01 00 00 00 00 02 FE 38
15 01 00 00 00 00 02 17 0F
15 01 00 00 00 00 02 18 0F
15 01 00 00 00 00 02 FE D1
15 01 00 00 00 00 02 B4 01
15 01 00 00 00 00 02 FE FD
15 01 00 00 00 00 02 80 F6
39 01 00 00 00 00 02 FE F2
39 01 00 00 00 00 02 00 9E
39 01 00 00 00 00 02 05 54
39 01 00 00 00 00 02 11 04
39 01 00 00 00 00 02 13 5A
39 01 00 00 00 00 02 14 B3
39 01 00 00 00 00 02 15 DF
39 01 00 00 00 00 02 36 00
39 01 00 00 00 00 02 37 00
39 01 00 00 00 00 02 1A 02
39 01 00 00 00 00 02 1B D0
39 01 00 00 00 00 02 80 00
39 01 00 00 00 00 02 FE 14
39 01 00 00 00 00 02 A2 01
39 01 00 00 00 00 02 51 80
15 01 00 00 00 00 02 FE 00
15 01 00 00 00 00 02 FA 01
15 01 00 00 00 00 02 C2 08
15 01 00 00 00 00 02 35 00
39 01 00 00 00 00 03 51 00 00
05 01 00 00 50 00 01 11
05 01 00 00 00 00 01 29]; /* display on */
qcom,mdss-dsi-off-command = [
05 01 00 00 C8 00 01 28 /* display_off */
05 01 00 00 00 00 01 10]; /* enter sleep mode */
qcom,mdss-dsi-on-command-state = "dsi_lp_mode";
qcom,mdss-dsi-off-command-state = "dsi_lp_mode";
qcom,mdss-dsi-timing-switch-command-state =
"dsi_lp_mode";
qcom,compression-mode = "dsc";
/* Why QCOM doesn't use this, even it used 2 encoder
* as for that dsi_sw43404_amoled_cmd, for ex */
/* qcom,mdss-dsc-encoders = <2>; */
qcom,mdss-dsc-version = <0x11>;
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;
};
};
};
};
+44
View File
@@ -3,6 +3,7 @@
#include "dsi-panel-mot-csot-nt37701-655-1080x2400-dsc-cmd-common-v1.dtsi"
#include "dsi-panel-mot-csot-nt37701-655-1080x2400-dsc-cmd-common-v9.dtsi"
#include "dsi-panel-mot-tianma-nt37701-655-1080x2400-dsc-cmd-common.dtsi"
#include "dsi-panel-mot-visionox-rm692e5-655-1080x2400-dsc-cmd-common-v0.dtsi"
#include "dsi-panel-mot-tianma-nt37701-655-1080x2400-dsc-cmd-common-v1.dtsi"
#include "dsi-panel-mot-tianma-nt37701-655-1080x2400-dsc-cmd-common-v2.dtsi"
@@ -291,6 +292,49 @@
};
};
&mot_visionox_rm692e5_655_1080x2400_dsc_cmd_v0 {
qcom,esd-check-enabled;
qcom,mdss-dsi-panel-status-check-mode = "te_chk_reg_rd";
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,panel-supply-entries = <&dsi_panel_pwr_supply_amoled>;
qcom,mdss-dsi-no-panel-on-read-support;
qcom,mdss-dsi-reset-force-pull-low;
qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs";
qcom,mdss-dsi-bl-min-level = <9>;
qcom,mdss-dsi-bl-max-level = <3514>;
qcom,mdss-dsi-bl-default-level = <1757>;
qcom,mdss-brightness-max-level = <3514>;
qcom,platform-reset-gpio = <&tlmm 82 0>;
qcom,bl-dsc-cmd-state = "dsi_hs_mode";
qcom,dsi-select-clocks = "mux_byte_clk0", "mux_pixel_clk0";
qcom,mdss-dsi-display-timings {
timing@0 {
qcom,display-topology = <1 1 1>;
qcom,default-topology-index = <0>;
qcom,mdss-dsi-panel-phy-timings = [00 0E 03 03 11 1D 04
03 03 02 04 00 0D 08];
};
timing@1 {
qcom,display-topology = <1 1 1>;
qcom,default-topology-index = <0>;
qcom,mdss-dsi-panel-phy-timings = [00 11 03 04 12 1E 04
04 03 02 04 00 0E 09];
};
timing@2 {
qcom,display-topology = <1 1 1>;
qcom,default-topology-index = <0>;
qcom,mdss-dsi-panel-phy-timings = [00 16 05 05 14 1F 06
06 06 02 04 00 13 0B];
};
};
};
&mot_tm_nt37701_655_1080x2400_dsc_cmd_v1 {
qcom,esd-check-enabled;
qcom,mdss-dsi-panel-status-check-mode = "te_chk_reg_rd";
+2 -1
View File
@@ -90,7 +90,8 @@
&mot_csot_nt37701_655_1080x2400_dsc_cmd_v1
&mot_tm_nt37701_655_1080x2400_dsc_cmd_v0
&mot_tm_nt37701_655_1080x2400_dsc_cmd_v1
&mot_tm_nt37701_655_1080x2400_dsc_cmd_v2>;
&mot_tm_nt37701_655_1080x2400_dsc_cmd_v2
&mot_visionox_rm692e5_655_1080x2400_dsc_cmd_v0>;
pinctrl-names = "pmx_ts_active", "pmx_ts_suspend", "pmx_ts_release";
pinctrl-0 = <&ts_active>;
pinctrl-1 = <&ts_int_suspend &ts_reset_suspend>;