include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
-PKG_VERSION:=2026.01
-PKG_HASH:=b60d5865cefdbc75da8da4156c56c458e00de75a49b80c1a2e58a96e30ad0d54
+PKG_VERSION:=2026.04
+PKG_HASH:=ac7c04b8b7004923b00a4e5d6699c5df4d21233bac9fda690d8cfbc209fff2fd
PKG_BUILD_DEPENDS:=!(TARGET_ramips||TARGET_mediatek_mt7623):arm-trusted-firmware-tools/host
UBOOT_USE_INTREE_DTC:=1
+++ /dev/null
-From a1d1fc8d8c8699d80e1b9ab3214752e5882d3740 Mon Sep 17 00:00:00 2001
-From: Shiji Yang <yangshiji66@outlook.com>
-Date: Sat, 3 Jan 2026 16:42:39 +0800
-Subject: [PATCH] pinctrl: mediatek: MT7981: fix GPIO9 register map
-
-Ported from the Mediatek SDK. The upstream Linux kernel also has the
-same register map as the SDK.
-
-Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
----
- drivers/pinctrl/mediatek/pinctrl-mt7981.c | 12 ++++++------
- 1 file changed, 6 insertions(+), 6 deletions(-)
-
---- a/drivers/pinctrl/mediatek/pinctrl-mt7981.c
-+++ b/drivers/pinctrl/mediatek/pinctrl-mt7981.c
-@@ -103,8 +103,8 @@ static const struct mtk_pin_field_calc m
- PIN_FIELD_BASE(6, 6, 4, 0x20, 0x10, 3, 1),
- PIN_FIELD_BASE(7, 7, 4, 0x20, 0x10, 0, 1),
- PIN_FIELD_BASE(8, 8, 4, 0x20, 0x10, 4, 1),
-- PIN_FIELD_BASE(9, 9, 4, 0x20, 0x10, 9, 1),
-
-+ PIN_FIELD_BASE(9, 9, 5, 0x20, 0x10, 9, 1),
- PIN_FIELD_BASE(10, 10, 5, 0x20, 0x10, 8, 1),
- PIN_FIELD_BASE(11, 11, 5, 0x40, 0x10, 10, 1),
- PIN_FIELD_BASE(12, 12, 5, 0x20, 0x10, 7, 1),
-@@ -172,8 +172,8 @@ static const struct mtk_pin_field_calc m
- PIN_FIELD_BASE(6, 6, 4, 0x80, 0x10, 3, 1),
- PIN_FIELD_BASE(7, 7, 4, 0x80, 0x10, 0, 1),
- PIN_FIELD_BASE(8, 8, 4, 0x80, 0x10, 4, 1),
-- PIN_FIELD_BASE(9, 9, 4, 0x80, 0x10, 9, 1),
-
-+ PIN_FIELD_BASE(9, 9, 5, 0x90, 0x10, 9, 1),
- PIN_FIELD_BASE(10, 10, 5, 0x90, 0x10, 8, 1),
- PIN_FIELD_BASE(11, 11, 5, 0x90, 0x10, 10, 1),
- PIN_FIELD_BASE(12, 12, 5, 0x90, 0x10, 7, 1),
-@@ -285,8 +285,8 @@ static const struct mtk_pin_field_calc m
- PIN_FIELD_BASE(6, 6, 4, 0x00, 0x10, 9, 3),
- PIN_FIELD_BASE(7, 7, 4, 0x00, 0x10, 0, 3),
- PIN_FIELD_BASE(8, 8, 4, 0x00, 0x10, 12, 3),
-- PIN_FIELD_BASE(9, 9, 4, 0x00, 0x10, 27, 3),
-
-+ PIN_FIELD_BASE(9, 9, 5, 0x00, 0x10, 27, 3),
- PIN_FIELD_BASE(10, 10, 5, 0x00, 0x10, 24, 3),
- PIN_FIELD_BASE(11, 11, 5, 0x00, 0x10, 0, 3),
- PIN_FIELD_BASE(12, 12, 5, 0x00, 0x10, 21, 3),
-@@ -354,8 +354,8 @@ static const struct mtk_pin_field_calc m
- PIN_FIELD_BASE(6, 6, 4, 0x30, 0x10, 3, 1),
- PIN_FIELD_BASE(7, 7, 4, 0x30, 0x10, 0, 1),
- PIN_FIELD_BASE(8, 8, 4, 0x30, 0x10, 4, 1),
-- PIN_FIELD_BASE(9, 9, 4, 0x30, 0x10, 9, 1),
-
-+ PIN_FIELD_BASE(9, 9, 5, 0x30, 0x10, 9, 1),
- PIN_FIELD_BASE(10, 10, 5, 0x30, 0x10, 8, 1),
- PIN_FIELD_BASE(11, 11, 5, 0x30, 0x10, 10, 1),
- PIN_FIELD_BASE(12, 12, 5, 0x30, 0x10, 7, 1),
-@@ -404,8 +404,8 @@ static const struct mtk_pin_field_calc m
- PIN_FIELD_BASE(6, 6, 4, 0x40, 0x10, 3, 1),
- PIN_FIELD_BASE(7, 7, 4, 0x40, 0x10, 0, 1),
- PIN_FIELD_BASE(8, 8, 4, 0x40, 0x10, 4, 1),
-- PIN_FIELD_BASE(9, 9, 4, 0x40, 0x10, 9, 1),
-
-+ PIN_FIELD_BASE(9, 9, 5, 0x40, 0x10, 9, 1),
- PIN_FIELD_BASE(10, 10, 5, 0x40, 0x10, 8, 1),
- PIN_FIELD_BASE(11, 11, 5, 0x40, 0x10, 10, 1),
- PIN_FIELD_BASE(12, 12, 5, 0x40, 0x10, 7, 1),
-@@ -454,8 +454,8 @@ static const struct mtk_pin_field_calc m
- PIN_FIELD_BASE(6, 6, 4, 0x50, 0x10, 3, 1),
- PIN_FIELD_BASE(7, 7, 4, 0x50, 0x10, 0, 1),
- PIN_FIELD_BASE(8, 8, 4, 0x50, 0x10, 4, 1),
-- PIN_FIELD_BASE(9, 9, 4, 0x50, 0x10, 9, 1),
-
-+ PIN_FIELD_BASE(9, 9, 5, 0x50, 0x10, 9, 1),
- PIN_FIELD_BASE(10, 10, 5, 0x50, 0x10, 8, 1),
- PIN_FIELD_BASE(11, 11, 5, 0x50, 0x10, 10, 1),
- PIN_FIELD_BASE(12, 12, 5, 0x50, 0x10, 7, 1),
--- /dev/null
+From 8ef8dee4f3a2b2021decfefd853dbd2a1632b77f Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jo=C3=A3o=20Marcos=20Costa?= <joaomarcos.costa@bootlin.com>
+Date: Wed, 29 Apr 2026 16:46:15 +0200
+Subject: [PATCH] scripts/dtc: drop yaml in DT validation
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The build issues found in dtc/yamltree were partially mitigated by a
+previous commit (807bcd844a: "scripts/dtc: Fix pkg-config behavior under
+sysroot"), but upstream dtc simply disabled yaml, and the same should be
+done here in order to permanently avoid those issues.
+
+Backport the change below from Linux v5.18 [1]:
+
+ef8795f3f1c ("dt-bindings: kbuild: Use DTB files for validation")
+
+I tested this patch with a couple Yocto builds: u-boot and u-boot-tools,
+using the current master branch (rev. "c53b0708f9"), having removed
+libyaml-native from u-boot-tools's dependencies.
+
+[1] https://git.kernel.org/linus/ef8795f3f1ce
+
+Signed-off-by: João Marcos Costa <joaomarcos.costa@bootlin.com>
+Acked-by: Quentin Schulz <quentin.schulz@cherry.de>
+---
+ scripts/Makefile.lib | 6 ------
+ scripts/dtc/Makefile | 8 --------
+ scripts/dtc/update-dtc-source.sh | 2 +-
+ 3 files changed, 1 insertion(+), 15 deletions(-)
+
+--- a/scripts/Makefile.lib
++++ b/scripts/Makefile.lib
+@@ -86,12 +86,6 @@ base-dtb-y := $(foreach m, $(multi-dtb-y
+ extra-y += $(dtb-y)
+ extra-$(CONFIG_OF_ALL_DTBS) += $(dtb-)
+
+-# U-Boot specific
+-ifneq ($(CHECK_DTBS),)
+-extra-y += $(patsubst %.dtb,%.dt.yaml, $(dtb-y))
+-extra-$(CONFIG_OF_ALL_DTBS) += $(patsubst %.dtb,%.dt.yaml, $(dtb-))
+-endif
+-
+ # Add subdir path
+
+ extra-y := $(addprefix $(obj)/,$(extra-y))
+--- a/scripts/dtc/Makefile
++++ b/scripts/dtc/Makefile
+@@ -17,15 +17,7 @@ fdtoverlay-objs := $(libfdt) fdtoverlay.
+ # Source files need to get at the userspace version of libfdt_env.h to compile
+ HOST_EXTRACFLAGS := -I$(srctree)/$(src)/libfdt
+
+-ifeq ($(wildcard $(PKG_CONFIG_SYSROOT_DIR)/usr/include/yaml.h),)
+ HOST_EXTRACFLAGS += -DNO_YAML
+-else
+-dtc-objs += yamltree.o
+-# To include <yaml.h> installed in a non-default path
+-HOSTCFLAGS_yamltree.o := $(shell pkg-config --cflags yaml-0.1)
+-# To link libyaml installed in a non-default path
+-HOSTLDLIBS_dtc := $(shell pkg-config --libs yaml-0.1)
+-endif
+
+ # Generated files need one more search path to include headers in source tree
+ HOSTCFLAGS_dtc-lexer.lex.o := -I$(src)
+--- a/scripts/dtc/update-dtc-source.sh
++++ b/scripts/dtc/update-dtc-source.sh
+@@ -32,7 +32,7 @@ DTC_UPSTREAM_PATH=`pwd`/../dtc
+ DTC_LINUX_PATH=`pwd`/scripts/dtc
+
+ DTC_SOURCE="checks.c data.c dtc.c dtc.h flattree.c fstree.c livetree.c srcpos.c \
+- srcpos.h treesource.c util.c util.h version_gen.h yamltree.c \
++ srcpos.h treesource.c util.c util.h version_gen.h \
+ dtc-lexer.l dtc-parser.y"
+ LIBFDT_SOURCE="fdt.c fdt.h fdt_addresses.c fdt_empty_tree.c \
+ fdt_overlay.c fdt_ro.c fdt_rw.c fdt_strerror.c fdt_sw.c \
--- /dev/null
+From de79075f0f6b8795d1f9e30ff36435583b1a119a Mon Sep 17 00:00:00 2001
+From: Shiji Yang <yangshiji66@outlook.com>
+Date: Sun, 12 Apr 2026 20:12:25 +0800
+Subject: [PATCH] mips: mtmips: align MT7621 image blobs to 8-byte boundary
+
+MT7621 doesn't boot on u-boot v2026.04. Fix it by correcting the
+u-boot aligned offset.
+
+Fixes: d9e183a04c92 ("MIPS: Assure end of U-Boot is at 8-byte aligned offset")
+Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
+Reviewed-by: Weijie Gao <weijie.gao@mediatek.com>
+---
+ arch/mips/dts/mt7621-u-boot.dtsi | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+--- a/arch/mips/dts/mt7621-u-boot.dtsi
++++ b/arch/mips/dts/mt7621-u-boot.dtsi
+@@ -47,13 +47,13 @@
+
+ &binman {
+ u-boot-spl-ddr {
+- align = <4>;
+- align-size = <4>;
++ align = <8>;
++ align-size = <8>;
+ filename = "u-boot-spl-ddr.bin";
+ pad-byte = <0xff>;
+
+ u-boot-spl {
+- align-end = <4>;
++ align-end = <8>;
+ filename = "u-boot-spl.bin";
+ };
+
+@@ -90,7 +90,7 @@
+
+ #ifndef CONFIG_MT7621_BOOT_FROM_NAND
+ u-boot-tpl {
+- align-end = <4>;
++ align-end = <8>;
+ filename = "u-boot-tpl.bin";
+ };
+ #endif
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
-@@ -1131,6 +1131,9 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
+@@ -1130,6 +1130,9 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
mt7986b-sd-rfb.dtb \
mt7986a-emmc-rfb.dtb \
mt7986b-emmc-rfb.dtb \
+++ /dev/null
-From patchwork Wed Mar 4 03:53:38 2026
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-X-Patchwork-Submitter: Daniel Golle <daniel@makrotopia.org>
-X-Patchwork-Id: 2204640
-Return-Path: <u-boot-bounces@lists.denx.de>
-X-Original-To: incoming@patchwork.ozlabs.org
-Delivered-To: patchwork-incoming@legolas.ozlabs.org
-Date: Wed, 4 Mar 2026 03:53:38 +0000
-From: Daniel Golle <daniel@makrotopia.org>
-To: Lukasz Majewski <lukma@denx.de>, Ryder Lee <ryder.lee@mediatek.com>,
- Weijie Gao <weijie.gao@mediatek.com>,
- Chunfeng Yun <chunfeng.yun@mediatek.com>,
- Igor Belwon <igor.belwon@mentallysanemainliners.org>,
- GSS_MTK_Uboot_upstream <GSS_MTK_Uboot_upstream@mediatek.com>,
- Tom Rini <trini@konsulko.com>, David Lechner <dlechner@baylibre.com>,
- Daniel Golle <daniel@makrotopia.org>, u-boot@lists.denx.de
-Subject: [PATCH] clk: mediatek: mt7622: fix infracfg and pericfg clock
- operations
-Message-ID:
- <a54fd4a7284da506020cb614919096067b195277.1772596281.git.daniel@makrotopia.org>
-MIME-Version: 1.0
-Content-Disposition: inline
-X-BeenThere: u-boot@lists.denx.de
-X-Mailman-Version: 2.1.39
-Precedence: list
-List-Id: U-Boot discussion <u-boot.lists.denx.de>
-List-Unsubscribe: <https://lists.denx.de/options/u-boot>,
- <mailto:u-boot-request@lists.denx.de?subject=unsubscribe>
-List-Archive: <https://lists.denx.de/pipermail/u-boot/>
-List-Post: <mailto:u-boot@lists.denx.de>
-List-Help: <mailto:u-boot-request@lists.denx.de?subject=help>
-List-Subscribe: <https://lists.denx.de/listinfo/u-boot>,
- <mailto:u-boot-request@lists.denx.de?subject=subscribe>
-Errors-To: u-boot-bounces@lists.denx.de
-Sender: "U-Boot" <u-boot-bounces@lists.denx.de>
-
-The MT7622 infracfg and pericfg drivers both use
-mtk_common_clk_infrasys_init() for probe, which populates struct
-mtk_clk_priv and stores gate definitions in the clk_tree. However,
-both drivers were incorrectly wired to mtk_clk_gate_ops which expects
-struct mtk_cg_priv with separately populated gates/num_gates/gates_offs
-fields from mtk_common_clk_gate_init().
-
-Since those fields were never set, any attempt to enable an infracfg or
-pericfg gate clock (e.g. CLK_INFRA_TRNG) would fail with -EINVAL.
-
-Switch both to mtk_clk_infrasys_ops and struct mtk_clk_priv to match
-the init function.
-
-Fixes: 72ab603b201 ("clk: mediatek: add driver for MT7622")
-Signed-off-by: Daniel Golle <daniel@makrotopia.org>
----
- drivers/clk/mediatek/clk-mt7622.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
---- a/drivers/clk/mediatek/clk-mt7622.c
-+++ b/drivers/clk/mediatek/clk-mt7622.c
-@@ -805,8 +805,8 @@ U_BOOT_DRIVER(mtk_clk_infracfg) = {
- .id = UCLASS_CLK,
- .of_match = mt7622_infracfg_compat,
- .probe = mt7622_infracfg_probe,
-- .priv_auto = sizeof(struct mtk_cg_priv),
-- .ops = &mtk_clk_gate_ops,
-+ .priv_auto = sizeof(struct mtk_clk_priv),
-+ .ops = &mtk_clk_infrasys_ops,
- .flags = DM_FLAG_PRE_RELOC,
- };
-
-@@ -815,8 +815,8 @@ U_BOOT_DRIVER(mtk_clk_pericfg) = {
- .id = UCLASS_CLK,
- .of_match = mt7622_pericfg_compat,
- .probe = mt7622_pericfg_probe,
-- .priv_auto = sizeof(struct mtk_cg_priv),
-- .ops = &mtk_clk_gate_ops,
-+ .priv_auto = sizeof(struct mtk_clk_priv),
-+ .ops = &mtk_clk_infrasys_ops,
- .flags = DM_FLAG_PRE_RELOC,
- };
-
--- a/cmd/Kconfig
+++ b/cmd/Kconfig
-@@ -1601,6 +1601,12 @@ config CMD_NAND_WATCH
+@@ -1624,6 +1624,12 @@ config CMD_NAND_WATCH
endif # CMD_NAND
--- a/cmd/Kconfig
+++ b/cmd/Kconfig
-@@ -1601,6 +1601,14 @@ config CMD_NAND_WATCH
+@@ -1624,6 +1624,14 @@ config CMD_NAND_WATCH
endif # CMD_NAND
config ENV_RANGE
hex "Length of the region in which the environment can be written"
depends on ENV_IS_IN_NAND
-@@ -592,7 +608,7 @@ config ENV_ADDR_REDUND
+@@ -603,7 +619,7 @@ config ENV_ADDR_REDUND
config ENV_OFFSET
hex "Environment offset"
depends on ENV_IS_IN_EEPROM || ENV_IS_IN_MMC || ENV_IS_IN_NAND || \
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
-@@ -1121,6 +1121,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
+@@ -1120,6 +1120,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
mt7622-bananapi-bpi-r64.dtb \
mt7623n-bananapi-bpi-r2.dtb \
mt7981-rfb.dtb \
--- a/drivers/mmc/Kconfig
+++ b/drivers/mmc/Kconfig
-@@ -862,6 +862,14 @@ config MMC_MTK
+@@ -863,6 +863,14 @@ config MMC_MTK
This is needed if support for any SD/SDIO/MMC devices is required.
If unsure, say N.
+endif
--- a/drivers/mmc/mtk-sd.c
+++ b/drivers/mmc/mtk-sd.c
-@@ -784,18 +784,24 @@ static int msdc_ops_send_cmd(struct udev
+@@ -868,18 +868,24 @@ static int msdc_ops_send_cmd(struct udev
if (cmd_ret &&
!(cmd_ret == -EIO &&
(cmd->cmdidx == MMC_CMD_SEND_TUNING_BLOCK ||
--- a/env/Kconfig
+++ b/env/Kconfig
-@@ -703,6 +703,12 @@ config ENV_UBI_VOLUME_REDUND
+@@ -714,6 +714,12 @@ config ENV_UBI_VOLUME_REDUND
help
Name of the redundant volume that you want to store the environment in.
--- a/configs/mt7988_sd_rfb_defconfig
+++ b/configs/mt7988_sd_rfb_defconfig
-@@ -1,42 +1,83 @@
+@@ -1,41 +1,82 @@
CONFIG_ARM=y
+CONFIG_ARM_SMCCC=y
CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_SYS_PROMPT="MT7988> "
+CONFIG_CMD_CPU=y
+CONFIG_CMD_LICENSE=y
- # CONFIG_BOOTM_NETBSD is not set
# CONFIG_BOOTM_PLAN9 is not set
# CONFIG_BOOTM_RTEMS is not set
# CONFIG_BOOTM_VXWORKS is not set
CONFIG_USE_IPADDR=y
CONFIG_IPADDR="192.168.1.1"
CONFIG_USE_NETMASK=y
-@@ -45,28 +86,45 @@ CONFIG_USE_SERVERIP=y
+@@ -44,26 +85,45 @@ CONFIG_USE_SERVERIP=y
CONFIG_SERVERIP="192.168.1.2"
CONFIG_PROT_TCP=y
CONFIG_NET_RANDOM_ETHADDR=y
--CONFIG_REGMAP=y
--CONFIG_SYSCON=y
+CONFIG_BUTTON=y
+CONFIG_BUTTON_GPIO=y
CONFIG_CLK=y
CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_POSITION_INDEPENDENT=y
CONFIG_ARCH_MEDIATEK=y
-@@ -6,37 +7,78 @@ CONFIG_TEXT_BASE=0x41e00000
+@@ -6,36 +7,77 @@ CONFIG_TEXT_BASE=0x41e00000
CONFIG_SYS_MALLOC_F_LEN=0x4000
CONFIG_NR_DRAM_BANKS=1
CONFIG_DEFAULT_DEVICE_TREE="mt7988-rfb"
CONFIG_SYS_PROMPT="MT7988> "
+CONFIG_CMD_CPU=y
+CONFIG_CMD_LICENSE=y
- # CONFIG_BOOTM_NETBSD is not set
# CONFIG_BOOTM_PLAN9 is not set
# CONFIG_BOOTM_RTEMS is not set
# CONFIG_BOOTM_VXWORKS is not set
CONFIG_USE_IPADDR=y
CONFIG_IPADDR="192.168.1.1"
CONFIG_USE_NETMASK=y
-@@ -45,9 +87,13 @@ CONFIG_USE_SERVERIP=y
+@@ -44,7 +86,13 @@ CONFIG_USE_SERVERIP=y
CONFIG_SERVERIP="192.168.1.2"
CONFIG_PROT_TCP=y
CONFIG_NET_RANDOM_ETHADDR=y
--CONFIG_REGMAP=y
--CONFIG_SYSCON=y
+CONFIG_BUTTON=y
+CONFIG_BUTTON_GPIO=y
CONFIG_CLK=y
CONFIG_MMC_HS200_SUPPORT=y
CONFIG_MMC_MTK=y
CONFIG_MTD=y
-@@ -65,20 +111,33 @@ CONFIG_SPI_FLASH_WINBOND=y
+@@ -62,20 +110,33 @@ CONFIG_SPI_FLASH_WINBOND=y
CONFIG_SPI_FLASH_XMC=y
CONFIG_SPI_FLASH_XTX=y
CONFIG_SPI_FLASH_MTD=y
--- a/configs/mt7981_rfb_defconfig
+++ b/configs/mt7981_rfb_defconfig
-@@ -31,6 +31,9 @@ CONFIG_CMD_MTD=y
+@@ -30,6 +30,9 @@ CONFIG_CMD_MTD=y
CONFIG_CMD_SF_TEST=y
CONFIG_CMD_PING=y
CONFIG_CMD_SMC=y
+CONFIG_ENV_OVERWRITE=y
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
CONFIG_NET_RANDOM_ETHADDR=y
- CONFIG_REGMAP=y
+ CONFIG_CLK=y
--- a/configs/mt7981_snfi_nand_rfb_defconfig
+++ b/configs/mt7981_snfi_nand_rfb_defconfig
@@ -5,7 +5,6 @@ CONFIG_ARCH_MEDIATEK=y
CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_POSITION_INDEPENDENT=y
CONFIG_ARCH_MEDIATEK=y
-@@ -8,38 +9,58 @@ CONFIG_NR_DRAM_BANKS=1
+@@ -8,43 +9,69 @@ CONFIG_NR_DRAM_BANKS=1
CONFIG_ENV_SIZE=0x80000
CONFIG_ENV_OFFSET=0x300000
CONFIG_DEFAULT_DEVICE_TREE="mt7981-emmc-rfb"
CONFIG_SYS_PROMPT="MT7981> "
+CONFIG_CMD_CPU=y
+CONFIG_CMD_LICENSE=y
- # CONFIG_BOOTM_NETBSD is not set
# CONFIG_BOOTM_PLAN9 is not set
# CONFIG_BOOTM_RTEMS is not set
# CONFIG_BOOTM_VXWORKS is not set
CONFIG_PARTITION_TYPE_GUID=y
CONFIG_ENV_OVERWRITE=y
CONFIG_ENV_IS_IN_MMC=y
-@@ -47,7 +68,13 @@ CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
+ CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
CONFIG_NET_RANDOM_ETHADDR=y
- CONFIG_REGMAP=y
- CONFIG_SYSCON=y
+CONFIG_BUTTON=y
+CONFIG_BUTTON_GPIO=y
CONFIG_CLK=y
CONFIG_MMC_HS200_SUPPORT=y
CONFIG_MMC_MTK=y
CONFIG_PHY_FIXED=y
-@@ -59,7 +86,10 @@ CONFIG_POWER_DOMAIN=y
+@@ -56,7 +83,10 @@ CONFIG_POWER_DOMAIN=y
CONFIG_MTK_POWER_DOMAIN=y
CONFIG_DM_REGULATOR=y
CONFIG_DM_REGULATOR_FIXED=y
CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_POSITION_INDEPENDENT=y
CONFIG_ARCH_MEDIATEK=y
-@@ -6,39 +7,80 @@ CONFIG_TEXT_BASE=0x41e00000
+@@ -6,36 +7,77 @@ CONFIG_TEXT_BASE=0x41e00000
CONFIG_SYS_MALLOC_F_LEN=0x4000
CONFIG_NR_DRAM_BANKS=1
CONFIG_DEFAULT_DEVICE_TREE="mt7981-rfb"
CONFIG_SYS_PROMPT="MT7981> "
+CONFIG_CMD_CPU=y
+CONFIG_CMD_LICENSE=y
- # CONFIG_BOOTM_NETBSD is not set
# CONFIG_BOOTM_PLAN9 is not set
# CONFIG_BOOTM_RTEMS is not set
# CONFIG_BOOTM_VXWORKS is not set
+CONFIG_ENV_RELOC_GD_ENV_ADDR=y
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
CONFIG_NET_RANDOM_ETHADDR=y
- CONFIG_REGMAP=y
- CONFIG_SYSCON=y
+CONFIG_BUTTON=y
+CONFIG_BUTTON_GPIO=y
CONFIG_CLK=y
# CONFIG_MMC is not set
CONFIG_MTD=y
CONFIG_DM_MTD=y
-@@ -62,7 +104,10 @@ CONFIG_PINCONF=y
+@@ -59,7 +101,10 @@ CONFIG_PINCONF=y
CONFIG_PINCTRL_MT7981=y
CONFIG_POWER_DOMAIN=y
CONFIG_MTK_POWER_DOMAIN=y
CONFIG_SYS_HAS_NONCACHED_MEMORY=y
CONFIG_POSITION_INDEPENDENT=y
CONFIG_ARCH_MEDIATEK=y
-@@ -8,38 +9,58 @@ CONFIG_NR_DRAM_BANKS=1
+@@ -8,43 +9,69 @@ CONFIG_NR_DRAM_BANKS=1
CONFIG_ENV_SIZE=0x80000
CONFIG_ENV_OFFSET=0x300000
CONFIG_DEFAULT_DEVICE_TREE="mt7981-sd-rfb"
CONFIG_SYS_PROMPT="MT7981> "
+CONFIG_CMD_CPU=y
+CONFIG_CMD_LICENSE=y
- # CONFIG_BOOTM_NETBSD is not set
# CONFIG_BOOTM_PLAN9 is not set
# CONFIG_BOOTM_RTEMS is not set
# CONFIG_BOOTM_VXWORKS is not set
CONFIG_PARTITION_TYPE_GUID=y
CONFIG_ENV_OVERWRITE=y
CONFIG_ENV_IS_IN_MMC=y
-@@ -47,7 +68,13 @@ CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
+ CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
CONFIG_NET_RANDOM_ETHADDR=y
- CONFIG_REGMAP=y
- CONFIG_SYSCON=y
+CONFIG_BUTTON=y
+CONFIG_BUTTON_GPIO=y
CONFIG_CLK=y
CONFIG_MMC_HS200_SUPPORT=y
CONFIG_MMC_MTK=y
CONFIG_PHY_FIXED=y
-@@ -59,7 +86,10 @@ CONFIG_POWER_DOMAIN=y
+@@ -56,7 +83,10 @@ CONFIG_POWER_DOMAIN=y
CONFIG_MTK_POWER_DOMAIN=y
CONFIG_DM_REGULATOR=y
CONFIG_DM_REGULATOR_FIXED=y
--- a/Makefile
+++ b/Makefile
-@@ -1298,7 +1298,7 @@ quiet_cmd_pad_cat = CAT $@
+@@ -1353,7 +1353,7 @@ quiet_cmd_pad_cat = CAT $@
cmd_pad_cat = $(cmd_objcopy) && $(append) || { rm -f $@; false; }
quiet_cmd_lzma = LZMA $@
{
--- a/boot/image-fit.c
+++ b/boot/image-fit.c
-@@ -2054,6 +2054,47 @@ static const char *fit_get_image_type_pr
+@@ -2070,6 +2070,47 @@ static const char *fit_get_image_type_pr
return "unknown";
}
int arch, int ph_type, int bootstage_id,
--- a/include/image.h
+++ b/include/image.h
-@@ -1115,6 +1115,7 @@ int fit_parse_subimage(const char *spec,
+@@ -1118,6 +1118,7 @@ int fit_parse_subimage(const char *spec,
ulong *addr, const char **image_name);
int fit_get_subimage_count(const void *fit, int images_noffset);
--- a/cmd/Kconfig
+++ b/cmd/Kconfig
-@@ -717,6 +717,12 @@ config CMD_ENV_EXISTS
+@@ -732,6 +732,12 @@ config CMD_ENV_EXISTS
Check if a variable is defined in the environment for use in
shell scripting.
#ifdef CONFIG_ENABLE_NAND_NMBM
--- a/arch/arm/mach-mediatek/Kconfig
+++ b/arch/arm/mach-mediatek/Kconfig
-@@ -165,4 +165,11 @@ config MTK_TZ_MOVABLE
+@@ -173,4 +173,11 @@ config MTK_TZ_MOVABLE
select OF_SYSTEM_SETUP
bool
--- a/configs/mt7623n_bpir2_defconfig
+++ b/configs/mt7623n_bpir2_defconfig
-@@ -7,34 +7,67 @@ CONFIG_SYS_MALLOC_F_LEN=0x4000
+@@ -7,56 +7,106 @@ CONFIG_SYS_MALLOC_F_LEN=0x4000
CONFIG_NR_DRAM_BANKS=1
CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x81ffff10
CONFIG_USE_IPADDR=y
CONFIG_IPADDR="192.168.1.1"
CONFIG_USE_SERVERIP=y
-@@ -42,23 +75,40 @@ CONFIG_SERVERIP="192.168.1.2"
+ CONFIG_SERVERIP="192.168.1.2"
CONFIG_NET_RANDOM_ETHADDR=y
- CONFIG_REGMAP=y
- CONFIG_SYSCON=y
+CONFIG_SCSI_AHCI=y
+CONFIG_AHCI_PCI=y
+CONFIG_BUTTON=y
--- a/configs/mt7623a_unielec_u7623_02_defconfig
+++ b/configs/mt7623a_unielec_u7623_02_defconfig
-@@ -7,32 +7,65 @@ CONFIG_SYS_MALLOC_F_LEN=0x4000
+@@ -7,54 +7,104 @@ CONFIG_SYS_MALLOC_F_LEN=0x4000
CONFIG_NR_DRAM_BANKS=1
CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x81ffff10
CONFIG_USE_IPADDR=y
CONFIG_IPADDR="192.168.1.1"
CONFIG_USE_SERVERIP=y
-@@ -40,23 +73,40 @@ CONFIG_SERVERIP="192.168.1.2"
+ CONFIG_SERVERIP="192.168.1.2"
CONFIG_NET_RANDOM_ETHADDR=y
- CONFIG_REGMAP=y
- CONFIG_SYSCON=y
+CONFIG_SCSI_AHCI=y
+CONFIG_AHCI_PCI=y
+CONFIG_BUTTON=y
--- a/arch/arm/mach-mediatek/Kconfig
+++ b/arch/arm/mach-mediatek/Kconfig
-@@ -158,7 +158,7 @@ config MTK_BROM_HEADER_INFO
+@@ -166,7 +166,7 @@ config MTK_BROM_HEADER_INFO
string
default "media=nor" if TARGET_MT8518 || TARGET_MT8512 || TARGET_MT7629
- default "media=emmc" if TARGET_MT8516 || TARGET_MT8365 || TARGET_MT8183
+ default "media=emmc" if TARGET_MT8516 || TARGET_MT8365 || TARGET_MT8183 || TARGET_MT8188
- default "lk=1" if TARGET_MT7623
+ default "lk=1" if TARGET_MT7622 || TARGET_MT7623
+};
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
-@@ -1119,6 +1119,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
+@@ -1118,6 +1118,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
mt7622-rfb.dtb \
mt7623a-unielec-u7623-02-emmc.dtb \
mt7622-bananapi-bpi-r64.dtb \
+};
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
-@@ -1120,6 +1120,8 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
+@@ -1119,6 +1119,8 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
mt7623a-unielec-u7623-02-emmc.dtb \
mt7622-bananapi-bpi-r64.dtb \
mt7622-linksys-e8450-ubi.dtb \
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
-@@ -1122,6 +1122,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
+@@ -1121,6 +1121,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
mt7622-linksys-e8450-ubi.dtb \
mt7622-ubnt-unifi-6-lr.dtb \
mt7622-ubnt-unifi-6-lr-v3.dtb \
+};
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
-@@ -1138,6 +1138,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
+@@ -1137,6 +1137,7 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
mt7986b-emmc-rfb.dtb \
mt7987a-emmc-rfb.dtb \
mt7987a-rfb.dtb \
+#include "mt7987-emmc.dtsi"
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
-@@ -1136,6 +1136,9 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
+@@ -1135,6 +1135,9 @@ dtb-$(CONFIG_ARCH_MEDIATEK) += \
mt7986b-sd-rfb.dtb \
mt7986a-emmc-rfb.dtb \
mt7986b-emmc-rfb.dtb \
--- a/configs/mt7987_rfb_defconfig
+++ b/configs/mt7987_rfb_defconfig
-@@ -70,6 +70,7 @@ CONFIG_SPI_FLASH_XTX=y
+@@ -67,6 +67,7 @@ CONFIG_SPI_FLASH_XTX=y
CONFIG_SPI_FLASH_ZBIT=y
CONFIG_SPI_FLASH_MTD=y
CONFIG_MTD_UBI=y
CONFIG_PINCTRL=y
--- a/configs/mt7987_emmc_rfb_defconfig
+++ b/configs/mt7987_emmc_rfb_defconfig
-@@ -75,6 +75,7 @@ CONFIG_SPI_FLASH_XTX=y
+@@ -72,6 +72,7 @@ CONFIG_SPI_FLASH_XTX=y
CONFIG_SPI_FLASH_ZBIT=y
CONFIG_SPI_FLASH_MTD=y
CONFIG_MTD_UBI=y
CONFIG_PINCTRL=y
--- a/configs/mt7987_sd_rfb_defconfig
+++ b/configs/mt7987_sd_rfb_defconfig
-@@ -75,6 +75,7 @@ CONFIG_SPI_FLASH_XTX=y
+@@ -72,6 +72,7 @@ CONFIG_SPI_FLASH_XTX=y
CONFIG_SPI_FLASH_ZBIT=y
CONFIG_SPI_FLASH_MTD=y
CONFIG_MTD_UBI=y
--- a/cmd/Kconfig
+++ b/cmd/Kconfig
-@@ -980,6 +980,11 @@ config CMD_RANDOM
+@@ -1003,6 +1003,11 @@ config CMD_RANDOM
help
random - fill memory with random data