On 04.08.22 17:07, Pali Rohár wrote:
On Thursday 04 August 2022 16:51:47 Stefan Roese wrote:
On 03.08.22 13:00, Pali Rohár wrote:
For future changes it is needed for have spi0 device tree reference in
every mvebu soc dts file even when it is unused.
Signed-off-by: Pali Rohár <p...@kernel.org>
---
arch/arm/dts/armada-7040.dtsi | 3 +++
arch/arm/dts/armada-8040.dtsi | 3 +++
arch/arm/dts/cn9130.dtsi | 3 +++
3 files changed, 9 insertions(+)
You're changing 64-bit Armada files here, but in the cover letter you
mention that this patchset only addresses 32-bit mvebu DT files. So
why are you making these changes here?
The main issue is that 64-bit Armada DTS files are compiled also during
32-bit Armada builds. And 32-bit Armada DTS files needs spi0 reference
because it is used in 32-bit Armada section in mvebu-u-boot.dtsi file.
I know it is broken build system if during compilation of 32-bit SoC are
compiled also unrelated 64-bit Armada DTS files in 32-bit mode. But I do
not see currently easier solution than just define "harmless" reference.
During 64-bit Armada builds is content of mvebu-u-boot.dtsi skipped as
there is a 32-bit guard.
Proper way, of course, would be to fix build system, so none 64-bit file
is compiled (and let unused) during 32-bit build.
I see. Thanks for the explanation.
One more comment below...
diff --git a/arch/arm/dts/armada-7040.dtsi b/arch/arm/dts/armada-7040.dtsi
index 039d30c72a8c..1fb21c6bfde0 100644
--- a/arch/arm/dts/armada-7040.dtsi
+++ b/arch/arm/dts/armada-7040.dtsi
@@ -63,3 +63,6 @@
marvell,function = <3>;
};
};
+
+spi0: &cp0_spi1 {
+};
Why is spi0 aliased now to "cp0_spi1"?
Because cp0_spi1 is used in U-Boot 64-bit Armada DTS files as "spi0"
alias. Really.
In the Kernel DT files I see
this:
spi0 = &spi0;
spi1 = &cp0_spi0;
spi2 = &cp0_spi1;
...
spi0: spi@510600 {
And you bring another issue :-) U-Boot DTS files for 64-bit Armada SoCs
(expects 3720) differs from kernel DTS files. They are incompatible and
nobody fixed this issue yet. I fixed it only for 64-bit Armada 3720 as
we are using and maintaining Armada 3720 boards.
Yes, I am aware of this.
So I just do not know what to do with remaining 64-bit
A7040/A8040/CN9030 SoCs. I just added simple harmless change which do
not change behavior nor output of those boards.
Either somebody has to start working on fixing U-Boot support and DTS
files for those boards to be compatible with Linux kernel. Or those SoCs
stays incompatible with Linux and their technical debt in U-Boot code
just grow. Or you as maintainer can decide that they are unmaintained
(and ready for removal?).
I'm just not going to do this big cleanup for A7040/A8040/CN9030 SoCs too.
Understood. Let's keep the situation in this unfortunate state a while
longer. Hopefully someone will find the time to work on this. If
nothing changes in a longer period we should think again about this.
Thanks,
Stefan
Thanks,
Stefan
diff --git a/arch/arm/dts/armada-8040.dtsi b/arch/arm/dts/armada-8040.dtsi
index eec5fa277405..608ff0d97f95 100644
--- a/arch/arm/dts/armada-8040.dtsi
+++ b/arch/arm/dts/armada-8040.dtsi
@@ -87,3 +87,6 @@
marvell,function = <3>;
};
};
+
+spi0: &cp1_spi1 {
+};
diff --git a/arch/arm/dts/cn9130.dtsi b/arch/arm/dts/cn9130.dtsi
index 68b767a70639..a200276f7a2e 100644
--- a/arch/arm/dts/cn9130.dtsi
+++ b/arch/arm/dts/cn9130.dtsi
@@ -71,3 +71,6 @@
marvell,function = <3>;
};
};
+
+spi0: &cp0_spi1 {
+};
Viele Grüße,
Stefan Roese
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: s...@denx.de
Viele Grüße,
Stefan Roese
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: s...@denx.de