On 16/07/2019 15:37, and...@gherzan.ro wrote: > From: Andrei Gherzan <and...@gherzan.ro> > > This follows a similar change in kernel[1]. The change moves > configuration that was not applicable for all bcm2835/6/7/8 out of > bcm283x.dtsi. The new file is bcm2835-common.dtsi and contains > conifguration that is common for bcm2835/6/7 (not bcm2838). > > [1] > https://github.com/raspberrypi/linux/commit/769a7330aa5bebcc98b1ff12ecb767db4e5c644d#diff-5979fba23a5bab2cf66dde09db872dfc > > Signed-off-by: Andrei Gherzan <and...@gherzan.ro>
My opinion is that we should wait for official dts instead of using some work-in-progress ones. So my opinion is to use the DTB from the FW for now until we have something stable. > --- > arch/arm/dts/bcm2835-common.dtsi | 53 ++++++++++++++++++++++++++++++++ > arch/arm/dts/bcm2835.dtsi | 1 + > arch/arm/dts/bcm2836.dtsi | 1 + > arch/arm/dts/bcm2837.dtsi | 1 + > arch/arm/dts/bcm283x.dtsi | 45 +-------------------------- > 5 files changed, 57 insertions(+), 44 deletions(-) > create mode 100644 arch/arm/dts/bcm2835-common.dtsi > > diff --git a/arch/arm/dts/bcm2835-common.dtsi > b/arch/arm/dts/bcm2835-common.dtsi > new file mode 100644 > index 0000000000..17771730a3 > --- /dev/null > +++ b/arch/arm/dts/bcm2835-common.dtsi > @@ -0,0 +1,53 @@ > +// SPDX-License-Identifier: GPL-2.0 > + > +/* This include file covers the common peripherals and configuration between > + * bcm2835, bcm2836 and bcm2837 implementations. > + */ > + > +/ { > + soc { > + timer@7e003000 { > + compatible = "brcm,bcm2835-system-timer"; > + reg = <0x7e003000 0x1000>; > + interrupts = <1 0>, <1 1>, <1 2>, <1 3>; > + /* This could be a reference to BCM2835_CLOCK_TIMER, > + * but we don't have the driver using the common clock > + * support yet. > + */ > + clock-frequency = <1000000>; > + }; > + > + intc: interrupt-controller@7e00b200 { > + compatible = "brcm,bcm2835-armctrl-ic"; > + reg = <0x7e00b200 0x200>; > + interrupt-controller; > + #interrupt-cells = <2>; > + }; > + > + thermal: thermal@7e212000 { > + compatible = "brcm,bcm2835-thermal"; > + reg = <0x7e212000 0x8>; > + clocks = <&clocks BCM2835_CLOCK_TSENS>; > + #thermal-sensor-cells = <0>; > + status = "disabled"; > + }; > + > + v3d: v3d@7ec00000 { > + compatible = "brcm,bcm2835-v3d"; > + reg = <0x7ec00000 0x1000>; > + interrupts = <1 10>; > + }; > + }; > +}; > + > +&gpio { > + i2c_slave_gpio18: i2c_slave_gpio18 { > + brcm,pins = <18 19 20 21>; > + brcm,function = <BCM2835_FSEL_ALT3>; > + }; > + > + jtag_gpio4: jtag_gpio4 { > + brcm,pins = <4 5 6 12 13>; > + brcm,function = <BCM2835_FSEL_ALT5>; > + }; > +}; > diff --git a/arch/arm/dts/bcm2835.dtsi b/arch/arm/dts/bcm2835.dtsi > index a5c3824c80..53bf4579cc 100644 > --- a/arch/arm/dts/bcm2835.dtsi > +++ b/arch/arm/dts/bcm2835.dtsi > @@ -1,5 +1,6 @@ > // SPDX-License-Identifier: GPL-2.0 > #include "bcm283x.dtsi" > +#include "bcm2835-common.dtsi" > > / { > compatible = "brcm,bcm2835"; > diff --git a/arch/arm/dts/bcm2836.dtsi b/arch/arm/dts/bcm2836.dtsi > index c933e84138..82d6c4662a 100644 > --- a/arch/arm/dts/bcm2836.dtsi > +++ b/arch/arm/dts/bcm2836.dtsi > @@ -1,5 +1,6 @@ > // SPDX-License-Identifier: GPL-2.0 > #include "bcm283x.dtsi" > +#include "bcm2835-common.dtsi" > > / { > compatible = "brcm,bcm2836"; > diff --git a/arch/arm/dts/bcm2837.dtsi b/arch/arm/dts/bcm2837.dtsi > index beb6c502da..9e95fee78e 100644 > --- a/arch/arm/dts/bcm2837.dtsi > +++ b/arch/arm/dts/bcm2837.dtsi > @@ -1,4 +1,5 @@ > #include "bcm283x.dtsi" > +#include "bcm2835-common.dtsi" > > / { > compatible = "brcm,bcm2837"; > diff --git a/arch/arm/dts/bcm283x.dtsi b/arch/arm/dts/bcm283x.dtsi > index 9777644c6c..a024727e4d 100644 > --- a/arch/arm/dts/bcm283x.dtsi > +++ b/arch/arm/dts/bcm283x.dtsi > @@ -56,17 +56,6 @@ > #address-cells = <1>; > #size-cells = <1>; > > - timer@7e003000 { > - compatible = "brcm,bcm2835-system-timer"; > - reg = <0x7e003000 0x1000>; > - interrupts = <1 0>, <1 1>, <1 2>, <1 3>; > - /* This could be a reference to BCM2835_CLOCK_TIMER, > - * but we don't have the driver using the common clock > - * support yet. > - */ > - clock-frequency = <1000000>; > - }; > - > txp@7e004000 { > compatible = "brcm,bcm2835-txp"; > reg = <0x7e004000 0x20>; > @@ -114,13 +103,6 @@ > brcm,dma-channel-mask = <0x7f35>; > }; > > - intc: interrupt-controller@7e00b200 { > - compatible = "brcm,bcm2835-armctrl-ic"; > - reg = <0x7e00b200 0x200>; > - interrupt-controller; > - #interrupt-cells = <2>; > - }; > - > pm: watchdog@7e100000 { > compatible = "brcm,bcm2835-pm", "brcm,bcm2835-pm-wdt"; > #power-domain-cells = <1>; > @@ -184,8 +166,7 @@ > interrupt-controller; > #interrupt-cells = <2>; > > - /* Defines pin muxing groups according to > - * BCM2835-ARM-Peripherals.pdf page 102. > + /* Defines common pin muxing groups > * > * While each pin can have its mux selected > * for various functions individually, some > @@ -263,15 +244,6 @@ > brcm,pins = <44 45>; > brcm,function = <BCM2835_FSEL_ALT2>; > }; > - i2c_slave_gpio18: i2c_slave_gpio18 { > - brcm,pins = <18 19 20 21>; > - brcm,function = <BCM2835_FSEL_ALT3>; > - }; > - > - jtag_gpio4: jtag_gpio4 { > - brcm,pins = <4 5 6 12 13>; > - brcm,function = <BCM2835_FSEL_ALT5>; > - }; > jtag_gpio22: jtag_gpio22 { > brcm,pins = <22 23 24 25 26 27>; > brcm,function = <BCM2835_FSEL_ALT4>; > @@ -488,14 +460,6 @@ > > }; > > - thermal: thermal@7e212000 { > - compatible = "brcm,bcm2835-thermal"; > - reg = <0x7e212000 0x8>; > - clocks = <&clocks BCM2835_CLOCK_TSENS>; > - #thermal-sensor-cells = <0>; > - status = "disabled"; > - }; > - > aux: aux@7e215000 { > compatible = "brcm,bcm2835-aux"; > #clock-cells = <1>; > @@ -635,13 +599,6 @@ > phy-names = "usb2-phy"; > }; > > - v3d: v3d@7ec00000 { > - compatible = "brcm,bcm2835-v3d"; > - reg = <0x7ec00000 0x1000>; > - interrupts = <1 10>; > - power-domains = <&pm BCM2835_POWER_DOMAIN_GRAFX_V3D>; > - }; > - > vc4: gpu { > compatible = "brcm,bcm2835-vc4"; > }; > _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot