rpi fixes

This commit is contained in:
Peter Robinson 2019-12-13 00:21:28 +00:00
parent 0b08ed6c72
commit 267ed26924
2 changed files with 123 additions and 1 deletions

118
raspberry-pi-4-fixes.patch Normal file
View File

@ -0,0 +1,118 @@
From e19cfcc07ac5da8b3a04e21875ec542d994865d4 Mon Sep 17 00:00:00 2001
From: Matthias Brugger <mbrugger@suse.com>
Date: Thu, 5 Dec 2019 18:53:13 +0100
Subject: [PATCH 08/10] rpi: fix dram bank initialization
To update the dram bank information from device-tree we use
fdtdec_decode_ram_size() which expectes the the size-cells and
address-cells to be defined in the memory node. For normal system RAM
these values are defined in the root node. When the values differ from
the default values defined in the spec, we can end up with wrong RAM
bank information.
Switch to the "standard" way to update the RAM bank information to
avoid this.
Fixes: 9de5b89e4c ("rpi4: enable dram bank initialization")
Signed-off-by: Matthias Brugger <mbrugger@suse.com>
---
board/raspberrypi/rpi/rpi.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/board/raspberrypi/rpi/rpi.c b/board/raspberrypi/rpi/rpi.c
index 5f120ea9c2..e19610f40f 100644
--- a/board/raspberrypi/rpi/rpi.c
+++ b/board/raspberrypi/rpi/rpi.c
@@ -275,8 +275,13 @@ int dram_init(void)
#ifdef CONFIG_BCM2711
int dram_init_banksize(void)
{
- return fdtdec_decode_ram_size(gd->fdt_blob, NULL, 0, NULL,
- (phys_size_t *)&gd->ram_size, gd->bd);
+ int ret;
+
+ ret = fdtdec_setup_memory_banksize();
+ if (ret)
+ return ret;
+
+ return fdtdec_setup_mem_size_base();
}
#endif
#endif
--
2.24.1
From a63f81c242090682ea4907fa6475d8057208cb05 Mon Sep 17 00:00:00 2001
From: Matthias Brugger <mbrugger@suse.com>
Date: Thu, 5 Dec 2019 18:53:14 +0100
Subject: [PATCH 09/10] rpi: Enable DRAM bank initialization on arm64
Up to now we only update the DRAM banks when we are define
CONFIG_BCM2711. But our one binary approach uses a config that supports
BCM2837 and BCM2711. As a result we only see one gibibyte of RAM on
Raspberry Pi 4, even if it has more RAM.
Fix this by calling dram_init_banksize.
Fixes: 5694090670 ("ARM: defconfig: add unified config for RPi3 and RPi4")
Signed-off-by: Matthias Brugger <mbrugger@suse.com>
---
board/raspberrypi/rpi/rpi.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/board/raspberrypi/rpi/rpi.c b/board/raspberrypi/rpi/rpi.c
index e19610f40f..e367ba3092 100644
--- a/board/raspberrypi/rpi/rpi.c
+++ b/board/raspberrypi/rpi/rpi.c
@@ -272,7 +272,6 @@ int dram_init(void)
}
#ifdef CONFIG_OF_BOARD
-#ifdef CONFIG_BCM2711
int dram_init_banksize(void)
{
int ret;
@@ -284,7 +283,6 @@ int dram_init_banksize(void)
return fdtdec_setup_mem_size_base();
}
#endif
-#endif
static void set_fdtfile(void)
{
--
2.24.1
From e5167465a1740f0cac05be44f3e2a4e334eb527a Mon Sep 17 00:00:00 2001
From: Matthias Brugger <mbrugger@suse.com>
Date: Thu, 5 Dec 2019 18:53:15 +0100
Subject: [PATCH 10/10] ARM: defconfig: Fix 32bit config for RPi4
The rpi_4_32b_defconfig states that only one DRAM bank is present. This
leads to a wrong configuration of the available DRAM. Fix this by
setting the DRAM bank config accordingly.
Fixes: 193279d784 ("RPI: Add defconfigs for rpi4 (32/64)")
Signed-off-by: Matthias Brugger <mbrugger@suse.com>
---
configs/rpi_4_32b_defconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configs/rpi_4_32b_defconfig b/configs/rpi_4_32b_defconfig
index e7d8f29060..80cf930032 100644
--- a/configs/rpi_4_32b_defconfig
+++ b/configs/rpi_4_32b_defconfig
@@ -4,7 +4,7 @@ CONFIG_SYS_TEXT_BASE=0x00008000
CONFIG_TARGET_RPI_4_32B=y
CONFIG_SYS_MALLOC_F_LEN=0x2000
CONFIG_ENV_SIZE=0x4000
-CONFIG_NR_DRAM_BANKS=1
+CONFIG_NR_DRAM_BANKS=2
CONFIG_DISTRO_DEFAULTS=y
CONFIG_OF_BOARD_SETUP=y
# CONFIG_ARCH_FIXUP_FDT_MEMORY is not set
--
2.24.1

View File

@ -2,7 +2,7 @@
Name: uboot-tools
Version: 2020.01
Release: 0.7%{?candidate:.%{candidate}}%{?dist}
Release: 0.8%{?candidate:.%{candidate}}%{?dist}
Summary: U-Boot utilities
License: GPLv2+ BSD LGPL-2.1+ LGPL-2.0+
URL: http://www.denx.de/wiki/U-Boot
@ -30,6 +30,7 @@ Patch9: tools-fix-version.h.patch
Patch10: zynqmp-Add-support-for-u-boot.itb-generation-with-ATF.patch
Patch11: zynqmp-Do-not-assing-MIO34-that-early-on-zcu100.patch
Patch12: bcm283x-dts-Rename-U-Boot-file.patch
Patch13: raspberry-pi-4-fixes.patch
BuildRequires: bc
BuildRequires: dtc
@ -253,6 +254,9 @@ cp -p board/warp7/README builds/docs/README.warp7
%endif
%changelog
* Thu Dec 12 2019 Peter Robinson <pbrobinson@fedoraproject.org> 2020.01-0.8-rc4
- Fixes for Raspberry Pi
* Thu Dec 5 2019 Peter Robinson <pbrobinson@fedoraproject.org> 2020.01-0.7-rc4
- Enable the Khadas Edge and VIM series of devices
- Minor other fixes