summaryrefslogtreecommitdiff
path: root/bsp/qemu-virt64-riscv
AgeCommit message (Collapse)Author
2025-10-23[format][version]: synchronize bsp version configurationkurisaw
2025-09-22bsp/qemu-virt64-riscv: disable RT_USING_UTESTChen Wang
utest framework is an optional module and should be enabled when running utest. So RT_USING_UTEST should not be enabled by default. Disable it now. Signed-off-by: Chen Wang <[email protected]>
2025-06-17format: update all series of BSP configuration items (#10406)沐攸
2025-01-10bsp: qemu-virt64-riscv: remove config RISCV_S_MODEChen Wang
RISCV_S_MODE configuration only affects the code in libcpu/risc-v/virt64, and the only bsp using this libcpu is qemu-virt64-riscv. Considering s-mode is the default mode RT-Thread running on virt64 machine, it seems unnecessary to make RISCV_S_MODE a Kconfig option. Solution: Remove RISCV_S_MODE from Kconfig and define it as a macro in the code in libcpu/risc-v/virt64. Plus, due to this macro is only related to virt64, rename RISCV_S_MODE to RISCV_VIRT64_S_MODE. Update the .config/rtconfig.h in this patch. Signed-off-by: Chen Wang <[email protected]>
2025-01-08[bsp][qemu-virt64-riscv]修正内存大小超限制的问题heyuanjie87
2024-12-25bsp: qemu-virt64-riscv: Kconfig: remove duplicated RT_USING_VIRTIOChen Wang
There is problem in the Kconfig of qemu-virt64-riscv. RT_USING_VIRTIO is already defined in components/drivers/virtio/Kconfig, so it should not be defined again in the BSP kconfig. The solution is to rename RT_USING_VIRTIO to BSP_USING_VIRTIO. Also, refer to the configuration method for virtio device drivers in bsp/qemu-virt64-aarch64/drivers/Kconfig to rewrite the configuration of BSP_USING_VIRTIO_xxx. Updated default .config/rtconfig.h at the same time. Signed-off-by: Chen Wang <[email protected]>
2024-12-18bsp: qemu-virt64-riscv: update README for booting with rootfsChen Wang
Now lwext4 is ready, and qemu-virt64-riscv smart can boot with rootfs. Updated README to introduce this. This patch also replace qemu-nographic.sh with run.sh, which has a more simple name and more robust to launch rootfs image binary. TBD: qemu-nographic.bat is not touched, hope some guys from Windows can give a hand. Signed-off-by: Chen Wang <[email protected]>
2024-11-24[klibc] add rt_vsnprintf_std.c and rename RT_KLIBC_USING_VSNPRINTF_LONGLONGMeco Man
2024-11-20[bsp][qemu-virt64-riscv]:remove the redundant UART1 configuration from the ↵zhangjing
Kconfig
2024-11-14bsp: qemu-virt64-riscv: Improve README (#9651)Chen Wang
Improved README document - Unified the usage process of Standard Edition and Smart Edition. - Deleted the description of running RTT in Machine Mode. Currently, both Standard Edition and Smart Edition RTT run in S-mode by default. At the same time, some unnecessary scripts were cleaned up. Signed-off-by: Chen Wang <[email protected]>
2024-09-11feat: libcpu/risc-v: unify context on c906, virt64Shell
Changes: - added config for NEW_CTX_SWITCH - used new context on c906 sched switch routine - update _rt_hw_stack_init to fit into NEW_CTX_SWITCH - separated vector ctx from the generic Signed-off-by: Shell <[email protected]>
2024-09-11feat: bsp: qemu risc-v64: fit into common64Shell
2024-09-01feat: bsp: qemu-riscv64: using klibc API for printfShell
2024-09-01feat: bsp: qemu-riscv64: updates of building & docsShell
- using generic command instead of abs path - update BSP configurations - update README
2024-09-01feat: bsp: qemu-riscv64: remove useless configsShell
2024-07-18adapt to rv64ilp32 toolchainMuChenger
2024-07-15[libcpu/rv64] feat: unify tick.cShell
The changes unify the tick.c implementations for all risc-v64 architectures, leveraging the CPUTIME feature. This refactoring was necessary to streamline the codebase, and ensure consistent timer handling across different platforms. Changes: - Updated `Kconfig` in `bsp/cvitek/cv18xx_risc-v` to fix formatting issues. - Updated .config for BSPs to update `CPUTIME_TIMER_FREQ` - Updated header of for API `riscv_cputime_init` - Initialized riscv timer on `rt_hw_tick_init` - Refactored `tick.c` and `tick.h` in `libcpu/risc-v/t-head/c906` and `libcpu/risc-v/virt64`: - Replaced direct use of `rdtime` with `clock_cpu_gettime`. - Removed redundant timer frequency definitions. - Added static assertions to check the value of `CPUTIME_TIMER_FREQ`. - Initialized `tick_cycles` based on `CPUTIME_TIMER_FREQ`. - Integrated `ktime` support for tick initialization. Signed-off-by: Shell <[email protected]> Reviewed-on: https://github.com/RT-Thread/rt-thread/pull/9164 Reviewed-by: Chen Wang <[email protected]>
2024-06-20bsp中option env语句替换为新语句,并同步更新了source "$xxx"语句latercomer
2024-06-18[libcpu] rv64: support for ARCH_REMAP_KERNEL (#9067)Shell
* [libcpu] support for ARCH_REMAP_KERNEL These changes introduce support for the ARCH_REMAP_KERNEL configuration, which isolates kernel space in high virtual address regions. This feature is necessary to enhance memory protection and management by segregating user and kernel spaces more effectively. Changes: - Updated conditional macros to check for ARCH_REMAP_KERNEL instead of ARCH_KERNEL_IN_HIGH_VA in board initialization files to reflect the new configuration option. - Modified qemu-virt64-riscv Kconfig and SConstruct files to include and utilize ARCH_REMAP_KERNEL. - Created a new linker script `link_smart.lds` for smart linking in qemu-virt64-riscv. - Updated rtconfig.py to use a more flexible execution path setup. - Enhanced user address space definitions in `lwp_arch.h` to support the new virtual address mappings. - Adjusted kernel memory initialization and mapping logic in `c906/mmu.c` and `virt64/mmu.c` to account for high virtual address regions. - Added Kconfig option to enable ARCH_REMAP_KERNEL for RISCV64 architectures. - Enhanced memory setup functions to support new mapping scheme, including updates to early page table setup and address relocation logic. These modifications ensure that the system can utilize high memory addresses for the kernel, improving memory isolation and system stability. Signed-off-by: Shell <[email protected]> * fixup: CI run failed * bsp: default config without using smart * fixup: static checks * restore rt_hw_mmu_kernel_map_init for D1 --------- Signed-off-by: Shell <[email protected]>
2024-06-05[bsp/qemu-riscv]修正打开串口后中断被关闭的问题 (#9035)heyuanjie87
2024-03-21[bsp] update projectsMeco Man
2024-02-20[ci] open ci check with function declaration warning (#8546)Yuqiang Wang
2023-10-21[kservice] improve backtrace service in kernel (#8144)Shell
Signed-off-by: Shell <[email protected]>
2023-10-08[project] update mdk/iar project and config.guozhanxin
2023-09-26修复 qemu 挂载 elm 文件系统失败zhkag
2023-07-17[time]时钟框架重构 (#7794)xqyjlj
2023-07-05Drivers: Support Open Firmware API and model of PICwusongjie
We support OFW API to replace fdt old API, and add IRQ, IO, Platform-Bus, CPUs ... OFW node contorl. To support work with Device Tree or ACPI in drivers that use IRQ, we make a programmable interrupt controller driver's model. Signed-off-by: GuEe-GUI <[email protected]>
2023-03-31sync and update all projects (#7138)yangjie11
* sync and update
2023-03-23[atomic]添加arm与risc-v下的常用原子操作函数 (#7053)Yaochenger
* Update Kconfig * Update trap_gcc.S * Update bsp/hifive1/drivers/SConscript Co-authored-by: Man, Jianting (Meco) <[email protected]> * Update SConscript * [atomic]提交一份arm与risc-v架构下的常用原子操作函数 * 修改变量类型 * 更新rtatomic.h与atomic_port.c * 更新rt-thread\libcpu\arm\common\atomic_port.c * 更新include/rtatomic.h与libcpu/arm/common/SConscript * 更新include/rtatomic.h * 修正格式与Kconfig * 修正格式与文件结构 * 规范文件格式与文件重命名 * 添加测试用例与CI * 添加函数声明 * 修改virt64/SConscript 添加atomic_riscv.c * 1.规范代码风格 * 2.添加RISC-V64原子指令支持 解决在RV64下编译器将32-bit运算结果扩展为64-bit 导致判断错误 * 添加C11标准库原子操作测试 --------- Co-authored-by: Man, Jianting (Meco) <[email protected]>
2023-02-14[rt-smart] PV_OFFSET as a variable (#6904)Shell
* [rt-smart/mem] remove pv_offset * [rt-smart] list kernel space command * [rt-smart] restore ioremap region * [revert] restore kernel space isolation * [rt-smart/pv_off] code format * [rt-smart] add get_pvoff() * [pvoffset] pvoff as constant for C codes * [pvoff] pvoff as interfaces
2023-02-11[BSP] Add color build for qemu gcc config. (#6924)Bernard Xiong
2023-02-06Add ADT Kconfig and fix MMU kconfig issue in Cortex-A (#6901)Bernard Xiong
* Add ADT Kconfig and fix MMU kconfig issue in Cortex-A * [BSP] enable ADT
2023-01-16[rt-smart] porting c906 and D1s to mm (#6848)Shell
* [rv64/bsp] porting to mm * [mm] report more info for debugging * [fix] code format * [libcpu/c906] porting to RTOS * [fix] using rtdbg api * [fix] add return * [fix] report more information for debugging * [fix] use assert 0 for unrecoverable error
2023-01-08format link scriptsMeco Man
2023-01-08format Kconfig and sconscriptMeco Man
2023-01-08[rt-smart] kernel virtual memory management layer (#6809)Shell
synchronize virtual memory system works. adding kernel virtual memory management layer for page-based MMU enabled architecture porting libcpu MMU codes porting lwp memory related codes
2022-12-16[rt-smart] 弱化 RT_USING_LWP,使用 RT_USING_SMART 作为宏配置 (#6740)guo
* [dfs] sync cromfs * [rt-smart]Weaken RT_USING_LWP, use RT_USING_SMART as macro configuration * [format] fix some format issue.
2022-12-11[rtdef] use lower-case to define attributes (#6728)Man, Jianting (Meco)
* [rtdef] rename RT_WEAK attribute as rt_weak * [rtdef] rename RT_USED attribute as rt_used * [rtdef] rename RT_SECTION attribute as rt_section * [rtdef] rename ALIGN attribute as rt_align * [legacy] add RT_USED ALIGN RT_SECTION RT_WEAK as legacy support
2022-12-10[smart][risc-v/libcpu] port rv64 cpu code (#6704)Shell
* [risc-v/libcpu] porting Smart & RTOS * [fix] rv64 plic * [risc-v/rv64] remove macro in rtdef
2022-12-03sync branch rt-smart. (#6641)guo
* Synchronize the code of the rt mart branch to the master branch. * TTY device * Add lwP code from rt-smart * Add vnode in DFS, but DFS will be re-write for rt-smart * There are three libcpu for rt-smart: * arm/cortex-a, arm/aarch64 * riscv64 Co-authored-by: Rbb666 <[email protected]> Co-authored-by: zhkag <[email protected]>
2022-10-10[bsp][readme] 增加scons --exec-path=xxx 命令的使用说明Meco Man
2022-08-16update the project for RT-Thread_V4.1.1liuxianliang
2022-06-13[bsp/qemu-virt64-riscv]: dont use sbi in m-moderewine
2022-05-25[bsp] rename qemu-riscv-virt64 to qemu-virt64-riscvrewine