summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarek Belisko <marek.belisko@open-nandra.com>2020-06-25 21:29:00 +0200
committerAndrei Gherzan <andrei@gherzan.ro>2020-06-29 21:09:48 +0100
commitf20ccfa11db4c0d1608cf6f3e654d29c5bfc3dd3 (patch)
treef6c493a7095c01b6a0a37ee7ee29031ec513bef2
parent3627eccf1928f141ce87732de10b08a5174c211d (diff)
downloadmeta-raspberrypi-f20ccfa11db4c0d1608cf6f3e654d29c5bfc3dd3.tar.gz
u-boot: Fix booting raspberrypi CM3 module
With stock u-boot v2020.01 which we use from poky CM3 module won't boot. We need to apply this patch in order to have platform again working. Add it only for cm3 to not break anything else. Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com>
-rw-r--r--recipes-bsp/u-boot/u-boot/0001-dm-core-Move-ofdata_to_platdata-call-earlier.patch51
-rw-r--r--recipes-bsp/u-boot/u-boot_%.bbappend2
2 files changed, 53 insertions, 0 deletions
diff --git a/recipes-bsp/u-boot/u-boot/0001-dm-core-Move-ofdata_to_platdata-call-earlier.patch b/recipes-bsp/u-boot/u-boot/0001-dm-core-Move-ofdata_to_platdata-call-earlier.patch
new file mode 100644
index 0000000..996ad10
--- /dev/null
+++ b/recipes-bsp/u-boot/u-boot/0001-dm-core-Move-ofdata_to_platdata-call-earlier.patch
@@ -0,0 +1,51 @@
1From 336d86ebd146905cf4384912f4f27699b6e37c72 Mon Sep 17 00:00:00 2001
2From: Simon Glass <sjg@chromium.org>
3Date: Sun, 29 Dec 2019 21:19:17 -0700
4Subject: [PATCH] dm: core: Move ofdata_to_platdata() call earlier
5
6This method is supposed to extract platform data from the device tree. It
7should be done before the device itself is probed. Move it earlier in the
8device_probe() function.
9
10Upstream-Status: Backport
11
12Signed-off-by: Simon Glass <sjg@chromium.org>
13---
14 drivers/core/device.c | 14 +++++++-------
15 1 file changed, 7 insertions(+), 7 deletions(-)
16
17diff --git a/drivers/core/device.c b/drivers/core/device.c
18index 4e03708..291ff4c 100644
19--- a/drivers/core/device.c
20+++ b/drivers/core/device.c
21@@ -375,6 +375,13 @@ int device_probe(struct udevice *dev)
22 return 0;
23 }
24
25+ if (drv->ofdata_to_platdata &&
26+ (CONFIG_IS_ENABLED(OF_PLATDATA) || dev_has_of_node(dev))) {
27+ ret = drv->ofdata_to_platdata(dev);
28+ if (ret)
29+ goto fail;
30+ }
31+
32 seq = uclass_resolve_seq(dev);
33 if (seq < 0) {
34 ret = seq;
35@@ -411,13 +418,6 @@ int device_probe(struct udevice *dev)
36 goto fail;
37 }
38
39- if (drv->ofdata_to_platdata &&
40- (CONFIG_IS_ENABLED(OF_PLATDATA) || dev_has_of_node(dev))) {
41- ret = drv->ofdata_to_platdata(dev);
42- if (ret)
43- goto fail;
44- }
45-
46 /* Only handle devices that have a valid ofnode */
47 if (dev_of_valid(dev)) {
48 /*
49--
502.7.4
51
diff --git a/recipes-bsp/u-boot/u-boot_%.bbappend b/recipes-bsp/u-boot/u-boot_%.bbappend
index 9ce6425..9f40953 100644
--- a/recipes-bsp/u-boot/u-boot_%.bbappend
+++ b/recipes-bsp/u-boot/u-boot_%.bbappend
@@ -1 +1,3 @@
1DEPENDS_append_rpi = " u-boot-default-script" 1DEPENDS_append_rpi = " u-boot-default-script"
2
3SRC_URI_append_raspberrypi-cm3 = " file://0001-dm-core-Move-ofdata_to_platdata-call-earlier.patch"