All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] PXO fixes for ipq8064 dtsi
@ 2022-04-29 12:29 Ansuel Smith
  2022-04-29 12:29 ` [PATCH 1/2] ARM: dts: qcom: add syscon and cxo/pxo clock to gcc node for ipq8064 Ansuel Smith
  2022-04-29 12:29 ` [PATCH 2/2] ARM: dts: qcom: replace gcc PXO with pxo_board fixed clock Ansuel Smith
  0 siblings, 2 replies; 5+ messages in thread
From: Ansuel Smith @ 2022-04-29 12:29 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Rob Herring, Krzysztof Kozlowski,
	linux-arm-msm, devicetree, linux-kernel
  Cc: Ansuel Smith

This small series is a fix for a long lasting error present in ipq8064
dtsi. At times the kpss-gcc driver was defined in the dts with
<&gcc PXO_SRC> a pxo clock. While PXO_SRC exist in the includes, the gcc
driver never expose it and if a driver try to actually use it the result
is a kernel panic even before any log is init.

To prepare for correct conversion of the different krait drivers to
parent data and to reflect what is defined in the Documentation with
actual driver and dts implementation, fix this error by using the now
defined pxo_board fixed clock.

Ansuel Smith (2):
  ARM: dts: qcom: add syscon and cxo/pxo clock to gcc node for ipq8064
  ARM: dts: qcom: replace gcc PXO with pxo_board fixed clock

 arch/arm/boot/dts/qcom-ipq8064.dtsi | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

-- 
2.34.1


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH 1/2] ARM: dts: qcom: add syscon and cxo/pxo clock to gcc node for ipq8064
  2022-04-29 12:29 [PATCH 0/2] PXO fixes for ipq8064 dtsi Ansuel Smith
@ 2022-04-29 12:29 ` Ansuel Smith
  2022-04-29 12:29 ` [PATCH 2/2] ARM: dts: qcom: replace gcc PXO with pxo_board fixed clock Ansuel Smith
  1 sibling, 0 replies; 5+ messages in thread
From: Ansuel Smith @ 2022-04-29 12:29 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Rob Herring, Krzysztof Kozlowski,
	linux-arm-msm, devicetree, linux-kernel
  Cc: Ansuel Smith, Stephen Boyd

Add syscon compatible required for tsens driver to correctly probe driver
and access the reg. Also add cxo and pxo tag and declare them as gcc clock
now requires them for the ipq8064 gcc driver that has now been modernized.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Reviewed-by: Stephen Boyd <sboyd@kernel.org>
---
 arch/arm/boot/dts/qcom-ipq8064.dtsi | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/arch/arm/boot/dts/qcom-ipq8064.dtsi b/arch/arm/boot/dts/qcom-ipq8064.dtsi
index 996f4458d9fc..9817448cfa95 100644
--- a/arch/arm/boot/dts/qcom-ipq8064.dtsi
+++ b/arch/arm/boot/dts/qcom-ipq8064.dtsi
@@ -298,13 +298,13 @@ smem: smem@41000000 {
 	};
 
 	clocks {
-		cxo_board {
+		cxo_board: cxo_board {
 			compatible = "fixed-clock";
 			#clock-cells = <0>;
 			clock-frequency = <25000000>;
 		};
 
-		pxo_board {
+		pxo_board: pxo_board {
 			compatible = "fixed-clock";
 			#clock-cells = <0>;
 			clock-frequency = <25000000>;
@@ -736,7 +736,9 @@ tsens_calib_backup: calib_backup@410 {
 		};
 
 		gcc: clock-controller@900000 {
-			compatible = "qcom,gcc-ipq8064";
+			compatible = "qcom,gcc-ipq8064", "syscon";
+			clocks = <&pxo_board>, <&cxo_board>;
+			clock-names = "pxo", "cxo";
 			reg = <0x00900000 0x4000>;
 			#clock-cells = <1>;
 			#reset-cells = <1>;
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 2/2] ARM: dts: qcom: replace gcc PXO with pxo_board fixed clock
  2022-04-29 12:29 [PATCH 0/2] PXO fixes for ipq8064 dtsi Ansuel Smith
  2022-04-29 12:29 ` [PATCH 1/2] ARM: dts: qcom: add syscon and cxo/pxo clock to gcc node for ipq8064 Ansuel Smith
@ 2022-04-29 12:29 ` Ansuel Smith
  2022-04-29 15:11   ` Dmitry Baryshkov
  1 sibling, 1 reply; 5+ messages in thread
From: Ansuel Smith @ 2022-04-29 12:29 UTC (permalink / raw)
  To: Andy Gross, Bjorn Andersson, Rob Herring, Krzysztof Kozlowski,
	linux-arm-msm, devicetree, linux-kernel
  Cc: Ansuel Smith

Replace gcc PXO phandle to pxo_board fixed clock declared in the dts.
gcc driver doesn't provide PXO_SRC as it's a fixed-clock. This cause a
kernel panic if any driver actually try to use it.

Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
---
 arch/arm/boot/dts/qcom-ipq8064.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/qcom-ipq8064.dtsi b/arch/arm/boot/dts/qcom-ipq8064.dtsi
index 9817448cfa95..ad30f7c8a5a7 100644
--- a/arch/arm/boot/dts/qcom-ipq8064.dtsi
+++ b/arch/arm/boot/dts/qcom-ipq8064.dtsi
@@ -784,7 +784,7 @@ tcsr: syscon@1a400000 {
 		l2cc: clock-controller@2011000 {
 			compatible = "qcom,kpss-gcc", "syscon";
 			reg = <0x2011000 0x1000>;
-			clocks = <&gcc PLL8_VOTE>, <&gcc PXO_SRC>;
+			clocks = <&gcc PLL8_VOTE>, <&pxo_board>;
 			clock-names = "pll8_vote", "pxo";
 			clock-output-names = "acpu_l2_aux";
 		};
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 2/2] ARM: dts: qcom: replace gcc PXO with pxo_board fixed clock
  2022-04-29 12:29 ` [PATCH 2/2] ARM: dts: qcom: replace gcc PXO with pxo_board fixed clock Ansuel Smith
@ 2022-04-29 15:11   ` Dmitry Baryshkov
  2022-04-29 15:12     ` Ansuel Smith
  0 siblings, 1 reply; 5+ messages in thread
From: Dmitry Baryshkov @ 2022-04-29 15:11 UTC (permalink / raw)
  To: Ansuel Smith, Andy Gross, Bjorn Andersson, Rob Herring,
	Krzysztof Kozlowski, linux-arm-msm, devicetree, linux-kernel

On 29/04/2022 15:29, Ansuel Smith wrote:
> Replace gcc PXO phandle to pxo_board fixed clock declared in the dts.
> gcc driver doesn't provide PXO_SRC as it's a fixed-clock. This cause a
> kernel panic if any driver actually try to use it.
> 
> Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>

Fixes: 40cf5c884a96 ("ARM: dts: qcom: add L2CC and RPM for IPQ8064")

It would be nice if you add Fixes tags to your patches in future. Fixes 
tags allow picking up patches for stable/LTS trees.

For these two patches I'd suggest reordering them. A fix should go first 
(you'll have to define pxa_board label in it). It can then be accepted 
into other kernel without dependency on the other patch.

The gcc patch will come next, it will define cxo_board label and use 
both clocks in the gcc node. It is not fixing a bug, so there is no need 
about backporting it.

Generic rule: fixes go first (in the patch series), so that they have 
minimum inter-dependencies.

> ---
>   arch/arm/boot/dts/qcom-ipq8064.dtsi | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/arm/boot/dts/qcom-ipq8064.dtsi b/arch/arm/boot/dts/qcom-ipq8064.dtsi
> index 9817448cfa95..ad30f7c8a5a7 100644
> --- a/arch/arm/boot/dts/qcom-ipq8064.dtsi
> +++ b/arch/arm/boot/dts/qcom-ipq8064.dtsi
> @@ -784,7 +784,7 @@ tcsr: syscon@1a400000 {
>   		l2cc: clock-controller@2011000 {
>   			compatible = "qcom,kpss-gcc", "syscon";
>   			reg = <0x2011000 0x1000>;
> -			clocks = <&gcc PLL8_VOTE>, <&gcc PXO_SRC>;
> +			clocks = <&gcc PLL8_VOTE>, <&pxo_board>;
>   			clock-names = "pll8_vote", "pxo";
>   			clock-output-names = "acpu_l2_aux";
>   		};


-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 2/2] ARM: dts: qcom: replace gcc PXO with pxo_board fixed clock
  2022-04-29 15:11   ` Dmitry Baryshkov
@ 2022-04-29 15:12     ` Ansuel Smith
  0 siblings, 0 replies; 5+ messages in thread
From: Ansuel Smith @ 2022-04-29 15:12 UTC (permalink / raw)
  To: Dmitry Baryshkov
  Cc: Andy Gross, Bjorn Andersson, Rob Herring, Krzysztof Kozlowski,
	linux-arm-msm, devicetree, linux-kernel

On Fri, Apr 29, 2022 at 06:11:21PM +0300, Dmitry Baryshkov wrote:
> On 29/04/2022 15:29, Ansuel Smith wrote:
> > Replace gcc PXO phandle to pxo_board fixed clock declared in the dts.
> > gcc driver doesn't provide PXO_SRC as it's a fixed-clock. This cause a
> > kernel panic if any driver actually try to use it.
> > 
> > Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
> 
> Fixes: 40cf5c884a96 ("ARM: dts: qcom: add L2CC and RPM for IPQ8064")
> 
> It would be nice if you add Fixes tags to your patches in future. Fixes tags
> allow picking up patches for stable/LTS trees.
> 
> For these two patches I'd suggest reordering them. A fix should go first
> (you'll have to define pxa_board label in it). It can then be accepted into
> other kernel without dependency on the other patch.
> 
> The gcc patch will come next, it will define cxo_board label and use both
> clocks in the gcc node. It is not fixing a bug, so there is no need about
> backporting it.
> 
> Generic rule: fixes go first (in the patch series), so that they have
> minimum inter-dependencies.
>

Didn't know about this. Thanks for the hint! Will do the change.

> > ---
> >   arch/arm/boot/dts/qcom-ipq8064.dtsi | 2 +-
> >   1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/arch/arm/boot/dts/qcom-ipq8064.dtsi b/arch/arm/boot/dts/qcom-ipq8064.dtsi
> > index 9817448cfa95..ad30f7c8a5a7 100644
> > --- a/arch/arm/boot/dts/qcom-ipq8064.dtsi
> > +++ b/arch/arm/boot/dts/qcom-ipq8064.dtsi
> > @@ -784,7 +784,7 @@ tcsr: syscon@1a400000 {
> >   		l2cc: clock-controller@2011000 {
> >   			compatible = "qcom,kpss-gcc", "syscon";
> >   			reg = <0x2011000 0x1000>;
> > -			clocks = <&gcc PLL8_VOTE>, <&gcc PXO_SRC>;
> > +			clocks = <&gcc PLL8_VOTE>, <&pxo_board>;
> >   			clock-names = "pll8_vote", "pxo";
> >   			clock-output-names = "acpu_l2_aux";
> >   		};
> 
> 
> -- 
> With best wishes
> Dmitry

-- 
	Ansuel

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-04-29 15:14 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-29 12:29 [PATCH 0/2] PXO fixes for ipq8064 dtsi Ansuel Smith
2022-04-29 12:29 ` [PATCH 1/2] ARM: dts: qcom: add syscon and cxo/pxo clock to gcc node for ipq8064 Ansuel Smith
2022-04-29 12:29 ` [PATCH 2/2] ARM: dts: qcom: replace gcc PXO with pxo_board fixed clock Ansuel Smith
2022-04-29 15:11   ` Dmitry Baryshkov
2022-04-29 15:12     ` Ansuel Smith

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.