armbian-build/patch/u-boot/legacy/u-boot-spacemit-k1/002-SpacemiT-K1X-Fixups.patch
Patrick Yavitz 0d8faf47da SpacemiT: Update OpenSBI/U-Boot to k1-bl-v2.2.9-release
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
2026-02-24 08:17:39 -05:00

122 lines
3.9 KiB
Diff

From dc7a3795f78e71c2ebe93939275c6c880e0a3aee Mon Sep 17 00:00:00 2001
From: Patrick Yavitz <pyavitz@gmail.com>
Date: Mon, 16 Feb 2026 09:18:25 -0500
Subject: [PATCH] SpacemiT K1X Fixups
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
---
board/spacemit/k1-x/k1x.c | 28 ++++++++++------------------
include/configs/k1-x.h | 22 ++++++++++------------
2 files changed, 20 insertions(+), 30 deletions(-)
diff --git a/board/spacemit/k1-x/k1x.c b/board/spacemit/k1-x/k1x.c
index 309bbb09..83c7d400 100644
--- a/board/spacemit/k1-x/k1x.c
+++ b/board/spacemit/k1-x/k1x.c
@@ -538,8 +538,8 @@ void _load_env_from_blk(struct blk_desc *dev_desc, const char *dev_name, int dev
#endif
}
- env_set("bootfs_part", simple_itoa(part));
- env_set("bootfs_devname", dev_name);
+ env_set("distro_bootpart", simple_itoa(part));
+ env_set("devnum", dev_name);
/*load env.txt and import to uboot*/
memset((void *)CONFIG_SPL_LOAD_FIT_ADDRESS, 0, CONFIG_ENV_SIZE);
@@ -756,34 +756,26 @@ void setenv_boot_mode(void)
u32 boot_mode = get_boot_mode();
switch (boot_mode) {
case BOOT_MODE_NAND:
- env_set("boot_device", "nand");
+ env_set("devtype", "nand");
break;
case BOOT_MODE_NOR:
- char *blk_name;
- int blk_index;
-
- if (get_available_boot_blk_dev(&blk_name, &blk_index)){
- printf("can not get available blk dev\n");
- return;
- }
-
- env_set("boot_device", "nor");
- env_set("boot_devnum", simple_itoa(blk_index));
+ env_set("devtype", "mmc");
+ env_set("devnum", simple_itoa(MMC_DEV_EMMC));
break;
case BOOT_MODE_EMMC:
- env_set("boot_device", "mmc");
- env_set("boot_devnum", simple_itoa(MMC_DEV_EMMC));
+ env_set("devtype", "mmc");
+ env_set("devnum", simple_itoa(MMC_DEV_EMMC));
break;
case BOOT_MODE_SD:
- env_set("boot_device", "mmc");
- env_set("boot_devnum", simple_itoa(MMC_DEV_SD));
+ env_set("devtype", "mmc");
+ env_set("devnum", simple_itoa(MMC_DEV_SD));
break;
case BOOT_MODE_USB:
// for fastboot image download and run test
env_set("bootcmd", CONFIG_BOOTCOMMAND);
break;
default:
- env_set("boot_device", "");
+ env_set("devtype", "");
break;
}
}
diff --git a/include/configs/k1-x.h b/include/configs/k1-x.h
index 1af9debc..fcab226e 100644
--- a/include/configs/k1-x.h
+++ b/include/configs/k1-x.h
@@ -108,11 +108,6 @@
#define TLV_CODE_EEPROM_I2C_INDEX 0x81
#define TLV_CODE_EEPROM_PIN_GROUP 0x82
-// #define RAMDISK_LOAD_ADDR (CONFIG_FASTBOOT_BUF_ADDR + CONFIG_FASTBOOT_BUF_SIZE)
-// #define DTB_LOAD_ADDR (CONFIG_FASTBOOT_BUF_ADDR + CONFIG_FASTBOOT_BUF_SIZE * 2)
-#define RAMDISK_LOAD_ADDR 0x21000000
-#define DTB_LOAD_ADDR 0x31000000
-
// for those has NOT been through test procedure(ATE)
#define SVT_DRO_DEFAULT_VALUE (120)
@@ -217,6 +212,11 @@ enum private_part_offset {
#define BOOT_TARGET_DEVICES(func) \
func(QEMU, qemu, na)
+#define KERNEL_ADDR_R __stringify(0x10000000)
+#define RAMDISK_ADDR_R __stringify(0x21000000)
+#define FDT_ADDR_R __stringify(0x31000000)
+#define FDTOVERLAY_ADDR_R __stringify(0x01000000)
+
#include <config_distro_bootcmd.h>
#define BOOTENV_DEV_QEMU(devtypeu, devtypel, instance) \
@@ -244,15 +244,13 @@ enum private_part_offset {
"stdout_flash=serial,vidconsole\0" \
"kernel_comp_addr_r=" __stringify(CONFIG_SYS_LOAD_ADDR) "\0" \
"kernel_comp_size=" __stringify(CONFIG_FASTBOOT_BUF_SIZE) "\0" \
- "kernel_addr_r=" __stringify(CONFIG_FASTBOOT_BUF_ADDR) "\0" \
- "ramdisk_addr=" __stringify(RAMDISK_LOAD_ADDR) "\0" \
- "dtb_addr=" __stringify(DTB_LOAD_ADDR) "\0" \
"scriptaddr=0x2c100000\0" \
"pxefile_addr_r=0x0c200000\0" \
- "splashimage=" __stringify(CONFIG_FASTBOOT_BUF_ADDR) "\0" \
- "splashpos=m,m\0" \
- "splashfile=bianbu.bmp\0" \
- "led0_gpio=" __stringify(STATUS_LED_GPIO0) "\0" \
+ "fdt_addr_r=" FDT_ADDR_R "\0" \
+ "kernel_addr_r=" KERNEL_ADDR_R "\0" \
+ "ramdisk_addr_r=" RAMDISK_ADDR_R "\0" \
+ "fdtoverlay_addr_r=" FDTOVERLAY_ADDR_R "\0" \
+ "fdtfile=spacemit/" CONFIG_DEFAULT_DEVICE_TREE ".dtb\0" \
BOOTENV_DEVICE_CONFIG
--
2.51.0