summaryrefslogtreecommitdiff
path: root/libcpu
AgeCommit message (Collapse)Author
2022-10-11Revert "[libcpu] remove gtimer/pmu from cortex-a"Wayne
2022-09-22bsp beaglebone: add IAR support (#6443)YangZhongQing
* bsp beaglebone: add IAR template files and fix it's build error ATTENTION: project.* was generated by scons, so I add it to gitignore. rtconfig.py *FLAGS located in "PLATFORM == 'iccarm'" are unverified and maybe wrong. (我只是从STM32里面抄来,然后根据自己的理解改了一下,并没有验证这些参数的正确性, 我也不知道怎么用命令行调用这些参数来编译) * bsp beaglebone: add beaglebone_ram.icf ROM address from uboot_cmd.txt am335x_DDR.icf use 0x82000000, different to uboot_cmd.txt & gcc beaglebone_ram.lds, the difference will easy cause later developer got below error: => go 0x80200000 ## Starting application at 0x80200000 ... undefined instruction pc : [<8200956c>] lr : [<8ff62497>] reloc pc : [<728a956c>] lr : [<80802497>] sp : 8df37358 ip : 00000000 fp : 00000002 r10: 8df4d448 r9 : 8df3feb8 r8 : 8ffd30f8 r7 : 8ff78089 r6 : 00000002 r5 : 80200000 r4 : 8df4d44c r3 : 80200000 r2 : 8df4d44c r1 : 8df4d44c r0 : 00000001 Flags: nzCv IRQs off FIQs on Mode SVC_32 Code: 5dbffcdd bb9bdf7f abf85423 eff1f77f (7ed7daaf) Resetting CPU ... resetting ... * libcpu am335x: context_iar.S rt_hw_context_switch: add thumb mode support IAR new project defualt Processor mode is Thumb, this will cause user easy occur the following error: ... msh />Execption: r00:0x8800aaa8 r01:0x802080c5 r02:0x00000000 r03:0x88009b4c r04:0x00001000 r05:0x00000000 r06:0x00001403 r07:0x00100000 r08:0x00000000 r09:0x00000000 r10:0x0000000a fp :0x0000000a ip :0x65687374 sp :0x00006c6c lr :0x0000008a pc :0x88008be0 cpsr:0x880001bc software interrupt shutdown... (0) assertion failed at function:rt_hw_cpu_shutdown, line number:160 * bsp beaglebone: change IAR template.ewp code use Arm mode Arm mode bin size will bigger than Thumb mode * libcpu am335x: IAR: use rt_hw_cpu_dcache_enable instead of rt_cpu_dcache_enable Reviewer mysterywolf say: 麻烦把rt_cpu_icache_enable 和 rt_cpu_dcache_enable, 统一改成 rt_hw_cpu_icache_enable 和 rt_hw_cpu_dcache_enable rt_hw_cpu_icache_enable 和 rt_hw_cpu_dcache_enable 是其他bsp也是这么命名的 这是个命名统一的函数
2022-09-15完善bsp beaglebone的基本使用 (#6434)Man, Jianting (Meco)
* bsp beaglebone: rerun menuconfg * bsp beaglebone: add uart0 support * bsp beaglebone: use uart0 as console * bsp beaglebone: add heap init fix rt_application_init() error: (m != RT_NULL) assertion failed at function:rt_smem_alloc, line number:288 * bsp beaglebone: add mmu & interrupt init must init mmu, otherwise no interrupt is generated, cause scheduler can't work. I don't know why need mmu, just seen: bsp/rockchip/rk3568/driver/board.c * libcpu am335x: reset interrupt controller before init vector I think reset before init is more better AM335X_StarterWare_02_00_01_01\system_config\armv7a\am335x\interrupt.c IntAINTCInit() * bsp beaglebone: full gpio driver support * bsp beaglebone: add tftpboot way to uboot_cmd.txt * bsp beaglebone: optimize am33xx_gpio_hdr, check irqstatus is the last one Co-authored-by: YangZhongQing <[email protected]>
2022-09-06Add BSP for HPM6750EVK and HPM6750EVKMINI (#6374)Fan Yang
* 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 <[email protected]> * update * bsp: support boards from hpmicro - Supported HPM6750EVKMINI - Supported HPM6750EVK Signed-off-by: Fan YANG <[email protected]> Signed-off-by: Fan YANG <[email protected]> Co-authored-by: Meco Man <[email protected]>
2022-09-05fix: 修复arm926异常时打印栈名乱码Zhang WenBin
2022-08-29tms320f28379d fix init (#6343)YuQi
解决 tms320f28379d bsp 启动的问题。主要改动如下。 修正context.s中汇编代码错误。在旧版的代码中,操作数为32位而汇编命令却使用了针对16位数据的命令MOV,导致程序在某些情况无法正常启动线程。 由于C28x的平台下,SP只支持16bit寻址,所以用于线程空间存放的heap以及ebss段都需要放在低16位的空间,针对这个问题修改了CMD文件。此外还增加基于CMD文件基于RAM的支持,方便调试。 新增rtdef.h中RT_SECTION,RT_USED,ALIGN和RT_WEAK的定义。旧版bsp中这些定义为空,导致INIT_EXPORT注册的函数失效。 修改程序启动代码,在程序入口直接调用原生启动代码 以上改动在LAUNCHXL-F28379D 通过了测试。
2022-08-22fix sconsliyangyang
2022-08-22libcpu 支持 ch32v3系列单片机liyangyang
2022-08-20[bsp][tms320f28379d] Fix compile ti (#6254)Yunjie Gu
* compile_ok Issues fixed: (1) update .config: select FINSH_USING_SYMTAB (2) add rt_size_t in rtconfig_project.h (3) fix finsh problems of using sym table (4) update .project to include ipc source codes. Todo list: (1) automate the build source selection of ccs and reconcile it with scons * change compiler * msh can run now the key step is to swap the order of rt_interrupt_nest -- and RT_OBJECT_HOOK_CALL(rt_interrupt_leave_hook,()) in irq.c. This is an improvised solution and an issue has been raised. * Update 2837x_FLASH_lnk_cpu1.cmd The original one is also fine. Just to make it more rigorous since FSymTab is in data section. * update readme.md Complier selection and maintainer update. Co-authored-by: YuQi <[email protected]>
2022-08-13[libcpu][arm] fix rt_hw_cpu_dcache_ops clean invalid bugMartin
clean_invalid must be set at the same time, and call clean_invalid, or call clean/invalid
2022-08-11[libcpu][arm] fix armclang error when enable LTOtfx2001
2022-08-02Fix some compilation warning (#5744)dongly
* Fix some compilation warning * 补充修正一些数据类型的使用错误 Co-authored-by: Meco Man <[email protected]>
2022-07-30WCH CH569W-R0-1v0 evt board bsp port, first version (#6167)emuzit
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-27使用 AStyle.exe 统一代码格式Aligagago
2022-07-10[libcpu/risc-v/virt64]: fix parameter for call handle_trap (#6042)rewine
2022-06-29支持只运行在安全模式下 (#6115)Tangyuxin
* [cpu][cm33] Support running in secure mode * [bsp][lpc55sxx] Using the cortex cm33
2022-06-22[rtc] use gmtime_r to replace gmtime (#6012)Man, Jianting (Meco)
* [rtc] use gmtime_r to replace gmtime
2022-06-15[libcpu][arm] ArmClang 编译优化错误 (#6071)JonasWen
2022-06-09[Scons][iar][iccarm] ↵Meco Man
IAR统一使用iccarm作为判断条件而不是是用IDE的名字来进行判断 因为不确定后续IAR是否会像Keil一样内含有不同的编译工具链 此外,将判断条件改为列表方式,这样更方便后续增加其他可能的IAR编译链
2022-06-09[Scons] ↵Meco Man
将GCC判断条件改为列表方式,方便后续增加新的编译工具链
2022-05-13[libcpu/arm]: fix typoFrankTan
2022-04-24[libcpu][arm] Add exception install function (#5827)Tangyuxin
2022-04-20[update] Removed C++ global constructor initialization, this method is not ↵zhouji
used in GCC4.7 and later versions.
2022-04-20uniform code writing-disable interruptthewon86
2022-04-20[libcpu][arm] Fix compilation warningtyx
2022-04-20[gcc][armcc][armclang] rtconfig.CROSS_TOOL->rtconfig.PLATFORM (#5802)Man, Jianting (Meco)
* [gcc][armcc][armclang] rtconfig.CROSS_TOOL->rtconfig.PLATFORM
2022-04-19[libcpu][arm] Fix compilation warningtyx
2022-04-08[libcpu/arm]: add dsb and isb instructions in the end of ↵blta
rt_hw_context_switch_to (#5748)
2022-04-06[bsp/ch32v103r-evt] add ch32v103r-evt bspblta
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-05替换RTThread旧版文件头注释版权声明 (#5774)Man, Jianting (Meco)
2022-04-051、解决未在rtconfig.h中定义“RT_USING_CPU_FFS”宏时,使用arm- ↵changzehai
gcc编译会出现__rt_ffs() 函数重定义,导致编译不通过的问题; (#5755) 2、解决bsp/rm48x50工程使用arm-gcc编译下载后,程序运行出现prefetch abort异常的问题。
2022-04-01[libcpu] Add CM33 (#5761)Tangyuxin
2022-03-29[libcpu/risc-v] 修复risc-v ↵blta
scons编译中间文件不能输出到build/kernel/libcpu目录问题 (#5736)
2022-03-29[libcpu/aarch64] add gicv3 support and bsp/rockchip/rk3568 (#5722)GUI
* [libcpu/aarch64] add smp support * [libcpu/aarch64] rt_hw_trap_irq get irq instead of iar when using gicv2 * [libcpu/aarch64] disable irq/fiq when switch thread * [libcpu/aarch64] add gtimer frq set and stack align * [libcpu/aarch64] add gicv3 support and bsp/rockchip/rk3568
2022-03-28[libcpu/arm/cortex-m33]fix syscall_iar.S compiler error (#5719)ACM32_MCU
* 1. 新增了i2c/spi/rtc/crypto等驱动;2. 删除了部分文件中的未使用到的头文件包含; 3. 修改keil编译时pm文件atoi的头文件stdlib未包含的警告 * 修改文件格式 * BSP 1. 修改f4系列bsp的readme文件与工程文件 2. 修改f0系列源文件的版权信息、删除目前没有的库文件。 3. 其他 * 修改IAR环境下arm cortex-m33内核的syscall_iar.S文件编译错误 * 还原.gitignore文件 Co-authored-by: aisino2200 <[email protected]>
2022-03-12Merge remote-tracking branch 'rtt_gitee/gitee_master'rtthread-bot
2022-03-08优化bsp/simulator自动初始化 (#5634)张世争
2022-03-07[libcpu/aarch64] add gtimer frq set and stack align (#5642)GUI
* [libcpu/aarch64] add smp support * [libcpu/aarch64] rt_hw_trap_irq get irq instead of iar when using gicv2 * [libcpu/aarch64] disable irq/fiq when switch thread * [libcpu/aarch64] add gtimer frq set and stack align
2022-02-22update libcpu/mips/gs232/gs232.h:clickcheck
更正了看门狗的寄存器地址
2022-02-21[libcpu/aarch64] disable irq/fiq when switch thread (#5605)GUI
* [libcpu/aarch64] add smp support * [libcpu/aarch64] rt_hw_trap_irq get irq instead of iar when using gicv2 * [libcpu/aarch64] disable irq/fiq when switch thread
2022-02-17[libcpu/aarch64] rt_hw_trap_irq get irq instead of iar when using gicv2 (#5601)GUI
* [libcpu/aarch64] add smp support * [libcpu/aarch64] rt_hw_trap_irq get irq instead of iar when using gicv2
2022-01-29add new bsp tms320c6678Man, Jianting (Meco)
原始提交PR:https://gitee.com/rtthread/rt-thread/pulls/372 提交者:https://gitee.com/wei-handong ---------------------- 在TI公司C6000 DSP处理器上成功移植rt-thread操作系统;主要在libcpu/ti-dsp/c6x添加keystone架构底层代码,在bsp/ti-c6678添加bsp工程,该工程已在本人的开发板上成功运行 * 添加TMS320C6678处理器,keystone架构底层代码 * 添加支持中断栈部分代码,修改格式 * 修改汇编rt_hw_context_switch_to处关于时间槽的使用;修改格式 * 修改使用C语言构建任务栈帧,清除fls和ffs对<c6x.h>文件的依赖 * 修改bsp tms320c6678工程,并测试 * 删除依赖TI的KeyStone_common.c文件 * 添加编译说明 * update bsp/ti-tms320c6678/README.md. * format code Co-authored-by: Huang bo <[email protected]> Co-authored-by: hdwei <[email protected]> Co-authored-by: bernard <[email protected]> Co-authored-by: rtthread-bot <[email protected]> Co-authored-by: Meco Man <[email protected]>
2022-01-25[Kconfig][libcpu] 增加ARCH_CPU_BIG_ENDIAN (#5547)Man, Jianting (Meco)
* [cpu] 增加ARCH_CPU_BIG_ENDIAN - 之前RT_USING_BIG_ENDIAN的命名并不合理,予以替换为ARCH_CPU_BIG_ENDIAN - 删除一处多余的ARCH_CPU_64BIT - 整理了libcpu/Kconfig的格式 * [libcpu][Kconfig] Cortex-M4&7 select ARCH_ARM_CORTEX_FPU * revert last commit
2022-01-20[asm] 解决tab和空格混用的问题Meco Man
2022-01-14Merge pull request #5345 from jiladahe1997/masterBernard Xiong
[bugfix] libcpu/arm/cortex-m/context_gcc: 修复thumb指令集汇编语法错误
2022-01-08[libcpu/aarch64] add smp supportGuEe-GUI
2021-12-29[armclang] 使用__clang__代替__CLANG_ARMMeco Man
2021-12-30[libc]rename group nameMeco Man
2021-12-22Revert "add clang-arm support."Man, Jianting (Meco)
This reverts commit a5f6fdc780d55f2bf2a1624815879e15c51082b5.
2021-12-22add clang-arm support.guozhanxin