-
-
- You can’t perform that action at this time.
-
-
-
-
-
-
-
-
-
-
-
-
- You signed in with another tab or window. Reload to refresh your session.
- You signed out in another tab or window. Reload to refresh your session.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+image_info = {"type": e("IMAGE_TYPE"), "name": e("IMAGE_NAME"), "sha256": image_hash}
+device_info["images"].append(image_info)
+with open(json_path, "w") as json_file:
+ json.dump(device_info, json_file, sort_keys=True, indent=" ")
diff --git a/target/linux/apm821xx/patches-4.14/023-0007-crypto-crypto4xx-Fix-wrong-ppc4xx_trng_probe-ppc4xx_.patch b/target/linux/apm821xx/patches-4.14/023-0007-crypto-crypto4xx-Fix-wrong-ppc4xx_trng_probe-ppc4xx_.patch
deleted file mode 100644
index d2c3848820..0000000000
--- a/target/linux/apm821xx/patches-4.14/023-0007-crypto-crypto4xx-Fix-wrong-ppc4xx_trng_probe-ppc4xx_.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 6e88098ca43a3d80ae86908f7badba683c8a0d84 Mon Sep 17 00:00:00 2001
-From: Corentin Labbe
-Date: Wed, 23 Jan 2019 11:24:18 +0000
-Subject: [PATCH 07/15] crypto: crypto4xx - Fix wrong
- ppc4xx_trng_probe()/ppc4xx_trng_remove() arguments
-
-When building without CONFIG_HW_RANDOM_PPC4XX, I hit the following build failure:
-drivers/crypto/amcc/crypto4xx_core.c: In function 'crypto4xx_probe':
-drivers/crypto/amcc/crypto4xx_core.c:1407:20: error: passing argument 1 of 'ppc4xx_trng_probe' from incompatible pointer type [-Werror=incompatible-pointer-types]
-In file included from drivers/crypto/amcc/crypto4xx_core.c:50:0:
-drivers/crypto/amcc/crypto4xx_trng.h:28:20: note: expected 'struct crypto4xx_device *' but argument is of type 'struct crypto4xx_core_device *'
-drivers/crypto/amcc/crypto4xx_core.c: In function 'crypto4xx_remove':
-drivers/crypto/amcc/crypto4xx_core.c:1434:21: error: passing argument 1 of 'ppc4xx_trng_remove' from incompatible pointer type [-Werror=incompatible-pointer-types]
-In file included from drivers/crypto/amcc/crypto4xx_core.c:50:0:
-drivers/crypto/amcc/crypto4xx_trng.h:30:20: note: expected 'struct crypto4xx_device *' but argument is of type 'struct crypto4xx_core_device *'
-
-This patch fix the needed argument of ppc4xx_trng_probe()/ppc4xx_trng_remove() in that case.
-
-Fixes: 5343e674f32f ("crypto4xx: integrate ppc4xx-rng into crypto4xx")
-Signed-off-by: Corentin Labbe
-Signed-off-by: Herbert Xu
----
- drivers/crypto/amcc/crypto4xx_trng.h | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
---- a/drivers/crypto/amcc/crypto4xx_trng.h
-+++ b/drivers/crypto/amcc/crypto4xx_trng.h
-@@ -26,9 +26,9 @@ void ppc4xx_trng_probe(struct crypto4xx_
- void ppc4xx_trng_remove(struct crypto4xx_core_device *core_dev);
- #else
- static inline void ppc4xx_trng_probe(
-- struct crypto4xx_device *dev __maybe_unused) { }
-+ struct crypto4xx_core_device *dev __maybe_unused) { }
- static inline void ppc4xx_trng_remove(
-- struct crypto4xx_device *dev __maybe_unused) { }
-+ struct crypto4xx_core_device *dev __maybe_unused) { }
- #endif
-
- #endif
diff --git a/target/linux/apm821xx/patches-4.19/023-0007-crypto-crypto4xx-Fix-wrong-ppc4xx_trng_probe-ppc4xx_.patch b/target/linux/apm821xx/patches-4.19/023-0007-crypto-crypto4xx-Fix-wrong-ppc4xx_trng_probe-ppc4xx_.patch
deleted file mode 100644
index d2c3848820..0000000000
--- a/target/linux/apm821xx/patches-4.19/023-0007-crypto-crypto4xx-Fix-wrong-ppc4xx_trng_probe-ppc4xx_.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 6e88098ca43a3d80ae86908f7badba683c8a0d84 Mon Sep 17 00:00:00 2001
-From: Corentin Labbe
-Date: Wed, 23 Jan 2019 11:24:18 +0000
-Subject: [PATCH 07/15] crypto: crypto4xx - Fix wrong
- ppc4xx_trng_probe()/ppc4xx_trng_remove() arguments
-
-When building without CONFIG_HW_RANDOM_PPC4XX, I hit the following build failure:
-drivers/crypto/amcc/crypto4xx_core.c: In function 'crypto4xx_probe':
-drivers/crypto/amcc/crypto4xx_core.c:1407:20: error: passing argument 1 of 'ppc4xx_trng_probe' from incompatible pointer type [-Werror=incompatible-pointer-types]
-In file included from drivers/crypto/amcc/crypto4xx_core.c:50:0:
-drivers/crypto/amcc/crypto4xx_trng.h:28:20: note: expected 'struct crypto4xx_device *' but argument is of type 'struct crypto4xx_core_device *'
-drivers/crypto/amcc/crypto4xx_core.c: In function 'crypto4xx_remove':
-drivers/crypto/amcc/crypto4xx_core.c:1434:21: error: passing argument 1 of 'ppc4xx_trng_remove' from incompatible pointer type [-Werror=incompatible-pointer-types]
-In file included from drivers/crypto/amcc/crypto4xx_core.c:50:0:
-drivers/crypto/amcc/crypto4xx_trng.h:30:20: note: expected 'struct crypto4xx_device *' but argument is of type 'struct crypto4xx_core_device *'
-
-This patch fix the needed argument of ppc4xx_trng_probe()/ppc4xx_trng_remove() in that case.
-
-Fixes: 5343e674f32f ("crypto4xx: integrate ppc4xx-rng into crypto4xx")
-Signed-off-by: Corentin Labbe
-Signed-off-by: Herbert Xu
----
- drivers/crypto/amcc/crypto4xx_trng.h | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
---- a/drivers/crypto/amcc/crypto4xx_trng.h
-+++ b/drivers/crypto/amcc/crypto4xx_trng.h
-@@ -26,9 +26,9 @@ void ppc4xx_trng_probe(struct crypto4xx_
- void ppc4xx_trng_remove(struct crypto4xx_core_device *core_dev);
- #else
- static inline void ppc4xx_trng_probe(
-- struct crypto4xx_device *dev __maybe_unused) { }
-+ struct crypto4xx_core_device *dev __maybe_unused) { }
- static inline void ppc4xx_trng_remove(
-- struct crypto4xx_device *dev __maybe_unused) { }
-+ struct crypto4xx_core_device *dev __maybe_unused) { }
- #endif
-
- #endif
diff --git a/target/linux/ath79/patches-4.19/910-unaligned_access_hacks.patch b/target/linux/ath79/patches-4.19/910-unaligned_access_hacks.patch
index 6f36dc683c..92396c13e8 100644
--- a/target/linux/ath79/patches-4.19/910-unaligned_access_hacks.patch
+++ b/target/linux/ath79/patches-4.19/910-unaligned_access_hacks.patch
@@ -728,7 +728,7 @@
EXPORT_SYMBOL(xfrm_parse_spi);
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
-@@ -3895,14 +3895,16 @@ static bool tcp_parse_aligned_timestamp(
+@@ -3896,14 +3896,16 @@ static bool tcp_parse_aligned_timestamp(
{
const __be32 *ptr = (const __be32 *)(th + 1);
diff --git a/target/linux/bcm53xx/patches-4.14/400-mtd-spi-nor-detect-JEDEC-incompatible-w25q128-using-.patch b/target/linux/bcm53xx/patches-4.14/400-mtd-spi-nor-detect-JEDEC-incompatible-w25q128-using-.patch
index 49dd89c2d7..d79b2d0b70 100644
--- a/target/linux/bcm53xx/patches-4.14/400-mtd-spi-nor-detect-JEDEC-incompatible-w25q128-using-.patch
+++ b/target/linux/bcm53xx/patches-4.14/400-mtd-spi-nor-detect-JEDEC-incompatible-w25q128-using-.patch
@@ -13,7 +13,7 @@ Signed-off-by: Rafał Miłecki
--- a/drivers/mtd/spi-nor/spi-nor.c
+++ b/drivers/mtd/spi-nor/spi-nor.c
-@@ -1222,6 +1222,18 @@ static const struct flash_info *spi_nor_
+@@ -1226,6 +1226,18 @@ static const struct flash_info *spi_nor_
}
dev_err(nor->dev, "unrecognized JEDEC id bytes: %02x, %02x, %02x\n",
id[0], id[1], id[2]);
diff --git a/target/linux/bcm53xx/patches-4.19/400-mtd-spi-nor-detect-JEDEC-incompatible-w25q128-using-.patch b/target/linux/bcm53xx/patches-4.19/400-mtd-spi-nor-detect-JEDEC-incompatible-w25q128-using-.patch
index a0d40b0f0b..21687e7a35 100644
--- a/target/linux/bcm53xx/patches-4.19/400-mtd-spi-nor-detect-JEDEC-incompatible-w25q128-using-.patch
+++ b/target/linux/bcm53xx/patches-4.19/400-mtd-spi-nor-detect-JEDEC-incompatible-w25q128-using-.patch
@@ -13,7 +13,7 @@ Signed-off-by: Rafał Miłecki
--- a/drivers/mtd/spi-nor/spi-nor.c
+++ b/drivers/mtd/spi-nor/spi-nor.c
-@@ -1297,6 +1297,18 @@ static const struct flash_info *spi_nor_
+@@ -1301,6 +1301,18 @@ static const struct flash_info *spi_nor_
}
dev_err(nor->dev, "unrecognized JEDEC id bytes: %02x, %02x, %02x\n",
id[0], id[1], id[2]);
diff --git a/target/linux/brcm47xx/patches-4.19/209-b44-register-adm-switch.patch b/target/linux/brcm47xx/patches-4.19/209-b44-register-adm-switch.patch
index 3706591b00..bc2d2ab90a 100644
--- a/target/linux/brcm47xx/patches-4.19/209-b44-register-adm-switch.patch
+++ b/target/linux/brcm47xx/patches-4.19/209-b44-register-adm-switch.patch
@@ -19,7 +19,7 @@ Subject: [PATCH 210/210] b44: register adm switch
#include
#include
-@@ -2246,6 +2248,69 @@ static void b44_adjust_link(struct net_d
+@@ -2249,6 +2251,69 @@ static void b44_adjust_link(struct net_d
}
}
@@ -89,7 +89,7 @@ Subject: [PATCH 210/210] b44: register adm switch
static int b44_register_phy_one(struct b44 *bp)
{
struct mii_bus *mii_bus;
-@@ -2281,6 +2346,9 @@ static int b44_register_phy_one(struct b
+@@ -2284,6 +2349,9 @@ static int b44_register_phy_one(struct b
if (!mdiobus_is_registered_device(bp->mii_bus, bp->phy_addr) &&
(sprom->boardflags_lo & (B44_BOARDFLAG_ROBO | B44_BOARDFLAG_ADM))) {
@@ -99,7 +99,7 @@ Subject: [PATCH 210/210] b44: register adm switch
dev_info(sdev->dev,
"could not find PHY at %i, use fixed one\n",
bp->phy_addr);
-@@ -2475,6 +2543,7 @@ static void b44_remove_one(struct ssb_de
+@@ -2478,6 +2546,7 @@ static void b44_remove_one(struct ssb_de
unregister_netdev(dev);
if (bp->flags & B44_FLAG_EXTERNAL_PHY)
b44_unregister_phy_one(bp);
diff --git a/target/linux/brcm47xx/patches-4.19/210-b44_phy_fix.patch b/target/linux/brcm47xx/patches-4.19/210-b44_phy_fix.patch
index 51e4b8c5ae..8c7a73ac0f 100644
--- a/target/linux/brcm47xx/patches-4.19/210-b44_phy_fix.patch
+++ b/target/linux/brcm47xx/patches-4.19/210-b44_phy_fix.patch
@@ -43,7 +43,7 @@
if (bp->flags & B44_FLAG_EXTERNAL_PHY)
return 0;
-@@ -2176,6 +2201,8 @@ static int b44_get_invariants(struct b44
+@@ -2179,6 +2204,8 @@ static int b44_get_invariants(struct b44
* valid PHY address. */
bp->phy_addr &= 0x1F;
diff --git a/target/linux/brcm47xx/patches-4.19/831-old_gpio_wdt.patch b/target/linux/brcm47xx/patches-4.19/831-old_gpio_wdt.patch
index ddac7917ea..259dc01256 100644
--- a/target/linux/brcm47xx/patches-4.19/831-old_gpio_wdt.patch
+++ b/target/linux/brcm47xx/patches-4.19/831-old_gpio_wdt.patch
@@ -4,7 +4,7 @@ Signed-off-by: Mathias Adam
--- a/drivers/watchdog/Kconfig
+++ b/drivers/watchdog/Kconfig
-@@ -1497,6 +1497,15 @@ config WDT_MTX1
+@@ -1498,6 +1498,15 @@ config WDT_MTX1
Hardware driver for the MTX-1 boards. This is a watchdog timer that
will reboot the machine after a 100 seconds timer expired.
diff --git a/target/linux/brcm63xx/patches-4.14/001-4.22-01-MIPS-BCM63XX-drop-unused-and-broken-DSP-platform-dev.patch b/target/linux/brcm63xx/patches-4.14/001-4.22-01-MIPS-BCM63XX-drop-unused-and-broken-DSP-platform-dev.patch
deleted file mode 100644
index ac03e643b3..0000000000
--- a/target/linux/brcm63xx/patches-4.14/001-4.22-01-MIPS-BCM63XX-drop-unused-and-broken-DSP-platform-dev.patch
+++ /dev/null
@@ -1,203 +0,0 @@
-From 51559154375fff4a94bbbc249fdd9248a80827b3 Mon Sep 17 00:00:00 2001
-From: Jonas Gorski
-Date: Tue, 18 Dec 2018 10:19:02 +0100
-Subject: [PATCH] MIPS: BCM63XX: drop unused and broken DSP platform device
-
-Trying to register the DSP platform device results in a null pointer
-access:
-
-[ 0.124184] CPU 0 Unable to handle kernel paging request at virtual address 00000000, epc == 804e305c, ra == 804e6f20
-[ 0.135208] Oops[#1]:
-[ 0.137514] CPU: 0 PID: 1 Comm: swapper Not tainted 4.14.87
-...
-[ 0.197117] epc : 804e305c bcm63xx_dsp_register+0x80/0xa4
-[ 0.202838] ra : 804e6f20 board_register_devices+0x258/0x390
-...
-
-This happens because it tries to copy the passed platform data over the
-platform_device's unpopulated platform_data.
-
-Since this code has been broken since its submission, no driver was ever
-submitted for it, and apparently nobody was using it, just remove it
-instead of trying to fix it.
-
-Fixes: e7300d04bd08 ("MIPS: BCM63xx: Add support for the Broadcom BCM63xx family of SOCs.")
-Signed-off-by: Jonas Gorski
----
- arch/mips/bcm63xx/Makefile | 6 +--
- arch/mips/bcm63xx/boards/board_bcm963xx.c | 20 --------
- arch/mips/bcm63xx/dev-dsp.c | 56 ----------------------
- .../include/asm/mach-bcm63xx/bcm63xx_dev_dsp.h | 14 ------
- .../mips/include/asm/mach-bcm63xx/board_bcm963xx.h | 5 --
- 5 files changed, 3 insertions(+), 98 deletions(-)
- delete mode 100644 arch/mips/bcm63xx/dev-dsp.c
- delete mode 100644 arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_dsp.h
-
---- a/arch/mips/bcm63xx/Makefile
-+++ b/arch/mips/bcm63xx/Makefile
-@@ -1,8 +1,8 @@
- # SPDX-License-Identifier: GPL-2.0
- obj-y += clk.o cpu.o cs.o gpio.o irq.o nvram.o prom.o reset.o \
-- setup.o timer.o dev-dsp.o dev-enet.o dev-flash.o \
-- dev-pcmcia.o dev-rng.o dev-spi.o dev-hsspi.o dev-uart.o \
-- dev-wdt.o dev-usb-usbd.o
-+ setup.o timer.o dev-enet.o dev-flash.o dev-pcmcia.o \
-+ dev-rng.o dev-spi.o dev-hsspi.o dev-uart.o dev-wdt.o \
-+ dev-usb-usbd.o
- obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
-
- obj-y += boards/
---- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
-+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -23,7 +23,6 @@
- #include
- #include
- #include
--#include
- #include
- #include
- #include
-@@ -289,14 +288,6 @@ static struct board_info __initdata boar
- .has_pccard = 1,
- .has_ehci0 = 1,
-
-- .has_dsp = 1,
-- .dsp = {
-- .gpio_rst = 6,
-- .gpio_int = 34,
-- .cs = 2,
-- .ext_irq = 2,
-- },
--
- .leds = {
- {
- .name = "adsl-fail",
-@@ -401,14 +392,6 @@ static struct board_info __initdata boar
-
- .has_ohci0 = 1,
-
-- .has_dsp = 1,
-- .dsp = {
-- .gpio_rst = 6,
-- .gpio_int = 34,
-- .ext_irq = 2,
-- .cs = 2,
-- },
--
- .leds = {
- {
- .name = "adsl-fail",
-@@ -898,9 +881,6 @@ int __init board_register_devices(void)
- if (board.has_usbd)
- bcm63xx_usbd_register(&board.usbd);
-
-- if (board.has_dsp)
-- bcm63xx_dsp_register(&board.dsp);
--
- /* Generate MAC address for WLAN and register our SPROM,
- * do this after registering enet devices
- */
---- a/arch/mips/bcm63xx/dev-dsp.c
-+++ /dev/null
-@@ -1,56 +0,0 @@
--/*
-- * Broadcom BCM63xx VoIP DSP registration
-- *
-- * This file is subject to the terms and conditions of the GNU General Public
-- * License. See the file "COPYING" in the main directory of this archive
-- * for more details.
-- *
-- * Copyright (C) 2009 Florian Fainelli
-- */
--
--#include
--#include
--#include
--
--#include
--#include
--#include
--#include
--
--static struct resource voip_dsp_resources[] = {
-- {
-- .start = -1, /* filled at runtime */
-- .end = -1, /* filled at runtime */
-- .flags = IORESOURCE_MEM,
-- },
-- {
-- .start = -1, /* filled at runtime */
-- .flags = IORESOURCE_IRQ,
-- },
--};
--
--static struct platform_device bcm63xx_voip_dsp_device = {
-- .name = "bcm63xx-voip-dsp",
-- .id = -1,
-- .num_resources = ARRAY_SIZE(voip_dsp_resources),
-- .resource = voip_dsp_resources,
--};
--
--int __init bcm63xx_dsp_register(const struct bcm63xx_dsp_platform_data *pd)
--{
-- struct bcm63xx_dsp_platform_data *dpd;
-- u32 val;
--
-- /* Get the memory window */
-- val = bcm_mpi_readl(MPI_CSBASE_REG(pd->cs - 1));
-- val &= MPI_CSBASE_BASE_MASK;
-- voip_dsp_resources[0].start = val;
-- voip_dsp_resources[0].end = val + 0xFFFFFFF;
-- voip_dsp_resources[1].start = pd->ext_irq;
--
-- /* copy given platform data */
-- dpd = bcm63xx_voip_dsp_device.dev.platform_data;
-- memcpy(dpd, pd, sizeof (*pd));
--
-- return platform_device_register(&bcm63xx_voip_dsp_device);
--}
---- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_dsp.h
-+++ /dev/null
-@@ -1,14 +0,0 @@
--/* SPDX-License-Identifier: GPL-2.0 */
--#ifndef __BCM63XX_DSP_H
--#define __BCM63XX_DSP_H
--
--struct bcm63xx_dsp_platform_data {
-- unsigned gpio_rst;
-- unsigned gpio_int;
-- unsigned cs;
-- unsigned ext_irq;
--};
--
--int __init bcm63xx_dsp_register(const struct bcm63xx_dsp_platform_data *pd);
--
--#endif /* __BCM63XX_DSP_H */
---- a/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
-+++ b/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
-@@ -7,7 +7,6 @@
- #include
- #include
- #include
--#include
-
- /*
- * flash mapping
-@@ -31,7 +30,6 @@ struct board_info {
- unsigned int has_ohci0:1;
- unsigned int has_ehci0:1;
- unsigned int has_usbd:1;
-- unsigned int has_dsp:1;
- unsigned int has_uart0:1;
- unsigned int has_uart1:1;
-
-@@ -43,9 +41,6 @@ struct board_info {
- /* USB config */
- struct bcm63xx_usbd_platform_data usbd;
-
-- /* DSP config */
-- struct bcm63xx_dsp_platform_data dsp;
--
- /* GPIO LEDs */
- struct gpio_led leds[5];
-
diff --git a/target/linux/brcm63xx/patches-4.19/001-4.22-01-MIPS-BCM63XX-drop-unused-and-broken-DSP-platform-dev.patch b/target/linux/brcm63xx/patches-4.19/001-4.22-01-MIPS-BCM63XX-drop-unused-and-broken-DSP-platform-dev.patch
deleted file mode 100644
index ac03e643b3..0000000000
--- a/target/linux/brcm63xx/patches-4.19/001-4.22-01-MIPS-BCM63XX-drop-unused-and-broken-DSP-platform-dev.patch
+++ /dev/null
@@ -1,203 +0,0 @@
-From 51559154375fff4a94bbbc249fdd9248a80827b3 Mon Sep 17 00:00:00 2001
-From: Jonas Gorski
-Date: Tue, 18 Dec 2018 10:19:02 +0100
-Subject: [PATCH] MIPS: BCM63XX: drop unused and broken DSP platform device
-
-Trying to register the DSP platform device results in a null pointer
-access:
-
-[ 0.124184] CPU 0 Unable to handle kernel paging request at virtual address 00000000, epc == 804e305c, ra == 804e6f20
-[ 0.135208] Oops[#1]:
-[ 0.137514] CPU: 0 PID: 1 Comm: swapper Not tainted 4.14.87
-...
-[ 0.197117] epc : 804e305c bcm63xx_dsp_register+0x80/0xa4
-[ 0.202838] ra : 804e6f20 board_register_devices+0x258/0x390
-...
-
-This happens because it tries to copy the passed platform data over the
-platform_device's unpopulated platform_data.
-
-Since this code has been broken since its submission, no driver was ever
-submitted for it, and apparently nobody was using it, just remove it
-instead of trying to fix it.
-
-Fixes: e7300d04bd08 ("MIPS: BCM63xx: Add support for the Broadcom BCM63xx family of SOCs.")
-Signed-off-by: Jonas Gorski
----
- arch/mips/bcm63xx/Makefile | 6 +--
- arch/mips/bcm63xx/boards/board_bcm963xx.c | 20 --------
- arch/mips/bcm63xx/dev-dsp.c | 56 ----------------------
- .../include/asm/mach-bcm63xx/bcm63xx_dev_dsp.h | 14 ------
- .../mips/include/asm/mach-bcm63xx/board_bcm963xx.h | 5 --
- 5 files changed, 3 insertions(+), 98 deletions(-)
- delete mode 100644 arch/mips/bcm63xx/dev-dsp.c
- delete mode 100644 arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_dsp.h
-
---- a/arch/mips/bcm63xx/Makefile
-+++ b/arch/mips/bcm63xx/Makefile
-@@ -1,8 +1,8 @@
- # SPDX-License-Identifier: GPL-2.0
- obj-y += clk.o cpu.o cs.o gpio.o irq.o nvram.o prom.o reset.o \
-- setup.o timer.o dev-dsp.o dev-enet.o dev-flash.o \
-- dev-pcmcia.o dev-rng.o dev-spi.o dev-hsspi.o dev-uart.o \
-- dev-wdt.o dev-usb-usbd.o
-+ setup.o timer.o dev-enet.o dev-flash.o dev-pcmcia.o \
-+ dev-rng.o dev-spi.o dev-hsspi.o dev-uart.o dev-wdt.o \
-+ dev-usb-usbd.o
- obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
-
- obj-y += boards/
---- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
-+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
-@@ -23,7 +23,6 @@
- #include
- #include
- #include
--#include
- #include
- #include
- #include
-@@ -289,14 +288,6 @@ static struct board_info __initdata boar
- .has_pccard = 1,
- .has_ehci0 = 1,
-
-- .has_dsp = 1,
-- .dsp = {
-- .gpio_rst = 6,
-- .gpio_int = 34,
-- .cs = 2,
-- .ext_irq = 2,
-- },
--
- .leds = {
- {
- .name = "adsl-fail",
-@@ -401,14 +392,6 @@ static struct board_info __initdata boar
-
- .has_ohci0 = 1,
-
-- .has_dsp = 1,
-- .dsp = {
-- .gpio_rst = 6,
-- .gpio_int = 34,
-- .ext_irq = 2,
-- .cs = 2,
-- },
--
- .leds = {
- {
- .name = "adsl-fail",
-@@ -898,9 +881,6 @@ int __init board_register_devices(void)
- if (board.has_usbd)
- bcm63xx_usbd_register(&board.usbd);
-
-- if (board.has_dsp)
-- bcm63xx_dsp_register(&board.dsp);
--
- /* Generate MAC address for WLAN and register our SPROM,
- * do this after registering enet devices
- */
---- a/arch/mips/bcm63xx/dev-dsp.c
-+++ /dev/null
-@@ -1,56 +0,0 @@
--/*
-- * Broadcom BCM63xx VoIP DSP registration
-- *
-- * This file is subject to the terms and conditions of the GNU General Public
-- * License. See the file "COPYING" in the main directory of this archive
-- * for more details.
-- *
-- * Copyright (C) 2009 Florian Fainelli
-- */
--
--#include
--#include
--#include
--
--#include
--#include
--#include
--#include
--
--static struct resource voip_dsp_resources[] = {
-- {
-- .start = -1, /* filled at runtime */
-- .end = -1, /* filled at runtime */
-- .flags = IORESOURCE_MEM,
-- },
-- {
-- .start = -1, /* filled at runtime */
-- .flags = IORESOURCE_IRQ,
-- },
--};
--
--static struct platform_device bcm63xx_voip_dsp_device = {
-- .name = "bcm63xx-voip-dsp",
-- .id = -1,
-- .num_resources = ARRAY_SIZE(voip_dsp_resources),
-- .resource = voip_dsp_resources,
--};
--
--int __init bcm63xx_dsp_register(const struct bcm63xx_dsp_platform_data *pd)
--{
-- struct bcm63xx_dsp_platform_data *dpd;
-- u32 val;
--
-- /* Get the memory window */
-- val = bcm_mpi_readl(MPI_CSBASE_REG(pd->cs - 1));
-- val &= MPI_CSBASE_BASE_MASK;
-- voip_dsp_resources[0].start = val;
-- voip_dsp_resources[0].end = val + 0xFFFFFFF;
-- voip_dsp_resources[1].start = pd->ext_irq;
--
-- /* copy given platform data */
-- dpd = bcm63xx_voip_dsp_device.dev.platform_data;
-- memcpy(dpd, pd, sizeof (*pd));
--
-- return platform_device_register(&bcm63xx_voip_dsp_device);
--}
---- a/arch/mips/include/asm/mach-bcm63xx/bcm63xx_dev_dsp.h
-+++ /dev/null
-@@ -1,14 +0,0 @@
--/* SPDX-License-Identifier: GPL-2.0 */
--#ifndef __BCM63XX_DSP_H
--#define __BCM63XX_DSP_H
--
--struct bcm63xx_dsp_platform_data {
-- unsigned gpio_rst;
-- unsigned gpio_int;
-- unsigned cs;
-- unsigned ext_irq;
--};
--
--int __init bcm63xx_dsp_register(const struct bcm63xx_dsp_platform_data *pd);
--
--#endif /* __BCM63XX_DSP_H */
---- a/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
-+++ b/arch/mips/include/asm/mach-bcm63xx/board_bcm963xx.h
-@@ -7,7 +7,6 @@
- #include
- #include
- #include
--#include
-
- /*
- * flash mapping
-@@ -31,7 +30,6 @@ struct board_info {
- unsigned int has_ohci0:1;
- unsigned int has_ehci0:1;
- unsigned int has_usbd:1;
-- unsigned int has_dsp:1;
- unsigned int has_uart0:1;
- unsigned int has_uart1:1;
-
-@@ -43,9 +41,6 @@ struct board_info {
- /* USB config */
- struct bcm63xx_usbd_platform_data usbd;
-
-- /* DSP config */
-- struct bcm63xx_dsp_platform_data dsp;
--
- /* GPIO LEDs */
- struct gpio_led leds[5];
-
diff --git a/target/linux/generic/backport-4.19/343-netfilter-nft_flow_offload-handle-netdevice-events-f.patch b/target/linux/generic/backport-4.19/343-netfilter-nft_flow_offload-handle-netdevice-events-f.patch
index 55d0f40f45..577f2d3df6 100644
--- a/target/linux/generic/backport-4.19/343-netfilter-nft_flow_offload-handle-netdevice-events-f.patch
+++ b/target/linux/generic/backport-4.19/343-netfilter-nft_flow_offload-handle-netdevice-events-f.patch
@@ -10,7 +10,7 @@ Signed-off-by: Pablo Neira Ayuso
--- a/net/netfilter/nf_flow_table_core.c
+++ b/net/netfilter/nf_flow_table_core.c
-@@ -532,5 +532,35 @@ void nf_flow_table_free(struct nf_flowta
+@@ -535,5 +535,35 @@ void nf_flow_table_free(struct nf_flowta
}
EXPORT_SYMBOL_GPL(nf_flow_table_free);
@@ -48,7 +48,7 @@ Signed-off-by: Pablo Neira Ayuso
MODULE_AUTHOR("Pablo Neira Ayuso ");
--- a/net/netfilter/nft_flow_offload.c
+++ b/net/netfilter/nft_flow_offload.c
-@@ -217,47 +217,14 @@ static struct nft_expr_type nft_flow_off
+@@ -216,47 +216,14 @@ static struct nft_expr_type nft_flow_off
.owner = THIS_MODULE,
};
diff --git a/target/linux/generic/backport-4.19/702-v4.20-net-ethernet-Add-helper-for-MACs-which-support-asym-.patch b/target/linux/generic/backport-4.19/702-v4.20-net-ethernet-Add-helper-for-MACs-which-support-asym-.patch
index ee6e6a6dac..3ada51636b 100644
--- a/target/linux/generic/backport-4.19/702-v4.20-net-ethernet-Add-helper-for-MACs-which-support-asym-.patch
+++ b/target/linux/generic/backport-4.19/702-v4.20-net-ethernet-Add-helper-for-MACs-which-support-asym-.patch
@@ -17,7 +17,7 @@ Signed-off-by: David S. Miller
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
-@@ -1776,6 +1776,19 @@ int phy_set_max_speed(struct phy_device
+@@ -1777,6 +1777,19 @@ int phy_set_max_speed(struct phy_device
}
EXPORT_SYMBOL(phy_set_max_speed);
diff --git a/target/linux/generic/backport-4.19/703-v4.20-net-ethernet-Add-helper-for-set_pauseparam-for-Asym-.patch b/target/linux/generic/backport-4.19/703-v4.20-net-ethernet-Add-helper-for-set_pauseparam-for-Asym-.patch
index 8d68fbfe0f..4ad3bf698a 100644
--- a/target/linux/generic/backport-4.19/703-v4.20-net-ethernet-Add-helper-for-set_pauseparam-for-Asym-.patch
+++ b/target/linux/generic/backport-4.19/703-v4.20-net-ethernet-Add-helper-for-set_pauseparam-for-Asym-.patch
@@ -17,7 +17,7 @@ Signed-off-by: David S. Miller
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
-@@ -1789,6 +1789,36 @@ void phy_support_asym_pause(struct phy_d
+@@ -1790,6 +1790,36 @@ void phy_support_asym_pause(struct phy_d
}
EXPORT_SYMBOL(phy_support_asym_pause);
diff --git a/target/linux/generic/backport-4.19/704-v4.20-net-phy-Stop-with-excessive-soft-reset.patch b/target/linux/generic/backport-4.19/704-v4.20-net-phy-Stop-with-excessive-soft-reset.patch
index 77ad5b96dd..00ef6b7a1d 100644
--- a/target/linux/generic/backport-4.19/704-v4.20-net-phy-Stop-with-excessive-soft-reset.patch
+++ b/target/linux/generic/backport-4.19/704-v4.20-net-phy-Stop-with-excessive-soft-reset.patch
@@ -29,7 +29,7 @@ Signed-off-by: Russell King
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
-@@ -885,8 +885,6 @@ int phy_init_hw(struct phy_device *phyde
+@@ -886,8 +886,6 @@ int phy_init_hw(struct phy_device *phyde
if (phydev->drv->soft_reset)
ret = phydev->drv->soft_reset(phydev);
diff --git a/target/linux/generic/backport-4.19/737-v5.5-net-phy-add-core-phylib-sfp-support.patch b/target/linux/generic/backport-4.19/737-v5.5-net-phy-add-core-phylib-sfp-support.patch
index 8dcad2fa58..9b34d40a0f 100644
--- a/target/linux/generic/backport-4.19/737-v5.5-net-phy-add-core-phylib-sfp-support.patch
+++ b/target/linux/generic/backport-4.19/737-v5.5-net-phy-add-core-phylib-sfp-support.patch
@@ -54,7 +54,7 @@ Signed-off-by: Russell King
#include
#include
#include
-@@ -943,6 +944,65 @@ void phy_attached_print(struct phy_devic
+@@ -944,6 +945,65 @@ void phy_attached_print(struct phy_devic
EXPORT_SYMBOL(phy_attached_print);
/**
@@ -120,7 +120,7 @@ Signed-off-by: Russell King
* phy_attach_direct - attach a network device to a given PHY device pointer
* @dev: network device to attach
* @phydev: Pointer to phy_device to attach
-@@ -1015,6 +1075,9 @@ int phy_attach_direct(struct net_device
+@@ -1016,6 +1076,9 @@ int phy_attach_direct(struct net_device
phydev->attached_dev = dev;
dev->phydev = phydev;
@@ -130,7 +130,7 @@ Signed-off-by: Russell King
/* Some Ethernet drivers try to connect to a PHY device before
* calling register_netdevice() -> netdev_register_kobject() and
* does the dev->dev.kobj initialization. Here we only check for
-@@ -1949,6 +2012,9 @@ static int phy_remove(struct device *dev
+@@ -1950,6 +2013,9 @@ static int phy_remove(struct device *dev
phydev->state = PHY_DOWN;
mutex_unlock(&phydev->lock);
diff --git a/target/linux/generic/backport-4.19/740-v5.5-net-phy-avoid-matching-all-ones-clause-45-PHY-IDs.patch b/target/linux/generic/backport-4.19/740-v5.5-net-phy-avoid-matching-all-ones-clause-45-PHY-IDs.patch
index d6c0120197..81f161e9b1 100644
--- a/target/linux/generic/backport-4.19/740-v5.5-net-phy-avoid-matching-all-ones-clause-45-PHY-IDs.patch
+++ b/target/linux/generic/backport-4.19/740-v5.5-net-phy-avoid-matching-all-ones-clause-45-PHY-IDs.patch
@@ -37,7 +37,7 @@ Signed-off-by: Russell King
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
-@@ -334,7 +334,7 @@ static int phy_bus_match(struct device *
+@@ -335,7 +335,7 @@ static int phy_bus_match(struct device *
if (phydev->is_c45) {
for (i = 1; i < num_ids; i++) {
@@ -46,7 +46,7 @@ Signed-off-by: Russell King
continue;
if ((phydrv->phy_id & phydrv->phy_id_mask) ==
-@@ -622,10 +622,13 @@ static int get_phy_id(struct mii_bus *bu
+@@ -623,10 +623,13 @@ static int get_phy_id(struct mii_bus *bu
*/
struct phy_device *get_phy_device(struct mii_bus *bus, int addr, bool is_c45)
{
diff --git a/target/linux/generic/hack-4.14/645-netfilter-connmark-introduce-savedscp.patch b/target/linux/generic/hack-4.14/645-netfilter-connmark-introduce-savedscp.patch
deleted file mode 100644
index 5217eca582..0000000000
--- a/target/linux/generic/hack-4.14/645-netfilter-connmark-introduce-savedscp.patch
+++ /dev/null
@@ -1,100 +0,0 @@
-From 5a4d7714faa28c03e85d696fba82716fbda5c432 Mon Sep 17 00:00:00 2001
-From: Kevin Darbyshire-Bryant
-Date: Sat, 23 Mar 2019 09:29:49 +0000
-Subject: [PATCH] netfilter: connmark: introduce savedscp
-
-savedscp is a method of storing the DSCP of an ip packet into conntrack
-mark. In combination with a suitable tc filter action (conndscp but may
-end up being integrated into connmark) DSCP values are able to be stored
-on egress and restored on ingress across links that otherwise alter or
-bleach DSCP.
-
-This is useful for qdiscs such as CAKE which are able to shape according
-to policies based on DSCP.
-
-Ingress classification is traditionally a challenging task since
-iptables rules haven't yet run and tc filter/eBPF programs are pre-NAT
-lookups, hence are unable to see internal IPv4 addresses as used on the
-typical home masquerading gateway.
-
-The ingress problem is solved by the tc filter, but the tc people didn't
-like the idea of tc setting conntrack mark values, though they are ok
-with reading conntrack values and hence restoring DSCP from conntrack
-marks.
-
-x_tables CONNMARK with the new savedscp action solves the problem of
-storing the DSCP to the conntrack mark.
-
-It accepts 2 parameters. The mark is a 32bit value with usually one 1
-bit set. This bit is set when savedscp saves the DSCP to the mark.
-This is useful to implement a 'one shot'
-iptables based classification where the 'complicated' iptables rules are
-only run once to classify the connection on initial (egress) packet and
-subsequent packets are all marked/restored with the same DSCP. A mark
-of zero disables the setting of a status bit/s.
-
-The mask is a 32bit value of at least 6 contiguous bits and represents
-the area where the DSCP will be stored.
-
-e.g.
-
-iptables -A QOS_MARK_eth0 -t mangle -j CONNMARK --savedscp-mark 0xfc000000/0x01000000
-
-Would store the DSCP in the top 6 bits of the 32bit mark field, and use
-the LSB of the top byte as the 'DSCP has been stored' marker.
-
-Signed-off-by: Kevin Darbyshire-Bryant
----
- include/uapi/linux/netfilter/xt_connmark.h | 3 ++-
- net/netfilter/xt_connmark.c | 21 ++++++++++++++++++++-
- 2 files changed, 22 insertions(+), 2 deletions(-)
-
---- a/include/uapi/linux/netfilter/xt_connmark.h
-+++ b/include/uapi/linux/netfilter/xt_connmark.h
-@@ -16,7 +16,8 @@
- enum {
- XT_CONNMARK_SET = 0,
- XT_CONNMARK_SAVE,
-- XT_CONNMARK_RESTORE
-+ XT_CONNMARK_RESTORE,
-+ XT_CONNMARK_SAVEDSCP
- };
-
- struct xt_connmark_tginfo1 {
---- a/net/netfilter/xt_connmark.c
-+++ b/net/netfilter/xt_connmark.c
-@@ -42,6 +42,7 @@ connmark_tg(struct sk_buff *skb, const s
- enum ip_conntrack_info ctinfo;
- struct nf_conn *ct;
- u_int32_t newmark;
-+ u_int8_t dscp, maskshift;
-
- ct = nf_ct_get(skb, &ctinfo);
- if (ct == NULL)
-@@ -57,7 +58,25 @@ connmark_tg(struct sk_buff *skb, const s
- break;
- case XT_CONNMARK_SAVE:
- newmark = (ct->mark & ~info->ctmask) ^
-- (skb->mark & info->nfmask);
-+ (skb->mark & info->nfmask);
-+ if (ct->mark != newmark) {
-+ ct->mark = newmark;
-+ nf_conntrack_event_cache(IPCT_MARK, ct);
-+ }
-+ break;
-+ case XT_CONNMARK_SAVEDSCP:
-+ if (skb->protocol == htons(ETH_P_IP))
-+ dscp = ipv4_get_dsfield(ip_hdr(skb)) >> 2;
-+ else if (skb->protocol == htons(ETH_P_IPV6))
-+ dscp = ipv6_get_dsfield(ipv6_hdr(skb)) >> 2;
-+ else /* protocol doesn't have diffserv */
-+ break;
-+
-+ /* nfmask contains the mask shift value */
-+ maskshift = info->nfmask & 0x1f;
-+ newmark = (ct->mark & ~info->ctmark) |
-+ (info->ctmask | (dscp << maskshift));
-+
- if (ct->mark != newmark) {
- ct->mark = newmark;
- nf_conntrack_event_cache(IPCT_MARK, ct);
diff --git a/target/linux/generic/hack-4.14/645-netfilter-connmark-introduce-set-dscpmark.patch b/target/linux/generic/hack-4.14/645-netfilter-connmark-introduce-set-dscpmark.patch
new file mode 100644
index 0000000000..1ecc95bf22
--- /dev/null
+++ b/target/linux/generic/hack-4.14/645-netfilter-connmark-introduce-set-dscpmark.patch
@@ -0,0 +1,124 @@
+From f1627abea333781d3e2a61bac4c7fd4502395741 Mon Sep 17 00:00:00 2001
+From: Kevin Darbyshire-Bryant
+Date: Sat, 23 Mar 2019 09:29:49 +0000
+Subject: [PATCH] netfilter: connmark: introduce set-dscpmark
+
+set-dscpmark is a method of storing the DSCP of an ip packet into
+conntrack mark. In combination with a suitable tc filter action
+(act_ctinfo) DSCP values are able to be stored in the mark on egress and
+restored on ingress across links that otherwise alter or bleach DSCP.
+
+This is useful for qdiscs such as CAKE which are able to shape according
+to policies based on DSCP.
+
+Ingress classification is traditionally a challenging task since
+iptables rules haven't yet run and tc filter/eBPF programs are pre-NAT
+lookups, hence are unable to see internal IPv4 addresses as used on the
+typical home masquerading gateway.
+
+x_tables CONNMARK set-dscpmark target solves the problem of storing the
+DSCP to the conntrack mark in a way suitable for the new act_ctinfo tc
+action to restore.
+
+The set-dscpmark option accepts 2 parameters, a 32bit 'dscpmask' and a
+32bit 'statemask'. The dscp mask must be 6 contiguous bits and
+represents the area where the DSCP will be stored in the connmark. The
+state mask is a minimum 1 bit length mask that must not overlap with the
+dscpmask. It represents a flag which is set when the DSCP has been
+stored in the conntrack mark. This is useful to implement a 'one shot'
+iptables based classification where the 'complicated' iptables rules are
+only run once to classify the connection on initial (egress) packet and
+subsequent packets are all marked/restored with the same DSCP. A state
+mask of zero disables the setting of a status bit/s.
+
+example syntax with a suitably modified iptables user space application:
+
+iptables -A QOS_MARK_eth0 -t mangle -j CONNMARK --set-dscpmark 0xfc000000/0x01000000
+
+Would store the DSCP in the top 6 bits of the 32bit mark field, and use
+the LSB of the top byte as the 'DSCP has been stored' marker.
+
+|----0xFC----conntrack mark----000000---|
+| Bits 31-26 | bit 25 | bit24 |~~~ Bit 0|
+| DSCP | unused | flag |unused |
+|-----------------------0x01---000000---|
+ ^ ^
+ | |
+ ---| Conditional flag
+ | set this when dscp
+|-ip diffserv-| stored in mark
+| 6 bits |
+|-------------|
+
+an identically configured tc action to restore looks like:
+
+tc filter show dev eth0 ingress
+filter parent ffff: protocol all pref 10 u32 chain 0
+filter parent ffff: protocol all pref 10 u32 chain 0 fh 800: ht divisor 1
+filter parent ffff: protocol all pref 10 u32 chain 0 fh 800::800 order 2048 key ht 800 bkt 0 flowid 1: not_in_hw
+ match 00000000/00000000 at 0
+ action order 1: ctinfo zone 0 pipe
+ index 2 ref 1 bind 1 dscp 0xfc000000/0x1000000
+
+ action order 2: mirred (Egress Redirect to device ifb4eth0) stolen
+ index 1 ref 1 bind 1
+
+|----0xFC----conntrack mark----000000---|
+| Bits 31-26 | bit 25 | bit24 |~~~ Bit 0|
+| DSCP | unused | flag |unused |
+|-----------------------0x01---000000---|
+ | |
+ | |
+ ---| Conditional flag
+ v only restore if set
+|-ip diffserv-|
+| 6 bits |
+|-------------|
+
+Signed-off-by: Kevin Darbyshire-Bryant
+---
+ net/netfilter/xt_connmark.c | 19 +++++++++++++++++--
+ 1 file changed, 17 insertions(+), 2 deletions(-)
+
+--- a/net/netfilter/xt_connmark.c
++++ b/net/netfilter/xt_connmark.c
+@@ -42,6 +42,7 @@ connmark_tg(struct sk_buff *skb, const s
+ enum ip_conntrack_info ctinfo;
+ struct nf_conn *ct;
+ u_int32_t newmark;
++ u_int8_t dscp, maskshift;
+
+ ct = nf_ct_get(skb, &ctinfo);
+ if (ct == NULL)
+@@ -49,7 +50,21 @@ connmark_tg(struct sk_buff *skb, const s
+
+ switch (info->mode) {
+ case XT_CONNMARK_SET:
+- newmark = (ct->mark & ~info->ctmask) ^ info->ctmark;
++ if (info->nfmask & 0x80000000) {
++ newmark = (ct->mark & ~info->ctmask) ^ info->ctmark;
++ } else {
++ if (skb->protocol == htons(ETH_P_IP))
++ dscp = ipv4_get_dsfield(ip_hdr(skb)) >> 2;
++ else if (skb->protocol == htons(ETH_P_IPV6))
++ dscp = ipv6_get_dsfield(ipv6_hdr(skb)) >> 2;
++ else /* protocol doesn't have diffserv */
++ break;
++
++ /* nfmask contains the mask shift value */
++ maskshift = info->nfmask & 0x1f;
++ newmark = (ct->mark & ~info->ctmark) |
++ (info->ctmask | (dscp << maskshift));
++ }
+ if (ct->mark != newmark) {
+ ct->mark = newmark;
+ nf_conntrack_event_cache(IPCT_MARK, ct);
+@@ -57,7 +72,7 @@ connmark_tg(struct sk_buff *skb, const s
+ break;
+ case XT_CONNMARK_SAVE:
+ newmark = (ct->mark & ~info->ctmask) ^
+- (skb->mark & info->nfmask);
++ (skb->mark & info->nfmask);
+ if (ct->mark != newmark) {
+ ct->mark = newmark;
+ nf_conntrack_event_cache(IPCT_MARK, ct);
diff --git a/target/linux/generic/hack-4.14/702-phy_add_aneg_done_function.patch b/target/linux/generic/hack-4.14/702-phy_add_aneg_done_function.patch
index 97bbee96a9..cc84311ef9 100644
--- a/target/linux/generic/hack-4.14/702-phy_add_aneg_done_function.patch
+++ b/target/linux/generic/hack-4.14/702-phy_add_aneg_done_function.patch
@@ -15,7 +15,7 @@
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
-@@ -1461,6 +1461,9 @@ int genphy_update_link(struct phy_device
+@@ -1462,6 +1462,9 @@ int genphy_update_link(struct phy_device
{
int status;
diff --git a/target/linux/generic/hack-4.19/661-use_fq_codel_by_default.patch b/target/linux/generic/hack-4.19/661-use_fq_codel_by_default.patch
index 71a26dba4a..2778377de7 100644
--- a/target/linux/generic/hack-4.19/661-use_fq_codel_by_default.patch
+++ b/target/linux/generic/hack-4.19/661-use_fq_codel_by_default.patch
@@ -14,7 +14,7 @@ Signed-off-by: Felix Fietkau
--- a/include/net/sch_generic.h
+++ b/include/net/sch_generic.h
-@@ -486,12 +486,13 @@ extern struct Qdisc_ops noop_qdisc_ops;
+@@ -487,12 +487,13 @@ extern struct Qdisc_ops noop_qdisc_ops;
extern struct Qdisc_ops pfifo_fast_ops;
extern struct Qdisc_ops mq_qdisc_ops;
extern struct Qdisc_ops noqueue_qdisc_ops;
@@ -44,7 +44,7 @@ Signed-off-by: Felix Fietkau
device, it has to decide which ones to send first, which ones to
--- a/net/sched/sch_api.c
+++ b/net/sched/sch_api.c
-@@ -2160,7 +2160,7 @@ static int __init pktsched_init(void)
+@@ -2162,7 +2162,7 @@ static int __init pktsched_init(void)
return err;
}
diff --git a/target/linux/generic/hack-4.19/702-phy_add_aneg_done_function.patch b/target/linux/generic/hack-4.19/702-phy_add_aneg_done_function.patch
index 9a9097d91f..fe295906ee 100644
--- a/target/linux/generic/hack-4.19/702-phy_add_aneg_done_function.patch
+++ b/target/linux/generic/hack-4.19/702-phy_add_aneg_done_function.patch
@@ -15,7 +15,7 @@
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
-@@ -1512,6 +1512,9 @@ int genphy_update_link(struct phy_device
+@@ -1577,6 +1577,9 @@ int genphy_update_link(struct phy_device
{
int status;
diff --git a/target/linux/generic/pending-4.14/630-packet_socket_type.patch b/target/linux/generic/pending-4.14/630-packet_socket_type.patch
index 8dbe06023e..a4737b23ef 100644
--- a/target/linux/generic/pending-4.14/630-packet_socket_type.patch
+++ b/target/linux/generic/pending-4.14/630-packet_socket_type.patch
@@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau
#define PACKET_FANOUT_LB 1
--- a/net/packet/af_packet.c
+++ b/net/packet/af_packet.c
-@@ -1829,6 +1829,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -1836,6 +1836,7 @@ static int packet_rcv_spkt(struct sk_buf
{
struct sock *sk;
struct sockaddr_pkt *spkt;
@@ -38,7 +38,7 @@ Signed-off-by: Felix Fietkau
/*
* When we registered the protocol we saved the socket in the data
-@@ -1836,6 +1837,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -1843,6 +1844,7 @@ static int packet_rcv_spkt(struct sk_buf
*/
sk = pt->af_packet_priv;
@@ -46,7 +46,7 @@ Signed-off-by: Felix Fietkau
/*
* Yank back the headers [hope the device set this
-@@ -1848,7 +1850,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -1855,7 +1857,7 @@ static int packet_rcv_spkt(struct sk_buf
* so that this procedure is noop.
*/
@@ -55,7 +55,7 @@ Signed-off-by: Felix Fietkau
goto out;
if (!net_eq(dev_net(dev), sock_net(sk)))
-@@ -2075,12 +2077,12 @@ static int packet_rcv(struct sk_buff *sk
+@@ -2082,12 +2084,12 @@ static int packet_rcv(struct sk_buff *sk
unsigned int snaplen, res;
bool is_drop_n_account = false;
@@ -71,7 +71,7 @@ Signed-off-by: Felix Fietkau
if (!net_eq(dev_net(dev), sock_net(sk)))
goto drop;
-@@ -2206,12 +2208,12 @@ static int tpacket_rcv(struct sk_buff *s
+@@ -2213,12 +2215,12 @@ static int tpacket_rcv(struct sk_buff *s
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h2)) != 32);
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h3)) != 48);
@@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau
if (!net_eq(dev_net(dev), sock_net(sk)))
goto drop;
-@@ -3294,6 +3296,7 @@ static int packet_create(struct net *net
+@@ -3301,6 +3303,7 @@ static int packet_create(struct net *net
mutex_init(&po->pg_vec_lock);
po->rollover = NULL;
po->prot_hook.func = packet_rcv;
@@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau
if (sock->type == SOCK_PACKET)
po->prot_hook.func = packet_rcv_spkt;
-@@ -3907,6 +3910,16 @@ packet_setsockopt(struct socket *sock, i
+@@ -3923,6 +3926,16 @@ packet_setsockopt(struct socket *sock, i
po->xmit = val ? packet_direct_xmit : dev_queue_xmit;
return 0;
}
@@ -112,7 +112,7 @@ Signed-off-by: Felix Fietkau
default:
return -ENOPROTOOPT;
}
-@@ -3959,6 +3972,13 @@ static int packet_getsockopt(struct sock
+@@ -3975,6 +3988,13 @@ static int packet_getsockopt(struct sock
case PACKET_VNET_HDR:
val = po->has_vnet_hdr;
break;
diff --git a/target/linux/generic/pending-4.14/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch b/target/linux/generic/pending-4.14/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
index 6e2eca6daf..96c8ae9c12 100644
--- a/target/linux/generic/pending-4.14/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
+++ b/target/linux/generic/pending-4.14/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
@@ -350,7 +350,7 @@ Signed-off-by: Steven Barth
memcpy(p->name, u->name, sizeof(u->name));
}
-@@ -1922,6 +2084,15 @@ static int ip6_tnl_validate(struct nlatt
+@@ -1920,6 +2082,15 @@ static int ip6_tnl_validate(struct nlatt
return 0;
}
@@ -366,7 +366,7 @@ Signed-off-by: Steven Barth
static void ip6_tnl_netlink_parms(struct nlattr *data[],
struct __ip6_tnl_parm *parms)
{
-@@ -1959,6 +2130,46 @@ static void ip6_tnl_netlink_parms(struct
+@@ -1957,6 +2128,46 @@ static void ip6_tnl_netlink_parms(struct
if (data[IFLA_IPTUN_FWMARK])
parms->fwmark = nla_get_u32(data[IFLA_IPTUN_FWMARK]);
@@ -413,7 +413,7 @@ Signed-off-by: Steven Barth
}
static bool ip6_tnl_netlink_encap_parms(struct nlattr *data[],
-@@ -2074,6 +2285,12 @@ static void ip6_tnl_dellink(struct net_d
+@@ -2072,6 +2283,12 @@ static void ip6_tnl_dellink(struct net_d
static size_t ip6_tnl_get_size(const struct net_device *dev)
{
@@ -426,7 +426,7 @@ Signed-off-by: Steven Barth
return
/* IFLA_IPTUN_LINK */
nla_total_size(4) +
-@@ -2103,6 +2320,24 @@ static size_t ip6_tnl_get_size(const str
+@@ -2101,6 +2318,24 @@ static size_t ip6_tnl_get_size(const str
nla_total_size(0) +
/* IFLA_IPTUN_FWMARK */
nla_total_size(4) +
@@ -451,7 +451,7 @@ Signed-off-by: Steven Barth
0;
}
-@@ -2110,6 +2345,9 @@ static int ip6_tnl_fill_info(struct sk_b
+@@ -2108,6 +2343,9 @@ static int ip6_tnl_fill_info(struct sk_b
{
struct ip6_tnl *tunnel = netdev_priv(dev);
struct __ip6_tnl_parm *parm = &tunnel->parms;
@@ -461,7 +461,7 @@ Signed-off-by: Steven Barth
if (nla_put_u32(skb, IFLA_IPTUN_LINK, parm->link) ||
nla_put_in6_addr(skb, IFLA_IPTUN_LOCAL, &parm->laddr) ||
-@@ -2119,9 +2357,27 @@ static int ip6_tnl_fill_info(struct sk_b
+@@ -2117,9 +2355,27 @@ static int ip6_tnl_fill_info(struct sk_b
nla_put_be32(skb, IFLA_IPTUN_FLOWINFO, parm->flowinfo) ||
nla_put_u32(skb, IFLA_IPTUN_FLAGS, parm->flags) ||
nla_put_u8(skb, IFLA_IPTUN_PROTO, parm->proto) ||
@@ -490,7 +490,7 @@ Signed-off-by: Steven Barth
if (nla_put_u16(skb, IFLA_IPTUN_ENCAP_TYPE, tunnel->encap.type) ||
nla_put_be16(skb, IFLA_IPTUN_ENCAP_SPORT, tunnel->encap.sport) ||
nla_put_be16(skb, IFLA_IPTUN_ENCAP_DPORT, tunnel->encap.dport) ||
-@@ -2161,6 +2417,7 @@ static const struct nla_policy ip6_tnl_p
+@@ -2159,6 +2415,7 @@ static const struct nla_policy ip6_tnl_p
[IFLA_IPTUN_ENCAP_DPORT] = { .type = NLA_U16 },
[IFLA_IPTUN_COLLECT_METADATA] = { .type = NLA_FLAG },
[IFLA_IPTUN_FWMARK] = { .type = NLA_U32 },
diff --git a/target/linux/generic/pending-4.14/680-NET-skip-GRO-for-foreign-MAC-addresses.patch b/target/linux/generic/pending-4.14/680-NET-skip-GRO-for-foreign-MAC-addresses.patch
index 8919ea34ec..067de75f3c 100644
--- a/target/linux/generic/pending-4.14/680-NET-skip-GRO-for-foreign-MAC-addresses.patch
+++ b/target/linux/generic/pending-4.14/680-NET-skip-GRO-for-foreign-MAC-addresses.patch
@@ -107,7 +107,7 @@ Signed-off-by: Felix Fietkau
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev,
&changeupper_info.info);
}
-@@ -6970,6 +7017,7 @@ int dev_set_mac_address(struct net_devic
+@@ -6961,6 +7008,7 @@ int dev_set_mac_address(struct net_devic
if (err)
return err;
dev->addr_assign_type = NET_ADDR_SET;
diff --git a/target/linux/generic/pending-4.14/703-phy-add-detach-callback-to-struct-phy_driver.patch b/target/linux/generic/pending-4.14/703-phy-add-detach-callback-to-struct-phy_driver.patch
index 4ba722183c..d49fdc77ab 100644
--- a/target/linux/generic/pending-4.14/703-phy-add-detach-callback-to-struct-phy_driver.patch
+++ b/target/linux/generic/pending-4.14/703-phy-add-detach-callback-to-struct-phy_driver.patch
@@ -11,7 +11,7 @@ Signed-off-by: Gabor Juhos
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
-@@ -1105,6 +1105,9 @@ void phy_detach(struct phy_device *phyde
+@@ -1106,6 +1106,9 @@ void phy_detach(struct phy_device *phyde
struct module *ndev_owner = dev->dev.parent->driver->owner;
struct mii_bus *bus;
diff --git a/target/linux/generic/pending-4.19/630-packet_socket_type.patch b/target/linux/generic/pending-4.19/630-packet_socket_type.patch
index 7c4ab32fa2..25f44b466a 100644
--- a/target/linux/generic/pending-4.19/630-packet_socket_type.patch
+++ b/target/linux/generic/pending-4.19/630-packet_socket_type.patch
@@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau
#define PACKET_FANOUT_LB 1
--- a/net/packet/af_packet.c
+++ b/net/packet/af_packet.c
-@@ -1790,6 +1790,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -1796,6 +1796,7 @@ static int packet_rcv_spkt(struct sk_buf
{
struct sock *sk;
struct sockaddr_pkt *spkt;
@@ -38,7 +38,7 @@ Signed-off-by: Felix Fietkau
/*
* When we registered the protocol we saved the socket in the data
-@@ -1797,6 +1798,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -1803,6 +1804,7 @@ static int packet_rcv_spkt(struct sk_buf
*/
sk = pt->af_packet_priv;
@@ -46,7 +46,7 @@ Signed-off-by: Felix Fietkau
/*
* Yank back the headers [hope the device set this
-@@ -1809,7 +1811,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -1815,7 +1817,7 @@ static int packet_rcv_spkt(struct sk_buf
* so that this procedure is noop.
*/
@@ -55,7 +55,7 @@ Signed-off-by: Felix Fietkau
goto out;
if (!net_eq(dev_net(dev), sock_net(sk)))
-@@ -2037,12 +2039,12 @@ static int packet_rcv(struct sk_buff *sk
+@@ -2043,12 +2045,12 @@ static int packet_rcv(struct sk_buff *sk
unsigned int snaplen, res;
bool is_drop_n_account = false;
@@ -71,7 +71,7 @@ Signed-off-by: Felix Fietkau
if (!net_eq(dev_net(dev), sock_net(sk)))
goto drop;
-@@ -2168,12 +2170,12 @@ static int tpacket_rcv(struct sk_buff *s
+@@ -2174,12 +2176,12 @@ static int tpacket_rcv(struct sk_buff *s
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h2)) != 32);
BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h3)) != 48);
@@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau
if (!net_eq(dev_net(dev), sock_net(sk)))
goto drop;
-@@ -3259,6 +3261,7 @@ static int packet_create(struct net *net
+@@ -3265,6 +3267,7 @@ static int packet_create(struct net *net
mutex_init(&po->pg_vec_lock);
po->rollover = NULL;
po->prot_hook.func = packet_rcv;
@@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau
if (sock->type == SOCK_PACKET)
po->prot_hook.func = packet_rcv_spkt;
-@@ -3870,6 +3873,16 @@ packet_setsockopt(struct socket *sock, i
+@@ -3885,6 +3888,16 @@ packet_setsockopt(struct socket *sock, i
po->xmit = val ? packet_direct_xmit : dev_queue_xmit;
return 0;
}
@@ -112,7 +112,7 @@ Signed-off-by: Felix Fietkau
default:
return -ENOPROTOOPT;
}
-@@ -3922,6 +3935,13 @@ static int packet_getsockopt(struct sock
+@@ -3937,6 +3950,13 @@ static int packet_getsockopt(struct sock
case PACKET_VNET_HDR:
val = po->has_vnet_hdr;
break;
diff --git a/target/linux/generic/pending-4.19/640-netfilter-nf_flow_table-add-hardware-offload-support.patch b/target/linux/generic/pending-4.19/640-netfilter-nf_flow_table-add-hardware-offload-support.patch
index a4996efbc8..f0946e8dd2 100644
--- a/target/linux/generic/pending-4.19/640-netfilter-nf_flow_table-add-hardware-offload-support.patch
+++ b/target/linux/generic/pending-4.19/640-netfilter-nf_flow_table-add-hardware-offload-support.patch
@@ -237,7 +237,7 @@ Signed-off-by: Pablo Neira Ayuso
INIT_DEFERRABLE_WORK(&flowtable->gc_work, nf_flow_offload_work_gc);
err = rhashtable_init(&flowtable->rhashtable,
-@@ -535,6 +580,8 @@ static void nf_flow_table_iterate_cleanu
+@@ -538,6 +583,8 @@ static void nf_flow_table_iterate_cleanu
{
nf_flow_table_iterate(flowtable, nf_flow_table_do_cleanup, dev);
flush_delayed_work(&flowtable->gc_work);
@@ -246,7 +246,7 @@ Signed-off-by: Pablo Neira Ayuso
}
void nf_flow_table_cleanup(struct net *net, struct net_device *dev)
-@@ -548,6 +595,26 @@ void nf_flow_table_cleanup(struct net *n
+@@ -551,6 +598,26 @@ void nf_flow_table_cleanup(struct net *n
}
EXPORT_SYMBOL_GPL(nf_flow_table_cleanup);
@@ -273,7 +273,7 @@ Signed-off-by: Pablo Neira Ayuso
void nf_flow_table_free(struct nf_flowtable *flow_table)
{
mutex_lock(&flowtable_lock);
-@@ -557,9 +624,58 @@ void nf_flow_table_free(struct nf_flowta
+@@ -560,9 +627,58 @@ void nf_flow_table_free(struct nf_flowta
nf_flow_table_iterate(flow_table, nf_flow_table_do_cleanup, NULL);
WARN_ON(!nf_flow_offload_gc_step(flow_table));
rhashtable_destroy(&flow_table->rhashtable);
@@ -506,7 +506,7 @@ Signed-off-by: Pablo Neira Ayuso
+MODULE_ALIAS("nf-flow-table-hw");
--- a/net/netfilter/nf_tables_api.c
+++ b/net/netfilter/nf_tables_api.c
-@@ -5490,6 +5490,13 @@ static int nf_tables_flowtable_parse_hoo
+@@ -5503,6 +5503,13 @@ static int nf_tables_flowtable_parse_hoo
if (err < 0)
return err;
@@ -520,7 +520,7 @@ Signed-off-by: Pablo Neira Ayuso
ops = kcalloc(n, sizeof(struct nf_hook_ops), GFP_KERNEL);
if (!ops)
return -ENOMEM;
-@@ -5621,10 +5628,19 @@ static int nf_tables_newflowtable(struct
+@@ -5634,10 +5641,19 @@ static int nf_tables_newflowtable(struct
}
flowtable->data.type = type;
@@ -540,7 +540,7 @@ Signed-off-by: Pablo Neira Ayuso
err = nf_tables_flowtable_parse_hook(&ctx, nla[NFTA_FLOWTABLE_HOOK],
flowtable);
if (err < 0)
-@@ -5750,7 +5766,8 @@ static int nf_tables_fill_flowtable_info
+@@ -5763,7 +5779,8 @@ static int nf_tables_fill_flowtable_info
nla_put_string(skb, NFTA_FLOWTABLE_NAME, flowtable->name) ||
nla_put_be32(skb, NFTA_FLOWTABLE_USE, htonl(flowtable->use)) ||
nla_put_be64(skb, NFTA_FLOWTABLE_HANDLE, cpu_to_be64(flowtable->handle),
@@ -552,7 +552,7 @@ Signed-off-by: Pablo Neira Ayuso
nest = nla_nest_start(skb, NFTA_FLOWTABLE_HOOK);
--- a/net/netfilter/nft_flow_offload.c
+++ b/net/netfilter/nft_flow_offload.c
-@@ -127,6 +127,9 @@ static void nft_flow_offload_eval(const
+@@ -126,6 +126,9 @@ static void nft_flow_offload_eval(const
if (ret < 0)
goto err_flow_add;
diff --git a/target/linux/generic/pending-4.19/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch b/target/linux/generic/pending-4.19/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
index d5f4a4c969..8b7594e9cf 100644
--- a/target/linux/generic/pending-4.19/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
+++ b/target/linux/generic/pending-4.19/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch
@@ -350,7 +350,7 @@ Signed-off-by: Steven Barth
memcpy(p->name, u->name, sizeof(u->name));
}
-@@ -1926,6 +2088,15 @@ static int ip6_tnl_validate(struct nlatt
+@@ -1924,6 +2086,15 @@ static int ip6_tnl_validate(struct nlatt
return 0;
}
@@ -366,7 +366,7 @@ Signed-off-by: Steven Barth
static void ip6_tnl_netlink_parms(struct nlattr *data[],
struct __ip6_tnl_parm *parms)
{
-@@ -1963,6 +2134,46 @@ static void ip6_tnl_netlink_parms(struct
+@@ -1961,6 +2132,46 @@ static void ip6_tnl_netlink_parms(struct
if (data[IFLA_IPTUN_FWMARK])
parms->fwmark = nla_get_u32(data[IFLA_IPTUN_FWMARK]);
@@ -413,7 +413,7 @@ Signed-off-by: Steven Barth
}
static bool ip6_tnl_netlink_encap_parms(struct nlattr *data[],
-@@ -2078,6 +2289,12 @@ static void ip6_tnl_dellink(struct net_d
+@@ -2076,6 +2287,12 @@ static void ip6_tnl_dellink(struct net_d
static size_t ip6_tnl_get_size(const struct net_device *dev)
{
@@ -426,7 +426,7 @@ Signed-off-by: Steven Barth
return
/* IFLA_IPTUN_LINK */
nla_total_size(4) +
-@@ -2107,6 +2324,24 @@ static size_t ip6_tnl_get_size(const str
+@@ -2105,6 +2322,24 @@ static size_t ip6_tnl_get_size(const str
nla_total_size(0) +
/* IFLA_IPTUN_FWMARK */
nla_total_size(4) +
@@ -451,7 +451,7 @@ Signed-off-by: Steven Barth
0;
}
-@@ -2114,6 +2349,9 @@ static int ip6_tnl_fill_info(struct sk_b
+@@ -2112,6 +2347,9 @@ static int ip6_tnl_fill_info(struct sk_b
{
struct ip6_tnl *tunnel = netdev_priv(dev);
struct __ip6_tnl_parm *parm = &tunnel->parms;
@@ -461,7 +461,7 @@ Signed-off-by: Steven Barth
if (nla_put_u32(skb, IFLA_IPTUN_LINK, parm->link) ||
nla_put_in6_addr(skb, IFLA_IPTUN_LOCAL, &parm->laddr) ||
-@@ -2123,9 +2361,27 @@ static int ip6_tnl_fill_info(struct sk_b
+@@ -2121,9 +2359,27 @@ static int ip6_tnl_fill_info(struct sk_b
nla_put_be32(skb, IFLA_IPTUN_FLOWINFO, parm->flowinfo) ||
nla_put_u32(skb, IFLA_IPTUN_FLAGS, parm->flags) ||
nla_put_u8(skb, IFLA_IPTUN_PROTO, parm->proto) ||
@@ -490,7 +490,7 @@ Signed-off-by: Steven Barth
if (nla_put_u16(skb, IFLA_IPTUN_ENCAP_TYPE, tunnel->encap.type) ||
nla_put_be16(skb, IFLA_IPTUN_ENCAP_SPORT, tunnel->encap.sport) ||
nla_put_be16(skb, IFLA_IPTUN_ENCAP_DPORT, tunnel->encap.dport) ||
-@@ -2165,6 +2421,7 @@ static const struct nla_policy ip6_tnl_p
+@@ -2163,6 +2419,7 @@ static const struct nla_policy ip6_tnl_p
[IFLA_IPTUN_ENCAP_DPORT] = { .type = NLA_U16 },
[IFLA_IPTUN_COLLECT_METADATA] = { .type = NLA_FLAG },
[IFLA_IPTUN_FWMARK] = { .type = NLA_U32 },
diff --git a/target/linux/generic/pending-4.19/680-NET-skip-GRO-for-foreign-MAC-addresses.patch b/target/linux/generic/pending-4.19/680-NET-skip-GRO-for-foreign-MAC-addresses.patch
index ad7ccdb048..61cc4e830a 100644
--- a/target/linux/generic/pending-4.19/680-NET-skip-GRO-for-foreign-MAC-addresses.patch
+++ b/target/linux/generic/pending-4.19/680-NET-skip-GRO-for-foreign-MAC-addresses.patch
@@ -32,7 +32,7 @@ Signed-off-by: Felix Fietkau
__u16 tc_index; /* traffic control index */
--- a/net/core/dev.c
+++ b/net/core/dev.c
-@@ -5483,6 +5483,9 @@ static enum gro_result dev_gro_receive(s
+@@ -5454,6 +5454,9 @@ static enum gro_result dev_gro_receive(s
int same_flow;
int grow;
@@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau
if (netif_elide_gro(skb->dev))
goto normal;
-@@ -7141,6 +7144,48 @@ static void __netdev_adjacent_dev_unlink
+@@ -7112,6 +7115,48 @@ static void __netdev_adjacent_dev_unlink
&upper_dev->adj_list.lower);
}
@@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau
static int __netdev_upper_dev_link(struct net_device *dev,
struct net_device *upper_dev, bool master,
void *upper_priv, void *upper_info,
-@@ -7191,6 +7236,7 @@ static int __netdev_upper_dev_link(struc
+@@ -7162,6 +7207,7 @@ static int __netdev_upper_dev_link(struc
if (ret)
return ret;
@@ -99,7 +99,7 @@ Signed-off-by: Felix Fietkau
ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
&changeupper_info.info);
ret = notifier_to_errno(ret);
-@@ -7283,6 +7329,7 @@ void netdev_upper_dev_unlink(struct net_
+@@ -7254,6 +7300,7 @@ void netdev_upper_dev_unlink(struct net_
__netdev_adjacent_dev_unlink_neighbour(dev, upper_dev);
@@ -107,7 +107,7 @@ Signed-off-by: Felix Fietkau
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER,
&changeupper_info.info);
-@@ -7913,6 +7960,7 @@ int dev_set_mac_address(struct net_devic
+@@ -7893,6 +7940,7 @@ int dev_set_mac_address(struct net_devic
if (err)
return err;
dev->addr_assign_type = NET_ADDR_SET;
diff --git a/target/linux/generic/pending-4.19/703-phy-add-detach-callback-to-struct-phy_driver.patch b/target/linux/generic/pending-4.19/703-phy-add-detach-callback-to-struct-phy_driver.patch
index dafd84759e..1c180b225b 100644
--- a/target/linux/generic/pending-4.19/703-phy-add-detach-callback-to-struct-phy_driver.patch
+++ b/target/linux/generic/pending-4.19/703-phy-add-detach-callback-to-struct-phy_driver.patch
@@ -11,7 +11,7 @@ Signed-off-by: Gabor Juhos
--- a/drivers/net/phy/phy_device.c
+++ b/drivers/net/phy/phy_device.c
-@@ -1200,6 +1200,9 @@ void phy_detach(struct phy_device *phyde
+@@ -1201,6 +1201,9 @@ void phy_detach(struct phy_device *phyde
struct module *ndev_owner = dev->dev.parent->driver->owner;
struct mii_bus *bus;
diff --git a/target/linux/ipq40xx/patches-4.14/303-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch b/target/linux/ipq40xx/patches-4.14/303-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch
index 01de239814..b77ab89e66 100644
--- a/target/linux/ipq40xx/patches-4.14/303-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch
+++ b/target/linux/ipq40xx/patches-4.14/303-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch
@@ -8,7 +8,7 @@
{ "mx25u25635f", INFO(0xc22539, 0, 64 * 1024, 512, SECT_4K | SPI_NOR_4B_OPCODES) },
{ "mx25l25655e", INFO(0xc22619, 0, 64 * 1024, 512, 0) },
{ "mx66l51235l", INFO(0xc2201a, 0, 64 * 1024, 1024, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) },
-@@ -1201,11 +1202,12 @@ static const struct flash_info spi_nor_i
+@@ -1205,11 +1206,12 @@ static const struct flash_info spi_nor_i
{ },
};
@@ -23,7 +23,7 @@
tmp = nor->read_reg(nor, SPINOR_OP_RDID, id, SPI_NOR_MAX_ID_LEN);
if (tmp < 0) {
-@@ -1216,10 +1218,16 @@ static const struct flash_info *spi_nor_
+@@ -1220,10 +1222,16 @@ static const struct flash_info *spi_nor_
for (tmp = 0; tmp < ARRAY_SIZE(spi_nor_ids) - 1; tmp++) {
info = &spi_nor_ids[tmp];
if (info->id_len) {
@@ -42,7 +42,7 @@
dev_err(nor->dev, "unrecognized JEDEC id bytes: %02x, %02x, %02x\n",
id[0], id[1], id[2]);
return ERR_PTR(-ENODEV);
-@@ -2679,7 +2687,7 @@ int spi_nor_scan(struct spi_nor *nor, co
+@@ -2683,7 +2691,7 @@ int spi_nor_scan(struct spi_nor *nor, co
info = spi_nor_match_id(name);
/* Try to auto-detect if chip name wasn't specified or not found */
if (!info)
@@ -51,7 +51,7 @@
if (IS_ERR_OR_NULL(info))
return -ENOENT;
-@@ -2690,7 +2698,7 @@ int spi_nor_scan(struct spi_nor *nor, co
+@@ -2694,7 +2702,7 @@ int spi_nor_scan(struct spi_nor *nor, co
if (name && info->id_len) {
const struct flash_info *jinfo;
diff --git a/target/linux/ipq40xx/patches-4.19/303-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch b/target/linux/ipq40xx/patches-4.19/303-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch
index 4267107459..66746b962a 100644
--- a/target/linux/ipq40xx/patches-4.19/303-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch
+++ b/target/linux/ipq40xx/patches-4.19/303-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch
@@ -8,7 +8,7 @@
{ "mx25u25635f", INFO(0xc22539, 0, 64 * 1024, 512, SECT_4K | SPI_NOR_4B_OPCODES) },
{ "mx25l25655e", INFO(0xc22619, 0, 64 * 1024, 512, 0) },
{ "mx66l51235l", INFO(0xc2201a, 0, 64 * 1024, 1024, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) },
-@@ -1276,11 +1277,12 @@ static const struct flash_info spi_nor_i
+@@ -1280,11 +1281,12 @@ static const struct flash_info spi_nor_i
{ },
};
@@ -23,7 +23,7 @@
tmp = nor->read_reg(nor, SPINOR_OP_RDID, id, SPI_NOR_MAX_ID_LEN);
if (tmp < 0) {
-@@ -1291,10 +1293,16 @@ static const struct flash_info *spi_nor_
+@@ -1295,10 +1297,16 @@ static const struct flash_info *spi_nor_
for (tmp = 0; tmp < ARRAY_SIZE(spi_nor_ids) - 1; tmp++) {
info = &spi_nor_ids[tmp];
if (info->id_len) {
@@ -42,7 +42,7 @@
dev_err(nor->dev, "unrecognized JEDEC id bytes: %02x, %02x, %02x\n",
id[0], id[1], id[2]);
return ERR_PTR(-ENODEV);
-@@ -2828,7 +2836,7 @@ int spi_nor_scan(struct spi_nor *nor, co
+@@ -2832,7 +2840,7 @@ int spi_nor_scan(struct spi_nor *nor, co
info = spi_nor_match_id(name);
/* Try to auto-detect if chip name wasn't specified or not found */
if (!info)
@@ -51,7 +51,7 @@
if (IS_ERR_OR_NULL(info))
return -ENOENT;
-@@ -2839,7 +2847,7 @@ int spi_nor_scan(struct spi_nor *nor, co
+@@ -2843,7 +2851,7 @@ int spi_nor_scan(struct spi_nor *nor, co
if (name && info->id_len) {
const struct flash_info *jinfo;
diff --git a/target/linux/ipq806x/patches-4.19/0049-PM-OPP-Support-adjusting-OPP-voltages-at-runtime.patch b/target/linux/ipq806x/patches-4.19/0049-PM-OPP-Support-adjusting-OPP-voltages-at-runtime.patch
index bb82251bfd..c1cf02e747 100644
--- a/target/linux/ipq806x/patches-4.19/0049-PM-OPP-Support-adjusting-OPP-voltages-at-runtime.patch
+++ b/target/linux/ipq806x/patches-4.19/0049-PM-OPP-Support-adjusting-OPP-voltages-at-runtime.patch
@@ -39,7 +39,7 @@ Signed-off-by: Sylwester Nawrocki
--- a/drivers/opp/core.c
+++ b/drivers/opp/core.c
-@@ -1623,6 +1623,75 @@ put_table:
+@@ -1629,6 +1629,75 @@ put_table:
}
/**
diff --git a/target/linux/ipq806x/patches-4.19/0052-PM-OPP-Update-the-voltage-tolerance-when-adjusting-t.patch b/target/linux/ipq806x/patches-4.19/0052-PM-OPP-Update-the-voltage-tolerance-when-adjusting-t.patch
index 8ba2369ddd..9f0b9ec6d3 100644
--- a/target/linux/ipq806x/patches-4.19/0052-PM-OPP-Update-the-voltage-tolerance-when-adjusting-t.patch
+++ b/target/linux/ipq806x/patches-4.19/0052-PM-OPP-Update-the-voltage-tolerance-when-adjusting-t.patch
@@ -17,7 +17,7 @@ Signed-off-by: Georgi Djakov
--- a/drivers/opp/core.c
+++ b/drivers/opp/core.c
-@@ -1663,6 +1663,7 @@ int dev_pm_opp_adjust_voltage(struct dev
+@@ -1669,6 +1669,7 @@ int dev_pm_opp_adjust_voltage(struct dev
struct opp_table *opp_table;
struct dev_pm_opp *tmp_opp, *opp = ERR_PTR(-ENODEV);
int r = 0;
@@ -25,7 +25,7 @@ Signed-off-by: Georgi Djakov
/* Find the opp_table */
opp_table = _find_opp_table(dev);
-@@ -1692,8 +1693,17 @@ int dev_pm_opp_adjust_voltage(struct dev
+@@ -1698,8 +1699,17 @@ int dev_pm_opp_adjust_voltage(struct dev
goto adjust_unlock;
opp->supplies->u_volt = u_volt;
diff --git a/target/linux/layerscape/patches-4.14/202-core-linux-support-layerscape.patch b/target/linux/layerscape/patches-4.14/202-core-linux-support-layerscape.patch
index 63d12e688e..784b10dd50 100644
--- a/target/linux/layerscape/patches-4.14/202-core-linux-support-layerscape.patch
+++ b/target/linux/layerscape/patches-4.14/202-core-linux-support-layerscape.patch
@@ -77,8 +77,8 @@ Signed-off-by: Yangbo Lu
*
* A side effect of the link creation is re-ordering of dpm_list and the
* devices_kset list by moving the consumer device and all devices depending
-@@ -182,7 +182,8 @@ struct device_link *device_link_add(stru
- struct device_link *link;
+@@ -183,7 +183,8 @@ struct device_link *device_link_add(stru
+ bool rpm_put_supplier = false;
if (!consumer || !supplier ||
- ((flags & DL_FLAG_STATELESS) && (flags & DL_FLAG_AUTOREMOVE)))
@@ -86,8 +86,8 @@ Signed-off-by: Yangbo Lu
+ (flags & DL_FLAG_AUTOREMOVE_CONSUMER)))
return NULL;
- device_links_write_lock();
-@@ -200,8 +201,10 @@ struct device_link *device_link_add(stru
+ if (flags & DL_FLAG_PM_RUNTIME && flags & DL_FLAG_RPM_ACTIVE) {
+@@ -209,8 +210,10 @@ struct device_link *device_link_add(stru
}
list_for_each_entry(link, &supplier->links.consumers, s_node)
@@ -99,7 +99,7 @@ Signed-off-by: Yangbo Lu
link = kzalloc(sizeof(*link), GFP_KERNEL);
if (!link)
-@@ -233,6 +236,7 @@ struct device_link *device_link_add(stru
+@@ -237,6 +240,7 @@ struct device_link *device_link_add(stru
link->consumer = consumer;
INIT_LIST_HEAD(&link->c_node);
link->flags = flags;
@@ -107,7 +107,7 @@ Signed-off-by: Yangbo Lu
/* Determine the initial link state. */
if (flags & DL_FLAG_STATELESS) {
-@@ -303,8 +307,10 @@ static void __device_link_free_srcu(stru
+@@ -311,8 +315,10 @@ static void __device_link_free_srcu(stru
device_link_free(container_of(rhead, struct device_link, rcu_head));
}
@@ -119,7 +119,7 @@ Signed-off-by: Yangbo Lu
dev_info(link->consumer, "Dropping the link to %s\n",
dev_name(link->supplier));
-@@ -316,8 +322,10 @@ static void __device_link_del(struct dev
+@@ -324,8 +330,10 @@ static void __device_link_del(struct dev
call_srcu(&device_links_srcu, &link->rcu_head, __device_link_free_srcu);
}
#else /* !CONFIG_SRCU */
@@ -131,7 +131,7 @@ Signed-off-by: Yangbo Lu
dev_info(link->consumer, "Dropping the link to %s\n",
dev_name(link->supplier));
-@@ -335,18 +343,50 @@ static void __device_link_del(struct dev
+@@ -343,18 +351,50 @@ static void __device_link_del(struct dev
* @link: Device link to delete.
*
* The caller must ensure proper synchronization of this function with runtime
@@ -184,7 +184,7 @@ Signed-off-by: Yangbo Lu
static void device_links_missing_supplier(struct device *dev)
{
struct device_link *link;
-@@ -454,8 +494,8 @@ static void __device_links_no_driver(str
+@@ -462,8 +502,8 @@ static void __device_links_no_driver(str
if (link->flags & DL_FLAG_STATELESS)
continue;
@@ -195,7 +195,7 @@ Signed-off-by: Yangbo Lu
else if (link->status != DL_STATE_SUPPLIER_UNBIND)
WRITE_ONCE(link->status, DL_STATE_AVAILABLE);
}
-@@ -490,8 +530,18 @@ void device_links_driver_cleanup(struct
+@@ -498,8 +538,18 @@ void device_links_driver_cleanup(struct
if (link->flags & DL_FLAG_STATELESS)
continue;
@@ -215,7 +215,7 @@ Signed-off-by: Yangbo Lu
WRITE_ONCE(link->status, DL_STATE_DORMANT);
}
-@@ -608,13 +658,13 @@ static void device_links_purge(struct de
+@@ -616,13 +666,13 @@ static void device_links_purge(struct de
list_for_each_entry_safe_reverse(link, ln, &dev->links.suppliers, c_node) {
WARN_ON(link->status == DL_STATE_ACTIVE);
@@ -231,7 +231,7 @@ Signed-off-by: Yangbo Lu
}
device_links_write_unlock();
-@@ -1036,6 +1086,34 @@ static ssize_t online_store(struct devic
+@@ -1044,6 +1094,34 @@ static ssize_t online_store(struct devic
}
static DEVICE_ATTR_RW(online);
@@ -266,7 +266,7 @@ Signed-off-by: Yangbo Lu
int device_add_groups(struct device *dev, const struct attribute_group **groups)
{
return sysfs_create_groups(&dev->kobj, groups);
-@@ -1207,8 +1285,20 @@ static int device_add_attrs(struct devic
+@@ -1215,8 +1293,20 @@ static int device_add_attrs(struct devic
goto err_remove_dev_groups;
}
@@ -287,7 +287,7 @@ Signed-off-by: Yangbo Lu
err_remove_dev_groups:
device_remove_groups(dev, dev->groups);
err_remove_type_groups:
-@@ -1226,6 +1316,8 @@ static void device_remove_attrs(struct d
+@@ -1234,6 +1324,8 @@ static void device_remove_attrs(struct d
struct class *class = dev->class;
const struct device_type *type = dev->type;
@@ -462,7 +462,7 @@ Signed-off-by: Yangbo Lu
extern int __must_check bus_create_file(struct bus_type *,
struct bus_attribute *);
-@@ -750,14 +752,16 @@ enum device_link_state {
+@@ -751,14 +753,16 @@ enum device_link_state {
* Device link flags.
*
* STATELESS: The core won't track the presence of supplier/consumer drivers.
@@ -484,7 +484,7 @@ Signed-off-by: Yangbo Lu
/**
* struct device_link - Device link representation.
-@@ -768,6 +772,7 @@ enum device_link_state {
+@@ -769,6 +773,7 @@ enum device_link_state {
* @status: The state of the link (with respect to the presence of drivers).
* @flags: Link flags.
* @rpm_active: Whether or not the consumer device is runtime-PM-active.
@@ -492,7 +492,7 @@ Signed-off-by: Yangbo Lu
* @rcu_head: An RCU head to use for deferred execution of SRCU callbacks.
*/
struct device_link {
-@@ -778,6 +783,7 @@ struct device_link {
+@@ -779,6 +784,7 @@ struct device_link {
enum device_link_state status;
u32 flags;
bool rpm_active;
@@ -500,7 +500,7 @@ Signed-off-by: Yangbo Lu
#ifdef CONFIG_SRCU
struct rcu_head rcu_head;
#endif
-@@ -850,6 +856,8 @@ struct dev_links_info {
+@@ -851,6 +857,8 @@ struct dev_links_info {
* @coherent_dma_mask: Like dma_mask, but for alloc_coherent mapping as not all
* hardware supports 64-bit addresses for consistent allocations
* such descriptors.
@@ -509,7 +509,7 @@ Signed-off-by: Yangbo Lu
* @dma_pfn_offset: offset of DMA memory range relatively of RAM
* @dma_parms: A low level driver may set these to teach IOMMU code about
* segment limitations.
-@@ -929,6 +937,7 @@ struct device {
+@@ -930,6 +938,7 @@ struct device {
not all hardware supports
64 bit addresses for consistent
allocations such descriptors. */
@@ -517,7 +517,7 @@ Signed-off-by: Yangbo Lu
unsigned long dma_pfn_offset;
struct device_dma_parameters *dma_parms;
-@@ -1267,6 +1276,7 @@ extern const char *dev_driver_string(con
+@@ -1268,6 +1277,7 @@ extern const char *dev_driver_string(con
struct device_link *device_link_add(struct device *consumer,
struct device *supplier, u32 flags);
void device_link_del(struct device_link *link);
@@ -580,7 +580,7 @@ Signed-off-by: Yangbo Lu
void __kfree_skb(struct sk_buff *skb);
extern struct kmem_cache *skbuff_head_cache;
-@@ -3313,6 +3314,7 @@ static inline void skb_free_datagram_loc
+@@ -3315,6 +3316,7 @@ static inline void skb_free_datagram_loc
}
int skb_kill_datagram(struct sock *sk, struct sk_buff *skb, unsigned int flags);
int skb_copy_bits(const struct sk_buff *skb, int offset, void *to, int len);
diff --git a/target/linux/layerscape/patches-4.14/811-clock-support-layerscape.patch b/target/linux/layerscape/patches-4.14/811-clock-support-layerscape.patch
index 331c77c80a..09a33572fe 100644
--- a/target/linux/layerscape/patches-4.14/811-clock-support-layerscape.patch
+++ b/target/linux/layerscape/patches-4.14/811-clock-support-layerscape.patch
@@ -75,7 +75,7 @@ Signed-off-by: Yogesh Gaur
snprintf(pll->div[i].name, sizeof(pll->div[i].name),
"cg-pll%d-div%d", idx, i + 1);
-@@ -1417,6 +1435,7 @@ CLK_OF_DECLARE(qoriq_clockgen_ls1043a, "
+@@ -1418,6 +1436,7 @@ CLK_OF_DECLARE(qoriq_clockgen_ls1043a, "
CLK_OF_DECLARE(qoriq_clockgen_ls1046a, "fsl,ls1046a-clockgen", clockgen_init);
CLK_OF_DECLARE(qoriq_clockgen_ls1088a, "fsl,ls1088a-clockgen", clockgen_init);
CLK_OF_DECLARE(qoriq_clockgen_ls2080a, "fsl,ls2080a-clockgen", clockgen_init);
diff --git a/target/linux/layerscape/patches-4.14/812-flexspi-support-layerscape.patch b/target/linux/layerscape/patches-4.14/812-flexspi-support-layerscape.patch
index 3ecec1756e..fa1cdf075a 100644
--- a/target/linux/layerscape/patches-4.14/812-flexspi-support-layerscape.patch
+++ b/target/linux/layerscape/patches-4.14/812-flexspi-support-layerscape.patch
@@ -1534,7 +1534,7 @@ Signed-off-by: Yogesh Gaur
/* PMC */
{ "pm25lv512", INFO(0, 0, 32 * 1024, 2, SECT_4K_PMC) },
{ "pm25lv010", INFO(0, 0, 32 * 1024, 4, SECT_4K_PMC) },
-@@ -2431,6 +2438,7 @@ static int spi_nor_init_params(struct sp
+@@ -2435,6 +2442,7 @@ static int spi_nor_init_params(struct sp
params->quad_enable = macronix_quad_enable;
break;
@@ -1542,7 +1542,7 @@ Signed-off-by: Yogesh Gaur
case SNOR_MFR_MICRON:
break;
-@@ -2749,7 +2757,8 @@ int spi_nor_scan(struct spi_nor *nor, co
+@@ -2753,7 +2761,8 @@ int spi_nor_scan(struct spi_nor *nor, co
mtd->_read = spi_nor_read;
/* NOR protection support for STmicro/Micron chips and similar */
diff --git a/target/linux/layerscape/patches-4.14/820-sec-support-layerscape.patch b/target/linux/layerscape/patches-4.14/820-sec-support-layerscape.patch
index 9632b32d56..63f6540be0 100644
--- a/target/linux/layerscape/patches-4.14/820-sec-support-layerscape.patch
+++ b/target/linux/layerscape/patches-4.14/820-sec-support-layerscape.patch
@@ -11852,7 +11852,7 @@ Signed-off-by: Zhao Qiang
dev = caam_jr_alloc();
if (IS_ERR(dev)) {
-@@ -361,10 +342,3 @@ free_caam_alloc:
+@@ -364,10 +345,3 @@ free_caam_alloc:
caam_jr_free(dev);
return err;
}
diff --git a/target/linux/pistachio/patches-4.14/401-mtd-nor-support-mtd-name-from-device-tree.patch b/target/linux/pistachio/patches-4.14/401-mtd-nor-support-mtd-name-from-device-tree.patch
index d5f9627fac..f35b3901e0 100644
--- a/target/linux/pistachio/patches-4.14/401-mtd-nor-support-mtd-name-from-device-tree.patch
+++ b/target/linux/pistachio/patches-4.14/401-mtd-nor-support-mtd-name-from-device-tree.patch
@@ -10,7 +10,7 @@ Signed-off-by: Abhimanyu Vishwakarma
--- a/drivers/mtd/spi-nor/spi-nor.c
+++ b/drivers/mtd/spi-nor/spi-nor.c
-@@ -2663,6 +2663,7 @@ int spi_nor_scan(struct spi_nor *nor, co
+@@ -2667,6 +2667,7 @@ int spi_nor_scan(struct spi_nor *nor, co
struct device *dev = nor->dev;
struct mtd_info *mtd = &nor->mtd;
struct device_node *np = spi_nor_get_flash_node(nor);
@@ -18,7 +18,7 @@ Signed-off-by: Abhimanyu Vishwakarma
int ret;
int i;
-@@ -2738,7 +2739,12 @@ int spi_nor_scan(struct spi_nor *nor, co
+@@ -2742,7 +2743,12 @@ int spi_nor_scan(struct spi_nor *nor, co
spi_nor_wait_till_ready(nor);
}
diff --git a/target/linux/ramips/patches-4.14/0053-mtd-spi-nor-add-w25q256-3b-mode-switch.patch b/target/linux/ramips/patches-4.14/0053-mtd-spi-nor-add-w25q256-3b-mode-switch.patch
index 8631f5d720..dee65a8394 100644
--- a/target/linux/ramips/patches-4.14/0053-mtd-spi-nor-add-w25q256-3b-mode-switch.patch
+++ b/target/linux/ramips/patches-4.14/0053-mtd-spi-nor-add-w25q256-3b-mode-switch.patch
@@ -125,7 +125,7 @@ Signed-off-by: Felix Fietkau
{ "w25m512jv", INFO(0xef7119, 0, 64 * 1024, 1024,
SECT_4K | SPI_NOR_QUAD_READ | SPI_NOR_DUAL_READ) },
-@@ -1237,6 +1289,9 @@ static int spi_nor_read(struct mtd_info
+@@ -1241,6 +1293,9 @@ static int spi_nor_read(struct mtd_info
if (ret)
return ret;
@@ -135,7 +135,7 @@ Signed-off-by: Felix Fietkau
while (len) {
loff_t addr = from;
-@@ -1261,6 +1316,18 @@ static int spi_nor_read(struct mtd_info
+@@ -1265,6 +1320,18 @@ static int spi_nor_read(struct mtd_info
ret = 0;
read_err:
@@ -154,7 +154,7 @@ Signed-off-by: Felix Fietkau
spi_nor_unlock_and_unprep(nor, SPI_NOR_OPS_READ);
return ret;
}
-@@ -1362,6 +1429,10 @@ static int spi_nor_write(struct mtd_info
+@@ -1366,6 +1433,10 @@ static int spi_nor_write(struct mtd_info
if (ret)
return ret;
@@ -165,7 +165,7 @@ Signed-off-by: Felix Fietkau
for (i = 0; i < len; ) {
ssize_t written;
loff_t addr = to + i;
-@@ -1402,6 +1473,7 @@ static int spi_nor_write(struct mtd_info
+@@ -1406,6 +1477,7 @@ static int spi_nor_write(struct mtd_info
}
write_err:
@@ -173,7 +173,7 @@ Signed-off-by: Felix Fietkau
spi_nor_unlock_and_unprep(nor, SPI_NOR_OPS_WRITE);
return ret;
}
-@@ -2818,8 +2890,10 @@ int spi_nor_scan(struct spi_nor *nor, co
+@@ -2822,8 +2894,10 @@ int spi_nor_scan(struct spi_nor *nor, co
} else if (mtd->size > 0x1000000) {
/* enable 4-byte addressing if the device exceeds 16MiB */
nor->addr_width = 4;
diff --git a/target/linux/ramips/patches-4.14/0054-mtd-spi-nor-w25q256-respect-default-mode.patch b/target/linux/ramips/patches-4.14/0054-mtd-spi-nor-w25q256-respect-default-mode.patch
index b6266a8ef3..9ea2a11354 100644
--- a/target/linux/ramips/patches-4.14/0054-mtd-spi-nor-w25q256-respect-default-mode.patch
+++ b/target/linux/ramips/patches-4.14/0054-mtd-spi-nor-w25q256-respect-default-mode.patch
@@ -33,7 +33,7 @@
/*
* Write status register 1 byte
* Returns negative if error occurred.
-@@ -2890,9 +2899,16 @@ int spi_nor_scan(struct spi_nor *nor, co
+@@ -2894,9 +2903,16 @@ int spi_nor_scan(struct spi_nor *nor, co
} else if (mtd->size > 0x1000000) {
/* enable 4-byte addressing if the device exceeds 16MiB */
nor->addr_width = 4;
diff --git a/target/linux/ramips/patches-4.14/304-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch b/target/linux/ramips/patches-4.14/304-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch
index c8febaf73f..831350546d 100644
--- a/target/linux/ramips/patches-4.14/304-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch
+++ b/target/linux/ramips/patches-4.14/304-spi-nor-enable-4B-opcodes-for-mx25l25635f.patch
@@ -18,7 +18,7 @@ For reference see:
{ "mx25u25635f", INFO(0xc22539, 0, 64 * 1024, 512, SECT_4K | SPI_NOR_4B_OPCODES) },
{ "mx25l25655e", INFO(0xc22619, 0, 64 * 1024, 512, 0) },
{ "mx66l51235l", INFO(0xc2201a, 0, 64 * 1024, 1024, SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) },
-@@ -1267,11 +1268,12 @@ static const struct flash_info spi_nor_i
+@@ -1271,11 +1272,12 @@ static const struct flash_info spi_nor_i
{ },
};
@@ -33,7 +33,7 @@ For reference see:
tmp = nor->read_reg(nor, SPINOR_OP_RDID, id, SPI_NOR_MAX_ID_LEN);
if (tmp < 0) {
-@@ -1282,10 +1284,16 @@ static const struct flash_info *spi_nor_
+@@ -1286,10 +1288,16 @@ static const struct flash_info *spi_nor_
for (tmp = 0; tmp < ARRAY_SIZE(spi_nor_ids) - 1; tmp++) {
info = &spi_nor_ids[tmp];
if (info->id_len) {
@@ -52,7 +52,7 @@ For reference see:
dev_err(nor->dev, "unrecognized JEDEC id bytes: %02x, %02x, %02x\n",
id[0], id[1], id[2]);
return ERR_PTR(-ENODEV);
-@@ -2765,7 +2773,7 @@ int spi_nor_scan(struct spi_nor *nor, co
+@@ -2769,7 +2777,7 @@ int spi_nor_scan(struct spi_nor *nor, co
info = spi_nor_match_id(name);
/* Try to auto-detect if chip name wasn't specified or not found */
if (!info)
@@ -61,7 +61,7 @@ For reference see:
if (IS_ERR_OR_NULL(info))
return -ENOENT;
-@@ -2776,7 +2784,7 @@ int spi_nor_scan(struct spi_nor *nor, co
+@@ -2780,7 +2788,7 @@ int spi_nor_scan(struct spi_nor *nor, co
if (name && info->id_len) {
const struct flash_info *jinfo;
diff --git a/target/linux/sunxi/patches-4.14/025-arm64-dts-allwinner-A64-Restore-EMAC-changes.patch b/target/linux/sunxi/patches-4.14/025-arm64-dts-allwinner-A64-Restore-EMAC-changes.patch
index af4a921583..23c3ec27ed 100644
--- a/target/linux/sunxi/patches-4.14/025-arm64-dts-allwinner-A64-Restore-EMAC-changes.patch
+++ b/target/linux/sunxi/patches-4.14/025-arm64-dts-allwinner-A64-Restore-EMAC-changes.patch
@@ -155,7 +155,7 @@ Signed-off-by: Maxime Ripard
pinctrl-0 = <&mmc2_pins>;
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
-@@ -449,6 +449,26 @@
+@@ -450,6 +450,26 @@
#size-cells = <0>;
};
diff --git a/target/linux/sunxi/patches-4.14/026-arm64-dts-allwinner-add-snps-dwmac-mdio-compatible-t.patch b/target/linux/sunxi/patches-4.14/026-arm64-dts-allwinner-add-snps-dwmac-mdio-compatible-t.patch
index 40efc9f3e8..ee4731d0dc 100644
--- a/target/linux/sunxi/patches-4.14/026-arm64-dts-allwinner-add-snps-dwmac-mdio-compatible-t.patch
+++ b/target/linux/sunxi/patches-4.14/026-arm64-dts-allwinner-add-snps-dwmac-mdio-compatible-t.patch
@@ -18,7 +18,7 @@ Signed-off-by: Maxime Ripard
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
-@@ -464,6 +464,7 @@
+@@ -465,6 +465,7 @@
#size-cells = <0>;
mdio: mdio {
diff --git a/target/linux/sunxi/patches-4.14/040-arm64-dts-allwinner-a64-Add-watchdog.patch b/target/linux/sunxi/patches-4.14/040-arm64-dts-allwinner-a64-Add-watchdog.patch
index 0503b88823..90c72f9508 100644
--- a/target/linux/sunxi/patches-4.14/040-arm64-dts-allwinner-a64-Add-watchdog.patch
+++ b/target/linux/sunxi/patches-4.14/040-arm64-dts-allwinner-a64-Add-watchdog.patch
@@ -32,7 +32,7 @@ Signed-off-by: Maxime Ripard
Example:
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
-@@ -537,5 +537,12 @@
+@@ -538,5 +538,12 @@
#address-cells = <1>;
#size-cells = <0>;
};
diff --git a/target/linux/sunxi/patches-4.14/080-arm64-allwinner-a64-add-SPI-nodes.patch b/target/linux/sunxi/patches-4.14/080-arm64-allwinner-a64-add-SPI-nodes.patch
index 5374547e92..1e40f99d04 100644
--- a/target/linux/sunxi/patches-4.14/080-arm64-allwinner-a64-add-SPI-nodes.patch
+++ b/target/linux/sunxi/patches-4.14/080-arm64-allwinner-a64-add-SPI-nodes.patch
@@ -21,7 +21,7 @@ Signed-off-by: Maxime Ripard
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
-@@ -325,6 +325,16 @@
+@@ -326,6 +326,16 @@
drive-strength = <40>;
};
@@ -38,7 +38,7 @@ Signed-off-by: Maxime Ripard
uart0_pins_a: uart0@0 {
pins = "PB8", "PB9";
function = "uart0";
-@@ -470,6 +480,37 @@
+@@ -471,6 +481,37 @@
};
};
From 0fa8e4728d79247d6c5d8a9d13c51dff36b34a56 Mon Sep 17 00:00:00 2001
From: AmadeusGhost <42570690+AmadeusGhost@users.noreply.github.com>
Date: Thu, 6 Feb 2020 12:18:58 +0800
Subject: [PATCH 2/5] uboot: update to latest
---
package/boot/apex/Makefile | 62 -
.../boot/apex/patches/001-compile_fix.patch | 20 -
.../100-openwrt_nslu2_armeb_config.patch | 23 -
.../120-openwrt_nslu2_16mb_armeb_config.patch | 23 -
.../140-openwrt_fsg3_armeb_config.patch | 23 -
.../apex/patches/150-limit_ram_to_64mb.patch | 22 -
.../160-openwrt_nas100d_armeb_config.patch | 20 -
.../boot/arm-trusted-firmware-mvebu/Makefile | 112 ++
.../boot/arm-trusted-firmware-sunxi/Makefile | 12 +-
package/boot/at91bootstrap/Makefile | 51 +-
package/boot/fconfig/Makefile | 7 -
package/boot/grub2/{common.mk => Makefile} | 40 +-
package/boot/grub2/grub2-efi/Makefile | 23 -
package/boot/grub2/grub2/Makefile | 33 -
...ix-packed-not-aligned-error-on-GCC-8.patch | 71 -
...-verifiers-Blocklist-fallout-cleanup.patch | 31 +
.../grub2/patches/100-grub_setup_root.patch | 12 +-
...-disable-gettext-check-macro-version.patch | 13 -
.../grub2/patches/200-fix-gets-removal.patch | 16 -
.../grub2/patches/300-CVE-2015-8370.patch | 4 +-
.../grub2/patches/400-R_X86_64_PLT32.patch | 75 -
package/boot/kexec-tools/Makefile | 3 +-
package/boot/kexec-tools/files/kdump.init | 2 +-
package/boot/rbcfg/Makefile | 2 +-
package/boot/tfa-layerscape/Makefile | 161 ++
.../patches/001-fiptool-hostbuild-fixes.patch | 71 +
...ix-a-makefile-bug-that-will-use-defa.patch | 30 +
...ix-create_pbl-and-byte_swap-host-bui.patch | 60 +
.../patches/023-musl-compat.patch | 13 +
package/boot/uboot-at91/Makefile | 51 +-
.../patches/001-fix-Wformat-security.patch | 13 +
package/boot/uboot-envtools/Makefile | 8 +-
package/boot/uboot-envtools/files/ar71xx | 5 +
package/boot/uboot-envtools/files/ath79 | 31 +-
package/boot/uboot-envtools/files/imx6 | 4 +-
package/boot/uboot-envtools/files/mvebu | 3 +
package/boot/uboot-envtools/files/ramips | 18 +-
.../uboot-envtools/files/uboot-envtools.sh | 2 +-
.../uboot-envtools/patches/001-compile.patch | 6 +-
package/boot/uboot-fritz4040/Makefile | 39 +-
package/boot/uboot-imx6/Makefile | 11 +-
...s-Make-the-boot-process-more-generic.patch | 123 ++
.../patches/100-wandboard-enable-fit.patch | 6 +-
.../patches/110-mx6cuboxi-mmc-fallback.patch | 10 +-
package/boot/uboot-kirkwood/Makefile | 4 +-
.../patches/007-nsa310-uboot-generic.patch | 15 +-
.../patches/008-nsa325-uboot-generic.patch | 26 +-
.../patches/010-pogoplug_v4.patch | 23 +-
.../uboot-kirkwood/patches/110-dockstar.patch | 10 +-
.../uboot-kirkwood/patches/120-iconnect.patch | 7 +-
.../uboot-kirkwood/patches/130-ib62x0.patch | 8 +-
.../patches/140-pogoplug_e02.patch | 8 +-
.../patches/150-goflexhome.patch | 8 +-
.../patches/200-openwrt-config.patch | 54 +-
.../boot/uboot-layerscape-armv8_32b/Makefile | 84 -
package/boot/uboot-layerscape/Makefile | 30 +-
.../files/ls1012ardb-uEnv.txt | 2 +-
.../files/ls1043ardb-uEnv.txt | 2 +-
.../files/ls1046ardb-uEnv.txt | 2 +-
.../files/ls1088ardb-uEnv.txt | 2 +-
.../files/ls2088ardb-uEnv.txt | 2 +-
...I_NOR_BOOTCOMMAND-of-ls1046ardb-for-.patch | 28 +
...I_NOR_BOOTCOMMAND-of-ls1012afrwy-for.patch | 28 +
...I_NOR_BOOTCOMMAND-of-ls1012ardb-for-.patch | 28 +
package/boot/uboot-mvebu/Makefile | 17 +-
...add_support_for_macronix_mx25u12835f.patch | 10 +
...mada-37xx.h_increase_max_gunzip_size.patch | 13 +
package/boot/uboot-mxs/Makefile | 4 +-
.../patches/001-add-i2se-duckbill.patch | 52 +-
package/boot/uboot-omap/Makefile | 29 +-
package/boot/uboot-omap/files/boot.scr.txt | 9 +
.../boot/uboot-omap/files/uEnv-default.txt | 8 -
.../patches/101-disable-thumb-omap3.patch | 14 -
.../uboot-omap/patches/102-minify-spl.patch | 44 -
.../patches/103-disable-fat-write-spl.patch | 27 -
.../104-omap3-overo-enable-thumb.patch | 18 -
...6550-bugfix-ns16550-fifo-not-enabled.patch | 309 ---
.../boot/uboot-oxnas/src/tools/mkox820crc.c | 3 +
package/boot/uboot-sunxi/Makefile | 99 +-
.../003-add-theobroma-a31-pangolin.patch | 12 +-
.../patches/062-A20-improve-gmac-upload.patch | 8 +-
.../063-fix-lime2-revK-add-micrel-PHY.patch | 44 +
.../100-sun6i-alternate-on-UART2.patch | 2 +-
.../101-sun6i-support-console-on-UART2.patch | 4 +-
...2-sunxi-make_CONS_INDEX-configurable.patch | 2 +-
...-environment-for-dtc-binary-location.patch | 2 +-
.../patches/210-sunxi-deactivate-binman.patch | 4 +-
.../patches/221-compatible-old-dtc.patch | 2 +-
.../230-disable-axp209-on-a13-olinuxino.diff | 19 +
...ge-Pi-Zero-Plus-Fix-SdCard-detection.patch | 28 +
.../250-Sinovoip-BPI-M2-Ultra-defconfig.patch | 25 +
...Sync-OTG-and-HCI-nodes-from-Linux-DT.patch | 63 -
...0-sunxi-Add-support-for-Orange-Pi-R1.patch | 179 --
.../400-ARM-dts-orange-pi-zero-plus.patch | 222 ---
package/boot/uboot-xburst/Makefile | 88 -
.../0001-qi_lb60-add-nand-spl-support.patch | 894 ---------
...qi_lb60-add-software-usbboot-support.patch | 916 ---------
.../patches/0003-add-mmc-support.patch | 1664 -----------------
...dd-more-boot-options-F1-F2-F3-F4-M-S.patch | 200 --
.../0005-add-nanonote-lcd-support.patch | 847 ---------
.../patches/0006-enable-silent-console.patch | 60 -
package/boot/uboot-zynq/Makefile | 4 +-
...q-dts-add-spi-flash-node-to-zedboard.patch | 38 -
...nq-add-support-for-the-zybo-z7-board.patch | 499 -----
...ad-mac-address-from-SPI-flash-memory.patch | 50 +-
.../patches/210-link-libcrypto-static.patch | 6 +-
package/boot/yamonenv/Makefile | 41 -
.../patches/001-yamonenv_mtd_partition.patch | 11 -
package/kernel/linux/modules/hwmon.mk | 15 +
...r-add-support-for-Gigadevice-GD25D05.patch | 29 +
...r-add-support-for-Gigadevice-GD25D05.patch | 29 +
111 files changed, 1416 insertions(+), 6983 deletions(-)
delete mode 100644 package/boot/apex/Makefile
delete mode 100644 package/boot/apex/patches/001-compile_fix.patch
delete mode 100644 package/boot/apex/patches/100-openwrt_nslu2_armeb_config.patch
delete mode 100644 package/boot/apex/patches/120-openwrt_nslu2_16mb_armeb_config.patch
delete mode 100644 package/boot/apex/patches/140-openwrt_fsg3_armeb_config.patch
delete mode 100644 package/boot/apex/patches/150-limit_ram_to_64mb.patch
delete mode 100644 package/boot/apex/patches/160-openwrt_nas100d_armeb_config.patch
create mode 100644 package/boot/arm-trusted-firmware-mvebu/Makefile
rename package/boot/grub2/{common.mk => Makefile} (63%)
delete mode 100644 package/boot/grub2/grub2-efi/Makefile
delete mode 100644 package/boot/grub2/grub2/Makefile
delete mode 100644 package/boot/grub2/patches/0008-Fix-packed-not-aligned-error-on-GCC-8.patch
create mode 100644 package/boot/grub2/patches/001-verifiers-Blocklist-fallout-cleanup.patch
delete mode 100644 package/boot/grub2/patches/101-disable-gettext-check-macro-version.patch
delete mode 100644 package/boot/grub2/patches/200-fix-gets-removal.patch
delete mode 100644 package/boot/grub2/patches/400-R_X86_64_PLT32.patch
create mode 100644 package/boot/tfa-layerscape/Makefile
create mode 100644 package/boot/tfa-layerscape/patches/001-fiptool-hostbuild-fixes.patch
create mode 100644 package/boot/tfa-layerscape/patches/002-plat-nxp-tools-fix-a-makefile-bug-that-will-use-defa.patch
create mode 100644 package/boot/tfa-layerscape/patches/003-plat-nxp-tools-fix-create_pbl-and-byte_swap-host-bui.patch
create mode 100644 package/boot/uboot-ar71xx/patches/023-musl-compat.patch
create mode 100644 package/boot/uboot-at91/patches/001-fix-Wformat-security.patch
create mode 100644 package/boot/uboot-imx6/patches/0001-imx6-apalis-Make-the-boot-process-more-generic.patch
delete mode 100644 package/boot/uboot-layerscape-armv8_32b/Makefile
create mode 100644 package/boot/uboot-layerscape/patches/0001-modify-macro-QSPI_NOR_BOOTCOMMAND-of-ls1046ardb-for-.patch
create mode 100644 package/boot/uboot-layerscape/patches/0002-modify-macro-QSPI_NOR_BOOTCOMMAND-of-ls1012afrwy-for.patch
create mode 100644 package/boot/uboot-layerscape/patches/0003-modify-macro-QSPI_NOR_BOOTCOMMAND-of-ls1012ardb-for-.patch
create mode 100644 package/boot/uboot-mvebu/patches/100-add_support_for_macronix_mx25u12835f.patch
create mode 100644 package/boot/uboot-mvebu/patches/120-mvebu_armada-37xx.h_increase_max_gunzip_size.patch
create mode 100644 package/boot/uboot-omap/files/boot.scr.txt
delete mode 100644 package/boot/uboot-omap/files/uEnv-default.txt
delete mode 100644 package/boot/uboot-omap/patches/101-disable-thumb-omap3.patch
delete mode 100644 package/boot/uboot-omap/patches/102-minify-spl.patch
delete mode 100644 package/boot/uboot-omap/patches/103-disable-fat-write-spl.patch
delete mode 100644 package/boot/uboot-omap/patches/104-omap3-overo-enable-thumb.patch
delete mode 100644 package/boot/uboot-omap/patches/105-serial-ns16550-bugfix-ns16550-fifo-not-enabled.patch
create mode 100644 package/boot/uboot-sunxi/patches/063-fix-lime2-revK-add-micrel-PHY.patch
create mode 100644 package/boot/uboot-sunxi/patches/230-disable-axp209-on-a13-olinuxino.diff
create mode 100644 package/boot/uboot-sunxi/patches/240-sun50i-h5-Orange-Pi-Zero-Plus-Fix-SdCard-detection.patch
create mode 100644 package/boot/uboot-sunxi/patches/250-Sinovoip-BPI-M2-Ultra-defconfig.patch
delete mode 100644 package/boot/uboot-sunxi/patches/310-sunxi-h3-Sync-OTG-and-HCI-nodes-from-Linux-DT.patch
delete mode 100644 package/boot/uboot-sunxi/patches/320-sunxi-Add-support-for-Orange-Pi-R1.patch
delete mode 100644 package/boot/uboot-sunxi/patches/400-ARM-dts-orange-pi-zero-plus.patch
delete mode 100644 package/boot/uboot-xburst/Makefile
delete mode 100644 package/boot/uboot-xburst/patches/0001-qi_lb60-add-nand-spl-support.patch
delete mode 100644 package/boot/uboot-xburst/patches/0002-qi_lb60-add-software-usbboot-support.patch
delete mode 100644 package/boot/uboot-xburst/patches/0003-add-mmc-support.patch
delete mode 100644 package/boot/uboot-xburst/patches/0004-add-more-boot-options-F1-F2-F3-F4-M-S.patch
delete mode 100644 package/boot/uboot-xburst/patches/0005-add-nanonote-lcd-support.patch
delete mode 100644 package/boot/uboot-xburst/patches/0006-enable-silent-console.patch
delete mode 100644 package/boot/uboot-zynq/patches/020-v2018.09-arm-zynq-dts-add-spi-flash-node-to-zedboard.patch
delete mode 100644 package/boot/uboot-zynq/patches/025-v2018.09-arm-zynq-add-support-for-the-zybo-z7-board.patch
delete mode 100644 package/boot/yamonenv/Makefile
delete mode 100644 package/boot/yamonenv/patches/001-yamonenv_mtd_partition.patch
create mode 100644 target/linux/generic/pending-4.14/481-mtd-spi-nor-add-support-for-Gigadevice-GD25D05.patch
create mode 100644 target/linux/generic/pending-4.19/481-mtd-spi-nor-add-support-for-Gigadevice-GD25D05.patch
diff --git a/package/boot/apex/Makefile b/package/boot/apex/Makefile
deleted file mode 100644
index 64c2426802..0000000000
--- a/package/boot/apex/Makefile
+++ /dev/null
@@ -1,62 +0,0 @@
-#
-# Copyright (C) 2006-2011 OpenWrt.org
-#
-# This is free software, licensed under the GNU General Public License v2.
-# See /LICENSE for more information.
-#
-
-include $(TOPDIR)/rules.mk
-include $(INCLUDE_DIR)/kernel.mk
-
-PKG_NAME:=apex
-PKG_VERSION:=1.6.9
-PKG_RELEASE:=1
-
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=https://downloads.openwrt.org/sources/
-PKG_HASH:=1d2bc04c2c6bb3d2d6c1916b6dc559cda2b1ecb045d7801fd49af6af4234abeb
-PKG_TARGETS:=bin
-
-include $(INCLUDE_DIR)/package.mk
-
-export GCC_HONOUR_COPTS=s
-
-define Package/apex
- SECTION:=boot
- CATEGORY:=Boot Loaders
- DEPENDS:=@TARGET_ixp4xx
- DEFAULT:=y
- TITLE:=Boot loader for NSLU2, FSG3, NAS100D and others
-endef
-
-define build_apex
- $(MAKE) -C $(PKG_BUILD_DIR) \
- ARCH=arm \
- $(1)_config
- $(MAKE) -C $(PKG_BUILD_DIR) \
- $(TARGET_CONFIGURE_OPTS) \
- KBUILD_HAVE_NLS=no \
- ARCH=arm \
- clean all
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/apex.bin $(PKG_BUILD_DIR)/out/apex-$(2).bin
-endef
-
-define Build/Compile
- $(INSTALL_DIR) $(PKG_BUILD_DIR)/out
- $(call build_apex,slugos-nslu2-armeb,nslu2-armeb)
- $(call build_apex,slugos-nslu2-16mb-armeb,nslu2-16mb-armeb)
- $(call build_apex,slugos-fsg3-armeb,fsg3-armeb)
- $(call build_apex,slugos-nas100d-armeb,nas100d-armeb)
-endef
-
-define Package/apex/install
- $(INSTALL_DIR) $(STAGING_DIR)/apex
- $(CP) $(PKG_BUILD_DIR)/out/*.bin $(1)/
-endef
-
-define Build/InstallDev
- $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
- $(CP) $(PKG_BUILD_DIR)/out/*.bin $(STAGING_DIR_IMAGE)/
-endef
-
-$(eval $(call BuildPackage,apex))
diff --git a/package/boot/apex/patches/001-compile_fix.patch b/package/boot/apex/patches/001-compile_fix.patch
deleted file mode 100644
index 8a25de6570..0000000000
--- a/package/boot/apex/patches/001-compile_fix.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/Makefile
-+++ b/Makefile
-@@ -444,7 +444,7 @@ ifeq ($(config-targets),1)
- include $(srctree)/src/arch-$(SRCARCH)/Makefile
- export KBUILD_DEFCONFIG
-
--config %config: scripts_basic outputmakefile FORCE
-+%config: scripts_basic outputmakefile FORCE
- $(Q)mkdir -p include/linux include/config
- $(Q)$(MAKE) $(build)=scripts/kconfig $@
-
-@@ -1585,7 +1585,7 @@ endif
- $(Q)$(MAKE) $(build)=$(build-dir) $(target-dir)$(notdir $@)
-
- # Modules
--/ %/: prepare scripts FORCE
-+%/: prepare scripts FORCE
- $(cmd_crmodverdir)
- $(Q)$(MAKE) KBUILD_MODULES=$(if $(CONFIG_MODULES),1) \
- $(build)=$(build-dir)
diff --git a/package/boot/apex/patches/100-openwrt_nslu2_armeb_config.patch b/package/boot/apex/patches/100-openwrt_nslu2_armeb_config.patch
deleted file mode 100644
index d598ff3287..0000000000
--- a/package/boot/apex/patches/100-openwrt_nslu2_armeb_config.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/src/mach-ixp42x/slugos-nslu2-armeb_config
-+++ b/src/mach-ixp42x/slugos-nslu2-armeb_config
-@@ -19,7 +19,7 @@ CONFIG_EXPERIMENTAL=y
- #
- # General Setup
- #
--CONFIG_TARGET_DESCRIPTION="SlugOS NSLU2 (bigendian)"
-+CONFIG_TARGET_DESCRIPTION="OpenWrt NSLU2 (8MiB Flash)"
- CONFIG_CROSS_COMPILE=""
- CONFIG_AEABI=y
- # CONFIG_DRIVER_LONG_LONG_SIZE is not set
-@@ -163,9 +163,9 @@ CONFIG_ENV_REGION_KERNEL_ALT="fis://kern
- # Overrides
- #
- CONFIG_ENV_DEFAULT_CMDLINE_OVERRIDE=y
--CONFIG_ENV_DEFAULT_CMDLINE="root=/dev/mtdblock4 rootfstype=jffs2 console=ttyS0,115200 init=/linuxrc"
-+CONFIG_ENV_DEFAULT_CMDLINE="root=/dev/mtdblock4 rootfstype=squashfs,jffs2 console=ttyS0,115200 init=/etc/preinit noinitrd"
- CONFIG_ENV_DEFAULT_CMDLINE_ALT_P=y
--CONFIG_ENV_DEFAULT_CMDLINE_ALT="root=/dev/mtdblock4 rootfstype=jffs2 console=ttyS0,115200 init=/linuxrc"
-+CONFIG_ENV_DEFAULT_CMDLINE_ALT="root=/dev/mtdblock4 rootfstype=squashfs,jffs2 console=ttyS0,115200 init=/etc/preinit noinitrd"
- # CONFIG_ENV_DEFAULT_STARTUP_OVERRIDE is not set
- # CONFIG_ENV_DEFAULT_STARTUP_ALT_P is not set
- CONFIG_USES_NOR_BOOTFLASH=y
diff --git a/package/boot/apex/patches/120-openwrt_nslu2_16mb_armeb_config.patch b/package/boot/apex/patches/120-openwrt_nslu2_16mb_armeb_config.patch
deleted file mode 100644
index 5e7ecee27c..0000000000
--- a/package/boot/apex/patches/120-openwrt_nslu2_16mb_armeb_config.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/src/mach-ixp42x/slugos-nslu2-16mb-armeb_config
-+++ b/src/mach-ixp42x/slugos-nslu2-16mb-armeb_config
-@@ -19,7 +19,7 @@ CONFIG_EXPERIMENTAL=y
- #
- # General Setup
- #
--CONFIG_TARGET_DESCRIPTION="SlugOS NSLU2/BE (16MiB Flash)"
-+CONFIG_TARGET_DESCRIPTION="OpenWrt NSLU2 (16MiB Flash)"
- CONFIG_CROSS_COMPILE=""
- CONFIG_AEABI=y
- # CONFIG_DRIVER_LONG_LONG_SIZE is not set
-@@ -163,9 +163,9 @@ CONFIG_ENV_REGION_KERNEL_ALT="fis://kern
- # Overrides
- #
- CONFIG_ENV_DEFAULT_CMDLINE_OVERRIDE=y
--CONFIG_ENV_DEFAULT_CMDLINE="root=/dev/mtdblock4 rootfstype=jffs2 console=ttyS0,115200 init=/linuxrc"
-+CONFIG_ENV_DEFAULT_CMDLINE="root=/dev/mtdblock4 rootfstype=squashfs,jffs2 console=ttyS0,115200 init=/etc/preinit noinitrd"
- CONFIG_ENV_DEFAULT_CMDLINE_ALT_P=y
--CONFIG_ENV_DEFAULT_CMDLINE_ALT="root=/dev/mtdblock4 rootfstype=jffs2 console=ttyS0,115200 init=/linuxrc"
-+CONFIG_ENV_DEFAULT_CMDLINE_ALT="root=/dev/mtdblock4 rootfstype=squashfs,jffs2 console=ttyS0,115200 init=/etc/preinit noinitrd"
- # CONFIG_ENV_DEFAULT_STARTUP_OVERRIDE is not set
- # CONFIG_ENV_DEFAULT_STARTUP_ALT_P is not set
- CONFIG_USES_NOR_BOOTFLASH=y
diff --git a/package/boot/apex/patches/140-openwrt_fsg3_armeb_config.patch b/package/boot/apex/patches/140-openwrt_fsg3_armeb_config.patch
deleted file mode 100644
index fc0e8b9f3d..0000000000
--- a/package/boot/apex/patches/140-openwrt_fsg3_armeb_config.patch
+++ /dev/null
@@ -1,23 +0,0 @@
---- a/src/mach-ixp42x/slugos-fsg3-armeb_config
-+++ b/src/mach-ixp42x/slugos-fsg3-armeb_config
-@@ -17,7 +17,7 @@ CONFIG_EXPERIMENTAL=y
- #
- # General Setup
- #
--CONFIG_TARGET_DESCRIPTION="SlugOS FSG3/BE"
-+CONFIG_TARGET_DESCRIPTION="OpenWrt FSG3"
- CONFIG_CROSS_COMPILE=""
- CONFIG_AEABI=y
- CONFIG_CC_OPTIMIZE_FOR_SIZE=y
-@@ -148,9 +148,9 @@ CONFIG_ENV_REGION_KERNEL_ALT="fis://kern
- # Overrides
- #
- CONFIG_ENV_DEFAULT_CMDLINE_OVERRIDE=y
--CONFIG_ENV_DEFAULT_CMDLINE="root=/dev/sda1 rootdelay=10 console=ttyS0,115200"
-+CONFIG_ENV_DEFAULT_CMDLINE="root=/dev/sda1 rootdelay=10 console=ttyS0,115200 init=/etc/preinit noinitrd"
- CONFIG_ENV_DEFAULT_CMDLINE_ALT_P=y
--CONFIG_ENV_DEFAULT_CMDLINE_ALT="root=/dev/sda2 rootdelay=10 console=ttyS0,115200"
-+CONFIG_ENV_DEFAULT_CMDLINE_ALT="root=/dev/mtdblock2 rootfstype=squashfs console=ttyS0,115200 init=/etc/preinit noinitrd"
- # CONFIG_ENV_DEFAULT_STARTUP_OVERRIDE is not set
- # CONFIG_ENV_DEFAULT_STARTUP_ALT_P is not set
- CONFIG_USES_NOR_BOOTFLASH=y
diff --git a/package/boot/apex/patches/150-limit_ram_to_64mb.patch b/package/boot/apex/patches/150-limit_ram_to_64mb.patch
deleted file mode 100644
index 3e178166e1..0000000000
--- a/package/boot/apex/patches/150-limit_ram_to_64mb.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/src/mach-ixp42x/slugos-nslu2-armeb_config
-+++ b/src/mach-ixp42x/slugos-nslu2-armeb_config
-@@ -137,7 +137,7 @@ CONFIG_AUTOBOOT_DELAY=10
- CONFIG_ENV_STARTUP_KERNEL_COPY=y
- # CONFIG_ENV_REGION_KERNEL_SWAP is not set
- CONFIG_ENV_STARTUP_PREFIX_P=y
--CONFIG_ENV_STARTUP_PREFIX="sdram-init; memscan -u 0+256m"
-+CONFIG_ENV_STARTUP_PREFIX="sdram-init; memscan -u 0+64m"
-
- #
- # Regions
---- a/src/mach-ixp42x/slugos-nslu2-16mb-armeb_config
-+++ b/src/mach-ixp42x/slugos-nslu2-16mb-armeb_config
-@@ -137,7 +137,7 @@ CONFIG_AUTOBOOT_DELAY=10
- CONFIG_ENV_STARTUP_KERNEL_COPY=y
- # CONFIG_ENV_REGION_KERNEL_SWAP is not set
- CONFIG_ENV_STARTUP_PREFIX_P=y
--CONFIG_ENV_STARTUP_PREFIX="sdram-init; memscan -u 0+256m"
-+CONFIG_ENV_STARTUP_PREFIX="sdram-init; memscan -u 0+64m"
-
- #
- # Regions
diff --git a/package/boot/apex/patches/160-openwrt_nas100d_armeb_config.patch b/package/boot/apex/patches/160-openwrt_nas100d_armeb_config.patch
deleted file mode 100644
index e190964857..0000000000
--- a/package/boot/apex/patches/160-openwrt_nas100d_armeb_config.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/src/mach-ixp42x/slugos-nas100d-armeb_config
-+++ b/src/mach-ixp42x/slugos-nas100d-armeb_config
-@@ -19,7 +19,7 @@ CONFIG_EXPERIMENTAL=y
- #
- # General Setup
- #
--CONFIG_TARGET_DESCRIPTION="SlugOS NAS100D/BE"
-+CONFIG_TARGET_DESCRIPTION="OpenWrt NAS100D"
- CONFIG_CROSS_COMPILE=""
- CONFIG_AEABI=y
- # CONFIG_DRIVER_LONG_LONG_SIZE is not set
-@@ -158,7 +158,7 @@ CONFIG_ENV_REGION_KERNEL="fis://kernel"
- # Overrides
- #
- CONFIG_ENV_DEFAULT_CMDLINE_OVERRIDE=y
--CONFIG_ENV_DEFAULT_CMDLINE="root=/dev/mtdblock2 rootfstype=jffs2 console=ttyS0,115200 init=/linuxrc"
-+CONFIG_ENV_DEFAULT_CMDLINE="root=/dev/mtdblock2 rootfstype=squashfs,jffs2 console=ttyS0,115200 init=/etc/preinit noinitrd"
- # CONFIG_ENV_DEFAULT_STARTUP_OVERRIDE is not set
- CONFIG_USES_NOR_BOOTFLASH=y
- CONFIG_RELOCATE_SIMPLE=y
diff --git a/package/boot/arm-trusted-firmware-mvebu/Makefile b/package/boot/arm-trusted-firmware-mvebu/Makefile
new file mode 100644
index 0000000000..a2b34555a6
--- /dev/null
+++ b/package/boot/arm-trusted-firmware-mvebu/Makefile
@@ -0,0 +1,112 @@
+#
+# Copyright (C) 2019 Sartura Ltd.
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=arm-trusted-firmware-mvebu
+PKG_VERSION:=2.2
+PKG_RELEASE:=1
+
+PKG_SOURCE_PROTO:=git
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_RELEASE).tar.xz
+PKG_SOURCE_URL:=https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git
+PKG_SOURCE_DATE:=2019-10-22
+PKG_SOURCE_VERSION:=a04808c16cfc126d9fe572ae7c4b5a3d39de5796
+PKG_MIRROR_HASH:=ff93aad67227ca96db54e92288f61b4ff3abbaad291fc88ad95c29cd3dd3588c
+
+PKG_MAINTAINER:=Vladimir Vid
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/arm-trusted-firmware-mvebu
+ SECTION:=boot
+ CATEGORY:=Boot Loaders
+ TITLE:=ARM Trusted Firmware for mvebu devices
+endef
+
+define Package/arm-trusted-firmware-mvebu/uDPU
+$(call Package/arm-trusted-firmware-mvebu)
+ BOARDNAME:=uDPU
+ TITLE:=ARM Trusted Firmware for Methode uDPU
+ DEPENDS:=+u-boot-uDPU
+ UBOOT:=uDPU
+ CLOCKSPRESET:=CPU_1000_DDR_800
+ PLAT:=a3700
+endef
+
+A3700_UTILS_NAME:=a3700-utils
+A3700_UTILS_RELEASE:=18.12.1
+A3700_UTILS_SOURCE=$(A3700_UTILS_NAME)-$(A3700_UTILS_RELEASE).tar.bz2
+
+define Download/a3700-utils
+ FILE:=$(A3700_UTILS_SOURCE)
+ PROTO:=git
+ URL:=https://github.com/MarvellEmbeddedProcessors/A3700-utils-marvell.git
+ VERSION:=e6bb176fb9936d9160e53ae09275000dc6440686
+ MIRROR_HASH:=c3edf71cbf1fc2e5482d36e36a34c79d682d2c87fdfb909b4dc6327a171e7bd4
+ SUBDIR:=$(A3700_UTILS_NAME)
+endef
+
+MV_DDR_NAME:=mv-ddr-marvell
+MV_DDR_RELEASE:=mainline
+MV_DDR_SOURCE:=$(MV_DDR_NAME)-$(MV_DDR_RELEASE).tar.bz2
+
+define Download/mv-ddr-marvell
+ FILE:=$(MV_DDR_SOURCE)
+ PROTO:=git
+ URL:=https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell.git
+ VERSION:=a881467ef0f0185e6570dd0483023fde93cbb5f5
+ MIRROR_HASH:=19f34817616c583b2b5f2612705857cf2120f6c2132355217899b1403c3fd336
+ SUBDIR:=$(MV_DDR_NAME)
+endef
+
+LINARO_NAME:=gcc-linaro
+LINARO_RELEASE:=6
+LINARO_VERSION:=5.0-2018.12-$(HOST_ARCH)_arm-linux-gnueabi
+LINARO_SOURCE=$(LINARO_NAME)-$(LINARO_RELEASE).$(LINARO_VERSION).tar.xz
+
+define Download/gcc-linaro
+ FILE:=$(LINARO_SOURCE)
+ URL:=https://releases.linaro.org/components/toolchain/binaries/latest-$(LINARO_RELEASE)/arm-linux-gnueabi/
+ HASH:=2d4a92d6c8b384ae404b2e02c1c412e3ec18f9b714135acf046b2b1b510e9ace
+endef
+
+define Build/Prepare
+ # Download sources
+ $(eval $(call Download,a3700-utils))
+ $(eval $(call Download,mv-ddr-marvell))
+ $(eval $(call Download,gcc-linaro))
+
+ rm -rf $(PKG_BUILD_DIR)
+ $(TAR) -C $(BUILD_DIR) -xf $(DL_DIR)/$(PKG_SOURCE)
+
+ mkdir -p $(STAGING_DIR_IMAGE)
+ $(TAR) -C $(STAGING_DIR_IMAGE) -xf $(DL_DIR)/$(A3700_UTILS_SOURCE)
+ $(TAR) -C $(STAGING_DIR_IMAGE) -xf $(DL_DIR)/$(MV_DDR_SOURCE)
+ $(TAR) -C $(STAGING_DIR_IMAGE) -xf $(DL_DIR)/$(LINARO_SOURCE)
+endef
+
+TARGET_CFLAGS = ""
+
+MAKE_VARS= \
+ CROSS_COMPILE="$(TARGET_CROSS)"
+
+MAKE_FLAGS = \
+ CROSS_CM3=$(STAGING_DIR_IMAGE)/$(LINARO_NAME)-$(LINARO_RELEASE).$(LINARO_VERSION)/bin/arm-linux-gnueabi- \
+ BL33=$(STAGING_DIR_IMAGE)/$(UBOOT)-u-boot.bin \
+ MV_DDR_PATH=$(STAGING_DIR_IMAGE)/$(MV_DDR_NAME) \
+ WTP=$(STAGING_DIR_IMAGE)/$(A3700_UTILS_NAME) \
+ CLOCKSPRESET=$(CLOCKSPRESET) \
+ PLAT=$(PLAT) \
+ all \
+ fip
+
+define Build/InstallDev
+ $(CP) $(PKG_BUILD_DIR)/build/$(PLAT)/release/flash-image.bin $(BIN_DIR)/u-boot-$(BOARDNAME)/
+endef
+
+$(eval $(call BuildPackage,arm-trusted-firmware-mvebu/uDPU))
diff --git a/package/boot/arm-trusted-firmware-sunxi/Makefile b/package/boot/arm-trusted-firmware-sunxi/Makefile
index 7bd042bdab..0211e5e030 100644
--- a/package/boot/arm-trusted-firmware-sunxi/Makefile
+++ b/package/boot/arm-trusted-firmware-sunxi/Makefile
@@ -11,10 +11,10 @@ PKG_NAME:=arm-trusted-firmware-sunxi
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
-PKG_SOURCE_URL=https://github.com/apritzel/arm-trusted-firmware
-PKG_SOURCE_DATE:=2018-02-10
-PKG_SOURCE_VERSION:=c9f55c023164a6c8c49f70f7ac6c68c626839d6f
-PKG_MIRROR_HASH:=94b5338592cf0bcc353b55da5fdd62c91ae8e6263822f73724cb72ecde3dbbf9
+PKG_SOURCE_URL=https://github.com/ARM-software/arm-trusted-firmware
+PKG_SOURCE_DATE:=2018-10-02
+PKG_SOURCE_VERSION:=dbc8d9496ead9ecdd7c2a276b542a4fbbbf64027
+PKG_MIRROR_HASH:=c81521a27b86f606e927b4e346286540b862828c8d49292eae1f5c6adfc24001
PKG_LICENSE:=BSD-3-Clause
PKG_LICENSE_FILES:=license.md
@@ -37,12 +37,12 @@ MAKE_VARS = \
CROSS_COMPILE="$(TARGET_CROSS)"
MAKE_FLAGS += \
- PLAT=sun50iw1p1 \
+ PLAT=sun50i_a64 \
bl31
define Build/InstallDev
$(INSTALL_DIR) $(STAGING_DIR_IMAGE)
- $(CP) $(PKG_BUILD_DIR)/build/sun50iw1p1/release/bl31.bin $(STAGING_DIR_IMAGE)/bl31.bin
+ $(CP) $(PKG_BUILD_DIR)/build/sun50i_a64/release/bl31.bin $(STAGING_DIR_IMAGE)/bl31.bin
endef
define Package/arm-trusted-firmware-sunxi/install
diff --git a/package/boot/at91bootstrap/Makefile b/package/boot/at91bootstrap/Makefile
index 22afd1ec41..c4edddf848 100644
--- a/package/boot/at91bootstrap/Makefile
+++ b/package/boot/at91bootstrap/Makefile
@@ -9,13 +9,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=at91bootstrap
-PKG_VERSION:=v3.8.10
+PKG_VERSION:=v3.8.12
PKG_RELEASE:=
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/linux4sam/at91bootstrap.git
-PKG_SOURCE_VERSION:=04efa5500d60a0211d14b6ee60df7ce0a828704d
-
+PKG_SOURCE_VERSION:=28e15d07e9f24efb04b87bb0baa211a0c5640ef1
PKG_BUILD_DIR = \
$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
@@ -28,85 +27,99 @@ define AT91Bootstrap/Default
AT91BOOTSTRAP_IMAGE:=at91bootstrap.bin
endef
+define AT91Bootstrap/at91sam9x5eknf_uboot
+ NAME:=AT91Bootstrap for AT91SAM9X5-EK board (NandFlash)
+ BUILD_SUBTARGET:=sam9x
+ BUILD_DEVICES:=at91sam9x25ek at91sam9x35ek
+endef
+
+define AT91Bootstrap/at91sam9x5eksd_uboot
+ NAME:=AT91Bootstrap for AT91SAM9X5-EK board (SDcard)
+ BUILD_SUBTARGET:=sam9x
+ BUILD_DEVICES:=at91sam9x25ek at91sam9x35ek
+endef
+
define AT91Bootstrap/sama5d2_xplaineddf_uboot
TITLE:=AT91Bootstrap for SAMA5D2 Xplained board (SPI Flash)
- BUILD_SUBTARGET:=sama5d2
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d2_xplained
endef
define AT91Bootstrap/sama5d2_xplaineddf_qspi_uboot
TITLE:=AT91Bootstrap for SAMA5D2 Xplained board (QSPI Flash)
- BUILD_SUBTARGET:=sama5d2
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d2_xplained
endef
define AT91Bootstrap/sama5d2_xplainedsd_uboot
TITLE:=AT91Bootstrap for SAMA5D2 Xplained board (SDcard/EMMC)
- BUILD_SUBTARGET:=sama5d2
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d2_xplained
endef
define AT91Bootstrap/sama5d3_xplainednf_uboot
TITLE:=AT91Bootstrap for SAMA5D3 Xplained board (Nand Flash)
- BUILD_SUBTARGET:=sama5d3
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d3_xplained
endef
define AT91Bootstrap/sama5d3_xplainedsd_uboot
TITLE:=AT91Bootstrap for SAMA5D3 Xplained board (SDcard)
- BUILD_SUBTARGET:=sama5d3
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d3_xplained
endef
define AT91Bootstrap/sama5d4_xplainednf_uboot_secure
TITLE:=AT91Bootstrap for SAMA5D4 Xplained board (Nand Flash)
- BUILD_SUBTARGET:=sama5d4
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d4_xplained
endef
define AT91Bootstrap/sama5d4_xplaineddf_uboot_secure
TITLE:=AT91Bootstrap for SAMA5D4 Xplained board (SPI Flash)
- BUILD_SUBTARGET:=sama5d4
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d4_xplained
endef
define AT91Bootstrap/sama5d4_xplainedsd_uboot_secure
TITLE:=AT91Bootstrap for SAMA5D4 Xplained board (SDcard)
- BUILD_SUBTARGET:=sama5d4
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d4_xplained
endef
define AT91Bootstrap/sama5d27_som1_eksd_uboot
TITLE:=AT91Bootstrap for SAMA5D27 SOM1 Ek (SDcard0)
- BUILD_SUBTARGET:=sama5d2
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d27_som1_ek
endef
define AT91Bootstrap/sama5d27_som1_eksd1_uboot
TITLE:=AT91Bootstrap for SAMA5D27 SOM1 Ek (SDcard1)
- BUILD_SUBTARGET:=sama5d2
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d27_som1_ek
endef
define AT91Bootstrap/sama5d27_som1_ekqspi_uboot
TITLE:=AT91Bootstrap for SAMA5D27 SOM1 Ek (QSPI Flash)
- BUILD_SUBTARGET:=sama5d2
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d27_som1_ek
endef
define AT91Bootstrap/sama5d2_ptc_eknf_uboot
TITLE:=AT91Bootstrap for SAMA5D2 PTC EK (Nand Flash)
- BUILD_SUBTARGET:=sama5d2
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d2_ptc_ek
endef
define AT91Bootstrap/sama5d2_ptc_eksd_uboot
TITLE:=AT91Bootstrap for SAMA5D2 PTC EK (SDCard)
- BUILD_SUBTARGET:=sama5d2
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d2_ptc_ek
endef
AT91BOOTSTRAP_TARGETS := \
+ at91sam9x5eknf_uboot \
+ at91sam9x5eksd_uboot \
sama5d2_xplaineddf_uboot \
sama5d2_xplaineddf_qspi_uboot \
sama5d2_xplainedsd_uboot \
@@ -115,9 +128,9 @@ AT91BOOTSTRAP_TARGETS := \
sama5d4_xplainednf_uboot_secure \
sama5d4_xplaineddf_uboot_secure \
sama5d4_xplainedsd_uboot_secure \
- sama5d27_som1_eksd_uboot \
- sama5d27_som1_ekqspi_uboot \
- sama5d2_ptc_eknf_uboot \
+ sama5d27_som1_eksd1_uboot \
+ sama5d27_som1_ekqspi_uboot \
+ sama5d2_ptc_eknf_uboot \
sama5d2_ptc_eksd_uboot
define Build/Compile
diff --git a/package/boot/fconfig/Makefile b/package/boot/fconfig/Makefile
index d82fa8db90..9b806fe97c 100644
--- a/package/boot/fconfig/Makefile
+++ b/package/boot/fconfig/Makefile
@@ -30,13 +30,6 @@ define Package/fconfig/description
displays and (if writable) also edits the RedBoot configuration.
endef
-define Build/Configure
-endef
-
-define Build/Compile
- $(call Build/Compile/Default)
-endef
-
define Package/fconfig/install
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_BUILD_DIR)/fconfig $(1)/usr/sbin/
diff --git a/package/boot/grub2/common.mk b/package/boot/grub2/Makefile
similarity index 63%
rename from package/boot/grub2/common.mk
rename to package/boot/grub2/Makefile
index 1b9ee2f4f1..1f92ba9250 100644
--- a/package/boot/grub2/common.mk
+++ b/package/boot/grub2/Makefile
@@ -8,34 +8,44 @@
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
+PKG_NAME:=grub
PKG_CPE_ID:=cpe:/a:gnu:grub2
-PKG_VERSION:=2.02
-PKG_RELEASE:=3
+PKG_VERSION:=2.04
+PKG_RELEASE:=1
-PKG_SOURCE:=grub-$(PKG_VERSION).tar.xz
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@GNU/grub
-PKG_HASH:=810b3798d316394f94096ec2797909dbf23c858e48f7b3830826b8daa06b7b0f
+PKG_HASH:=e5292496995ad42dabe843a0192cf2a2c502e7ffcc7479398232b10a472df77d
-PKG_FIXUP:=autoreconf
HOST_BUILD_PARALLEL:=1
+PKG_BUILD_DEPENDS:=grub2/host
PKG_SSP:=0
PKG_FLAGS:=nonshared
-PATCH_DIR := ../patches
-HOST_PATCH_DIR := ../patches
-HOST_BUILD_DIR := $(BUILD_DIR_HOST)/$(PKG_NAME)-$(PKG_VERSION)
-
include $(INCLUDE_DIR)/host-build.mk
include $(INCLUDE_DIR)/package.mk
-define Package/grub2/Default
+define Package/grub2
CATEGORY:=Boot Loaders
SECTION:=boot
TITLE:=GRand Unified Bootloader
URL:=http://www.gnu.org/software/grub/
- DEPENDS:=@TARGET_x86||TARGET_x86_64
+ DEPENDS:=@TARGET_x86
+endef
+
+define Package/grub2-editenv
+ CATEGORY:=Utilities
+ SECTION:=utils
+ SUBMENU:=Boot Loaders
+ TITLE:=Grub2 Environment editor
+ URL:=http://www.gnu.org/software/grub/
+ DEPENDS:=@TARGET_x86
+endef
+
+define Package/grub2-editenv/description
+ Edit grub2 environment files.
endef
HOST_BUILD_PREFIX := $(STAGING_DIR_HOST)
@@ -72,3 +82,11 @@ define Host/Configure
$(Host/Configure/Default)
endef
+define Package/grub2-editenv/install
+ $(INSTALL_DIR) $(1)/usr/sbin
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/grub-editenv $(1)/usr/sbin/
+endef
+
+$(eval $(call HostBuild))
+$(eval $(call BuildPackage,grub2))
+$(eval $(call BuildPackage,grub2-editenv))
diff --git a/package/boot/grub2/grub2-efi/Makefile b/package/boot/grub2/grub2-efi/Makefile
deleted file mode 100644
index 035bfc3336..0000000000
--- a/package/boot/grub2/grub2-efi/Makefile
+++ /dev/null
@@ -1,23 +0,0 @@
-include $(TOPDIR)/rules.mk
-include $(INCLUDE_DIR)/kernel.mk
-
-PKG_NAME:=grub-efi
-
-include ../common.mk
-
-TAR_OPTIONS:= --transform 's/grub-${PKG_VERSION}/${PKG_NAME}-${PKG_VERSION}/' $(TAR_OPTIONS)
-
-PKG_BUILD_DEPENDS:=grub2-efi/host
-
-CONFIGURE_ARGS += --with-platform=efi
-HOST_CONFIGURE_ARGS += --with-platform=efi --program-suffix=-efi
-HOST_BUILD_DIR := $(BUILD_DIR_HOST)/$(PKG_NAME)-$(PKG_VERSION)
-
-define Package/grub2-efi
-$(call Package/grub2/Default)
-HIDDEN:=1
-TITLE += (with EFI support)
-endef
-
-$(eval $(call HostBuild))
-$(eval $(call BuildPackage,grub2-efi))
diff --git a/package/boot/grub2/grub2/Makefile b/package/boot/grub2/grub2/Makefile
deleted file mode 100644
index c00797662b..0000000000
--- a/package/boot/grub2/grub2/Makefile
+++ /dev/null
@@ -1,33 +0,0 @@
-include $(TOPDIR)/rules.mk
-include $(INCLUDE_DIR)/kernel.mk
-
-PKG_NAME:=grub
-
-include ../common.mk
-
-PKG_BUILD_DEPENDS:=grub2/host
-
-define Package/grub2
-$(call Package/grub2/Default)
-endef
-
-define Package/grub2-editenv
- CATEGORY:=Utilities
- SECTION:=utils
- TITLE:=Grub2 Environment editor
- URL:=http://www.gnu.org/software/grub/
- DEPENDS:=@TARGET_x86||TARGET_x86_64
-endef
-
-define Package/grub2-editenv/description
- Edit grub2 environment files.
-endef
-
-define Package/grub2-editenv/install
- $(INSTALL_DIR) $(1)/usr/sbin
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/grub-editenv $(1)/usr/sbin/
-endef
-
-$(eval $(call HostBuild))
-$(eval $(call BuildPackage,grub2))
-$(eval $(call BuildPackage,grub2-editenv))
diff --git a/package/boot/grub2/patches/0008-Fix-packed-not-aligned-error-on-GCC-8.patch b/package/boot/grub2/patches/0008-Fix-packed-not-aligned-error-on-GCC-8.patch
deleted file mode 100644
index c9a9884b19..0000000000
--- a/package/boot/grub2/patches/0008-Fix-packed-not-aligned-error-on-GCC-8.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From 563b1da6e6ae7af46cc8354cadb5dab416989f0a Mon Sep 17 00:00:00 2001
-From: Michael Chang
-Date: Mon, 26 Mar 2018 16:52:34 +0800
-Subject: Fix packed-not-aligned error on GCC 8
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-When building with GCC 8, there are several errors regarding packed-not-aligned.
-
-./include/grub/gpt_partition.h:79:1: error: alignment 1 of ‘struct grub_gpt_partentry’ is less than 8 [-Werror=packed-not-aligned]
-
-This patch fixes the build error by cleaning up the ambiguity of placing
-aligned structure in a packed one. In "struct grub_btrfs_time" and "struct
-grub_gpt_part_type", the aligned attribute seems to be superfluous, and also
-has to be packed, to ensure the structure is bit-to-bit mapped to the format
-laid on disk. I think we could blame to copy and paste error here for the
-mistake. In "struct efi_variable", we have to use grub_efi_packed_guid_t, as
-the name suggests. :)
-
-Signed-off-by: Michael Chang
-Tested-by: Michael Chang
-Tested-by: Paul Menzel
-Reviewed-by: Daniel Kiper
----
- grub-core/fs/btrfs.c | 2 +-
- include/grub/efiemu/runtime.h | 2 +-
- include/grub/gpt_partition.h | 2 +-
- 3 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/grub-core/fs/btrfs.c b/grub-core/fs/btrfs.c
-index 4849c1ceb..be195448d 100644
---- a/grub-core/fs/btrfs.c
-+++ b/grub-core/fs/btrfs.c
-@@ -175,7 +175,7 @@ struct grub_btrfs_time
- {
- grub_int64_t sec;
- grub_uint32_t nanosec;
--} __attribute__ ((aligned (4)));
-+} GRUB_PACKED;
-
- struct grub_btrfs_inode
- {
-diff --git a/include/grub/efiemu/runtime.h b/include/grub/efiemu/runtime.h
-index 9b6b729f4..36d2dedf4 100644
---- a/include/grub/efiemu/runtime.h
-+++ b/include/grub/efiemu/runtime.h
-@@ -29,7 +29,7 @@ struct grub_efiemu_ptv_rel
-
- struct efi_variable
- {
-- grub_efi_guid_t guid;
-+ grub_efi_packed_guid_t guid;
- grub_uint32_t namelen;
- grub_uint32_t size;
- grub_efi_uint32_t attributes;
-diff --git a/include/grub/gpt_partition.h b/include/grub/gpt_partition.h
-index 1b32f6725..9668a68c3 100644
---- a/include/grub/gpt_partition.h
-+++ b/include/grub/gpt_partition.h
-@@ -28,7 +28,7 @@ struct grub_gpt_part_type
- grub_uint16_t data2;
- grub_uint16_t data3;
- grub_uint8_t data4[8];
--} __attribute__ ((aligned(8)));
-+} GRUB_PACKED;
- typedef struct grub_gpt_part_type grub_gpt_part_type_t;
-
- #define GRUB_GPT_PARTITION_TYPE_EMPTY \
---
-cgit v1.1-33-g03f6
diff --git a/package/boot/grub2/patches/001-verifiers-Blocklist-fallout-cleanup.patch b/package/boot/grub2/patches/001-verifiers-Blocklist-fallout-cleanup.patch
new file mode 100644
index 0000000000..74d68a6cda
--- /dev/null
+++ b/package/boot/grub2/patches/001-verifiers-Blocklist-fallout-cleanup.patch
@@ -0,0 +1,31 @@
+From: David Michael
+Date: Fri, 5 Jul 2019 07:45:59 -0400
+Subject: [PATCH] verifiers: Blocklist fallout cleanup
+
+Blocklist fallout cleanup after commit 5c6f9bc15 (generic/blocklist: Fix
+implicit declaration of function grub_file_filter_disable_compression()).
+
+Signed-off-by: David Michael
+Reviewed-by: Daniel Kiper
+---
+
+--- a/grub-core/osdep/generic/blocklist.c
++++ b/grub-core/osdep/generic/blocklist.c
+@@ -59,7 +59,7 @@ grub_install_get_blocklist (grub_device_
+
+ grub_disk_cache_invalidate_all ();
+
+- file = grub_file_open (core_path_dev, GRUB_FILE_TYPE_NONE | FILE_TYPE_NO_DECOMPRESS);
++ file = grub_file_open (core_path_dev, GRUB_FILE_TYPE_NONE | GRUB_FILE_TYPE_NO_DECOMPRESS);
+ if (file)
+ {
+ if (grub_file_size (file) != core_size)
+@@ -116,7 +116,7 @@ grub_install_get_blocklist (grub_device_
+
+ grub_file_t file;
+ /* Now read the core image to determine where the sectors are. */
+- file = grub_file_open (core_path_dev, GRUB_FILE_TYPE_NONE | FILE_TYPE_NO_DECOMPRESS);
++ file = grub_file_open (core_path_dev, GRUB_FILE_TYPE_NONE | GRUB_FILE_TYPE_NO_DECOMPRESS);
+ if (! file)
+ grub_util_error ("%s", grub_errmsg);
+
diff --git a/package/boot/grub2/patches/100-grub_setup_root.patch b/package/boot/grub2/patches/100-grub_setup_root.patch
index f053ba95e2..df671bc9d2 100644
--- a/package/boot/grub2/patches/100-grub_setup_root.patch
+++ b/package/boot/grub2/patches/100-grub_setup_root.patch
@@ -17,7 +17,7 @@
int force;
int fs_probe;
int allow_floppy;
-@@ -178,6 +181,13 @@ argp_parser (int key, char *arg, struct argp_state *state)
+@@ -178,6 +181,13 @@ argp_parser (int key, char *arg, struct
arguments->dev_map = xstrdup (arg);
break;
@@ -42,7 +42,7 @@
--- a/util/setup.c
+++ b/util/setup.c
-@@ -247,13 +247,12 @@ identify_partmap (grub_disk_t disk __attribute__ ((unused)),
+@@ -252,13 +252,12 @@ identify_partmap (grub_disk_t disk __att
void
SETUP (const char *dir,
const char *boot_file, const char *core_file,
@@ -55,8 +55,8 @@
char *boot_img, *core_img, *boot_path;
- char *root = 0;
size_t boot_size, core_size;
- #ifdef GRUB_SETUP_BIOS
grub_uint16_t core_sectors;
+ grub_device_t root_dev = 0, dest_dev, core_dev;
@@ -307,7 +306,10 @@ SETUP (const char *dir,
core_dev = dest_dev;
@@ -80,7 +80,7 @@
continue;
--- a/include/grub/util/install.h
+++ b/include/grub/util/install.h
-@@ -184,13 +184,13 @@ grub_install_get_image_target (const char *arg);
+@@ -191,13 +191,13 @@ grub_install_get_image_target (const cha
void
grub_util_bios_setup (const char *dir,
const char *boot_file, const char *core_file,
@@ -98,7 +98,7 @@
--- a/util/grub-install.c
+++ b/util/grub-install.c
-@@ -1673,7 +1673,7 @@ main (int argc, char *argv[])
+@@ -1712,7 +1712,7 @@ main (int argc, char *argv[])
/* Now perform the installation. */
if (install_bootsector)
grub_util_bios_setup (platdir, "boot.img", "core.img",
@@ -107,7 +107,7 @@
fs_probe, allow_floppy, add_rs_codes);
break;
}
-@@ -1699,7 +1699,7 @@ main (int argc, char *argv[])
+@@ -1738,7 +1738,7 @@ main (int argc, char *argv[])
/* Now perform the installation. */
if (install_bootsector)
grub_util_sparc_setup (platdir, "boot.img", "core.img",
diff --git a/package/boot/grub2/patches/101-disable-gettext-check-macro-version.patch b/package/boot/grub2/patches/101-disable-gettext-check-macro-version.patch
deleted file mode 100644
index 4b850ed2a1..0000000000
--- a/package/boot/grub2/patches/101-disable-gettext-check-macro-version.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/po/Makefile.in.in b/po/Makefile.in.in
-index 3619458..060e0db 100644
---- a/po/Makefile.in.in
-+++ b/po/Makefile.in.in
-@@ -97,7 +97,7 @@ CATALOGS = @CATALOGS@
- mv t-$@ $@
-
-
--all: check-macro-version all-@USE_NLS@
-+all: all-@USE_NLS@
-
- all-yes: stamp-po
- all-no:
diff --git a/package/boot/grub2/patches/200-fix-gets-removal.patch b/package/boot/grub2/patches/200-fix-gets-removal.patch
deleted file mode 100644
index 737fb975bf..0000000000
--- a/package/boot/grub2/patches/200-fix-gets-removal.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- a/grub-core/gnulib/stdio.in.h
-+++ b/grub-core/gnulib/stdio.in.h
-@@ -695,13 +695,6 @@ _GL_WARN_ON_USE (getline, "getline is un
- # endif
- #endif
-
--/* It is very rare that the developer ever has full control of stdin,
-- so any use of gets warrants an unconditional warning; besides, C11
-- removed it. */
--#undef gets
--#if HAVE_RAW_DECL_GETS
--#endif
--
-
- #if @GNULIB_OBSTACK_PRINTF@ || @GNULIB_OBSTACK_PRINTF_POSIX@
- struct obstack;
diff --git a/package/boot/grub2/patches/300-CVE-2015-8370.patch b/package/boot/grub2/patches/300-CVE-2015-8370.patch
index eb7919639a..22f6c90928 100644
--- a/package/boot/grub2/patches/300-CVE-2015-8370.patch
+++ b/package/boot/grub2/patches/300-CVE-2015-8370.patch
@@ -33,8 +33,8 @@ Signed-off-by: Ismael Ripoll-Ripoll
break;
}
-- if (key == '\b')
-+ if (key == '\b' && cur_len)
+- if (key == GRUB_TERM_BACKSPACE)
++ if (key == GRUB_TERM_BACKSPACE && cur_len)
{
if (cur_len)
{
diff --git a/package/boot/grub2/patches/400-R_X86_64_PLT32.patch b/package/boot/grub2/patches/400-R_X86_64_PLT32.patch
deleted file mode 100644
index 2c65cb78a5..0000000000
--- a/package/boot/grub2/patches/400-R_X86_64_PLT32.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From 02702bdfe14d8a04643a45b03715f734ae34dbac Mon Sep 17 00:00:00 2001
-From: "H.J. Lu"
-Date: Sat, 17 Feb 2018 06:47:28 -0800
-Subject: x86-64: Treat R_X86_64_PLT32 as R_X86_64_PC32
-
-Starting from binutils commit bd7ab16b4537788ad53521c45469a1bdae84ad4a:
-
-https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=bd7ab16b4537788ad53521c45469a1bdae84ad4a
-
-x86-64 assembler generates R_X86_64_PLT32, instead of R_X86_64_PC32, for
-32-bit PC-relative branches. Grub2 should treat R_X86_64_PLT32 as
-R_X86_64_PC32.
-
-Signed-off-by: H.J. Lu
-Reviewed-by: Daniel Kiper
-
-Origin: upstream, https://git.savannah.gnu.org/cgit/grub.git/commit/?id=842c390469e2c2e10b5aa36700324cd3bde25875
-Last-Update: 2018-07-30
-
-Patch-Name: R_X86_64_PLT32.patch
----
- grub-core/efiemu/i386/loadcore64.c | 1 +
- grub-core/kern/x86_64/dl.c | 1 +
- util/grub-mkimagexx.c | 1 +
- util/grub-module-verifier.c | 1 +
- 4 files changed, 4 insertions(+)
-
-diff --git a/grub-core/efiemu/i386/loadcore64.c b/grub-core/efiemu/i386/loadcore64.c
-index e49d0b6ff..18facf47f 100644
---- a/grub-core/efiemu/i386/loadcore64.c
-+++ b/grub-core/efiemu/i386/loadcore64.c
-@@ -98,6 +98,7 @@ grub_arch_efiemu_relocate_symbols64 (grub_efiemu_segment_t segs,
- break;
-
- case R_X86_64_PC32:
-+ case R_X86_64_PLT32:
- err = grub_efiemu_write_value (addr,
- *addr32 + rel->r_addend
- + sym.off
-diff --git a/grub-core/kern/x86_64/dl.c b/grub-core/kern/x86_64/dl.c
-index 440690673..3a73e6e6c 100644
---- a/grub-core/kern/x86_64/dl.c
-+++ b/grub-core/kern/x86_64/dl.c
-@@ -70,6 +70,7 @@ grub_arch_dl_relocate_symbols (grub_dl_t mod, void *ehdr,
- break;
-
- case R_X86_64_PC32:
-+ case R_X86_64_PLT32:
- {
- grub_int64_t value;
- value = ((grub_int32_t) *addr32) + rel->r_addend + sym->st_value -
-diff --git a/util/grub-mkimagexx.c b/util/grub-mkimagexx.c
-index e63f148e4..f20255a28 100644
---- a/util/grub-mkimagexx.c
-+++ b/util/grub-mkimagexx.c
-@@ -832,6 +832,7 @@ SUFFIX (relocate_addresses) (Elf_Ehdr *e, Elf_Shdr *sections,
- break;
-
- case R_X86_64_PC32:
-+ case R_X86_64_PLT32:
- {
- grub_uint32_t *t32 = (grub_uint32_t *) target;
- *t32 = grub_host_to_target64 (grub_target_to_host32 (*t32)
-diff --git a/util/grub-module-verifier.c b/util/grub-module-verifier.c
-index 9179285a5..a79271f66 100644
---- a/util/grub-module-verifier.c
-+++ b/util/grub-module-verifier.c
-@@ -19,6 +19,7 @@ struct grub_module_verifier_arch archs[] = {
- -1
- }, (int[]){
- R_X86_64_PC32,
-+ R_X86_64_PLT32,
- -1
- }
- },
diff --git a/package/boot/kexec-tools/Makefile b/package/boot/kexec-tools/Makefile
index ca41839869..269345aa9d 100644
--- a/package/boot/kexec-tools/Makefile
+++ b/package/boot/kexec-tools/Makefile
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=kexec-tools
PKG_VERSION:=2.0.16
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@KERNEL/linux/utils/kernel/kexec
@@ -25,7 +25,6 @@ define Package/kexec-tools/Default
SECTION:=utils
CATEGORY:=Utilities
URL:=http://kernel.org/pub/linux/kernel/people/horms/kexec-tools/
- MAINTAINER:=Florian Fainelli
endef
define Package/kexec-tools
diff --git a/package/boot/kexec-tools/files/kdump.init b/package/boot/kexec-tools/files/kdump.init
index 6a6a94c07e..0955047156 100755
--- a/package/boot/kexec-tools/files/kdump.init
+++ b/package/boot/kexec-tools/files/kdump.init
@@ -1,7 +1,7 @@
#!/bin/sh /etc/rc.common
START=41
-STOP=98
+STOP=90
EXTRA_COMMANDS="status"
EXTRA_HELP=" status Print crashkernel status"
diff --git a/package/boot/rbcfg/Makefile b/package/boot/rbcfg/Makefile
index 9d9b97524a..55e0ea7490 100644
--- a/package/boot/rbcfg/Makefile
+++ b/package/boot/rbcfg/Makefile
@@ -21,7 +21,7 @@ define Package/rbcfg
CATEGORY:=Utilities
SUBMENU:=Boot Loaders
TITLE:=RouterBOOT configuration tool
- DEPENDS:=@TARGET_ar71xx
+ DEPENDS:=@(TARGET_ar71xx||TARGET_ath79)
endef
define Package/rbcfg/description
diff --git a/package/boot/tfa-layerscape/Makefile b/package/boot/tfa-layerscape/Makefile
new file mode 100644
index 0000000000..a34c52bc3b
--- /dev/null
+++ b/package/boot/tfa-layerscape/Makefile
@@ -0,0 +1,161 @@
+#
+# Copyright 2019 NXP
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=tfa-layerscape
+PKG_VERSION:=lsdk-1903
+PKG_RELEASE:=1
+
+PKG_SOURCE_PROTO:=git
+PKG_SOURCE_URL:=https://source.codeaurora.org/external/qoriq/qoriq-components/atf
+PKG_SOURCE_VERSION:=7e34aebe658c7c3439d2d68b0ce6b9776e8e6996
+PKG_MIRROR_HASH:=9cf0bc32fa589a0ee7c48c87898679e645341f29da1253d0ba5d2e82c6ea074d
+PKG_BUILD_DEPENDS:=uboot-layerscape tfa-layerscape/host
+
+include $(INCLUDE_DIR)/host-build.mk
+include $(INCLUDE_DIR)/package.mk
+
+define Package/tfa-layerscape/Config
+ define Package/tfa-$(1)
+ SECTION:=boot
+ CATEGORY:=Boot Loaders
+ TITLE:=$(2)
+ DEPENDS:=@TARGET_layerscape_armv8_64b +layerscape-rcw-$(1)
+ HIDDEN:=1
+ VARIANT:=$(1)
+ BIN_BL2:=$(3)
+ BIN_FIP:=$(4)
+ endef
+endef
+
+define Package/tfa-layerscape/Install
+ define Package/tfa-$(1)/install
+ $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
+ $(CP) $(PKG_BUILD_DIR)/$(BIN_BL2) $(STAGING_DIR_IMAGE)/$(1)-bl2.pbl
+ $(CP) $(PKG_BUILD_DIR)/$(BIN_FIP) $(STAGING_DIR_IMAGE)/$(1)-fip.bin
+ endef
+endef
+
+define Build/Compile
+ $(eval $(Package/tfa-layerscape/$(BUILD_VARIANT))) \
+ $(MAKE) -C $(PKG_BUILD_DIR) CROSS_COMPILE=$(TARGET_CROSS) \
+ fip pbl PLAT=$(PLAT) BOOT_MODE=$(BOOT_MODE) \
+ RCW=$(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-rcw.bin \
+ BL33=$(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-uboot.bin \
+ FIPTOOL=$(STAGING_DIR_HOST)/bin/tfa-fiptool \
+ CREATE_PBL=$(STAGING_DIR_HOST)/bin/tfa-create-pbl \
+ BYTE_SWAP=$(STAGING_DIR_HOST)/bin/tfa-byte-swap
+endef
+
+HOST_CFLAGS += -Wall -Werror -pedantic -std=c99
+define Host/Compile
+ $(MAKE) -C \
+ $(HOST_BUILD_DIR)/tools/fiptool \
+ CFLAGS="$(HOST_CFLAGS)" \
+ LDFLAGS="$(HOST_LDFLAGS)"
+ $(MAKE) -C \
+ $(HOST_BUILD_DIR)/plat/nxp/tools \
+ CFLAGS="$(HOST_CFLAGS)"
+endef
+
+define Host/Install
+ $(INSTALL_BIN) $(HOST_BUILD_DIR)/tools/fiptool/fiptool $(STAGING_DIR_HOST)/bin/tfa-fiptool
+ $(INSTALL_BIN) $(HOST_BUILD_DIR)/plat/nxp/tools/create_pbl $(STAGING_DIR_HOST)/bin/tfa-create-pbl
+ $(INSTALL_BIN) $(HOST_BUILD_DIR)/plat/nxp/tools/byte_swap $(STAGING_DIR_HOST)/bin/tfa-byte-swap
+endef
+
+define Package/tfa-layerscape/ls1012ardb
+ TITLE:=NXP LS1012ARDB Trusted Firmware
+ PLAT:=ls1012ardb
+ BOOT_MODE:=qspi
+ BIN_BL2:=build/ls1012ardb/release/bl2_qspi.pbl
+ BIN_FIP:=build/ls1012ardb/release/fip.bin
+endef
+
+define Package/tfa-layerscape/ls1012afrwy
+ TITLE:=NXP LS1012AFRWY Trusted Firmware
+ PLAT:=ls1012afrwy
+ BOOT_MODE:=qspi
+ BIN_BL2:=build/ls1012afrwy/release/bl2_qspi.pbl
+ BIN_FIP:=build/ls1012afrwy/release/fip.bin
+endef
+
+define Package/tfa-layerscape/ls1043ardb
+ TITLE:=NXP LS1043ARDB Trusted Firmware
+ PLAT:=ls1043ardb
+ BOOT_MODE:=nor
+ BIN_BL2:=build/ls1043ardb/release/bl2_nor.pbl
+ BIN_FIP:=build/ls1043ardb/release/fip.bin
+endef
+
+define Package/tfa-layerscape/ls1043ardb-sdboot
+ TITLE:=NXP LS1043ARDB SD Boot Trusted Firmware
+ PLAT:=ls1043ardb
+ BOOT_MODE:=sd
+ BIN_BL2:=build/ls1043ardb/release/bl2_sd.pbl
+ BIN_FIP:=build/ls1043ardb/release/fip.bin
+endef
+
+define Package/tfa-layerscape/ls1046ardb
+ TITLE:=NXP LS1046ARDB Trusted Firmware
+ PLAT:=ls1046ardb
+ BOOT_MODE:=qspi
+ BIN_BL2:=build/ls1046ardb/release/bl2_qspi.pbl
+ BIN_FIP:=build/ls1046ardb/release/fip.bin
+endef
+
+define Package/tfa-layerscape/ls1046ardb-sdboot
+ TITLE:=NXP LS1046ARDB SD Boot Trusted Firmware
+ PLAT:=ls1046ardb
+ BOOT_MODE:=sd
+ BIN_BL2:=build/ls1046ardb/release/bl2_sd.pbl
+ BIN_FIP:=build/ls1046ardb/release/fip.bin
+endef
+
+define Package/tfa-layerscape/ls1088ardb
+ TITLE:=NXP LS1088ARDB Trusted Firmware
+ PLAT:=ls1088ardb
+ BOOT_MODE:=qspi
+ BIN_BL2:=build/ls1088ardb/release/bl2_qspi.pbl
+ BIN_FIP:=build/ls1088ardb/release/fip.bin
+endef
+
+define Package/tfa-layerscape/ls1088ardb-sdboot
+ TITLE:=NXP LS1088ARDB SD Boot Trusted Firmware
+ PLAT:=ls1088ardb
+ BOOT_MODE:=sd
+ BIN_BL2:=build/ls1088ardb/release/bl2_sd.pbl
+ BIN_FIP:=build/ls1088ardb/release/fip.bin
+endef
+
+define Package/tfa-layerscape/ls2088ardb
+ TITLE:=NXP LS2088ARDB Trusted Firmware
+ PLAT:=ls2088ardb
+ BOOT_MODE:=nor
+ BIN_BL2:=build/ls2088ardb/release/bl2_nor.pbl
+ BIN_FIP:=build/ls2088ardb/release/fip.bin
+endef
+
+TFAS := \
+ ls1012ardb \
+ ls1012afrwy \
+ ls1043ardb \
+ ls1043ardb-sdboot \
+ ls1046ardb \
+ ls1046ardb-sdboot \
+ ls1088ardb \
+ ls1088ardb-sdboot \
+ ls2088ardb
+
+$(eval $(call HostBuild))
+$(foreach tfa,$(TFAS), \
+ $(eval $(Package/tfa-layerscape/$(tfa))) \
+ $(eval $(call Package/tfa-layerscape/Config,$(tfa),$(TITLE),$(BIN_BL2),$(BIN_FIP))) \
+ $(eval $(call Package/tfa-layerscape/Install,$(tfa))) \
+ $(eval $(call BuildPackage,tfa-$(tfa))) \
+)
diff --git a/package/boot/tfa-layerscape/patches/001-fiptool-hostbuild-fixes.patch b/package/boot/tfa-layerscape/patches/001-fiptool-hostbuild-fixes.patch
new file mode 100644
index 0000000000..0567e5869b
--- /dev/null
+++ b/package/boot/tfa-layerscape/patches/001-fiptool-hostbuild-fixes.patch
@@ -0,0 +1,71 @@
+--- a/Makefile
++++ b/Makefile
+@@ -448,10 +448,6 @@ endif
+ CRTTOOLPATH ?= tools/cert_create
+ CRTTOOL ?= ${CRTTOOLPATH}/cert_create${BIN_EXT}
+
+-# Variables for use with Firmware Image Package
+-FIPTOOLPATH ?= tools/fiptool
+-FIPTOOL ?= ${FIPTOOLPATH}/fiptool${BIN_EXT}
+-
+ ################################################################################
+ # Include BL specific makefiles
+ ################################################################################
+@@ -661,14 +657,12 @@ endif
+ clean:
+ @echo " CLEAN"
+ $(call SHELL_REMOVE_DIR,${BUILD_PLAT})
+- ${Q}${MAKE} --no-print-directory -C ${FIPTOOLPATH} clean
+ ${Q}${MAKE} PLAT=${PLAT} --no-print-directory -C ${CRTTOOLPATH} clean
+
+ realclean distclean:
+ @echo " REALCLEAN"
+ $(call SHELL_REMOVE_DIR,${BUILD_BASE})
+ $(call SHELL_DELETE_ALL, ${CURDIR}/cscope.*)
+- ${Q}${MAKE} --no-print-directory -C ${FIPTOOLPATH} clean
+ ${Q}${MAKE} PLAT=${PLAT} --no-print-directory -C ${CRTTOOLPATH} clean
+
+ checkcodebase: locate-checkpatch
+@@ -717,7 +711,7 @@ certificates: ${CRT_DEPS} ${CRTTOOL}
+ @${ECHO_BLANK_LINE}
+ endif
+
+-${BUILD_PLAT}/${FIP_NAME}: ${FIP_DEPS} ${FIPTOOL}
++${BUILD_PLAT}/${FIP_NAME}: ${FIP_DEPS}
+ ${Q}${FIPTOOL} create ${FIP_ARGS} $@
+ ${Q}${FIPTOOL} info $@
+ @${ECHO_BLANK_LINE}
+@@ -733,21 +727,16 @@ fwu_certificates: ${FWU_CRT_DEPS} ${CRTT
+ @${ECHO_BLANK_LINE}
+ endif
+
+-${BUILD_PLAT}/${FWU_FIP_NAME}: ${FWU_FIP_DEPS} ${FIPTOOL}
++${BUILD_PLAT}/${FWU_FIP_NAME}: ${FWU_FIP_DEPS}
+ ${Q}${FIPTOOL} create ${FWU_FIP_ARGS} $@
+ ${Q}${FIPTOOL} info $@
+ @${ECHO_BLANK_LINE}
+ @echo "Built $@ successfully"
+ @${ECHO_BLANK_LINE}
+
+-fiptool: ${FIPTOOL}
+ fip: ${BUILD_PLAT}/${FIP_NAME}
+ fwu_fip: ${BUILD_PLAT}/${FWU_FIP_NAME}
+
+-.PHONY: ${FIPTOOL}
+-${FIPTOOL}:
+- ${Q}${MAKE} CPPFLAGS="-DVERSION='\"${VERSION_STRING}\"'" --no-print-directory -C ${FIPTOOLPATH}
+-
+ cscope:
+ @echo " CSCOPE"
+ ${Q}find ${CURDIR} -name "*.[chsS]" > cscope.files
+--- a/tools/fiptool/Makefile
++++ b/tools/fiptool/Makefile
+@@ -37,7 +37,7 @@ all: ${PROJECT} fip_create
+
+ ${PROJECT}: ${OBJECTS} Makefile
+ @echo " LD $@"
+- ${Q}${HOSTCC} ${OBJECTS} -o $@ ${LDLIBS}
++ ${Q}${HOSTCC} ${OBJECTS} -o $@ ${LDLIBS} $(LDFLAGS)
+ @${ECHO_BLANK_LINE}
+ @echo "Built $@ successfully"
+ @${ECHO_BLANK_LINE}
diff --git a/package/boot/tfa-layerscape/patches/002-plat-nxp-tools-fix-a-makefile-bug-that-will-use-defa.patch b/package/boot/tfa-layerscape/patches/002-plat-nxp-tools-fix-a-makefile-bug-that-will-use-defa.patch
new file mode 100644
index 0000000000..92825310e0
--- /dev/null
+++ b/package/boot/tfa-layerscape/patches/002-plat-nxp-tools-fix-a-makefile-bug-that-will-use-defa.patch
@@ -0,0 +1,30 @@
+From 65e9a722b44bf28b98fe25b3b174761b47ec7dbd Mon Sep 17 00:00:00 2001
+From: Biwen Li
+Date: Mon, 1 Apr 2019 13:41:55 +0800
+Subject: [PATCH 2/3] plat/nxp/tools: fix a makefile bug that will use default
+ implicit rules
+
+The patch fix a makefile bug that will use default implicit rules,
+because do not have explicit rules for the destination files.
+
+Signed-off-by: Biwen Li
+---
+ plat/nxp/tools/Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/plat/nxp/tools/Makefile b/plat/nxp/tools/Makefile
+index 2095294b..0082a0be 100644
+--- a/plat/nxp/tools/Makefile
++++ b/plat/nxp/tools/Makefile
+@@ -53,7 +53,7 @@ ${PROJECT_2}: ${OBJECTS_2} Makefile
+ @echo "Built $@ successfully"
+ @${ECHO_BLANK_LINE}
+
+-%.o: %.c %.h Makefile
++%.o: %.c Makefile
+ @echo " CC $<"
+ ${Q}${HOSTCC} -c ${CPPFLAGS} ${CFLAGS} ${INCLUDE_PATHS} $< -o $@
+
+--
+2.17.1
+
diff --git a/package/boot/tfa-layerscape/patches/003-plat-nxp-tools-fix-create_pbl-and-byte_swap-host-bui.patch b/package/boot/tfa-layerscape/patches/003-plat-nxp-tools-fix-create_pbl-and-byte_swap-host-bui.patch
new file mode 100644
index 0000000000..ce4d9c48bf
--- /dev/null
+++ b/package/boot/tfa-layerscape/patches/003-plat-nxp-tools-fix-create_pbl-and-byte_swap-host-bui.patch
@@ -0,0 +1,60 @@
+From 8a458876013991fe2f288bbe4694264b16c3b9e9 Mon Sep 17 00:00:00 2001
+From: Biwen Li
+Date: Fri, 26 Jul 2019 15:44:10 +0800
+Subject: [PATCH 3/3] plat/nxp/tools: fix create_pbl and byte_swap host build
+
+Not compile create_pbl and byte_swap in the process of cross compilation
+
+Signed-off-by: Biwen Li
+---
+ plat/nxp/tools/pbl_ch2.mk | 3 ---
+ plat/nxp/tools/pbl_ch3.mk | 5 -----
+ 2 files changed, 8 deletions(-)
+
+diff --git a/plat/nxp/tools/pbl_ch2.mk b/plat/nxp/tools/pbl_ch2.mk
+index afa43520..ff624dd9 100644
+--- a/plat/nxp/tools/pbl_ch2.mk
++++ b/plat/nxp/tools/pbl_ch2.mk
+@@ -20,8 +20,6 @@ ifeq ($(RCW),"")
+ else
+ # Generate header for bl2.bin
+ $(Q)$(CST_DIR)/create_hdr_isbc --in ${BUILD_PLAT}/bl2.bin --out ${BUILD_PLAT}/hdr_bl2 ${BL2_INPUT_FILE}
+- # Compile create_pbl tool
+- ${Q}${MAKE} CPPFLAGS="-DVERSION='\"${VERSION_STRING}\"'" --no-print-directory -C ${PLAT_TOOL_PATH};\
+ # Add bl2.bin to RCW
+ ${CREATE_PBL} -r ${RCW} -i ${BUILD_PLAT}/bl2.bin -b ${BOOT_MODE} -c ${SOC_NUM} -d ${BL2_BASE} -e ${BL2_BASE}\
+ -o ${BUILD_PLAT}/bl2_${BOOT_MODE}.pbl ;\
+@@ -43,7 +41,6 @@ ifeq ($(RCW),"")
+ ${Q}echo "Platform ${PLAT} requires rcw file. Please set RCW to point to the right RCW file for boot mode ${BOOT_MODE}"
+ else
+ # -a option appends the image for Chassis 3 devices in case of non secure boot
+- ${Q}${MAKE} CPPFLAGS="-DVERSION='\"${VERSION_STRING}\"'" --no-print-directory -C ${PLAT_TOOL_PATH};
+ ${CREATE_PBL} -r ${RCW} -i ${BUILD_PLAT}/bl2.bin -b ${BOOT_MODE} -c ${SOC_NUM} -d ${BL2_BASE} -e ${BL2_BASE} \
+ -o ${BUILD_PLAT}/bl2_${BOOT_MODE}.pbl ;
+ # Swapping of RCW is required for QSPi Chassis 2 devices
+diff --git a/plat/nxp/tools/pbl_ch3.mk b/plat/nxp/tools/pbl_ch3.mk
+index 944ae3bb..9aa8f635 100644
+--- a/plat/nxp/tools/pbl_ch3.mk
++++ b/plat/nxp/tools/pbl_ch3.mk
+@@ -27,9 +27,6 @@ else
+ # Generate header for bl2.bin
+ $(Q)$(CST_DIR)/create_hdr_isbc --in ${BUILD_PLAT}/bl2.bin --out ${BUILD_PLAT}/hdr_bl2 ${BL2_INPUT_FILE}
+
+- # Compile create_pbl tool
+- ${Q}${MAKE} CPPFLAGS="-DVERSION='\"${VERSION_STRING}\"'" --no-print-directory -C ${PLAT_TOOL_PATH};\
+-
+ # Add Block Copy command for bl2.bin to RCW
+ ${CREATE_PBL} -r ${RCW} -i ${BUILD_PLAT}/bl2.bin -b ${BOOT_MODE} -c ${SOC_NUM} -d ${BL2_BASE} -e ${BL2_BASE}\
+ -o ${BUILD_PLAT}/bl2_${BOOT_MODE}.pbl -f ${BL2_SRC_OFFSET};\
+@@ -57,8 +54,6 @@ else #SECURE_BOOT
+ ifeq ($(RCW),"")
+ ${Q}echo "Platform ${PLAT} requires rcw file. Please set RCW to point to the right RCW file for boot mode ${BOOT_MODE}"
+ else
+- ${Q}${MAKE} CPPFLAGS="-DVERSION='\"${VERSION_STRING}\"'" --no-print-directory -C ${PLAT_TOOL_PATH};
+-
+ # Add Block Copy command and populate boot loc ptrfor bl2.bin to RCW
+ ${CREATE_PBL} -r ${RCW} -i ${BUILD_PLAT}/bl2.bin -b ${BOOT_MODE} -c ${SOC_NUM} -d ${BL2_BASE} -e ${BL2_BASE} \
+ -o ${BUILD_PLAT}/bl2_${BOOT_MODE}.pbl -f ${BL2_SRC_OFFSET};
+--
+2.17.1
+
diff --git a/package/boot/uboot-ar71xx/patches/023-musl-compat.patch b/package/boot/uboot-ar71xx/patches/023-musl-compat.patch
new file mode 100644
index 0000000000..1dacc993e7
--- /dev/null
+++ b/package/boot/uboot-ar71xx/patches/023-musl-compat.patch
@@ -0,0 +1,13 @@
+--- a/include/compiler.h 2018-08-29
++++ b/include/compiler.h 2018-08-29
+@@ -46,6 +46,10 @@ extern int errno;
+ #ifdef __linux__
+ # include
+ # include
++#ifndef __GLIBC__
++typedef unsigned long ulong;
++typedef unsigned int uint;
++#endif
+ #elif defined(__MACH__) || defined(__FreeBSD__)
+ # include
+ typedef unsigned long ulong;
diff --git a/package/boot/uboot-at91/Makefile b/package/boot/uboot-at91/Makefile
index f0a4ba56c2..547b72f8d9 100644
--- a/package/boot/uboot-at91/Makefile
+++ b/package/boot/uboot-at91/Makefile
@@ -7,12 +7,12 @@
include $(TOPDIR)/rules.mk
-PKG_VERSION:=linux4sam_5.8
+PKG_VERSION:=linux4sam_6.0
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/linux4sam/u-boot-at91.git
-PKG_SOURCE_VERSION:=59f202622154f82e708a6ca2bf86350a5c1b2d33
+PKG_SOURCE_VERSION:=1e7d2e5973c1fb780e55e28a801c6c574158ac14
include $(INCLUDE_DIR)/u-boot.mk
include $(INCLUDE_DIR)/package.mk
@@ -26,13 +26,21 @@ endef
define U-Boot/at91sam9m10g45ek_nandflash
NAME:=AT91SAM9M10G45-EK board (NandFlash)
- BUILD_SUBTARGET:=legacy
+ BUILD_SUBTARGET:=sam9x
BUILD_DEVICES:=at91sam9m10g45ek
endef
define U-Boot/at91sam9x5ek_nandflash
NAME:=AT91SAM9X5-EK board (NandFlash)
- BUILD_SUBTARGET:=legacy
+ BUILD_SUBTARGET:=sam9x
+ BUILD_DEVICES:=at91sam9g15ek at91sam9g25ek \
+ at91sam9g35ek at91sam9x25ek \
+ at91sam9x35ek
+endef
+
+define U-Boot/at91sam9x5ek_mmc
+ NAME:=AT91SAM9X5-EK board (SDcard)
+ BUILD_SUBTARGET:=sam9x
BUILD_DEVICES:=at91sam9g15ek at91sam9g25ek \
at91sam9g35ek at91sam9x25ek \
at91sam9x35ek
@@ -40,73 +48,74 @@ endef
define U-Boot/sama5d3_xplained_nandflash
NAME:=SAMA5D3 Xplained board (NandFlash)
- BUILD_SUBTARGET:=sama5d3
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d3_xplained
endef
define U-Boot/sama5d3_xplained_mmc
NAME:=SAMA5D3 Xplained board (SDcard)
- BUILD_SUBTARGET:=sama5d3
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d3_xplained
endef
define U-Boot/sama5d2_xplained_spiflash
NAME:=SAMA5D2 Xplained board (SPI Flash)
- BUILD_SUBTARGET:=sama5d2
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d2_xplained
endef
define U-Boot/sama5d2_xplained_mmc
NAME:=SAMA5D2 Xplained board (SDcard/EMMC)
- BUILD_SUBTARGET:=sama5d2
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d2_xplained
endef
define U-Boot/sama5d4_xplained_spiflash
NAME:=SAMA5D4 Xplained board (SPI Flash)
- BUILD_SUBTARGET:=sama5d4
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d4_xplained
endef
define U-Boot/sama5d4_xplained_mmc
NAME:=SAMA5D4 Xplained board (SDcard)
- BUILD_SUBTARGET:=sama5d4
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d4_xplained
endef
define U-Boot/sama5d4_xplained_nandflash
NAME:=SAMA5D4 Xplained board (NandFlash)
- BUILD_SUBTARGET:=sama5d4
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d4_xplained
endef
-define U-Boot/sama5d27_som1_ek_mmc
- NAME:=SAMA5D27 SOM1 Ek (SDCard)
- BUILD_SUBTARGET:=sama5d2
+define U-Boot/sama5d27_som1_ek_mmc1
+ NAME:=SAMA5D27 SOM1 Ek (SDCard1)
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d27_som1_ek
endef
-define U-Boot/sama5d27_som1_ek_spiflash
+define U-Boot/sama5d27_som1_ek_qspiflash
NAME:=SAMA5D27 SOM1 Ek (QSPI Flash)
- BUILD_SUBTARGET:=sama5d2
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d27_som1_ek
endef
define U-Boot/sama5d2_ptc_ek_nandflash
NAME:=SAMA5D2 PTC Ek (Nand Flash)
- BUILD_SUBTARGET:=sama5d2
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d2_ptc_ek
endef
define U-Boot/sama5d2_ptc_ek_mmc
NAME:=SAMA5D2 PTC Ek (SDCard)
- BUILD_SUBTARGET:=sama5d2
+ BUILD_SUBTARGET:=sama5
BUILD_DEVICES:=at91-sama5d2_ptc_ek
endef
UBOOT_TARGETS := \
at91sam9m10g45ek_nandflash \
at91sam9x5ek_nandflash \
+ at91sam9x5ek_mmc \
sama5d3_xplained_nandflash \
sama5d3_xplained_mmc \
sama5d2_xplained_mmc \
@@ -114,15 +123,15 @@ UBOOT_TARGETS := \
sama5d4_xplained_mmc \
sama5d4_xplained_spiflash \
sama5d4_xplained_nandflash\
- sama5d27_som1_ek_mmc \
- sama5d27_som1_ek_spiflash \
+ sama5d27_som1_ek_mmc1 \
+ sama5d27_som1_ek_qspiflash \
sama5d2_ptc_ek_nandflash \
sama5d2_ptc_ek_mmc
define Build/Compile
+$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
CROSS_COMPILE=$(TARGET_CROSS) \
- DTC=$(LINUX_DIR)/scripts/dtc/dtc \
+ DTC=$(PKG_BUILD_DIR)/scripts/dtc/dtc \
KCFLAGS="$(filter-out -fstack-protector \
-mfloat-abi=hard, $(TARGET_CFLAGS)) -mfloat-abi=soft"
endef
diff --git a/package/boot/uboot-at91/patches/001-fix-Wformat-security.patch b/package/boot/uboot-at91/patches/001-fix-Wformat-security.patch
new file mode 100644
index 0000000000..18f9af742c
--- /dev/null
+++ b/package/boot/uboot-at91/patches/001-fix-Wformat-security.patch
@@ -0,0 +1,13 @@
+diff --git a/cmd/version.c b/cmd/version.c
+index b2fffe9..bcbbeb1 100644
+--- a/cmd/version.c
++++ b/cmd/version.c
+@@ -18,7 +18,7 @@ static int do_version(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
+ {
+ char buf[DISPLAY_OPTIONS_BANNER_LENGTH];
+
+- printf(display_options_get_banner(false, buf, sizeof(buf)));
++ printf("%s",display_options_get_banner(false, buf, sizeof(buf)));
+ #ifdef CC_VERSION_STRING
+ puts(CC_VERSION_STRING "\n");
+ #endif
diff --git a/package/boot/uboot-envtools/Makefile b/package/boot/uboot-envtools/Makefile
index 15579e966b..1c6b789716 100644
--- a/package/boot/uboot-envtools/Makefile
+++ b/package/boot/uboot-envtools/Makefile
@@ -9,16 +9,16 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=uboot-envtools
PKG_DISTNAME:=u-boot
-PKG_VERSION:=2018.03
-PKG_RELEASE:=3
+PKG_VERSION:=2019.07
+PKG_RELEASE:=2
PKG_SOURCE_PROTO:=git
PKG_SOURCE:=$(PKG_DISTNAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_SUBDIR:=$(PKG_DISTNAME)-$(PKG_VERSION)
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_DISTNAME)-$(PKG_VERSION)
PKG_SOURCE_URL:=https://git.denx.de/u-boot.git
-PKG_SOURCE_VERSION:=f95ab1fb6e37f0601f397091bb011edf7a98b890
-PKG_MIRROR_HASH:=b50d8b6fe0d90b92c8c147457b1b4c2ed1cdb03191085cfc57fdad77c0bfffab
+PKG_SOURCE_VERSION:=e5aee22e4be75e75a854ab64503fc80598bc2004
+PKG_MIRROR_HASH:=58c1ecaf901b6bf65c5e872b5449b642694ae5acebf61f91f0d4bc20b4c654b7
PKG_BUILD_DEPENDS:=fstools
diff --git a/package/boot/uboot-envtools/files/ar71xx b/package/boot/uboot-envtools/files/ar71xx
index bc415e3b8c..9625c6bdd1 100644
--- a/package/boot/uboot-envtools/files/ar71xx
+++ b/package/boot/uboot-envtools/files/ar71xx
@@ -85,6 +85,11 @@ dr342|\
dr531)
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0xf800" "0x10000"
;;
+gl-ar150|\
+gl-domino|\
+gl-mifi)
+ ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x8000" "0x10000"
+ ;;
rambutan)
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x20000" "0x20000"
ubootenv_add_uci_config "/dev/mtd1" "0x100000" "0x20000" "0x20000"
diff --git a/package/boot/uboot-envtools/files/ath79 b/package/boot/uboot-envtools/files/ath79
index f7fad079cb..15bd9ffb6e 100644
--- a/package/boot/uboot-envtools/files/ath79
+++ b/package/boot/uboot-envtools/files/ath79
@@ -13,16 +13,25 @@ touch /etc/config/ubootenv
board=$(board_name)
case "$board" in
-buffalo,wzr-hp-ag300h)
- ubootenv_add_uci_config "/dev/mtd3" "0x0" "0x10000" "0x10000"
- ;;
+alfa-network,ap121f|\
buffalo,bhr-4grv2|\
engenius,ecb1750|\
+etactica,eg200|\
+glinet,gl-ar300m-lite|\
glinet,gl-ar300m-nand|\
glinet,gl-ar300m-nor|\
+glinet,gl-ar300m16|\
+glinet,gl-ar750s-nor|\
+glinet,gl-ar750s-nor-nand|\
librerouter,librerouter-v1|\
netgear,ex6400|\
netgear,ex7300|\
+netgear,wndr4300-v2|\
+netgear,wndr4500-v3|\
+netgear,wnr1000-v2|\
+netgear,wnr2000-v3|\
+netgear,wnr2200-8m|\
+netgear,wnr2200-16m|\
netgear,wnr612-v2|\
ocedo,koala|\
ocedo,raccoon|\
@@ -32,9 +41,23 @@ yuncore,a782|\
yuncore,xd4200)
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x10000" "0x10000"
;;
-netgear,wndr3700)
+buffalo,wzr-hp-ag300h)
+ ubootenv_add_uci_config "/dev/mtd3" "0x0" "0x10000" "0x10000"
+ ;;
+glinet,gl-ar150)
+ ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x8000" "0x10000"
+ ;;
+netgear,wndr3700|\
+netgear,wndr3700-v2)
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x20000" "0x10000"
;;
+netgear,wndr3700-v4|\
+netgear,wndr4300)
+ ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x40000" "0x20000"
+ ;;
+qihoo,c301)
+ ubootenv_add_uci_config "/dev/mtd9" "0x0" "0x10000" "0x10000"
+ ;;
esac
config_load ubootenv
diff --git a/package/boot/uboot-envtools/files/imx6 b/package/boot/uboot-envtools/files/imx6
index fb05f13346..330efb2833 100644
--- a/package/boot/uboot-envtools/files/imx6
+++ b/package/boot/uboot-envtools/files/imx6
@@ -24,8 +24,8 @@ apalis*)
ubootenv_add_uci_config /dev/mtd1 0x80000 0x20000 0x40000
else
# board boots from microSD
- ubootenv_add_uci_config /dev/mmcblk0 0xb1400 0x20000 0x20000
- ubootenv_add_uci_config /dev/mmcblk0 0xd1400 0x20000 0x20000
+ ubootenv_add_uci_config /dev/mmcblk0 0xb1400 0x20000
+ ubootenv_add_uci_config /dev/mmcblk0 0xd1400 0x20000
fi
;;
wandboard)
diff --git a/package/boot/uboot-envtools/files/mvebu b/package/boot/uboot-envtools/files/mvebu
index c2e746d959..7902384a37 100644
--- a/package/boot/uboot-envtools/files/mvebu
+++ b/package/boot/uboot-envtools/files/mvebu
@@ -36,6 +36,9 @@ linksys,rango|\
linksys,venom)
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x20000" "0x20000"
;;
+methode,udpu)
+ ubootenv_add_uci_config "/dev/mtd0" "0x180000" "0x10000" "0x10000"
+ ;;
esac
config_load ubootenv
diff --git a/package/boot/uboot-envtools/files/ramips b/package/boot/uboot-envtools/files/ramips
index 01171ead1c..ade55dd1cb 100644
--- a/package/boot/uboot-envtools/files/ramips
+++ b/package/boot/uboot-envtools/files/ramips
@@ -20,17 +20,17 @@ alfa-network,r36m-e4g|\
alfa-network,tube-e4g)
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x1000" "0x1000"
;;
-all0256n-4M|\
-all0256n-8M|\
-all5002)
+allnet,all0256n-4m|\
+allnet,all0256n-8m|\
+allnet,all5002)
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x10000" "0x10000"
;;
-linkits7688|\
-miwifi-nano|\
-sk-wb8|\
-wsr-1166|\
-wsr-600|\
-zbt-wg2626)
+buffalo,wsr-1166dhp|\
+buffalo,wsr-600dhp|\
+mediatek,linkit-smart-7688|\
+samknows,whitebox-v8|\
+xiaomi,miwifi-nano|\
+zbtlink,zbt-wg2626)
ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x1000" "0x10000"
;;
xiaomi,mir3p|\
diff --git a/package/boot/uboot-envtools/files/uboot-envtools.sh b/package/boot/uboot-envtools/files/uboot-envtools.sh
index e21b283677..9218bc4e39 100644
--- a/package/boot/uboot-envtools/files/uboot-envtools.sh
+++ b/package/boot/uboot-envtools/files/uboot-envtools.sh
@@ -31,6 +31,6 @@ ubootenv_add_app_config() {
config_get envsize "$1" envsize
config_get secsize "$1" secsize
config_get numsec "$1" numsec
- echo "$dev $offset $envsize $secsize $numsec" >>/etc/fw_env.config
+ grep -q "^[[:space:]]*${dev}[[:space:]]*${offset}" /etc/fw_env.config || echo "$dev $offset $envsize $secsize $numsec" >>/etc/fw_env.config
}
diff --git a/package/boot/uboot-envtools/patches/001-compile.patch b/package/boot/uboot-envtools/patches/001-compile.patch
index 098772f557..5413aa4a41 100644
--- a/package/boot/uboot-envtools/patches/001-compile.patch
+++ b/package/boot/uboot-envtools/patches/001-compile.patch
@@ -1,6 +1,6 @@
--- a/tools/env/Makefile
+++ b/tools/env/Makefile
-@@ -10,6 +10,13 @@
+@@ -8,6 +8,13 @@
# with "CC" here for the maximum code reuse of scripts/Makefile.host.
override HOSTCC = $(CC)
@@ -12,5 +12,5 @@
+endif
+
# Compile for a hosted environment on the target
- HOST_EXTRACFLAGS = $(patsubst -I%,-idirafter%, $(filter -I%, $(UBOOTINCLUDE))) \
- -idirafter $(srctree)/tools/env \
+ HOST_EXTRACFLAGS = -I$(srctree)/tools \
+ $(patsubst -I%,-idirafter%, $(filter -I%, $(UBOOTINCLUDE))) \
diff --git a/package/boot/uboot-fritz4040/Makefile b/package/boot/uboot-fritz4040/Makefile
index 3d8c8fb4bb..2130581765 100644
--- a/package/boot/uboot-fritz4040/Makefile
+++ b/package/boot/uboot-fritz4040/Makefile
@@ -10,9 +10,9 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_SOURCE_URL:=https://github.com/chunkeey/FritzBox-4040-UBOOT
PKG_SOURCE_PROTO:=git
-PKG_SOURCE_VERSION:=5da78cca60814ea31065a50376d9c905425b03a1
-PKG_SOURCE_DATE:=2018-12-09
-PKG_MIRROR_HASH:=ff7bc2498de1066dde24d7ef68e440c3847244a5b8bb35ce4275e3918f230aa3
+PKG_SOURCE_VERSION:=f92be9d783b1210c020d5d6129e210a94bb7e290
+PKG_SOURCE_DATE:=2019-10-19
+PKG_MIRROR_HASH:=e40a7f624b1758b276f81c765ef1da568c595b8bd54568b9cceca7d170ebc612
PKG_RELEASE:=1
@@ -21,11 +21,29 @@ include $(INCLUDE_DIR)/package.mk
define U-Boot/Default
BUILD_TARGET:=ipq40xx
- UBOOT_IMAGE:=uboot-fritz4040.bin
+ BUILD_SUBTARGET:=generic
+ UBOOT_BOARD:=$(1)
+ UBOOT_IMAGE:=uboot-$(1).bin
+endef
+
+define U-Boot/fritz1200
+ NAME:=FritzRepeater 1200
+ BUILD_DEVICES:=avm_fritzrepeater-1200
+endef
+
+define U-Boot/fritz3000
+ NAME:=FritzRepeater 3000
+ BUILD_DEVICES:=avm_fritzrepeater-3000
endef
define U-Boot/fritz4040
NAME:=FritzBox 4040
+ BUILD_DEVICES:=avm_fritzbox-4040
+endef
+
+define U-Boot/fritz7530
+ NAME:=FritzBox 7530
+ BUILD_DEVICES:=avm_fritzbox-7530
endef
UBOOT_CONFIGURE_VARS += USE_PRIVATE_LIBGCC=yes
@@ -34,14 +52,19 @@ export DTC
define Build/Configure
$(Build/Configure/U-Boot)
- $(HOSTCC) -o $(PKG_BUILD_DIR)/fritz/lzma2eva $(PKG_BUILD_DIR)/fritz/src/lzma2eva.c
- $(HOSTCC) -o $(PKG_BUILD_DIR)/fritz/tichksum $(PKG_BUILD_DIR)/fritz/src/tichksum.c
+ $(HOSTCC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $(PKG_BUILD_DIR)/fritz/lzma2eva $(PKG_BUILD_DIR)/fritz/src/lzma2eva.c -lz
+ $(HOSTCC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -o $(PKG_BUILD_DIR)/fritz/tichksum $(PKG_BUILD_DIR)/fritz/src/tichksum.c
ln -sf $(STAGING_DIR_HOST)/bin/lzma $(PKG_BUILD_DIR)/fritz
endef
define Build/Compile
$(Build/Compile/U-Boot)
- (cd $(PKG_BUILD_DIR); ./fritz/fritzcreator.sh;)
+ (cd $(PKG_BUILD_DIR); ./fritz/fritzcreator.sh $(UBOOT_BOARD);)
+endef
+
+define Build/InstallDev
+ $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
+ $(CP) $(PKG_BUILD_DIR)/$(UBOOT_IMAGE) $(STAGING_DIR_IMAGE)/$(UBOOT_IMAGE)
endef
define Package/u-boot/install
@@ -49,6 +72,6 @@ define Package/u-boot/install
$(INSTALL_BIN) $(PKG_BUILD_DIR)/upload-to-f4040.sh $(1)/
endef
-UBOOT_TARGETS := fritz4040
+UBOOT_TARGETS := fritz1200 fritz3000 fritz4040 fritz7530
$(eval $(call BuildPackage/U-Boot))
diff --git a/package/boot/uboot-imx6/Makefile b/package/boot/uboot-imx6/Makefile
index 3eba249bf3..193a35d27c 100644
--- a/package/boot/uboot-imx6/Makefile
+++ b/package/boot/uboot-imx6/Makefile
@@ -7,10 +7,10 @@
include $(TOPDIR)/rules.mk
-PKG_VERSION:=2018.03
+PKG_VERSION:=2019.04
PKG_RELEASE:=1
-PKG_HASH:=7e7477534409d5368eb1371ffde6820f0f79780a1a1f676161c48442cb303dfd
+PKG_HASH:=76b7772d156b3ddd7644c8a1736081e55b78828537ff714065d21dbade229bef
include $(INCLUDE_DIR)/u-boot.mk
include $(INCLUDE_DIR)/package.mk
@@ -20,6 +20,12 @@ define U-Boot/Default
UBOOT_IMAGE:=u-boot.imx
endef
+define U-Boot/apalis_imx6
+ NAME:=Toradex Apalis
+ UBOOT_IMAGE:=SPL u-boot.img u-boot-with-spl.imx
+ UBOOT_MAKE_FLAGS:=SPL u-boot.img u-boot-with-spl.imx
+endef
+
define U-Boot/mx6cuboxi
NAME:=SolidRun Cubox-i boards
UBOOT_IMAGE:=SPL u-boot.img
@@ -62,6 +68,7 @@ define U-Boot/wandboard
endef
UBOOT_TARGETS := \
+ apalis_imx6 \
mx6cuboxi \
mx6sabresd \
nitrogen6dl \
diff --git a/package/boot/uboot-imx6/patches/0001-imx6-apalis-Make-the-boot-process-more-generic.patch b/package/boot/uboot-imx6/patches/0001-imx6-apalis-Make-the-boot-process-more-generic.patch
new file mode 100644
index 0000000000..4de8ede39f
--- /dev/null
+++ b/package/boot/uboot-imx6/patches/0001-imx6-apalis-Make-the-boot-process-more-generic.patch
@@ -0,0 +1,123 @@
+From 42cc2cffb6d550fbb21dad033d2564d4da571015 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20=C5=A0tetiar?=
+Date: Sat, 1 Dec 2018 12:46:37 +0100
+Subject: [PATCH] imx6: apalis: Make the boot process more generic
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+I'm preparing support for Apalis imx6 boards in OpenWrt and I've ended
+up with quite huge patchset against upstream U-Boot 2018.03, so I'm
+trying to propose more generic way of boot process handling.
+
+In OpenWrt we usually have kernel, dtbs and U-Boot boot script in boot
+partition with ext4fs, so for some use cases it would be handy to be
+able to replace some of the files in the boot partion, that's why I've
+added write support to the ext4.
+
+I've added `set_blkcnt` environment variable which is needed for every
+`mmc write` command as we need to always specify size in block count.
+This is copy&pasted from official Toradex's flashing scripts, so all the
+credits for this work belongs to them.
+
+Currently the rootfs location is passed via mmcblk number and the
+problem with this approach is that the mmcblk number for the boot device
+changes depending on the kernel version and imx6 SoC type. In order to
+avoid such issues, use the UUID method to specify the rootfs location.
+
+I've added new boot sequence, where we first try to load and run boot
+script defined in the new `script` variable, so the boot process could
+be more generic and overridden by the distro. When the boot script isn't
+loaded, it will use the previous boot sequence so it should be backward
+compatible.
+
+For the recovery purposes and better end user experience I've added boot
+from SDP as the last boot command if every other boot option fails. I
+plan to use SDP as official flashing/recovery procedure in OpenWrt for
+Apalis imx6 boards.
+
+I've copy&pasted almost everything from the `f086812a mx6sxsabresd: Use
+PARTUUID to specify the rootfs location` commit, so credits for the rest
+of this patch belongs to Fabio.
+
+Cc: Stefan Agner
+Cc: Max Krummenacher
+Signed-off-by: Petr Štetiar
+---
+ configs/apalis_imx6_defconfig | 2 ++
+ include/configs/apalis_imx6.h | 26 +++++++++++++++++++++-----
+ 2 files changed, 23 insertions(+), 5 deletions(-)
+
+--- a/configs/apalis_imx6_defconfig
++++ b/configs/apalis_imx6_defconfig
+@@ -40,6 +40,7 @@ CONFIG_CMD_DFU=y
+ CONFIG_CMD_GPIO=y
+ CONFIG_CMD_I2C=y
+ CONFIG_CMD_MMC=y
++CONFIG_CMD_PART=y
+ CONFIG_CMD_USB=y
+ CONFIG_CMD_USB_SDP=y
+ CONFIG_CMD_USB_MASS_STORAGE=y
+@@ -49,6 +50,7 @@ CONFIG_CMD_PING=y
+ CONFIG_CMD_BMP=y
+ CONFIG_CMD_CACHE=y
+ CONFIG_CMD_EXT4=y
++CONFIG_CMD_EXT4_WRITE=y
+ CONFIG_CMD_FAT=y
+ CONFIG_CMD_FS_GENERIC=y
+ CONFIG_ENV_IS_IN_MMC=y
+--- a/include/configs/apalis_imx6.h
++++ b/include/configs/apalis_imx6.h
+@@ -138,9 +138,9 @@
+ "imx6q-colibri-cam-eval-v3.dtb fat 0 1"
+
+ #define EMMC_BOOTCMD \
+- "emmcargs=ip=off root=/dev/mmcblk0p2 rw,noatime rootfstype=ext3 " \
++ "emmcargs=ip=off root=PARTUUID=${uuid} rw,noatime rootfstype=ext3 " \
+ "rootwait\0" \
+- "emmcboot=run setup; " \
++ "emmcboot=run setup; run finduuid;" \
+ "setenv bootargs ${defargs} ${emmcargs} ${setupargs} " \
+ "${vidargs}; echo Booting from internal eMMC chip...; " \
+ "run emmcdtbload; load mmc 0:1 ${kernel_addr_r} " \
+@@ -197,10 +197,17 @@
+ #define FDT_FILE "imx6q-apalis_v1_0-eval.dtb"
+ #endif
+ #define CONFIG_EXTRA_ENV_SETTINGS \
+- "bootcmd=run emmcboot ; echo ; echo emmcboot failed ; " \
++ "script=boot.scr\0" \
++ "finduuid=part uuid mmc 0:2 uuid\0" \
++ "loadbootscript=" \
++ "load mmc 0:1 ${loadaddr} ${script};\0" \
++ "bootscript=echo Running bootscript from mmc ...; " \
++ "source\0" \
++ "bootcmd_default=run emmcboot ; echo ; echo emmcboot failed ; " \
+ "run nfsboot ; echo ; echo nfsboot failed ; " \
+ "usb start ;" \
+- "setenv stdout serial,vga ; setenv stdin serial,usbkbd\0" \
++ "setenv stdout serial,vga ; setenv stdin serial,usbkbd;" \
++ "sdp 0\0" \
+ "boot_file=uImage\0" \
+ "console=ttymxc0\0" \
+ "defargs=enable_wait_mode=off vmalloc=400M\0" \
+@@ -228,7 +235,16 @@
+ "vidargs=mxc_hdmi.only_cea=1 " \
+ "video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24 " \
+ "video=mxcfb1:off video=mxcfb2:off video=mxcfb3:off " \
+- "fbmem=32M\0 "
++ "fbmem=32M\0 " \
++ "set_blkcnt=setexpr blkcnt ${filesize} + 0x1ff && setexpr blkcnt ${blkcnt} / 0x200\0"
++
++#define CONFIG_BOOTCOMMAND \
++ "mmc dev 0;" \
++ "if run loadbootscript; then " \
++ "run bootscript; " \
++ "else " \
++ "run bootcmd_default; " \
++ "fi; "
+
+ /* Miscellaneous configurable options */
+ #undef CONFIG_SYS_CBSIZE
+--
+1.9.1
+
diff --git a/package/boot/uboot-imx6/patches/100-wandboard-enable-fit.patch b/package/boot/uboot-imx6/patches/100-wandboard-enable-fit.patch
index 6bfcc1ff71..2fd207e11c 100644
--- a/package/boot/uboot-imx6/patches/100-wandboard-enable-fit.patch
+++ b/package/boot/uboot-imx6/patches/100-wandboard-enable-fit.patch
@@ -1,6 +1,6 @@
--- a/configs/wandboard_defconfig
+++ b/configs/wandboard_defconfig
-@@ -27,7 +27,7 @@ CONFIG_CMD_I2C=y
+@@ -30,7 +30,7 @@ CONFIG_CMD_I2C=y
CONFIG_CMD_MMC=y
CONFIG_CMD_SATA=y
CONFIG_CMD_USB=y
@@ -8,8 +8,8 @@
+# CONFIG_CMD_CACHE is not set
CONFIG_CMD_EXT4_WRITE=y
CONFIG_ENV_IS_IN_MMC=y
- CONFIG_DM=y
-@@ -39,3 +39,5 @@ CONFIG_USB_STORAGE=y
+ CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
+@@ -44,3 +44,5 @@ CONFIG_USB=y
CONFIG_VIDEO=y
# CONFIG_VIDEO_SW_CURSOR is not set
CONFIG_OF_LIBFDT=y
diff --git a/package/boot/uboot-imx6/patches/110-mx6cuboxi-mmc-fallback.patch b/package/boot/uboot-imx6/patches/110-mx6cuboxi-mmc-fallback.patch
index 0883eb7b28..2b2fde5ec9 100644
--- a/package/boot/uboot-imx6/patches/110-mx6cuboxi-mmc-fallback.patch
+++ b/package/boot/uboot-imx6/patches/110-mx6cuboxi-mmc-fallback.patch
@@ -1,7 +1,7 @@
--- a/board/solidrun/mx6cuboxi/mx6cuboxi.c
+++ b/board/solidrun/mx6cuboxi/mx6cuboxi.c
-@@ -334,6 +334,12 @@ int board_init(void)
- return ret;
+@@ -290,6 +290,12 @@ static void setup_iomux_enet(void)
+ udelay(100);
}
+void board_boot_order(u32 *spl_boot_list)
@@ -10,12 +10,12 @@
+ spl_boot_list[1] = BOOT_DEVICE_MMC1;
+}
+
- static bool is_hummingboard(void)
+ int board_phy_config(struct phy_device *phydev)
{
- int val1, val2;
+ if (phydev->drv->config)
--- a/arch/arm/mach-imx/spl.c
+++ b/arch/arm/mach-imx/spl.c
-@@ -136,7 +136,7 @@ int g_dnl_bind_fixup(struct usb_device_d
+@@ -176,7 +176,7 @@ int g_dnl_bind_fixup(struct usb_device_d
/* called from spl_mmc to see type of boot mode for storage (RAW or FAT) */
u32 spl_boot_mode(const u32 boot_device)
{
diff --git a/package/boot/uboot-kirkwood/Makefile b/package/boot/uboot-kirkwood/Makefile
index e724bdf614..4ce1485a13 100644
--- a/package/boot/uboot-kirkwood/Makefile
+++ b/package/boot/uboot-kirkwood/Makefile
@@ -7,10 +7,10 @@
include $(TOPDIR)/rules.mk
-PKG_VERSION:=2018.03
+PKG_VERSION:=2019.01
PKG_RELEASE:=1
-PKG_HASH:=7e7477534409d5368eb1371ffde6820f0f79780a1a1f676161c48442cb303dfd
+PKG_HASH:=50bd7e5a466ab828914d080d5f6a432345b500e8fba1ad3b7b61e95e60d51c22
include $(INCLUDE_DIR)/u-boot.mk
include $(INCLUDE_DIR)/package.mk
diff --git a/package/boot/uboot-kirkwood/patches/007-nsa310-uboot-generic.patch b/package/boot/uboot-kirkwood/patches/007-nsa310-uboot-generic.patch
index 264c160748..25d252d13f 100644
--- a/package/boot/uboot-kirkwood/patches/007-nsa310-uboot-generic.patch
+++ b/package/boot/uboot-kirkwood/patches/007-nsa310-uboot-generic.patch
@@ -35,14 +35,14 @@ NOTE: this patch is ready for upstream, LEDE-specific parts are in
config TARGET_NSA310S
bool "Zyxel NSA310S"
-@@ -80,6 +83,7 @@ source "board/raidsonic/ib62x0/Kconfig"
+@@ -86,6 +89,7 @@ source "board/raidsonic/ib62x0/Kconfig"
source "board/Seagate/dockstar/Kconfig"
source "board/Seagate/goflexhome/Kconfig"
source "board/Seagate/nas220/Kconfig"
+source "board/zyxel/nsa310/Kconfig"
source "board/zyxel/nsa310s/Kconfig"
-
- endif
+ source "board/alliedtelesis/SBx81LIFKW/Kconfig"
+ source "board/alliedtelesis/SBx81LIFXCAT/Kconfig"
--- /dev/null
+++ b/board/zyxel/nsa310/Kconfig
@@ -0,0 +1,12 @@
@@ -505,16 +505,19 @@ NOTE: this patch is ready for upstream, LEDE-specific parts are in
+#endif /* __NSA310_H */
--- /dev/null
+++ b/configs/nsa310_defconfig
-@@ -0,0 +1,37 @@
+@@ -0,0 +1,40 @@
+CONFIG_ARM=y
+CONFIG_KIRKWOOD=y
+CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TARGET_NSA310=y
+CONFIG_IDENT_STRING="\nZyXEL NSA310 1-Bay Power Media Server"
++CONFIG_NR_DRAM_BANKS=2
+CONFIG_BOOTDELAY=3
+CONFIG_SYS_PROMPT="NSA310> "
+# CONFIG_CMD_IMLS is not set
+# CONFIG_CMD_FLASH is not set
++CONFIG_MVGBE=y
++CONFIG_MII=y
+CONFIG_SYS_NS16550=y
+CONFIG_CMD_FDT=y
+CONFIG_OF_LIBFDT=y
@@ -545,7 +548,7 @@ NOTE: this patch is ready for upstream, LEDE-specific parts are in
+CONFIG_SYS_LONGHELP=y
--- /dev/null
+++ b/include/configs/nsa310.h
-@@ -0,0 +1,119 @@
+@@ -0,0 +1,117 @@
+/* Copyright (C) 2015-2016 bodhi
+ *
+ * Based on
@@ -654,8 +657,6 @@ NOTE: this patch is ready for upstream, LEDE-specific parts are in
+ */
+#define CONFIG_JFFS2_NAND
+#define CONFIG_JFFS2_LZO
-+#define CONFIG_MTD_DEVICE /* needed for mtdparts commands */
-+#define CONFIG_MTD_PARTITIONS
+
+/*
+ * Date Time
diff --git a/package/boot/uboot-kirkwood/patches/008-nsa325-uboot-generic.patch b/package/boot/uboot-kirkwood/patches/008-nsa325-uboot-generic.patch
index 0ce3fe02e1..d0bef45f88 100644
--- a/package/boot/uboot-kirkwood/patches/008-nsa325-uboot-generic.patch
+++ b/package/boot/uboot-kirkwood/patches/008-nsa325-uboot-generic.patch
@@ -1,22 +1,23 @@
--- a/arch/arm/mach-kirkwood/Kconfig
+++ b/arch/arm/mach-kirkwood/Kconfig
-@@ -62,6 +62,9 @@ config TARGET_NSA310
- config TARGET_NSA310S
- bool "Zyxel NSA310S"
-
+@@ -68,6 +68,9 @@ config TARGET_SBx81LIFKW
+ config TARGET_SBx81LIFXCAT
+ bool "Allied Telesis SBx81GP24/SBx81GT24"
+
+config TARGET_NSA325
+ bool "Zyxel NSA325 board"
+
endchoice
-
+
config SYS_SOC
-@@ -85,5 +88,6 @@ source "board/Seagate/goflexhome/Kconfig
+@@ -91,6 +94,7 @@ source "board/Seagate/goflexhome/Kconfig
source "board/Seagate/nas220/Kconfig"
source "board/zyxel/nsa310/Kconfig"
source "board/zyxel/nsa310s/Kconfig"
+source "board/zyxel/nsa325/Kconfig"
-
- endif
+ source "board/alliedtelesis/SBx81LIFKW/Kconfig"
+ source "board/alliedtelesis/SBx81LIFXCAT/Kconfig"
+
--- /dev/null
+++ b/board/zyxel/nsa325/Kconfig
@@ -0,0 +1,12 @@
@@ -488,16 +489,19 @@
+#endif /* __NSA325_H */
--- /dev/null
+++ b/configs/nsa325_defconfig
-@@ -0,0 +1,37 @@
+@@ -0,0 +1,40 @@
+CONFIG_ARM=y
+CONFIG_KIRKWOOD=y
+CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TARGET_NSA325=y
+CONFIG_IDENT_STRING="\nZyXEL NSA325 2-Bay Power Media Server"
++CONFIG_NR_DRAM_BANKS=2
+CONFIG_BOOTDELAY=3
+CONFIG_SYS_PROMPT="NSA325> "
+# CONFIG_CMD_IMLS is not set
+# CONFIG_CMD_FLASH is not set
++CONFIG_MVGBE=y
++CONFIG_MII=y
+CONFIG_SYS_NS16550=y
+CONFIG_CMD_FDT=y
+CONFIG_OF_LIBFDT=y
@@ -528,7 +532,7 @@
+CONFIG_SYS_LONGHELP=y
--- /dev/null
+++ b/include/configs/nsa325.h
-@@ -0,0 +1,122 @@
+@@ -0,0 +1,120 @@
+/*
+ * (C) Copyright 2016 bodhi
+ *
@@ -638,8 +642,6 @@
+ */
+#define CONFIG_JFFS2_NAND
+#define CONFIG_JFFS2_LZO
-+#define CONFIG_MTD_DEVICE /* needed for mtdparts commands */
-+#define CONFIG_MTD_PARTITIONS
+
+/*
+ * Date Time
diff --git a/package/boot/uboot-kirkwood/patches/010-pogoplug_v4.patch b/package/boot/uboot-kirkwood/patches/010-pogoplug_v4.patch
index 568c8bf5f0..8aed96ad18 100644
--- a/package/boot/uboot-kirkwood/patches/010-pogoplug_v4.patch
+++ b/package/boot/uboot-kirkwood/patches/010-pogoplug_v4.patch
@@ -10,7 +10,7 @@
config TARGET_DNS325
bool "dns325 Board"
-@@ -77,6 +80,7 @@ source "board/Marvell/guruplug/Kconfig"
+@@ -83,6 +86,7 @@ source "board/Marvell/guruplug/Kconfig"
source "board/Marvell/sheevaplug/Kconfig"
source "board/buffalo/lsxl/Kconfig"
source "board/cloudengines/pogo_e02/Kconfig"
@@ -20,7 +20,7 @@
source "board/keymile/km_arm/Kconfig"
--- a/arch/arm/mach-kirkwood/include/mach/kw88f6192.h
+++ b/arch/arm/mach-kirkwood/include/mach/kw88f6192.h
-@@ -16,6 +16,6 @@
+@@ -15,6 +15,6 @@
#define KW_REGS_PHY_BASE KW88F6192_REGS_PHYS_BASE
/* TCLK Core Clock defination */
@@ -30,7 +30,7 @@
#endif /* _CONFIG_KW88F6192_H */
--- a/arch/arm/mach-kirkwood/include/mach/mpp.h
+++ b/arch/arm/mach-kirkwood/include/mach/mpp.h
-@@ -217,10 +217,12 @@
+@@ -216,10 +216,12 @@
#define MPP33_GPIO MPP( 33, 0x0, 1, 1, 0, 1, 1, 1 )
#define MPP33_TDM_DTX MPP( 33, 0x2, 0, 1, 0, 0, 1, 1 )
#define MPP33_GE1_13 MPP( 33, 0x3, 0, 0, 0, 1, 1, 1 )
@@ -532,16 +532,19 @@
+#endif /* __POGOPLUGV4_H */
--- /dev/null
+++ b/configs/pogoplugv4_defconfig
-@@ -0,0 +1,40 @@
+@@ -0,0 +1,43 @@
+CONFIG_ARM=y
+CONFIG_KIRKWOOD=y
+CONFIG_SYS_TEXT_BASE=0x600000
+CONFIG_TARGET_POGOPLUGV4=y
+CONFIG_SYS_PROMPT="pogoplugv4> "
+CONFIG_IDENT_STRING="\nPogoplug V4"
++CONFIG_NR_DRAM_BANKS=2
+CONFIG_BOOTDELAY=3
+# CONFIG_CMD_IMLS is not set
+# CONFIG_CMD_FLASH is not set
++CONFIG_MVGBE=y
++CONFIG_MII=y
+CONFIG_SYS_NS16550=y
+CONFIG_CMD_FDT=y
+CONFIG_OF_LIBFDT=y
@@ -575,7 +578,7 @@
+CONFIG_SYS_LONGHELP=y
--- a/drivers/gpio/kw_gpio.c
+++ b/drivers/gpio/kw_gpio.c
-@@ -148,3 +148,36 @@ void kw_gpio_set_blink(unsigned pin, int
+@@ -147,3 +147,36 @@ void kw_gpio_set_blink(unsigned pin, int
/* Set blinking. */
__set_blinking(pin, blink);
}
@@ -621,7 +624,7 @@
+obj-$(CONFIG_KIRKWOOD_MMC) += kirkwood_mmc.o
obj-$(CONFIG_MMC_SUNXI) += sunxi_mmc.o
- obj-$(CONFIG_MMC_UNIPHIER) += uniphier-sd.o
+ obj-$(CONFIG_MMC_UNIPHIER) += tmio-common.o uniphier-sd.o
--- /dev/null
+++ b/drivers/mmc/kirkwood_mmc.c
@@ -0,0 +1,482 @@
@@ -1109,8 +1112,8 @@
+}
--- a/include/configs/mv-common.h
+++ b/include/configs/mv-common.h
-@@ -117,4 +117,10 @@
- #define CONFIG_MTD_PARTITIONS
+@@ -77,4 +77,10 @@
+ #define CONFIG_SYS_MAX_NAND_DEVICE 1
#endif
+/*
@@ -1122,7 +1125,7 @@
#endif /* _MV_COMMON_H */
--- /dev/null
+++ b/include/configs/pogoplugv4.h
-@@ -0,0 +1,129 @@
+@@ -0,0 +1,127 @@
+/*
+ * Copyright (C) 2014-2016 bodhi
+ * Based on
@@ -1229,8 +1232,6 @@
+ */
+#define CONFIG_JFFS2_NAND
+#define CONFIG_JFFS2_LZO
-+#define CONFIG_MTD_DEVICE /* needed for mtdparts commands */
-+#define CONFIG_MTD_PARTITIONS
+
+/*
+ * SATA
diff --git a/package/boot/uboot-kirkwood/patches/110-dockstar.patch b/package/boot/uboot-kirkwood/patches/110-dockstar.patch
index ff2c33877b..f060c33c63 100644
--- a/package/boot/uboot-kirkwood/patches/110-dockstar.patch
+++ b/package/boot/uboot-kirkwood/patches/110-dockstar.patch
@@ -1,6 +1,6 @@
--- a/include/configs/dockstar.h
+++ b/include/configs/dockstar.h
-@@ -18,6 +18,7 @@
+@@ -17,6 +17,7 @@
#define CONFIG_FEROCEON_88FR131 1 /* CPU Core subversion */
#define CONFIG_KW88F6281 1 /* SOC Name */
#define CONFIG_SKIP_LOWLEVEL_INIT /* disable board lowlevel_init */
@@ -8,7 +8,7 @@
/*
* mv-common.h should be defined after CMD configs since it used them
-@@ -36,27 +37,22 @@
+@@ -35,27 +36,22 @@
* it has to be rounded to sector size
*/
#define CONFIG_ENV_SIZE 0x20000 /* 128k */
@@ -46,12 +46,12 @@
* Ethernet Driver configuration
--- a/configs/dockstar_defconfig
+++ b/configs/dockstar_defconfig
-@@ -16,7 +16,7 @@ CONFIG_CMD_PING=y
- CONFIG_CMD_EXT2=y
+@@ -18,7 +18,7 @@ CONFIG_CMD_PING=y
CONFIG_CMD_FAT=y
CONFIG_CMD_JFFS2=y
+ CONFIG_CMD_MTDPARTS=y
-CONFIG_MTDPARTS_DEFAULT="mtdparts=orion_nand:1m(uboot),-(root)"
+CONFIG_MTDPARTS_DEFAULT="mtdparts=orion_nand:0xe0000@0x0(uboot),0x20000@0xe0000(uboot_env),0x100000@0x100000(second_stage_uboot),-@0x200000(ubi)"
CONFIG_CMD_UBI=y
CONFIG_ISO_PARTITION=y
- CONFIG_ENV_IS_IN_NAND=y
+ CONFIG_OF_CONTROL=y
diff --git a/package/boot/uboot-kirkwood/patches/120-iconnect.patch b/package/boot/uboot-kirkwood/patches/120-iconnect.patch
index 114aa1559d..e7acf1a27f 100644
--- a/package/boot/uboot-kirkwood/patches/120-iconnect.patch
+++ b/package/boot/uboot-kirkwood/patches/120-iconnect.patch
@@ -1,6 +1,6 @@
--- a/include/configs/iconnect.h
+++ b/include/configs/iconnect.h
-@@ -44,24 +44,22 @@
+@@ -42,24 +42,22 @@
#define CONFIG_ENV_SECT_SIZE 0x20000
#endif
#define CONFIG_ENV_SIZE 0x20000
@@ -32,7 +32,7 @@
* Ethernet driver configuration
--- a/configs/iconnect_defconfig
+++ b/configs/iconnect_defconfig
-@@ -10,12 +10,13 @@ CONFIG_SYS_PROMPT="iconnect => "
+@@ -11,13 +11,14 @@ CONFIG_SYS_PROMPT="iconnect => "
CONFIG_CMD_NAND=y
CONFIG_CMD_USB=y
# CONFIG_CMD_SETEXPR is not set
@@ -42,8 +42,9 @@
CONFIG_CMD_EXT2=y
CONFIG_CMD_FAT=y
CONFIG_CMD_JFFS2=y
+ CONFIG_CMD_MTDPARTS=y
-CONFIG_MTDPARTS_DEFAULT="mtdparts=orion_nand:0x80000@0x0(uboot),0x20000@0x80000(uboot_env),-@0xa0000(rootfs)"
+CONFIG_MTDPARTS_DEFAULT="mtdparts=orion_nand:0xe0000@0x0(uboot),0x20000@0xe0000(uboot_env),0x100000@0x100000(second_stage_uboot),-@0x200000(ubi)"
CONFIG_CMD_UBI=y
CONFIG_ISO_PARTITION=y
- CONFIG_ENV_IS_IN_NAND=y
+ CONFIG_OF_CONTROL=y
diff --git a/package/boot/uboot-kirkwood/patches/130-ib62x0.patch b/package/boot/uboot-kirkwood/patches/130-ib62x0.patch
index 269cf7336d..2327c4a910 100644
--- a/package/boot/uboot-kirkwood/patches/130-ib62x0.patch
+++ b/package/boot/uboot-kirkwood/patches/130-ib62x0.patch
@@ -1,6 +1,6 @@
--- a/include/configs/ib62x0.h
+++ b/include/configs/ib62x0.h
-@@ -49,21 +49,15 @@
+@@ -47,21 +47,15 @@
*/
#define CONFIG_BOOTCOMMAND \
"setenv bootargs ${console} ${mtdparts} ${bootargs_root}; " \
@@ -29,12 +29,12 @@
* Ethernet driver configuration
--- a/configs/ib62x0_defconfig
+++ b/configs/ib62x0_defconfig
-@@ -19,7 +19,7 @@ CONFIG_CMD_PING=y
- CONFIG_CMD_EXT2=y
+@@ -21,7 +21,7 @@ CONFIG_CMD_PING=y
CONFIG_CMD_FAT=y
CONFIG_CMD_JFFS2=y
+ CONFIG_CMD_MTDPARTS=y
-CONFIG_MTDPARTS_DEFAULT="mtdparts=orion_nand:0xe0000@0x0(uboot),0x20000@0xe0000(uboot_env),-@0x100000(root)"
+CONFIG_MTDPARTS_DEFAULT="mtdparts=orion_nand:0xe0000@0x0(uboot),0x20000@0xe0000(uboot_env),0x100000@0x100000(second_stage_uboot),-@0x200000(ubi)"
CONFIG_CMD_UBI=y
CONFIG_ISO_PARTITION=y
- CONFIG_ENV_IS_IN_NAND=y
+ CONFIG_OF_CONTROL=y
diff --git a/package/boot/uboot-kirkwood/patches/140-pogoplug_e02.patch b/package/boot/uboot-kirkwood/patches/140-pogoplug_e02.patch
index 26217fadd7..69e21e60f7 100644
--- a/package/boot/uboot-kirkwood/patches/140-pogoplug_e02.patch
+++ b/package/boot/uboot-kirkwood/patches/140-pogoplug_e02.patch
@@ -1,6 +1,6 @@
--- a/include/configs/pogo_e02.h
+++ b/include/configs/pogo_e02.h
-@@ -44,23 +44,23 @@
+@@ -42,23 +42,23 @@
#endif
#define CONFIG_ENV_SIZE 0x20000 /* 128k */
@@ -36,11 +36,11 @@
* Ethernet Driver configuration
--- a/configs/pogo_e02_defconfig
+++ b/configs/pogo_e02_defconfig
-@@ -16,6 +16,7 @@ CONFIG_CMD_PING=y
- CONFIG_CMD_EXT2=y
+@@ -18,6 +18,7 @@ CONFIG_CMD_PING=y
CONFIG_CMD_FAT=y
CONFIG_CMD_JFFS2=y
+ CONFIG_CMD_MTDPARTS=y
+CONFIG_MTDPARTS_DEFAULT="mtdparts=orion_nand:0xe0000@0x0(uboot),0x20000@0xe0000(uboot_env),0x100000@0x100000(second_stage_uboot),-@0x200000(ubi)"
CONFIG_CMD_UBI=y
CONFIG_ISO_PARTITION=y
- CONFIG_ENV_IS_IN_NAND=y
+ CONFIG_OF_CONTROL=y
diff --git a/package/boot/uboot-kirkwood/patches/150-goflexhome.patch b/package/boot/uboot-kirkwood/patches/150-goflexhome.patch
index 2104b67b51..854a1800c3 100644
--- a/package/boot/uboot-kirkwood/patches/150-goflexhome.patch
+++ b/package/boot/uboot-kirkwood/patches/150-goflexhome.patch
@@ -1,6 +1,6 @@
--- a/include/configs/goflexhome.h
+++ b/include/configs/goflexhome.h
-@@ -69,17 +69,15 @@
+@@ -66,17 +66,15 @@
*/
#define CONFIG_BOOTCOMMAND \
"setenv bootargs ${console} ${mtdparts} ${bootargs_root}; " \
@@ -24,12 +24,12 @@
* Ethernet Driver configuration
--- a/configs/goflexhome_defconfig
+++ b/configs/goflexhome_defconfig
-@@ -21,7 +21,7 @@ CONFIG_CMD_EXT4=y
- CONFIG_CMD_FAT=y
+@@ -23,7 +23,7 @@ CONFIG_CMD_EXT4=y
CONFIG_CMD_JFFS2=y
+ CONFIG_CMD_MTDPARTS=y
CONFIG_MTDIDS_DEFAULT="nand0=orion_nand"
-CONFIG_MTDPARTS_DEFAULT="mtdparts=orion_nand:1m(uboot),6M(uImage),-(root)"
+CONFIG_MTDPARTS_DEFAULT="mtdparts=orion_nand:1m(uboot),255m(ubi)"
CONFIG_CMD_UBI=y
CONFIG_ISO_PARTITION=y
- CONFIG_ENV_IS_IN_NAND=y
+ CONFIG_OF_CONTROL=y
diff --git a/package/boot/uboot-kirkwood/patches/200-openwrt-config.patch b/package/boot/uboot-kirkwood/patches/200-openwrt-config.patch
index 6400e5bb69..f26675182a 100644
--- a/package/boot/uboot-kirkwood/patches/200-openwrt-config.patch
+++ b/package/boot/uboot-kirkwood/patches/200-openwrt-config.patch
@@ -1,8 +1,8 @@
--- a/arch/arm/mach-kirkwood/Kconfig
+++ b/arch/arm/mach-kirkwood/Kconfig
-@@ -94,4 +94,7 @@ source "board/zyxel/nsa310/Kconfig"
- source "board/zyxel/nsa310s/Kconfig"
- source "board/zyxel/nsa325/Kconfig"
+@@ -102,4 +102,7 @@ source "board/zyxel/nsa310/Kconfig"
+ source "board/alliedtelesis/SBx81LIFKW/Kconfig"
+ source "board/alliedtelesis/SBx81LIFXCAT/Kconfig"
+config SECOND_STAGE
+ bool "OpenWrt second stage hack"
@@ -10,16 +10,16 @@
endif
--- a/include/configs/dockstar.h
+++ b/include/configs/dockstar.h
-@@ -68,4 +68,6 @@
- #define CONFIG_MTD_DEVICE /* needed for mtdparts commands */
- #define CONFIG_MTD_PARTITIONS
+@@ -65,4 +65,6 @@
+ * File system
+ */
+#include "openwrt-kirkwood-common.h"
+
#endif /* _CONFIG_DOCKSTAR_H */
--- a/include/configs/ib62x0.h
+++ b/include/configs/ib62x0.h
-@@ -87,4 +87,6 @@
+@@ -85,4 +85,6 @@
#define CONFIG_RTC_MV
#endif /* CONFIG_CMD_DATE */
@@ -28,9 +28,9 @@
#endif /* _CONFIG_IB62x0_H */
--- a/include/configs/iconnect.h
+++ b/include/configs/iconnect.h
-@@ -76,4 +76,6 @@
- #define CONFIG_MTD_DEVICE
- #define CONFIG_MTD_PARTITIONS
+@@ -72,4 +72,6 @@
+ * File system
+ */
+#include "openwrt-kirkwood-common.h"
+
@@ -71,25 +71,25 @@
+#endif /* __OPENWRT_KIRKWOOD_COMMON_H */
--- a/include/configs/pogo_e02.h
+++ b/include/configs/pogo_e02.h
-@@ -76,4 +76,6 @@
- #define CONFIG_MTD_DEVICE /* needed for mtdparts commands */
- #define CONFIG_MTD_PARTITIONS
+@@ -72,4 +72,6 @@
+ * File system
+ */
+#include "openwrt-kirkwood-common.h"
+
#endif /* _CONFIG_POGO_E02_H */
--- a/include/configs/goflexhome.h
+++ b/include/configs/goflexhome.h
-@@ -101,4 +101,6 @@
- #define CONFIG_RTC_MV
- #endif /* CONFIG_CMD_DATE */
+@@ -91,4 +91,6 @@
+ #define CONFIG_SYS_ATA_IDE0_OFFSET MV_SATA_PORT0_OFFSET
+ #endif /*CONFIG_MVSATA_IDE*/
+#include "openwrt-kirkwood-common.h"
+
#endif /* _CONFIG_GOFLEXHOME_H */
--- a/include/configs/nsa310.h
+++ b/include/configs/nsa310.h
-@@ -116,4 +116,6 @@
+@@ -114,4 +114,6 @@
#define CONFIG_RTC_MV
#endif /* CONFIG_CMD_DATE */
@@ -98,10 +98,10 @@
#endif /* _CONFIG_NSA310_H */
--- a/configs/dockstar_defconfig
+++ b/configs/dockstar_defconfig
-@@ -26,3 +26,8 @@ CONFIG_USB=y
+@@ -31,3 +31,8 @@ CONFIG_USB=y
+ CONFIG_USB=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_STORAGE=y
- CONFIG_OF_LIBFDT=y
+CONFIG_CMD_BOOTZ=y
+CONFIG_FIT=y
+CONFIG_FIT_VERBOSE=y
@@ -109,10 +109,10 @@
+CONFIG_LZO=y
--- a/configs/goflexhome_defconfig
+++ b/configs/goflexhome_defconfig
-@@ -32,3 +32,8 @@ CONFIG_USB=y
+@@ -40,3 +40,8 @@ CONFIG_USB=y
+ CONFIG_USB=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_STORAGE=y
- CONFIG_OF_LIBFDT=y
+CONFIG_CMD_BOOTZ=y
+CONFIG_FIT=y
+CONFIG_FIT_VERBOSE=y
@@ -120,24 +120,22 @@
+CONFIG_LZO=y
--- a/configs/ib62x0_defconfig
+++ b/configs/ib62x0_defconfig
-@@ -29,5 +29,8 @@ CONFIG_SYS_NS16550=y
+@@ -35,4 +35,7 @@ CONFIG_SYS_NS16550=y
CONFIG_USB=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_STORAGE=y
-CONFIG_LZMA=y
- CONFIG_OF_LIBFDT=y
+CONFIG_FIT=y
+CONFIG_FIT_VERBOSE=y
+CONFIG_LZMA=y
+CONFIG_LZO=y
--- a/configs/iconnect_defconfig
+++ b/configs/iconnect_defconfig
-@@ -25,5 +25,9 @@ CONFIG_SYS_NS16550=y
+@@ -31,4 +31,8 @@ CONFIG_SYS_NS16550=y
CONFIG_USB=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_STORAGE=y
-CONFIG_LZMA=y
- CONFIG_OF_LIBFDT=y
+CONFIG_CMD_BOOTZ=y
+CONFIG_FIT=y
+CONFIG_FIT_VERBOSE=y
@@ -145,7 +143,7 @@
+CONFIG_LZO=y
--- a/configs/nsa310_defconfig
+++ b/configs/nsa310_defconfig
-@@ -32,6 +32,9 @@ CONFIG_CMD_UBI=y
+@@ -35,6 +35,9 @@ CONFIG_CMD_UBI=y
CONFIG_USB=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_STORAGE=y
@@ -157,10 +155,10 @@
CONFIG_SYS_LONGHELP=y
--- a/configs/pogo_e02_defconfig
+++ b/configs/pogo_e02_defconfig
-@@ -26,3 +26,8 @@ CONFIG_USB=y
+@@ -31,3 +31,8 @@ CONFIG_USB=y
+ CONFIG_USB=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_STORAGE=y
- CONFIG_OF_LIBFDT=y
+CONFIG_CMD_BOOTZ=y
+CONFIG_FIT=y
+CONFIG_FIT_VERBOSE=y
diff --git a/package/boot/uboot-layerscape-armv8_32b/Makefile b/package/boot/uboot-layerscape-armv8_32b/Makefile
deleted file mode 100644
index c2b6e75b0e..0000000000
--- a/package/boot/uboot-layerscape-armv8_32b/Makefile
+++ /dev/null
@@ -1,84 +0,0 @@
-#
-# Copyright (C) 2016 Jiang Yutang
-#
-# This is free software, licensed under the GNU General Public License v2.
-# See /LICENSE for more information.
-#
-
-include $(TOPDIR)/rules.mk
-
-PKG_NAME:=uboot-layerscape-armv8_32b
-PKG_VERSION:=lsdk-1806
-PKG_RELEASE:=1
-
-# Layerscape ARMv8 platforms use 64-bit u-boot to support both 32-bit and 64-bit
-# kernel/rootfs. Since OpenWrt could only provide 32-bit toolchain for 32-bit targets,
-# 64-bit u-boot images git tree is provided here whose source code actually is
-# uboot-layerscape's source code.
-PKG_SOURCE_PROTO:=git
-PKG_SOURCE_URL:=https://github.com/yangbolu1991/u-boot-lede.git
-PKG_SOURCE_VERSION:=a2a01facee0918bf724b4f0aec6746e2f1271519
-PKG_MIRROR_HASH:=5fcb58c14cdc934793ff315e178ad1d9d2ff55fcaac394b48ec116d1b11ca324
-
-include $(INCLUDE_DIR)/package.mk
-
-define Package/uboot-layerscape-armv8_32b/Config
- define Package/u-boot-$(1)-image
- SECTION:=boot
- CATEGORY:=Boot Loaders
- TITLE:=$(2)
- DEPENDS:=@TARGET_layerscape_armv8_32b
- CONFIG:=$(3)
- ENV_SIZE:=$(4)
- endef
-endef
-
-define Package/uboot-layerscape-armv8_32b/ls1012ardb
- TITLE:=U-Boot image for NXP LS1012ARDB
- CONFIG:=ls1012ardb-uboot.bin
- ENV_SIZE:=0x40000
-endef
-
-define Package/uboot-layerscape-armv8_32b/ls1012afrwy
- TITLE:=U-Boot image for NXP LS1012FRWY
- CONFIG:=ls1012afrwy-uboot.bin
- ENV_SIZE:=0x10000
-endef
-
-define Package/uboot-layerscape-armv8_32b/ls1043ardb
- TITLE:=U-Boot image for NXP LS1043ARDB
- CONFIG:=ls1043ardb-uboot.bin
- ENV_SIZE:=0x20000
-endef
-
-define Package/uboot-layerscape-armv8_32b/ls1046ardb
- TITLE:=U-Boot image for NXP LS1046ARDB
- CONFIG:=ls1046ardb-uboot.bin
- ENV_SIZE:=0x2000
-endef
-
-define Build/Compile
-endef
-
-define Package/uboot-layerscape-armv8_32b/Install
- define Package/u-boot-$(1)-image/install
- $(INSTALL_DIR) $(STAGING_DIR_IMAGE)
- $(CP) $(PKG_BUILD_DIR)/$(CONFIG) $(STAGING_DIR_IMAGE)/
- $(PKG_BUILD_DIR)/tools/mkenvimage -s $(ENV_SIZE) \
- -o $(STAGING_DIR_IMAGE)/$(1)-uboot-env.bin \
- ../uboot-layerscape/files/$(1)-uEnv.txt
- endef
-endef
-
-UBOOTS := \
- ls1012ardb \
- ls1012afrwy \
- ls1043ardb \
- ls1046ardb
-
-$(foreach u,$(UBOOTS), \
- $(eval $(Package/uboot-layerscape-armv8_32b/$(u))) \
- $(eval $(call Package/uboot-layerscape-armv8_32b/Config,$(u),$(TITLE),$(CONFIG),$(ENV_SIZE))) \
- $(eval $(call Package/uboot-layerscape-armv8_32b/Install,$(u))) \
- $(eval $(call BuildPackage,u-boot-$(u)-image)) \
-)
diff --git a/package/boot/uboot-layerscape/Makefile b/package/boot/uboot-layerscape/Makefile
index 911d9696e6..ddf71bd986 100644
--- a/package/boot/uboot-layerscape/Makefile
+++ b/package/boot/uboot-layerscape/Makefile
@@ -8,13 +8,13 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=uboot-layerscape
-PKG_VERSION:=lsdk-1806
+PKG_VERSION:=lsdk-1903
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://source.codeaurora.org/external/qoriq/qoriq-components/u-boot
-PKG_SOURCE_VERSION:=b3f98d438eefd1b355efdec0b50af5813ff8d0e1
-PKG_MIRROR_HASH:=59e35957055658e7fdefb16b92f954356985a8191942d93f254861c75c47b32b
+PKG_SOURCE_VERSION:=80b2d2bc4cab0a8363c9b7eba8064b1795f12670
+PKG_MIRROR_HASH:=5c467af40b4479f0ea16697ab54602bed815a23212293184943dca8a3a406d5c
include $(INCLUDE_DIR)/u-boot.mk
include $(INCLUDE_DIR)/package.mk
@@ -29,52 +29,52 @@ endef
define U-Boot/ls1012ardb
NAME:=NXP LS1012ARDB
- UBOOT_CONFIG:=ls1012ardb_qspi
+ UBOOT_CONFIG:=ls1012ardb_tfa
ENV_SIZE:=0x40000
endef
define U-Boot/ls1012afrwy
NAME:=NXP LS1012AFRWY
- UBOOT_CONFIG:=ls1012afrwy_qspi
+ UBOOT_CONFIG:=ls1012afrwy_tfa
ENV_SIZE:=0x10000
endef
define U-Boot/ls1043ardb
NAME:=NXP LS1043ARDB
- ENV_SIZE:=0x20000
+ UBOOT_CONFIG:=ls1043ardb_tfa
endef
define U-Boot/ls1043ardb-sdboot
NAME:=NXP LS1043ARDB SD Card Boot
- UBOOT_CONFIG:=ls1043ardb_sdcard
- UBOOT_IMAGE:=u-boot-with-spl-pbl.bin
+ UBOOT_CONFIG:=ls1043ardb_tfa
endef
+
define U-Boot/ls1046ardb
NAME:=NXP LS1046ARDB
- UBOOT_CONFIG:=ls1046ardb_qspi
+ UBOOT_CONFIG:=ls1046ardb_tfa
endef
define U-Boot/ls1046ardb-sdboot
NAME:=NXP LS1046ARDB SD Card Boot
- UBOOT_CONFIG:=ls1046ardb_sdcard
- UBOOT_IMAGE:=u-boot-with-spl-pbl.bin
+ UBOOT_CONFIG:=ls1046ardb_tfa
endef
+
define U-Boot/ls1088ardb
NAME:=NXP LS1088ARDB
- UBOOT_CONFIG:=ls1088ardb_qspi
+ UBOOT_CONFIG:=ls1088ardb_tfa
endef
+
define U-Boot/ls1088ardb-sdboot
NAME:=NXP LS1088ARDB SD Card Boot
- UBOOT_CONFIG:=ls1088ardb_sdcard_qspi
- UBOOT_IMAGE:=u-boot-with-spl.bin
+ UBOOT_CONFIG:=ls1088ardb_tfa
endef
define U-Boot/ls2088ardb
NAME:=NXP LS2088ARDB
- UBOOT_CONFIG:=ls2080ardb
+ UBOOT_CONFIG:=ls2088ardb_tfa
endef
define U-Boot/ls1021atwr
diff --git a/package/boot/uboot-layerscape/files/ls1012ardb-uEnv.txt b/package/boot/uboot-layerscape/files/ls1012ardb-uEnv.txt
index 32419dd33d..b5faeb255a 100644
--- a/package/boot/uboot-layerscape/files/ls1012ardb-uEnv.txt
+++ b/package/boot/uboot-layerscape/files/ls1012ardb-uEnv.txt
@@ -3,6 +3,6 @@ loadaddr=0x81000000
fdt_high=0xffffffffffffffff
initrd_high=0xffffffffffffffff
qspi_boot=sf probe 0:0;sf read $fdtaddr f00000 100000;sf read $loadaddr 1000000 1000000;bootm $loadaddr - $fdtaddr
-bootargs=ubi.mtd=9 root=ubi0:rootfs rw rootfstype=ubifs noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS0,115200 mtdparts=1550000.quadspi:1m(rcw),2m(u-boot),1m(u-boot-env),2m(ppa),4m(reserved-1),3m(pfe),2m(reserved-2),1m(dtb),16m(kernel),32m(ubifs)
+bootargs=ubi.mtd=8 root=ubi0:rootfs rw rootfstype=ubifs noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS0,115200 mtdparts=1550000.quadspi:1m(bl2),4m(fip),1m(u-boot-env),4m(reserved-1),3m(pfe),2m(reserved-2),1m(dtb),16m(kernel),32m(ubifs)
bootcmd=echo starting openwrt ...;pfe stop;run qspi_boot
bootdelay=3
diff --git a/package/boot/uboot-layerscape/files/ls1043ardb-uEnv.txt b/package/boot/uboot-layerscape/files/ls1043ardb-uEnv.txt
index c78bfe0098..b040cffdbf 100644
--- a/package/boot/uboot-layerscape/files/ls1043ardb-uEnv.txt
+++ b/package/boot/uboot-layerscape/files/ls1043ardb-uEnv.txt
@@ -4,6 +4,6 @@ fdt_high=0xffffffffffffffff
initrd_high=0xffffffffffffffff
hwconfig=fsl_ddr:bank_intlv=auto
nor_boot=cp.b 60f00000 $fdtaddr 100000;cp.b 61000000 $loadaddr 1000000;bootm $loadaddr - $fdtaddr
-bootargs=root=/dev/mtdblock9 rootfstype=squashfs,jffs2 noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS0,115200 mtdparts=60000000.nor:1m(rcw),2m(u-boot),1m(u-boot-env),2m(ppa),3m(reserved-1),256k(fman),5888k(reserved-2),1m(dtb),16m(kernel),32m(rootfs)
+bootargs=root=/dev/mtdblock8 rootfstype=squashfs,jffs2 noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS0,115200 mtdparts=60000000.nor:1m(bl2),4m(fip),1m(u-boot-env),3m(reserved-1),256k(fman),5888k(reserved-2),1m(dtb),16m(kernel),32m(rootfs)
bootcmd=echo starting openwrt ...;run nor_boot
bootdelay=3
diff --git a/package/boot/uboot-layerscape/files/ls1046ardb-uEnv.txt b/package/boot/uboot-layerscape/files/ls1046ardb-uEnv.txt
index fecb8fd702..ad3a3d6c37 100644
--- a/package/boot/uboot-layerscape/files/ls1046ardb-uEnv.txt
+++ b/package/boot/uboot-layerscape/files/ls1046ardb-uEnv.txt
@@ -4,6 +4,6 @@ fdt_high=0xffffffffffffffff
initrd_high=0xffffffffffffffff
hwconfig=fsl_ddr:bank_intlv=auto
qspi_boot=sf probe 0:0;sf read $fdtaddr f00000 100000;sf read $loadaddr 1000000 1000000;bootm $loadaddr - $fdtaddr
-bootargs=ubi.mtd=10 root=ubi0:rootfs rw rootfstype=ubifs noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS0,115200 mtdparts=1550000.quadspi:1m(rcw),2m(u-boot),1m(u-boot-env),2m(ppa),3m(reserved-1),256k(fman),5888k(reserved-2),1m(dtb),16m(kernel),32m(ubifs)
+bootargs=ubi.mtd=9 root=ubi0:rootfs rw rootfstype=ubifs noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS0,115200 mtdparts=1550000.quadspi:1m(bl2),4m(fip),1m(u-boot-env),3m(reserved-1),256k(fman),5888k(reserved-2),1m(dtb),16m(kernel),32m(ubifs)
bootcmd=echo starting openwrt ...;run qspi_boot
bootdelay=3
diff --git a/package/boot/uboot-layerscape/files/ls1088ardb-uEnv.txt b/package/boot/uboot-layerscape/files/ls1088ardb-uEnv.txt
index 1bcd7019cc..eb2c443b39 100644
--- a/package/boot/uboot-layerscape/files/ls1088ardb-uEnv.txt
+++ b/package/boot/uboot-layerscape/files/ls1088ardb-uEnv.txt
@@ -5,6 +5,6 @@ initrd_high=0xffffffffffffffff
hwconfig=fsl_ddr:bank_intlv=auto
mc_init=sf probe 0:0;sf read 80000000 a00000 300000;sf read 80300000 e00000 100000;fsl_mc start mc 80000000 80300000;sf read 80400000 d00000 100000;fsl_mc apply dpl 80400000
qspi_boot=sf probe 0:0;sf read $fdtaddr f00000 100000;sf read $loadaddr 1000000 1000000;bootm $loadaddr - $fdtaddr
-bootargs=ubi.mtd=11 root=ubi0:rootfs rw rootfstype=ubifs noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS0,115200 mtdparts=20c0000.quadspi:1m(rcw),2m(u-boot),1m(u-boot-env),2m(ppa),4m(reserved-1),3m(mc),1m(dpl),1m(dpc),1m(dtb),16m(kernel),32m(ubifs)
+bootargs=ubi.mtd=10 root=ubi0:rootfs rw rootfstype=ubifs noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS0,115200 mtdparts=20c0000.quadspi:1m(bl2),4m(fip),1m(u-boot-env),4m(reserved-1),3m(mc),1m(dpl),1m(dpc),1m(dtb),16m(kernel),32m(ubifs)
bootcmd=echo starting openwrt ...;run mc_init;run qspi_boot
bootdelay=3
diff --git a/package/boot/uboot-layerscape/files/ls2088ardb-uEnv.txt b/package/boot/uboot-layerscape/files/ls2088ardb-uEnv.txt
index f3b6725544..31e937ffcb 100644
--- a/package/boot/uboot-layerscape/files/ls2088ardb-uEnv.txt
+++ b/package/boot/uboot-layerscape/files/ls2088ardb-uEnv.txt
@@ -5,6 +5,6 @@ initrd_high=0xffffffffffffffff
hwconfig=fsl_ddr:bank_intlv=auto
mc_init=fsl_mc start mc 580a00000 580e00000;fsl_mc apply dpl 580d00000
nor_boot=cp.b 580f00000 $fdtaddr 100000;cp.b 581000000 $loadaddr 1000000;bootm $loadaddr - $fdtaddr
-bootargs=root=/dev/mtdblock10 rootfstype=squashfs,jffs2 noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS1,115200 mtdparts=580000000.nor:1m(rcw),2m(u-boot),1m(u-boot-env),2m(ppa),4m(reserved-1),3m(mc),1m(dpl),1m(dpc),1m(dtb),16m(kernel),32m(rootfs)
+bootargs=root=/dev/mtdblock9 rootfstype=squashfs,jffs2 noinitrd earlycon=uart8250,mmio,0x21c0500 console=ttyS1,115200 mtdparts=580000000.nor:1m(bl2),4m(fip),1m(u-boot-env),4m(reserved-1),3m(mc),1m(dpl),1m(dpc),1m(dtb),16m(kernel),32m(rootfs)
bootcmd=echo starting openwrt ...;run mc_init;run nor_boot
bootdelay=3
diff --git a/package/boot/uboot-layerscape/patches/0001-modify-macro-QSPI_NOR_BOOTCOMMAND-of-ls1046ardb-for-.patch b/package/boot/uboot-layerscape/patches/0001-modify-macro-QSPI_NOR_BOOTCOMMAND-of-ls1046ardb-for-.patch
new file mode 100644
index 0000000000..d315c08f30
--- /dev/null
+++ b/package/boot/uboot-layerscape/patches/0001-modify-macro-QSPI_NOR_BOOTCOMMAND-of-ls1046ardb-for-.patch
@@ -0,0 +1,28 @@
+From 51f860f8293d834497c6f7f810fa4650cd82f9ac Mon Sep 17 00:00:00 2001
+From: Biwen Li
+Date: Sat, 13 Apr 2019 14:21:47 +0800
+Subject: [PATCH] modify macro QSPI_NOR_BOOTCOMMAND of ls1046ardb for openwrt
+
+Signed-off-by: Biwen Li
+---
+ include/configs/ls1046ardb.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/include/configs/ls1046ardb.h b/include/configs/ls1046ardb.h
+index cc1f5f5f55..925e717e4b 100644
+--- a/include/configs/ls1046ardb.h
++++ b/include/configs/ls1046ardb.h
+@@ -217,8 +217,8 @@
+ #ifndef SPL_NO_MISC
+ #undef CONFIG_BOOTCOMMAND
+ #ifdef CONFIG_TFABOOT
+-#define QSPI_NOR_BOOTCOMMAND "run distro_bootcmd; run qspi_bootcmd; " \
+- "env exists secureboot && esbc_halt;;"
++#define QSPI_NOR_BOOTCOMMAND "echo (from QSPI_NOR_BOOTCOMMAND) starting openwrt; " \
++ "run qspi_boot;"
+ #define SD_BOOTCOMMAND "run distro_bootcmd;run sd_bootcmd; " \
+ "env exists secureboot && esbc_halt;"
+ #else
+--
+2.17.1
+
diff --git a/package/boot/uboot-layerscape/patches/0002-modify-macro-QSPI_NOR_BOOTCOMMAND-of-ls1012afrwy-for.patch b/package/boot/uboot-layerscape/patches/0002-modify-macro-QSPI_NOR_BOOTCOMMAND-of-ls1012afrwy-for.patch
new file mode 100644
index 0000000000..cb75d0e1aa
--- /dev/null
+++ b/package/boot/uboot-layerscape/patches/0002-modify-macro-QSPI_NOR_BOOTCOMMAND-of-ls1012afrwy-for.patch
@@ -0,0 +1,28 @@
+From 2999d128bef554da5ca7a553dfe1c31061df9c5c Mon Sep 17 00:00:00 2001
+From: Biwen Li
+Date: Sun, 14 Apr 2019 13:36:52 +0800
+Subject: [PATCH] modify macro QSPI_NOR_BOOTCOMMAND of ls1012afrwy for openwrt
+
+Signed-off-by: Biwen Li
+---
+ include/configs/ls1012afrwy.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/include/configs/ls1012afrwy.h b/include/configs/ls1012afrwy.h
+index 12e6437a05..900752970e 100644
+--- a/include/configs/ls1012afrwy.h
++++ b/include/configs/ls1012afrwy.h
+@@ -122,8 +122,8 @@
+ #undef CONFIG_BOOTCOMMAND
+ #ifdef CONFIG_TFABOOT
+ #undef QSPI_NOR_BOOTCOMMAND
+-#define QSPI_NOR_BOOTCOMMAND "pfe stop; run distro_bootcmd; run sd_bootcmd; "\
+- "env exists secureboot && esbc_halt;"
++#define QSPI_NOR_BOOTCOMMAND "echo (from QSPI_NOR_BOOTCOMMAND) starting openwrt ...; "\
++ "pfe stop; run sd_boot;"
+ #else
+ #define CONFIG_BOOTCOMMAND "pfe stop; run distro_bootcmd; run sd_bootcmd; "\
+ "env exists secureboot && esbc_halt;"
+--
+2.17.1
+
diff --git a/package/boot/uboot-layerscape/patches/0003-modify-macro-QSPI_NOR_BOOTCOMMAND-of-ls1012ardb-for-.patch b/package/boot/uboot-layerscape/patches/0003-modify-macro-QSPI_NOR_BOOTCOMMAND-of-ls1012ardb-for-.patch
new file mode 100644
index 0000000000..a4f21dfba8
--- /dev/null
+++ b/package/boot/uboot-layerscape/patches/0003-modify-macro-QSPI_NOR_BOOTCOMMAND-of-ls1012ardb-for-.patch
@@ -0,0 +1,28 @@
+From 805c60e930a946560b52dfa83dd8e5fbdf2da15b Mon Sep 17 00:00:00 2001
+From: Biwen Li
+Date: Sun, 14 Apr 2019 13:39:13 +0800
+Subject: [PATCH] modify macro QSPI_NOR_BOOTCOMMAND of ls1012ardb for openwrt
+
+Signed-off-by: Biwen Li
+---
+ include/configs/ls1012ardb.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/include/configs/ls1012ardb.h b/include/configs/ls1012ardb.h
+index f6640fa499..51a2192c56 100644
+--- a/include/configs/ls1012ardb.h
++++ b/include/configs/ls1012ardb.h
+@@ -115,8 +115,8 @@
+ #undef CONFIG_BOOTCOMMAND
+ #ifdef CONFIG_TFABOOT
+ #undef QSPI_NOR_BOOTCOMMAND
+-#define QSPI_NOR_BOOTCOMMAND "pfe stop; run distro_bootcmd; run qspi_bootcmd; "\
+- "env exists secureboot && esbc_halt;"
++#define QSPI_NOR_BOOTCOMMAND "echo (from QSPI_NOR_BOOTCOMMAND) starting openwrt ...; "\
++ "pfe stop; run qspi_boot;"
+ #else
+ #define CONFIG_BOOTCOMMAND "pfe stop; run distro_bootcmd; run qspi_bootcmd; "\
+ "env exists secureboot && esbc_halt;"
+--
+2.17.1
+
diff --git a/package/boot/uboot-mvebu/Makefile b/package/boot/uboot-mvebu/Makefile
index 61547acb27..d171daa717 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:=2018.03
+PKG_VERSION:=2019.04
PKG_RELEASE:=1
-PKG_HASH:=7e7477534409d5368eb1371ffde6820f0f79780a1a1f676161c48442cb303dfd
+PKG_HASH:=76b7772d156b3ddd7644c8a1736081e55b78828537ff714065d21dbade229bef
include $(INCLUDE_DIR)/u-boot.mk
include $(INCLUDE_DIR)/package.mk
@@ -24,13 +24,20 @@ endef
define U-Boot/clearfog
NAME:=SolidRun ClearFog A1
- BUILD_DEVICES:=armada-388-clearfog-base armada-388-clearfog-pro
+ BUILD_DEVICES:=solidrun_clearfog-base-a1 solidrun_clearfog-pro-a1
BUILD_SUBTARGET:=cortexa9
UBOOT_IMAGE:=u-boot-spl.kwb
endef
+define U-Boot/uDPU
+ NAME:=Methode uDPU
+ BUILD_DEVICES:=methode_udpu
+ BUILD_SUBTARGET:=cortexa53
+endef
+
UBOOT_TARGETS:= \
- clearfog
+ clearfog \
+ uDPU
Build/Exports:=$(Host/Exports)
@@ -44,7 +51,7 @@ endef
define Build/InstallDev
$(INSTALL_DIR) $(STAGING_DIR_IMAGE)
- $(CP) $(PKG_BUILD_DIR)/$(UBOOT_IMAGE) $(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-u-boot-spl.kwb
+ $(CP) $(PKG_BUILD_DIR)/$(UBOOT_IMAGE) $(STAGING_DIR_IMAGE)/$(BUILD_VARIANT)-$(UBOOT_IMAGE)
endef
$(eval $(call BuildPackage/U-Boot))
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
new file mode 100644
index 0000000000..79b1b66e76
--- /dev/null
+++ b/package/boot/uboot-mvebu/patches/100-add_support_for_macronix_mx25u12835f.patch
@@ -0,0 +1,10 @@
+--- a/drivers/mtd/spi/spi-nor-ids.c
++++ b/drivers/mtd/spi/spi-nor-ids.c
+@@ -136,6 +136,7 @@ const struct flash_info spi_nor_ids[] =
+ { INFO("mx25u1635e", 0xc22535, 0, 64 * 1024, 32, 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
new file mode 100644
index 0000000000..580270a70f
--- /dev/null
+++ b/package/boot/uboot-mvebu/patches/120-mvebu_armada-37xx.h_increase_max_gunzip_size.patch
@@ -0,0 +1,13 @@
+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 */
+
+ #define CONFIG_NR_DRAM_BANKS 1
+
diff --git a/package/boot/uboot-mxs/Makefile b/package/boot/uboot-mxs/Makefile
index cd26704cb6..04d3f15f95 100644
--- a/package/boot/uboot-mxs/Makefile
+++ b/package/boot/uboot-mxs/Makefile
@@ -8,10 +8,10 @@
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
-PKG_VERSION:=2018.09
+PKG_VERSION:=2019.10
PKG_RELEASE:=1
-PKG_HASH:=839bf23cfe8ce613a77e583a60375179d0ad324e92c82fbdd07bebf0fd142268
+PKG_HASH:=8d6d6070739522dd236cba7055b8736bfe92b4fac0ea18ad809829ca79667014
include $(INCLUDE_DIR)/u-boot.mk
include $(INCLUDE_DIR)/package.mk
diff --git a/package/boot/uboot-mxs/patches/001-add-i2se-duckbill.patch b/package/boot/uboot-mxs/patches/001-add-i2se-duckbill.patch
index e5d3484d8e..c7b8fd63ea 100644
--- a/package/boot/uboot-mxs/patches/001-add-i2se-duckbill.patch
+++ b/package/boot/uboot-mxs/patches/001-add-i2se-duckbill.patch
@@ -1,6 +1,6 @@
-From 7b919a74c562ca33ae28c9214f225a79b57209e4 Mon Sep 17 00:00:00 2001
+From 821d083ae4cfb795eab385eda43a20cdc8c3cacd Mon Sep 17 00:00:00 2001
From: Michael Heimpold
-Date: Thu, 13 Sep 2018 21:40:19 +0200
+Date: Sun, 3 Nov 2019 00:50:21 +0100
Subject: [PATCH] arm: mxs: add support for I2SE's Duckbill boards
The Duckbill devices are small, pen-drive sized boards based on
@@ -32,9 +32,9 @@ Signed-off-by: Stefan Wahren
board/i2se/duckbill/Makefile | 10 ++
board/i2se/duckbill/duckbill.c | 186 ++++++++++++++++++++++++++++++++
board/i2se/duckbill/iomux.c | 156 +++++++++++++++++++++++++++
- configs/duckbill_defconfig | 38 +++++++
+ configs/duckbill_defconfig | 40 +++++++
include/configs/duckbill.h | 179 ++++++++++++++++++++++++++++++
- 8 files changed, 595 insertions(+)
+ 8 files changed, 597 insertions(+)
create mode 100644 board/i2se/duckbill/Kconfig
create mode 100644 board/i2se/duckbill/MAINTAINERS
create mode 100644 board/i2se/duckbill/Makefile
@@ -43,6 +43,8 @@ Signed-off-by: Stefan Wahren
create mode 100644 configs/duckbill_defconfig
create mode 100644 include/configs/duckbill.h
+diff --git a/arch/arm/mach-imx/mxs/Kconfig b/arch/arm/mach-imx/mxs/Kconfig
+index 68072d5a1f..82aaa3ef76 100644
--- a/arch/arm/mach-imx/mxs/Kconfig
+++ b/arch/arm/mach-imx/mxs/Kconfig
@@ -50,6 +50,10 @@ config TARGET_APX4DEVKIT
@@ -64,6 +66,9 @@ Signed-off-by: Stefan Wahren
source "board/ppcag/bg0900/Kconfig"
source "board/schulercontrol/sc_sps_1/Kconfig"
source "board/technologic/ts4600/Kconfig"
+diff --git a/board/i2se/duckbill/Kconfig b/board/i2se/duckbill/Kconfig
+new file mode 100644
+index 0000000000..98c1e4689f
--- /dev/null
+++ b/board/i2se/duckbill/Kconfig
@@ -0,0 +1,15 @@
@@ -82,6 +87,9 @@ Signed-off-by: Stefan Wahren
+ default "duckbill"
+
+endif
+diff --git a/board/i2se/duckbill/MAINTAINERS b/board/i2se/duckbill/MAINTAINERS
+new file mode 100644
+index 0000000000..5496baa330
--- /dev/null
+++ b/board/i2se/duckbill/MAINTAINERS
@@ -0,0 +1,6 @@
@@ -91,12 +99,15 @@ Signed-off-by: Stefan Wahren
+F: board/i2se/duckbill/
+F: include/configs/duckbill.h
+F: configs/duckbill_defconfig
+diff --git a/board/i2se/duckbill/Makefile b/board/i2se/duckbill/Makefile
+new file mode 100644
+index 0000000000..0079eb413c
--- /dev/null
+++ b/board/i2se/duckbill/Makefile
@@ -0,0 +1,10 @@
+# SPDX-License-Identifier: GPL-2.0+
+#
-+# (C) Copyright 2014-2018
++# (C) Copyright 2014-2019
+# Michael Heimpold, mhei@heimpold.de.
+
+ifndef CONFIG_SPL_BUILD
@@ -104,6 +115,9 @@ Signed-off-by: Stefan Wahren
+else
+obj-y := iomux.o
+endif
+diff --git a/board/i2se/duckbill/duckbill.c b/board/i2se/duckbill/duckbill.c
+new file mode 100644
+index 0000000000..f93c372611
--- /dev/null
+++ b/board/i2se/duckbill/duckbill.c
@@ -0,0 +1,186 @@
@@ -111,7 +125,7 @@ Signed-off-by: Stefan Wahren
+/*
+ * I2SE Duckbill board
+ *
-+ * (C) Copyright 2014-2018 Michael Heimpold
++ * (C) Copyright 2014-2019 Michael Heimpold
+ */
+
+#include
@@ -293,6 +307,9 @@ Signed-off-by: Stefan Wahren
+
+ return 0;
+}
+diff --git a/board/i2se/duckbill/iomux.c b/board/i2se/duckbill/iomux.c
+new file mode 100644
+index 0000000000..1db3c52c34
--- /dev/null
+++ b/board/i2se/duckbill/iomux.c
@@ -0,0 +1,156 @@
@@ -300,7 +317,7 @@ Signed-off-by: Stefan Wahren
+/*
+ * I2SE Duckbill IOMUX setup
+ *
-+ * Copyright (C) 2013-2018 Michael Heimpold
++ * Copyright (C) 2013-2019 Michael Heimpold
+ */
+
+#include
@@ -452,9 +469,12 @@ Signed-off-by: Stefan Wahren
+ else
+ mxs_iomux_setup_multiple_pads(iomux_setup_v1, ARRAY_SIZE(iomux_setup_v1));
+}
+diff --git a/configs/duckbill_defconfig b/configs/duckbill_defconfig
+new file mode 100644
+index 0000000000..5a8c561b4e
--- /dev/null
+++ b/configs/duckbill_defconfig
-@@ -0,0 +1,38 @@
+@@ -0,0 +1,40 @@
+CONFIG_ARM=y
+CONFIG_ARCH_MX28=y
+CONFIG_SYS_TEXT_BASE=0x40002000
@@ -463,8 +483,9 @@ Signed-off-by: Stefan Wahren
+CONFIG_SPL_LIBGENERIC_SUPPORT=y
+CONFIG_TARGET_DUCKBILL=y
+CONFIG_SPL_SERIAL_SUPPORT=y
-+CONFIG_SPL=y
+CONFIG_NR_DRAM_BANKS=1
++CONFIG_SPL=y
++CONFIG_SPL_TEXT_BASE=0x00001000
+CONFIG_BOOTDELAY=1
+CONFIG_SYS_CONSOLE_IS_IN_ENV=y
+CONFIG_VERSION_VARIABLE=y
@@ -488,17 +509,21 @@ Signed-off-by: Stefan Wahren
+CONFIG_CMD_FS_GENERIC=y
+CONFIG_DOS_PARTITION=y
+CONFIG_ENV_IS_IN_MMC=y
++CONFIG_MXS_GPIO=y
+CONFIG_MMC_MXS=y
+CONFIG_MII=y
+CONFIG_CONS_INDEX=0
+CONFIG_OF_LIBFDT=y
+# CONFIG_EFI_LOADER is not set
+diff --git a/include/configs/duckbill.h b/include/configs/duckbill.h
+new file mode 100644
+index 0000000000..e7fce8843e
--- /dev/null
+++ b/include/configs/duckbill.h
@@ -0,0 +1,179 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
-+ * Copyright (C) 2014-2018 Michael Heimpold
++ * Copyright (C) 2014-2019 Michael Heimpold
+ *
+ */
+#ifndef __CONFIGS_DUCKBILL_H__
@@ -613,7 +638,7 @@ Signed-off-by: Stefan Wahren
+ "mmcroot=/dev/mmcblk0p2\0" \
+ "mmcargs=setenv bootargs console=${console},${baudrate} " \
+ "root=${mmcroot} " \
-+ "rootwait bootsys=${bootsys} panic=1\0" \
++ "rootwait bootsys=${bootsys} panic=1 ${extraargs}\0" \
+ "loadimage=ext4load mmc ${mmcdev}:${mmcpart} ${loadaddr} /boot/${image}\0" \
+ "loadfdt=ext4load mmc ${mmcdev}:${mmcpart} ${fdt_addr} /boot/${fdt_file}\0" \
+ "mmcboot=echo Booting from mmc ...; " \
@@ -636,7 +661,7 @@ Signed-off-by: Stefan Wahren
+ "nfsroot=/\0" \
+ "netargs=setenv bootargs console=${console},${baudrate} " \
+ "root=/dev/nfs " \
-+ "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
++ "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp ${extraargs}\0" \
+ "netboot=echo Booting from net ...; " \
+ "run netargs; " \
+ "if test ${ip_dyn} = yes; then " \
@@ -675,3 +700,6 @@ Signed-off-by: Stefan Wahren
+#include
+
+#endif /* __CONFIGS_DUCKBILL_H__ */
+--
+2.17.1
+
diff --git a/package/boot/uboot-omap/Makefile b/package/boot/uboot-omap/Makefile
index 69f234d182..70c8af1dc4 100644
--- a/package/boot/uboot-omap/Makefile
+++ b/package/boot/uboot-omap/Makefile
@@ -8,10 +8,10 @@
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
-PKG_VERSION:=2017.01
-PKG_RELEASE:=3
+PKG_VERSION:=2019.10
+PKG_RELEASE:=1
-PKG_HASH:=6c425175f93a4bcf2ec9faf5658ef279633dbd7856a293d95bd1ff516528ecf2
+PKG_HASH:=8d6d6070739522dd236cba7055b8736bfe92b4fac0ea18ad809829ca79667014
include $(INCLUDE_DIR)/u-boot.mk
include $(INCLUDE_DIR)/package.mk
@@ -19,7 +19,6 @@ include $(INCLUDE_DIR)/package.mk
define U-Boot/Default
BUILD_TARGET:=omap
UBOOT_IMAGE:=u-boot.img MLO
- UENV:=default
endef
define U-Boot/omap4_panda
@@ -27,14 +26,9 @@ define U-Boot/omap4_panda
BUILD_DEVICES:=ti_omap4-panda
endef
-define U-Boot/am335x_boneblack
- NAME:=TI AM335x BeagleBone Black
- BUILD_DEVICES:=ti_am335x-bone-black
-endef
-
define U-Boot/am335x_evm
NAME:=AM335x EVM
- BUILD_DEVICES:=ti_am335x-evm
+ BUILD_DEVICES:=ti_am335x-evm ti_am335x-bone-black
endef
define U-Boot/omap3_overo
@@ -46,12 +40,19 @@ define U-Boot/omap3_beagle
BUILD_DEVICES:=ti_omap3-beagle
endef
-UBOOT_TARGETS:=omap4_panda am335x_evm omap3_overo omap3_beagle am335x_boneblack
+UBOOT_TARGETS:=omap4_panda am335x_evm omap3_overo omap3_beagle
define Build/InstallDev
- $(INSTALL_DIR) $(STAGING_DIR_IMAGE)/$(BUILD_DEVICES)
- $(CP) $(patsubst %,$(PKG_BUILD_DIR)/%,$(UBOOT_IMAGE)) $(STAGING_DIR_IMAGE)/$(BUILD_DEVICES)/
- $(CP) ./files/uEnv-$(UENV).txt $(STAGING_DIR_IMAGE)/$(BUILD_DEVICES)/uEnv.txt
+ $(foreach device,$(BUILD_DEVICES), \
+ $(INSTALL_DIR) $(STAGING_DIR_IMAGE)/$(device)
+ )
+ $(foreach device,$(BUILD_DEVICES), \
+ $(CP) $(patsubst %,$(PKG_BUILD_DIR)/%,$(UBOOT_IMAGE)) $(STAGING_DIR_IMAGE)/$(device)/
+ )
+ $(foreach device,$(BUILD_DEVICES), \
+ mkimage -C none -A arm -T script -d ./files/boot.scr.txt \
+ $(STAGING_DIR_IMAGE)/$(device)/boot.scr
+ )
endef
$(eval $(call BuildPackage/U-Boot))
diff --git a/package/boot/uboot-omap/files/boot.scr.txt b/package/boot/uboot-omap/files/boot.scr.txt
new file mode 100644
index 0000000000..a97684b0e6
--- /dev/null
+++ b/package/boot/uboot-omap/files/boot.scr.txt
@@ -0,0 +1,9 @@
+if test -z "${devnum}"; then
+ setenv devnum 0
+fi
+
+setenv bootargs console=${console} root=/dev/mmcblk${devnum}p2 rootwait
+
+load mmc ${devnum}:1 ${loadaddr} /zImage \
+&& load mmc ${devnum}:1 ${fdtaddr} /dtbs/${fdtfile} \
+&& bootz ${loadaddr} - ${fdtaddr}
diff --git a/package/boot/uboot-omap/files/uEnv-default.txt b/package/boot/uboot-omap/files/uEnv-default.txt
deleted file mode 100644
index 3584e4379b..0000000000
--- a/package/boot/uboot-omap/files/uEnv-default.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-bootpart=0:1
-bootdir=/
-bootfile=zImage
-fdtdir=/dtbs
-uenvcmd=run loadfdt; run loadimage; run uenvbootargs ; bootz ${loadaddr} - ${fdtaddr}
-loadfdt=load mmc ${bootpart} ${fdtaddr} ${fdtdir}/${fdtfile}
-devtype=mmc
-uenvbootargs=setenv bootargs console=${console} root=/dev/mmcblk0p2
diff --git a/package/boot/uboot-omap/patches/101-disable-thumb-omap3.patch b/package/boot/uboot-omap/patches/101-disable-thumb-omap3.patch
deleted file mode 100644
index 8a3b024fe4..0000000000
--- a/package/boot/uboot-omap/patches/101-disable-thumb-omap3.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Index: u-boot-2017.01/include/configs/ti_omap3_common.h
-===================================================================
---- u-boot-2017.01.orig/include/configs/ti_omap3_common.h
-+++ u-boot-2017.01/include/configs/ti_omap3_common.h
-@@ -80,4 +80,9 @@
- /* Now bring in the rest of the common code. */
- #include
-
-+/* beagleboard doesnt boot with thumb */
-+#ifdef CONFIG_SYS_THUMB_BUILD
-+#undef CONFIG_SYS_THUMB_BUILD
-+#endif
-+
- #endif /* __CONFIG_TI_OMAP3_COMMON_H__ */
diff --git a/package/boot/uboot-omap/patches/102-minify-spl.patch b/package/boot/uboot-omap/patches/102-minify-spl.patch
deleted file mode 100644
index 66f6b6b59f..0000000000
--- a/package/boot/uboot-omap/patches/102-minify-spl.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-Index: u-boot-2017.01/configs/omap3_beagle_defconfig
-===================================================================
---- u-boot-2017.01.orig/configs/omap3_beagle_defconfig
-+++ u-boot-2017.01/configs/omap3_beagle_defconfig
-@@ -7,7 +7,7 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y
- CONFIG_VERSION_VARIABLE=y
- CONFIG_SPL=y
- CONFIG_SPL_MTD_SUPPORT=y
--CONFIG_SPL_OS_BOOT=y
-+# CONFIG_SPL_EXT_SUPPORT is not set
- # CONFIG_CMD_IMLS is not set
- CONFIG_CMD_ASKENV=y
- # CONFIG_CMD_FLASH is not set
-Index: u-boot-2017.01/common/Makefile
-===================================================================
---- u-boot-2017.01.orig/common/Makefile
-+++ u-boot-2017.01/common/Makefile
-@@ -174,8 +174,11 @@ obj-$(CONFIG_CMDLINE) += cli_simple.o
- obj-y += cli.o
- obj-$(CONFIG_CMDLINE) += cli_readline.o
- obj-$(CONFIG_CMD_DFU) += dfu.o
-+
-+ifndef CONFIG_SPL_BUILD
- obj-y += command.o
- obj-y += s_record.o
- obj-y += xyzModem.o
-+endif
-
- CFLAGS_env_embedded.o := -Wa,--no-warn -DENV_CRC=$(shell tools/envcrc 2>/dev/null)
-Index: u-boot-2017.01/cmd/Makefile
-===================================================================
---- u-boot-2017.01.orig/cmd/Makefile
-+++ u-boot-2017.01/cmd/Makefile
-@@ -161,7 +161,10 @@ endif # !CONFIG_SPL_BUILD
-
- obj-$(CONFIG_CMD_BLOB) += blob.o
-
-+
-+# ifndef CONFIG_SPL_BUILD
- # core command
- obj-y += nvedit.o
-+# endif # !CONFIG_SPL_BUILD
-
- obj-$(CONFIG_ARCH_MVEBU) += mvebu/
diff --git a/package/boot/uboot-omap/patches/103-disable-fat-write-spl.patch b/package/boot/uboot-omap/patches/103-disable-fat-write-spl.patch
deleted file mode 100644
index 89b02044dc..0000000000
--- a/package/boot/uboot-omap/patches/103-disable-fat-write-spl.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-Index: u-boot-2017.01/fs/fat/Makefile
-===================================================================
---- u-boot-2017.01.orig/fs/fat/Makefile
-+++ u-boot-2017.01/fs/fat/Makefile
-@@ -4,8 +4,8 @@
- #
-
- obj-$(CONFIG_FS_FAT) := fat.o
--obj-$(CONFIG_FAT_WRITE):= fat_write.o
-
- ifndef CONFIG_SPL_BUILD
-+obj-$(CONFIG_FAT_WRITE):= fat_write.o
- obj-$(CONFIG_FS_FAT) += file.o
- endif
-Index: u-boot-2017.01/fs/fat/fat.c
-===================================================================
---- u-boot-2017.01.orig/fs/fat/fat.c
-+++ u-boot-2017.01/fs/fat/fat.c
-@@ -163,7 +163,7 @@ static void get_name(dir_entry *dirent,
- }
-
- static int flush_dirty_fat_buffer(fsdata *mydata);
--#if !defined(CONFIG_FAT_WRITE)
-+#if !defined(CONFIG_FAT_WRITE) || defined(CONFIG_SPL_BUILD)
- /* Stub for read only operation */
- int flush_dirty_fat_buffer(fsdata *mydata)
- {
diff --git a/package/boot/uboot-omap/patches/104-omap3-overo-enable-thumb.patch b/package/boot/uboot-omap/patches/104-omap3-overo-enable-thumb.patch
deleted file mode 100644
index ca928c996c..0000000000
--- a/package/boot/uboot-omap/patches/104-omap3-overo-enable-thumb.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Index: u-boot-2017.01/include/configs/omap3_overo.h
-===================================================================
---- u-boot-2017.01.orig/include/configs/omap3_overo.h
-+++ u-boot-2017.01/include/configs/omap3_overo.h
-@@ -11,6 +11,13 @@
- #define CONFIG_NAND
-
- #include
-+
-+/* try to enable thumb - unknown if it's working
-+ * but otherwise it's too big for spl */
-+#ifndef CONFIG_SYS_THUMB_BUILD
-+#define CONFIG_SYS_THUMB_BUILD
-+#endif
-+
- /*
- * We are only ever GP parts and will utilize all of the "downloaded image"
- * area in SRAM which starts at 0x40200000 and ends at 0x4020FFFF (64KB).
diff --git a/package/boot/uboot-omap/patches/105-serial-ns16550-bugfix-ns16550-fifo-not-enabled.patch b/package/boot/uboot-omap/patches/105-serial-ns16550-bugfix-ns16550-fifo-not-enabled.patch
deleted file mode 100644
index 513efaf74d..0000000000
--- a/package/boot/uboot-omap/patches/105-serial-ns16550-bugfix-ns16550-fifo-not-enabled.patch
+++ /dev/null
@@ -1,309 +0,0 @@
-From 17fa032671f7981628fe16b30399638842a4b1bb Mon Sep 17 00:00:00 2001
-From: Heiko Schocher
-Date: Wed, 18 Jan 2017 08:05:49 +0100
-Subject: [PATCH] serial, ns16550: bugfix: ns16550 fifo not enabled
-
-commit: 65f83802b7a5b "serial: 16550: Add getfcr accessor"
-breaks u-boot commandline working with long commands
-sending to the board.
-
-Since the above patch, you have to setup the fcr register.
-
-For board/archs which enable OF_PLATDATA, the new field
-fcr in struct ns16550_platdata is not filled with a
-default value ...
-
-This leads in not setting up the uarts fifo, which ends
-in problems, when you send long commands to u-boots
-commandline.
-
-Detected this issue with automated tbot tests on am335x
-based shc board.
-
-The error does not popup, if you type commands. You need
-to copy&paste a long command to u-boots commandshell
-(or send a long command with tbot)
-
-Possible boards/plattforms with problems:
-./arch/arm/cpu/arm926ejs/lpc32xx/devices.c
-./arch/arm/mach-tegra/board.c
-./board/overo/overo.c
-./board/quipos/cairo/cairo.c
-./board/logicpd/omap3som/omap3logic.c
-./board/logicpd/zoom1/zoom1.c
-./board/timll/devkit8000/devkit8000.c
-./board/lg/sniper/sniper.c
-./board/ti/beagle/beagle.c
-./drivers/serial/serial_rockchip.c
-
-Signed-off-by: Heiko Schocher
-Signed-off-by: Ladislav Michl
-Tested-by: Adam Ford
-Reviewed-by: Tom Rini
----
- arch/arm/cpu/arm926ejs/lpc32xx/devices.c | 12 ++++++++----
- arch/arm/mach-omap2/am33xx/board.c | 18 ++++++++++++------
- arch/arm/mach-tegra/board.c | 1 +
- board/isee/igep00x0/igep00x0.c | 3 ++-
- board/lg/sniper/sniper.c | 3 ++-
- board/logicpd/omap3som/omap3logic.c | 3 ++-
- board/logicpd/zoom1/zoom1.c | 3 ++-
- board/overo/overo.c | 3 ++-
- board/quipos/cairo/cairo.c | 3 ++-
- board/ti/beagle/beagle.c | 3 ++-
- board/timll/devkit8000/devkit8000.c | 3 ++-
- drivers/serial/ns16550.c | 9 +++------
- drivers/serial/serial_rockchip.c | 1 +
- include/ns16550.h | 5 +++++
- 14 files changed, 46 insertions(+), 24 deletions(-)
-
-diff --git a/arch/arm/cpu/arm926ejs/lpc32xx/devices.c b/arch/arm/cpu/arm926ejs/lpc32xx/devices.c
-index 399b07c5420a..f744398ca7ad 100644
---- a/arch/arm/cpu/arm926ejs/lpc32xx/devices.c
-+++ b/arch/arm/cpu/arm926ejs/lpc32xx/devices.c
-@@ -45,10 +45,14 @@ void lpc32xx_uart_init(unsigned int uart_id)
-
- #if !CONFIG_IS_ENABLED(OF_CONTROL)
- static const struct ns16550_platdata lpc32xx_uart[] = {
-- { .base = UART3_BASE, .reg_shift = 2, .clock = CONFIG_SYS_NS16550_CLK },
-- { .base = UART4_BASE, .reg_shift = 2, .clock = CONFIG_SYS_NS16550_CLK },
-- { .base = UART5_BASE, .reg_shift = 2, .clock = CONFIG_SYS_NS16550_CLK },
-- { .base = UART6_BASE, .reg_shift = 2, .clock = CONFIG_SYS_NS16550_CLK },
-+ { .base = UART3_BASE, .reg_shift = 2,
-+ .clock = CONFIG_SYS_NS16550_CLK, .fcr = UART_FCR_DEFVAL, },
-+ { .base = UART4_BASE, .reg_shift = 2,
-+ .clock = CONFIG_SYS_NS16550_CLK, .fcr = UART_FCR_DEFVAL, },
-+ { .base = UART5_BASE, .reg_shift = 2,
-+ .clock = CONFIG_SYS_NS16550_CLK, .fcr = UART_FCR_DEFVAL, },
-+ { .base = UART6_BASE, .reg_shift = 2,
-+ .clock = CONFIG_SYS_NS16550_CLK, .fcr = UART_FCR_DEFVAL, },
- };
-
- #if defined(CONFIG_LPC32XX_HSUART)
-diff --git a/arch/arm/mach-omap2/am33xx/board.c b/arch/arm/mach-omap2/am33xx/board.c
-index 73824df18fa7..190310fd0079 100644
---- a/arch/arm/mach-omap2/am33xx/board.c
-+++ b/arch/arm/mach-omap2/am33xx/board.c
-@@ -40,14 +40,20 @@ DECLARE_GLOBAL_DATA_PTR;
-
- #if !CONFIG_IS_ENABLED(OF_CONTROL)
- static const struct ns16550_platdata am33xx_serial[] = {
-- { .base = CONFIG_SYS_NS16550_COM1, .reg_shift = 2, .clock = CONFIG_SYS_NS16550_CLK },
-+ { .base = CONFIG_SYS_NS16550_COM1, .reg_shift = 2,
-+ .clock = CONFIG_SYS_NS16550_CLK, .fcr = UART_FCR_DEFVAL, },
- # ifdef CONFIG_SYS_NS16550_COM2
-- { .base = CONFIG_SYS_NS16550_COM2, .reg_shift = 2, .clock = CONFIG_SYS_NS16550_CLK },
-+ { .base = CONFIG_SYS_NS16550_COM2, .reg_shift = 2,
-+ .clock = CONFIG_SYS_NS16550_CLK, .fcr = UART_FCR_DEFVAL, },
- # ifdef CONFIG_SYS_NS16550_COM3
-- { .base = CONFIG_SYS_NS16550_COM3, .reg_shift = 2, .clock = CONFIG_SYS_NS16550_CLK },
-- { .base = CONFIG_SYS_NS16550_COM4, .reg_shift = 2, .clock = CONFIG_SYS_NS16550_CLK },
-- { .base = CONFIG_SYS_NS16550_COM5, .reg_shift = 2, .clock = CONFIG_SYS_NS16550_CLK },
-- { .base = CONFIG_SYS_NS16550_COM6, .reg_shift = 2, .clock = CONFIG_SYS_NS16550_CLK },
-+ { .base = CONFIG_SYS_NS16550_COM3, .reg_shift = 2,
-+ .clock = CONFIG_SYS_NS16550_CLK, .fcr = UART_FCR_DEFVAL, },
-+ { .base = CONFIG_SYS_NS16550_COM4, .reg_shift = 2,
-+ .clock = CONFIG_SYS_NS16550_CLK, .fcr = UART_FCR_DEFVAL, },
-+ { .base = CONFIG_SYS_NS16550_COM5, .reg_shift = 2,
-+ .clock = CONFIG_SYS_NS16550_CLK, .fcr = UART_FCR_DEFVAL, },
-+ { .base = CONFIG_SYS_NS16550_COM6, .reg_shift = 2,
-+ .clock = CONFIG_SYS_NS16550_CLK, .fcr = UART_FCR_DEFVAL, },
- # endif
- # endif
- };
-diff --git a/arch/arm/mach-tegra/board.c b/arch/arm/mach-tegra/board.c
-index 3d1d26d13d13..b3a041b539af 100644
---- a/arch/arm/mach-tegra/board.c
-+++ b/arch/arm/mach-tegra/board.c
-@@ -219,6 +219,7 @@ static struct ns16550_platdata ns16550_com1_pdata = {
- .base = CONFIG_SYS_NS16550_COM1,
- .reg_shift = 2,
- .clock = CONFIG_SYS_NS16550_CLK,
-+ .fcr = UART_FCR_DEFVAL,
- };
-
- U_BOOT_DEVICE(ns16550_com1) = {
-diff --git a/board/isee/igep00x0/igep00x0.c b/board/isee/igep00x0/igep00x0.c
-index ae7959b1eb6e..5a3498f570a6 100644
---- a/board/isee/igep00x0/igep00x0.c
-+++ b/board/isee/igep00x0/igep00x0.c
-@@ -32,7 +32,8 @@ DECLARE_GLOBAL_DATA_PTR;
- static const struct ns16550_platdata igep_serial = {
- .base = OMAP34XX_UART3,
- .reg_shift = 2,
-- .clock = V_NS16550_CLK
-+ .clock = V_NS16550_CLK,
-+ .fcr = UART_FCR_DEFVAL,
- };
-
- U_BOOT_DEVICE(igep_uart) = {
-diff --git a/board/lg/sniper/sniper.c b/board/lg/sniper/sniper.c
-index 0662449c3875..b2b8f8861f11 100644
---- a/board/lg/sniper/sniper.c
-+++ b/board/lg/sniper/sniper.c
-@@ -31,7 +31,8 @@ const omap3_sysinfo sysinfo = {
- static const struct ns16550_platdata serial_omap_platdata = {
- .base = OMAP34XX_UART3,
- .reg_shift = 2,
-- .clock = V_NS16550_CLK
-+ .clock = V_NS16550_CLK,
-+ .fcr = UART_FCR_DEFVAL,
- };
-
- U_BOOT_DEVICE(sniper_serial) = {
-diff --git a/board/logicpd/omap3som/omap3logic.c b/board/logicpd/omap3som/omap3logic.c
-index 21b3fdcf49cf..b2fcc28f8b4b 100644
---- a/board/logicpd/omap3som/omap3logic.c
-+++ b/board/logicpd/omap3som/omap3logic.c
-@@ -49,7 +49,8 @@ DECLARE_GLOBAL_DATA_PTR;
- static const struct ns16550_platdata omap3logic_serial = {
- .base = OMAP34XX_UART1,
- .reg_shift = 2,
-- .clock = V_NS16550_CLK
-+ .clock = V_NS16550_CLK,
-+ .fcr = UART_FCR_DEFVAL,
- };
-
- U_BOOT_DEVICE(omap3logic_uart) = {
-diff --git a/board/logicpd/zoom1/zoom1.c b/board/logicpd/zoom1/zoom1.c
-index 2821ee22674f..0fad23af62f6 100644
---- a/board/logicpd/zoom1/zoom1.c
-+++ b/board/logicpd/zoom1/zoom1.c
-@@ -47,7 +47,8 @@ static const u32 gpmc_lab_enet[] = {
- static const struct ns16550_platdata zoom1_serial = {
- .base = OMAP34XX_UART3,
- .reg_shift = 2,
-- .clock = V_NS16550_CLK
-+ .clock = V_NS16550_CLK,
-+ .fcr = UART_FCR_DEFVAL,
- };
-
- U_BOOT_DEVICE(zoom1_uart) = {
-diff --git a/board/overo/overo.c b/board/overo/overo.c
-index 40f13e5876cc..5e447262bcfd 100644
---- a/board/overo/overo.c
-+++ b/board/overo/overo.c
-@@ -70,7 +70,8 @@ static struct {
- static const struct ns16550_platdata overo_serial = {
- .base = OMAP34XX_UART3,
- .reg_shift = 2,
-- .clock = V_NS16550_CLK
-+ .clock = V_NS16550_CLK,
-+ .fcr = UART_FCR_DEFVAL,
- };
-
- U_BOOT_DEVICE(overo_uart) = {
-diff --git a/board/quipos/cairo/cairo.c b/board/quipos/cairo/cairo.c
-index 77e4482906f0..793aa9023150 100644
---- a/board/quipos/cairo/cairo.c
-+++ b/board/quipos/cairo/cairo.c
-@@ -93,7 +93,8 @@ void get_board_mem_timings(struct board_sdrc_timings *timings)
- static const struct ns16550_platdata cairo_serial = {
- .base = OMAP34XX_UART2,
- .reg_shift = 2,
-- .clock = V_NS16550_CLK
-+ .clock = V_NS16550_CLK,
-+ .fcr = UART_FCR_DEFVAL,
- };
-
- U_BOOT_DEVICE(cairo_uart) = {
-diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c
-index cfdab3e34253..23c79333a223 100644
---- a/board/ti/beagle/beagle.c
-+++ b/board/ti/beagle/beagle.c
-@@ -75,7 +75,8 @@ static struct {
- static const struct ns16550_platdata beagle_serial = {
- .base = OMAP34XX_UART3,
- .reg_shift = 2,
-- .clock = V_NS16550_CLK
-+ .clock = V_NS16550_CLK,
-+ .fcr = UART_FCR_DEFVAL,
- };
-
- U_BOOT_DEVICE(beagle_uart) = {
-diff --git a/board/timll/devkit8000/devkit8000.c b/board/timll/devkit8000/devkit8000.c
-index f785dbe6d732..b2f060b2ddbf 100644
---- a/board/timll/devkit8000/devkit8000.c
-+++ b/board/timll/devkit8000/devkit8000.c
-@@ -48,7 +48,8 @@ static u32 gpmc_net_config[GPMC_MAX_REG] = {
- static const struct ns16550_platdata devkit8000_serial = {
- .base = OMAP34XX_UART3,
- .reg_shift = 2,
-- .clock = V_NS16550_CLK
-+ .clock = V_NS16550_CLK,
-+ .fcr = UART_FCR_DEFVAL,
- };
-
- U_BOOT_DEVICE(devkit8000_uart) = {
-diff --git a/drivers/serial/ns16550.c b/drivers/serial/ns16550.c
-index 9b423a591d8a..2df4a1f04fe5 100644
---- a/drivers/serial/ns16550.c
-+++ b/drivers/serial/ns16550.c
-@@ -20,9 +20,6 @@ DECLARE_GLOBAL_DATA_PTR;
- #define UART_LCRVAL UART_LCR_8N1 /* 8 data, 1 stop, no parity */
- #define UART_MCRVAL (UART_MCR_DTR | \
- UART_MCR_RTS) /* RTS/DTR */
--#define UART_FCRVAL (UART_FCR_FIFO_EN | \
-- UART_FCR_RXSR | \
-- UART_FCR_TXSR) /* Clear & enable FIFOs */
-
- #ifndef CONFIG_DM_SERIAL
- #ifdef CONFIG_SYS_NS16550_PORT_MAPPED
-@@ -138,7 +135,7 @@ static u32 ns16550_getfcr(NS16550_t port)
- #else
- static u32 ns16550_getfcr(NS16550_t port)
- {
-- return UART_FCRVAL;
-+ return UART_FCR_DEFVAL;
- }
- #endif
-
-@@ -275,7 +272,7 @@ static inline void _debug_uart_init(void)
- CONFIG_BAUDRATE);
- serial_dout(&com_port->ier, CONFIG_SYS_NS16550_IER);
- serial_dout(&com_port->mcr, UART_MCRVAL);
-- serial_dout(&com_port->fcr, UART_FCRVAL);
-+ serial_dout(&com_port->fcr, UART_FCR_DEFVAL);
-
- serial_dout(&com_port->lcr, UART_LCR_BKSE | UART_LCRVAL);
- serial_dout(&com_port->dll, baud_divisor & 0xff);
-@@ -440,7 +437,7 @@ int ns16550_serial_ofdata_to_platdata(struct udevice *dev)
- return -EINVAL;
- }
-
-- plat->fcr = UART_FCRVAL;
-+ plat->fcr = UART_FCR_DEFVAL;
- if (port_type == PORT_JZ4780)
- plat->fcr |= UART_FCR_UME;
-
-diff --git a/drivers/serial/serial_rockchip.c b/drivers/serial/serial_rockchip.c
-index 6bac95a414ce..c06afc58f7ea 100644
---- a/drivers/serial/serial_rockchip.c
-+++ b/drivers/serial/serial_rockchip.c
-@@ -27,6 +27,7 @@ static int rockchip_serial_probe(struct udevice *dev)
- plat->plat.base = plat->dtplat.reg[0];
- plat->plat.reg_shift = plat->dtplat.reg_shift;
- plat->plat.clock = plat->dtplat.clock_frequency;
-+ plat->plat.fcr = UART_FCR_DEFVAL;
- dev->platdata = &plat->plat;
-
- return ns16550_serial_probe(dev);
-diff --git a/include/ns16550.h b/include/ns16550.h
-index 7c9703683109..5fcbcd2e74e3 100644
---- a/include/ns16550.h
-+++ b/include/ns16550.h
-@@ -121,6 +121,11 @@ typedef struct NS16550 *NS16550_t;
- /* Ingenic JZ47xx specific UART-enable bit. */
- #define UART_FCR_UME 0x10
-
-+/* Clear & enable FIFOs */
-+#define UART_FCR_DEFVAL (UART_FCR_FIFO_EN | \
-+ UART_FCR_RXSR | \
-+ UART_FCR_TXSR)
-+
- /*
- * These are the definitions for the Modem Control Register
- */
---
-2.17.0
-
diff --git a/package/boot/uboot-oxnas/src/tools/mkox820crc.c b/package/boot/uboot-oxnas/src/tools/mkox820crc.c
index d100191f2d..873706245b 100644
--- a/package/boot/uboot-oxnas/src/tools/mkox820crc.c
+++ b/package/boot/uboot-oxnas/src/tools/mkox820crc.c
@@ -84,6 +84,7 @@ int main(int argc, char **argv)
if (status != file_length) {
printf("Failed to load image\n");
+ free(executable);
return -ENOENT;
}
@@ -111,6 +112,7 @@ int main(int argc, char **argv)
status = lseek(in_file, 0, SEEK_SET);
if (status != 0) {
printf("failed to rewind\n");
+ free(executable);
return 1;
}
len = write(in_file, &img_header, sizeof(img_header));
@@ -118,6 +120,7 @@ int main(int argc, char **argv)
len = write(in_file, executable, file_length);
assert(len == file_length);
close(in_file);
+ free(executable);
return 0;
}
diff --git a/package/boot/uboot-sunxi/Makefile b/package/boot/uboot-sunxi/Makefile
index 1728cc2f1e..eef4c56f53 100644
--- a/package/boot/uboot-sunxi/Makefile
+++ b/package/boot/uboot-sunxi/Makefile
@@ -9,9 +9,9 @@
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
-PKG_VERSION:=2018.05
+PKG_VERSION:=2019.01
-PKG_HASH:=4da13c2a6139a78cc08608f21fd4741db27eda336cfad7ab8264fda923b9c048
+PKG_HASH:=50bd7e5a466ab828914d080d5f6a432345b500e8fba1ad3b7b61e95e60d51c22
PKG_MAINTAINER:=Zoltan HERPAI
@@ -28,67 +28,67 @@ endef
define U-Boot/A10-OLinuXino-Lime
BUILD_SUBTARGET:=cortexa8
NAME:=A10 OLinuXino LIME
- BUILD_DEVICES:=sun4i-a10-olinuxino-lime
+ BUILD_DEVICES:=olimex_a10-olinuxino-lime
endef
define U-Boot/A13-OLinuXino
BUILD_SUBTARGET:=cortexa8
NAME:=A13 OlinuXino
- BUILD_DEVICES:=sun5i-a13-olinuxino
+ BUILD_DEVICES:=olimex_a13-olinuxino
endef
define U-Boot/A20-OLinuXino-Lime
BUILD_SUBTARGET:=cortexa7
NAME:=A20 OLinuXino LIME
- BUILD_DEVICES:=sun7i-a20-olinuxino-lime
+ BUILD_DEVICES:=olimex_a20-olinuxino-lime
endef
define U-Boot/A20-OLinuXino-Lime2
BUILD_SUBTARGET:=cortexa7
NAME:=A20 OLinuXino LIME2
- BUILD_DEVICES:=sun7i-a20-olinuxino-lime2
+ BUILD_DEVICES:=olimex_a20-olinuxino-lime2
endef
define U-Boot/A20-OLinuXino-Lime2-eMMC
BUILD_SUBTARGET:=cortexa7
NAME:=A20 OLinuXino LIME2 eMMC
- BUILD_DEVICES:=sun7i-a20-olinuxino-lime2-emmc
+ BUILD_DEVICES:=olimex_a20-olinuxino-lime2-emmc
endef
define U-Boot/A20-OLinuXino_MICRO
BUILD_SUBTARGET:=cortexa7
NAME:=A20 OLinuXino MICRO
- BUILD_DEVICES:=sun7i-a20-olinuxino-micro
+ BUILD_DEVICES:=olimex_a20-olinuxino-micro
endef
define U-Boot/Bananapi
BUILD_SUBTARGET:=cortexa7
NAME:=Bananapi
- BUILD_DEVICES:=sun7i-a20-bananapi
+ BUILD_DEVICES:=lemaker_bananapi
endef
define U-Boot/Bananapro
BUILD_SUBTARGET:=cortexa7
NAME:=Bananapro
- BUILD_DEVICES:=sun7i-a20-bananapro
+ BUILD_DEVICES:=lemaker_bananapro
endef
define U-Boot/Cubieboard
BUILD_SUBTARGET:=cortexa8
NAME:=Cubieboard
- BUILD_DEVICES:=sun4i-a10-cubieboard
+ BUILD_DEVICES:=cubietech_a10-cubieboard
endef
define U-Boot/Cubieboard2
BUILD_SUBTARGET:=cortexa7
NAME:=Cubieboard2
- BUILD_DEVICES:=sun7i-a20-cubieboard2
+ BUILD_DEVICES:=cubietech_cubieboard2
endef
define U-Boot/Cubietruck
BUILD_SUBTARGET:=cortexa7
NAME:=Cubietruck
- BUILD_DEVICES:=sun7i-a20-cubietruck
+ BUILD_DEVICES:=cubietech_cubietruck
endef
define U-Boot/Hummingbird_A31
@@ -99,79 +99,97 @@ endef
define U-Boot/Marsboard_A10
BUILD_SUBTARGET:=cortexa8
NAME:=Marsboard
- BUILD_DEVICES:=sun4i-a10-marsboard
+ BUILD_DEVICES:=marsboard_a10-marsboard
endef
define U-Boot/Mele_M9
BUILD_SUBTARGET:=cortexa7
NAME:=Mele M9 (A31)
- BUILD_DEVICES:=sun6i-a31-m9
+ BUILD_DEVICES:=mele_m9
endef
define U-Boot/OLIMEX_A13_SOM
BUILD_SUBTARGET:=cortexa8
NAME:=Olimex A13 SOM
- BUILD_DEVICES:=sun5i-a13-olimex-som
+ BUILD_DEVICES:=olimex_a13-olimex-som
endef
define U-Boot/Linksprite_pcDuino
BUILD_SUBTARGET:=cortexa8
NAME:=Linksprite pcDuino
- BUILD_DEVICES:=sun4i-a10-pcduino
+ BUILD_DEVICES:=linksprite_a10-pcduino
endef
define U-Boot/Linksprite_pcDuino3
BUILD_SUBTARGET:=cortexa7
NAME:=Linksprite pcDuino3
- BUILD_DEVICES:=sun7i-a20-pcduino3
+ BUILD_DEVICES:=linksprite_pcduino3
endef
define U-Boot/Lamobo_R1
BUILD_SUBTARGET:=cortexa7
NAME:=Lamobo R1
- BUILD_DEVICES:=sun7i-a20-lamobo-r1
+ BUILD_DEVICES:=lamobo_lamobo-r1
endef
define U-Boot/nanopi_m1_plus
BUILD_SUBTARGET:=cortexa7
NAME:=NanoPi M1 Plus (H3)
- BUILD_DEVICES:=sun8i-h3-nanopi-m1-plus
+ BUILD_DEVICES:=friendlyarm_nanopi-m1-plus
+endef
+
+define U-Boot/nanopi_neo_air
+ BUILD_SUBTARGET:=cortexa7
+ NAME:=U-Boot for NanoPi NEO Air (H3)
+ BUILD_DEVICES:=friendlyarm_nanopi-neo-air
endef
define U-Boot/nanopi_neo
BUILD_SUBTARGET:=cortexa7
NAME:=U-Boot for NanoPi NEO (H3)
- BUILD_DEVICES:=sun8i-h3-nanopi-neo
+ BUILD_DEVICES:=friendlyarm_nanopi-neo
endef
define U-Boot/orangepi_r1
BUILD_SUBTARGET:=cortexa7
NAME:=Orange Pi R1 (H2+)
- BUILD_DEVICES:=sun8i-h2-plus-orangepi-r1
+ BUILD_DEVICES:=xunlong_orangepi-r1
endef
define U-Boot/orangepi_zero
BUILD_SUBTARGET:=cortexa7
NAME:=Orange Pi Zero (H2+)
- BUILD_DEVICES:=sun8i-h2-plus-orangepi-zero
+ BUILD_DEVICES:=xunlong_orangepi-zero
+endef
+
+define U-Boot/orangepi_one
+ BUILD_SUBTARGET:=cortexa7
+ NAME:=Orange Pi One (H3)
+ BUILD_DEVICES:=xunlong_orangepi-one
endef
define U-Boot/orangepi_pc
BUILD_SUBTARGET:=cortexa7
NAME:=Orange Pi PC (H3)
- BUILD_DEVICES:=sun8i-h3-orangepi-pc
+ BUILD_DEVICES:=xunlong_orangepi-pc
+endef
+
+define U-Boot/orangepi_pc_plus
+ BUILD_SUBTARGET:=cortexa7
+ NAME:=Orange Pi PC Plus (H3)
+ BUILD_DEVICES:=xunlong_orangepi-pc-plus
endef
define U-Boot/orangepi_plus
BUILD_SUBTARGET:=cortexa7
NAME:=Orange Pi Plus (H3)
- BUILD_DEVICES:=sun8i-h3-orangepi-plus
+ BUILD_DEVICES:=xunlong_orangepi-plus
endef
define U-Boot/orangepi_2
BUILD_SUBTARGET:=cortexa7
NAME:=Orange Pi 2 (H3)
- BUILD_DEVICES:=sun8i-h3-orangepi-2
+ BUILD_DEVICES:=xunlong_orangepi-2
endef
define U-Boot/pangolin
@@ -183,7 +201,7 @@ endef
define U-Boot/nanopi_neo_plus2
BUILD_SUBTARGET:=cortexa53
NAME:=NanoPi NEO Plus2 (H5)
- BUILD_DEVICES:=sun50i-h5-nanopi-neo-plus2
+ BUILD_DEVICES:=friendlyarm_nanopi-neo-plus2
DEPENDS:=+PACKAGE_u-boot-nanopi_neo_plus2:arm-trusted-firmware-sunxi
UENV:=a64
endef
@@ -191,7 +209,7 @@ endef
define U-Boot/nanopi_neo2
BUILD_SUBTARGET:=cortexa53
NAME:=NanoPi NEO2 (H5)
- BUILD_DEVICES:=sun50i-h5-nanopi-neo2
+ BUILD_DEVICES:=friendlyarm_nanopi-neo2
DEPENDS:=+PACKAGE_u-boot-nanopi_neo2:arm-trusted-firmware-sunxi
UENV:=a64
endef
@@ -199,15 +217,21 @@ endef
define U-Boot/pine64_plus
BUILD_SUBTARGET:=cortexa53
NAME:=Pine64 Plus A64
- BUILD_DEVICES:=sun50i-a64-pine64-plus
+ BUILD_DEVICES:=pine64_pine64-plus
DEPENDS:=+PACKAGE_u-boot-pine64_plus:arm-trusted-firmware-sunxi
UENV:=a64
endef
+define U-Boot/Sinovoip_BPI_M2_Plus
+ BUILD_SUBTARGET:=cortexa7
+ NAME:=Bananapi M2 Plus
+ BUILD_DEVICES:=sinovoip_bananapi-m2-plus
+endef
+
define U-Boot/sopine_baseboard
BUILD_SUBTARGET:=cortexa53
NAME:=Sopine Baseboard
- BUILD_DEVICES:=sun50i-a64-sopine-baseboard
+ BUILD_DEVICES:=pine64_sopine-baseboard
DEPENDS:=+PACKAGE_u-boot-sopine_baseboard:arm-trusted-firmware-sunxi
UENV:=a64
endef
@@ -216,7 +240,7 @@ endef
define U-Boot/orangepi_zero_plus
BUILD_SUBTARGET:=cortexa53
NAME:=Xunlong Orange Pi Zero Plus
- BUILD_DEVICES:=sun50i-h5-orangepi-zero-plus
+ BUILD_DEVICES:=xunlong_orangepi-zero-plus
DEPENDS:=+PACKAGE_u-boot-orangepi_zero_plus:arm-trusted-firmware-sunxi
UENV:=a64
endef
@@ -224,11 +248,17 @@ endef
define U-Boot/orangepi_pc2
BUILD_SUBTARGET:=cortexa53
NAME:=Xunlong Orange Pi PC2
- BUILD_DEVICES:=sun50i-h5-orangepi-pc2
+ BUILD_DEVICES:=xunlong_orangepi-pc2
DEPENDS:=+PACKAGE_u-boot-orangepi_pc2:arm-trusted-firmware-sunxi
UENV:=a64
endef
+define U-Boot/Sinovoip_BPI_M2_Ultra
+ BUILD_SUBTARGET:=cortexa7
+ NAME:=Bananapi M2 Ultra
+ BUILD_DEVICES:=lemaker_bananapi-m2-ultra
+endef
+
UBOOT_TARGETS := \
A10-OLinuXino-Lime \
A13-OLinuXino \
@@ -250,16 +280,21 @@ UBOOT_TARGETS := \
Lamobo_R1 \
nanopi_m1_plus \
nanopi_neo \
+ nanopi_neo_air \
nanopi_neo_plus2 \
nanopi_neo2 \
orangepi_zero \
orangepi_r1 \
+ orangepi_one \
orangepi_pc \
+ orangepi_pc_plus \
orangepi_plus \
orangepi_2 \
orangepi_pc2 \
pangolin \
pine64_plus \
+ Sinovoip_BPI_M2_Plus \
+ Sinovoip_BPI_M2_Ultra \
sopine_baseboard \
orangepi_zero_plus
diff --git a/package/boot/uboot-sunxi/patches/003-add-theobroma-a31-pangolin.patch b/package/boot/uboot-sunxi/patches/003-add-theobroma-a31-pangolin.patch
index 6501cca6d2..899bcb1299 100644
--- a/package/boot/uboot-sunxi/patches/003-add-theobroma-a31-pangolin.patch
+++ b/package/boot/uboot-sunxi/patches/003-add-theobroma-a31-pangolin.patch
@@ -1,6 +1,6 @@
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
-@@ -290,6 +290,7 @@ dtb-$(CONFIG_MACH_SUN6I) += \
+@@ -313,6 +313,7 @@ dtb-$(CONFIG_MACH_SUN6I) += \
sun6i-a31-m9.dtb \
sun6i-a31-mele-a1000g-quad.dtb \
sun6i-a31-mixtile-loftq.dtb \
@@ -10,19 +10,17 @@
sun6i-a31s-inet-q972.dtb \
--- a/arch/arm/dts/sun6i-a31.dtsi
+++ b/arch/arm/dts/sun6i-a31.dtsi
-@@ -679,6 +679,13 @@
- allwinner,pull = ;
+@@ -641,6 +641,11 @@
+ function = "lcd0";
};
+ i2c3_pins_a: i2c3@0 {
+ allwinner,pins = "PB5", "PB6";
+ allwinner,function = "i2c3";
-+ allwinner,drive = ;
-+ allwinner,pull = ;
+ };
+
mmc0_pins_a: mmc0@0 {
- allwinner,pins = "PF0", "PF1", "PF2",
+ pins = "PF0", "PF1", "PF2",
"PF3", "PF4", "PF5";
--- /dev/null
+++ b/arch/arm/dts/sun6i-a31-pangolin.dts
@@ -360,7 +358,7 @@
+CONFIG_SUNXI_SPI=y
--- a/arch/arm/mach-sunxi/Kconfig
+++ b/arch/arm/mach-sunxi/Kconfig
-@@ -836,6 +836,14 @@ config VIDEO_LCD_PANEL_I2C_SCL
+@@ -875,6 +875,14 @@ config VIDEO_LCD_PANEL_I2C_SCL
Set the SCL pin for the LCD i2c interface. This takes a string in the
format understood by sunxi_name_to_gpio, e.g. PH1 for pin 1 of port H.
diff --git a/package/boot/uboot-sunxi/patches/062-A20-improve-gmac-upload.patch b/package/boot/uboot-sunxi/patches/062-A20-improve-gmac-upload.patch
index 6dbcb10719..a1caf18a18 100644
--- a/package/boot/uboot-sunxi/patches/062-A20-improve-gmac-upload.patch
+++ b/package/boot/uboot-sunxi/patches/062-A20-improve-gmac-upload.patch
@@ -2,11 +2,11 @@
--- a/configs/A20-OLinuXino-Lime2_defconfig
+++ b/configs/A20-OLinuXino-Lime2_defconfig
-@@ -22,6 +22,7 @@ CONFIG_DFU_RAM=y
- CONFIG_ETH_DESIGNWARE=y
+@@ -25,6 +25,7 @@ CONFIG_ETH_DESIGNWARE=y
CONFIG_RGMII=y
+ CONFIG_MII=y
CONFIG_SUN7I_GMAC=y
+CONFIG_GMAC_TX_DELAY=1
CONFIG_AXP_ALDO3_VOLT=2800
- CONFIG_AXP_ALDO4_VOLT=2800
- CONFIG_SCSI=y
+ CONFIG_AXP_ALDO3_VOLT_SLOPE_08=y
+ CONFIG_AXP_ALDO3_INRUSH_QUIRK=y
diff --git a/package/boot/uboot-sunxi/patches/063-fix-lime2-revK-add-micrel-PHY.patch b/package/boot/uboot-sunxi/patches/063-fix-lime2-revK-add-micrel-PHY.patch
new file mode 100644
index 0000000000..9ea0642537
--- /dev/null
+++ b/package/boot/uboot-sunxi/patches/063-fix-lime2-revK-add-micrel-PHY.patch
@@ -0,0 +1,44 @@
+--- a/configs/A20-OLinuXino-Lime2-eMMC_defconfig
++++ b/configs/A20-OLinuXino-Lime2-eMMC_defconfig
+@@ -8,6 +8,8 @@ CONFIG_MMC_SUNXI_SLOT_EXTRA=2
+ CONFIG_USB0_VBUS_PIN="PC17"
+ CONFIG_USB0_VBUS_DET="PH5"
+ CONFIG_I2C1_ENABLE=y
++CONFIG_PHY_MICREL=y
++CONFIG_PHY_MICREL_KSZ90X1=y
+ CONFIG_SATAPWR="PC3"
+ CONFIG_AHCI=y
+ CONFIG_NR_DRAM_BANKS=1
+--- a/configs/A20-OLinuXino-Lime2_defconfig
++++ b/configs/A20-OLinuXino-Lime2_defconfig
+@@ -7,6 +7,8 @@ CONFIG_MMC0_CD_PIN="PH1"
+ CONFIG_USB0_VBUS_PIN="PC17"
+ CONFIG_USB0_VBUS_DET="PH5"
+ CONFIG_I2C1_ENABLE=y
++CONFIG_PHY_MICREL=y
++CONFIG_PHY_MICREL_KSZ90X1=y
+ CONFIG_SATAPWR="PC3"
+ CONFIG_AHCI=y
+ CONFIG_NR_DRAM_BANKS=1
+--- a/drivers/net/phy/micrel_ksz90x1.c
++++ b/drivers/net/phy/micrel_ksz90x1.c
+@@ -13,6 +13,8 @@
+ #include
+ #include
+ #include
++#include
++#include
+
+ /*
+ * KSZ9021 - KSZ9031 common
+@@ -329,6 +331,10 @@ static int ksz9031_phy_extwrite(struct p
+ static int ksz9031_config(struct phy_device *phydev)
+ {
+ int ret;
++ struct sunxi_ccm_reg *const ccm =
++ (struct sunxi_ccm_reg *)SUNXI_CCM_BASE;
++
++ setbits_le32(&ccm->gmac_clk_cfg, CCM_GMAC_CTRL_TX_CLK_DELAY(4));
+
+ ret = ksz9031_of_config(phydev);
+ if (ret)
diff --git a/package/boot/uboot-sunxi/patches/100-sun6i-alternate-on-UART2.patch b/package/boot/uboot-sunxi/patches/100-sun6i-alternate-on-UART2.patch
index b3d9ba0409..8bab220518 100644
--- a/package/boot/uboot-sunxi/patches/100-sun6i-alternate-on-UART2.patch
+++ b/package/boot/uboot-sunxi/patches/100-sun6i-alternate-on-UART2.patch
@@ -6,7 +6,7 @@ Subject: sun6i: define alternate-function for UART2 on GPG
--- a/arch/arm/include/asm/arch-sunxi/gpio.h
+++ b/arch/arm/include/asm/arch-sunxi/gpio.h
-@@ -185,6 +185,7 @@ enum sunxi_gpio_number {
+@@ -186,6 +186,7 @@ enum sunxi_gpio_number {
#define SUN6I_GPG_SDC1 2
#define SUN8I_GPG_SDC1 2
#define SUN6I_GPG_TWI3 2
diff --git a/package/boot/uboot-sunxi/patches/101-sun6i-support-console-on-UART2.patch b/package/boot/uboot-sunxi/patches/101-sun6i-support-console-on-UART2.patch
index e6ff8ce28c..b922690845 100644
--- a/package/boot/uboot-sunxi/patches/101-sun6i-support-console-on-UART2.patch
+++ b/package/boot/uboot-sunxi/patches/101-sun6i-support-console-on-UART2.patch
@@ -6,7 +6,7 @@ Subject: ARM: sun6i: Support console on UART2 (GPG6/GPG7)
--- a/arch/arm/mach-sunxi/board.c
+++ b/arch/arm/mach-sunxi/board.c
-@@ -123,6 +123,10 @@ static int gpio_init(void)
+@@ -127,6 +127,10 @@ static int gpio_init(void)
sunxi_gpio_set_cfgpin(SUNXI_GPG(3), SUN5I_GPG_UART1);
sunxi_gpio_set_cfgpin(SUNXI_GPG(4), SUN5I_GPG_UART1);
sunxi_gpio_set_pull(SUNXI_GPG(4), SUNXI_GPIO_PULL_UP);
@@ -19,7 +19,7 @@ Subject: ARM: sun6i: Support console on UART2 (GPG6/GPG7)
sunxi_gpio_set_cfgpin(SUNXI_GPB(1), SUN8I_GPB_UART2);
--- a/include/configs/sunxi-common.h
+++ b/include/configs/sunxi-common.h
-@@ -256,6 +256,8 @@ extern int soft_i2c_gpio_scl;
+@@ -258,6 +258,8 @@ extern int soft_i2c_gpio_scl;
#endif
#elif CONFIG_CONS_INDEX == 2 && defined(CONFIG_MACH_SUN5I)
#define OF_STDOUT_PATH "/soc@01c00000/serial@01c28400:115200"
diff --git a/package/boot/uboot-sunxi/patches/102-sunxi-make_CONS_INDEX-configurable.patch b/package/boot/uboot-sunxi/patches/102-sunxi-make_CONS_INDEX-configurable.patch
index 083933e062..4e35d582fa 100644
--- a/package/boot/uboot-sunxi/patches/102-sunxi-make_CONS_INDEX-configurable.patch
+++ b/package/boot/uboot-sunxi/patches/102-sunxi-make_CONS_INDEX-configurable.patch
@@ -6,7 +6,7 @@ Subject: ARM: sunxi: Make CONS_INDEX configurable
--- a/arch/arm/mach-sunxi/Kconfig
+++ b/arch/arm/mach-sunxi/Kconfig
-@@ -500,6 +500,14 @@ config SYS_BOARD
+@@ -538,6 +538,14 @@ config SYS_BOARD
config SYS_SOC
default "sunxi"
diff --git a/package/boot/uboot-sunxi/patches/200-mkimage-check-environment-for-dtc-binary-location.patch b/package/boot/uboot-sunxi/patches/200-mkimage-check-environment-for-dtc-binary-location.patch
index 2c63ad322e..12f47259c3 100644
--- a/package/boot/uboot-sunxi/patches/200-mkimage-check-environment-for-dtc-binary-location.patch
+++ b/package/boot/uboot-sunxi/patches/200-mkimage-check-environment-for-dtc-binary-location.patch
@@ -17,7 +17,7 @@ Cc: Simon Glass
--- a/tools/fit_image.c
+++ b/tools/fit_image.c
-@@ -649,9 +649,14 @@ static int fit_handle_file(struct image_
+@@ -656,9 +656,14 @@ static int fit_handle_file(struct image_
}
*cmd = '\0';
} else if (params->datafile) {
diff --git a/package/boot/uboot-sunxi/patches/210-sunxi-deactivate-binman.patch b/package/boot/uboot-sunxi/patches/210-sunxi-deactivate-binman.patch
index 24b8634110..d86097858a 100644
--- a/package/boot/uboot-sunxi/patches/210-sunxi-deactivate-binman.patch
+++ b/package/boot/uboot-sunxi/patches/210-sunxi-deactivate-binman.patch
@@ -12,7 +12,7 @@ old way of generating images.
--- a/Makefile
+++ b/Makefile
-@@ -1215,8 +1215,10 @@ endif
+@@ -1344,8 +1344,10 @@ endif
ifneq ($(CONFIG_ARCH_SUNXI),)
ifeq ($(CONFIG_ARM64),)
@@ -27,7 +27,7 @@ old way of generating images.
$(call if_changed,cat)
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
-@@ -711,7 +711,6 @@ config ARCH_SOCFPGA
+@@ -842,7 +842,6 @@ config ARCH_SOCFPGA
config ARCH_SUNXI
bool "Support sunxi (Allwinner) SoCs"
diff --git a/package/boot/uboot-sunxi/patches/221-compatible-old-dtc.patch b/package/boot/uboot-sunxi/patches/221-compatible-old-dtc.patch
index 947a1ab055..4056d98008 100644
--- a/package/boot/uboot-sunxi/patches/221-compatible-old-dtc.patch
+++ b/package/boot/uboot-sunxi/patches/221-compatible-old-dtc.patch
@@ -7,7 +7,7 @@ dtc from kernel 4.9.
--- a/scripts/Kbuild.include
+++ b/scripts/Kbuild.include
-@@ -172,6 +172,11 @@ ld-version = $(shell $(LD) --version | $
+@@ -173,6 +173,11 @@ ld-version = $(shell $(LD) --version | $
# Usage: $(call ld-ifversion, -ge, 22252, y)
ld-ifversion = $(shell [ $(ld-version) $(1) $(2) ] && echo $(3) || echo $(4))
diff --git a/package/boot/uboot-sunxi/patches/230-disable-axp209-on-a13-olinuxino.diff b/package/boot/uboot-sunxi/patches/230-disable-axp209-on-a13-olinuxino.diff
new file mode 100644
index 0000000000..9ce6adeb35
--- /dev/null
+++ b/package/boot/uboot-sunxi/patches/230-disable-axp209-on-a13-olinuxino.diff
@@ -0,0 +1,19 @@
+--- a/configs/A13-OLinuXino_defconfig
++++ b/configs/A13-OLinuXino_defconfig
+@@ -7,7 +7,6 @@ CONFIG_DRAM_EMR1=0
+ CONFIG_MMC0_CD_PIN="PG0"
+ CONFIG_USB0_VBUS_DET="PG1"
+ CONFIG_USB1_VBUS_PIN="PG11"
+-CONFIG_AXP_GPIO=y
+ # CONFIG_VIDEO_HDMI is not set
+ CONFIG_VIDEO_VGA_VIA_LCD=y
+ CONFIG_VIDEO_VGA_VIA_LCD_FORCE_SYNC_ACTIVE_HIGH=y
+@@ -24,7 +23,7 @@ CONFIG_CMD_USB_MASS_STORAGE=y
+ CONFIG_DEFAULT_DEVICE_TREE="sun5i-a13-olinuxino"
+ CONFIG_DFU_RAM=y
+ CONFIG_FASTBOOT_CMD_OEM_FORMAT=y
+-CONFIG_AXP_ALDO3_VOLT=3300
++CONFIG_SUNXI_NO_PMIC=y
+ CONFIG_CONS_INDEX=2
+ CONFIG_USB_EHCI_HCD=y
+ CONFIG_USB_MUSB_GADGET=y
diff --git a/package/boot/uboot-sunxi/patches/240-sun50i-h5-Orange-Pi-Zero-Plus-Fix-SdCard-detection.patch b/package/boot/uboot-sunxi/patches/240-sun50i-h5-Orange-Pi-Zero-Plus-Fix-SdCard-detection.patch
new file mode 100644
index 0000000000..2feab76754
--- /dev/null
+++ b/package/boot/uboot-sunxi/patches/240-sun50i-h5-Orange-Pi-Zero-Plus-Fix-SdCard-detection.patch
@@ -0,0 +1,28 @@
+From ad320d4d6ad03af5ff730546113d53a47ef6a22e Mon Sep 17 00:00:00 2001
+From: Hauke Mehrtens
+Date: Sun, 13 Jan 2019 17:05:09 +0100
+Subject: [PATCH] sun50i: h5: Orange Pi Zero Plus: Fix SdCard detection
+
+The Detection pin is at PF6 and not at PH13 like defined before. I
+checked the schematics and now I am am not seeing this error message any
+more:
+Loading Environment from FAT... Card did not respond to voltage select!
+
+Fixes: 76d69eb01de ("sun50i: h5: Add initial Orange Pi Zero Plus support")
+Signed-off-by: Hauke Mehrtens
+---
+ configs/orangepi_zero_plus_defconfig | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+--- a/configs/orangepi_zero_plus_defconfig
++++ b/configs/orangepi_zero_plus_defconfig
+@@ -4,8 +4,7 @@ CONFIG_SPL=y
+ CONFIG_MACH_SUN50I_H5=y
+ CONFIG_DRAM_CLK=624
+ CONFIG_DRAM_ZQ=3881977
+-CONFIG_MMC0_CD_PIN="PH13"
+-CONFIG_MMC_SUNXI_SLOT_EXTRA=2
++CONFIG_MMC0_CD_PIN="PF6"
+ CONFIG_NR_DRAM_BANKS=1
+ # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
+ # CONFIG_CMD_FLASH is not set
diff --git a/package/boot/uboot-sunxi/patches/250-Sinovoip-BPI-M2-Ultra-defconfig.patch b/package/boot/uboot-sunxi/patches/250-Sinovoip-BPI-M2-Ultra-defconfig.patch
new file mode 100644
index 0000000000..94606aa846
--- /dev/null
+++ b/package/boot/uboot-sunxi/patches/250-Sinovoip-BPI-M2-Ultra-defconfig.patch
@@ -0,0 +1,25 @@
+--- /dev/null
++++ b/configs/Sinovoip_BPI_M2_Ultra_defconfig
+@@ -0,0 +1,22 @@
++CONFIG_ARM=y
++CONFIG_ARCH_SUNXI=y
++CONFIG_SPL=y
++CONFIG_MACH_SUN8I_R40=y
++CONFIG_DRAM_CLK=576
++CONFIG_DRAM_ZQ=3881979
++CONFIG_MACPWR="PA17"
++CONFIG_MMC0_CD_PIN="PH13"
++CONFIG_MMC_SUNXI_SLOT_EXTRA=2
++CONFIG_AHCI=y
++CONFIG_NR_DRAM_BANKS=1
++# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
++CONFIG_SPL_I2C_SUPPORT=y
++# CONFIG_CMD_FLASH is not set
++CONFIG_DEFAULT_DEVICE_TREE="sun8i-r40-bananapi-m2-ultra"
++CONFIG_SCSI_AHCI=y
++CONFIG_RGMII=y
++CONFIG_SUN8I_EMAC=y
++CONFIG_AXP_DLDO4_VOLT=2500
++CONFIG_AXP_ELDO3_VOLT=1200
++CONFIG_SCSI=y
++CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
diff --git a/package/boot/uboot-sunxi/patches/310-sunxi-h3-Sync-OTG-and-HCI-nodes-from-Linux-DT.patch b/package/boot/uboot-sunxi/patches/310-sunxi-h3-Sync-OTG-and-HCI-nodes-from-Linux-DT.patch
deleted file mode 100644
index 97aad78796..0000000000
--- a/package/boot/uboot-sunxi/patches/310-sunxi-h3-Sync-OTG-and-HCI-nodes-from-Linux-DT.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From 96c04aab58e351fa9ed7e95783018d6dbf60768f Mon Sep 17 00:00:00 2001
-From: Jun Nie
-Date: Mon, 7 May 2018 13:03:40 +0530
-Subject: sunxi: h3: Sync OTG and HCI nodes from Linux DT
-
-Allwinner H3 have a dual-routed USB PHY0 -- routed to either OHCI/EHCI
-or MUSB controller.
-
-Signed-off-by: Jun Nie
-Reviewed-by: Jagan Teki
-Acked-by: Jun Nie
----
- arch/arm/dts/sun8i-h3.dtsi | 32 ++++++++++++++++++++++++++++++++
- 1 file changed, 32 insertions(+)
-
---- a/arch/arm/dts/sun8i-h3.dtsi
-+++ b/arch/arm/dts/sun8i-h3.dtsi
-@@ -219,6 +219,19 @@
- #size-cells = <0>;
- };
-
-+ usb_otg: usb@1c19000 {
-+ compatible = "allwinner,sun8i-h3-musb";
-+ reg = <0x01c19000 0x400>;
-+ clocks = <&ccu CLK_BUS_OTG>;
-+ resets = <&ccu RST_BUS_OTG>;
-+ interrupts = ;
-+ interrupt-names = "mc";
-+ phys = <&usbphy 0>;
-+ phy-names = "usb";
-+ extcon = <&usbphy 0>;
-+ status = "disabled";
-+ };
-+
- usbphy: phy@01c19400 {
- compatible = "allwinner,sun8i-h3-usb-phy";
- reg = <0x01c19400 0x2c>,
-@@ -251,6 +264,25 @@
- #phy-cells = <1>;
- };
-
-+ ehci0: usb@1c1a000 {
-+ compatible = "allwinner,sun8i-h3-ehci", "generic-ehci";
-+ reg = <0x01c1a000 0x100>;
-+ interrupts = ;
-+ clocks = <&ccu CLK_BUS_EHCI0>, <&ccu CLK_BUS_OHCI0>;
-+ resets = <&ccu RST_BUS_EHCI0>, <&ccu RST_BUS_OHCI0>;
-+ status = "disabled";
-+ };
-+
-+ ohci0: usb@1c1a400 {
-+ compatible = "allwinner,sun8i-h3-ohci", "generic-ohci";
-+ reg = <0x01c1a400 0x100>;
-+ interrupts = ;
-+ clocks = <&ccu CLK_BUS_EHCI0>, <&ccu CLK_BUS_OHCI0>,
-+ <&ccu CLK_USB_OHCI0>;
-+ resets = <&ccu RST_BUS_EHCI0>, <&ccu RST_BUS_OHCI0>;
-+ status = "disabled";
-+ };
-+
- ehci1: usb@01c1b000 {
- compatible = "allwinner,sun8i-h3-ehci", "generic-ehci";
- reg = <0x01c1b000 0x100>;
diff --git a/package/boot/uboot-sunxi/patches/320-sunxi-Add-support-for-Orange-Pi-R1.patch b/package/boot/uboot-sunxi/patches/320-sunxi-Add-support-for-Orange-Pi-R1.patch
deleted file mode 100644
index 97c4769468..0000000000
--- a/package/boot/uboot-sunxi/patches/320-sunxi-Add-support-for-Orange-Pi-R1.patch
+++ /dev/null
@@ -1,179 +0,0 @@
-From fd3736abbe57a819312c8df96d14ec396b074581 Mon Sep 17 00:00:00 2001
-From: Hauke Mehrtens
-Date: Tue, 26 Sep 2017 22:16:59 +0200
-Subject: sun8i: h2: Add initial Orange Pi R1
-
-Orange Pi R1 is an open-source single-board computer using the
-Allwinner H2+ SOC.
-
-H2+ Orange Pi R1 has
- - Quad-core Cortex-A7
- - 256MB DDR3
- - micrSD slot
- - 128MBit SPI Nor flash
- - Debug TTL UART
- - 100MBit/s Ethernet (H2+)
- - 100MBit/s Ethernet (RTL8152B)
- - Wifi (RTL8189ETV)
- - USB 2.0 OTG + power supply
-This board is very similar to the Orange Pi Zero.
-
-The device tree file is copied from the Linux kernel 4.18.
-
-Signed-off-by: Hauke Mehrtens
----
- arch/arm/dts/Makefile | 1 +
- arch/arm/dts/sun8i-h2-plus-orangepi-r1.dts | 101 +++++++++++++++++++++++++++++
- board/sunxi/MAINTAINERS | 5 ++
- configs/orangepi_r1_defconfig | 16 +++++
- 4 files changed, 123 insertions(+)
- create mode 100644 arch/arm/dts/sun8i-h2-plus-orangepi-r1.dts
- create mode 100644 configs/orangepi_r1_defconfig
-
---- a/arch/arm/dts/Makefile
-+++ b/arch/arm/dts/Makefile
-@@ -350,6 +350,7 @@ dtb-$(CONFIG_MACH_SUN8I_A83T) += \
- sun8i-a83t-cubietruck-plus.dtb \
- sun8i-a83t-tbs-a711.dts
- dtb-$(CONFIG_MACH_SUN8I_H3) += \
-+ sun8i-h2-plus-orangepi-r1.dtb \
- sun8i-h2-plus-orangepi-zero.dtb \
- sun8i-h3-bananapi-m2-plus.dtb \
- sun8i-h3-libretech-all-h3-cc.dtb \
---- /dev/null
-+++ b/arch/arm/dts/sun8i-h2-plus-orangepi-r1.dts
-@@ -0,0 +1,101 @@
-+/*
-+ * Copyright (C) 2017 Icenowy Zheng
-+ *
-+ * This file is dual-licensed: you can use it either under the terms
-+ * of the GPL or the X11 license, at your option. Note that this dual
-+ * licensing only applies to this file, and not this project as a
-+ * whole.
-+ *
-+ * a) This file is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License as
-+ * published by the Free Software Foundation; either version 2 of the
-+ * License, or (at your option) any later version.
-+ *
-+ * This file is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * Or, alternatively,
-+ *
-+ * b) Permission is hereby granted, free of charge, to any person
-+ * obtaining a copy of this software and associated documentation
-+ * files (the "Software"), to deal in the Software without
-+ * restriction, including without limitation the rights to use,
-+ * copy, modify, merge, publish, distribute, sublicense, and/or
-+ * sell copies of the Software, and to permit persons to whom the
-+ * Software is furnished to do so, subject to the following
-+ * conditions:
-+ *
-+ * The above copyright notice and this permission notice shall be
-+ * included in all copies or substantial portions of the Software.
-+ *
-+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-+ * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-+ * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-+ * OTHER DEALINGS IN THE SOFTWARE.
-+ */
-+
-+/* Orange Pi R1 is based on Orange Pi Zero design */
-+#include "sun8i-h2-plus-orangepi-zero.dts"
-+
-+/ {
-+ model = "Xunlong Orange Pi R1";
-+ compatible = "xunlong,orangepi-r1", "allwinner,sun8i-h2-plus";
-+
-+ /delete-node/ reg_vcc_wifi;
-+
-+ /*
-+ * Ths pin of this regulator is the same with the Wi-Fi extra
-+ * regulator on the original Zero. However it's used for USB
-+ * Ethernet rather than the Wi-Fi now.
-+ */
-+ reg_vcc_usb_eth: reg-vcc-usb-ethernet {
-+ compatible = "regulator-fixed";
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ regulator-name = "vcc-usb-ethernet";
-+ enable-active-high;
-+ gpio = <&pio 0 20 GPIO_ACTIVE_HIGH>;
-+ };
-+
-+ aliases {
-+ ethernet1 = &rtl8189etv;
-+ };
-+};
-+
-+/*
-+&spi0 {
-+ status = "okay";
-+
-+ flash@0 {
-+ compatible = "mxicy,mx25l12805d", "jedec,spi-nor";
-+ };
-+};
-+*/
-+
-+&ohci1 {
-+ /*
-+ * RTL8152B USB-Ethernet adapter is connected to USB1,
-+ * and it's a USB 2.0 device. So the OHCI1 controller
-+ * can be left disabled.
-+ */
-+ status = "disabled";
-+};
-+
-+&mmc1 {
-+ vmmc-supply = <®_vcc3v3>;
-+ vqmmc-supply = <®_vcc3v3>;
-+
-+ rtl8189etv: sdio_wifi@1 {
-+ reg = <1>;
-+ };
-+};
-+
-+&usbphy {
-+ usb1_vbus-supply = <®_vcc_usb_eth>;
-+};
---- a/board/sunxi/MAINTAINERS
-+++ b/board/sunxi/MAINTAINERS
-@@ -342,6 +342,11 @@ M: Jagan Teki
-+S: Maintained
-+F: configs/orangepi_r1_defconfig
-+
- PINE64 BOARDS
- M: Andre Przywara
- S: Maintained
---- /dev/null
-+++ b/configs/orangepi_r1_defconfig
-@@ -0,0 +1,16 @@
-+CONFIG_ARM=y
-+CONFIG_ARCH_SUNXI=y
-+CONFIG_SPL=y
-+CONFIG_MACH_SUN8I_H3=y
-+CONFIG_DRAM_CLK=624
-+CONFIG_DRAM_ZQ=3881979
-+CONFIG_DRAM_ODT_EN=y
-+# CONFIG_VIDEO_DE2 is not set
-+CONFIG_SPL_SPI_SUNXI=y
-+CONFIG_DEFAULT_DEVICE_TREE="sun8i-h2-plus-orangepi-r1"
-+# CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
-+CONFIG_CONSOLE_MUX=y
-+# CONFIG_CMD_FLASH is not set
-+CONFIG_SUN8I_EMAC=y
-+CONFIG_USB_EHCI_HCD=y
-+CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
diff --git a/package/boot/uboot-sunxi/patches/400-ARM-dts-orange-pi-zero-plus.patch b/package/boot/uboot-sunxi/patches/400-ARM-dts-orange-pi-zero-plus.patch
deleted file mode 100644
index e1e16d6f34..0000000000
--- a/package/boot/uboot-sunxi/patches/400-ARM-dts-orange-pi-zero-plus.patch
+++ /dev/null
@@ -1,222 +0,0 @@
-From fd576a3c594ee2356b50a0738403e5cef094935a Mon Sep 17 00:00:00 2001
-From: Hauke Mehrtens
-Date: Sat, 9 Jun 2018 15:16:42 +0200
-Subject: sun50i: h5: Add initial Orange Pi Zero Plus support
-
-Orange Pi Zero Plus is an open-source single-board computer
-using the Allwinner H5 SOC.
-
-H5 Orangepi Zero Plus has
- - Quad-core Cortex-A53
- - 512MB DDR3
- - micrSD slot
- - 16MBit SPI Nor flash
- - Debug TTL UART
- - 1GBit/s Ethernet (RTL8211E)
- - Wifi (RTL8189FTV)
- - USB 2.0 Host
- - USB 2.0 OTG + power supply
-
-The device tree file is copied from the Linux kernel 4.18.
-
-Signed-off-by: Hauke Mehrtens
----
- arch/arm/dts/Makefile | 1 +
- arch/arm/dts/sun50i-h5-orangepi-zero-plus.dts | 145 ++++++++++++++++++++++++++
- board/sunxi/MAINTAINERS | 5 +
- configs/orangepi_zero_plus_defconfig | 16 +++
- 4 files changed, 167 insertions(+)
- create mode 100644 arch/arm/dts/sun50i-h5-orangepi-zero-plus.dts
- create mode 100644 configs/orangepi_zero_plus_defconfig
-
---- a/arch/arm/dts/Makefile
-+++ b/arch/arm/dts/Makefile
-@@ -372,6 +372,7 @@ dtb-$(CONFIG_MACH_SUN8I_V3S) += \
- dtb-$(CONFIG_MACH_SUN50I_H5) += \
- sun50i-h5-nanopi-neo2.dtb \
- sun50i-h5-nanopi-neo-plus2.dtb \
-+ sun50i-h5-orangepi-zero-plus.dtb \
- sun50i-h5-orangepi-pc2.dtb \
- sun50i-h5-orangepi-prime.dtb \
- sun50i-h5-orangepi-zero-plus2.dtb
---- /dev/null
-+++ b/arch/arm/dts/sun50i-h5-orangepi-zero-plus.dts
-@@ -0,0 +1,145 @@
-+/*
-+ * Copyright (C) 2016 ARM Ltd.
-+ * Copyright (C) 2018 Hauke Mehrtens
-+ *
-+ * SPDX-License-Identifier: (GPL-2.0+ OR X11)
-+ */
-+
-+/dts-v1/;
-+#include "sun50i-h5.dtsi"
-+
-+#include
-+#include
-+#include
-+
-+/ {
-+ model = "Xunlong Orange Pi Zero Plus";
-+ compatible = "xunlong,orangepi-zero-plus", "allwinner,sun50i-h5";
-+
-+ reg_vcc3v3: vcc3v3 {
-+ compatible = "regulator-fixed";
-+ regulator-name = "vcc3v3";
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ };
-+
-+ aliases {
-+ ethernet0 = &emac;
-+ ethernet1 = &rtl8189ftv;
-+ serial0 = &uart0;
-+ };
-+
-+ chosen {
-+ stdout-path = "serial0:115200n8";
-+ };
-+
-+ leds {
-+ compatible = "gpio-leds";
-+
-+ pwr {
-+ label = "orangepi:green:pwr";
-+ gpios = <&r_pio 0 10 GPIO_ACTIVE_HIGH>; /* PA10 */
-+ default-state = "on";
-+ };
-+
-+ status {
-+ label = "orangepi:red:status";
-+ gpios = <&pio 0 17 GPIO_ACTIVE_HIGH>; /* PA17 */
-+ };
-+ };
-+
-+ reg_gmac_3v3: gmac-3v3 {
-+ compatible = "regulator-fixed";
-+ regulator-name = "gmac-3v3";
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ startup-delay-us = <100000>;
-+ enable-active-high;
-+ gpio = <&pio 3 6 GPIO_ACTIVE_HIGH>; /* PD6 */
-+ };
-+};
-+
-+&ehci0 {
-+ status = "okay";
-+};
-+
-+&ehci1 {
-+ status = "okay";
-+};
-+
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&emac_rgmii_pins>;
-+ phy-supply = <®_gmac_3v3>;
-+ phy-handle = <&ext_rgmii_phy>;
-+ phy-mode = "rgmii";
-+ status = "okay";
-+};
-+
-+&external_mdio {
-+ ext_rgmii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <1>;
-+ };
-+};
-+
-+&mmc0 {
-+ vmmc-supply = <®_vcc3v3>;
-+ bus-width = <4>;
-+ cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
-+ status = "okay";
-+};
-+
-+&mmc1 {
-+ vmmc-supply = <®_vcc3v3>;
-+ bus-width = <4>;
-+ non-removable;
-+ status = "okay";
-+
-+ /*
-+ * Explicitly define the sdio device, so that we can add an ethernet
-+ * alias for it (which e.g. makes u-boot set a mac-address).
-+ */
-+ rtl8189ftv: sdio_wifi@1 {
-+ reg = <1>;
-+ };
-+};
-+
-+/*
-+&spi0 {
-+ status = "okay";
-+
-+ flash@0 {
-+ #address-cells = <1>;
-+ #size-cells = <1>;
-+ compatible = "mxicy,mx25l1606e", "winbond,w25q128";
-+ reg = <0>;
-+ spi-max-frequency = <40000000>;
-+ };
-+};
-+*/
-+
-+&ohci0 {
-+ status = "okay";
-+};
-+
-+&ohci1 {
-+ status = "okay";
-+};
-+
-+&uart0 {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&uart0_pins_a>;
-+ status = "okay";
-+};
-+
-+&usb_otg {
-+ dr_mode = "peripheral";
-+ status = "okay";
-+};
-+
-+&usbphy {
-+ /* USB Type-A ports' VBUS is always on */
-+ usb0_id_det-gpios = <&pio 6 12 GPIO_ACTIVE_HIGH>; /* PG12 */
-+ status = "okay";
-+};
---- a/board/sunxi/MAINTAINERS
-+++ b/board/sunxi/MAINTAINERS
-@@ -327,6 +327,11 @@ M: Icenowy Zheng
- S: Maintained
- F: configs/orangepi_zero_defconfig
-
-+ORANGEPI ZERO PLUS BOARD
-+M: Hauke Mehrtens
-+S: Maintained
-+F: configs/orangepi_zero_plus_defconfig
-+
- ORANGEPI ZERO PLUS 2 BOARD
- M: Jagan Teki