mirror of
https://github.com/armbian/build
synced 2025-09-24 19:47:06 +07:00
- while at it rewrite-uboot-patches Signed-off-by: Martin Schmiedel <Martin.Schmiedel@tq-group.com>
366 lines
14 KiB
Diff
366 lines
14 KiB
Diff
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
|
|
|