public inbox for devicetree@vger.kernel.org
 help / color / mirror / Atom feed
From: yuanjiey <yuanjie.yang@oss.qualcomm.com>
To: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Cc: Jingyi Wang <jingyi.wang@oss.qualcomm.com>,
	Bjorn Andersson <andersson@kernel.org>,
	Konrad Dybcio <konradybcio@kernel.org>,
	Rob Herring <robh@kernel.org>,
	Krzysztof Kozlowski <krzk+dt@kernel.org>,
	Conor Dooley <conor+dt@kernel.org>,
	aiqun.yu@oss.qualcomm.com, tingwei.zhang@oss.qualcomm.com,
	trilok.soni@oss.qualcomm.com, yijie.yang@oss.qualcomm.com,
	linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	20260224-knp-dts-misc-v6-0-79d20dab8a60@oss.qualcomm.com
Subject: Re: [PATCH 6/6] arm64: dts: qcom: kaanapali-mtp: Enable display DSI devices
Date: Thu, 26 Mar 2026 11:13:46 +0800	[thread overview]
Message-ID: <acSkaneJtwLwNgiA@yuanjiey.ap.qualcomm.com> (raw)
In-Reply-To: <d63azyfpltbsicmmv6xjz2myttfkcwalm6akhbgk54i7udi2pe@mbztt2kz7r7s>

On Tue, Mar 24, 2026 at 03:25:49AM +0200, Dmitry Baryshkov wrote:
> On Sun, Mar 22, 2026 at 11:19:46PM -0700, Jingyi Wang wrote:
> > From: Yuanjie Yang <yuanjie.yang@oss.qualcomm.com>
> > 
> > Enable MDSS/DPU/DSI0 and add Novatek NT37801 panel on Kaanapali MTP
> > board.
> > 
> > NT37801 Spec V1.0 chapter "5.7.1 Power On Sequence" states VDDI ranges
> > 1.65V~1.95V, but ldo12 ranges 1.2V~1.8V, so change ldo12 range to
> > 1.65V~1.8V.
> > 
> > pmh0110_d_e0_gpios and pmh0110_f_e0_gpios are configured for
> > level shifters. Kaanapali need configure these pinctrl for panel
> > function.
> > 
> > Signed-off-by: Yuanjie Yang <yuanjie.yang@oss.qualcomm.com>
> > Signed-off-by: Jingyi Wang <jingyi.wang@oss.qualcomm.com>
> > ---
> >  arch/arm64/boot/dts/qcom/kaanapali-mtp.dts | 118 ++++++++++++++++++++++++++++-
> >  1 file changed, 117 insertions(+), 1 deletion(-)
> > 
> > diff --git a/arch/arm64/boot/dts/qcom/kaanapali-mtp.dts b/arch/arm64/boot/dts/qcom/kaanapali-mtp.dts
> > index d0f3909621c9..07247dc98b70 100644
> > --- a/arch/arm64/boot/dts/qcom/kaanapali-mtp.dts
> > +++ b/arch/arm64/boot/dts/qcom/kaanapali-mtp.dts
> > @@ -375,7 +375,7 @@ vreg_l11b_1p0: ldo11 {
> >  
> >  		vreg_l12b_1p8: ldo12 {
> >  			regulator-name = "vreg_l12b_1p8";
> > -			regulator-min-microvolt = <1200000>;
> > +			regulator-min-microvolt = <1650000>;
> 
> Separate commit, Fixes tag.
> 
> >  			regulator-max-microvolt = <1800000>;
> >  			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
> >  			regulator-allow-set-load;
> > @@ -873,6 +873,51 @@ &lpass_vamacro {
> >  	qcom,dmic-sample-rate = <4800000>;
> >  };
> >  
> > +&mdss {
> > +	status = "okay";
> > +};
> > +
> > +&mdss_dsi0 {
> > +	vdda-supply = <&vreg_l1d_1p2>;
> > +	status = "okay";
> > +
> > +	panel@0 {
> > +		compatible = "novatek,nt37801";
> > +		reg = <0>;
> > +
> > +		pinctrl-0 = <&sde_dsi_active &sde_te_active &sde_esync0_suspend
> 
> Why is this esync0_suspend?

I check downstream sde_esync0_suspend and sde_esync0_active is same config in kaanapali,
maybe I need rename a proper name for these pinctrl.

 
> > +			     &sde_mdp_vsync_p_1p2_active &sde_mdp_vsync_p_1p8_active
> > +			     &sde_disp0_rst_1p2_active &sde_disp0_rst_1p8_active>;
> > +		pinctrl-1 = <&sde_dsi_suspend &sde_te_suspend &sde_esync0_suspend
> > +			     &sde_mdp_vsync_p_1p2_active &sde_mdp_vsync_p_1p8_active
> > +			     &sde_disp0_rst_1p2_active &sde_disp0_rst_1p8_active>;
> > +		pinctrl-names = "default", "sleep";
> > +
> > +		vci-supply = <&vreg_l13b_3p0>;
> > +		vdd-supply = <&vreg_l11b_1p0>;
> > +		vddio-supply = <&vreg_l12b_1p8>;
> > +
> > +		reset-gpios = <&tlmm 98 GPIO_ACTIVE_LOW>;
> > +
> > +		port {
> > +			panel0_in: endpoint {
> > +				remote-endpoint = <&mdss_dsi0_out>;
> > +			};
> > +		};
> > +	};
> > +};
> > +
> > +&mdss_dsi0_out {
> > +	remote-endpoint = <&panel0_in>;
> > +	data-lanes = <0 1 2 3>;
> > +};
> > +
> > +&mdss_dsi0_phy {
> > +	vdds-supply = <&vreg_l3d_0p8>;
> > +
> > +	status = "okay";
> > +};
> > +
> >  &pcie0 {
> >  	pinctrl-0 = <&pcie0_default_state>;
> >  	pinctrl-names = "default";
> > @@ -970,6 +1015,42 @@ bt_default: bt-default-state {
> >  	};
> >  };
> >  
> > +&pmh0110_d_e0_gpios {
> > +	sde_mdp_vsync_p_1p2_active: sde-mdp-vsync-p-1p2-active-state {
> 
> If these are level shifters, should they be configured as a hog? Or
> should they be modelled as regulators?
> 
> I'm not sure, how do we handle shifters and their supplies.

I think regulator-fixed is OK, but if change these pmh0110_d_e0_gpios
to regulator-fixed, means need to modify the panel driver to accept 
these changes, is that correct?

I see downstream also directly manipulates these paired GPIOs. 

> > +		pins = "gpio9";
> > +		function = "paired";
> > +		input-disable;
> > +		output-enable;
> > +		power-source = <2>; /* 1.2v */
> > +	};
> > +
> > +	sde_mdp_vsync_p_1p8_active: sde-mdp-vsync-p-1p8-active-state {
> > +		pins = "gpio10";
> > +		function = "paired";
> > +		input-enable;
> > +		output-disable;
> > +		power-source = <1>; /* 1.8v */
> > +	};
> > +};
> > +
> > +&pmh0110_f_e0_gpios {
> > +	sde_disp0_rst_1p2_active: sde-disp0-rst-1p2-active-state {
> 
> The same.
OK.
 
> > +		pins = "gpio9";
> > +		function = "paired";
> > +		input-enable;
> > +		output-disable;
> > +		power-source = <2>; /* 1.2v */
> > +	};
> > +
> > +	sde_disp0_rst_1p8_active: sde-disp0-rst-1p8-active-state {
> > +		pins = "gpio10";
> > +		function = "paired";
> > +		input-disable;
> > +		output-enable;
> > +		power-source = <1>; /* 1.8v */
> > +	};
> > +};
> > +
> >  &pon_resin {
> >  	linux,code = <KEY_VOLUMEDOWN>;
> >  
> > @@ -1128,6 +1209,41 @@ spkr_1_sd_n_active: spkr-1-sd-n-active-state {
> >  		bias-disable;
> >  	};
> >  
> > +	sde_te_active: sde-te-active-state {
> > +		pins = "gpio86";
> > +		function = "mdp_vsync";
> > +		drive-strength = <2>;
> > +		bias-pull-down;
> > +	};
> > +
> > +	sde_te_suspend: sde-te-suspend-state {
> > +		pins = "gpio86";
> > +		function = "mdp_vsync";
> > +		drive-strength = <2>;
> > +		bias-pull-down;
> > +	};
> 
> It's the same as _active. Merge them.
OK.

> > +
> > +	sde_esync0_suspend: sde-esync0-suspend-state {
> > +		pins = "gpio88";
> > +		function = "mdp_esync0_out";
> > +		drive-strength = <2>;
> > +		bias-pull-down;
> > +	};
> > +
> > +	sde_dsi_active: sde-dsi-active-state {
> 
> panel-reset-active-state

OK.
 
Thanks,
Yuanjie



> > +		pins = "gpio98";
> > +		function = "gpio";
> > +		drive-strength = <8>;
> > +		bias-disable;
> > +	};
> > +
> > +	sde_dsi_suspend: sde-dsi-suspend-state {
> > +		pins = "gpio98";
> > +		function = "gpio";
> > +		drive-strength = <2>;
> > +		bias-pull-down;
> > +	};
> > +
> >  	key_vol_up_default: key-vol-up-default-state {
> >  		pins = "gpio101";
> >  		function = "gpio";
> > 
> > -- 
> > 2.25.1
> > 
> 
> -- 
> With best wishes
> Dmitry

  reply	other threads:[~2026-03-26  3:13 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-23  6:19 [PATCH 0/6] arm64: dts: qcom: kaanapali: Add PMIC dependent features Jingyi Wang
2026-03-23  6:19 ` [PATCH 1/6] arm64: dts: qcom: kaanapali: Add PMIC devices Jingyi Wang
2026-03-24  1:12   ` Dmitry Baryshkov
2026-03-25 11:04     ` Jishnu Prakash
2026-03-23  6:19 ` [PATCH 2/6] arm64: dts: qcom: kaanapali-mtp: Add PMIC support Jingyi Wang
2026-03-24  1:13   ` Dmitry Baryshkov
2026-03-25 11:05     ` Jishnu Prakash
2026-03-23  6:19 ` [PATCH 3/6] arm64: dts: qcom: kaanapali-qrd: " Jingyi Wang
2026-03-24  1:14   ` Dmitry Baryshkov
2026-03-23  6:19 ` [PATCH 4/6] arm64: dts: qcom: kaanapali-mtp: Enable bluetooth and Wifi Jingyi Wang
2026-03-24  1:16   ` Dmitry Baryshkov
2026-03-25  6:40     ` Zijun Hu
2026-03-25  7:08       ` Dmitry Baryshkov
2026-03-25 10:59         ` Zijun Hu
2026-03-25 11:40           ` Dmitry Baryshkov
2026-03-26  3:19             ` Zijun Hu
2026-03-26  4:10               ` Dmitry Baryshkov
2026-03-26  5:15                 ` Zijun Hu
2026-03-30 11:53                   ` Dmitry Baryshkov
2026-04-01 10:39                     ` Zijun Hu
2026-04-01 11:08                       ` Dmitry Baryshkov
2026-04-01 13:34                         ` Zijun Hu
2026-04-01 14:07                           ` Dmitry Baryshkov
2026-04-07  6:49                             ` Zijun Hu
2026-03-23  6:19 ` [PATCH 5/6] arm64: dts: qcom: kaanapali: add display hardware devices Jingyi Wang
2026-03-24  1:20   ` Dmitry Baryshkov
2026-03-26  2:37     ` yuanjiey
2026-03-26  4:11       ` Dmitry Baryshkov
2026-03-23  6:19 ` [PATCH 6/6] arm64: dts: qcom: kaanapali-mtp: Enable display DSI devices Jingyi Wang
2026-03-24  1:25   ` Dmitry Baryshkov
2026-03-26  3:13     ` yuanjiey [this message]
2026-03-26  4:22       ` Dmitry Baryshkov
2026-03-23 14:38 ` [PATCH 0/6] arm64: dts: qcom: kaanapali: Add PMIC dependent features Bjorn Andersson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=acSkaneJtwLwNgiA@yuanjiey.ap.qualcomm.com \
    --to=yuanjie.yang@oss.qualcomm.com \
    --cc=20260224-knp-dts-misc-v6-0-79d20dab8a60@oss.qualcomm.com \
    --cc=aiqun.yu@oss.qualcomm.com \
    --cc=andersson@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dmitry.baryshkov@oss.qualcomm.com \
    --cc=jingyi.wang@oss.qualcomm.com \
    --cc=konradybcio@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=robh@kernel.org \
    --cc=tingwei.zhang@oss.qualcomm.com \
    --cc=trilok.soni@oss.qualcomm.com \
    --cc=yijie.yang@oss.qualcomm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox