mirror of
https://github.com/apache/nuttx.git
synced 2026-05-22 05:42:05 +08:00
boards/risc-v: Add lvgl64_vector configuration for RISC-V QEMU
Add new RISC-V 64-bit QEMU configuration with: - 64-bit RISC-V (RV64) architecture support - RISC-V Vector Extension (RVV/V-extension) enabled - LVGL graphics framework integration - VirtIO GPU and input device support - NSH shell with built-in applications This configuration enables developers to build and test LVGL graphical applications on 64-bit RISC-V targets with Vector extension support, providing a foundation for future SIMD optimization work. Includes: - defconfig: Complete configuration file with all necessary options - Updated index.rst: Build and run instructions with QEMU launch command Signed-off-by: rongyichang <rongyichang@xiaomi.com>
This commit is contained in:
@@ -143,6 +143,44 @@ To run it with QEMU, use the following command::
|
||||
-mon chardev=con,mode=readline \
|
||||
-bios none -kernel nuttx
|
||||
|
||||
lvgl64_vector
|
||||
-------------
|
||||
|
||||
This configuration uses the LVGL graphics framework with RISC-V 64-bit support
|
||||
and Vector Extension (V-extension) enabled. It allows developers to create
|
||||
graphical applications with LVGL on RISC-V QEMU while leveraging the Vector
|
||||
extension for potential SIMD optimization.
|
||||
|
||||
Features:
|
||||
|
||||
- 64-bit RISC-V architecture (RV64)
|
||||
- RISC-V Vector Extension (RVV/V-extension) support
|
||||
- LVGL graphics framework with 32-bit color depth
|
||||
- VirtIO GPU device for framebuffer access
|
||||
- NSH shell with built-in applications
|
||||
|
||||
To build it::
|
||||
|
||||
$ ./tools/configure.sh rv-virt:lvgl64_vector
|
||||
$ make -j$(nproc)
|
||||
|
||||
To run it with QEMU with graphics output::
|
||||
|
||||
$ qemu-system-riscv64 -semihosting -M virt,aclint=on -cpu rv64,v=true -smp 1 \
|
||||
-chardev stdio,id=con,mux=on \
|
||||
-serial chardev:con \
|
||||
-device virtio-gpu-device,xres=640,yres=480,bus=virtio-mmio-bus.0 \
|
||||
-device virtio-mouse-device,bus=virtio-mmio-bus.1 \
|
||||
-mon chardev=con,mode=readline \
|
||||
-bios none -kernel nuttx
|
||||
|
||||
After booting into the NSH shell, you can run the LVGL demo with::
|
||||
|
||||
nsh> lvgldemo
|
||||
|
||||
This configuration is suitable for developing and testing LVGL applications
|
||||
on 64-bit RISC-V targets with Vector extension support.
|
||||
|
||||
knetnsh64
|
||||
---------
|
||||
|
||||
|
||||
@@ -0,0 +1,106 @@
|
||||
#
|
||||
# This file is autogenerated: PLEASE DO NOT EDIT IT.
|
||||
#
|
||||
# You can use "make menuconfig" to make any modifications to the installed .config file.
|
||||
# You can then do "make savedefconfig" to generate a new defconfig file that includes your
|
||||
# modifications.
|
||||
#
|
||||
# CONFIG_LV_BUILD_EXAMPLES is not set
|
||||
CONFIG_16550_ADDRWIDTH=0
|
||||
CONFIG_16550_UART0=y
|
||||
CONFIG_16550_UART0_BASE=0x10000000
|
||||
CONFIG_16550_UART0_CLOCK=3686400
|
||||
CONFIG_16550_UART0_IRQ=37
|
||||
CONFIG_16550_UART0_SERIAL_CONSOLE=y
|
||||
CONFIG_16550_UART=y
|
||||
CONFIG_ALLOW_BSD_COMPONENTS=y
|
||||
CONFIG_ARCH="risc-v"
|
||||
CONFIG_ARCH_BOARD="rv-virt"
|
||||
CONFIG_ARCH_BOARD_QEMU_RV_VIRT=y
|
||||
CONFIG_ARCH_CHIP="qemu-rv"
|
||||
CONFIG_ARCH_CHIP_QEMU_RV64=y
|
||||
CONFIG_ARCH_CHIP_QEMU_RV=y
|
||||
CONFIG_ARCH_CHIP_QEMU_RV_ISA_A=y
|
||||
CONFIG_ARCH_CHIP_QEMU_RV_ISA_C=y
|
||||
CONFIG_ARCH_CHIP_QEMU_RV_ISA_M=y
|
||||
CONFIG_ARCH_CHIP_QEMU_RV_ISA_V=y
|
||||
CONFIG_ARCH_FLOAT_H=y
|
||||
CONFIG_ARCH_INTERRUPTSTACK=2048
|
||||
CONFIG_ARCH_RISCV=y
|
||||
CONFIG_ARCH_STACKDUMP=y
|
||||
CONFIG_BOARD_LOOPSPERMSEC=6366
|
||||
CONFIG_BUILTIN=y
|
||||
CONFIG_DEBUG_FULLOPT=y
|
||||
CONFIG_DEBUG_SYMBOLS=y
|
||||
CONFIG_DEV_SIMPLE_ADDRENV=y
|
||||
CONFIG_DRIVERS_VIDEO=y
|
||||
CONFIG_DRIVERS_VIRTIO=y
|
||||
CONFIG_DRIVERS_VIRTIO_GPU=y
|
||||
CONFIG_DRIVERS_VIRTIO_MMIO=y
|
||||
CONFIG_DRIVERS_VIRTIO_SERIAL=y
|
||||
CONFIG_ELF=y
|
||||
CONFIG_EXAMPLES_FB=y
|
||||
CONFIG_EXAMPLES_HELLO=m
|
||||
CONFIG_EXAMPLES_LVGLDEMO=y
|
||||
CONFIG_EXAMPLES_LVGLDEMO_STACKSIZE=32768
|
||||
CONFIG_FAT_LCNAMES=y
|
||||
CONFIG_FAT_LFN=y
|
||||
CONFIG_FS_FAT=y
|
||||
CONFIG_FS_FATTIME=y
|
||||
CONFIG_FS_HOSTFS=y
|
||||
CONFIG_FS_LARGEFILE=y
|
||||
CONFIG_FS_PROCFS=y
|
||||
CONFIG_GRAPHICS_LVGL=y
|
||||
CONFIG_IDLETHREAD_STACKSIZE=2048
|
||||
CONFIG_INIT_ENTRYPOINT="nsh_main"
|
||||
CONFIG_INIT_STACKSIZE=4096
|
||||
CONFIG_INPUT=y
|
||||
CONFIG_INTELHEX_BINARY=y
|
||||
CONFIG_IOB_BUFSIZE=1534
|
||||
CONFIG_IOB_NBUFFERS=24
|
||||
CONFIG_IOB_NCHAINS=24
|
||||
CONFIG_IOB_THROTTLE=2
|
||||
CONFIG_LIBC_ENVPATH=y
|
||||
CONFIG_LIBC_EXECFUNCS=y
|
||||
CONFIG_LIBC_PERROR_STDOUT=y
|
||||
CONFIG_LIBC_STRERROR=y
|
||||
CONFIG_LV_COLOR_DEPTH_32=y
|
||||
CONFIG_LV_USE_CLIB_MALLOC=y
|
||||
CONFIG_LV_USE_CLIB_SPRINTF=y
|
||||
CONFIG_LV_USE_CLIB_STRING=y
|
||||
CONFIG_LV_USE_DEMO_WIDGETS=y
|
||||
CONFIG_LV_USE_LOG=y
|
||||
CONFIG_LV_USE_NUTTX=y
|
||||
CONFIG_LV_USE_NUTTX_TOUCHSCREEN=y
|
||||
CONFIG_MM_IOB=y
|
||||
CONFIG_MQ_MAXMSGSIZE=64
|
||||
CONFIG_NSH_ARCHINIT=y
|
||||
CONFIG_NSH_BUILTIN_APPS=y
|
||||
CONFIG_NSH_FILEIOSIZE=512
|
||||
CONFIG_NSH_FILE_APPS=y
|
||||
CONFIG_NSH_READLINE=y
|
||||
CONFIG_NSH_SYMTAB=y
|
||||
CONFIG_NSH_SYMTAB_ARRAYNAME="g_symtab"
|
||||
CONFIG_NSH_SYMTAB_COUNTNAME="g_nsymbols"
|
||||
CONFIG_PATH_INITIAL="/system/bin"
|
||||
CONFIG_RAM_SIZE=33554432
|
||||
CONFIG_RAM_START=0x80000000
|
||||
CONFIG_READLINE_CMD_HISTORY=y
|
||||
CONFIG_RISCV_SEMIHOSTING_HOSTFS=y
|
||||
CONFIG_RR_INTERVAL=200
|
||||
CONFIG_SCHED_HAVE_PARENT=y
|
||||
CONFIG_SCHED_HPWORK=y
|
||||
CONFIG_SCHED_LPWORK=y
|
||||
CONFIG_SCHED_WAITPID=y
|
||||
CONFIG_SERIAL_UART_ARCH_MMIO=y
|
||||
CONFIG_STACK_COLORATION=y
|
||||
CONFIG_START_DAY=17
|
||||
CONFIG_START_MONTH=12
|
||||
CONFIG_START_YEAR=2025
|
||||
CONFIG_SYMTAB_ORDEREDBYNAME=y
|
||||
CONFIG_SYSLOG_TIMESTAMP=y
|
||||
CONFIG_SYSTEM_NSH=y
|
||||
CONFIG_SYSTEM_NSH_STACKSIZE=3072
|
||||
CONFIG_TESTING_GETPRIME=y
|
||||
CONFIG_TESTING_OSTEST=y
|
||||
CONFIG_VIDEO_FB=y
|
||||
Reference in New Issue
Block a user