mirror of
https://github.com/armbian/build
synced 2025-09-24 19:47:06 +07:00
IMX8: update uboot to v2024.04
- add patch to reanable binman Signed-off-by: Martin Schmiedel <Martin.Schmiedel@tq-group.com>
This commit is contained in:
@@ -23,7 +23,7 @@ case $BOARD in
|
||||
ATFSOURCE='https://github.com/tq-systems/atf' # required for ram
|
||||
ATFBRANCH="branch:TQM-lf_v2.10"
|
||||
BOOTSOURCE='https://github.com/tq-systems/u-boot-tqmaxx.git' # u-boot mainlining is hard and has low-priority
|
||||
BOOTBRANCH='branch:TQMa8-v2020.04_imx_5.4.70_2.3.0'
|
||||
BOOTBRANCH='commit:90aea55d842b6c3c978530532e16110123995002'
|
||||
BOOTPATCHDIR="u-boot-tqma" # could be removed when distro boot patches are integrated
|
||||
;;
|
||||
esac
|
||||
|
||||
@@ -11,7 +11,7 @@ ARCH="arm64"
|
||||
KERNEL_IMAGE_TYPE="Image"
|
||||
OVERLAY_DIR="/boot/dtb/freescale/overlay"
|
||||
SRC_EXTLINUX="yes" # use extlinux as default
|
||||
IMX_FIRMWARE="${IMX_FIRMWARE:-"firmware-imx-8.12"}"
|
||||
IMX_FIRMWARE="${IMX_FIRMWARE:-"firmware-imx-8.26-d4c33ab"}"
|
||||
# ATF_PLAT musst set in board
|
||||
# ATF_UART_BASE musst set in board
|
||||
# MAP = target_make,target_patchdir,target_files
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
From 70a21131b3de21c5f340b14055d837991b3f046e Mon Sep 17 00:00:00 2001
|
||||
From: Martin Schmiedel <Martin.Schmiedel@tq-group.com>
|
||||
Date: Tue, 27 May 2025 07:45:46 +0200
|
||||
Subject: [PATCH] Revert "LFU-278-20 imx8m/imx93: Disable BINMAN"
|
||||
|
||||
This reverts commit a52f5af6be925fe14a282901e722543a0a6139cf.
|
||||
---
|
||||
arch/arm/mach-imx/imx8m/Kconfig | 1 +
|
||||
arch/arm/mach-imx/imx9/Kconfig | 1 +
|
||||
2 files changed, 2 insertions(+)
|
||||
|
||||
diff --git a/arch/arm/mach-imx/imx8m/Kconfig b/arch/arm/mach-imx/imx8m/Kconfig
|
||||
index 3ed8aeca5e0..63a728b2704 100644
|
||||
--- a/arch/arm/mach-imx/imx8m/Kconfig
|
||||
+++ b/arch/arm/mach-imx/imx8m/Kconfig
|
||||
@@ -2,6 +2,7 @@ if ARCH_IMX8M
|
||||
|
||||
config IMX8M
|
||||
bool
|
||||
+ select BINMAN
|
||||
select GICV3 if ARMV8_PSCI
|
||||
select HAS_CAAM
|
||||
select LTO
|
||||
diff --git a/arch/arm/mach-imx/imx9/Kconfig b/arch/arm/mach-imx/imx9/Kconfig
|
||||
index 9d4689b3084..688d54490b3 100644
|
||||
--- a/arch/arm/mach-imx/imx9/Kconfig
|
||||
+++ b/arch/arm/mach-imx/imx9/Kconfig
|
||||
@@ -7,6 +7,7 @@ config AHAB_BOOT
|
||||
|
||||
config IMX9
|
||||
bool
|
||||
+ select BINMAN
|
||||
select HAS_CAAM
|
||||
select ROM_UNIFIED_SECTIONS
|
||||
|
||||
--
|
||||
2.43.0
|
||||
|
||||
@@ -1,684 +0,0 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Martin Schmiedel <Martin.Schmiedel@tq-group.com>
|
||||
Date: Mon, 9 Oct 2023 09:50:48 +0200
|
||||
Subject: tqma8: enable distro boot
|
||||
|
||||
Signed-off-by: Martin Schmiedel <Martin.Schmiedel@tq-group.com>
|
||||
---
|
||||
board/tqc/common/Kconfig | 4 +
|
||||
board/tqc/common/Makefile | 1 +
|
||||
board/tqc/common/tqc_bb.h | 6 +
|
||||
board/tqc/common/tqc_distro.c | 37 ++
|
||||
board/tqc/tqma8mpxl/tqma8mpxl.c | 5 +-
|
||||
board/tqc/tqma8mx/tqma8mx.c | 5 +-
|
||||
board/tqc/tqma8mxml/tqma8mxml.c | 5 +-
|
||||
configs/tqma8mxml_1gb_mba8mx_fspi_defconfig | 1 -
|
||||
configs/tqma8mxml_1gb_mba8mx_mfg_defconfig | 1 -
|
||||
configs/tqma8mxml_1gb_mba8mx_mmc_defconfig | 1 -
|
||||
configs/tqma8mxml_2gb_mba8mx_fspi_defconfig | 1 -
|
||||
configs/tqma8mxml_2gb_mba8mx_mfg_defconfig | 1 -
|
||||
configs/tqma8mxml_2gb_mba8mx_mmc_defconfig | 1 -
|
||||
configs/tqma8mxml_4gb_mba8mx_fspi_defconfig | 1 -
|
||||
configs/tqma8mxml_4gb_mba8mx_mfg_defconfig | 1 -
|
||||
configs/tqma8mxml_4gb_mba8mx_mmc_defconfig | 1 -
|
||||
configs/tqma8mxnl_1gb_mba8mx_defconfig | 1 -
|
||||
configs/tqma8mxnl_1gb_mba8mx_mfg_defconfig | 1 -
|
||||
doc/board/tq/examples/boot-legacy.cmd | 26 +
|
||||
include/configs/tqma8mxml-mba8mx.h | 11 +-
|
||||
include/configs/tqma8mxml.h | 256 ++--------
|
||||
include/environment/tq/boot.h | 21 +
|
||||
22 files changed, 167 insertions(+), 221 deletions(-)
|
||||
|
||||
diff --git a/board/tqc/common/Kconfig b/board/tqc/common/Kconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/board/tqc/common/Kconfig
|
||||
+++ b/board/tqc/common/Kconfig
|
||||
@@ -16,6 +16,10 @@ config TQC_ENVLOC
|
||||
bool
|
||||
select ENV_IS_NOWHERE
|
||||
|
||||
+config TQC_DISTRO
|
||||
+ bool
|
||||
+ default y if DISTRO_DEFAULTS
|
||||
+
|
||||
config TQC_RTC
|
||||
bool
|
||||
|
||||
diff --git a/board/tqc/common/Makefile b/board/tqc/common/Makefile
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/board/tqc/common/Makefile
|
||||
+++ b/board/tqc/common/Makefile
|
||||
@@ -24,6 +24,7 @@ obj-$(CONFIG_TQC_EMMC) += tqc_emmc.o
|
||||
obj-$(CONFIG_TQC_SDMMC) += tqc_sdmmc.o
|
||||
obj-$(CONFIG_TQC_SCU) += tqc_scu.o
|
||||
obj-$(CONFIG_TQC_RTC) += tqc_rtc.o
|
||||
+obj-$(CONFIG_TQC_DISTRO) += tqc_distro.o
|
||||
obj-$(CONFIG_TQC_ENVLOC) += tqc_envloc.o
|
||||
obj-$(CONFIG_TQC_VARD) += tq_som_features.o
|
||||
obj-$(CONFIG_TQC_SPI_NOR) += tqc_spi_nor.o
|
||||
diff --git a/board/tqc/common/tqc_bb.h b/board/tqc/common/tqc_bb.h
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/board/tqc/common/tqc_bb.h
|
||||
+++ b/board/tqc/common/tqc_bb.h
|
||||
@@ -64,4 +64,10 @@ int tqc_pcf85063_set_clkout(int bus, int address, uint8_t clkout);
|
||||
int tqc_pcf85063_set_offset(int bus, int address, bool mode, int offset);
|
||||
#endif /* CONFIG_TQC_RTC */
|
||||
|
||||
+#if IS_ENABLED(CONFIG_TQC_DISTRO)
|
||||
+void tqc_distro_env_init(const char *boot_devtype);
|
||||
+#else
|
||||
+static inline void tqc_distro_env_init(const char *boot_devtype) {}
|
||||
+#endif
|
||||
+
|
||||
#endif
|
||||
diff --git a/board/tqc/common/tqc_distro.c b/board/tqc/common/tqc_distro.c
|
||||
new file mode 100644
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/board/tqc/common/tqc_distro.c
|
||||
@@ -0,0 +1,37 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
+/*
|
||||
+ * Copyright (c) 2023 TQ-Systems GmbH <u-boot@ew.tq-group.com>,
|
||||
+ * D-82229 Seefeld, Germany.
|
||||
+ * Author: Matthias Schiffer
|
||||
+ */
|
||||
+
|
||||
+#include <common.h>
|
||||
+#include <mmc.h>
|
||||
+
|
||||
+/*
|
||||
+ * Set up boot_targets for distroboot automatically
|
||||
+ *
|
||||
+ * If boot_targets_auto is set to "yes", boot_targets will be set to the
|
||||
+ * correct device based on the environment device (which should be configured
|
||||
+ * to be the boot device). Currently, this works for MMC devices.
|
||||
+ */
|
||||
+void tqc_distro_env_init(const char *boot_devtype)
|
||||
+{
|
||||
+ if (strcmp(env_get("boot_targets_auto") ?: "", "yes") != 0)
|
||||
+ return;
|
||||
+
|
||||
+ if (strcmp(boot_devtype, "mmc") == 0) {
|
||||
+ int index = 0;
|
||||
+ char buf[10];
|
||||
+
|
||||
+#ifdef CONFIG_ENV_IS_IN_MMC
|
||||
+ index = mmc_get_env_dev();
|
||||
+#endif
|
||||
+
|
||||
+ snprintf(buf, sizeof(buf), "mmc%d", index);
|
||||
+ env_set("boot_targets", buf);
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ env_set("boot_targets", boot_devtype);
|
||||
+}
|
||||
diff --git a/board/tqc/tqma8mpxl/tqma8mpxl.c b/board/tqc/tqma8mpxl/tqma8mpxl.c
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/board/tqc/tqma8mpxl/tqma8mpxl.c
|
||||
+++ b/board/tqc/tqma8mpxl/tqma8mpxl.c
|
||||
@@ -294,9 +294,12 @@ int board_late_init(void)
|
||||
|
||||
#ifdef CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
|
||||
env_set("board_name", tqc_bb_get_boardname());
|
||||
- env_set("board_rev", tqc_get_boardname());
|
||||
+ env_set("board_rev", bname);
|
||||
#endif
|
||||
|
||||
+ /* TODO: Add support for detecting non-MMC boot devices */
|
||||
+ tqc_distro_env_init("mmc");
|
||||
+
|
||||
tqc_bb_board_late_init();
|
||||
|
||||
return 0;
|
||||
diff --git a/board/tqc/tqma8mx/tqma8mx.c b/board/tqc/tqma8mx/tqma8mx.c
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/board/tqc/tqma8mx/tqma8mx.c
|
||||
+++ b/board/tqc/tqma8mx/tqma8mx.c
|
||||
@@ -219,9 +219,12 @@ int board_late_init(void)
|
||||
|
||||
#ifdef CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
|
||||
env_set("board_name", tqc_bb_get_boardname());
|
||||
- env_set("board_rev", tqc_get_boardname());
|
||||
+ env_set("board_rev", bname);
|
||||
#endif
|
||||
|
||||
+ /* TODO: Add support for detecting non-MMC boot devices */
|
||||
+ tqc_distro_env_init("mmc");
|
||||
+
|
||||
return tqc_bb_board_late_init();
|
||||
}
|
||||
|
||||
diff --git a/board/tqc/tqma8mxml/tqma8mxml.c b/board/tqc/tqma8mxml/tqma8mxml.c
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/board/tqc/tqma8mxml/tqma8mxml.c
|
||||
+++ b/board/tqc/tqma8mxml/tqma8mxml.c
|
||||
@@ -179,9 +179,12 @@ int board_late_init(void)
|
||||
|
||||
#ifdef CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG
|
||||
env_set("board_name", tqc_bb_get_boardname());
|
||||
- env_set("board_rev", tqc_get_boardname());
|
||||
+ env_set("board_rev", bname);
|
||||
#endif
|
||||
|
||||
+ /* TODO: Add support for detecting non-MMC boot devices */
|
||||
+ tqc_distro_env_init("mmc");
|
||||
+
|
||||
return tqc_bb_board_late_init();
|
||||
}
|
||||
|
||||
diff --git a/configs/tqma8mxml_1gb_mba8mx_fspi_defconfig b/configs/tqma8mxml_1gb_mba8mx_fspi_defconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/configs/tqma8mxml_1gb_mba8mx_fspi_defconfig
|
||||
+++ b/configs/tqma8mxml_1gb_mba8mx_fspi_defconfig
|
||||
@@ -8,7 +8,6 @@ CONFIG_TQMA8MXX_BOOT_FSPI=y
|
||||
CONFIG_IMX_BOOTAUX=y
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_BOOTDELAY=3
|
||||
-CONFIG_BOOTCOMMAND="run mmcboot"
|
||||
CONFIG_VERSION_VARIABLE=y
|
||||
CONFIG_ARCH_MISC_INIT=y
|
||||
CONFIG_SPL_SEPARATE_BSS=y
|
||||
diff --git a/configs/tqma8mxml_1gb_mba8mx_mfg_defconfig b/configs/tqma8mxml_1gb_mba8mx_mfg_defconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/configs/tqma8mxml_1gb_mba8mx_mfg_defconfig
|
||||
+++ b/configs/tqma8mxml_1gb_mba8mx_mfg_defconfig
|
||||
@@ -9,7 +9,6 @@ CONFIG_TQMA8MXX_BOOT_SDCARD=y
|
||||
CONFIG_IMX_BOOTAUX=y
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_BOOTDELAY=3
|
||||
-CONFIG_BOOTCOMMAND="run mmcboot"
|
||||
CONFIG_VERSION_VARIABLE=y
|
||||
CONFIG_ARCH_MISC_INIT=y
|
||||
CONFIG_SPL_SEPARATE_BSS=y
|
||||
diff --git a/configs/tqma8mxml_1gb_mba8mx_mmc_defconfig b/configs/tqma8mxml_1gb_mba8mx_mmc_defconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/configs/tqma8mxml_1gb_mba8mx_mmc_defconfig
|
||||
+++ b/configs/tqma8mxml_1gb_mba8mx_mmc_defconfig
|
||||
@@ -8,7 +8,6 @@ CONFIG_TQMA8MXX_BOOT_SDCARD=y
|
||||
CONFIG_IMX_BOOTAUX=y
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_BOOTDELAY=3
|
||||
-CONFIG_BOOTCOMMAND="run mmcboot"
|
||||
CONFIG_VERSION_VARIABLE=y
|
||||
CONFIG_ARCH_MISC_INIT=y
|
||||
CONFIG_SPL_SEPARATE_BSS=y
|
||||
diff --git a/configs/tqma8mxml_2gb_mba8mx_fspi_defconfig b/configs/tqma8mxml_2gb_mba8mx_fspi_defconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/configs/tqma8mxml_2gb_mba8mx_fspi_defconfig
|
||||
+++ b/configs/tqma8mxml_2gb_mba8mx_fspi_defconfig
|
||||
@@ -7,7 +7,6 @@ CONFIG_TQMA8MXX_BOOT_FSPI=y
|
||||
CONFIG_IMX_BOOTAUX=y
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_BOOTDELAY=3
|
||||
-CONFIG_BOOTCOMMAND="run mmcboot"
|
||||
CONFIG_VERSION_VARIABLE=y
|
||||
CONFIG_ARCH_MISC_INIT=y
|
||||
CONFIG_SPL_SEPARATE_BSS=y
|
||||
diff --git a/configs/tqma8mxml_2gb_mba8mx_mfg_defconfig b/configs/tqma8mxml_2gb_mba8mx_mfg_defconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/configs/tqma8mxml_2gb_mba8mx_mfg_defconfig
|
||||
+++ b/configs/tqma8mxml_2gb_mba8mx_mfg_defconfig
|
||||
@@ -8,7 +8,6 @@ CONFIG_TQMA8MXX_BOOT_SDCARD=y
|
||||
CONFIG_IMX_BOOTAUX=y
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_BOOTDELAY=3
|
||||
-CONFIG_BOOTCOMMAND="run mmcboot"
|
||||
CONFIG_VERSION_VARIABLE=y
|
||||
CONFIG_ARCH_MISC_INIT=y
|
||||
CONFIG_SPL_SEPARATE_BSS=y
|
||||
diff --git a/configs/tqma8mxml_2gb_mba8mx_mmc_defconfig b/configs/tqma8mxml_2gb_mba8mx_mmc_defconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/configs/tqma8mxml_2gb_mba8mx_mmc_defconfig
|
||||
+++ b/configs/tqma8mxml_2gb_mba8mx_mmc_defconfig
|
||||
@@ -7,7 +7,6 @@ CONFIG_TQMA8MXX_BOOT_SDCARD=y
|
||||
CONFIG_IMX_BOOTAUX=y
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_BOOTDELAY=3
|
||||
-CONFIG_BOOTCOMMAND="run mmcboot"
|
||||
CONFIG_VERSION_VARIABLE=y
|
||||
CONFIG_ARCH_MISC_INIT=y
|
||||
CONFIG_SPL_SEPARATE_BSS=y
|
||||
diff --git a/configs/tqma8mxml_4gb_mba8mx_fspi_defconfig b/configs/tqma8mxml_4gb_mba8mx_fspi_defconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/configs/tqma8mxml_4gb_mba8mx_fspi_defconfig
|
||||
+++ b/configs/tqma8mxml_4gb_mba8mx_fspi_defconfig
|
||||
@@ -8,7 +8,6 @@ CONFIG_TQMA8MXX_BOOT_FSPI=y
|
||||
CONFIG_IMX_BOOTAUX=y
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_BOOTDELAY=3
|
||||
-CONFIG_BOOTCOMMAND="run mmcboot"
|
||||
CONFIG_VERSION_VARIABLE=y
|
||||
CONFIG_ARCH_MISC_INIT=y
|
||||
CONFIG_SPL_SEPARATE_BSS=y
|
||||
diff --git a/configs/tqma8mxml_4gb_mba8mx_mfg_defconfig b/configs/tqma8mxml_4gb_mba8mx_mfg_defconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/configs/tqma8mxml_4gb_mba8mx_mfg_defconfig
|
||||
+++ b/configs/tqma8mxml_4gb_mba8mx_mfg_defconfig
|
||||
@@ -9,7 +9,6 @@ CONFIG_TQMA8MXX_BOOT_SDCARD=y
|
||||
CONFIG_IMX_BOOTAUX=y
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_BOOTDELAY=3
|
||||
-CONFIG_BOOTCOMMAND="run mmcboot"
|
||||
CONFIG_VERSION_VARIABLE=y
|
||||
CONFIG_ARCH_MISC_INIT=y
|
||||
CONFIG_SPL_SEPARATE_BSS=y
|
||||
diff --git a/configs/tqma8mxml_4gb_mba8mx_mmc_defconfig b/configs/tqma8mxml_4gb_mba8mx_mmc_defconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/configs/tqma8mxml_4gb_mba8mx_mmc_defconfig
|
||||
+++ b/configs/tqma8mxml_4gb_mba8mx_mmc_defconfig
|
||||
@@ -8,7 +8,6 @@ CONFIG_TQMA8MXX_BOOT_SDCARD=y
|
||||
CONFIG_IMX_BOOTAUX=y
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_BOOTDELAY=3
|
||||
-CONFIG_BOOTCOMMAND="run mmcboot"
|
||||
CONFIG_VERSION_VARIABLE=y
|
||||
CONFIG_ARCH_MISC_INIT=y
|
||||
CONFIG_SPL_SEPARATE_BSS=y
|
||||
diff --git a/configs/tqma8mxnl_1gb_mba8mx_defconfig b/configs/tqma8mxnl_1gb_mba8mx_defconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/configs/tqma8mxnl_1gb_mba8mx_defconfig
|
||||
+++ b/configs/tqma8mxnl_1gb_mba8mx_defconfig
|
||||
@@ -6,7 +6,6 @@ CONFIG_TARGET_TQMA8MXNL=y
|
||||
CONFIG_IMX_BOOTAUX=y
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_BOOTDELAY=3
|
||||
-CONFIG_BOOTCOMMAND="run mmcboot"
|
||||
CONFIG_VERSION_VARIABLE=y
|
||||
CONFIG_ARCH_MISC_INIT=y
|
||||
CONFIG_SPL_SEPARATE_BSS=y
|
||||
diff --git a/configs/tqma8mxnl_1gb_mba8mx_mfg_defconfig b/configs/tqma8mxnl_1gb_mba8mx_mfg_defconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/configs/tqma8mxnl_1gb_mba8mx_mfg_defconfig
|
||||
+++ b/configs/tqma8mxnl_1gb_mba8mx_mfg_defconfig
|
||||
@@ -7,7 +7,6 @@ CONFIG_TQMA8MXX_MFG_SUPPORT=y
|
||||
CONFIG_IMX_BOOTAUX=y
|
||||
CONFIG_DISTRO_DEFAULTS=y
|
||||
CONFIG_BOOTDELAY=3
|
||||
-CONFIG_BOOTCOMMAND="run mmcboot"
|
||||
CONFIG_VERSION_VARIABLE=y
|
||||
CONFIG_ARCH_MISC_INIT=y
|
||||
CONFIG_SPL_SEPARATE_BSS=y
|
||||
diff --git a/doc/board/tq/examples/boot-legacy.cmd b/doc/board/tq/examples/boot-legacy.cmd
|
||||
new file mode 100644
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/doc/board/tq/examples/boot-legacy.cmd
|
||||
@@ -0,0 +1,26 @@
|
||||
+test "${rootpart}" || setenv rootpart 2
|
||||
+
|
||||
+# devtype/devnum are part of the distroboot contract
|
||||
+if test "${devtype}" = mmc; then
|
||||
+ # Explicitly set device path, so the correct rootfs is used even when
|
||||
+ # the same image has been written to eMMC and SD-card
|
||||
+ setenv rootdev "/dev/mmcblk${devnum}p${rootpart}"
|
||||
+else
|
||||
+ # Generic fallback for other boot media like USB/SATA/... drives.
|
||||
+ # Requires a unique partition UUID to work as expected.
|
||||
+ part uuid ${devtype} ${devnum}:${rootpart} rootuuid
|
||||
+ setenv rootdev "PARTUUID=${rootuuid}"
|
||||
+fi
|
||||
+setenv bootargs_root "root=${rootdev}"
|
||||
+
|
||||
+# Set bootargs for additional arguments, or override bootargs_default
|
||||
+# to replace the cmdline completely
|
||||
+test "${bootargs_default}" || bootargs_default="${bootargs_root} rootwait rw console=${console},${baudrate}"
|
||||
+setenv bootargs "${bootargs_default} ${bootargs}"
|
||||
+
|
||||
+test "${bootfile}" || bootfile='/Image'
|
||||
+test "${boottype}" || boottype='booti'
|
||||
+
|
||||
+load "${devtype}" "${devnum}:${bootpart}" "${loadaddr}" "${bootfile}" || exit 1
|
||||
+load "${devtype}" "${devnum}:${bootpart}" "${fdt_addr_r}" "${fdtfile}" || exit 1
|
||||
+${boottype} "${loadaddr}" - "${fdt_addr_r}"
|
||||
diff --git a/include/configs/tqma8mxml-mba8mx.h b/include/configs/tqma8mxml-mba8mx.h
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/include/configs/tqma8mxml-mba8mx.h
|
||||
+++ b/include/configs/tqma8mxml-mba8mx.h
|
||||
@@ -14,9 +14,12 @@
|
||||
|
||||
#define BB_ENV_SETTINGS \
|
||||
"console=" CONSOLE_DEV "\0" \
|
||||
- "addearlycon=setenv bootargs ${bootargs} " \
|
||||
- "earlycon=ec_imx6q," __stringify(CONFIG_MXC_UART_BASE) \
|
||||
- ",${baudrate}\0" \
|
||||
- "fdt_file=" CONFIG_DEFAULT_FDT_FILE "\0"
|
||||
+ "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0"
|
||||
+
|
||||
+#define BOOT_TARGET_DEVICES(func) \
|
||||
+ func(MMC, mmc, 0) \
|
||||
+ func(MMC, mmc, 1) \
|
||||
+ func(PXE, pxe, na) \
|
||||
+ func(DHCP, dhcp, na)
|
||||
|
||||
#endif /* __TQMA8MXML_MBA8MX_H */
|
||||
diff --git a/include/configs/tqma8mxml.h b/include/configs/tqma8mxml.h
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/include/configs/tqma8mxml.h
|
||||
+++ b/include/configs/tqma8mxml.h
|
||||
@@ -10,7 +10,8 @@
|
||||
|
||||
#include <linux/sizes.h>
|
||||
#include <asm/arch/imx-regs.h>
|
||||
-#include "imx_env.h"
|
||||
+#include <config_distro_bootcmd.h>
|
||||
+#include <environment/tq/boot.h>
|
||||
|
||||
#define CONFIG_SPL_MAX_SIZE (208 * 1024)
|
||||
#define CONFIG_SYS_MONITOR_LEN SZ_512K
|
||||
@@ -71,13 +72,6 @@
|
||||
|
||||
#define CONFIG_REMAKE_ELF
|
||||
|
||||
-#define CONFIG_MFG_ENV_SETTINGS \
|
||||
- CONFIG_MFG_ENV_SETTINGS_DEFAULT \
|
||||
- "initrd_addr=0x43800000\0" \
|
||||
- "initrd_high=0xffffffffffffffff\0" \
|
||||
- "emmc_dev=0\0"\
|
||||
- "sd_dev=1\0" \
|
||||
-
|
||||
#if defined(CONFIG_IMX8MM)
|
||||
|
||||
#define TQMA8MX_CPU_ENV_SETTINGS \
|
||||
@@ -102,193 +96,56 @@
|
||||
#error
|
||||
#endif
|
||||
|
||||
-#if defined(CONFIG_IMX_BOOTAUX)
|
||||
-
|
||||
-/*
|
||||
- * cm_loadaddr is set to ITCM (instruction tightly coupled memory) on i.MX8MN
|
||||
- * or TCML (i.MX8MM) per default.
|
||||
- * cm_maxsize is used to prevent loading too large images. This limit is
|
||||
- * 128 kiByte for i.MX8MM and i.MX8MN
|
||||
- * Size and base address can be changed to RAM address or SPI NOR if larger
|
||||
- * images are needed. In this case further adaption is needed.
|
||||
- */
|
||||
-#define TQMA8MXML_CM_ENV_SETTINGS \
|
||||
- "cm_image=cm.bin\0" \
|
||||
- "cm_loadaddr=0x7e0000\0" \
|
||||
- "cm_maxsize=0x20000\0" \
|
||||
- "boot_cm_mmc=if load mmc ${mmcdev}:${mmcpart} ${loadaddr} " \
|
||||
- "${mmcpath}/${cm_image}; then " \
|
||||
- "if itest ${filesize} > 0; then " \
|
||||
- "if itest ${filesize} <= ${cm_maxsize}; then " \
|
||||
- "cp.b ${loadaddr} ${cm_loadaddr} " \
|
||||
- "${filesize};" \
|
||||
- "dcache flush; " \
|
||||
- "bootaux ${cm_loadaddr}; " \
|
||||
- "else " \
|
||||
- "echo ${filesize} > ${cm_maxsize}; " \
|
||||
- "false; " \
|
||||
- "fi; " \
|
||||
- "else " \
|
||||
- "echo invalid data size; " \
|
||||
- "false; " \
|
||||
- "fi; " \
|
||||
- "else " \
|
||||
- "echo file not loaded; " \
|
||||
- "false; " \
|
||||
- "fi; setenv filesize;\0" \
|
||||
- "update_cm_mmc=run set_getcmd; " \
|
||||
- "if ${get_cmd} ${cm_image}; then " \
|
||||
- "if itest ${filesize} > 0; then " \
|
||||
- "echo Write CM image to mmc ...; " \
|
||||
- "save mmc ${mmcdev}:${mmcpart} ${loadaddr} " \
|
||||
- "${mmcpath}${cm_image} ${filesize}; " \
|
||||
- "fi; " \
|
||||
- "fi; " \
|
||||
- "setenv filesize; setenv get_cmd\0"
|
||||
-#else
|
||||
-
|
||||
-#define TQMA8MXML_CM_ENV_SETTINGS
|
||||
-
|
||||
-#endif
|
||||
-
|
||||
/* Initial environment variables */
|
||||
-#define TQMA8MX_MODULE_ENV_SETTINGS \
|
||||
+#define TQMA8MX_MODULE_ENV_SETTINGS \
|
||||
TQMA8MX_CPU_ENV_SETTINGS \
|
||||
- CONFIG_MFG_ENV_SETTINGS \
|
||||
- "script=boot.scr\0" \
|
||||
- "image=Image\0" \
|
||||
- "fdt_addr=0x43000000\0" \
|
||||
- "fdt_high=0xffffffffffffffff\0" \
|
||||
- "boot_fdt=try\0" \
|
||||
- "initrd_addr=0x43800000\0" \
|
||||
- "initrd_high=0xffffffffffffffff\0" \
|
||||
- "mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \
|
||||
- "mmcpart=" __stringify(CONFIG_SYS_MMC_IMG_LOAD_PART) "\0" \
|
||||
- "mmcpath=/\0" \
|
||||
+ "kernel_addr_r=0x44000000\0" \
|
||||
+ "fdt_addr_r=0x46000000\0" \
|
||||
+ "initrd_addr_r=0x47000000\0" \
|
||||
+ "scriptaddr=0x50000000\0" \
|
||||
+ "pxefile_addr_r=0x51000000\0" \
|
||||
+ "emmc_dev=0\0" /* for UUU */ \
|
||||
+ "sd_dev=1\0" /* for UUU */ \
|
||||
+ "mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" /* for update_*_mmc */ \
|
||||
+ "bootpart=" __stringify(CONFIG_SYS_MMCSD_FS_BOOT_PARTITION) "\0" /* for update_cm_mmc */ \
|
||||
+ "mmcpath=/\0" /* for update_cm_mmc */ \
|
||||
"mmcautodetect=yes\0" \
|
||||
- "loadbootscript=mmc dev ${mmcdev}; mmc rescan;" \
|
||||
- "load mmc ${mmcdev}:${mmcpart} ${loadaddr} " \
|
||||
- "${mmcpath}${script};\0" \
|
||||
- "bootscript=echo Running bootscript from mmc ...; " \
|
||||
- "source\0" \
|
||||
- "loadimage=mmc dev ${mmcdev}; mmc rescan;" \
|
||||
- "load mmc ${mmcdev}:${mmcpart} ${loadaddr} " \
|
||||
- "${mmcpath}${image}\0" \
|
||||
- "loadfdt=mmc dev ${mmcdev}; mmc rescan;" \
|
||||
- "load mmc ${mmcdev}:${mmcpart} ${fdt_addr} " \
|
||||
- "${mmcpath}${fdt_file}\0" \
|
||||
- "boot_os=booti ${loadaddr} - ${fdt_addr};\0" \
|
||||
- "mmcboot=echo Booting from mmc ...; " \
|
||||
- "setenv bootargs; " \
|
||||
- "run mmcargs; " \
|
||||
- "run loadimage; " \
|
||||
- "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
|
||||
- "if run loadfdt; then " \
|
||||
- "run boot_os; " \
|
||||
- "else " \
|
||||
- "echo WARN: Cannot load the DT; " \
|
||||
- "fi; " \
|
||||
- "else " \
|
||||
- "echo wait for boot; " \
|
||||
- "fi;\0" \
|
||||
- "netboot=echo Booting from net ...; " \
|
||||
- "setenv bootargs; " \
|
||||
- "run netargs; " \
|
||||
- "run set_getcmd; " \
|
||||
- "${get_cmd} ${loadaddr} ${image}; " \
|
||||
- "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
|
||||
- "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
|
||||
- "run boot_os; " \
|
||||
- "else " \
|
||||
- "echo WARN: Cannot load the DT; " \
|
||||
- "fi; " \
|
||||
- "else " \
|
||||
- "booti; " \
|
||||
- "fi;\0" \
|
||||
- "update_kernel_mmc=run set_getcmd; " \
|
||||
- "if ${get_cmd} ${image}; then " \
|
||||
- "if itest ${filesize} > 0; then " \
|
||||
- "echo Write kernel image to mmc ${mmcdev}:${mmcpart}...; " \
|
||||
- "mmc dev ${mmcdev}; mmc rescan;" \
|
||||
- "save mmc ${mmcdev}:${mmcpart} ${loadaddr} " \
|
||||
- "${mmcpath}${image} ${filesize}; " \
|
||||
- "fi; " \
|
||||
- "fi; " \
|
||||
- "setenv filesize; setenv get_cmd \0" \
|
||||
- "update_fdt_mmc=run set_getcmd; " \
|
||||
- "if ${get_cmd} ${fdt_file}; then " \
|
||||
- "if itest ${filesize} > 0; then " \
|
||||
- "echo Write fdt image to mmc ${mmcdev}:${mmcpart}...; " \
|
||||
- "mmc dev ${mmcdev}; mmc rescan;" \
|
||||
- "save mmc ${mmcdev}:${mmcpart} ${loadaddr} " \
|
||||
- "${mmcpath}${fdt_file} ${filesize}; " \
|
||||
- "fi; " \
|
||||
- "fi; " \
|
||||
- "setenv filesize; setenv get_cmd \0" \
|
||||
- "uboot=bootstream.bin\0" \
|
||||
- "update_uboot_mmc=run set_getcmd; if ${get_cmd} ${uboot}; then " \
|
||||
- "if itest ${filesize} > 0; then " \
|
||||
- "echo Write u-boot image to mmc ${mmcdev} ...; " \
|
||||
- "mmc dev ${mmcdev}; mmc rescan; " \
|
||||
- "setexpr blkc ${filesize} + 0x1ff; " \
|
||||
- "setexpr blkc ${blkc} / 0x200; " \
|
||||
- "if itest ${blkc} <= ${uboot_mmc_size}; then " \
|
||||
- "mmc write ${loadaddr} ${uboot_mmc_start} " \
|
||||
- "${blkc}; " \
|
||||
- "fi; " \
|
||||
- "fi; fi; " \
|
||||
- "setenv filesize; setenv blkc \0" \
|
||||
- "update_uboot_spi=run set_getcmd; if ${get_cmd} ${uboot}; then " \
|
||||
- "if itest ${filesize} > 0; then " \
|
||||
- "echo Write u-boot image to flexspi ...; " \
|
||||
- "if itest ${filesize} <= ${uboot_fspi_size}; then " \
|
||||
- "if sf probe; then " \
|
||||
- "sf update ${loadaddr} " \
|
||||
- "${uboot_fspi_start} " \
|
||||
- "${filesize}; " \
|
||||
- "fi; " \
|
||||
- "fi; " \
|
||||
- "fi; fi; " \
|
||||
- "setenv filesize \0" \
|
||||
- "set_getcmd=if test \"${ip_dyn}\" = yes; then " \
|
||||
- "setenv get_cmd dhcp; " \
|
||||
- "else " \
|
||||
- "setenv get_cmd tftp; " \
|
||||
- "fi; \0" \
|
||||
- "rootfsmode=ro\0" \
|
||||
- "addtty=setenv bootargs ${bootargs} console=${console},${baudrate}\0" \
|
||||
- "mmcrootpart=2\0" \
|
||||
- "addmmc=setenv bootargs ${bootargs} " \
|
||||
- "root=/dev/mmcblk${mmcblkdev}p${mmcrootpart} ${rootfsmode} " \
|
||||
- "rootwait\0" \
|
||||
- "mmcargs=run addtty addearlycon addmmc\0" \
|
||||
- "netargs=run addnfs addip addtty addearlycon\0" \
|
||||
- "addnfs=setenv bootargs ${bootargs} " \
|
||||
- "root=/dev/nfs rw " \
|
||||
- "nfsroot=${serverip}:${rootpath},v3,tcp;\0" \
|
||||
- "netdev=eth0\0" \
|
||||
- "rootpath=/srv/nfs\0" \
|
||||
- "ipmode=static\0" \
|
||||
- "addip_static=setenv bootargs ${bootargs} " \
|
||||
- "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:" \
|
||||
- "${hostname}:${netdev}:off\0" \
|
||||
- "addip_dynamic=setenv bootargs ${bootargs} ip=dhcp\0" \
|
||||
- "addip=if test \"${ipmode}\" != static; then " \
|
||||
- "run addip_dynamic; else run addip_static; fi\0"
|
||||
-
|
||||
-#if !defined(CONFIG_BOOTCOMMAND)
|
||||
-#define CONFIG_BOOTCOMMAND \
|
||||
- "mmc dev ${mmcdev}; if mmc rescan; then " \
|
||||
- "if run loadbootscript; then " \
|
||||
- "run bootscript; " \
|
||||
- "else " \
|
||||
- "if run loadimage; then " \
|
||||
- "run mmcboot; " \
|
||||
- "else run netboot; " \
|
||||
- "fi; " \
|
||||
- "fi; " \
|
||||
- "else run boot_os; fi"
|
||||
-#endif
|
||||
+ "boot_targets_auto=yes\0" \
|
||||
+ "uboot=bootstream.bin\0" /* for update_uboot_* */ \
|
||||
+ "update_uboot_mmc=" \
|
||||
+ "run check_ipaddr; " \
|
||||
+ "tftp ${uboot} || exit 1; " \
|
||||
+ "itest ${filesize} > 0 || exit 1; " \
|
||||
+ "echo \"Writing u-boot image to mmc ${mmcdev} ...\"; " \
|
||||
+ "mmc dev ${mmcdev}; mmc rescan; " \
|
||||
+ "setexpr tmp ${filesize} + 0x1ff; setexpr tmp ${tmp} / 0x200; blkc=${tmp}; " \
|
||||
+ "setenv filesize; setenv tmp; " \
|
||||
+ "if itest ${blkc} > ${uboot_mmc_size}; then " \
|
||||
+ "echo \"U-Boot image too large (${blkc} > ${uboot_mmc_size} sectors)\"; " \
|
||||
+ "exit 1; " \
|
||||
+ "fi; " \
|
||||
+ "mmc write ${loadaddr} ${uboot_mmc_start} ${blkc}\0" \
|
||||
+ "update_uboot_spi=" \
|
||||
+ "run check_ipaddr; " \
|
||||
+ "tftp ${uboot} || exit 1; " \
|
||||
+ "itest ${filesize} > 0 || exit 1; " \
|
||||
+ "echo 'Writing u-boot image to flexspi ...'; " \
|
||||
+ "if itest ${filesize} > ${uboot_fspi_size}; then " \
|
||||
+ "echo \"U-Boot image too large " \
|
||||
+ "(${filesize} > ${uboot_fspi_size} bytes)\"; " \
|
||||
+ "exit 1; " \
|
||||
+ "fi; " \
|
||||
+ "sf probe && sf update ${loadaddr} ${uboot_fspi_start} ${filesize}; " \
|
||||
+ "setenv filesize\0" \
|
||||
+ "cm_image=cm.bin\0" \
|
||||
+ "update_cm_mmc=" \
|
||||
+ "run check_ipaddr; " \
|
||||
+ "tftp ${cm_image} || exit 1; " \
|
||||
+ "itest ${filesize} > 0 || exit 1; " \
|
||||
+ "echo \"Writing CM image to mmc ${mmcdev}:${bootpart} ${mmcpath}${cm_image} ...\"; "\
|
||||
+ "save mmc ${mmcdev}:${bootpart} ${loadaddr} ${mmcpath}${cm_image} ${filesize}; " \
|
||||
+ "setenv filesize\0" \
|
||||
+ ""
|
||||
|
||||
/* Link Definitions */
|
||||
#define CONFIG_LOADADDR 0x40480000
|
||||
@@ -309,7 +166,6 @@
|
||||
*/
|
||||
#define CONFIG_SYS_MMC_ENV_DEV -1 /* invalid */
|
||||
#define CONFIG_SYS_MMC_ENV_PART 0 /* user area */
|
||||
-#define CONFIG_SYS_MMC_IMG_LOAD_PART 1
|
||||
|
||||
/* Size of malloc() pool */
|
||||
#define CONFIG_SYS_MALLOC_LEN SZ_64M
|
||||
@@ -391,17 +247,11 @@
|
||||
|
||||
#include "tqma8-shared-env.h"
|
||||
|
||||
-#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
+#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
TQMA8_SHARED_ENV_SETTINGS \
|
||||
- TQMA8MXML_CM_ENV_SETTINGS \
|
||||
- TQMA8MX_MODULE_ENV_SETTINGS \
|
||||
+ TQ_BOOT_ENV_SETTINGS \
|
||||
+ BOOTENV \
|
||||
+ TQMA8MX_MODULE_ENV_SETTINGS \
|
||||
BB_ENV_SETTINGS
|
||||
|
||||
-#ifndef CONFIG_SPL_BUILD
|
||||
-#define BOOT_TARGET_DEVICES(func) \
|
||||
- func(MMC, mmc, 0) \
|
||||
- func(USB, usb, 0)
|
||||
-#include <config_distro_bootcmd.h>
|
||||
-#endif
|
||||
-
|
||||
#endif /* __TQMA8MXML_H */
|
||||
diff --git a/include/environment/tq/boot.h b/include/environment/tq/boot.h
|
||||
new file mode 100644
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/include/environment/tq/boot.h
|
||||
@@ -0,0 +1,21 @@
|
||||
+/* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||
+/*
|
||||
+ * Copyright (c) 2023 TQ-Systems GmbH <u-boot@ew.tq-group.com>,
|
||||
+ * D-82229 Seefeld, Germany.
|
||||
+ * Author: Matthias Schiffer
|
||||
+ *
|
||||
+ * Common boot helpers for TQ-Systems default environments
|
||||
+ */
|
||||
+
|
||||
+#ifndef __TQ_BOOT_H
|
||||
+#define __TQ_BOOT_H
|
||||
+
|
||||
+#define CONFIG_SYS_AUTOLOAD "no"
|
||||
+
|
||||
+#define TQ_BOOT_ENV_SETTINGS \
|
||||
+ "check_ipaddr=" \
|
||||
+ "if test \"${ipaddr}\" && test \"${serverip}\"; then exit; fi; " \
|
||||
+ "echo 'ipaddr or serverip unset, falling back to DHCP...'; " \
|
||||
+ "dhcp\0"
|
||||
+
|
||||
+#endif /* __TQ_BOOT_H */
|
||||
--
|
||||
Armbian
|
||||
|
||||
81
patch/u-boot/u-boot-tqma/0002-fix-distro-boot.patch
Normal file
81
patch/u-boot/u-boot-tqma/0002-fix-distro-boot.patch
Normal file
@@ -0,0 +1,81 @@
|
||||
From 1b77f2660bfa99586196e5a9a5b66e8917a21618 Mon Sep 17 00:00:00 2001
|
||||
From: Martin Schmiedel <Martin.Schmiedel@tq-group.com>
|
||||
Date: Wed, 28 May 2025 16:28:13 +0200
|
||||
Subject: [PATCH] fix distro boot
|
||||
|
||||
Signed-off-by: Martin Schmiedel <Martin.Schmiedel@tq-group.com>
|
||||
---
|
||||
configs/tqma8mpxl_multi_mba8mp_ras314_defconfig | 2 +-
|
||||
configs/tqma8mpxl_multi_mba8mp_ras314_ecc_defconfig | 2 +-
|
||||
configs/tqma8mpxl_multi_mba8mpxl_defconfig | 2 +-
|
||||
configs/tqma8mpxl_multi_mba8mpxl_ecc_defconfig | 2 +-
|
||||
include/configs/tqma8mpxl.h | 1 +
|
||||
5 files changed, 5 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/configs/tqma8mpxl_multi_mba8mp_ras314_defconfig b/configs/tqma8mpxl_multi_mba8mp_ras314_defconfig
|
||||
index fe8dd13bad2..90d7a06c85f 100644
|
||||
--- a/configs/tqma8mpxl_multi_mba8mp_ras314_defconfig
|
||||
+++ b/configs/tqma8mpxl_multi_mba8mp_ras314_defconfig
|
||||
@@ -45,7 +45,7 @@ CONFIG_BOOTDELAY=3
|
||||
CONFIG_OF_BOARD_SETUP=y
|
||||
CONFIG_OF_SYSTEM_SETUP=y
|
||||
CONFIG_FDT_FIXUP_PARTITIONS=y
|
||||
-CONFIG_BOOTCOMMAND="run mmcboot; run distro_bootcmd"
|
||||
+CONFIG_BOOTCOMMAND="setenv boot_targets mmc${mmcdev}; run distro_bootcmd"
|
||||
CONFIG_DEFAULT_FDT_FILE="imx8mp-tqma8mpql-mba8mp-ras314.dtb"
|
||||
CONFIG_SYS_CBSIZE=2048
|
||||
CONFIG_SYS_PBSIZE=2074
|
||||
diff --git a/configs/tqma8mpxl_multi_mba8mp_ras314_ecc_defconfig b/configs/tqma8mpxl_multi_mba8mp_ras314_ecc_defconfig
|
||||
index 6b0b867dad4..63f762b6136 100644
|
||||
--- a/configs/tqma8mpxl_multi_mba8mp_ras314_ecc_defconfig
|
||||
+++ b/configs/tqma8mpxl_multi_mba8mp_ras314_ecc_defconfig
|
||||
@@ -47,7 +47,7 @@ CONFIG_BOOTDELAY=3
|
||||
CONFIG_OF_BOARD_SETUP=y
|
||||
CONFIG_OF_SYSTEM_SETUP=y
|
||||
CONFIG_FDT_FIXUP_PARTITIONS=y
|
||||
-CONFIG_BOOTCOMMAND="run mmcboot; run distro_bootcmd"
|
||||
+CONFIG_BOOTCOMMAND="setenv boot_targets mmc${mmcdev}; run distro_bootcmd"
|
||||
CONFIG_DEFAULT_FDT_FILE="imx8mp-tqma8mpql-mba8mp-ras314.dtb"
|
||||
CONFIG_SYS_CBSIZE=2048
|
||||
CONFIG_SYS_PBSIZE=2074
|
||||
diff --git a/configs/tqma8mpxl_multi_mba8mpxl_defconfig b/configs/tqma8mpxl_multi_mba8mpxl_defconfig
|
||||
index 0372118abc3..1c3056a2fc8 100644
|
||||
--- a/configs/tqma8mpxl_multi_mba8mpxl_defconfig
|
||||
+++ b/configs/tqma8mpxl_multi_mba8mpxl_defconfig
|
||||
@@ -44,7 +44,7 @@ CONFIG_BOOTDELAY=3
|
||||
CONFIG_OF_BOARD_SETUP=y
|
||||
CONFIG_OF_SYSTEM_SETUP=y
|
||||
CONFIG_FDT_FIXUP_PARTITIONS=y
|
||||
-CONFIG_BOOTCOMMAND="run mmcboot; run distro_bootcmd"
|
||||
+CONFIG_BOOTCOMMAND="setenv boot_targets mmc${mmcdev}; run distro_bootcmd"
|
||||
CONFIG_DEFAULT_FDT_FILE="imx8mp-tqma8mpql-mba8mpxl.dtb"
|
||||
CONFIG_SYS_CBSIZE=2048
|
||||
CONFIG_SYS_PBSIZE=2074
|
||||
diff --git a/configs/tqma8mpxl_multi_mba8mpxl_ecc_defconfig b/configs/tqma8mpxl_multi_mba8mpxl_ecc_defconfig
|
||||
index 0ed0dfafcf2..4f768ebe19a 100644
|
||||
--- a/configs/tqma8mpxl_multi_mba8mpxl_ecc_defconfig
|
||||
+++ b/configs/tqma8mpxl_multi_mba8mpxl_ecc_defconfig
|
||||
@@ -46,7 +46,7 @@ CONFIG_BOOTDELAY=3
|
||||
CONFIG_OF_BOARD_SETUP=y
|
||||
CONFIG_OF_SYSTEM_SETUP=y
|
||||
CONFIG_FDT_FIXUP_PARTITIONS=y
|
||||
-CONFIG_BOOTCOMMAND="run mmcboot; run distro_bootcmd"
|
||||
+CONFIG_BOOTCOMMAND="setenv boot_targets mmc${mmcdev}; run distro_bootcmd"
|
||||
CONFIG_DEFAULT_FDT_FILE="imx8mp-tqma8mpql-mba8mpxl.dtb"
|
||||
CONFIG_SYS_CBSIZE=2048
|
||||
CONFIG_SYS_PBSIZE=2074
|
||||
diff --git a/include/configs/tqma8mpxl.h b/include/configs/tqma8mpxl.h
|
||||
index e1cd6c398d9..c81d97e87a2 100644
|
||||
--- a/include/configs/tqma8mpxl.h
|
||||
+++ b/include/configs/tqma8mpxl.h
|
||||
@@ -61,6 +61,7 @@
|
||||
"pxefile_addr_r=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \
|
||||
"fdt_addr_r=0x43000000\0" \
|
||||
"fdtoverlay_addr_r=0x43080000\0" \
|
||||
+ "ramdisk_addr_r=0x48000000\0" \
|
||||
"initrd_addr=0x43800000\0" \
|
||||
"mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \
|
||||
"mmcautodetect=yes\0" \
|
||||
--
|
||||
2.43.0
|
||||
|
||||
@@ -1,365 +0,0 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Martin Schmiedel <Martin.Schmiedel@tq-group.com>
|
||||
Date: Mon, 9 Oct 2023 09:50:48 +0200
|
||||
Subject: tqma8mpxl: enable distro boot
|
||||
|
||||
Signed-off-by: Martin Schmiedel <Martin.Schmiedel@tq-group.com>
|
||||
---
|
||||
configs/tqma8mpxl_multi_mba8mp_ras314_defconfig | 3 +-
|
||||
configs/tqma8mpxl_multi_mba8mpxl_defconfig | 2 +-
|
||||
include/configs/tqma8mpxl-mba8mp-ras314.h | 8 +-
|
||||
include/configs/tqma8mpxl-mba8mpxl.h | 8 +-
|
||||
include/configs/tqma8mpxl.h | 227 +---------
|
||||
5 files changed, 40 insertions(+), 208 deletions(-)
|
||||
|
||||
diff --git a/configs/tqma8mpxl_multi_mba8mp_ras314_defconfig b/configs/tqma8mpxl_multi_mba8mp_ras314_defconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/configs/tqma8mpxl_multi_mba8mp_ras314_defconfig
|
||||
+++ b/configs/tqma8mpxl_multi_mba8mp_ras314_defconfig
|
||||
@@ -15,7 +15,6 @@ CONFIG_FIT_SIGNATURE=y
|
||||
CONFIG_FIT_CIPHER=y
|
||||
CONFIG_LEGACY_IMAGE_FORMAT=y
|
||||
CONFIG_BOOTDELAY=3
|
||||
-CONFIG_BOOTCOMMAND="run mmcboot"
|
||||
CONFIG_VERSION_VARIABLE=y
|
||||
CONFIG_ARCH_MISC_INIT=y
|
||||
CONFIG_CMD_LICENSE=y
|
||||
@@ -53,7 +52,9 @@ CONFIG_SYSRESET=y
|
||||
CONFIG_SYSRESET_PSCI=y
|
||||
CONFIG_NXP_TMU=y
|
||||
CONFIG_DM_VIDEO=y
|
||||
+CONFIG_FAT_WRITE=y
|
||||
CONFIG_DYNAMIC_CRC_TABLE=y
|
||||
CONFIG_OF_LIBFDT_OVERLAY=y
|
||||
CONFIG_FDT_FIXUP_PARTITIONS=y
|
||||
CONFIG_LMB_MAX_REGIONS=16
|
||||
+CONFIG_CMD_IMPORTENV=y
|
||||
diff --git a/configs/tqma8mpxl_multi_mba8mpxl_defconfig b/configs/tqma8mpxl_multi_mba8mpxl_defconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/configs/tqma8mpxl_multi_mba8mpxl_defconfig
|
||||
+++ b/configs/tqma8mpxl_multi_mba8mpxl_defconfig
|
||||
@@ -14,7 +14,6 @@ CONFIG_FIT_SIGNATURE=y
|
||||
CONFIG_FIT_CIPHER=y
|
||||
CONFIG_LEGACY_IMAGE_FORMAT=y
|
||||
CONFIG_BOOTDELAY=3
|
||||
-CONFIG_BOOTCOMMAND="run mmcboot"
|
||||
CONFIG_VERSION_VARIABLE=y
|
||||
CONFIG_ARCH_MISC_INIT=y
|
||||
CONFIG_CMD_LICENSE=y
|
||||
@@ -57,3 +56,4 @@ CONFIG_DYNAMIC_CRC_TABLE=y
|
||||
CONFIG_OF_LIBFDT_OVERLAY=y
|
||||
CONFIG_FDT_FIXUP_PARTITIONS=y
|
||||
CONFIG_LMB_MAX_REGIONS=16
|
||||
+CONFIG_CMD_IMPORTENV=y
|
||||
diff --git a/include/configs/tqma8mpxl-mba8mp-ras314.h b/include/configs/tqma8mpxl-mba8mp-ras314.h
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/include/configs/tqma8mpxl-mba8mp-ras314.h
|
||||
+++ b/include/configs/tqma8mpxl-mba8mp-ras314.h
|
||||
@@ -27,6 +27,12 @@
|
||||
|
||||
#define BB_ENV_SETTINGS \
|
||||
"console=" CONSOLE_DEV "\0" \
|
||||
- "fdt_file=" CONFIG_DEFAULT_FDT_FILE "\0"
|
||||
+ "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0"
|
||||
+
|
||||
+#define BOOT_TARGET_DEVICES(func) \
|
||||
+ func(MMC, mmc, 0) \
|
||||
+ func(MMC, mmc, 1) \
|
||||
+ func(PXE, pxe, na) \
|
||||
+ func(DHCP, dhcp, na)
|
||||
|
||||
#endif /* __TQMA8MPXL_MBA8MPRAS314_H */
|
||||
diff --git a/include/configs/tqma8mpxl-mba8mpxl.h b/include/configs/tqma8mpxl-mba8mpxl.h
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/include/configs/tqma8mpxl-mba8mpxl.h
|
||||
+++ b/include/configs/tqma8mpxl-mba8mpxl.h
|
||||
@@ -27,6 +27,12 @@
|
||||
|
||||
#define BB_ENV_SETTINGS \
|
||||
"console=" CONSOLE_DEV "\0" \
|
||||
- "fdt_file=" CONFIG_DEFAULT_FDT_FILE "\0"
|
||||
+ "fdtfile=" CONFIG_DEFAULT_FDT_FILE "\0"
|
||||
+
|
||||
+#define BOOT_TARGET_DEVICES(func) \
|
||||
+ func(MMC, mmc, 0) \
|
||||
+ func(MMC, mmc, 1) \
|
||||
+ func(PXE, pxe, na) \
|
||||
+ func(DHCP, dhcp, na)
|
||||
|
||||
#endif /* __TQMA8MPXL_MBA8MPXL_H */
|
||||
diff --git a/include/configs/tqma8mpxl.h b/include/configs/tqma8mpxl.h
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/include/configs/tqma8mpxl.h
|
||||
+++ b/include/configs/tqma8mpxl.h
|
||||
@@ -10,10 +10,12 @@
|
||||
|
||||
#include <linux/sizes.h>
|
||||
#include <asm/arch/imx-regs.h>
|
||||
-#include "imx_env.h"
|
||||
+#include <config_distro_bootcmd.h>
|
||||
+#include <environment/tq/boot.h>
|
||||
|
||||
#define CONFIG_SPL_MAX_SIZE (152 * 1024)
|
||||
#define CONFIG_SYS_MONITOR_LEN (512 * 1024)
|
||||
+
|
||||
#define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR
|
||||
/*
|
||||
* 0x300 sectors -> 384 k -> 0x60000: offset of FIT image created with
|
||||
@@ -23,13 +25,12 @@
|
||||
#define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1
|
||||
/*
|
||||
* we use spl_nor to read FIT image created with imx-mkimage from QSPI
|
||||
- * using memory mapped read. Offset is the same as for SD / e-MMC
|
||||
+ * using memory mapped read. Needs SPL_NOR_SUPPORT to be set!
|
||||
*/
|
||||
#define CONFIG_SYS_UBOOT_BASE (QSPI0_AMBA_BASE + \
|
||||
CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR * 512)
|
||||
|
||||
#ifdef CONFIG_SPL_BUILD
|
||||
-
|
||||
#define CONFIG_SPL_STACK 0x187FF0 /* OCRAM_S */
|
||||
#define CONFIG_SPL_BSS_START_ADDR 0x0095e000 /* OCRAM, after code */
|
||||
#define CONFIG_SPL_BSS_MAX_SIZE 0x2000 /* 8 KB */
|
||||
@@ -53,198 +54,25 @@
|
||||
|
||||
#define CONFIG_REMAKE_ELF
|
||||
|
||||
-/* TODO: JAILHOUSE support */
|
||||
-
|
||||
-#define CONFIG_MFG_ENV_SETTINGS \
|
||||
- CONFIG_MFG_ENV_SETTINGS_DEFAULT \
|
||||
- "initrd_addr=0x43800000\0" \
|
||||
- "initrd_high=0xffffffffffffffff\0" \
|
||||
- "emmc_dev=0\0"\
|
||||
- "sd_dev=1\0" \
|
||||
-
|
||||
-#if defined(CONFIG_IMX_BOOTAUX)
|
||||
-
|
||||
-/*
|
||||
- * cm_loadaddr is set to TCML per default.
|
||||
- * cm_maxsize is used to prevent loading too large images. This limit is
|
||||
- * 128 kiByte for TCML.
|
||||
- * Size and base address can be changed to RAM address or SPI NOR if larger
|
||||
- * images are needed. In this case further adaption is needed.
|
||||
- */
|
||||
-#define CM_ENV_SETTINGS \
|
||||
- "cm_image=cm.bin\0" \
|
||||
- "cm_loadaddr=0x7e0000\0" \
|
||||
- "cm_maxsize=0x20000\0" \
|
||||
- "boot_cm_mmc=mmc dev ${mmcdev}; mmc rescan; " \
|
||||
- "if load mmc ${mmcdev}:${mmcpart} ${loadaddr} " \
|
||||
- "${mmcpath}/${cm_image}; then " \
|
||||
- "if itest ${filesize} > 0; then " \
|
||||
- "if itest ${filesize} <= ${cm_maxsize}; then " \
|
||||
- "cp.b ${loadaddr} ${cm_loadaddr} " \
|
||||
- "${filesize};" \
|
||||
- "dcache flush; " \
|
||||
- "bootaux ${cm_loadaddr}; " \
|
||||
- "else " \
|
||||
- "echo ${filesize} > ${cm_maxsize}; " \
|
||||
- "false; " \
|
||||
- "fi; " \
|
||||
- "else " \
|
||||
- "echo invalid data size; " \
|
||||
- "false; " \
|
||||
- "fi; " \
|
||||
- "else " \
|
||||
- "echo file not loaded; " \
|
||||
- "false; " \
|
||||
- "fi; setenv filesize;\0" \
|
||||
- "update_cm_mmc=run set_getcmd; " \
|
||||
- "if ${get_cmd} ${cm_image}; then " \
|
||||
- "if itest ${filesize} > 0; then " \
|
||||
- "mmc dev ${mmcdev}; mmc rescan; " \
|
||||
- "echo Write CM image to mmc ...; " \
|
||||
- "save mmc ${mmcdev}:${mmcpart} ${loadaddr} " \
|
||||
- "${mmcpath}${cm_image} ${filesize}; " \
|
||||
- "fi; " \
|
||||
- "fi; " \
|
||||
- "setenv filesize; setenv get_cmd\0"
|
||||
-
|
||||
-#else
|
||||
-
|
||||
-#define CM_ENV_SETTINGS
|
||||
-
|
||||
-#endif
|
||||
-
|
||||
/* Initial environment variables */
|
||||
#define MODULE_ENV_SETTINGS \
|
||||
- CONFIG_MFG_ENV_SETTINGS \
|
||||
- "script=boot.scr\0" \
|
||||
- "image=Image\0" \
|
||||
- "splashimage=0x50000000\0" \
|
||||
- "fdt_addr=0x43000000\0" \
|
||||
- "boot_fit=no\0" \
|
||||
- "initrd_addr=0x43800000\0" \
|
||||
- "initrd_high=0xffffffffffffffff\0" \
|
||||
- "mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" \
|
||||
- "mmcpart=" __stringify(CONFIG_SYS_MMC_IMG_LOAD_PART) "\0" \
|
||||
- "mmcpath=/\0" \
|
||||
+ "uboot_mmc_start=0x40\0" \
|
||||
+ "uboot_mmc_size=0xfc0\0" \
|
||||
+ "uboot_fspi_start=0x0\0" \
|
||||
+ "uboot_fspi_size=0x400000\0" \
|
||||
+ "fdt_addr_r=0x44000000\0" \
|
||||
+ "kernel_addr_r=0x42000000\0" \
|
||||
+ "ramdisk_addr_r=0x46400000\0" \
|
||||
+ "scriptaddr=0x46000000\0" \
|
||||
+ "pxefile_addr_r=0x51000000\0" \
|
||||
+ "emmc_dev=0\0" /* for UUU */ \
|
||||
+ "sd_dev=1\0" /* for UUU */ \
|
||||
+ "mmcdev=" __stringify(CONFIG_SYS_MMC_ENV_DEV) "\0" /* for update_*_mmc */ \
|
||||
+ "bootpart=" __stringify(CONFIG_SYS_MMCSD_FS_BOOT_PARTITION) "\0" /* for update_cm_mmc */ \
|
||||
+ "mmcpath=/\0" /* for update_cm_mmc */ \
|
||||
"mmcautodetect=yes\0" \
|
||||
- "loadbootscript=mmc dev ${mmcdev}; mmc rescan;" \
|
||||
- "load mmc ${mmcdev}:${mmcpart} ${loadaddr} " \
|
||||
- "${mmcpath}${script};\0" \
|
||||
- "bootscript=echo Running bootscript from mmc ...; " \
|
||||
- "source\0" \
|
||||
- "loadimage=mmc dev ${mmcdev}; mmc rescan;" \
|
||||
- "load mmc ${mmcdev}:${mmcpart} ${loadaddr} " \
|
||||
- "${mmcpath}${image}\0" \
|
||||
- "loadfdt=mmc dev ${mmcdev}; mmc rescan;" \
|
||||
- "load mmc ${mmcdev}:${mmcpart} ${fdt_addr} " \
|
||||
- "${mmcpath}${fdt_file}\0" \
|
||||
- "boot_os=booti ${loadaddr} - ${fdt_addr};\0" \
|
||||
- "mmcboot=echo Booting from mmc ...; " \
|
||||
- "setenv bootargs; " \
|
||||
- "run mmcargs; " \
|
||||
- "if test ${boot_fit} = yes || test ${boot_fit} = try; then " \
|
||||
- "bootm ${loadaddr}; " \
|
||||
- "else " \
|
||||
- "if run loadfdt; then " \
|
||||
- "if run loadimage; then " \
|
||||
- "run boot_os; " \
|
||||
- "else " \
|
||||
- "echo WARN: Cannot load the kernel; " \
|
||||
- "fi; " \
|
||||
- "else " \
|
||||
- "echo WARN: Cannot load the DT; " \
|
||||
- "fi; " \
|
||||
- "fi;\0" \
|
||||
- "netboot=echo Booting from net ...; " \
|
||||
- "setenv bootargs; " \
|
||||
- "run netargs; " \
|
||||
- "run set_getcmd; " \
|
||||
- "${get_cmd} ${loadaddr} ${image}; " \
|
||||
- "if test ${boot_fit} = yes || test ${boot_fit} = try; then " \
|
||||
- "bootm ${loadaddr}; " \
|
||||
- "else " \
|
||||
- "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
|
||||
- "run boot_os; " \
|
||||
- "else " \
|
||||
- "echo WARN: Cannot load the DT; " \
|
||||
- "fi; " \
|
||||
- "fi;\0" \
|
||||
- "update_kernel_mmc=run set_getcmd; " \
|
||||
- "if ${get_cmd} ${image}; then " \
|
||||
- "if itest ${filesize} > 0; then " \
|
||||
- "echo Write to mmc ${mmcdev}:${mmcpart}...; " \
|
||||
- "mmc dev ${mmcdev}; mmc rescan;" \
|
||||
- "save mmc ${mmcdev}:${mmcpart} ${loadaddr} " \
|
||||
- "${mmcpath}${image} ${filesize}; " \
|
||||
- "fi; " \
|
||||
- "fi; " \
|
||||
- "setenv filesize; setenv get_cmd \0" \
|
||||
- "update_fdt_mmc=run set_getcmd; " \
|
||||
- "if ${get_cmd} ${fdt_file}; then " \
|
||||
- "if itest ${filesize} > 0; then " \
|
||||
- "echo Write to mmc ${mmcdev}:${mmcpart}...; " \
|
||||
- "mmc dev ${mmcdev}; mmc rescan;" \
|
||||
- "save mmc ${mmcdev}:${mmcpart} ${loadaddr} " \
|
||||
- "${mmcpath}${fdt_file} ${filesize}; " \
|
||||
- "fi; " \
|
||||
- "fi; " \
|
||||
- "setenv filesize; setenv get_cmd \0" \
|
||||
- "uboot_mmc_start=0x40\0" \
|
||||
- "uboot_mmc_size=0xfc0\0" \
|
||||
- "uboot_fspi_start=0x0\0" \
|
||||
- "uboot_fspi_size=0x400000\0" \
|
||||
- "uboot=bootstream.bin\0" \
|
||||
- "update_uboot_mmc=run set_getcmd; if ${get_cmd} ${uboot}; then " \
|
||||
- "if itest ${filesize} > 0; then " \
|
||||
- "echo Write u-boot image to mmc ${mmcdev} ...; " \
|
||||
- "mmc dev ${mmcdev}; mmc rescan; " \
|
||||
- "setexpr blkc ${filesize} + 0x1ff; " \
|
||||
- "setexpr blkc ${blkc} / 0x200; " \
|
||||
- "if itest ${blkc} <= ${uboot_mmc_size}; then " \
|
||||
- "mmc write ${loadaddr} ${uboot_mmc_start} " \
|
||||
- "${blkc}; " \
|
||||
- "fi; " \
|
||||
- "fi; fi; " \
|
||||
- "setenv filesize; setenv blkc \0" \
|
||||
- "set_getcmd=if test \"${ip_dyn}\" = yes; then " \
|
||||
- "setenv get_cmd dhcp; " \
|
||||
- "else " \
|
||||
- "setenv get_cmd tftp; " \
|
||||
- "fi; \0" \
|
||||
- "rootfsmode=ro\0" \
|
||||
- "addtty=setenv bootargs ${bootargs} console=${console},${baudrate}\0" \
|
||||
- "mmcargs=run addtty addmmc\0" \
|
||||
- "mmcrootpart=2\0" \
|
||||
- "addmmc=setenv bootargs ${bootargs} " \
|
||||
- "root=/dev/mmcblk${mmcblkdev}p${mmcrootpart} ${rootfsmode} " \
|
||||
- "rootwait\0" \
|
||||
- "netargs=run addnfs addip addtty\0" \
|
||||
- "addnfs=setenv bootargs ${bootargs} " \
|
||||
- "root=/dev/nfs rw " \
|
||||
- "nfsroot=${serverip}:${rootpath},v3,tcp;\0" \
|
||||
- "netdev=eth0\0" \
|
||||
- "rootpath=/srv/nfs\0" \
|
||||
- "ipmode=static\0" \
|
||||
- "addip_static=setenv bootargs ${bootargs} " \
|
||||
- "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:" \
|
||||
- "${hostname}:${netdev}:off\0" \
|
||||
- "addip_dynamic=setenv bootargs ${bootargs} ip=dhcp\0" \
|
||||
- "addip=if test \"${ipmode}\" != static; then " \
|
||||
- "run addip_dynamic; else run addip_static; fi\0"
|
||||
-
|
||||
-#if !defined(CONFIG_BOOTCOMMAND)
|
||||
-#define CONFIG_BOOTCOMMAND \
|
||||
- "mmc dev ${mmcdev}; if mmc rescan; then " \
|
||||
- "if run loadbootscript; then " \
|
||||
- "run bootscript; " \
|
||||
- "else " \
|
||||
- "if run loadimage; then " \
|
||||
- "run mmcboot; " \
|
||||
- "else run netboot; " \
|
||||
- "fi; " \
|
||||
- "fi; " \
|
||||
- "else run boot_os; fi"
|
||||
-#endif
|
||||
+ "boot_targets_auto=yes\0" \
|
||||
+ ""
|
||||
|
||||
/* Link Definitions */
|
||||
#define CONFIG_LOADADDR 0x40480000
|
||||
@@ -345,21 +173,12 @@
|
||||
#error
|
||||
#endif
|
||||
|
||||
-#include "tqma8-shared-env.h"
|
||||
+#define CONFIG_IMX6_PWM_PER_CLK 24000000
|
||||
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
- TQMA8_SHARED_ENV_SETTINGS \
|
||||
- CM_ENV_SETTINGS \
|
||||
+ TQ_BOOT_ENV_SETTINGS \
|
||||
+ BOOTENV \
|
||||
MODULE_ENV_SETTINGS \
|
||||
BB_ENV_SETTINGS
|
||||
|
||||
-#ifndef CONFIG_SPL_BUILD
|
||||
-#define BOOT_TARGET_DEVICES(func) \
|
||||
- func(MMC, mmc, 0) \
|
||||
- func(USB, usb, 0)
|
||||
-#include <config_distro_bootcmd.h>
|
||||
-#endif
|
||||
-
|
||||
-#define CONFIG_IMX6_PWM_PER_CLK 24000000
|
||||
-
|
||||
#endif /* __TQMA8MPXL_H */
|
||||
--
|
||||
Armbian
|
||||
|
||||
@@ -1,189 +0,0 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Martin Schmiedel <Martin.Schmiedel@tq-group.com>
|
||||
Date: Mon, 22 Jul 2024 07:48:26 +0200
|
||||
Subject: imx: mkimage_fit_atf_imx8mp.sh: add script for imx8mp
|
||||
|
||||
If Varibles can not be exported this script set default value for ATF_LOAD_ADDR
|
||||
|
||||
Signed-off-by: Martin Schmiedel <Martin.Schmiedel@tq-group.com>
|
||||
---
|
||||
Makefile | 2 +
|
||||
arch/arm/mach-imx/mkimage_fit_atf_imx8mp.sh | 139 ++++++++++
|
||||
board/tqc/tqma8mpxl/Kconfig | 3 +
|
||||
3 files changed, 144 insertions(+)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -1281,6 +1281,8 @@ ifneq ($(CONFIG_SPL_FIT_GENERATOR),"")
|
||||
U_BOOT_ITS := u-boot.its
|
||||
ifeq ($(CONFIG_SPL_FIT_GENERATOR),"arch/arm/mach-imx/mkimage_fit_atf.sh")
|
||||
U_BOOT_ITS_DEPS += u-boot-nodtb.bin
|
||||
+else ifeq ($(CONFIG_SPL_FIT_GENERATOR),"arch/arm/mach-imx/mkimage_fit_atf_imx8mp.sh")
|
||||
+U_BOOT_ITS_DEPS += u-boot-nodtb.bin
|
||||
endif
|
||||
ifeq ($(CONFIG_SPL_FIT_GENERATOR),"arch/arm/mach-rockchip/make_fit_atf.py")
|
||||
U_BOOT_ITS_DEPS += u-boot
|
||||
diff --git a/arch/arm/mach-imx/mkimage_fit_atf_imx8mp.sh b/arch/arm/mach-imx/mkimage_fit_atf_imx8mp.sh
|
||||
new file mode 100755
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/mach-imx/mkimage_fit_atf_imx8mp.sh
|
||||
@@ -0,0 +1,139 @@
|
||||
+#!/bin/sh
|
||||
+# SPDX-License-Identifier: GPL-2.0+
|
||||
+#
|
||||
+# script to generate FIT image source for i.MX8MQ boards with
|
||||
+# ARM Trusted Firmware and multiple device trees (given on the command line)
|
||||
+#
|
||||
+# usage: $0 <dt_name> [<dt_name> [<dt_name] ...]
|
||||
+[ -z "$BL31" ] && BL31="bl31.bin"
|
||||
+[ -z "$TEE_LOAD_ADDR" ] && TEE_LOAD_ADDR="0xfe000000"
|
||||
+[ -z "$ATF_LOAD_ADDR" ] && ATF_LOAD_ADDR="0x00970000"
|
||||
+[ -z "$BL33_LOAD_ADDR" ] && BL33_LOAD_ADDR="0x40200000"
|
||||
+
|
||||
+if [ ! -f $BL31 ]; then
|
||||
+ echo "ERROR: BL31 file $BL31 NOT found" >&2
|
||||
+ exit 0
|
||||
+else
|
||||
+ echo "$BL31 size: " >&2
|
||||
+ ls -lct $BL31 | awk '{print $5}' >&2
|
||||
+fi
|
||||
+
|
||||
+BL32="tee.bin"
|
||||
+
|
||||
+if [ ! -f $BL32 ]; then
|
||||
+ BL32=/dev/null
|
||||
+else
|
||||
+ echo "Building with TEE support, make sure your $BL31 is compiled with spd. If you do not want tee, please delete $BL31" >&2
|
||||
+ echo "$BL32 size: " >&2
|
||||
+ ls -lct $BL32 | awk '{print $5}' >&2
|
||||
+fi
|
||||
+
|
||||
+BL33="u-boot-nodtb.bin"
|
||||
+
|
||||
+if [ ! -f $BL33 ]; then
|
||||
+ echo "ERROR: $BL33 file NOT found" >&2
|
||||
+ exit 0
|
||||
+else
|
||||
+ echo "u-boot-nodtb.bin size: " >&2
|
||||
+ ls -lct u-boot-nodtb.bin | awk '{print $5}' >&2
|
||||
+fi
|
||||
+
|
||||
+for dtname in $*
|
||||
+do
|
||||
+ echo "$dtname size: " >&2
|
||||
+ ls -lct $dtname | awk '{print $5}' >&2
|
||||
+done
|
||||
+
|
||||
+
|
||||
+cat << __HEADER_EOF
|
||||
+/dts-v1/;
|
||||
+
|
||||
+/ {
|
||||
+ description = "Configuration to load ATF before U-Boot";
|
||||
+
|
||||
+ images {
|
||||
+ uboot@1 {
|
||||
+ description = "U-Boot (64-bit)";
|
||||
+ os = "u-boot";
|
||||
+ data = /incbin/("$BL33");
|
||||
+ type = "standalone";
|
||||
+ arch = "arm64";
|
||||
+ compression = "none";
|
||||
+ load = <$BL33_LOAD_ADDR>;
|
||||
+ };
|
||||
+ atf@1 {
|
||||
+ description = "ARM Trusted Firmware";
|
||||
+ os = "arm-trusted-firmware";
|
||||
+ data = /incbin/("$BL31");
|
||||
+ type = "firmware";
|
||||
+ arch = "arm64";
|
||||
+ compression = "none";
|
||||
+ load = <$ATF_LOAD_ADDR>;
|
||||
+ entry = <$ATF_LOAD_ADDR>;
|
||||
+ };
|
||||
+__HEADER_EOF
|
||||
+
|
||||
+if [ -f $BL32 ]; then
|
||||
+cat << __HEADER_EOF
|
||||
+ tee@1 {
|
||||
+ description = "TEE firmware";
|
||||
+ data = /incbin/("$BL32");
|
||||
+ type = "firmware";
|
||||
+ arch = "arm64";
|
||||
+ compression = "none";
|
||||
+ load = <$TEE_LOAD_ADDR>;
|
||||
+ entry = <$TEE_LOAD_ADDR>;
|
||||
+ };
|
||||
+__HEADER_EOF
|
||||
+fi
|
||||
+
|
||||
+cnt=1
|
||||
+for dtname in $*
|
||||
+do
|
||||
+ cat << __FDT_IMAGE_EOF
|
||||
+ fdt@$cnt {
|
||||
+ description = "$(basename $dtname .dtb)";
|
||||
+ data = /incbin/("$dtname");
|
||||
+ type = "flat_dt";
|
||||
+ compression = "none";
|
||||
+ };
|
||||
+__FDT_IMAGE_EOF
|
||||
+cnt=$((cnt+1))
|
||||
+done
|
||||
+
|
||||
+cat << __CONF_HEADER_EOF
|
||||
+ };
|
||||
+ configurations {
|
||||
+ default = "config@1";
|
||||
+
|
||||
+__CONF_HEADER_EOF
|
||||
+
|
||||
+cnt=1
|
||||
+for dtname in $*
|
||||
+do
|
||||
+if [ -f $BL32 ]; then
|
||||
+cat << __CONF_SECTION_EOF
|
||||
+ config@$cnt {
|
||||
+ description = "$(basename $dtname .dtb)";
|
||||
+ firmware = "uboot@1";
|
||||
+ loadables = "atf@1", "tee@1";
|
||||
+ fdt = "fdt@$cnt";
|
||||
+ };
|
||||
+__CONF_SECTION_EOF
|
||||
+else
|
||||
+cat << __CONF_SECTION1_EOF
|
||||
+ config@$cnt {
|
||||
+ description = "$(basename $dtname .dtb)";
|
||||
+ firmware = "uboot@1";
|
||||
+ loadables = "atf@1";
|
||||
+ fdt = "fdt@$cnt";
|
||||
+ };
|
||||
+__CONF_SECTION1_EOF
|
||||
+fi
|
||||
+cnt=$((cnt+1))
|
||||
+done
|
||||
+
|
||||
+cat << __ITS_EOF
|
||||
+ };
|
||||
+};
|
||||
+__ITS_EOF
|
||||
diff --git a/board/tqc/tqma8mpxl/Kconfig b/board/tqc/tqma8mpxl/Kconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/board/tqc/tqma8mpxl/Kconfig
|
||||
+++ b/board/tqc/tqma8mpxl/Kconfig
|
||||
@@ -15,6 +15,9 @@ config SPL_TEXT_BASE
|
||||
config CSF_SIZE
|
||||
default 0x2000
|
||||
|
||||
+config SPL_FIT_GENERATOR
|
||||
+ default "arch/arm/mach-imx/mkimage_fit_atf_imx8mp.sh"
|
||||
+
|
||||
config TQMA8MPXL_DEFAULTS
|
||||
bool
|
||||
default y
|
||||
--
|
||||
Armbian
|
||||
|
||||
Reference in New Issue
Block a user