DistroKit Mailinglist
 help / color / mirror / Atom feed
* [DistroKit] [PATCH v2] v7a: barebox: version bump v2020.04.0 → v2020.06.0
@ 2020-06-17 15:02 Ahmad Fatoum
  2020-06-17 15:07 ` Robert Schwebel
  0 siblings, 1 reply; 2+ messages in thread
From: Ahmad Fatoum @ 2020-06-17 15:02 UTC (permalink / raw)
  To: distrokit; +Cc: Ahmad Fatoum

This allows us to drop the patch stack we had for Linux Automation MC-1
support. The series went into barebox with a fix that makes a warning
about the eMMC environment go away. In return we import a single patch
to address a breakage on the rpi3b platform. Being a bug fix, we should
be able to drop the patch along with v2020.07.0.

On the Kconfig front, CONFIG_OF_NET was dropped upstream, because it was
an unreferenced symbol. All Kconfig changes are the result of an
olddefconfig.

Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
---
Hello Robert,

please exchange the equally named commit in next with this one.
It fixes a boot breakage on the rpi3b.

Cheers,
Ahmad
---
 .../platform-v7a/barebox-am335x-mlo.config    |   3 +-
 configs/platform-v7a/barebox-am335x.config    |   5 +-
 .../platform-v7a/barebox-am335x.config.diff   |   2 +-
 configs/platform-v7a/barebox-mx6.config       |   6 +-
 configs/platform-v7a/barebox-mx6.config.diff  |   3 +-
 configs/platform-v7a/barebox-rpi2.config      |   5 +-
 configs/platform-v7a/barebox-rpi2.config.diff |   2 +-
 configs/platform-v7a/barebox-stm32mp.config   |   5 +-
 .../platform-v7a/barebox-stm32mp.config.diff  |   4 +-
 configs/platform-v7a/barebox-vexpress.config  |   5 +-
 .../platform-v7a/barebox-vexpress.config.diff |   2 +-
 configs/platform-v7a/barebox.config           |   5 +-
 ...mp-add-Linux-Automation-MC-1-support.patch | 815 ------------------
 ...mc1-break-reg_3v3-dependency-on-PMIC.patch |  60 --
 .../patches/barebox-2020.04.0/series          |  12 -
 ...x-MMIO-resources-clash-breaking-boot.patch | 106 +++
 ...-customers-pengutronix-distrokit-v7.patch} |  12 +-
 .../patches/barebox-2020.06.0/series          |  11 +
 configs/platform-v7a/platformconfig           |   4 +-
 19 files changed, 154 insertions(+), 913 deletions(-)
 delete mode 100644 configs/platform-v7a/patches/barebox-2020.04.0/0001-ARM-stm32mp-add-Linux-Automation-MC-1-support.patch
 delete mode 100644 configs/platform-v7a/patches/barebox-2020.04.0/0002-ARM-stm32mp-lxa-mc1-break-reg_3v3-dependency-on-PMIC.patch
 delete mode 100644 configs/platform-v7a/patches/barebox-2020.04.0/series
 create mode 100644 configs/platform-v7a/patches/barebox-2020.06.0/0001-ARM-rpi-dts-fix-MMIO-resources-clash-breaking-boot.patch
 rename configs/platform-v7a/patches/{barebox-2020.04.0/0101-Release-2020.04.0-customers-pengutronix-distrokit-v7.patch => barebox-2020.06.0/0101-Release-2020.06.0-customers-pengutronix-distrokit-v7.patch} (59%)
 create mode 100644 configs/platform-v7a/patches/barebox-2020.06.0/series

diff --git a/configs/platform-v7a/barebox-am335x-mlo.config b/configs/platform-v7a/barebox-am335x-mlo.config
index e5c0eef2e8ea..b6713d0127ca 100644
--- a/configs/platform-v7a/barebox-am335x-mlo.config
+++ b/configs/platform-v7a/barebox-am335x-mlo.config
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Barebox/arm 2020.04.0-20200424-2 Configuration
+# Barebox/arm 2020.06.0-20200617-1 Configuration
 #
 CONFIG_ARM=y
 CONFIG_ARM_USE_COMPRESSED_DTB=y
@@ -186,6 +186,7 @@ CONFIG_DEBUG_OMAP_UART_PORT=1
 # CONFIG_DEBUG_INITCALLS is not set
 # CONFIG_PBL_BREAK is not set
 # CONFIG_UBSAN is not set
+# CONFIG_COMPILE_TEST is not set
 # end of Debugging
 
 CONFIG_HAS_DEBUG_LL=y
diff --git a/configs/platform-v7a/barebox-am335x.config b/configs/platform-v7a/barebox-am335x.config
index 98ecd1d80993..630b1a0b2b4a 100644
--- a/configs/platform-v7a/barebox-am335x.config
+++ b/configs/platform-v7a/barebox-am335x.config
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Barebox/arm 2020.04.0-20200424-2 Configuration
+# Barebox/arm 2020.06.0-20200617-1 Configuration
 #
 CONFIG_ARM=y
 CONFIG_ARM_LINUX=y
@@ -228,6 +228,7 @@ CONFIG_DEBUG_OMAP_UART_PORT=1
 # CONFIG_DEBUG_INITCALLS is not set
 # CONFIG_PBL_BREAK is not set
 # CONFIG_UBSAN is not set
+# CONFIG_COMPILE_TEST is not set
 # end of Debugging
 
 CONFIG_HAS_DEBUG_LL=y
@@ -435,7 +436,6 @@ CONFIG_OFTREE=y
 CONFIG_OFTREE_MEM_GENERIC=y
 CONFIG_DTC=y
 CONFIG_OFDEVICE=y
-CONFIG_OF_NET=y
 CONFIG_OF_GPIO=y
 CONFIG_OF_BAREBOX_DRIVERS=y
 # CONFIG_OF_BAREBOX_ENV_IN_FS is not set
@@ -498,6 +498,7 @@ CONFIG_DRIVER_NET_CPSW=y
 
 CONFIG_NET_USB=y
 CONFIG_NET_USB_ASIX=y
+# CONFIG_USB_NET_AX88179_178A is not set
 CONFIG_NET_USB_SMSC95XX=y
 # end of Network drivers
 
diff --git a/configs/platform-v7a/barebox-am335x.config.diff b/configs/platform-v7a/barebox-am335x.config.diff
index 5f81f855c454..b9b25a4a4ac1 100644
--- a/configs/platform-v7a/barebox-am335x.config.diff
+++ b/configs/platform-v7a/barebox-am335x.config.diff
@@ -1,4 +1,4 @@
-c0f89a11f3201404131209bd133590b7
+109c946cbc1413f3a576b02078a10c8b
 # CONFIG_AM33XX_NET_BOOT is not set
 CONFIG_ARCH_AM33XX=y
 # CONFIG_ARCH_BCM283X is not set
diff --git a/configs/platform-v7a/barebox-mx6.config b/configs/platform-v7a/barebox-mx6.config
index aec9896fb4f9..814a878c9320 100644
--- a/configs/platform-v7a/barebox-mx6.config
+++ b/configs/platform-v7a/barebox-mx6.config
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Barebox/arm 2020.04.0-20200424-2 Configuration
+# Barebox/arm 2020.06.0-20200617-1 Configuration
 #
 CONFIG_ARM=y
 CONFIG_ARM_LINUX=y
@@ -291,6 +291,7 @@ CONFIG_DEBUG_IMX_UART_PORT=1
 # CONFIG_DEBUG_INITCALLS is not set
 # CONFIG_PBL_BREAK is not set
 # CONFIG_UBSAN is not set
+# CONFIG_COMPILE_TEST is not set
 # end of Debugging
 
 CONFIG_HAS_DEBUG_LL=y
@@ -503,7 +504,6 @@ CONFIG_OFTREE=y
 CONFIG_OFTREE_MEM_GENERIC=y
 CONFIG_DTC=y
 CONFIG_OFDEVICE=y
-CONFIG_OF_NET=y
 CONFIG_OF_GPIO=y
 CONFIG_OF_BAREBOX_DRIVERS=y
 # CONFIG_OF_BAREBOX_ENV_IN_FS is not set
@@ -568,6 +568,7 @@ CONFIG_MICREL_PHY=y
 
 CONFIG_NET_USB=y
 CONFIG_NET_USB_ASIX=y
+# CONFIG_USB_NET_AX88179_178A is not set
 CONFIG_NET_USB_SMSC95XX=y
 # end of Network drivers
 
@@ -666,6 +667,7 @@ CONFIG_DISK_PATA_IMX=y
 CONFIG_USB=y
 CONFIG_USB_HOST=y
 CONFIG_USB_IMX_CHIPIDEA=y
+CONFIG_USB_IMX_CHIPIDEA_USBMISC=y
 CONFIG_USB_IMX_PHY=y
 # CONFIG_USB_DWC3 is not set
 CONFIG_USB_EHCI=y
diff --git a/configs/platform-v7a/barebox-mx6.config.diff b/configs/platform-v7a/barebox-mx6.config.diff
index e682d55d4fb4..ec01384a27c6 100644
--- a/configs/platform-v7a/barebox-mx6.config.diff
+++ b/configs/platform-v7a/barebox-mx6.config.diff
@@ -1,4 +1,4 @@
-c0f89a11f3201404131209bd133590b7
+109c946cbc1413f3a576b02078a10c8b
 # CONFIG_ARCH_BCM283X is not set
 CONFIG_ARCH_HAS_FEC_IMX=y
 CONFIG_ARCH_HAS_IMX_GPT=y
@@ -221,6 +221,7 @@ CONFIG_USB_GADGET_FASTBOOT=y
 CONFIG_USB_GADGET_FASTBOOT_CMD_OEM=y
 CONFIG_USB_GADGET_FASTBOOT_SPARSE=y
 CONFIG_USB_IMX_CHIPIDEA=y
+CONFIG_USB_IMX_CHIPIDEA_USBMISC=y
 CONFIG_USB_IMX_PHY=y
 CONFIG_USB_NOP_XCEIV=y
 CONFIG_USB_OTGDEV=y
diff --git a/configs/platform-v7a/barebox-rpi2.config b/configs/platform-v7a/barebox-rpi2.config
index 22da0fed279b..a4403c01bf5f 100644
--- a/configs/platform-v7a/barebox-rpi2.config
+++ b/configs/platform-v7a/barebox-rpi2.config
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Barebox/arm 2020.04.0-20200424-2 Configuration
+# Barebox/arm 2020.06.0-20200617-1 Configuration
 #
 CONFIG_ARM=y
 CONFIG_ARM_LINUX=y
@@ -217,6 +217,7 @@ CONFIG_DEFAULT_LOGLEVEL=6
 # CONFIG_DEBUG_INITCALLS is not set
 # CONFIG_PBL_BREAK is not set
 # CONFIG_UBSAN is not set
+# CONFIG_COMPILE_TEST is not set
 # end of Debugging
 
 CONFIG_HAS_DEBUG_LL=y
@@ -420,7 +421,6 @@ CONFIG_OFTREE=y
 CONFIG_OFTREE_MEM_GENERIC=y
 CONFIG_DTC=y
 CONFIG_OFDEVICE=y
-CONFIG_OF_NET=y
 CONFIG_OF_GPIO=y
 CONFIG_OF_BAREBOX_DRIVERS=y
 # CONFIG_OF_BAREBOX_ENV_IN_FS is not set
@@ -482,6 +482,7 @@ CONFIG_PHYLIB=y
 
 CONFIG_NET_USB=y
 CONFIG_NET_USB_ASIX=y
+# CONFIG_USB_NET_AX88179_178A is not set
 CONFIG_NET_USB_SMSC95XX=y
 # end of Network drivers
 
diff --git a/configs/platform-v7a/barebox-rpi2.config.diff b/configs/platform-v7a/barebox-rpi2.config.diff
index 1690e36d7b7b..dc66dad6e217 100644
--- a/configs/platform-v7a/barebox-rpi2.config.diff
+++ b/configs/platform-v7a/barebox-rpi2.config.diff
@@ -1,4 +1,4 @@
-c0f89a11f3201404131209bd133590b7
+109c946cbc1413f3a576b02078a10c8b
 CONFIG_ARM_ASM_UNIFIED=y
 CONFIG_BOOTM_INITRD=y
 # CONFIG_CMD_I2C is undefined
diff --git a/configs/platform-v7a/barebox-stm32mp.config b/configs/platform-v7a/barebox-stm32mp.config
index 027b9d6e2c43..6f383cb0eeed 100644
--- a/configs/platform-v7a/barebox-stm32mp.config
+++ b/configs/platform-v7a/barebox-stm32mp.config
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Barebox/arm 2020.04.0-20200424-2 Configuration
+# Barebox/arm 2020.06.0-20200617-1 Configuration
 #
 CONFIG_ARM=y
 CONFIG_ARM_LINUX=y
@@ -212,6 +212,7 @@ CONFIG_DEFAULT_LOGLEVEL=7
 # CONFIG_DEBUG_INITCALLS is not set
 # CONFIG_PBL_BREAK is not set
 # CONFIG_UBSAN is not set
+# CONFIG_COMPILE_TEST is not set
 # end of Debugging
 
 CONFIG_HAS_DEBUG_LL=y
@@ -413,7 +414,6 @@ CONFIG_OFTREE=y
 CONFIG_OFTREE_MEM_GENERIC=y
 CONFIG_DTC=y
 CONFIG_OFDEVICE=y
-CONFIG_OF_NET=y
 CONFIG_OF_GPIO=y
 CONFIG_OF_BAREBOX_DRIVERS=y
 # CONFIG_OF_BAREBOX_ENV_IN_FS is not set
@@ -558,6 +558,7 @@ CONFIG_MFD_SYSCON=y
 CONFIG_MFD_STPMIC1=y
 # CONFIG_FINTEK_SUPERIO is not set
 # CONFIG_SMSC_SUPERIO is not set
+# CONFIG_MFD_STM32_TIMERS is not set
 # end of Multifunction device drivers
 
 #
diff --git a/configs/platform-v7a/barebox-stm32mp.config.diff b/configs/platform-v7a/barebox-stm32mp.config.diff
index 81d1af5eb14d..bbe1e5390a89 100644
--- a/configs/platform-v7a/barebox-stm32mp.config.diff
+++ b/configs/platform-v7a/barebox-stm32mp.config.diff
@@ -1,4 +1,4 @@
-c0f89a11f3201404131209bd133590b7
+109c946cbc1413f3a576b02078a10c8b
 # CONFIG_ARCH_BCM283X is not set
 CONFIG_ARCH_HAS_RESET_CONTROLLER=y
 CONFIG_ARCH_NR_GPIO=416
@@ -73,6 +73,7 @@ CONFIG_MACH_STM32MP157C_DK2=y
 CONFIG_MCI_MMC_BOOT_PARTITIONS=y
 # CONFIG_MCI_SPI is undefined
 CONFIG_MCI_STM32_SDMMC2=y
+# CONFIG_MFD_STM32_TIMERS is not set
 CONFIG_MFD_STPMIC1=y
 CONFIG_MFD_SYSCON=y
 CONFIG_MICREL_PHY=y
@@ -133,6 +134,7 @@ CONFIG_THUMB2_BAREBOX=y
 # CONFIG_USB_GADGET_SERIAL is undefined
 # CONFIG_USB_HOST is not set
 # CONFIG_USB_HUB_USB251XB is undefined
+# CONFIG_USB_NET_AX88179_178A is undefined
 # CONFIG_USB_STORAGE is undefined
 # CONFIG_USB_ULPI is undefined
 # CONFIG_USB_XHCI is undefined
diff --git a/configs/platform-v7a/barebox-vexpress.config b/configs/platform-v7a/barebox-vexpress.config
index 2735b2071029..53c2943a1a1c 100644
--- a/configs/platform-v7a/barebox-vexpress.config
+++ b/configs/platform-v7a/barebox-vexpress.config
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Barebox/arm 2020.04.0-20200424-2 Configuration
+# Barebox/arm 2020.06.0-20200617-1 Configuration
 #
 CONFIG_ARM=y
 CONFIG_ARM_LINUX=y
@@ -206,6 +206,7 @@ CONFIG_DEFAULT_LOGLEVEL=6
 # CONFIG_DEBUG_INITCALLS is not set
 # CONFIG_PBL_BREAK is not set
 # CONFIG_UBSAN is not set
+# CONFIG_COMPILE_TEST is not set
 # end of Debugging
 
 CONFIG_HAS_DEBUG_LL=y
@@ -409,7 +410,6 @@ CONFIG_OFTREE=y
 CONFIG_OFTREE_MEM_GENERIC=y
 CONFIG_DTC=y
 CONFIG_OFDEVICE=y
-CONFIG_OF_NET=y
 CONFIG_OF_BAREBOX_DRIVERS=y
 # CONFIG_OF_BAREBOX_ENV_IN_FS is not set
 # CONFIG_OF_OVERLAY is not set
@@ -469,6 +469,7 @@ CONFIG_DRIVER_NET_SMC911X=y
 
 CONFIG_NET_USB=y
 CONFIG_NET_USB_ASIX=y
+# CONFIG_USB_NET_AX88179_178A is not set
 CONFIG_NET_USB_SMSC95XX=y
 # end of Network drivers
 
diff --git a/configs/platform-v7a/barebox-vexpress.config.diff b/configs/platform-v7a/barebox-vexpress.config.diff
index ed3d8f619d0d..2150908d8be8 100644
--- a/configs/platform-v7a/barebox-vexpress.config.diff
+++ b/configs/platform-v7a/barebox-vexpress.config.diff
@@ -1,4 +1,4 @@
-c0f89a11f3201404131209bd133590b7
+109c946cbc1413f3a576b02078a10c8b
 CONFIG_AMBA_SP804=y
 # CONFIG_ARCH_BCM283X is not set
 CONFIG_ARCH_VEXPRESS=y
diff --git a/configs/platform-v7a/barebox.config b/configs/platform-v7a/barebox.config
index e939f53adb00..4cd815be85c7 100644
--- a/configs/platform-v7a/barebox.config
+++ b/configs/platform-v7a/barebox.config
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Barebox/arm 2020.04.0-20200424-2 Configuration
+# Barebox/arm 2020.06.0-20200617-1 Configuration
 #
 CONFIG_ARM=y
 CONFIG_ARM_LINUX=y
@@ -219,6 +219,7 @@ CONFIG_DEFAULT_LOGLEVEL=6
 # CONFIG_DEBUG_INITCALLS is not set
 # CONFIG_PBL_BREAK is not set
 # CONFIG_UBSAN is not set
+# CONFIG_COMPILE_TEST is not set
 # end of Debugging
 
 CONFIG_HAS_DEBUG_LL=y
@@ -424,7 +425,6 @@ CONFIG_OFTREE=y
 CONFIG_OFTREE_MEM_GENERIC=y
 CONFIG_DTC=y
 CONFIG_OFDEVICE=y
-CONFIG_OF_NET=y
 CONFIG_OF_GPIO=y
 CONFIG_OF_BAREBOX_DRIVERS=y
 # CONFIG_OF_BAREBOX_ENV_IN_FS is not set
@@ -486,6 +486,7 @@ CONFIG_PHYLIB=y
 
 CONFIG_NET_USB=y
 CONFIG_NET_USB_ASIX=y
+# CONFIG_USB_NET_AX88179_178A is not set
 CONFIG_NET_USB_SMSC95XX=y
 # end of Network drivers
 
diff --git a/configs/platform-v7a/patches/barebox-2020.04.0/0001-ARM-stm32mp-add-Linux-Automation-MC-1-support.patch b/configs/platform-v7a/patches/barebox-2020.04.0/0001-ARM-stm32mp-add-Linux-Automation-MC-1-support.patch
deleted file mode 100644
index f6603021e9d5..000000000000
--- a/configs/platform-v7a/patches/barebox-2020.04.0/0001-ARM-stm32mp-add-Linux-Automation-MC-1-support.patch
+++ /dev/null
@@ -1,815 +0,0 @@
-From: Ahmad Fatoum <a.fatoum@pengutronix.de>
-Date: Tue, 14 Jan 2020 18:11:14 +0100
-Subject: [PATCH] ARM: stm32mp: add Linux Automation MC-1 support
-
-This adds support for the Linux Automation GmbH MC-1 board built around
-the Octavo Systems OSD32MP157C-512M SiP.
-
-The device tree is based on the one in linux-stm32/stm32-next, which
-will probably be merged for Linux v5.8-rc1. Instead of waiting that
-long, we import it here with some stuff removed/changed, so it's usable
-for both barebox and Linux, without the prerequisite patches.
-
-The non-barebox specific parts have been moved into separate DTSIs
-(arch/arm/dts/stm32mp{157c-lxa-mc1,15xx-osd32}.dtsi), so both can be
-dropped after the v5.8-rc1 sync with only include path change necessary
-in arch/arm/dts/stm32mp157c-lxa-mc1.dts.
-
-Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
----
- arch/arm/boards/Makefile              |   1 +
- arch/arm/boards/lxa-mc1/Makefile      |   2 +
- arch/arm/boards/lxa-mc1/board.c       |  31 +++
- arch/arm/boards/lxa-mc1/lowlevel.c    |  26 +++
- arch/arm/dts/Makefile                 |   1 +
- arch/arm/dts/stm32mp157c-lxa-mc1.dts  |  42 ++++
- arch/arm/dts/stm32mp157c-lxa-mc1.dtsi | 362 ++++++++++++++++++++++++++++++++++
- arch/arm/dts/stm32mp15xx-osd32.dtsi   | 229 +++++++++++++++++++++
- arch/arm/mach-stm32mp/Kconfig         |   4 +
- images/Makefile.stm32mp               |   5 +
- 10 files changed, 703 insertions(+)
- create mode 100644 arch/arm/boards/lxa-mc1/Makefile
- create mode 100644 arch/arm/boards/lxa-mc1/board.c
- create mode 100644 arch/arm/boards/lxa-mc1/lowlevel.c
- create mode 100644 arch/arm/dts/stm32mp157c-lxa-mc1.dts
- create mode 100644 arch/arm/dts/stm32mp157c-lxa-mc1.dtsi
- create mode 100644 arch/arm/dts/stm32mp15xx-osd32.dtsi
-
-diff --git a/arch/arm/boards/Makefile b/arch/arm/boards/Makefile
-index 9fe458e0a390..e9e9163d589b 100644
---- a/arch/arm/boards/Makefile
-+++ b/arch/arm/boards/Makefile
-@@ -129,6 +129,7 @@ obj-$(CONFIG_MACH_SOCFPGA_TERASIC_SOCKIT)	+= terasic-sockit/
- obj-$(CONFIG_MACH_SOLIDRUN_CUBOX)		+= solidrun-cubox/
- obj-$(CONFIG_MACH_SOLIDRUN_MICROSOM)		+= solidrun-microsom/
- obj-$(CONFIG_MACH_STM32MP157C_DK2)		+= stm32mp157c-dk2/
-+obj-$(CONFIG_MACH_LXA_MC1)			+= lxa-mc1/
- obj-$(CONFIG_MACH_TECHNEXION_PICO_HOBBIT)	+= technexion-pico-hobbit/
- obj-$(CONFIG_MACH_TECHNEXION_WANDBOARD)		+= technexion-wandboard/
- obj-$(CONFIG_MACH_TNY_A9260)			+= tny-a926x/
-diff --git a/arch/arm/boards/lxa-mc1/Makefile b/arch/arm/boards/lxa-mc1/Makefile
-new file mode 100644
-index 000000000000..092c31d6b28d
---- /dev/null
-+++ b/arch/arm/boards/lxa-mc1/Makefile
-@@ -0,0 +1,2 @@
-+lwl-y += lowlevel.o
-+obj-y += board.o
-diff --git a/arch/arm/boards/lxa-mc1/board.c b/arch/arm/boards/lxa-mc1/board.c
-new file mode 100644
-index 000000000000..d36924fc2793
---- /dev/null
-+++ b/arch/arm/boards/lxa-mc1/board.c
-@@ -0,0 +1,31 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+#include <common.h>
-+#include <linux/sizes.h>
-+#include <init.h>
-+#include <asm/memory.h>
-+#include <mach/bbu.h>
-+#include <bootsource.h>
-+
-+static int mc1_device_init(void)
-+{
-+	int flags;
-+	if (!of_machine_is_compatible("lxa,stm32mp157c-mc1"))
-+		return 0;
-+
-+	flags = bootsource_get_instance() == 0 ? BBU_HANDLER_FLAG_DEFAULT : 0;
-+	stm32mp_bbu_mmc_register_handler("sd", "/dev/mmc0.ssbl", flags);
-+
-+	flags = bootsource_get_instance() == 1 ? BBU_HANDLER_FLAG_DEFAULT : 0;
-+	stm32mp_bbu_mmc_register_handler("emmc", "/dev/mmc1.ssbl", flags);
-+
-+
-+	if (bootsource_get_instance() == 0)
-+		of_device_enable_path("/chosen/environment-sd");
-+	else
-+		of_device_enable_path("/chosen/environment-emmc");
-+
-+	barebox_set_hostname("lxa-mc1");
-+
-+	return 0;
-+}
-+device_initcall(mc1_device_init);
-diff --git a/arch/arm/boards/lxa-mc1/lowlevel.c b/arch/arm/boards/lxa-mc1/lowlevel.c
-new file mode 100644
-index 000000000000..274f824a1662
---- /dev/null
-+++ b/arch/arm/boards/lxa-mc1/lowlevel.c
-@@ -0,0 +1,26 @@
-+// SPDX-License-Identifier: GPL-2.0+
-+#include <common.h>
-+#include <mach/entry.h>
-+#include <debug_ll.h>
-+
-+extern char __dtb_z_stm32mp157c_lxa_mc1_start[];
-+
-+static void setup_uart(void)
-+{
-+	/* first stage has set up the UART, so nothing to do here */
-+	putc_ll('>');
-+}
-+
-+ENTRY_FUNCTION(start_stm32mp157c_lxa_mc1, r0, r1, r2)
-+{
-+	void *fdt;
-+
-+	stm32mp_cpu_lowlevel_init();
-+
-+	if (IS_ENABLED(CONFIG_DEBUG_LL))
-+		setup_uart();
-+
-+	fdt = __dtb_z_stm32mp157c_lxa_mc1_start + get_runtime_offset();
-+
-+	stm32mp1_barebox_entry(fdt);
-+}
-diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
-index ddfe64e83bdf..1aeaa61e017e 100644
---- a/arch/arm/dts/Makefile
-+++ b/arch/arm/dts/Makefile
-@@ -94,6 +94,7 @@ lwl-dtb-$(CONFIG_MACH_SOLIDRUN_MICROSOM) += imx6dl-hummingboard.dtb.o imx6q-humm
- 				imx6dl-hummingboard2.dtb.o imx6q-hummingboard2.dtb.o \
- 				imx6q-h100.dtb.o
- lwl-dtb-$(CONFIG_MACH_STM32MP157C_DK2) += stm32mp157c-dk2.dtb.o
-+lwl-dtb-$(CONFIG_MACH_LXA_MC1) += stm32mp157c-lxa-mc1.dtb.o
- lwl-dtb-$(CONFIG_MACH_SCB9328) += imx1-scb9328.dtb.o
- lwl-dtb-$(CONFIG_MACH_TECHNEXION_WANDBOARD) += imx6q-wandboard.dtb.o imx6dl-wandboard.dtb.o
- lwl-dtb-$(CONFIG_MACH_TECHNEXION_PICO_HOBBIT) += imx6ul-pico-hobbit.dtb.o
-diff --git a/arch/arm/dts/stm32mp157c-lxa-mc1.dts b/arch/arm/dts/stm32mp157c-lxa-mc1.dts
-new file mode 100644
-index 000000000000..742739424ea7
---- /dev/null
-+++ b/arch/arm/dts/stm32mp157c-lxa-mc1.dts
-@@ -0,0 +1,42 @@
-+// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
-+/*
-+ * Copyright (C) 2020 Ahmad Fatoum, Pengutronix
-+ */
-+
-+#include "stm32mp157c-lxa-mc1.dtsi"
-+#include "stm32mp151.dtsi"
-+
-+/ {
-+	chosen {
-+		environment-sd {
-+			compatible = "barebox,environment";
-+			device-path = &sdmmc1, "partname:barebox-environment";
-+		};
-+
-+		environment-emmc {
-+			compatible = "barebox,environment";
-+			device-path = &sdmmc2, "partname:barebox-environment";
-+		};
-+	};
-+
-+};
-+
-+&panel {
-+	display-timings {
-+		timing { /* edt,etm0700g0dh6 */
-+			clock-frequency = <33260000>;
-+			hactive = <800>;
-+			vactive = <480>;
-+			hfront-porch = <40>;
-+			hsync-len = <128>;
-+			hback-porch = <88>;
-+			vfront-porch = <10>;
-+			vsync-len = <2>;
-+			vback-porch = <33>;
-+			hsync-active = <0>;
-+			vsync-active = <0>;
-+			de-active = <1>;
-+			pixelclk-active = <0>;
-+		};
-+	};
-+};
-diff --git a/arch/arm/dts/stm32mp157c-lxa-mc1.dtsi b/arch/arm/dts/stm32mp157c-lxa-mc1.dtsi
-new file mode 100644
-index 000000000000..6603cf280eb2
---- /dev/null
-+++ b/arch/arm/dts/stm32mp157c-lxa-mc1.dtsi
-@@ -0,0 +1,362 @@
-+/* SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-3-Clause) */
-+/*
-+ * Copyright (C) 2020 STMicroelectronics - All Rights Reserved
-+ * Copyright (C) 2020 Ahmad Fatoum, Pengutronix
-+ */
-+
-+/dts-v1/;
-+
-+#include <arm/stm32mp157.dtsi>
-+#include "stm32mp15xx-osd32.dtsi"
-+#include <arm/stm32mp15xxac-pinctrl.dtsi>
-+
-+#include <dt-bindings/gpio/gpio.h>
-+#include <dt-bindings/pwm/pwm.h>
-+
-+/ {
-+	model = "Linux Automation MC-1 board";
-+	compatible = "lxa,stm32mp157c-mc1", "st,stm32mp157";
-+
-+	aliases {
-+		ethernet0 = &ethernet0;
-+		mmc0 = &sdmmc1;
-+		mmc1 = &sdmmc2;
-+		serial0 = &uart4;
-+	};
-+
-+	backlight: backlight {
-+		compatible = "pwm-backlight";
-+		pwms = <&backlight_pwm 1 100000 PWM_POLARITY_INVERTED>;
-+		brightness-levels = <0 31 63 95 127 159 191 223 255>;
-+		default-brightness-level = <7>;
-+		power-supply = <&reg_5v2>; /* 3V3_BACKLIGHT */
-+	};
-+
-+	chosen {
-+		stdout-path = &uart4;
-+	};
-+
-+	led-act {
-+		compatible = "gpio-leds";
-+
-+		led-green {
-+			label = "mc1:green:act";
-+			gpios = <&gpioa 13 GPIO_ACTIVE_LOW>;
-+			linux,default-trigger = "heartbeat";
-+		};
-+	};
-+
-+	led-rgb {
-+		compatible = "pwm-leds";
-+
-+		led-red {
-+			label = "mc1:red:rgb";
-+			pwms = <&leds_pwm 1 1000000 0>;
-+			max-brightness = <255>;
-+			active-low;
-+		};
-+
-+		led-green {
-+			label = "mc1:green:rgb";
-+			pwms = <&leds_pwm 2 1000000 0>;
-+			max-brightness = <255>;
-+			active-low;
-+		};
-+
-+		led-blue {
-+			label = "mc1:blue:rgb";
-+			pwms = <&leds_pwm 3 1000000 0>;
-+			max-brightness = <255>;
-+			active-low;
-+		};
-+	};
-+
-+	panel: panel {
-+		compatible = "edt,etm0700g0edh6", "simple-panel";
-+		backlight = <&backlight>;
-+		enable-gpios = <&gpiod 4 GPIO_ACTIVE_HIGH>;
-+		power-supply = <&reg_3v3>;
-+
-+		port {
-+			panel_input: endpoint {
-+				remote-endpoint = <&ltdc_ep0_out>;
-+			};
-+		};
-+	};
-+
-+	reg_3v3: regulator_3v3 {
-+		compatible = "regulator-fixed";
-+		regulator-name = "3V3";
-+		regulator-min-microvolt = <3300000>;
-+		regulator-max-microvolt = <3300000>;
-+		regulator-always-on;
-+		vin-supply = <&v3v3>;
-+	};
-+
-+	/* supplied by either debug board or PoE */
-+	reg_5v2: regulator_5v2 {
-+		compatible = "regulator-fixed";
-+		regulator-name = "5V2";
-+		regulator-min-microvolt = <5200000>;
-+		regulator-max-microvolt = <5200000>;
-+		regulator-always-on;
-+	};
-+};
-+
-+&ethernet0 {
-+	pinctrl-names = "default";
-+	pinctrl-0 = <&ethernet0_rgmii_mc1pins_b>;
-+	phy-mode = "rgmii-id";
-+	phy-handle = <&ethphy>;
-+	status = "okay";
-+
-+	mdio0 {
-+		compatible = "snps,dwmac-mdio";
-+		#address-cells = <1>;
-+		#size-cells = <0>;
-+
-+		ethphy: ethernet-phy@3 { /* KSZ9031RN */
-+			reg = <3>;
-+			reset-gpios = <&gpiog 0 GPIO_ACTIVE_LOW>; /* ETH_RST# */
-+			interrupt-parent = <&gpioa>;
-+			interrupts = <6 IRQ_TYPE_EDGE_FALLING>; /* ETH_MDINT# */
-+			rxc-skew-ps = <1860>;
-+			txc-skew-ps = <1860>;
-+			reset-assert-us = <10000>;
-+			reset-deassert-us = <300>;
-+			micrel,force-master;
-+		};
-+	};
-+};
-+
-+&gpioz {
-+	gpio-line-names = "HWID0", "HWID1", "HWID2", "HWID3", "", "",
-+			  "HWID4", "HWID5";
-+};
-+
-+&gpu {
-+	status = "okay";
-+};
-+
-+&i2c5 {
-+	pinctrl-names = "default";
-+	pinctrl-0 = <&i2c5_mc1pins_b>;
-+	clock-frequency = <400000>;
-+	status = "okay";
-+
-+	touchscreen@38 {
-+		compatible = "edt,edt-ft5x06";
-+		interrupt-parent = <&gpiod>;
-+		interrupts = <11 IRQ_TYPE_EDGE_FALLING>; /* TOUCH_INT# */
-+		vcc-supply = <&reg_3v3>;
-+		reg = <0x38>;
-+		reset-gpios = <&gpiof 8 GPIO_ACTIVE_LOW>; /* TOUCH_RESET# */
-+		touchscreen-size-x = <1792>;
-+		touchscreen-size-y = <1024>;
-+		wakeup-source;
-+	};
-+};
-+
-+&ltdc {
-+	pinctrl-names = "default";
-+	pinctrl-0 = <&ltdc_mc1pins_c>;
-+	status = "okay";
-+
-+	port {
-+		#address-cells = <1>;
-+		#size-cells = <0>;
-+		ltdc_ep0_out: endpoint@0 {
-+			reg = <0>;
-+			remote-endpoint = <&panel_input>;
-+		};
-+	};
-+};
-+
-+&pmic {
-+	regulators {
-+		buck4-supply = <&reg_5v2>;	/* VIN */
-+		ldo2-supply = <&reg_5v2>;	/* PMIC_LDO25IN */
-+		ldo5-supply = <&reg_5v2>;	/* PMIC_LDO25IN */
-+		boost-supply = <&reg_5v2>;	/* PMIC_BSTIN */
-+		pwr_sw2-supply = <&bst_out>;    /* PMIC_SWIN */
-+	};
-+};
-+
-+&sdmmc1 {
-+	pinctrl-names = "default", "opendrain";
-+	pinctrl-0 = <&sdmmc1_b4_pins_a>;
-+	pinctrl-1 = <&sdmmc1_b4_od_pins_a>;
-+	bus-width = <4>;
-+	cd-gpios = <&gpioh 3 GPIO_ACTIVE_LOW>;
-+	disable-wp;
-+	no-1-8-v;
-+	st,neg-edge;
-+	vmmc-supply = <&reg_3v3>;
-+	status = "okay";
-+};
-+
-+&sdmmc1_b4_pins_a {
-+	/*
-+	 * board lacks external pull-ups on SDMMC lines. Class 10 SD refuses to
-+	 * work, thus enable internal pull-ups.
-+	 */
-+	pins1 {
-+		/delete-property/ bias-disable;
-+		bias-pull-up;
-+	};
-+	pins2 {
-+		/delete-property/ bias-disable;
-+		bias-pull-up;
-+	};
-+};
-+
-+&sdmmc2 {
-+	pinctrl-names = "default", "opendrain";
-+	pinctrl-0 = <&sdmmc2_b4_pins_a &sdmmc2_d47_mc1pins_b>;
-+	pinctrl-1 = <&sdmmc2_b4_od_pins_a &sdmmc2_d47_mc1pins_b>;
-+	bus-width = <8>;
-+	no-1-8-v;
-+	no-sd;
-+	no-sdio;
-+	non-removable;
-+	st,neg-edge;
-+	vmmc-supply = <&reg_3v3>;
-+	status = "okay";
-+};
-+
-+&timers3 {
-+	status = "okay";
-+
-+	backlight_pwm: pwm {
-+		pinctrl-names = "default";
-+		pinctrl-0 = <&pwm3_mc1pins_b>;
-+		status = "okay";
-+	};
-+};
-+
-+&timers5 {
-+	status = "okay";
-+
-+	leds_pwm: pwm {
-+		pinctrl-names = "default";
-+		pinctrl-0 = <&pwm5_mc1pins_b>;
-+		status = "okay";
-+	};
-+};
-+
-+&uart4 {
-+	pinctrl-names = "default";
-+	pinctrl-0 = <&uart4_pins_a>;
-+	status = "okay";
-+};
-+
-+&pinctrl {
-+	ethernet0_rgmii_mc1pins_b: mc1-rgmii-1 {
-+		pins1 {
-+			pinmux = <STM32_PINMUX('G', 5, AF11)>, /* ETH_RGMII_CLK125 */
-+				 <STM32_PINMUX('G', 4, AF11)>, /* ETH_RGMII_GTX_CLK */
-+				 <STM32_PINMUX('G', 13, AF11)>, /* ETH_RGMII_TXD0 */
-+				 <STM32_PINMUX('G', 14, AF11)>, /* ETH_RGMII_TXD1 */
-+				 <STM32_PINMUX('C', 2, AF11)>, /* ETH_RGMII_TXD2 */
-+				 <STM32_PINMUX('E', 2, AF11)>, /* ETH_RGMII_TXD3 */
-+				 <STM32_PINMUX('B', 11, AF11)>, /* ETH_RGMII_TX_CTL */
-+				 <STM32_PINMUX('C', 1, AF11)>; /* ETH_MDC */
-+			bias-disable;
-+			drive-push-pull;
-+			slew-rate = <2>;
-+		};
-+		pins2 {
-+			pinmux = <STM32_PINMUX('A', 2, AF11)>; /* ETH_MDIO */
-+			bias-disable;
-+			drive-push-pull;
-+			slew-rate = <0>;
-+		};
-+		pins3 {
-+			pinmux = <STM32_PINMUX('C', 4, AF11)>, /* ETH_RGMII_RXD0 */
-+				 <STM32_PINMUX('C', 5, AF11)>, /* ETH_RGMII_RXD1 */
-+				 <STM32_PINMUX('H', 6, AF11)>, /* ETH_RGMII_RXD2 */
-+				 <STM32_PINMUX('H', 7, AF11)>, /* ETH_RGMII_RXD3 */
-+				 <STM32_PINMUX('A', 1, AF11)>, /* ETH_RGMII_RX_CLK */
-+				 <STM32_PINMUX('A', 7, AF11)>; /* ETH_RGMII_RX_CTL */
-+			bias-disable;
-+		};
-+	};
-+
-+	i2c5_mc1pins_b: mc1-i2c5-1 {
-+		pins {
-+			pinmux = <STM32_PINMUX('D', 0, AF4)>, /* I2C5_SCL */
-+			         <STM32_PINMUX('D', 1, AF4)>; /* I2C5_SDA */
-+			bias-disable;
-+			drive-open-drain;
-+			slew-rate = <0>;
-+		};
-+	};
-+
-+	ltdc_mc1pins_c: mc1-ltdc-2 {
-+		pins1 {
-+			pinmux = <STM32_PINMUX('B',  1, AF9)>,  /* LTDC_R6 */
-+				 <STM32_PINMUX('B',  9, AF14)>, /* LTDC_B7 */
-+				 <STM32_PINMUX('C',  0, AF14)>, /* LTDC_R5 */
-+				 <STM32_PINMUX('D',  3, AF14)>, /* LTDC_G7 */
-+				 <STM32_PINMUX('D',  6, AF14)>, /* LTDC_B2 */
-+				 <STM32_PINMUX('D', 10, AF14)>, /* LTDC_B3 */
-+				 <STM32_PINMUX('E', 11, AF14)>, /* LTDC_G3 */
-+				 <STM32_PINMUX('E', 12, AF14)>, /* LTDC_B4 */
-+				 <STM32_PINMUX('E', 13, AF14)>, /* LTDC_DE */
-+				 <STM32_PINMUX('E', 15, AF14)>, /* LTDC_R7 */
-+				 <STM32_PINMUX('H',  4, AF9)>,  /* LTDC_G5 */
-+				 <STM32_PINMUX('H',  8, AF14)>, /* LTDC_R2 */
-+				 <STM32_PINMUX('H',  9, AF14)>, /* LTDC_R3 */
-+				 <STM32_PINMUX('H', 10, AF14)>, /* LTDC_R4 */
-+				 <STM32_PINMUX('H', 13, AF14)>, /* LTDC_G2 */
-+				 <STM32_PINMUX('H', 15, AF14)>, /* LTDC_G4 */
-+				 <STM32_PINMUX('I',  1, AF14)>, /* LTDC_G6 */
-+				 <STM32_PINMUX('I',  5, AF14)>, /* LTDC_B5 */
-+				 <STM32_PINMUX('I',  6, AF14)>, /* LTDC_B6 */
-+				 <STM32_PINMUX('I',  9, AF14)>, /* LTDC_VSYNC */
-+				 <STM32_PINMUX('I', 10, AF14)>; /* LTDC_HSYNC */
-+			bias-disable;
-+			drive-push-pull;
-+			slew-rate = <0>;
-+		};
-+		pins2 {
-+			pinmux = <STM32_PINMUX('E', 14, AF14)>; /* LTDC_CLK */
-+			bias-disable;
-+			drive-push-pull;
-+			slew-rate = <1>;
-+		};
-+	};
-+
-+	pwm3_mc1pins_b: mc1-pwm3-1 {
-+		pins {
-+			pinmux = <STM32_PINMUX('B', 5, AF2)>; /* TIM3_CH2 */
-+			bias-disable;
-+			drive-push-pull;
-+			slew-rate = <0>;
-+		};
-+	};
-+
-+	pwm5_mc1pins_b: mc1-pwm5-1 {
-+		pins {
-+			pinmux = <STM32_PINMUX('H', 11, AF2)>, /* TIM5_CH2 */
-+				 <STM32_PINMUX('H', 12, AF2)>, /* TIM5_CH3 */
-+				 <STM32_PINMUX('I', 0, AF2)>; /* TIM5_CH4 */
-+			bias-disable;
-+			drive-push-pull;
-+			slew-rate = <0>;
-+		};
-+	};
-+
-+	sdmmc2_d47_mc1pins_b: mc1-sdmmc2-d47-1 {
-+		pins {
-+			pinmux = <STM32_PINMUX('A', 8, AF9)>,  /* SDMMC2_D4 */
-+				 <STM32_PINMUX('A', 9, AF10)>, /* SDMMC2_D5 */
-+				 <STM32_PINMUX('C', 6, AF10)>, /* SDMMC2_D6 */
-+				 <STM32_PINMUX('C', 7, AF10)>; /* SDMMC2_D7 */
-+			slew-rate = <1>;
-+			drive-push-pull;
-+			bias-disable;
-+		};
-+	};
-+
-+};
-diff --git a/arch/arm/dts/stm32mp15xx-osd32.dtsi b/arch/arm/dts/stm32mp15xx-osd32.dtsi
-new file mode 100644
-index 000000000000..87508350339e
---- /dev/null
-+++ b/arch/arm/dts/stm32mp15xx-osd32.dtsi
-@@ -0,0 +1,229 @@
-+/* SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-3-Clause) */
-+/*
-+ * Copyright (C) 2020 STMicroelectronics - All Rights Reserved
-+ * Copyright (C) 2020 Ahmad Fatoum, Pengutronix
-+ */
-+
-+#include <arm/stm32mp15-pinctrl.dtsi>
-+
-+#include <dt-bindings/mfd/st,stpmic1.h>
-+
-+/ {
-+	reserved-memory {
-+		#address-cells = <1>;
-+		#size-cells = <1>;
-+		ranges;
-+
-+		mcuram2: mcuram2@10000000 {
-+			compatible = "shared-dma-pool";
-+			reg = <0x10000000 0x40000>;
-+			no-map;
-+		};
-+
-+		vdev0vring0: vdev0vring0@10040000 {
-+			compatible = "shared-dma-pool";
-+			reg = <0x10040000 0x1000>;
-+			no-map;
-+		};
-+
-+		vdev0vring1: vdev0vring1@10041000 {
-+			compatible = "shared-dma-pool";
-+			reg = <0x10041000 0x1000>;
-+			no-map;
-+		};
-+
-+		vdev0buffer: vdev0buffer@10042000 {
-+			compatible = "shared-dma-pool";
-+			reg = <0x10042000 0x4000>;
-+			no-map;
-+		};
-+
-+		mcuram: mcuram@30000000 {
-+			compatible = "shared-dma-pool";
-+			reg = <0x30000000 0x40000>;
-+			no-map;
-+		};
-+
-+		retram: retram@38000000 {
-+			compatible = "shared-dma-pool";
-+			reg = <0x38000000 0x10000>;
-+			no-map;
-+		};
-+	};
-+
-+	reg_sip_eeprom: regulator_eeprom {
-+		compatible = "regulator-fixed";
-+		regulator-name = "sip_eeprom";
-+		regulator-always-on;
-+	};
-+};
-+
-+&i2c4 {
-+	pinctrl-names = "default";
-+	pinctrl-0 = <&i2c4_pins_a>;
-+	clock-frequency = <400000>;
-+	i2c-scl-rising-time-ns = <185>;
-+	i2c-scl-falling-time-ns = <20>;
-+	status = "okay";
-+
-+	pmic: stpmic@33 {
-+		compatible = "st,stpmic1";
-+		reg = <0x33>;
-+		interrupts-extended = <&gpioa 0 IRQ_TYPE_EDGE_FALLING>;
-+		interrupt-controller;
-+		#interrupt-cells = <2>;
-+
-+		regulators {
-+			compatible = "st,stpmic1-regulators";
-+
-+			ldo1-supply = <&v3v3>;
-+			ldo6-supply = <&v3v3>;
-+			pwr_sw1-supply = <&bst_out>;
-+
-+			vddcore: buck1 {
-+				regulator-name = "vddcore";
-+				regulator-min-microvolt = <1200000>;
-+				regulator-max-microvolt = <1350000>;
-+				regulator-always-on;
-+				regulator-initial-mode = <0>;
-+				regulator-over-current-protection;
-+			};
-+
-+			vdd_ddr: buck2 {
-+				regulator-name = "vdd_ddr";
-+				regulator-min-microvolt = <1350000>;
-+				regulator-max-microvolt = <1350000>;
-+				regulator-always-on;
-+				regulator-initial-mode = <0>;
-+				regulator-over-current-protection;
-+			};
-+
-+			vdd: buck3 {
-+				regulator-name = "vdd";
-+				regulator-min-microvolt = <3300000>;
-+				regulator-max-microvolt = <3300000>;
-+				regulator-always-on;
-+				st,mask-reset;
-+				regulator-initial-mode = <0>;
-+				regulator-over-current-protection;
-+			};
-+
-+			v3v3: buck4 {
-+				regulator-name = "v3v3";
-+				regulator-min-microvolt = <3300000>;
-+				regulator-max-microvolt = <3300000>;
-+				regulator-always-on;
-+				regulator-over-current-protection;
-+				regulator-initial-mode = <0>;
-+			};
-+
-+			v1v8_audio: ldo1 {
-+				regulator-name = "v1v8_audio";
-+				regulator-min-microvolt = <1800000>;
-+				regulator-max-microvolt = <1800000>;
-+				regulator-always-on;
-+				interrupts = <IT_CURLIM_LDO1 0>;
-+
-+			};
-+
-+			v3v3_hdmi: ldo2 {
-+				regulator-name = "v3v3_hdmi";
-+				regulator-min-microvolt = <3300000>;
-+				regulator-max-microvolt = <3300000>;
-+				regulator-always-on;
-+				interrupts = <IT_CURLIM_LDO2 0>;
-+
-+			};
-+
-+			vtt_ddr: ldo3 {
-+				regulator-name = "vtt_ddr";
-+				regulator-min-microvolt = <500000>;
-+				regulator-max-microvolt = <750000>;
-+				regulator-always-on;
-+				regulator-over-current-protection;
-+			};
-+
-+			vdd_usb: ldo4 {
-+				regulator-name = "vdd_usb";
-+				regulator-min-microvolt = <3300000>;
-+				regulator-max-microvolt = <3300000>;
-+				interrupts = <IT_CURLIM_LDO4 0>;
-+			};
-+
-+			vdda: ldo5 {
-+				regulator-name = "vdda";
-+				regulator-min-microvolt = <2900000>;
-+				regulator-max-microvolt = <2900000>;
-+				interrupts = <IT_CURLIM_LDO5 0>;
-+				regulator-boot-on;
-+			};
-+
-+			v1v2_hdmi: ldo6 {
-+				regulator-name = "v1v2_hdmi";
-+				regulator-min-microvolt = <1200000>;
-+				regulator-max-microvolt = <1200000>;
-+				regulator-always-on;
-+				interrupts = <IT_CURLIM_LDO6 0>;
-+
-+			};
-+
-+			vref_ddr: vref_ddr {
-+				regulator-name = "vref_ddr";
-+				regulator-always-on;
-+				regulator-over-current-protection;
-+			};
-+
-+			bst_out: boost {
-+				regulator-name = "bst_out";
-+				interrupts = <IT_OCP_BOOST 0>;
-+			};
-+
-+			vbus_otg: pwr_sw1 {
-+				regulator-name = "vbus_otg";
-+				interrupts = <IT_OCP_OTG 0>;
-+				regulator-active-discharge;
-+			};
-+
-+			vbus_sw: pwr_sw2 {
-+				regulator-name = "vbus_sw";
-+				interrupts = <IT_OCP_SWOUT 0>;
-+				regulator-active-discharge;
-+			};
-+		};
-+
-+		onkey {
-+			compatible = "st,stpmic1-onkey";
-+			interrupts = <IT_PONKEY_F 0>, <IT_PONKEY_R 1>;
-+			interrupt-names = "onkey-falling", "onkey-rising";
-+		};
-+
-+		pmic_watchdog: watchdog {
-+			compatible = "st,stpmic1-wdt";
-+			status = "disabled";
-+		};
-+	};
-+
-+	sip_eeprom: eeprom@50 {
-+		compatible = "atmel,24c32";
-+		vcc-supply = <&reg_sip_eeprom>;
-+		reg = <0x50>;
-+	};
-+};
-+
-+&ipcc {
-+	status = "okay";
-+};
-+
-+&m4_rproc {
-+	memory-region = <&retram>, <&mcuram>, <&mcuram2>, <&vdev0vring0>,
-+			<&vdev0vring1>, <&vdev0buffer>;
-+	mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>;
-+	mbox-names = "vq0", "vq1", "shutdown";
-+	interrupt-parent = <&exti>;
-+	interrupts = <68 1>;
-+	status = "okay";
-+};
-+
-+&rng1 {
-+	status = "okay";
-+};
-diff --git a/arch/arm/mach-stm32mp/Kconfig b/arch/arm/mach-stm32mp/Kconfig
-index 9b55a3d21843..6e816ef9d1a4 100644
---- a/arch/arm/mach-stm32mp/Kconfig
-+++ b/arch/arm/mach-stm32mp/Kconfig
-@@ -12,4 +12,8 @@ config MACH_STM32MP157C_DK2
- 	select ARCH_STM32MP157
- 	bool "STM32MP157C-DK2 board"
- 
-+config MACH_LXA_MC1
-+	select ARCH_STM32MP157
-+	bool "Linux Automation MC-1 board"
-+
- endif
-diff --git a/images/Makefile.stm32mp b/images/Makefile.stm32mp
-index 910e029a5b66..38872c952571 100644
---- a/images/Makefile.stm32mp
-+++ b/images/Makefile.stm32mp
-@@ -17,3 +17,8 @@ pblb-$(CONFIG_MACH_STM32MP157C_DK2) += start_stm32mp157c_dk2
- FILE_barebox-stm32mp157c-dk2.img = start_stm32mp157c_dk2.pblb.stm32
- OPTS_start_stm32mp157c_dk2.pblb.stm32 = $(STM32MP1_OPTS)
- image-$(CONFIG_MACH_STM32MP157C_DK2) += barebox-stm32mp157c-dk2.img
-+
-+pblb-$(CONFIG_MACH_LXA_MC1) += start_stm32mp157c_lxa_mc1
-+FILE_barebox-stm32mp157c-lxa-mc1.img = start_stm32mp157c_lxa_mc1.pblb.stm32
-+OPTS_start_stm32mp157c_lxa_mc1.pblb.stm32 = $(STM32MP1_OPTS)
-+image-$(CONFIG_MACH_LXA_MC1) += barebox-stm32mp157c-lxa-mc1.img
diff --git a/configs/platform-v7a/patches/barebox-2020.04.0/0002-ARM-stm32mp-lxa-mc1-break-reg_3v3-dependency-on-PMIC.patch b/configs/platform-v7a/patches/barebox-2020.04.0/0002-ARM-stm32mp-lxa-mc1-break-reg_3v3-dependency-on-PMIC.patch
deleted file mode 100644
index 451bb7b6aa2b..000000000000
--- a/configs/platform-v7a/patches/barebox-2020.04.0/0002-ARM-stm32mp-lxa-mc1-break-reg_3v3-dependency-on-PMIC.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From: Ahmad Fatoum <a.fatoum@pengutronix.de>
-Date: Thu, 13 Feb 2020 11:10:44 +0100
-Subject: [PATCH] ARM: stm32mp: lxa-mc1: break reg_3v3 dependency on PMIC
-
-While the regulator is indeed powered by the PMIC, basically the whole
-system is, and it's always on. Linux doesn't handle this specially
-however and will defer SDMMC probe till after the PMIC is probed costing
-us some valuable boot time. Fix this up.
-
-Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
----
- arch/arm/boards/lxa-mc1/board.c | 29 ++++++++++++++++++++++++++++-
- 1 file changed, 28 insertions(+), 1 deletion(-)
-
-diff --git a/arch/arm/boards/lxa-mc1/board.c b/arch/arm/boards/lxa-mc1/board.c
-index d36924fc2793..7f1f3ccd7e06 100644
---- a/arch/arm/boards/lxa-mc1/board.c
-+++ b/arch/arm/boards/lxa-mc1/board.c
-@@ -5,6 +5,28 @@
- #include <asm/memory.h>
- #include <mach/bbu.h>
- #include <bootsource.h>
-+#include <of.h>
-+
-+static int of_fixup_regulator_supply_disable(struct device_node *root, void *path)
-+{
-+	struct device_node *node;
-+	struct property *prop;
-+
-+	node = of_find_node_by_path_from(root, path);
-+	if (!node) {
-+		pr_warn("fixup for %s failed: not found\n", (const char *)path);
-+		return -ENOENT;
-+	}
-+
-+	if (!of_property_read_bool(node, "regulator-always-on"))
-+		return 0;
-+
-+	prop = of_find_property(node, "vin-supply", NULL);
-+	if (prop)
-+		of_delete_property(prop);
-+
-+	return 0;
-+}
- 
- static int mc1_device_init(void)
- {
-@@ -26,6 +48,11 @@ static int mc1_device_init(void)
- 
- 	barebox_set_hostname("lxa-mc1");
- 
--	return 0;
-+	/* The regulator is powered by the PMIC, but is always on as far as
-+	 * software is concerned. Break the reference to the PMIC, so the OS
-+	 * doesn't need to defer SDMMC/Ethernet peripherals till after the PMIC
-+	 * is up.
-+	 */
-+	return of_register_fixup(of_fixup_regulator_supply_disable, "/regulator_3v3");
- }
- device_initcall(mc1_device_init);
diff --git a/configs/platform-v7a/patches/barebox-2020.04.0/series b/configs/platform-v7a/patches/barebox-2020.04.0/series
deleted file mode 100644
index 83b5861ba980..000000000000
--- a/configs/platform-v7a/patches/barebox-2020.04.0/series
+++ /dev/null
@@ -1,12 +0,0 @@
-# umpf-base: v2020.04.0
-# umpf-name: 2020.04.0/customers/pengutronix/distrokit-v7a
-# umpf-version: 2020.04.0/customers/pengutronix/distrokit-v7a/20200424-2
-# umpf-topic: v2020.04.0/customers/lag/mc1
-# umpf-hashinfo: 2e41d9501ca57285e1e5e4750e6faba8df7addf2
-# umpf-topic-range: a999dc558770732d475e423060d54b93e36436ce..b379003cdf62913430a3ddad52a8b3a0ce87ab6f
-0001-ARM-stm32mp-add-Linux-Automation-MC-1-support.patch
-0002-ARM-stm32mp-lxa-mc1-break-reg_3v3-dependency-on-PMIC.patch
-# umpf-release: 2020.04.0/customers/pengutronix/distrokit-v7a/20200424-2
-# umpf-topic-range: b379003cdf62913430a3ddad52a8b3a0ce87ab6f..1db48ec1cf199fd9c9f17c8e3c243824ee4f5f5c
-0101-Release-2020.04.0-customers-pengutronix-distrokit-v7.patch
-# umpf-end
diff --git a/configs/platform-v7a/patches/barebox-2020.06.0/0001-ARM-rpi-dts-fix-MMIO-resources-clash-breaking-boot.patch b/configs/platform-v7a/patches/barebox-2020.06.0/0001-ARM-rpi-dts-fix-MMIO-resources-clash-breaking-boot.patch
new file mode 100644
index 000000000000..20ab6f1a424d
--- /dev/null
+++ b/configs/platform-v7a/patches/barebox-2020.06.0/0001-ARM-rpi-dts-fix-MMIO-resources-clash-breaking-boot.patch
@@ -0,0 +1,106 @@
+From: Ahmad Fatoum <a.fatoum@pengutronix.de>
+Date: Wed, 17 Jun 2020 15:05:58 +0200
+Subject: [PATCH] ARM: rpi: dts: fix MMIO resources clash breaking boot
+
+The rpi3b device tree specifies 1G of RAM in the memory node, but maps
+the highest 16M of RAM's physical address range for peripheral use.
+
+When support for device tree probing was first added for the rpi3b
+in e8fab18835a1 ("ARM: rpi: switch to DT probe and multi-image build"),
+it had a memory { } node overriding the kernel node size with 0, so the
+size is computed later correctly.
+
+1dc748b3b202 ("dts: update to v5.1-rc1") came and renamed the upstream
+memory { } node to memory@0. So instead of overriding the old, we
+now created a second dummy along with the broken node.
+barebox did only parse the dummy, so it continued to limp along.
+
+8226f7f90973 ("of: base: parse all available memory nodes") started
+considering both nodes and rendered barebox v2020.05.0 unable to start
+up on the rpi3b because of the conflict between RAM range and peripherals
+like the bcm2835_mbox caused by parsing the broken memory node.
+
+At least one board also was broken for the same reason[1], so a more
+robust approach is in order. For nodes that lack a phandle, the
+&{/path} syntax can be used instead. This has the benefit that should
+the path disappear in future, a compile failure would result.
+
+[1] 0d26ce1c11a1 ("ARM: Phytec phyFLEX i.MX6: delete wrong memory node")
+
+Fixes: 1dc748b3b202 ("dts: update to v5.1-rc1")
+Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
+---
+ arch/arm/dts/bcm2835-rpi.dts     | 6 +++---
+ arch/arm/dts/bcm2836-rpi-2.dts   | 6 +++---
+ arch/arm/dts/bcm2837-rpi-3.dts   | 6 +++---
+ arch/arm/dts/bcm2837-rpi-cm3.dts | 6 +++---
+ 4 files changed, 12 insertions(+), 12 deletions(-)
+
+diff --git a/arch/arm/dts/bcm2835-rpi.dts b/arch/arm/dts/bcm2835-rpi.dts
+index c23e7c7c142b..4f227508010b 100644
+--- a/arch/arm/dts/bcm2835-rpi.dts
++++ b/arch/arm/dts/bcm2835-rpi.dts
+@@ -4,10 +4,10 @@
+ 	chosen {
+ 		stdout-path = &uart0;
+ 	};
++};
+ 
+-	memory {
+-		reg = <0x0 0x0>;
+-	};
++&{/memory@0} {
++	reg = <0x0 0x0>;
+ };
+ 
+ &sdhci {
+diff --git a/arch/arm/dts/bcm2836-rpi-2.dts b/arch/arm/dts/bcm2836-rpi-2.dts
+index 42b6abb180de..c9c3892d6a21 100644
+--- a/arch/arm/dts/bcm2836-rpi-2.dts
++++ b/arch/arm/dts/bcm2836-rpi-2.dts
+@@ -4,8 +4,8 @@
+ 	chosen {
+ 		stdout-path = &uart0;
+ 	};
++};
+ 
+-	memory {
+-		reg = <0x0 0x0>;
+-	};
++&{/memory@0} {
++	reg = <0x0 0x0>;
+ };
+diff --git a/arch/arm/dts/bcm2837-rpi-3.dts b/arch/arm/dts/bcm2837-rpi-3.dts
+index 420525b9e857..d66beddb2281 100644
+--- a/arch/arm/dts/bcm2837-rpi-3.dts
++++ b/arch/arm/dts/bcm2837-rpi-3.dts
+@@ -4,10 +4,10 @@
+ 	chosen {
+ 		stdout-path = &uart1;
+ 	};
++};
+ 
+-	memory {
+-		reg = <0x0 0x0>;
+-	};
++&{/memory@0} {
++	reg = <0x0 0x0>;
+ };
+ 
+ &sdhci {
+diff --git a/arch/arm/dts/bcm2837-rpi-cm3.dts b/arch/arm/dts/bcm2837-rpi-cm3.dts
+index 01c1f9a67714..85a6ac46619a 100644
+--- a/arch/arm/dts/bcm2837-rpi-cm3.dts
++++ b/arch/arm/dts/bcm2837-rpi-cm3.dts
+@@ -4,8 +4,8 @@
+ 	chosen {
+ 		stdout-path = &uart0;
+ 	};
++};
+ 
+-	memory {
+-		reg = <0x0 0x0>;
+-	};
++&{/memory@0} {
++	reg = <0x0 0x0>;
+ };
diff --git a/configs/platform-v7a/patches/barebox-2020.04.0/0101-Release-2020.04.0-customers-pengutronix-distrokit-v7.patch b/configs/platform-v7a/patches/barebox-2020.06.0/0101-Release-2020.06.0-customers-pengutronix-distrokit-v7.patch
similarity index 59%
rename from configs/platform-v7a/patches/barebox-2020.04.0/0101-Release-2020.04.0-customers-pengutronix-distrokit-v7.patch
rename to configs/platform-v7a/patches/barebox-2020.06.0/0101-Release-2020.06.0-customers-pengutronix-distrokit-v7.patch
index 3f85f36cf310..bbee24d4a4c7 100644
--- a/configs/platform-v7a/patches/barebox-2020.04.0/0101-Release-2020.04.0-customers-pengutronix-distrokit-v7.patch
+++ b/configs/platform-v7a/patches/barebox-2020.06.0/0101-Release-2020.06.0-customers-pengutronix-distrokit-v7.patch
@@ -1,22 +1,22 @@
 From: Ahmad Fatoum <a.fatoum@pengutronix.de>
-Date: Fri, 24 Apr 2020 18:03:30 +0200
+Date: Wed, 17 Jun 2020 16:50:59 +0200
 Subject: [PATCH] Release
- 2020.04.0/customers/pengutronix/distrokit-v7a/20200424-2
+ 2020.06.0/customers/pengutronix/distrokit-v7a/20200617-1
 
 ---
  Makefile | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/Makefile b/Makefile
-index b3d67b0863ac..c51276a8b2af 100644
+index 0531a712d758..b3986a6ca995 100644
 --- a/Makefile
 +++ b/Makefile
-@@ -1,7 +1,7 @@
+@@ -2,7 +2,7 @@
  VERSION = 2020
- PATCHLEVEL = 04
+ PATCHLEVEL = 06
  SUBLEVEL = 0
 -EXTRAVERSION =
-+EXTRAVERSION =-20200424-2
++EXTRAVERSION =-20200617-1
  NAME = None
  
  # *DOCUMENTATION*
diff --git a/configs/platform-v7a/patches/barebox-2020.06.0/series b/configs/platform-v7a/patches/barebox-2020.06.0/series
new file mode 100644
index 000000000000..4c135073c6d9
--- /dev/null
+++ b/configs/platform-v7a/patches/barebox-2020.06.0/series
@@ -0,0 +1,11 @@
+# umpf-base: v2020.06.0
+# umpf-name: 2020.06.0/customers/pengutronix/distrokit-v7a
+# umpf-version: 2020.06.0/customers/pengutronix/distrokit-v7a/20200617-1
+# umpf-topic: v2020.06.0/topic/rpi-memory
+# umpf-hashinfo: 8ee934de1a8334b19f9e9caad6be29e0a8e93fdb
+# umpf-topic-range: ff087598f4cdc426ba883a8720367a4ff3d6b9fe..1607cbfce2ba75e7455c9ab7c3251a68b290c68e
+0001-ARM-rpi-dts-fix-MMIO-resources-clash-breaking-boot.patch
+# umpf-release: 2020.06.0/customers/pengutronix/distrokit-v7a/20200617-1
+# umpf-topic-range: 1607cbfce2ba75e7455c9ab7c3251a68b290c68e..af8e8583ac0ed9f48ef13a81caa4ec17030778d8
+0101-Release-2020.06.0-customers-pengutronix-distrokit-v7.patch
+# umpf-end
diff --git a/configs/platform-v7a/platformconfig b/configs/platform-v7a/platformconfig
index 7bac3db8af66..aa3a19127a36 100644
--- a/configs/platform-v7a/platformconfig
+++ b/configs/platform-v7a/platformconfig
@@ -166,8 +166,8 @@ PTXCONF_CONSOLE_SPEED="115200"
 # PTXCONF_AT91BOOTSTRAP2 is not set
 PTXCONF_BAREBOX_COMMON_ARCH_STRING="arm"
 PTXCONF_BAREBOX_COMMON=y
-PTXCONF_BAREBOX_COMMON_VERSION="2020.04.0"
-PTXCONF_BAREBOX_COMMON_MD5="58b6d6182c7c9fe10ce9714fbbacb138"
+PTXCONF_BAREBOX_COMMON_VERSION="2020.06.0"
+PTXCONF_BAREBOX_COMMON_MD5="466e436389ab1c771ddfffb5ee16e7b8"
 PTXCONF_BAREBOX_COMMON_NEEDS_HOST_LZOP=y
 PTXCONF_BAREBOX_AM335X_MLO=y
 PTXCONF_BAREBOX_AM335X=y
-- 
2.27.0


_______________________________________________
DistroKit mailing list
DistroKit@pengutronix.de

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

end of thread, other threads:[~2020-06-17 15:07 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-17 15:02 [DistroKit] [PATCH v2] v7a: barebox: version bump v2020.04.0 → v2020.06.0 Ahmad Fatoum
2020-06-17 15:07 ` Robert Schwebel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox