summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShell <[email protected]>2024-08-28 20:52:12 +0800
committerMeco Man <[email protected]>2024-09-01 15:12:34 -0400
commita5042f5bb5c206e55f1ecea21a3b60a5ba9017cf (patch)
tree35ef5574ad1b12cb0255c0b68a4a1c0f165b0c31
parent1c5340ce3aae305838a9e0b8fafeea63c4036efa (diff)
feat: bsp: qemu-riscv64: updates of building & docs
- using generic command instead of abs path - update BSP configurations - update README
-rw-r--r--bsp/qemu-virt64-riscv/.config14
-rw-r--r--bsp/qemu-virt64-riscv/README_ZH.md16
-rwxr-xr-xbsp/qemu-virt64-riscv/qemu-rv64ilp32-nographic.sh2
-rw-r--r--bsp/qemu-virt64-riscv/rtconfig.h7
4 files changed, 12 insertions, 27 deletions
diff --git a/bsp/qemu-virt64-riscv/.config b/bsp/qemu-virt64-riscv/.config
index 9d21fb62cf..6511593386 100644
--- a/bsp/qemu-virt64-riscv/.config
+++ b/bsp/qemu-virt64-riscv/.config
@@ -66,15 +66,12 @@ CONFIG_RT_USING_SIGNALS=y
#
CONFIG_RT_PAGE_MAX_ORDER=11
CONFIG_RT_USING_MEMPOOL=y
-CONFIG_RT_USING_SMALL_MEM=y
-# CONFIG_RT_USING_SLAB is not set
-CONFIG_RT_USING_MEMHEAP=y
-CONFIG_RT_MEMHEAP_FAST_MODE=y
-# CONFIG_RT_MEMHEAP_BEST_MODE is not set
+# CONFIG_RT_USING_SMALL_MEM is not set
+CONFIG_RT_USING_SLAB=y
+# CONFIG_RT_USING_MEMHEAP is not set
# CONFIG_RT_USING_SMALL_MEM_AS_HEAP is not set
-CONFIG_RT_USING_MEMHEAP_AS_HEAP=y
-CONFIG_RT_USING_MEMHEAP_AUTO_BINDING=y
-# CONFIG_RT_USING_SLAB_AS_HEAP is not set
+# CONFIG_RT_USING_MEMHEAP_AS_HEAP is not set
+CONFIG_RT_USING_SLAB_AS_HEAP=y
# CONFIG_RT_USING_USERHEAP is not set
# CONFIG_RT_USING_NOHEAP is not set
CONFIG_RT_USING_MEMTRACE=y
@@ -309,6 +306,7 @@ CONFIG_NETDEV_USING_IFCONFIG=y
CONFIG_NETDEV_USING_PING=y
CONFIG_NETDEV_USING_NETSTAT=y
CONFIG_NETDEV_USING_AUTO_DEFAULT=y
+# CONFIG_NETDEV_USING_LINK_STATUS_CALLBACK is not set
# CONFIG_NETDEV_USING_IPV6 is not set
CONFIG_NETDEV_IPV4=1
CONFIG_NETDEV_IPV6=0
diff --git a/bsp/qemu-virt64-riscv/README_ZH.md b/bsp/qemu-virt64-riscv/README_ZH.md
index 99f218003f..cc4625698b 100644
--- a/bsp/qemu-virt64-riscv/README_ZH.md
+++ b/bsp/qemu-virt64-riscv/README_ZH.md
@@ -67,7 +67,7 @@ scons --menuconfig
```
选择如下:
```
-RISCV qemu virt64 configs --->
+RISCV qemu virt64 configs --->
[*] RT-Thread run in riscv smode
```
保存后,重新`scons`编译即可。
@@ -143,19 +143,9 @@ msh />
- 修改ABI参数为:-mabi=ilp32d
- - 使用menuconfig使能下述选项:
+ - 然后执行常规编译
- ```shell
- RT_USING_RV64ILP32
- ```
-
- - 使用menuconfig失能下述选项:
-
- ```shell
- RT_USING_POSIX_PIPE
- RT_USING_POSIX_FS
- RT_USING_DFS
- ```
+ - 使用 [脚本](./qemu-rv64ilp32-nographic.sh) 启动 QEMU (INFO: QEMU 二进制同样在工具链目录)
3. 使用传统64位工具链与使用新32位工具链编译相同工程的固件大小对比:
diff --git a/bsp/qemu-virt64-riscv/qemu-rv64ilp32-nographic.sh b/bsp/qemu-virt64-riscv/qemu-rv64ilp32-nographic.sh
index d1b95203d6..798cb9d3d7 100755
--- a/bsp/qemu-virt64-riscv/qemu-rv64ilp32-nographic.sh
+++ b/bsp/qemu-virt64-riscv/qemu-rv64ilp32-nographic.sh
@@ -1 +1 @@
-/home/rv/opt-ilp32/bin/qemu-system-riscv64ilp32 -cpu rv64 -M virt -m 256M -nographic -kernel rtthread.elf
+qemu-system-riscv64ilp32 -cpu rv64 -M virt -m 256M -nographic -kernel rtthread.elf
diff --git a/bsp/qemu-virt64-riscv/rtconfig.h b/bsp/qemu-virt64-riscv/rtconfig.h
index e8669d9692..44ce692d6a 100644
--- a/bsp/qemu-virt64-riscv/rtconfig.h
+++ b/bsp/qemu-virt64-riscv/rtconfig.h
@@ -47,11 +47,8 @@
#define RT_PAGE_MAX_ORDER 11
#define RT_USING_MEMPOOL
-#define RT_USING_SMALL_MEM
-#define RT_USING_MEMHEAP
-#define RT_MEMHEAP_FAST_MODE
-#define RT_USING_MEMHEAP_AS_HEAP
-#define RT_USING_MEMHEAP_AUTO_BINDING
+#define RT_USING_SLAB
+#define RT_USING_SLAB_AS_HEAP
#define RT_USING_MEMTRACE
#define RT_USING_HEAP
/* end of Memory Management */