From 7c8e1effc21ddc5a269f859c7696b1086bdf3f1a Mon Sep 17 00:00:00 2001 From: Wu Zhangjin Date: Sat, 24 Sep 2022 16:26:49 +0800 Subject: [PATCH 01/15] tools: build: fix up uncache issue Signed-off-by: Wu Zhangjin --- tools/build/uncache | Bin 12163 -> 11526 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/tools/build/uncache b/tools/build/uncache index 3e5a8220900c2baa3fa79620ab714efab56070e2..38bc67ad149f8d85c76f61c6647bec7f81d0f069 100755 GIT binary patch delta 10813 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 ZFO+}gnimQg{r~{rzW_44{)~Js005N%X%_$h -- Gitee From 5865338dde1f9403195519a2a8baf61db9f7c675 Mon Sep 17 00:00:00 2001 From: Falcon Date: Wed, 28 Sep 2022 14:45:38 +0800 Subject: [PATCH 02/15] qemu: switch repo from gitee to gitlab The mirror of qemu is out-of-date in gitee and the one from gitlab is not slow. Signed-off-by: Falcon --- .gitmodules | 2 +- Makefile | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitmodules b/.gitmodules index 18bff4e..f5221a3 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,6 +1,6 @@ [submodule "qemu"] path = src/qemu - url = https://gitee.com/mirrors/qemu.git + url = https://gitlab.com/qemu-project/qemu.git ignore = all [submodule "buildroot"] path = src/buildroot diff --git a/Makefile b/Makefile index 1c2bd38..ad86bf1 100644 --- a/Makefile +++ b/Makefile @@ -206,7 +206,8 @@ PREBUILT_BIOS := $(PREBUILT_DIR)/bios # Core source: remote and local #QEMU_GIT ?= https://github.com/qemu/qemu.git -QEMU_GIT ?= https://gitee.com/mirrors/qemu.git +#QEMU_GIT ?= https://gitee.com/mirrors/qemu.git +QEMU_GIT ?= https://gitlab.com/qemu-project/qemu.git _QEMU_GIT := $(QEMU_GIT) _QEMU_SRC ?= $(if $(QEMU_FORK),$(call _lc,$(QEMU_FORK)-qemu),qemu) QEMU_SRC ?= $(_QEMU_SRC) -- Gitee From 05e4f6349cf287d27626c10d2e6f9b9eb0123051 Mon Sep 17 00:00:00 2001 From: Falcon Date: Wed, 28 Sep 2022 14:46:38 +0800 Subject: [PATCH 03/15] u-boot: switch repo from gitee to gitlab Signed-off-by: Falcon --- .gitmodules | 2 +- Makefile | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitmodules b/.gitmodules index f5221a3..47c8805 100644 --- a/.gitmodules +++ b/.gitmodules @@ -12,7 +12,7 @@ ignore = all [submodule "u-boot"] path = src/u-boot - url = https://gitee.com/mirrors/u-boot.git + url = https://gitlab.com/qemu-project/u-boot.git ignore = all [submodule "boards/aarch64/raspi3/bsp"] ignore = all diff --git a/Makefile b/Makefile index ad86bf1..2f58077 100644 --- a/Makefile +++ b/Makefile @@ -213,7 +213,8 @@ _QEMU_SRC ?= $(if $(QEMU_FORK),$(call _lc,$(QEMU_FORK)-qemu),qemu) QEMU_SRC ?= $(_QEMU_SRC) #UBOOT_GIT ?= https://github.com/u-boot/u-boot.git -UBOOT_GIT ?= https://gitee.com/mirrors/u-boot.git +#UBOOT_GIT ?= https://gitee.com/mirrors/u-boot.git +UBOOT_GIT ?= https://gitlab.com/qemu-project/u-boot.git _UBOOT_GIT := $(UBOOT_GIT) _UBOOT_SRC ?= $(if $(UBOOT_FORK),$(call _lc,$(UBOOT_FORK)-uboot),u-boot) UBOOT_SRC ?= $(_UBOOT_SRC) -- Gitee From 9169d40e85c840d25aae78a44d070cb66a462de5 Mon Sep 17 00:00:00 2001 From: Falcon Date: Sun, 2 Oct 2022 16:35:05 +0800 Subject: [PATCH 04/15] riscv: Fix up kernel build with UBOOT support If U-Boot use the original image type, use Image as the target by default. Signed-off-by: Falcon --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 2f58077..5d3cd8e 100644 --- a/Makefile +++ b/Makefile @@ -2912,7 +2912,7 @@ IMAGE := $(notdir $(ORIIMG)) # aarch64 not add uboot header for kernel image ifeq ($(U),1) - ifeq ($(ARCH),arm64) + ifeq ($(UKIMAGE),$(KIMAGE)) IMAGE := Image else IMAGE := uImage -- Gitee From d569dba3a8d166bcb37341970bccfe26c542740c Mon Sep 17 00:00:00 2001 From: Falcon Date: Sun, 2 Oct 2022 19:02:49 +0800 Subject: [PATCH 05/15] bootdev: allow boot without dtb and initrd Signed-off-by: Falcon --- Makefile | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 5d3cd8e..bed4fca 100644 --- a/Makefile +++ b/Makefile @@ -3642,9 +3642,13 @@ ifeq ($(U),1) endif ifeq ($(RAM_BOOT),1) BOOT_CMD += -device loader,file=$(UKIMAGE),addr=$(KRN_ADDR) - BOOT_CMD += -device loader,file=$(DTB),addr=$(DTB_ADDR) + ifneq ($(DTB_ADDR),-) + BOOT_CMD += -device loader,file=$(DTB),addr=$(DTB_ADDR) + endif ifneq ($(findstring /dev/ram,$(ROOTDEV)),) - BOOT_CMD += -device loader,file=$(UROOTFS),addr=$(RDK_ADDR) + ifneq ($(RDK_ADDR),-) + BOOT_CMD += -device loader,file=$(UROOTFS),addr=$(RDK_ADDR) + endif endif endif ifeq ($(UBOOT_BIOS),1) -- Gitee From 56bc1d0496047370080a121becb920c70d4a0a01 Mon Sep 17 00:00:00 2001 From: Falcon Date: Sun, 2 Oct 2022 19:30:09 +0800 Subject: [PATCH 06/15] uboot: delete circular dependency of the ukimage Signed-off-by: Falcon --- Makefile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index bed4fca..269f89e 100644 --- a/Makefile +++ b/Makefile @@ -3206,7 +3206,8 @@ root-ud-clean: PHONY += root-ud root-ud-rebuild root-ud-clean -# aarch64 not add uboot header for kernel image +# aarch64 and riscv don't add uboot header for kernel image +ifneq ($(UKIMAGE), $(KIMAGE)) $(UKIMAGE): $(KIMAGE) $(Q)if [ "$(PBK)" = "0" ]; then \ if [ "$(notdir $(UKIMAGE))" = "uImage" ]; then \ @@ -3215,6 +3216,9 @@ $(UKIMAGE): $(KIMAGE) cp -v $(KIMAGE) $(UKIMAGE); \ fi; \ fi +else +$(UKIMAGE): +endif ifneq ($(INVALID_ROOTFS),1) U_ROOT_IMAGE := $(UROOTFS) -- Gitee From 3326e6f8dde146e38a76215aaa5abed1ac50c4dd Mon Sep 17 00:00:00 2001 From: Falcon Date: Sun, 2 Oct 2022 21:55:42 +0800 Subject: [PATCH 07/15] qemu: add missing ifup and ifdown script for v7.1.0 Signed-off-by: Falcon --- Makefile | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 269f89e..70a8fcd 100644 --- a/Makefile +++ b/Makefile @@ -2173,11 +2173,16 @@ _qemu_update_submodules: _qemu: _qemu_update_submodules $(call make_qemu,$(QT)) - $(Q)if [ ! -L $(QEMU_BUILD)/etc/qemu-ifup ]; then \ + $(Q)if [ ! -L $(QEMU_BUILD)/../etc/qemu-ifup ]; then \ mkdir -p $(QEMU_BUILD)/../etc/; \ ln -sf /etc/qemu-ifup $(QEMU_BUILD)/../etc/qemu-ifup; \ ln -sf /etc/qemu-ifdown $(QEMU_BUILD)/../etc/qemu-ifdown; \ fi + $(Q)if [ ! -L $(QEMU_BUILD)/qemu-bundle$(PREBUILT_QEMU_DIR)/etc/qemu-ifup ]; then \ + mkdir -p $(QEMU_BUILD)/qemu-bundle$(PREBUILT_QEMU_DIR)/etc/; \ + ln -sf /etc/qemu-ifup $(QEMU_BUILD)/qemu-bundle$(PREBUILT_QEMU_DIR)/etc/qemu-ifup; \ + ln -sf /etc/qemu-ifdown $(QEMU_BUILD)/qemu-bundle$(PREBUILT_QEMU_DIR)/etc/qemu-ifdown; \ + fi endif # Qemu targets -- Gitee From a5ecae8499c13c29b2868651e68acb6055236bd5 Mon Sep 17 00:00:00 2001 From: Falcon Date: Sun, 2 Oct 2022 21:56:57 +0800 Subject: [PATCH 08/15] uboot: use booti instead of bootm when use orig kimage aarch64 and riscv64 use original kernel image instead of the one with uboot header. Signed-off-by: Falcon --- Makefile | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 70a8fcd..1897bad 100644 --- a/Makefile +++ b/Makefile @@ -3235,7 +3235,11 @@ ifneq ($(wildcard $(DTB)),) U_DTB_IMAGE := $(DTB) endif -BOOTX := $(if $(UBOOT_BIOS),booti,bootm) +ifeq ($(UKIMAGE),$(KIMAGE)) + BOOTX := booti +else + BOOTX := bootm +endif export CMDLINE PFLASH_IMG PFLASH_SIZE PFLASH_BS ENV_ADDR ENV_OFFSET ENV_SIZE BOOTX BOOTDEV_LIST SD_IMG U_ROOT_IMAGE RDK_SIZE U_DTB_IMAGE DTB_SIZE U_KERNEL_IMAGE KRN_SIZE TFTPBOOT BIMAGE ROUTE BOOTDEV -- Gitee From 7e6f99ceb9482931543c7c5259ff32db1439fc50 Mon Sep 17 00:00:00 2001 From: Falcon Date: Sun, 2 Oct 2022 22:00:42 +0800 Subject: [PATCH 09/15] uboot: allow load env.img to memory Easier the env.img loading if there is no flash device. Signed-off-by: Falcon --- Makefile | 6 ++---- boards/aarch64/virt/Makefile | 4 +++- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index 1897bad..c5c5a71 100644 --- a/Makefile +++ b/Makefile @@ -3664,10 +3664,8 @@ ifeq ($(U),1) endif endif endif - ifeq ($(UBOOT_BIOS),1) - ifneq ($(ENV_DEV), flash) - BOOT_CMD += -device loader,file=$(ENV_IMG),addr=$(ENV_ADDR) - endif + ifeq ($(ENV_DEV),ram) + BOOT_CMD += -device loader,file=$(ENV_IMG),addr=$(ENV_ADDR) endif ifneq ($(PFLASH_SIZE),0) diff --git a/boards/aarch64/virt/Makefile b/boards/aarch64/virt/Makefile index 1f8e147..22824a5 100644 --- a/boards/aarch64/virt/Makefile +++ b/boards/aarch64/virt/Makefile @@ -72,7 +72,9 @@ PFLASH_BS ?= 512 # Environment Offset, see CONFIG_ENV_OFFSET in $UCONFIG ENV_OFFSET ?= 0 ENV_SIZE ?= 1 -ENVDEV ?= flash +# ram, flash +ENV_DEV_LIST := ram flash +ENV_DEV ?= flash ifeq ($(ENV_DEV), flash) ENV_ADDR ?= 0x4000000 else -- Gitee From 7fe57235d501802f1d801ba99c4036a6342f4472 Mon Sep 17 00:00:00 2001 From: Falcon Date: Sun, 2 Oct 2022 22:01:51 +0800 Subject: [PATCH 10/15] uboot: allow use the default dtb address of uboot fdtcontroladdr is the dtb address of uboot itself. Signed-off-by: Falcon --- Makefile | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index c5c5a71..0fce76a 100644 --- a/Makefile +++ b/Makefile @@ -3162,7 +3162,9 @@ ifeq ($(findstring /dev/ram,$(ROOTDEV)),) RDK_ADDR := - endif ifeq ($(DTS),) - DTB_ADDR := - + ifneq ($(DTB_ADDR),$$fdtcontroladdr) + DTB_ADDR := - + endif endif export U_BOOT_CMD IP ROUTE ROOTDEV BOOTDEV ROOTDIR PFLASH_BASE KRN_ADDR KRN_SIZE RDK_ADDR RDK_SIZE DTB_ADDR DTB_SIZE @@ -3656,7 +3658,9 @@ ifeq ($(U),1) ifeq ($(RAM_BOOT),1) BOOT_CMD += -device loader,file=$(UKIMAGE),addr=$(KRN_ADDR) ifneq ($(DTB_ADDR),-) - BOOT_CMD += -device loader,file=$(DTB),addr=$(DTB_ADDR) + ifneq ($(DTB_ADDR),$$fdtcontroladdr) + BOOT_CMD += -device loader,file=$(DTB),addr=$(DTB_ADDR) + endif endif ifneq ($(findstring /dev/ram,$(ROOTDEV)),) ifneq ($(RDK_ADDR),-) -- Gitee From e966a0a9eb1e5a173e77f6a7cd6eaba607dd6a20 Mon Sep 17 00:00:00 2001 From: Falcon Date: Sun, 2 Oct 2022 22:12:21 +0800 Subject: [PATCH 11/15] README: Fix up ROOTDEV usage Must use the one in the ROOTDEV_LIST, that is /dev/ram0 Signed-off-by: Falcon --- README.md | 2 +- README_zh.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 0df9ce5..0df2009 100644 --- a/README.md +++ b/README.md @@ -978,7 +978,7 @@ Boot without Uboot (only `versatilepb` and `vexpress-a9` boards tested): Boot with different rootfs (depends on board, check `/dev/` after boot): - $ make boot ROOTDEV=ram // support by all boards, basic boot method + $ make boot ROOTDEV=ram0 // support by all boards, basic boot method $ make boot ROOTDEV=nfs // depends on network driver, only raspi3 not work $ make boot ROOTDEV=sda $ make boot ROOTDEV=mmcblk0 diff --git a/README_zh.md b/README_zh.md index 3162601..52dd68f 100644 --- a/README_zh.md +++ b/README_zh.md @@ -1173,7 +1173,7 @@ v0.3 以及之后的版本默认增加了目标依赖支持,所以,如果想 使用不同的 rootfs 启动(依赖于开发板的支持,启动后检查 `/dev/`) - $ make boot ROOTDEV=ram // support by all boards, basic boot method + $ make boot ROOTDEV=ram0 // support by all boards, basic boot method $ make boot ROOTDEV=nfs // depends on network driver, only raspi3 not work $ make boot ROOTDEV=sda $ make boot ROOTDEV=mmcblk0 -- Gitee From 99ecf8b1e584318327637890d01a538e70cb1e46 Mon Sep 17 00:00:00 2001 From: Falcon Date: Sun, 2 Oct 2022 22:15:53 +0800 Subject: [PATCH 12/15] riscv64/virt: add u-boot support Signed-off-by: Falcon --- boards/riscv64/virt/Makefile | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/boards/riscv64/virt/Makefile b/boards/riscv64/virt/Makefile index 0eb19e7..a5c90ed 100644 --- a/boards/riscv64/virt/Makefile +++ b/boards/riscv64/virt/Makefile @@ -4,8 +4,8 @@ ARCH := riscv XARCH := riscv64 # Use the default setting CPU ?= -SMP ?= 4 -MEM ?= 128M +SMP ?= 1 +MEM ?= 256M QEMU ?= v6.0.0 # Enable QEMU_US=1 for qemu-user-static QEMU_US ?= 0 @@ -15,6 +15,23 @@ NETDEV_LIST := virtio NETDEV ?= virtio SERIAL ?= ttyS0 +UBOOT ?= v2022.04 + +KRN_ADDR?= 0x84000000 +DTB_ADDR?= 0x87000000 +#DTB_ADDR?= $$fdtcontroladdr +RDK_ADDR?= 0x87500000 + +# QEMU load env.img to ram and then U-boot import it from ram +ENV_DEV_LIST := ram +ENV_DEV ?= ram +ENV_OFFSET ?= 0 +ENV_ADDR ?= 0x87300000 + +UCONFIG ?= qemu-riscv.h +BOOTDEV_LIST := ram +BOOTDEV ?= ram + # ref: https://wiki.qemu.org/Documentation/9psetup # 9pnet based network filesystem sharing, aarch64/virt board support both virtio-9p-pci/-virtfs and virtio-9p-device # But virtio-9p-device requires less kernel options (no need the PCI related parts in features/linux/9pnet/) @@ -34,10 +51,15 @@ FSTYPE ?= ext2 # fw_jump.elf is from https://github.com/riscv/opensbi BIOS ?= $(BSP_BIOS)/opensbi/generic/fw_jump.elf -KRN_ADDR ?= 0x80200000 ORIIMG ?= arch/$(ARCH)/boot/Image KIMAGE ?= $(BSP_KERNEL)/$(LINUX)/Image +DTS ?= $(BSP_KERNEL)/$(LINUX)/qemu-riscv.dts +UORIIMG ?= arch/$(ARCH)/boot/Image +BIMAGE ?= $(BSP_UBOOT)/$(UBOOT)/u-boot +UKIMAGE ?= $(BSP_KERNEL)/$(LINUX)/Image +DTB ?= $(BSP_KERNEL)/$(LINUX)/qemu-riscv.dtb + ROOTFS ?= $(BSP_ROOT)/$(BUILDROOT)/rootfs.cpio.gz HROOTFS ?= $(BSP_ROOT)/$(BUILDROOT)/rootfs.$(FSTYPE) -- Gitee From cb4ca03e49e4c1ab16a6232027ec90c365fa7911 Mon Sep 17 00:00:00 2001 From: Falcon Date: Sun, 2 Oct 2022 22:40:39 +0800 Subject: [PATCH 13/15] riscv64/virt: restore the default SMP setting Note: this setting must align with the setting in our customized dts, otherwise, it may hang. Signed-off-by: Falcon --- boards/riscv64/virt/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/boards/riscv64/virt/Makefile b/boards/riscv64/virt/Makefile index a5c90ed..739159d 100644 --- a/boards/riscv64/virt/Makefile +++ b/boards/riscv64/virt/Makefile @@ -4,7 +4,7 @@ ARCH := riscv XARCH := riscv64 # Use the default setting CPU ?= -SMP ?= 1 +SMP ?= 4 MEM ?= 256M QEMU ?= v6.0.0 # Enable QEMU_US=1 for qemu-user-static -- Gitee From f3ef58ad8cc71714721b4f76bfbaa87cf35fea4f Mon Sep 17 00:00:00 2001 From: Falcon Date: Sun, 2 Oct 2022 22:41:48 +0800 Subject: [PATCH 14/15] riscv64/virt: use the default dtb in u-boot if no external dtb exists Signed-off-by: Falcon --- boards/riscv64/virt/Makefile | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/boards/riscv64/virt/Makefile b/boards/riscv64/virt/Makefile index 739159d..5fe4e57 100644 --- a/boards/riscv64/virt/Makefile +++ b/boards/riscv64/virt/Makefile @@ -18,8 +18,7 @@ SERIAL ?= ttyS0 UBOOT ?= v2022.04 KRN_ADDR?= 0x84000000 -DTB_ADDR?= 0x87000000 -#DTB_ADDR?= $$fdtcontroladdr +DTB_ADDR?= $$fdtcontroladdr RDK_ADDR?= 0x87500000 # QEMU load env.img to ram and then U-boot import it from ram @@ -60,6 +59,10 @@ BIMAGE ?= $(BSP_UBOOT)/$(UBOOT)/u-boot UKIMAGE ?= $(BSP_KERNEL)/$(LINUX)/Image DTB ?= $(BSP_KERNEL)/$(LINUX)/qemu-riscv.dtb +ifneq ($(wildcard $(DTB)),) + DTB_ADDR := 0x87000000 +endif + ROOTFS ?= $(BSP_ROOT)/$(BUILDROOT)/rootfs.cpio.gz HROOTFS ?= $(BSP_ROOT)/$(BUILDROOT)/rootfs.$(FSTYPE) -- Gitee From c09e262b247cf6ef0a78b01c3ba3b71bac423e37 Mon Sep 17 00:00:00 2001 From: Falcon Date: Sun, 2 Oct 2022 23:35:39 +0800 Subject: [PATCH 15/15] qemu: add dumpdtb support Signed-off-by: Falcon --- Makefile | 10 +++++++++- boards/riscv64/virt/Makefile | 4 ++-- boards/riscv64/virt/README.md | 15 +++++++++++++++ 3 files changed, 26 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 0fce76a..453f734 100644 --- a/Makefile +++ b/Makefile @@ -3642,7 +3642,14 @@ else endif endif -EMULATOR_OPTS ?= -M $(MACH) $(if $(CPU),-cpu $(CPU)) -m $(call _v,MEM,LINUX) $(NET) -smp $(call _v,SMP,LINUX) $(KERNEL_OPT) $(EXIT_ACTION) +ifeq ($(DUMPDTB), 1) + QEMU_DTB ?= $(BSP_KERNEL)/$(LINUX)/qemu-$(XARCH)-$(MACH).dtb + QEMU_DTS := $(QEMU_DTB:.dtb=.dts) + DUMPDTB_OPT ?= ,dumpdtb=$(QEMU_DTB) + DUMPDTB_CMD ?= $(Q)[ -f $(QEMU_DTB) ] && dtc -o $(QEMU_DTS) -O dts -I dtb $(QEMU_DTB) +endif + +EMULATOR_OPTS ?= -M $(MACH)$(DUMPDTB_OPT) $(if $(CPU),-cpu $(CPU)) -m $(call _v,MEM,LINUX) $(NET) -smp $(call _v,SMP,LINUX) $(KERNEL_OPT) $(EXIT_ACTION) EMULATOR_OPTS += $(SHARE_OPT) D ?= 0 @@ -4081,6 +4088,7 @@ endif _boot: $(_BOOT_DEPS) $(RUN_BOOT_CMD) + $(DUMPDTB_CMD) PHONY += boot-test _boot diff --git a/boards/riscv64/virt/Makefile b/boards/riscv64/virt/Makefile index 5fe4e57..ab03b46 100644 --- a/boards/riscv64/virt/Makefile +++ b/boards/riscv64/virt/Makefile @@ -53,11 +53,11 @@ BIOS ?= $(BSP_BIOS)/opensbi/generic/fw_jump.elf ORIIMG ?= arch/$(ARCH)/boot/Image KIMAGE ?= $(BSP_KERNEL)/$(LINUX)/Image -DTS ?= $(BSP_KERNEL)/$(LINUX)/qemu-riscv.dts +DTS ?= $(BSP_KERNEL)/$(LINUX)/qemu-$(XARCH)-$(MACH).dts UORIIMG ?= arch/$(ARCH)/boot/Image BIMAGE ?= $(BSP_UBOOT)/$(UBOOT)/u-boot UKIMAGE ?= $(BSP_KERNEL)/$(LINUX)/Image -DTB ?= $(BSP_KERNEL)/$(LINUX)/qemu-riscv.dtb +DTB ?= $(BSP_KERNEL)/$(LINUX)/qemu-$(XARCH)-$(MACH).dtb ifneq ($(wildcard $(DTB)),) DTB_ADDR := 0x87000000 diff --git a/boards/riscv64/virt/README.md b/boards/riscv64/virt/README.md index cc52e0f..79d858a 100644 --- a/boards/riscv64/virt/README.md +++ b/boards/riscv64/virt/README.md @@ -34,6 +34,21 @@ We can build one in Linux Lab with these commands: $ make all PLATFORM=generic LLVM=1 PLATFORM_RISCV_XLEN=64 $ ls build/platform/generic/firmware/fw_jump.elf +## DTS + +The cpu, memory and external devices configuration in dts must match the +setting from the QEMU options, otherwise, it may not boot. + +If want to change the QEMU options, please make sure update the dts +configurations too, or, simply reset `DTB` variable like this to use the +default dtb transferred by QEMU: + + $ make boot DTB= + +The default dtb is dumped out of QEMU: + + $ make boot DUMPDTB=1 + ## References * [Qemu RISCV Documentation](https://wiki.qemu.org/Documentation/Platforms/RISCV) -- Gitee