ARM: dts: bcm283x: Remove bcm2835-rpi-common.dtsi from SoC DTSI
authorMaxime Ripard <maxime@cerno.tech>
Wed, 26 Oct 2022 13:17:38 +0000 (15:17 +0200)
committerFlorian Fainelli <f.fainelli@gmail.com>
Thu, 10 Nov 2022 18:15:08 +0000 (10:15 -0800)
According to the commit log of the commit 3ac395a5b3f3 ("ARM: dts:
bcm283x: Use firmware PM driver for V3D"), the initial intent behind the
bcm2835-rpi-common DTSI was to share data between the RaspberryPies
based on the BCM2835, 36 and 37.

However, it was included by these SoCs' main DTSI. This is creating an
improper layering.

On top of that, bcm2835.dtsi is being included by bcm2711.dtsi, which
means that, even though the bcm2835-rpi-common DTSI wasn't actually
meant to contain data for the BCM2711, it actually leaks into the
BCM2711 DTSI.

In order to remove both issues, let's remove the include of
bcm2835-rpi-common.dtsi from bcm283{5-7}.dtsi and put them into the
bcm283{6,7}-rpi.dtsi.

BCM2835 has to be handled with special care due to the fact that
bcm2835.dtsi is being included by bcm2711.dtsi. Thus, we chose to
include bcm2835-rpi-common.dtsi directly into the board DTS. This will
be more error-prone, but given that it's a fairly old SoC by now, the
chance that we will get more BCM2835 boards is fairly low.

BCM2711 isn't modified since the content of bcm2835-rpi-common.dtsi was
only a power-domain for the v3d that was overridden anyway.

Signed-off-by: Maxime Ripard <maxime@cerno.tech>
Link: https://lore.kernel.org/r/20221026-rpi-display-fw-clk-v1-1-5c29b7a3d8b0@cerno.tech
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
12 files changed:
arch/arm/boot/dts/bcm2835-rpi-a-plus.dts
arch/arm/boot/dts/bcm2835-rpi-a.dts
arch/arm/boot/dts/bcm2835-rpi-b-plus.dts
arch/arm/boot/dts/bcm2835-rpi-b-rev2.dts
arch/arm/boot/dts/bcm2835-rpi-b.dts
arch/arm/boot/dts/bcm2835-rpi-cm1.dtsi
arch/arm/boot/dts/bcm2835-rpi-zero-w.dts
arch/arm/boot/dts/bcm2835-rpi-zero.dts
arch/arm/boot/dts/bcm2835.dtsi
arch/arm/boot/dts/bcm2836-rpi.dtsi
arch/arm/boot/dts/bcm2836.dtsi
arch/arm/boot/dts/bcm2837.dtsi

index 9b9a18bbb20a9b943b95f4573f87637a3ca8a863..1470d2049f74d784f34b0080538cddfb2b4e4283 100644 (file)
@@ -2,6 +2,7 @@
 /dts-v1/;
 #include "bcm2835.dtsi"
 #include "bcm2835-rpi.dtsi"
+#include "bcm2835-rpi-common.dtsi"
 #include "bcm283x-rpi-usb-host.dtsi"
 
 / {
index f664e4fced93b589c5180dea4918a81760fb6468..89be496f84f840e0af4d55119e41d0160dd80639 100644 (file)
@@ -2,6 +2,7 @@
 /dts-v1/;
 #include "bcm2835.dtsi"
 #include "bcm2835-rpi.dtsi"
+#include "bcm2835-rpi-common.dtsi"
 #include "bcm283x-rpi-usb-host.dtsi"
 
 / {
index 248feb2ed23d9762e68fdc8ba53e75bc9b84629f..7f653f11788d1e4908c7ec6d3e3da72ba8d95e06 100644 (file)
@@ -2,6 +2,7 @@
 /dts-v1/;
 #include "bcm2835.dtsi"
 #include "bcm2835-rpi.dtsi"
+#include "bcm2835-rpi-common.dtsi"
 #include "bcm283x-rpi-smsc9514.dtsi"
 #include "bcm283x-rpi-usb-host.dtsi"
 
index f5b66d3f4ff302f9c9d5a291589c17cc3dd2785c..55e7cb0a242f1512499607d89fb62098e631c30a 100644 (file)
@@ -2,6 +2,7 @@
 /dts-v1/;
 #include "bcm2835.dtsi"
 #include "bcm2835-rpi.dtsi"
+#include "bcm2835-rpi-common.dtsi"
 #include "bcm283x-rpi-smsc9512.dtsi"
 #include "bcm283x-rpi-usb-host.dtsi"
 
index f589bede2b1134e38f630f1979e9a9e31928cb45..3020c42ea8d74b5724596bca50608d28b68e0ec5 100644 (file)
@@ -2,6 +2,7 @@
 /dts-v1/;
 #include "bcm2835.dtsi"
 #include "bcm2835-rpi.dtsi"
+#include "bcm2835-rpi-common.dtsi"
 #include "bcm283x-rpi-smsc9512.dtsi"
 #include "bcm283x-rpi-usb-host.dtsi"
 
index e4e6b6abbfc13337caf240d2a269fca03f06d8e4..f71d7e9e58956a7ae943327abbadffe573478b64 100644 (file)
@@ -2,6 +2,7 @@
 /dts-v1/;
 #include "bcm2835.dtsi"
 #include "bcm2835-rpi.dtsi"
+#include "bcm2835-rpi-common.dtsi"
 
 / {
        leds {
index 596bb1ef994e984740890596173fbba008cec483..9b3a2070a6293e6da5f20d7165015c943a15d51a 100644 (file)
@@ -6,6 +6,7 @@
 /dts-v1/;
 #include "bcm2835.dtsi"
 #include "bcm2835-rpi.dtsi"
+#include "bcm2835-rpi-common.dtsi"
 #include "bcm283x-rpi-usb-otg.dtsi"
 #include "bcm283x-rpi-wifi-bt.dtsi"
 
index a65c2bca69ea4217461a06a2cdb6287149532fea..f9359ac2bb92e99373eca23e8e3f623354104a6d 100644 (file)
@@ -6,6 +6,7 @@
 /dts-v1/;
 #include "bcm2835.dtsi"
 #include "bcm2835-rpi.dtsi"
+#include "bcm2835-rpi-common.dtsi"
 #include "bcm283x-rpi-usb-otg.dtsi"
 
 / {
index 1c90e5a44283c651ad27edad242e811c821323a8..15cb331febbba86946a306697e84484d0befed8a 100644 (file)
@@ -1,7 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0
 #include "bcm283x.dtsi"
 #include "bcm2835-common.dtsi"
-#include "bcm2835-rpi-common.dtsi"
 
 / {
        compatible = "brcm,bcm2835";
index c4c858b984c6b6092ca4f5f9edc4f69b7797f673..48b03b55ff56ba259b8016d52030e2fd6a97b37d 100644 (file)
@@ -1,5 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0
 #include "bcm2835-rpi.dtsi"
+#include "bcm2835-rpi-common.dtsi"
 
 &vchiq {
        compatible = "brcm,bcm2836-vchiq", "brcm,bcm2835-vchiq";
index 534dacfc4dd54db2ad3669c06d44f327316736d6..db56a3443a4a6985a7ea1b880b22549cc2321dc9 100644 (file)
@@ -1,7 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0
 #include "bcm283x.dtsi"
 #include "bcm2835-common.dtsi"
-#include "bcm2835-rpi-common.dtsi"
 
 / {
        compatible = "brcm,bcm2836";
index 5dbdebc4625946a266d2c3f1719256086d5a2a59..58b3efe483c38c7bafa765d7e86b6cda63e5cfec 100644 (file)
@@ -1,6 +1,5 @@
 #include "bcm283x.dtsi"
 #include "bcm2835-common.dtsi"
-#include "bcm2835-rpi-common.dtsi"
 
 / {
        compatible = "brcm,bcm2837";