[PATCH 17/18] riscv: qemu: Remove out-of-date "riscv, kernel-start" handling

Bin Meng bmeng at tinylab.org
Sun Jul 23 06:40:40 CEST 2023


Commit 66ffe57 ("riscv: qemu: detect and boot the kernel passed by QEMU")
added some logic to handle "riscv,kernel-start" in DT and stored the
address to an environment variable kernel_start.

However this "riscv,kernel-start" has never been an upstream DT binding.
The upstream QEMU never generates such a DT either. Presumably U-Boot
development was based on a downstream QEMU fork.

Now we drop all codes in commit 66ffe57, except that BOARD_LATE_INIT
is kept for later use.

Signed-off-by: Bin Meng <bmeng at tinylab.org>
---

 board/emulation/qemu-riscv/qemu-riscv.c | 24 ------------------------
 include/configs/qemu-riscv.h            | 10 ----------
 2 files changed, 34 deletions(-)

diff --git a/board/emulation/qemu-riscv/qemu-riscv.c b/board/emulation/qemu-riscv/qemu-riscv.c
index ae3b7a3295..f39f3be366 100644
--- a/board/emulation/qemu-riscv/qemu-riscv.c
+++ b/board/emulation/qemu-riscv/qemu-riscv.c
@@ -41,30 +41,6 @@ int board_init(void)
 
 int board_late_init(void)
 {
-	ulong kernel_start;
-	ofnode chosen_node;
-	int ret;
-
-	chosen_node = ofnode_path("/chosen");
-	if (!ofnode_valid(chosen_node)) {
-		debug("No chosen node found, can't get kernel start address\n");
-		return 0;
-	}
-
-#ifdef CONFIG_ARCH_RV64I
-	ret = ofnode_read_u64(chosen_node, "riscv,kernel-start",
-			      (u64 *)&kernel_start);
-#else
-	ret = ofnode_read_u32(chosen_node, "riscv,kernel-start",
-			      (u32 *)&kernel_start);
-#endif
-	if (ret) {
-		debug("Can't find kernel start address in device tree\n");
-		return 0;
-	}
-
-	env_set_hex("kernel_start", kernel_start);
-
 	return 0;
 }
 
diff --git a/include/configs/qemu-riscv.h b/include/configs/qemu-riscv.h
index 7ec3d12ce1..d5146e70f7 100644
--- a/include/configs/qemu-riscv.h
+++ b/include/configs/qemu-riscv.h
@@ -22,22 +22,12 @@
 					"stderr=serial,vidconsole\0"
 
 #define BOOT_TARGET_DEVICES(func) \
-	func(QEMU, qemu, na) \
 	func(VIRTIO, virtio, 0) \
 	func(SCSI, scsi, 0) \
 	func(DHCP, dhcp, na)
 
 #include <config_distro_bootcmd.h>
 
-#define BOOTENV_DEV_QEMU(devtypeu, devtypel, instance) \
-	"bootcmd_qemu=" \
-		"if env exists kernel_start; then " \
-			"bootm ${kernel_start} - ${fdtcontroladdr};" \
-		"fi;\0"
-
-#define BOOTENV_DEV_NAME_QEMU(devtypeu, devtypel, instance) \
-	"qemu "
-
 #define CFG_EXTRA_ENV_SETTINGS \
 	CFG_STD_DEVICES_SETTINGS \
 	"fdt_high=0xffffffffffffffff\0" \
-- 
2.34.1



More information about the U-Boot mailing list