linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] ARM: dts: bcm283x: Move the BCM2837 DT contents from arm64 to arm.
@ 2017-07-19 20:19 Eric Anholt
  2017-07-20  0:01 ` Scott Branden
  0 siblings, 1 reply; 3+ messages in thread
From: Eric Anholt @ 2017-07-19 20:19 UTC (permalink / raw)
  To: Florian Fainelli, Ray Jui, Scott Branden, Catalin Marinas,
	Will Deacon, devicetree, Rob Herring, Mark Rutland
  Cc: linux-rpi-kernel, linux-arm-kernel, linux-kernel, Stefan Wahren,
	bcm-kernel-feedback-list, Eric Anholt

BCM2837 is somewhat unusual in that we build its DT on both arm32 and
arm64.  Most devices are being run in arm32 mode.

Having the body of the DT for 2837 separate from 2835/6 has been a
source of pain, as we often need to make changes that span both
directories simultaneously (for example, the thermal changes for 4.13,
and pinmuxing changes earlier).  Other changes are made more
complicated than they need to be, such as the SDHOST enabling, because
we end up splitting a single change into a 283[56] half and a 2837
half.

Signed-off-by: Eric Anholt <eric@anholt.net>
---

I had asked about what we could do about our DT merging troubles back
in https://lkml.org/lkml/2017/5/16/707 with no response.  I'm hoping
we can take this patch as a resolution to that, and submit (almost
all) future RPi DT changes through the arm32 dt tree.


 arch/arm/boot/dts/bcm2837-rpi-3-b.dts              | 42 +++++++++++++++++++++-
 .../dts/broadcom => arm/boot/dts}/bcm2837.dtsi     |  0
 arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts   | 42 +---------------------
 3 files changed, 42 insertions(+), 42 deletions(-)
 rename arch/{arm64/boot/dts/broadcom => arm/boot/dts}/bcm2837.dtsi (100%)

diff --git a/arch/arm/boot/dts/bcm2837-rpi-3-b.dts b/arch/arm/boot/dts/bcm2837-rpi-3-b.dts
index c72a27d908b6..972f14db28ac 100644
--- a/arch/arm/boot/dts/bcm2837-rpi-3-b.dts
+++ b/arch/arm/boot/dts/bcm2837-rpi-3-b.dts
@@ -1 +1,41 @@
-#include "arm64/broadcom/bcm2837-rpi-3-b.dts"
+/dts-v1/;
+#include "bcm2837.dtsi"
+#include "bcm2835-rpi.dtsi"
+#include "bcm283x-rpi-smsc9514.dtsi"
+#include "bcm283x-rpi-usb-host.dtsi"
+
+/ {
+	compatible = "raspberrypi,3-model-b", "brcm,bcm2837";
+	model = "Raspberry Pi 3 Model B";
+
+	memory {
+		reg = <0 0x40000000>;
+	};
+
+	leds {
+		act {
+			gpios = <&gpio 47 0>;
+		};
+	};
+};
+
+&uart1 {
+	status = "okay";
+};
+
+/* SDHCI is used to control the SDIO for wireless */
+&sdhci {
+	pinctrl-names = "default";
+	pinctrl-0 = <&emmc_gpio34>;
+	status = "okay";
+	bus-width = <4>;
+	non-removable;
+};
+
+/* SDHOST is used to drive the SD card */
+&sdhost {
+	pinctrl-names = "default";
+	pinctrl-0 = <&sdhost_gpio48>;
+	status = "okay";
+	bus-width = <4>;
+};
diff --git a/arch/arm64/boot/dts/broadcom/bcm2837.dtsi b/arch/arm/boot/dts/bcm2837.dtsi
similarity index 100%
rename from arch/arm64/boot/dts/broadcom/bcm2837.dtsi
rename to arch/arm/boot/dts/bcm2837.dtsi
diff --git a/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts b/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts
index 972f14db28ac..699d340a3437 100644
--- a/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts
+++ b/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts
@@ -1,41 +1 @@
-/dts-v1/;
-#include "bcm2837.dtsi"
-#include "bcm2835-rpi.dtsi"
-#include "bcm283x-rpi-smsc9514.dtsi"
-#include "bcm283x-rpi-usb-host.dtsi"
-
-/ {
-	compatible = "raspberrypi,3-model-b", "brcm,bcm2837";
-	model = "Raspberry Pi 3 Model B";
-
-	memory {
-		reg = <0 0x40000000>;
-	};
-
-	leds {
-		act {
-			gpios = <&gpio 47 0>;
-		};
-	};
-};
-
-&uart1 {
-	status = "okay";
-};
-
-/* SDHCI is used to control the SDIO for wireless */
-&sdhci {
-	pinctrl-names = "default";
-	pinctrl-0 = <&emmc_gpio34>;
-	status = "okay";
-	bus-width = <4>;
-	non-removable;
-};
-
-/* SDHOST is used to drive the SD card */
-&sdhost {
-	pinctrl-names = "default";
-	pinctrl-0 = <&sdhost_gpio48>;
-	status = "okay";
-	bus-width = <4>;
-};
+#include "arm/bcm2837-rpi-3-b.dts"
-- 
2.11.0

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

* Re: [PATCH] ARM: dts: bcm283x: Move the BCM2837 DT contents from arm64 to arm.
  2017-07-19 20:19 [PATCH] ARM: dts: bcm283x: Move the BCM2837 DT contents from arm64 to arm Eric Anholt
@ 2017-07-20  0:01 ` Scott Branden
  2017-07-26 20:00   ` Eric Anholt
  0 siblings, 1 reply; 3+ messages in thread
From: Scott Branden @ 2017-07-20  0:01 UTC (permalink / raw)
  To: Eric Anholt, Florian Fainelli, Ray Jui, Scott Branden,
	Catalin Marinas, Will Deacon, devicetree, Rob Herring,
	Mark Rutland
  Cc: linux-rpi-kernel, linux-arm-kernel, linux-kernel, Stefan Wahren,
	bcm-kernel-feedback-list

Hi Eric,

suggestion inline


On 17-07-19 01:19 PM, Eric Anholt wrote:
> BCM2837 is somewhat unusual in that we build its DT on both arm32 and
> arm64.  Most devices are being run in arm32 mode.
>
> Having the body of the DT for 2837 separate from 2835/6 has been a
> source of pain, as we often need to make changes that span both
> directories simultaneously (for example, the thermal changes for 4.13,
> and pinmuxing changes earlier).  Other changes are made more
> complicated than they need to be, such as the SDHOST enabling, because
> we end up splitting a single change into a 283[56] half and a 2837
> half.
>
> Signed-off-by: Eric Anholt <eric@anholt.net>
> ---
>
> I had asked about what we could do about our DT merging troubles back
> in https://lkml.org/lkml/2017/5/16/707 with no response.  I'm hoping
> we can take this patch as a resolution to that, and submit (almost
> all) future RPi DT changes through the arm32 dt tree.
>
>
>   arch/arm/boot/dts/bcm2837-rpi-3-b.dts              | 42 +++++++++++++++++++++-
>   .../dts/broadcom => arm/boot/dts}/bcm2837.dtsi     |  0
>   arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts   | 42 +---------------------
>   3 files changed, 42 insertions(+), 42 deletions(-)
>   rename arch/{arm64/boot/dts/broadcom => arm/boot/dts}/bcm2837.dtsi (100%)
>
> diff --git a/arch/arm/boot/dts/bcm2837-rpi-3-b.dts b/arch/arm/boot/dts/bcm2837-rpi-3-b.dts
> index c72a27d908b6..972f14db28ac 100644
> --- a/arch/arm/boot/dts/bcm2837-rpi-3-b.dts
> +++ b/arch/arm/boot/dts/bcm2837-rpi-3-b.dts
> @@ -1 +1,41 @@
> -#include "arm64/broadcom/bcm2837-rpi-3-b.dts"
> +/dts-v1/;
> +#include "bcm2837.dtsi"
> +#include "bcm2835-rpi.dtsi"
> +#include "bcm283x-rpi-smsc9514.dtsi"
> +#include "bcm283x-rpi-usb-host.dtsi"
If you're moving this back to the arm directory why not change the 
include path and remove the 4 symlinks in arm64/boot/dts/broadcom?

+#include "arm/bcm2837.dtsi"
+#include "arm/bcm2835-rpi.dtsi"
+#include "arm/bcm283x-rpi-smsc9514.dtsi"
+#include "arm/bcm283x-rpi-usb-host.dtsi"


> +
> +/ {
> +	compatible = "raspberrypi,3-model-b", "brcm,bcm2837";
> +	model = "Raspberry Pi 3 Model B";
> +
> +	memory {
> +		reg = <0 0x40000000>;
> +	};
> +
> +	leds {
> +		act {
> +			gpios = <&gpio 47 0>;
> +		};
> +	};
> +};
> +
> +&uart1 {
> +	status = "okay";
> +};
> +
> +/* SDHCI is used to control the SDIO for wireless */
> +&sdhci {
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&emmc_gpio34>;
> +	status = "okay";
> +	bus-width = <4>;
> +	non-removable;
> +};
> +
> +/* SDHOST is used to drive the SD card */
> +&sdhost {
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&sdhost_gpio48>;
> +	status = "okay";
> +	bus-width = <4>;
> +};
> diff --git a/arch/arm64/boot/dts/broadcom/bcm2837.dtsi b/arch/arm/boot/dts/bcm2837.dtsi
> similarity index 100%
> rename from arch/arm64/boot/dts/broadcom/bcm2837.dtsi
> rename to arch/arm/boot/dts/bcm2837.dtsi
> diff --git a/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts b/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts
> index 972f14db28ac..699d340a3437 100644
> --- a/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts
> +++ b/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts
> @@ -1,41 +1 @@
> -/dts-v1/;
> -#include "bcm2837.dtsi"
> -#include "bcm2835-rpi.dtsi"
> -#include "bcm283x-rpi-smsc9514.dtsi"
> -#include "bcm283x-rpi-usb-host.dtsi"
> -
> -/ {
> -	compatible = "raspberrypi,3-model-b", "brcm,bcm2837";
> -	model = "Raspberry Pi 3 Model B";
> -
> -	memory {
> -		reg = <0 0x40000000>;
> -	};
> -
> -	leds {
> -		act {
> -			gpios = <&gpio 47 0>;
> -		};
> -	};
> -};
> -
> -&uart1 {
> -	status = "okay";
> -};
> -
> -/* SDHCI is used to control the SDIO for wireless */
> -&sdhci {
> -	pinctrl-names = "default";
> -	pinctrl-0 = <&emmc_gpio34>;
> -	status = "okay";
> -	bus-width = <4>;
> -	non-removable;
> -};
> -
> -/* SDHOST is used to drive the SD card */
> -&sdhost {
> -	pinctrl-names = "default";
> -	pinctrl-0 = <&sdhost_gpio48>;
> -	status = "okay";
> -	bus-width = <4>;
> -};
> +#include "arm/bcm2837-rpi-3-b.dts"

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

* Re: [PATCH] ARM: dts: bcm283x: Move the BCM2837 DT contents from arm64 to arm.
  2017-07-20  0:01 ` Scott Branden
@ 2017-07-26 20:00   ` Eric Anholt
  0 siblings, 0 replies; 3+ messages in thread
From: Eric Anholt @ 2017-07-26 20:00 UTC (permalink / raw)
  To: Scott Branden, Florian Fainelli, Ray Jui, Scott Branden,
	Catalin Marinas, Will Deacon, devicetree, Rob Herring,
	Mark Rutland
  Cc: linux-rpi-kernel, linux-arm-kernel, linux-kernel, Stefan Wahren,
	bcm-kernel-feedback-list

[-- Attachment #1: Type: text/plain, Size: 2330 bytes --]

Scott Branden <scott.branden@broadcom.com> writes:

> Hi Eric,
>
> suggestion inline
>
>
> On 17-07-19 01:19 PM, Eric Anholt wrote:
>> BCM2837 is somewhat unusual in that we build its DT on both arm32 and
>> arm64.  Most devices are being run in arm32 mode.
>>
>> Having the body of the DT for 2837 separate from 2835/6 has been a
>> source of pain, as we often need to make changes that span both
>> directories simultaneously (for example, the thermal changes for 4.13,
>> and pinmuxing changes earlier).  Other changes are made more
>> complicated than they need to be, such as the SDHOST enabling, because
>> we end up splitting a single change into a 283[56] half and a 2837
>> half.
>>
>> Signed-off-by: Eric Anholt <eric@anholt.net>
>> ---
>>
>> I had asked about what we could do about our DT merging troubles back
>> in https://lkml.org/lkml/2017/5/16/707 with no response.  I'm hoping
>> we can take this patch as a resolution to that, and submit (almost
>> all) future RPi DT changes through the arm32 dt tree.
>>
>>
>>   arch/arm/boot/dts/bcm2837-rpi-3-b.dts              | 42 +++++++++++++++++++++-
>>   .../dts/broadcom => arm/boot/dts}/bcm2837.dtsi     |  0
>>   arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts   | 42 +---------------------
>>   3 files changed, 42 insertions(+), 42 deletions(-)
>>   rename arch/{arm64/boot/dts/broadcom => arm/boot/dts}/bcm2837.dtsi (100%)
>>
>> diff --git a/arch/arm/boot/dts/bcm2837-rpi-3-b.dts b/arch/arm/boot/dts/bcm2837-rpi-3-b.dts
>> index c72a27d908b6..972f14db28ac 100644
>> --- a/arch/arm/boot/dts/bcm2837-rpi-3-b.dts
>> +++ b/arch/arm/boot/dts/bcm2837-rpi-3-b.dts
>> @@ -1 +1,41 @@
>> -#include "arm64/broadcom/bcm2837-rpi-3-b.dts"
>> +/dts-v1/;
>> +#include "bcm2837.dtsi"
>> +#include "bcm2835-rpi.dtsi"
>> +#include "bcm283x-rpi-smsc9514.dtsi"
>> +#include "bcm283x-rpi-usb-host.dtsi"
> If you're moving this back to the arm directory why not change the 
> include path and remove the 4 symlinks in arm64/boot/dts/broadcom?
>
> +#include "arm/bcm2837.dtsi"
> +#include "arm/bcm2835-rpi.dtsi"
> +#include "arm/bcm283x-rpi-smsc9514.dtsi"
> +#include "arm/bcm283x-rpi-usb-host.dtsi"

Even better, it seems we don't need the arm/ here -- when we're
processing the include in arm/, the neighboring files get found.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

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

end of thread, other threads:[~2017-07-26 20:00 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-07-19 20:19 [PATCH] ARM: dts: bcm283x: Move the BCM2837 DT contents from arm64 to arm Eric Anholt
2017-07-20  0:01 ` Scott Branden
2017-07-26 20:00   ` Eric Anholt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).