Commit Graph

127 Commits

Author SHA1 Message Date
Yaochenger b77241935c
[bsp][ch32v208]添加ch32v208BSP,合并libcpu/riscv 中ch系列的port文件 (#6780)
【1】添加ch32v208-r0 bsp
【2】合并libcpu/riscv 下ch系列mcu的port文件
2022-12-27 13:24:02 -05:00
linshire c930b4f623
[ch32]对接了rt_hw_context_switch_interrupt接口 (#6749)
* 对接了rt_hw_context_switch_interruptC(rt_ubase_t from, rt_ubase_t to, rt_thread_t from_thread, rt_thread_t to_thread)接口

* Update libcpu/risc-v/ch32v1/cpuport.c

Co-authored-by: Man, Jianting (Meco) <920369182@qq.com>
2022-12-22 09:34:36 +08:00
guo 68ca9f07a6
[rt-smart] 弱化 RT_USING_LWP,使用 RT_USING_SMART 作为宏配置 (#6740)
* [dfs] sync cromfs

* [rt-smart]Weaken RT_USING_LWP, use RT_USING_SMART as macro configuration

* [format] fix some format issue.
2022-12-16 18:38:28 +08:00
Man, Jianting (Meco) 99bdf978d7
[rtdef] use lower-case to define attributes (#6728)
* [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-11 13:12:03 -05:00
linshire 8f9198eb99
对接了rthw.h的接口,修复了不能编译的问题 (#6722) 2022-12-10 23:04:26 +08:00
Shell e991be9c51
[smart][risc-v/libcpu] port rv64 cpu code (#6704)
* [risc-v/libcpu] porting Smart & RTOS
* [fix] rv64 plic
* [risc-v/rv64] remove macro in rtdef
2022-12-10 22:16:42 +08:00
Yaochenger 9d8da76543
[bsp] add core-v-mcu bsp (#6705)
* add core-v-mcu bsp

* 规范bsp格式 添加readme

* 修改readme

Co-authored-by: 1516081466@qq.com <ws051000>
2022-12-08 15:01:37 -05:00
guo ecf2d82159
sync branch rt-smart. (#6641)
* 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 <zhangbingru@rt-thread.com>
Co-authored-by: zhkag <zhkag@foxmail.com>
2022-12-03 12:07:44 +08:00
Fan Yang c1b22ede30
Add BSP for HPM6750EVK and HPM6750EVKMINI (#6374)
* Add CANFD support and correct typos

- Added CANFD required fields to can.h
- Fixed typos in can.h and can.c
- Corrected all the projects affected by the typo
- Fixed wrong line-ending in some affected can driver files

Signed-off-by: Fan YANG <fan.yang@hpmicro.com>

* update

* bsp: support boards from hpmicro

- Supported HPM6750EVKMINI
- Supported HPM6750EVK

Signed-off-by: Fan YANG <fan.yang@hpmicro.com>

Signed-off-by: Fan YANG <fan.yang@hpmicro.com>
Co-authored-by: Meco Man <920369182@qq.com>
2022-09-06 00:48:16 -04:00
liyangyang d887d6eb19 fix scons 2022-08-22 23:39:39 -04:00
liyangyang 9b750eba84 libcpu 支持 ch32v3系列单片机 2022-08-22 23:39:39 -04:00
emuzit c802fcdcf8
WCH CH569W-R0-1v0 evt board bsp port, first version (#6167)
WCH CH569W-R0-1v0 evt board bsp port, first version

dev/test under Ubuntu 20.04
toolchain from MounRiver_Studio_Community_Linux_x64_V120

tested drivers : SysTick, gpio, gpio interrupt, uart1 (RX interrupt, TX polling)

libcpu/risc-v/SConscript :
group includes rtconfig.CPU only if folder exists

libcpu/risc-v/common/cpuport.c/rt_hw_context_switch_interrupt() :
make it RT_WEAK for customization
2022-07-30 02:10:51 -04:00
rewine 825b9ffbc3
[libcpu/risc-v/virt64]: fix parameter for call handle_trap (#6042) 2022-07-10 17:48:57 +08:00
thewon86 f5b0bfd3f4 uniform code writing-disable interrupt 2022-04-20 14:22:43 +08:00
blta 99526cc047 [bsp/ch32v103r-evt] add ch32v103r-evt bsp
feat: move MRS demo source to bsp and libraries folder

feat: update Sconscript

feat: modify SConstruct in the bsp

feat: use the rtconfig.py of gd32vf103v-eval bsp to modify

feat: use the MRS's rtconfig.h temoporarily

feat: update Kconfig files

feat: use the MRS's .ld and rename as link.lds

feat: add ch32v1 porting folder

perf: remove board/system_ch32v10x.c

fix: define SOC_ARM_SERIES_CH32V103 in rtconfig.h

fix: add some neccessary macros in rtconfig.h

perf: use the menuconfig to generate rtconfig.h

feat: add readme.md

fix: correct the bad encode in main.c

fix: include board.h in main.c

perf: check and update README.md

perf: remove ch32f10x_port_cn.md

feat: ignore the standard libraries's CI checking

feat: add sdk_dist.py

fix: correct some style errors again

perf: simply the board/kconfig

fix: format ch32v103r-evt

fix: format drvs and libcpu
2022-04-06 11:06:55 +08:00
blta ce602a6e4a
[libcpu/risc-v] 修复risc-v scons编译中间文件不能输出到build/kernel/libcpu目录问题 (#5736) 2022-03-29 22:18:05 +08:00
Meco Man 563e49890c [asm] 解决tab和空格混用的问题 2022-01-20 20:57:35 +08:00
jihongbin 7d07c61a47 [fix][libcpu][riscv][t-head] fix rt_hw_interrupt_disable/rt_hw_interrupt_enable bug
使用不同的优化等级会出现不同的效果
当使用-O0 等级时,无法正确得到关闭中断之前的状态

Using different optimization levels will have different effects
When the - o0 level is used, the state before the shutdown interrupt cannot be obtained correctly
2021-11-04 10:36:11 +08:00
BernardXiong be2dec978d [BSP] fix the compiling issue for qemu-riscv64 2021-10-19 15:00:46 +08:00
BernardXiong 6b66207048 [libcpu] fix s-mode issue 2021-10-19 14:35:22 +08:00
Huaqi Fang 45f9e9c4cb [libcpu][nuclei] Fix context switch in nuclei
previous rt_hw_context_switch might cause the
task switch handling error.

See
1a1a209e93 (diff-ba922e02206af6c52163f0c34a7e76e427b7ea22f791329b62f2069241c57778)

Signed-off-by: Huaqi Fang <578567190@qq.com>
2021-10-15 15:20:00 +08:00
Bernard Xiong 8da9f78d72 [libc] remove rtlibc 2021-09-11 11:07:51 +08:00
Meco Man 1997113fbc FINSH_USING_BUILT_IN_COMMANDS改MSH_USING_BUILT_IN_COMMANDS 2021-08-28 16:48:08 -04:00
Meco Man 29828dc94f [finsh] finsh组件可以选择是否包含内置命令 2021-08-25 19:48:15 -04:00
wormsX 360223a693 QEMU support, and code optimization for thead extension 2021-08-16 16:07:57 +08:00
chenzx 236e01bead support T-HEAD Xuantie-E9xx Series CPU on Smart-EVB, eg. E906/F/D/P, E907/F/D/P 2021-07-14 20:12:55 +08:00
bigmagic123 d6f5fbcd5b format code 2021-05-21 18:39:41 +08:00
bigmagic b7c7c7f4de Support for running with M-Mode 2021-05-21 17:10:07 +08:00
lizhirui 5036816967 add qemu-riscv-virt64 bsp
add qemu-riscv-virt64 bsp
2021-05-18 09:57:25 +08:00
xiaoxiaohuixxh 1bc204722d [libcpu] Add JuiceVm SUPPORT. 2021-04-26 13:46:19 +08:00
Meco Man 6c907c3a47 [libcpu] auto formatted 2021-03-27 17:51:56 +08:00
yangjie eeaf1fcc50 resolve Conflicts
bsp/nrf52832/board/Sconscript
	bsp/nrf52832/startups/Sconscript
	bsp/raspberry-pi/raspi4-32/driver/SConscript
2020-12-28 12:02:31 +08:00
yangjie ef62febf1f [SConscript]update group name 2020-12-19 16:49:11 +08:00
Bernard Xiong a472656ee0
Merge pull request #4019 from bj-wanghz/dev
fix long call linker error with 'jal', 'j' or conditional branch instruction in .S files for k210
2020-12-03 16:02:00 +08:00
yangjie11 ba83ddc3c4 [SConscript] change libcpu to LIBARCH,and correcte letter case 2020-11-30 15:52:43 +08:00
Bernard Xiong b7dd3cae09
Merge pull request #4043 from zhangsz0516/zhangsz_1120
[libcpu][update]重启与关机函数:rt_hw_cpu_shutdown、rt_hw_cpu_reset,补充WEAK属性
2020-11-23 17:40:34 +08:00
tangweikang 732382c676 [K210] update compile parameters and startup_gcc.S 2020-11-21 13:47:58 +08:00
tangweikang c8deffcf56 [libcpu/risc-v][K210] add FPU support 2020-11-20 13:53:50 +08:00
yangjie11 91261e25b9 [SConscript]rename group name 2020-11-20 13:38:11 +08:00
张世争 355f8dd95c [libcpu][update]重启与关机函数:rt_hw_cpu_shutdown、rt_hw_cpu_reset,补充WEAK属性 2020-11-20 08:49:51 +08:00
wanghongzhu 111ecae6ad fix long call linker error with 'jal', 'j' or conditional branch instruction 2020-11-11 09:58:20 +08:00
tangweikang 2f68120e49 [libcpu][risc-v] Fixed bsp k210 failing to compile | 修复 k210 无法编译的问题。 2020-10-29 10:54:53 +08:00
Bernard Xiong d92fbba3c1
Merge pull request #3919 from wormsX/T-head_Smart-v1.0.0
add t-head smart-evb bsp, and risc-v cpu e906
2020-09-22 22:03:26 +08:00
chenzx 60287b69fd add t-head smart-evb bsp, and risc-v cpu e906 2020-09-11 10:18:24 +08:00
Huaqi Fang eb00fbeda7 libcpu/nuclei: Fix wrong RT_KERNEL_INTERRUPT_LEVEL
RT_KERNEL_INTERRUPT_LEVEL set to 0 is the lowest level.

Signed-off-by: Huaqi Fang <578567190@qq.com>
2020-09-03 18:10:08 +08:00
Huaqi Fang ee4cabe69f [BSP][Nuclei] Add Nuclei RISC-V Processor support
* Nuclei RISC-V Processor support is added both RV32 and RV64
* Nuclei RVSTAR BSP is added, UART driver is added
* MSH works well in RVSTAR board

---------------------------

Squashed commit of the following:

commit b7368bc2ed725c42f9adc297d0e9cf3ed706a520
Author: Huaqi Fang <578567190@qq.com>
Date:   Fri Apr 17 14:38:54 2020 +0800

    [BSP][Nuclei] Pretty source code

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit 2c42a997f7b5d8aa53bdaf19ccb30596091a112d
Author: Huaqi Fang <578567190@qq.com>
Date:   Thu Apr 16 15:51:03 2020 +0800

    [libcpu] Remove ARCH_NUCLEI in libcpu kconfig

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit 915ad4c076ff3d7cebda896537605e7f7939b7af
Author: Huaqi Fang <578567190@qq.com>
Date:   Thu Apr 16 15:50:00 2020 +0800

    [BSP][Nuclei] Remove ARCH_NUCLEI in bsp KConfig

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit fe43869c79675a25669447d57ea5d77385e07ca5
Author: Huaqi Fang <578567190@qq.com>
Date:   Wed Apr 15 12:43:20 2020 +0800

    [BSP][NUCLEI] Simply application main.c

    Remove previous complicated application of gd32vf103_rvstar

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit 8fd31727bc7ff51c83a3c47840cff1bfb100c0ba
Author: Huaqi Fang <578567190@qq.com>
Date:   Wed Apr 15 12:38:04 2020 +0800

    [BSP][NUCLEI] Format application and board source code

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit b432308b20cdf24dfcc1398511d1d83bce6a9df2
Author: Huaqi Fang <578567190@qq.com>
Date:   Wed Apr 15 11:58:28 2020 +0800

    [BSP][Nuclei] Format source code of drivers of gd32vf103

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit 7366173d749d8a51ed8d48eca09007d27aee8ad8
Author: Huaqi Fang <578567190@qq.com>
Date:   Wed Apr 15 11:54:02 2020 +0800

    [LIBCPU][NUCLEI] Optimize nuclei cpu portable code

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit 8c2cd4745b7279a6721946d119441bbf7fd1a9c2
Author: Huaqi Fang <578567190@qq.com>
Date:   Tue Apr 14 15:45:42 2020 +0800

    nuclei: Update README.md

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit fa8a2f24ea5e4dbce714ffda16c1ce558e5b5ddb
Author: Huaqi Fang <578567190@qq.com>
Date:   Tue Apr 14 14:06:54 2020 +0800

    nuclei: Add gpio driver not tested

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit 1be40bc50be43dfcdd105291bd24355498f9fef3
Author: Huaqi Fang <578567190@qq.com>
Date:   Thu Apr 9 14:55:22 2020 +0800

    Nuclei: Update README.md

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit 4c8beb204b7ee3e38c04e1f23a1f7e4ce48aa196
Author: Huaqi Fang <578567190@qq.com>
Date:   Thu Apr 9 10:20:25 2020 +0800

    Nuclei: Change idle stack size from 256 to 396 bytes

    If changed to 396 bytes, then debug optimization level changed
    from O2 to O0, and the application can run successfully without
    stack overflow issue of tidle0 task
    warning: tidle0 stack is close to end of stack address.

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit da2bcf5c56ef32b611405a8e591ecd3f1e598b11
Author: Huaqi Fang <578567190@qq.com>
Date:   Thu Apr 9 10:11:40 2020 +0800

    nuclei: Remove unused kconfig

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit 0b932c677a7934d60e70da141744790aec202ef6
Author: Huaqi Fang <578567190@qq.com>
Date:   Thu Apr 9 09:32:22 2020 +0800

    nuclei: optimize drivers support

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit 0431f6f01f6efab2900de552abede83639415431
Author: Huaqi Fang <578567190@qq.com>
Date:   Wed Apr 8 19:28:02 2020 +0800

    tools: Update mkdist.py for nuclei bsp

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit 0e1f502edfddff93a4a66c041be68560ef4828eb
Author: Huaqi Fang <578567190@qq.com>
Date:   Wed Apr 8 18:46:58 2020 +0800

    nuclei: optimize rvstar support directory

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit 1131f6e6483d8f2fbafe07f4e598fc8f802ee85d
Author: Huaqi Fang <578567190@qq.com>
Date:   Wed Apr 8 18:37:24 2020 +0800

    nuclei: update kconfig

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit ad81c1d3bf9d80d2b561c94e903e7ce4ca2c68c6
Author: Huaqi Fang <578567190@qq.com>
Date:   Wed Apr 8 15:43:00 2020 +0800

    nuclei: Rename board name

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit d780138a1abf5da5097cc89e6a428ebeae06f284
Author: Huaqi Fang <578567190@qq.com>
Date:   Tue Apr 7 09:36:19 2020 +0800

    libcpu: Add Nuclei arch option in KConfig

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit 60320d34b1d88315efe1b566fd6bc75c69851f06
Author: Huaqi Fang <578567190@qq.com>
Date:   Fri Apr 3 16:51:01 2020 +0800

    nuclei: Update nuclei sdk of rt-thread support

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit a042b806efe0ea3bc9dba80ebc7696e5941ba35f
Author: Huaqi Fang <578567190@qq.com>
Date:   Fri Apr 3 11:34:09 2020 +0800

    nuclei: modify application for not print anything

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit 2a9603adcb584b29886a2b93ded2473f4e8bffb1
Author: Huaqi Fang <578567190@qq.com>
Date:   Fri Apr 3 11:31:01 2020 +0800

    nuclei: Add .gitignore for nuclei bsp

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit 34aaf6aebae75c3ee9d38cc17e6bdb826ed9e357
Author: Huaqi Fang <578567190@qq.com>
Date:   Fri Apr 3 11:28:06 2020 +0800

    nuclei_sdk: update link script of rvstar to contain rt-thread needed sections

            /* section information for finsh shell */
            . = ALIGN(4);
            __fsymtab_start = .;
            KEEP(*(FSymTab))
            __fsymtab_end = .;

            . = ALIGN(4);
            __vsymtab_start = .;
            KEEP(*(VSymTab))
            __vsymtab_end = .;

            /* section information for initial. */
            . = ALIGN(4);
            __rt_init_start = .;
            KEEP(*(SORT(.rti_fn*)))
            __rt_init_end = .;

    The above code placed in rodata section

    Signed-off-by: Huaqi Fang <578567190@qq.com>

commit 3451466e9d8da3c3c8a631be69f3c7a5e6220c21
Author: Huaqi Fang <578567190@qq.com>
Date:   Fri Apr 3 10:04:42 2020 +0800

    bsp: Add initial commit of nuclei rvstar board bsp

    Signed-off-by: Huaqi Fang <578567190@qq.com>

Signed-off-by: Huaqi Fang <578567190@qq.com>
2020-04-17 21:07:29 +08:00
ZhangTao 80a4912baf 修改了上下文切换退出时的bug,该bug会导致中断被提前打开造成死锁 2019-11-05 10:30:47 +08:00
shaojinchun cb07e5fb24 开放spinlock相关函数 2019-09-27 14:38:33 +08:00
tyustli 49e9d19c82 first version 2019-07-24 17:03:26 +08:00
shaojinchun bcb7fac0d0 fix signals for k210 2019-05-11 09:37:25 +08:00
ZYH fcb88f7034 [libcpu][k210]fix stack frame print 2019-03-28 17:05:52 +08:00
BernardXiong bd8f0d0423 [libcpu] Fix the build directory issue 2019-03-26 13:36:01 +00:00
ZYH c41bf3120f [libcpu][k210]add stack info printf 2019-03-21 15:10:55 +08:00
ZYH 3dd72f956b [libcpu][k210]add description of exception 2019-03-20 12:23:17 +08:00
Bernard Xiong bde47018b8 [libcpu] Add SConscript in libcpu. 2019-01-07 06:09:45 +08:00
shaojinchun 86c76b0e8a add k210 SMP support 2018-12-28 09:41:18 +08:00
Bernard Xiong 597d71cc03 [bsp][k210] Add get_free_heap_size function.
* Add get_free_heap_size function;
* Increase shell stack for KPU module.
2018-12-23 14:11:25 +08:00
Bernard Xiong 5e0f8cb3aa [libcpu] Add k210 BSP. 2018-12-18 21:01:03 +08:00
Bernard Xiong 885d99ee9b
[libcpu][risc-v] fix rt_thread_switch_interrupt_flag issue. 2018-12-15 11:47:59 +08:00
Bernard Xiong fd347fdb90
[libcpu][risc-v] fix the rt_thread_switch_interrupt_flag issue 2018-12-15 11:47:10 +08:00
Bernard Xiong 08521ceaa5 [libcpu] Fix the E310 compiling issue. 2018-12-08 17:08:52 +08:00
Bernard Xiong c9576c3e53 [BSP] Add RV32M1_VEGA BSP. 2018-12-08 10:44:56 +08:00
Bernard Xiong 36b194aeb6 [BSP] Update Hifive1 BSP with unified RV porting. 2018-12-08 10:42:40 +08:00
Bernard Xiong 2a7d814f77 [libcpu] Add unified RISC-V libcpu porting. 2018-12-08 10:41:38 +08:00
liang yongxiang 32c5b2515f [libcpu] add risc-v e310 porting 2018-05-31 14:53:26 +08:00
liang yongxiang 5faae3350c [libcpu] remove libcpu/risc-v 2018-05-29 12:59:13 +08:00
Bernard Xiong 2ac493698b [BSP] cleanup for hifive1 bsp. 2017-08-26 11:02:39 +08:00
zhangjun 72cfe9dd68 modify: drivers/cpuusage.c
modify:     ../../libcpu/risc-v/e310/stack.c
	rmove unused macro definition
modify:     ../../src/idle.c
	Return to the original version
2017-07-31 12:05:45 +08:00
zhangjun e9f1bdf2da new file: ../../libcpu/risc-v/e310/trap.c
add file that forget to submit before
	auto change timer mtimercmp register on the base of RT_TICK_PER_SECOND in rtconfig.h
	no flashing led
new file:   ../../src/idle.c
	recover old file
2017-07-31 11:12:28 +08:00
zhangjun a5305c05df fix bug in context_gcc.s and start_gcc.s:
save mie into stack
msh  running normaly
2017-07-31 10:59:59 +08:00
zhangjun b032dff161 fix bug in rt_hw_context_switch_interrupt_do
save sp to old thread
	clear rt_thread_switch_interrupt_flag
always enable interrupt after rt_hw_context_switch
judeg the type of interrupt in trap_entry, then call handler(Machine timer interrupt of Machine external interrupt)
2017-07-30 19:46:28 +08:00
zhangjun 2d56a27c20 修改: ../../libcpu/risc-v/e310/context_gcc.S
enable interrupt after return form rt_hw_context_switch
2017-07-30 15:34:32 +08:00
zhangjun 3c51848d33 fix trap_entry 2017-07-29 15:37:20 +08:00
zhangjun b80f83f360 modified: ../../libcpu/risc-v/e310/context_gcc.S
fix open timer intrrupt
2017-07-26 16:27:54 +08:00
zhangjun 98a6896cfa remove "csrrc a5, mstatus, MSTATUS_MIE" in rt_hw_interrupt_enable();
it will lead to interrupt again in interrupt
2017-07-26 16:07:01 +08:00
zhangjun b334347a24 deleted: rtthread.s /*just for debug*/
modified:   ../../libcpu/risc-v/e310/context_gcc.S
	change  ret to mret and switch to new task with mepc
2017-07-17 16:55:33 +08:00
zhangjun e01455155a add context_gcc.s 2017-07-17 15:44:00 +08:00