rt-thread-official/libcpu/risc-v/t-head/c906
heyuanjie87 908f803473
feat: support ARCH_REMAP_KERNEL on libcpu/c906 (#9123) (#9171)
feat: [libcpu/c906] support ARCH_REMAP_KERNEL

This change was necessary to enable the remapping of the kernel image to
a high virtual address region on the c906 platform.

Changes:
- Introduced new configuration options `ARCH_REMAP_KERNEL`, and
  `ARCH_USING_ASID` under the `ARCH_RISCV64` section.
- Updated MMU initialization and switching functions to incorporate
  remapping handling.
- Modified page table setup for proper memory attribute settings.
- Added support for early memory setup, kernel remapping
- Added conditional compilation for ASID support in the `rt_aspace` struct,
  since this is not enable currently for most architecture.

Signed-off-by: Shell <smokewood@qq.com>
Co-authored-by: Shell <smokewood@qq.com>
2024-07-11 11:46:26 +08:00
..
asm sync branch rt-smart. (#6641) 2022-12-03 12:07:44 +08:00
SConscript [libcpu][SConscript]规范group名为libcpu 2024-02-20 08:39:05 +08:00
asm-generic.h [libcpu][component][debug] add debug info for gdb (#7033) 2023-05-14 23:48:16 +08:00
backtrace.c [kernel] 将rt_thread结构体改为显式继承rt_object (#7131) 2023-04-04 09:06:27 -04:00
cache.c [rt-smart] move sys_cacheflush to lwp_syscall.c (#7048) 2023-03-17 15:11:38 +08:00
cache.h [rt-smart] move sys_cacheflush to lwp_syscall.c (#7048) 2023-03-17 15:11:38 +08:00
context_gcc.S [libcpu] discard rt_current_thread (#8976) 2024-05-26 22:00:17 +08:00
cpuport.c rt_hw_cpu_shutdown: implement default weak function 2023-08-08 22:34:25 -04:00
cpuport.h [ci] open ci check with function declaration warning (#8546) 2024-02-20 22:45:04 -05:00
encoding.h [rt-smart] kernel virtual memory management layer (#6809) 2023-01-08 21:08:55 -05:00
interrupt.c sync branch rt-smart. (#6641) 2022-12-03 12:07:44 +08:00
interrupt_gcc.S [rt-smart] porting c906 and D1s to mm (#6848) 2023-01-16 08:24:03 +08:00
io.h [libcpu/risc-v/c906] add ioremap && default param (#7345) 2023-04-24 09:21:15 +08:00
mmu.c feat: support ARCH_REMAP_KERNEL on libcpu/c906 (#9123) (#9171) 2024-07-11 11:46:26 +08:00
mmu.h [ci] open ci check with function declaration warning (#8546) 2024-02-20 22:45:04 -05:00
opcode.h sync branch rt-smart. (#6641) 2022-12-03 12:07:44 +08:00
plic.c [bsp]add cv1800b (#7753) 2023-06-30 00:05:55 +08:00
plic.h [libcpu/risc-v/c906] add ioremap && default param (#7345) 2023-04-24 09:21:15 +08:00
riscv.h sync branch rt-smart. (#6641) 2022-12-03 12:07:44 +08:00
riscv_io.h sync branch rt-smart. (#6641) 2022-12-03 12:07:44 +08:00
riscv_mmu.c [ci] open ci check with function declaration warning (#8546) 2024-02-20 22:45:04 -05:00
riscv_mmu.h [libcpu/c906]与virt同步 (#9095) 2024-06-26 12:16:37 +08:00
rt_interrupt.h [libcpu/risc-v/c906] add ioremap && default param (#7345) 2023-04-24 09:21:15 +08:00
sbi.c [rt-smart] porting c906 and D1s to mm (#6848) 2023-01-16 08:24:03 +08:00
sbi.h [rt-smart] kernel virtual memory management layer (#6809) 2023-01-08 21:08:55 -05:00
stack.h sync branch rt-smart. (#6641) 2022-12-03 12:07:44 +08:00
stackframe.h [rv]信号处理进入用户态前恢复gp (#9072) 2024-06-21 09:09:41 +08:00
startup_gcc.S feat: support ARCH_REMAP_KERNEL on libcpu/c906 (#9123) (#9171) 2024-07-11 11:46:26 +08:00
symbol_analysis.c sync branch rt-smart. (#6641) 2022-12-03 12:07:44 +08:00
symbol_analysis.h sync branch rt-smart. (#6641) 2022-12-03 12:07:44 +08:00
syscall_c.c [smart/syscall] fix exit(2) and add exit_group(2) (#8005) 2023-09-09 09:35:56 +08:00
tick.c [bsp]support cvitek sdhci drvier (#8849) 2024-04-24 05:40:22 +08:00
tick.h [libcpu/risc-v/c906] add ioremap && default param (#7345) 2023-04-24 09:21:15 +08:00
tlb.h [rt-smart] porting c906 and D1s to mm (#6848) 2023-01-16 08:24:03 +08:00
trap.c [mm] precise & readable mm fault type (#9047) 2024-06-07 21:34:03 +08:00