Hello community,

here is the log from the commit of package raspberrypi-firmware-dt for 
openSUSE:Factory checked in at 2020-03-12 23:06:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/raspberrypi-firmware-dt (Old)
 and      /work/SRC/openSUSE:Factory/.raspberrypi-firmware-dt.new.3160 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "raspberrypi-firmware-dt"

Thu Mar 12 23:06:39 2020 rev:19 rq:784294 version:2020.02.03

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/raspberrypi-firmware-dt/raspberrypi-firmware-dt.changes
  2020-03-04 09:48:22.062214129 +0100
+++ 
/work/SRC/openSUSE:Factory/.raspberrypi-firmware-dt.new.3160/raspberrypi-firmware-dt.changes
        2020-03-12 23:11:59.987316665 +0100
@@ -1,0 +2,10 @@
+Wed Mar 11 17:17:54 UTC 2020 - Nicolas Patricio Saenz Julienne 
<nsaenzjulie...@suse.com>
+
+- Add uboot-bcm2835-pl011-overlay.dts which fixes booting in RPi, RPi2, RPi0 
(bsc#1166414)
+
+-------------------------------------------------------------------
+Wed Mar  4 18:13:12 UTC 2020 - Nicolas Patricio Saenz Julienne 
<nsaenzjulie...@suse.com>
+
+- Add emmc2bus.patch needed for 32bit DMA support on newer bcm2711 revisions 
(bsc#1165143)
+
+-------------------------------------------------------------------

New:
----
  emmc2bus.patch
  uboot-bcm2835-pl011-overlay.dts

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ raspberrypi-firmware-dt.spec ++++++
--- /var/tmp/diff_new_pack.YMJGLq/_old  2020-03-12 23:12:02.863317800 +0100
+++ /var/tmp/diff_new_pack.YMJGLq/_new  2020-03-12 23:12:02.871317804 +0100
@@ -28,9 +28,11 @@
 Source2:        rpi4-cma-overlay.dts
 Source3:        rpi4-thermal.dts
 Source4:        rpi4-gpio-names-overlay.dts
+Source5:        uboot-bcm2835-pl011-overlay.dts
 Source100:      get-from-git.sh
 Patch0:         remove-vmmc-emmc2.patch
 Patch1:         pcie-dma-ranges.patch
+Patch2:         emmc2bus.patch
 Requires:       raspberrypi-firmware
 BuildRequires:  dtc
 BuildRequires:  raspberrypi-firmware
@@ -45,6 +47,7 @@
 %setup
 %patch0 -p1
 %patch1 -p1
+%patch2 -p1
 
 %build
 SRCDIR=`pwd`
@@ -59,7 +62,7 @@
 done
 
 export DTC_FLAGS="-R 0 -p 0 -@ -H epapr"
-for dts in arch/arm/boot/dts/overlays/*dts %{SOURCE1} %{SOURCE2} %{SOURCE3} 
%{SOURCE4}; do
+for dts in arch/arm/boot/dts/overlays/*dts %{SOURCE1} %{SOURCE2} %{SOURCE3} 
%{SOURCE4} %{SOURCE5}; do
     target=$(basename ${dts%*.dts})
     target=${target%*-overlay}
     mkdir -p $PPDIR/overlays

++++++ emmc2bus.patch ++++++
>From ef4aaff92087fa708c47fa4df44caee77a7c3508 Mon Sep 17 00:00:00 2001
From: Nicolas Saenz Julienne <nsaenzjulie...@suse.de>
Date: Wed, 4 Mar 2020 18:47:55 +0100
Subject: [PATCH] ARM: dts: bcm2711: Move emmc2 into its own bus

Depending on bcm2711's revision its emmc2 controller might have
different DMA constraints. Raspberry Pi 4's firmware will take care of
updating those, but only if a certain alias is found in the device tree.
So, move emmc2 into its own bus, so as not to pollute other devices with
dma-ranges changes and create the emmc2bus alias.

Based in Phil ELwell's downstream implementation.

Signed-off-by: Nicolas Saenz Julienne <nsaenzjulie...@suse.de>
---
 arch/arm/boot/dts/bcm2711-rpi-4-b.dts |  1 +
 arch/arm/boot/dts/bcm2711.dtsi        | 25 ++++++++++++++++++++-----
 2 files changed, 21 insertions(+), 5 deletions(-)

diff --git a/arch/arm/boot/dts/bcm2711-rpi-4-b.dts 
b/arch/arm/boot/dts/bcm2711-rpi-4-b.dts
index e5978243aa9c..2814c0904e6b 100644
--- a/arch/arm/boot/dts/bcm2711-rpi-4-b.dts
+++ b/arch/arm/boot/dts/bcm2711-rpi-4-b.dts
@@ -19,6 +19,7 @@ memory@0 {
        };
 
        aliases {
+               emmc2bus = &emmc2bus;
                ethernet0 = &genet;
        };
 
diff --git a/arch/arm/boot/dts/bcm2711.dtsi b/arch/arm/boot/dts/bcm2711.dtsi
index e2f6ffb00aa9..3dd55936819b 100644
--- a/arch/arm/boot/dts/bcm2711.dtsi
+++ b/arch/arm/boot/dts/bcm2711.dtsi
@@ -252,17 +252,32 @@ pwm1: pwm@7e20c800 {
                        status = "disabled";
                };
 
+               hvs@7e400000 {
+                       interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
+               };
+       };
+
+       /*
+       * emmc2 has different DMA constraints based on SoC revisions. It was
+       * moved into its own bus, so as for RPi4's firmware to update them.
+       * The firmware will find whether the emmc2bus alias is defined, and if
+       * so, it'll edit the dma-ranges property below accordingly.
+       */
+       emmc2bus: emmc2bus {
+               compatible = "simple-bus";
+               #address-cells = <2>;
+               #size-cells = <1>;
+
+               ranges = <0x0 0x7e000000  0x0 0xfe000000  0x01800000>;
+               dma-ranges = <0x0 0xc0000000  0x0 0x00000000  0x40000000>;
+
                emmc2: emmc2@7e340000 {
                        compatible = "brcm,bcm2711-emmc2";
-                       reg = <0x7e340000 0x100>;
+                       reg = <0x0 0x7e340000 0x100>;
                        interrupts = <GIC_SPI 126 IRQ_TYPE_LEVEL_HIGH>;
                        clocks = <&clocks BCM2711_CLOCK_EMMC2>;
                        status = "disabled";
                };
-
-               hvs@7e400000 {
-                       interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
-               };
        };
 
        arm-pmu {
-- 
2.25.1

++++++ uboot-bcm2835-pl011-overlay.dts ++++++
/*
 * As opposed to the upstream/downstream kernel, u-boot needs a special
 * compatible string to access RPi, RPi2 and RPi0's serial consoles. This was
 * removed from both upstream and downstream Linux's device-trees as there is
 * no existing binding or use for it. While we fix this in upstream u-boot,
 * this overlay fixes booting on those platforms.
 */
/dts-v1/;
/plugin/;

/{
        compatible = "brcm,bcm2835";

        fragment@0 {
                target = <&uart0>;
                __overlay__ {
                        compatible = "brcm,bcm2835-pl011", "arm,pl011", 
"arm,primecell";
                };
        };
};

Reply via email to