[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230314001052.7qvgbwkl73x22oll@ripper>
Date: Mon, 13 Mar 2023 17:10:52 -0700
From: Bjorn Andersson <andersson@...nel.org>
To: Konrad Dybcio <konrad.dybcio@...aro.org>
Cc: linux-arm-msm@...r.kernel.org, agross@...nel.org,
krzysztof.kozlowski@...aro.org, marijn.suijten@...ainline.org,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 3/3] arm64: dts: qcom: Split out SA8155P and use correct
RPMh power domains
On Tue, Feb 14, 2023 at 10:54:35AM +0100, Konrad Dybcio wrote:
> The RPMhPD setup on SA8155P is different compared to SM8150. Correct
> it to ensure the platform will not try accessing forbidden/missing
> RPMh entries at boot, as a bad vote will hang the machine.
>
I don't see that this will scale, as soon as someone adds a new device
in sm8150.dtsi that has the need to scale a power rail this will be
forgotten and we will have a mix of references to the SM8150 and SA8155P
value space.
That said, I think it's reasonable to avoid duplicating the entire
sm8150.dtsi.
How about making the SA8155P_* macros match the SM8150_* macros?
That way things will fail gracefully if a device node references a
resource not defined for either platform...
Regards,
Bjorn
> Signed-off-by: Konrad Dybcio <konrad.dybcio@...aro.org>
> ---
> arch/arm64/boot/dts/qcom/sa8155p-adp.dts | 2 +-
> arch/arm64/boot/dts/qcom/sa8155p.dtsi | 51 ++++++++++++++++++++++++
> 2 files changed, 52 insertions(+), 1 deletion(-)
> create mode 100644 arch/arm64/boot/dts/qcom/sa8155p.dtsi
>
> diff --git a/arch/arm64/boot/dts/qcom/sa8155p-adp.dts b/arch/arm64/boot/dts/qcom/sa8155p-adp.dts
> index 459384ec8f23..9454e8e4e517 100644
> --- a/arch/arm64/boot/dts/qcom/sa8155p-adp.dts
> +++ b/arch/arm64/boot/dts/qcom/sa8155p-adp.dts
> @@ -7,7 +7,7 @@
>
> #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
> #include <dt-bindings/gpio/gpio.h>
> -#include "sm8150.dtsi"
> +#include "sa8155p.dtsi"
> #include "pmm8155au_1.dtsi"
> #include "pmm8155au_2.dtsi"
>
> diff --git a/arch/arm64/boot/dts/qcom/sa8155p.dtsi b/arch/arm64/boot/dts/qcom/sa8155p.dtsi
> new file mode 100644
> index 000000000000..f2fd7c28764e
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/sa8155p.dtsi
> @@ -0,0 +1,51 @@
> +// SPDX-License-Identifier: BSD-3-Clause
> +/*
> + * Copyright (c) 2023, Linaro Limited
> + *
> + * SA8155P is an automotive variant of SM8150, with some minor changes.
> + * Most notably, the RPMhPD setup differs: MMCX and LCX/LMX rails are gone.
> + */
> +
> +#include "sm8150.dtsi"
> +
> +&dispcc {
> + power-domains = <&rpmhpd SA8155P_CX>;
> +};
> +
> +&mdss_mdp {
> + power-domains = <&rpmhpd SA8155P_CX>;
> +};
> +
> +&mdss_dsi0 {
> + power-domains = <&rpmhpd SA8155P_CX>;
> +};
> +
> +&mdss_dsi1 {
> + power-domains = <&rpmhpd SA8155P_CX>;
> +};
> +
> +&remoteproc_adsp {
> + power-domains = <&rpmhpd SA8155P_CX>;
> +};
> +
> +&remoteproc_cdsp {
> + power-domains = <&rpmhpd SA8155P_CX>;
> +};
> +
> +&remoteproc_mpss {
> + power-domains = <&rpmhpd SA8155P_CX>,
> + <&rpmhpd SA8155P_MSS>;
> +};
> +
> +&remoteproc_slpi {
> + power-domains = <&rpmhpd SA8155P_CX>,
> + <&rpmhpd SA8155P_MX>;
> +};
> +
> +&rpmhpd {
> + compatible = "qcom,sa8155p-rpmhpd";
> +};
> +
> +&sdhc_2 {
> + power-domains = <&rpmhpd SA8155P_CX>;
> +};
> --
> 2.39.1
>
Powered by blists - more mailing lists