From ed20d4cc4144c1f4a8f5152edb5d5993e6bcec4a Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Sat, 26 Sep 2020 08:05:00 +0200 Subject: [PATCH] uboot-mvebu: update to v2020.10 Remove merged patches and update the emmc set. Signed-off-by: Andre Heider --- package/boot/uboot-mvebu/Makefile | 4 +- ...add_support_for_macronix_mx25u12835f.patch | 10 -- ...mada-37xx.h_increase_max_gunzip_size.patch | 13 --- ...Add-missing-common-host-capabilities.patch | 43 -------- ...-3720-espressobin-use-Linux-model-co.patch | 29 ++++- ...-3720-espressobin-split-common-parts.patch | 19 ++-- ...add-support-for-boards-with-populate.patch | 8 +- ...sobin-Set-environment-variable-fdtfi.patch | 100 ------------------ 8 files changed, 40 insertions(+), 186 deletions(-) delete mode 100644 package/boot/uboot-mvebu/patches/100-add_support_for_macronix_mx25u12835f.patch delete mode 100644 package/boot/uboot-mvebu/patches/120-mvebu_armada-37xx.h_increase_max_gunzip_size.patch delete mode 100644 package/boot/uboot-mvebu/patches/130-mmc-xenon_sdhci-Add-missing-common-host-capabilities.patch delete mode 100644 package/boot/uboot-mvebu/patches/134-arm-mvebu-Espressobin-Set-environment-variable-fdtfi.patch diff --git a/package/boot/uboot-mvebu/Makefile b/package/boot/uboot-mvebu/Makefile index 9a1b5ed63d..eb679934e6 100644 --- a/package/boot/uboot-mvebu/Makefile +++ b/package/boot/uboot-mvebu/Makefile @@ -8,10 +8,10 @@ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/kernel.mk -PKG_VERSION:=2020.10-rc4 +PKG_VERSION:=2020.10 PKG_RELEASE:=1 -PKG_HASH:=0a7bdd2c7df2c14daf2730fcf3277fd917aadfaae935529e29c7412314bbf260 +PKG_HASH:=0d481bbdc05c0ee74908ec2f56a6daa53166cc6a78a0e4fac2ac5d025770a622 include $(INCLUDE_DIR)/u-boot.mk include $(INCLUDE_DIR)/package.mk diff --git a/package/boot/uboot-mvebu/patches/100-add_support_for_macronix_mx25u12835f.patch b/package/boot/uboot-mvebu/patches/100-add_support_for_macronix_mx25u12835f.patch deleted file mode 100644 index f1a292694d..0000000000 --- a/package/boot/uboot-mvebu/patches/100-add_support_for_macronix_mx25u12835f.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/drivers/mtd/spi/spi-nor-ids.c -+++ b/drivers/mtd/spi/spi-nor-ids.c -@@ -151,6 +151,7 @@ const struct flash_info spi_nor_ids[] = - { INFO("mx25u3235f", 0xc22536, 0, 4 * 1024, 1024, SECT_4K) }, - { INFO("mx25u6435f", 0xc22537, 0, 64 * 1024, 128, SECT_4K) }, - { INFO("mx25l12805d", 0xc22018, 0, 64 * 1024, 256, 0) }, -+ { INFO("mx25u12835f", 0xc22538, 0, 64 * 1024, 256, SECT_4K) }, - { INFO("mx25l12855e", 0xc22618, 0, 64 * 1024, 256, 0) }, - { INFO("mx25l25635e", 0xc22019, 0, 64 * 1024, 512, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, - { INFO("mx25u25635f", 0xc22539, 0, 64 * 1024, 512, SECT_4K | SPI_NOR_4B_OPCODES) }, diff --git a/package/boot/uboot-mvebu/patches/120-mvebu_armada-37xx.h_increase_max_gunzip_size.patch b/package/boot/uboot-mvebu/patches/120-mvebu_armada-37xx.h_increase_max_gunzip_size.patch deleted file mode 100644 index c543e5126a..0000000000 --- a/package/boot/uboot-mvebu/patches/120-mvebu_armada-37xx.h_increase_max_gunzip_size.patch +++ /dev/null @@ -1,13 +0,0 @@ -Increase max gunzip size in mvebu_armada-37xx.h. -This is required in order to boot itb images. - ---- a/include/configs/mvebu_armada-37xx.h -+++ b/include/configs/mvebu_armada-37xx.h -@@ -12,6 +12,7 @@ - - /* additions for new ARM relocation support */ - #define CONFIG_SYS_SDRAM_BASE 0x00000000 -+#define CONFIG_SYS_BOOTM_LEN (64 << 20) /* Increase max gunzip size */ - - /* auto boot */ - diff --git a/package/boot/uboot-mvebu/patches/130-mmc-xenon_sdhci-Add-missing-common-host-capabilities.patch b/package/boot/uboot-mvebu/patches/130-mmc-xenon_sdhci-Add-missing-common-host-capabilities.patch deleted file mode 100644 index fa41f01526..0000000000 --- a/package/boot/uboot-mvebu/patches/130-mmc-xenon_sdhci-Add-missing-common-host-capabilities.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 264c45575ec6a3d507dc4e43954b8a78283aca6c Mon Sep 17 00:00:00 2001 -From: Andre Heider -Date: Thu, 10 Sep 2020 17:58:43 +0200 -Subject: [PATCH] mmc: xenon_sdhci: Add missing common host capabilities - -Use mmc_of_parse() to set the common host properties. That includes -"bus-width", so parsing it can be removed from the driver. - -But more importantly, "non-removable" is now respected, which fixes -the usage of eMMC. - -Signed-off-by: Andre Heider ---- - drivers/mmc/xenon_sdhci.c | 18 ++++-------------- - 1 file changed, 4 insertions(+), 14 deletions(-) - ---- a/drivers/mmc/xenon_sdhci.c -+++ b/drivers/mmc/xenon_sdhci.c -@@ -485,20 +485,10 @@ static int xenon_sdhci_probe(struct udev - armada_3700_soc_pad_voltage_set(host); - - host->host_caps = MMC_MODE_HS | MMC_MODE_HS_52MHz | MMC_MODE_DDR_52MHz; -- switch (fdtdec_get_int(gd->fdt_blob, dev_of_offset(dev), "bus-width", -- 1)) { -- case 8: -- host->host_caps |= MMC_MODE_8BIT; -- break; -- case 4: -- host->host_caps |= MMC_MODE_4BIT; -- break; -- case 1: -- break; -- default: -- printf("Invalid \"bus-width\" value\n"); -- return -EINVAL; -- } -+ -+ ret = mmc_of_parse(dev, &plat->cfg); -+ if (ret) -+ return ret; - - host->ops = &xenon_sdhci_ops; - diff --git a/package/boot/uboot-mvebu/patches/131-arm64-dts-armada-3720-espressobin-use-Linux-model-co.patch b/package/boot/uboot-mvebu/patches/131-arm64-dts-armada-3720-espressobin-use-Linux-model-co.patch index 1aef9db900..85c61098f8 100644 --- a/package/boot/uboot-mvebu/patches/131-arm64-dts-armada-3720-espressobin-use-Linux-model-co.patch +++ b/package/boot/uboot-mvebu/patches/131-arm64-dts-armada-3720-espressobin-use-Linux-model-co.patch @@ -1,14 +1,16 @@ -From 753947e2c374820dcbc9c86626812aeb7d460653 Mon Sep 17 00:00:00 2001 +From cdcfd9211c805624a702b6ff81b9bd9515344749 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Fri, 4 Sep 2020 16:34:22 +0200 Subject: [PATCH] arm64: dts: armada-3720-espressobin: use Linux model/compatible strings Fix the actual board vendor and ease synching dts files from Linux. + +Signed-off-by: Andre Heider --- arch/arm/dts/armada-3720-espressobin.dts | 4 ++-- - board/Marvell/mvebu_armada-37xx/board.c | 4 ++-- - 2 files changed, 4 insertions(+), 4 deletions(-) + board/Marvell/mvebu_armada-37xx/board.c | 8 ++++---- + 2 files changed, 6 insertions(+), 6 deletions(-) --- a/arch/arm/dts/armada-3720-espressobin.dts +++ b/arch/arm/dts/armada-3720-espressobin.dts @@ -25,7 +27,24 @@ Fix the actual board vendor and ease synching dts files from Linux. stdout-path = "serial0:115200n8"; --- a/board/Marvell/mvebu_armada-37xx/board.c +++ b/board/Marvell/mvebu_armada-37xx/board.c -@@ -201,7 +201,7 @@ static int mii_multi_chip_mode_write(str +@@ -88,14 +88,14 @@ int board_late_init(void) + if (env_get("fdtfile")) + return 0; + +- if (!of_machine_is_compatible("marvell,armada-3720-espressobin")) ++ if (!of_machine_is_compatible("globalscale,espressobin")) + return 0; + + /* If the memory controller has been configured for DDR4, we're running on v7 */ + ddr4 = ((readl(A3700_CH0_MC_CTRL2_REG) >> A3700_MC_CTRL2_SDRAM_TYPE_OFFS) + & A3700_MC_CTRL2_SDRAM_TYPE_MASK) == A3700_MC_CTRL2_SDRAM_TYPE_DDR4; + +- emmc = of_machine_is_compatible("marvell,armada-3720-espressobin-emmc"); ++ emmc = of_machine_is_compatible("globalscale,espressobin-emmc"); + + if (ddr4 && emmc) + env_set("fdtfile", "marvell/armada-3720-espressobin-v7-emmc.dtb"); +@@ -248,7 +248,7 @@ static int mii_multi_chip_mode_write(str /* Bring-up board-specific network stuff */ int board_network_enable(struct mii_dev *bus) { @@ -34,7 +53,7 @@ Fix the actual board vendor and ease synching dts files from Linux. return 0; /* -@@ -253,7 +253,7 @@ int ft_board_setup(void *blob, struct bd +@@ -300,7 +300,7 @@ int ft_board_setup(void *blob, struct bd int part_off; /* Fill SPI MTD partitions for Linux kernel on Espressobin */ diff --git a/package/boot/uboot-mvebu/patches/132-arm64-dts-armada-3720-espressobin-split-common-parts.patch b/package/boot/uboot-mvebu/patches/132-arm64-dts-armada-3720-espressobin-split-common-parts.patch index d3af221c01..1ca8b8d8dc 100644 --- a/package/boot/uboot-mvebu/patches/132-arm64-dts-armada-3720-espressobin-split-common-parts.patch +++ b/package/boot/uboot-mvebu/patches/132-arm64-dts-armada-3720-espressobin-split-common-parts.patch @@ -1,21 +1,20 @@ -From ee59573dd531df96de0d9dc8e79b34ed3716c864 Mon Sep 17 00:00:00 2001 +From a9ac1dd46a4fd11880be80227e1eb102e3c61dd8 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Fri, 4 Sep 2020 15:38:58 +0200 -Subject: [PATCH] arm64: dts: armada-3720-espressobin: split common parts to - .dtsi +Subject: [PATCH] arm64: dts: armada-3720-espressobin: split common parts + to .dtsi -Move most of the dts to the new common -arch/arm/dts/armada-3720-espressobin.dtsi file, just like Linux has. +Move most of the dts to the new common armada-3720-espressobin.dtsi +file, just like Linux, but keep the current, downstream based, version. The dts itself is imported from Linux. Signed-off-by: Andre Heider --- - arch/arm/dts/armada-3720-espressobin.dts | 190 ++---------------- - ...sobin.dts => armada-3720-espressobin.dtsi} | 3 - - 2 files changed, 20 insertions(+), 173 deletions(-) - rewrite arch/arm/dts/armada-3720-espressobin.dts (95%) - copy arch/arm/dts/{armada-3720-espressobin.dts => armada-3720-espressobin.dtsi} (96%) + arch/arm/dts/armada-3720-espressobin.dts | 164 +-------------------- + arch/arm/dts/armada-3720-espressobin.dtsi | 167 ++++++++++++++++++++++ + 2 files changed, 174 insertions(+), 157 deletions(-) + create mode 100644 arch/arm/dts/armada-3720-espressobin.dtsi --- a/arch/arm/dts/armada-3720-espressobin.dts +++ b/arch/arm/dts/armada-3720-espressobin.dts diff --git a/package/boot/uboot-mvebu/patches/133-arm64-dts-a3720-add-support-for-boards-with-populate.patch b/package/boot/uboot-mvebu/patches/133-arm64-dts-a3720-add-support-for-boards-with-populate.patch index f35b45d0e1..1e2944b5a2 100644 --- a/package/boot/uboot-mvebu/patches/133-arm64-dts-a3720-add-support-for-boards-with-populate.patch +++ b/package/boot/uboot-mvebu/patches/133-arm64-dts-a3720-add-support-for-boards-with-populate.patch @@ -1,10 +1,12 @@ -From 83908b6e2e5a7d7b0f4d040ffb4bf3ce6807b8fe Mon Sep 17 00:00:00 2001 +From 408bba2fb84ad0b02c3f9529065126b40899e256 Mon Sep 17 00:00:00 2001 From: Andre Heider Date: Fri, 4 Sep 2020 15:44:41 +0200 -Subject: [PATCH] arm64: dts: a3720: add support for boards with populated emmc +Subject: [PATCH] arm64: dts: a3720: add support for espressobin with + populated emmc Import armada-3720-espressobin-emmc.dts from Linux, but use sdhc1 for -emmc, since sdhc0 is used for the sd card. +emmc, since our dtsi is still based on downstream and sdhc0 is used for +the sd card. Signed-off-by: Andre Heider --- diff --git a/package/boot/uboot-mvebu/patches/134-arm-mvebu-Espressobin-Set-environment-variable-fdtfi.patch b/package/boot/uboot-mvebu/patches/134-arm-mvebu-Espressobin-Set-environment-variable-fdtfi.patch deleted file mode 100644 index fd270ddae2..0000000000 --- a/package/boot/uboot-mvebu/patches/134-arm-mvebu-Espressobin-Set-environment-variable-fdtfi.patch +++ /dev/null @@ -1,100 +0,0 @@ -From d59406482c1847959305a986376b35e57da28e69 Mon Sep 17 00:00:00 2001 -From: Andre Heider -Date: Sat, 5 Sep 2020 12:45:59 +0200 -Subject: [PATCH] arm: mvebu: Espressobin: Set environment variable fdtfile - -Required for the generic distro mechanism. - -Linux ships with 4 variants: -marvell/armada-3720-espressobin-v7-emmc.dtb -marvell/armada-3720-espressobin-v7.dtb -marvell/armada-3720-espressobin-emmc.dtb -marvell/armada-3720-espressobin.dtb - -Use available information to determine the appropriate filename. - -Tested on a v5 board without eMMC. - -Signed-off-by: Andre Heider ---- - board/Marvell/mvebu_armada-37xx/board.c | 47 +++++++++++++++++++++ - configs/mvebu_espressobin-88f3720_defconfig | 1 + - 2 files changed, 48 insertions(+) - ---- a/board/Marvell/mvebu_armada-37xx/board.c -+++ b/board/Marvell/mvebu_armada-37xx/board.c -@@ -5,6 +5,7 @@ - - #include - #include -+#include - #include - #include - #include -@@ -50,6 +51,22 @@ DECLARE_GLOBAL_DATA_PTR; - #define MVEBU_G2_SMI_PHY_CMD_REG (24) - #define MVEBU_G2_SMI_PHY_DATA_REG (25) - -+/* -+ * Memory Controller Registers -+ * -+ * Assembled based on public information: -+ * https://gitlab.nic.cz/turris/mox-boot-builder/-/blob/master/wtmi/main.c#L332-336 -+ * https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell/blob/mv_ddr-armada-18.12/drivers/mv_ddr_mc6.h#L309-L332 -+ * -+ * And checked against the written register values for the various topologies: -+ * https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell/blob/mv_ddr-armada-atf-mainline/a3700/mv_ddr_tim.h -+ */ -+#define A3700_CH0_MC_CTRL2_REG MVEBU_REGISTER(0x002c4) -+#define A3700_MC_CTRL2_SDRAM_TYPE_MASK 0xf -+#define A3700_MC_CTRL2_SDRAM_TYPE_OFFS 4 -+#define A3700_MC_CTRL2_SDRAM_TYPE_DDR3 2 -+#define A3700_MC_CTRL2_SDRAM_TYPE_DDR4 3 -+ - int board_early_init_f(void) - { - return 0; -@@ -63,6 +80,36 @@ int board_init(void) - return 0; - } - -+#ifdef CONFIG_BOARD_LATE_INIT -+int board_late_init(void) -+{ -+ bool ddr4, emmc; -+ -+ if (env_get("fdtfile")) -+ return 0; -+ -+ if (!of_machine_is_compatible("globalscale,espressobin")) -+ return 0; -+ -+ /* If the memory controller has been configured for DDR4, we're running on v7 */ -+ ddr4 = ((readl(A3700_CH0_MC_CTRL2_REG) >> A3700_MC_CTRL2_SDRAM_TYPE_OFFS) -+ & A3700_MC_CTRL2_SDRAM_TYPE_MASK) == A3700_MC_CTRL2_SDRAM_TYPE_DDR4; -+ -+ emmc = of_machine_is_compatible("globalscale,espressobin-emmc"); -+ -+ if (ddr4 && emmc) -+ env_set("fdtfile", "marvell/armada-3720-espressobin-v7-emmc.dtb"); -+ else if (ddr4) -+ env_set("fdtfile", "marvell/armada-3720-espressobin-v7.dtb"); -+ else if (emmc) -+ env_set("fdtfile", "marvell/armada-3720-espressobin-emmc.dtb"); -+ else -+ env_set("fdtfile", "marvell/armada-3720-espressobin.dtb"); -+ -+ return 0; -+} -+#endif -+ - /* Board specific AHCI / SATA enable code */ - int board_ahci_enable(void) - { ---- a/configs/mvebu_espressobin-88f3720_defconfig -+++ b/configs/mvebu_espressobin-88f3720_defconfig -@@ -84,3 +84,4 @@ CONFIG_USB_ETHER_RTL8152=y - CONFIG_USB_ETHER_SMSC95XX=y - CONFIG_SHA1=y - CONFIG_SHA256=y -+CONFIG_BOARD_LATE_INIT=y -- 2.30.2