Re: [PATCH v4 08/11] arm64: dts: qcom: x1e80100: Add display nodes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 24-01-23 19:36:17, Konrad Dybcio wrote:
> 
> 
> On 1/23/24 12:01, Abel Vesa wrote:
> > Add the required nodes to support display on X1E80100.
> > 
> > Co-developed-by: Sibi Sankar <quic_sibis@xxxxxxxxxxx>
> > Signed-off-by: Sibi Sankar <quic_sibis@xxxxxxxxxxx>
> > Co-developed-by: Rajendra Nayak <quic_rjendra@xxxxxxxxxxx>
> > Signed-off-by: Rajendra Nayak <quic_rjendra@xxxxxxxxxxx>
> > Signed-off-by: Abel Vesa <abel.vesa@xxxxxxxxxx>
> > ---
> >   arch/arm64/boot/dts/qcom/x1e80100.dtsi | 518 +++++++++++++++++++++++++++++++++
> >   1 file changed, 518 insertions(+)
> > 
> > diff --git a/arch/arm64/boot/dts/qcom/x1e80100.dtsi b/arch/arm64/boot/dts/qcom/x1e80100.dtsi
> > index e8d2ea2b26ed..247ff7a9e405 100644
> > --- a/arch/arm64/boot/dts/qcom/x1e80100.dtsi
> > +++ b/arch/arm64/boot/dts/qcom/x1e80100.dtsi
> > @@ -4,6 +4,7 @@
> >    */
> >   #include <dt-bindings/clock/qcom,rpmh.h>
> > +#include <dt-bindings/clock/qcom,x1e80100-dispcc.h>
> >   #include <dt-bindings/clock/qcom,x1e80100-gcc.h>
> >   #include <dt-bindings/clock/qcom,x1e80100-tcsr.h>
> >   #include <dt-bindings/dma/qcom-gpi.h>
> > @@ -3298,6 +3299,523 @@ usb_1_ss1_role_switch: endpoint {
> >   			};
> >   		};
> > +		mdss: display-subsystem@ae00000 {
> > +			compatible = "qcom,x1e80100-mdss";
> > +			reg = <0 0x0ae00000 0 0x1000>;
> > +			reg-names = "mdss";
> > +
> > +			interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
> > +
> > +			clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
> > +				 <&gcc GCC_DISP_AHB_CLK>,
> > +				 <&gcc GCC_DISP_HF_AXI_CLK>,
> > +				 <&dispcc DISP_CC_MDSS_MDP_CLK>;
> > +
> > +			resets = <&dispcc DISP_CC_MDSS_CORE_BCR>;
> > +
> > +			interconnects = <&mmss_noc MASTER_MDP QCOM_ICC_TAG_ALWAYS
> > +					 &gem_noc SLAVE_LLCC QCOM_ICC_TAG_ALWAYS>,
> > +					<&mc_virt MASTER_LLCC QCOM_ICC_TAG_ALWAYS
> > +					 &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
> > +			interconnect-names = "mdp0-mem",
> > +					     "mdp1-mem";
> 
> You likely also want to add the cpu-cfg path
> 
> [...]
> 
> > +
> > +		dispcc: clock-controller@af00000 {
> > +			compatible = "qcom,x1e80100-dispcc";
> > +			reg = <0 0x0af00000 0 0x20000>;
> > +			clocks = <&bi_tcxo_div2>,
> > +				 <&bi_tcxo_ao_div2>,
> > +				 <&gcc GCC_DISP_AHB_CLK>,
> 
> This clock is not actually registered with the CCF.. Which means it's
> also never cleanly shut down.. Please fix the clock driver and check
> which others got omitted as well.
> 

Right, so this clock is actually enabled on probe and is expected to be
always-on.

And I just noticed that at least on SM8[456]50 it's the same.

So I guess the solution here is to drop it from the dt node and fix the
dt schema. For all these platforms.

> > +				 <&sleep_clk>,
> > +				 <0>, /* dsi0 */
> > +				 <0>,
> > +				 <0>, /* dsi1 */
> > +				 <0>,
> > +				 <&usb_1_ss0_qmpphy QMP_USB43DP_DP_LINK_CLK>, /* dp0 */
> > +				 <&usb_1_ss0_qmpphy QMP_USB43DP_DP_VCO_DIV_CLK>,
> > +				 <&usb_1_ss1_qmpphy QMP_USB43DP_DP_LINK_CLK>, /* dp1 */
> > +				 <&usb_1_ss1_qmpphy QMP_USB43DP_DP_VCO_DIV_CLK>,
> > +				 <&mdss_dp2_phy 0>, /* dp2 */
> > +				 <&mdss_dp2_phy 1>,
> > +				 <&mdss_dp3_phy 0>, /* dp3 */
> > +				 <&mdss_dp3_phy 1>;
> > +			power-domains = <&rpmhpd RPMHPD_MMCX>;
> 
> Likely:
> 
> required-opps = <&rpmhpd_opp_low_svs>;
> 
> so that the PLLs have a chance to spin up
> 
> Konrad




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux