summaryrefslogtreecommitdiff
path: root/bsp/hpmicro
AgeCommit message (Collapse)Author
6 days[bsp][hpmicro] upgrade hpm_sdk to v1.13.0 and add hpm5100evk supportFan YANG
Sync the HPMicro BSPs with hpm_sdk v1.13.0 and add the HPM5100EVK (HPM5151) board. - add the hpm5100evk BSP (board/startup/applications/Kconfig/docs) and register it in .github/ALL_BSP_COMPILE.json, bsp/README.md and the HPMicro READMEs - re-sync the 11 existing boards (board/startup/debug scripts/linker scripts/applications) with hpm_sdk v1.13.0, keeping the RT-Thread specific parts: clock_time based drv_timer, CXX wired into the scons environment, SConscript outputs under build/, named Kconfig choices, rt_hw_us_delay in board_delay_*, board local codec files - sync the shared driver layer with hpm_sdk v1.13.0 (GPTMRv2/PTMR, PUART, soft I2C/SPI and the remaining peripheral driver updates) - select the hpm_sdk v1.13.0 online package (PKG_USING_HPM_SDK_V113) - use -Og instead of -O0 for the debug builds and print floats with the RT-Thread klibc implementation instead of newlib nano - initialize the RT-Thread heap before the SDK console init: the SDK console_init() calls setvbuf(), which allocates through the C library malloc() and tripped RT_ASSERT() in rt_smem_alloc() on the boards built with RT_USING_DEBUG - keep only ram_rtt.ld/flash_rtt.ld per board, align the DLM origin to 4KB on hpm5300evk/hpm5301evklite (the unaligned origin made the linker emit a file backed PT_LOAD for the RAM area, which broke "program rtthread.elf"), and anchor the generated .bin at the flash base address 0x80000000 - sync the hpm6750evk openocd debug scripts with the new style used by the other boards (hpm_common.cfg/hpm_reset.cfg with arp_halt) - keep the upstream synced board/startup/libraries trees of bsp/hpmicro out of the changed-file cppcheck run (same policy as bsp/hpmicro/.clang-format-ignore): the check runs without the hpm_sdk include paths, so it reports ATTR_PLACE_AT and the linker script symbol arithmetic in c_startup() as errors - give the hpmicro boards in the changed-file scons trigger list the RV32 toolchain they need (RISC-V-GCC-RV32) and add the matching installation step to that workflow: the entries used sourcery-arm, which only provides the ARM toolchain, so those legs could not find riscv32-unknown-elf-gcc - keep hpm5100evk's ram_rtt.ld identical to the hpm_sdk v1.13.0 reference: the .fast_ram sections belong in DLM there (the DLM has enough headroom), and that also makes its RAM and flash layouts agree - skip the dependency pre-check when cleaning (scons -c): it runs from DoBuilding() unconditionally, so a clean request with packages/ not fetched yet was aborted with exit code 1 instead of cleaning - make the manual scons trigger workflow runnable: it aborted while still downloading actions because actions/upload-artifact@v3 is deprecated, and scons was not on PATH because ~/.env/env.sh was never sourced. Install tools/requirements.txt and source the Env PATH script in the build step, and use @main action versions, as bsp_buildings.yml does - start the LED demo thread only when rt_thread_create() succeeded Tested: - 12 boards x {ram_debug, ram_release, flash_debug, flash_release}: 48/48 clean builds - flash boot + msh on hpm5100evk, hpm5300evk, hpm5e00evk, hpm6200evk, hpm6300evk, hpm6750evk, hpm6750evk2, hpm6750evkmini, hpm6800evk, hpm6e00evk, hpm6p00evk (list device/timer, ps, free, reset, rt_kprintf float formatting) - re-ran .github/workflows/manual_trigger_scons_except_STM32_all.yml with the matrix reduced to the three hpmicro rows: all three legs build and scons --dist succeeds with no local workarounds
2026-09-07[bsp][hpmicro] wire CXX/CXXFLAGS from rtconfig into scons Environmentkaidegit
Without CXX = rtconfig.CXX the scons Environment falls back to the default host 'g++', and CXXFLAGS stays an empty CLVar, so the C++ group flags appended by DefineGroup end up as a single unquoted argument and the build fails as soon as RT_USING_CPLUSPLUS is on: g++: error: -fno-exceptions -fno-rtti ... -Wl,--gc-sections: linker input file not found: No such file or directory Found by the CI C++ ctor (.init_array) check.
2026-07-22[bsp] Place SConscript outputs under build directoriesCYFS
2026-07-20fix: name anonymous Kconfig choicesCYFS
2026-07-08bsp: hpmicro: clear full ENET buffersOld-Ding
rt_hw_eth_init() clears ENET descriptor tables using element size times count, but the RX/TX data buffers used sizeof(size), which only covers the width of the size field. Use the configured buffer count and size so the whole RX/TX buffer areas are initialized before handing them to the ENET descriptor configuration. Make the Cppcheck intent explicit for the HPM placement macros and the LPI_CSR register read so the touched file passes static analysis. Signed-off-by: Old-Ding <[email protected]>
2026-06-25[bsp] reduce SConscript absolute path usageCYFS
2026-06-02Fix BSP dist packagingCYFS
2026-05-11fix(finsh): validate backtrace thread addressAFWEF_147
2026-05-09[bsp/hpm6750evk]Remove cherryusb_port.c from SConscriptRbb666
2026-05-08Update cherryusb to v1.6.1#11362sakumisu
2026-05-08[format][version]: synchronize bsp version configurationCYFS
2026-01-31[components][clock_time] Refactor time subsystem around clock_time (#11111)Bernard Xiong
* [components][clock_time] Refactor time subsystem around clock_time Introduce the clock_time core with clock source/event separation, high-resolution scheduling, and boot-time helpers, plus clock_timer adapters for timer peripherals. Remove legacy ktime/cputime/hwtimer implementations and migrate arch and BSP time paths to the new subsystem while keeping POSIX time integration functional. Update drivers, Kconfig/SConscript wiring, documentation, and tests; add clock_time overview docs and align naming to clock_boottime/clock_hrtimer/clock_timer. * [components][clock_time] Use BSP-provided clock timer frequency on riscv64 * [risc-v] Use runtime clock timer frequency for tick and delays * [bsp] Add clock timer frequency hooks for riscv64 boards * [bsp] Update Renesas RA driver doc clock_timer link * [bsp] Sync zynqmp-r5-axu4ev rtconfig after config refresh * [bsp][rk3500] Update rk3500 clock configuration * [bsp][hpmicro] Add rt_hw_us_delay hook and update board delays * [bsp][stm32l496-st-nucleo] enable clock_time for hwtimer sample in ci * [bsp][hpmicro] Fix rtconfig include scope for hpm6750evk Move rtconfig.h include outside the ENET_MULTIPLE_PORT guard for hpm6750evk and hpm6750evk2 so configuration macros are available regardless of ENET settings. * [bsp][raspi3] select clock time for systimer * [bsp][hpm5300evk] Trim trailing blank line * [bsp][hpm5301evklite] Trim trailing blank line * [bsp][hpm5e00evk] Trim trailing blank line * [bsp][hpm6200evk] Trim trailing blank line * [bsp][hpm6300evk] Trim trailing blank line * [bsp][hpm6750evk] Trim trailing blank line * [bsp][hpm6750evk2] Trim trailing blank line * [bsp][hpm6750evkmini] Trim trailing blank line * [bsp][hpm6800evk] Trim trailing blank line * [bsp][hpm6e00evk] Trim trailing blank line * [bsp][nxp] switch lpc178x to gcc and remove mcx timer source * [bsp][stm32] fix the CONFIG_RT_USING_CLOCK_TIME issue. * [docs][clock_time] add clock time documentation * [docs][clock_time] Update clock time subsystem documentation - Update device driver index to use correct page reference - Clarify upper layer responsibilities in architecture overview - Update README to describe POSIX/libc, Soft RTC, and device driver usage - Refine architecture diagram with improved layout and color scheme - Remove obsolete clock_timer.md file * [kernel][utest] Trim trailing space * [clock_time] Fix hrtimer wrap handling * [clock_time] fix the static rt_inline issue * [clock_time] fix the rt_clock_hrtimer_control result issue
2025-12-26[sdio][dm] update for DM (#11078)GUI
* [sdio][dm] import Kconfig for DM Signed-off-by: GuEe-GUI <[email protected]> * [sdio] fixup IRQ and mmcsd threads' stack size default Signed-off-by: GuEe-GUI <[email protected]> * [sdio][dm] Support DM mode 1. Support features read by DM. 2. Support regulator API in drivers. 3. Support send tuning option CMD. 4. Replace `switch_uhs_voltage` by `signal_voltage_switch`. Signed-off-by: GuEe-GUI <[email protected]> * [dm][sdhci] Cleanup the SDHCI Signed-off-by: GuEe-GUI <[email protected]> * [sdio][dm] add new SDIO/SDHCI drivers 1. SDHCI support on PCI bus 2. Synopsys DesignWare MMC Family(MMIO/PCI) Signed-off-by: GuEe-GUI <[email protected]> --------- Signed-off-by: GuEe-GUI <[email protected]>
2025-11-30[bsp][hpm]:fix scons --distCYFS
2025-10-28feat:clang format ignore migrationache
2025-10-27Fixed: ci build errors for hpm* bsp. (#10854)R b b666
2025-10-23[format][version]: synchronize bsp version configurationkurisaw
2025-09-23[bsp][hpmicro] upgrade to bsp v1.10.0, add hpm6p00evk and hpm5e00evk supportFan YANG
- upgraded bsp to v1.10.0 - moved hpm_sdk to rt-thread package - added support for hpm6p00evk and hpm5e00evk Signed-off-by: Fan YANG <[email protected]>
2025-06-20update(cherryusb): update to v1.5.0 (#10409)sakumisu
2025-06-17format: update all series of BSP configuration items (#10406)沐攸
2025-05-16[drivers][serial_v2]允许阻塞接收超过rx缓冲区大小的数据、增 ↵ryancw
加超时时间、flush、获取缓冲区数据长度命令、数据溢出逻辑修复、稳定性细节优化、添加更多serial_v2测试用例 [components][serial_v2] 优化txflush逻辑、对tx的activated做中断保护 [components][at] at_client适配新版serial_v2 [components][at] at_server适配新版serial_v2 [components][serial_v2] 测试用例增加循环调用,format测试用例 [components][serial_v2] poll模式判断逻辑错误 [components][serial_v2] 测试用例去掉一些非必要延时 [components][serial_v2] 测试例程使用menuconfig进行配置,更新readme [components][at_client] at_client_getchar返回值错误、at_client解析线程优先级错误设置 [components][at] 错误码应该返回负值 [components][serial_v2] TCFLSH和FIONREAD完善、control函数增加错误返回值 [components][serial_v2] RT_SERIAL_CTRL_GET_RX_DATA_LEN更改为RT_SERIAL_CTRL_GET_UNREAD_BYTES_COUNT [utest][serial_v2] TC_UART_SEND_TIMES替换为RT_SERIAL_TC_SEND_ITERATIONS [components][serial_v2] FIONREAD参数应该是无符号类型 [utest][serial_v2] 完善测试用例 [components][serial_v2] 避免使用三目运算符 [components][serial_v2] 使用clang-format格式化代码 [components][serial_v2] 添加get超时时间命令 [components][serial_v2] 完善posix接口 [components][serial_v2] 阻塞接口添加阻塞时间为0时的处理逻辑、优化RX阻塞接收逻辑 [components][serial_v2] 设置超时时间命令的参数改为指针形式 [components][serial_v2] nbuf发送添加超时时间为0时的逻辑 [components][serial_v2] 完善添加测试用例 [utest][serial_v2] 修复依赖关系 [components][serial_v2] 非阻塞模式下tx_flush错误修复 [components][serial_v2] activated使用原子API [components][serial_v2] 优化DMA逻辑、没使能DMA时屏蔽DMA逻辑节约资源 [components][serial_v2] 提供写满时丢弃新数据和覆盖旧数据策略,写满丢弃策略效率更高 [components][serial_v2] 部分平台适配写满时两种策略功能 [components][serial_v2] DMA模式暂不支持丢弃新数据策略 [utest][serial_v2] 优化测试代码 [components][serial_v2] DMA模式下使用乒乓缓冲、DMA模式支持丢弃新数据策略 [utest][serial_v2] 适配DMA乒乓缓冲 [bsp][serial_v2] 部分bsp适配DMA下乒乓缓冲 [components][serial_v2] 使用spinlock替换中断,对部分结构体变量使用原子操作 [utest][serial_v2] 更新测试用例 [components][at] 适配new serialv2不再判断RTT版本号 [components][at] 删除多余的中文注释 [utest][serial_v2] 添加交叉echo示例,qemu环境下专用 [bsp][qemu] 适配串口v2并开启fifo [components][at] 修复合并导致的错误 [bsp][n32] 适配serial_v2,没有经过测试 [components][serial_v2] 格式化代码 [utest][serial_v2] 删除无意义的打印
2025-04-13[bsp/hpm5300evk]: 修复readme中的描述问题 (#10187)Supper Thomas
1.bsp中描述路径boards不存在,只有board,并且路径中会包含openocd,把openocd路径去掉 2. 运行openocd发现cmsis-dap.cfg异常,使用ft2232.cfg可以正常烧入,修改readme 3. 添加download.bat脚本,方便下载
2025-02-21[bsp][hpmicro] fix 'scons -dist' issue in the hpmicro bsps. (#10013)Fan Yang
- added tools and dist_handle function Signed-off-by: Fan YANG <[email protected]>
2025-01-08[bsp][hpmicro] fix the alignement check logic and the cache-maintenance logicFan YANG
- corrected the alignement check logic - optimized the cache maintenance logic Signed-off-by: Fan YANG <[email protected]>
2024-11-24[fal] using rt-thread raw API instead of std APIMeco Man
2024-09-10[bsp][hpmicro]添加utest相关段信息,修复scons编译问题Rbb666
2024-09-02update(cherryusb): add config for hpm6750 usbdev and usbhostsakumisu
2024-08-26[bsp][hpmicro] add missing fence apisFan YANG
- added missing fence apis Signed-off-by: Fan YANG <[email protected]>
2024-08-26[bsp][hpmicro][hpm6e00evk] add hpm6e00evk supportFan YANG
- added hpm6e00evk support Signed-off-by: Fan YANG <[email protected]>
2024-08-26[bsp][hpmicro] upgrade hpm_sdk to v1.6.0Fan YANG
- upgraded hpm_sdk to v1.6.0 Signed-off-by: Fan YANG <[email protected]>
2024-08-23[device] add dev_ prefix for file namesCXSforHPU
2024-07-15Bugfix/fix weak handle trap in riscv common crash rv64 trap handling (#9189)Fan Yang
* [bsp][hpmicro] add weak handle_trap implementation - added weak handle_trap implementation Signed-off-by: Fan YANG <[email protected]> * [libcpu][risc-v][common] remove weak handle_trap function - removed weak handle_trap function from trap_common.c Signed-off-by: Fan YANG <[email protected]> --------- Signed-off-by: Fan YANG <[email protected]>
2024-06-30Update cherryusb to v1.3.1 (#9122)sakumisu
* fix(hpmicro): remove duplicate usb variable * update(cherryusb): update to v1.3.1
2024-06-20bsp中option env语句替换为新语句,并同步更新了source "$xxx"语句latercomer
2024-06-04[bsp][hpmicro] remove invalid reference in board KConfigFan YANG
- removed invalid reference in board KConfig Signed-off-by: Fan YANG <[email protected]>
2024-06-03[bsp][hpmicro] add HPM5300EVK,HPM5301EVKLITE and HPM6800EVK support & update ↵Fan YANG
hpm_sdk - added new boards: hpm5300evk, hpm5301evklite and hpm6800evk - upgaded hpm_sdk - driver updates and bugfixes - add hpmicro BSPs to CI Signed-off-by: Fan YANG <[email protected]>
2024-06-02refactor(drivers/usb):replace rtt usb stack with cherryusb (#8799)sakumisu
2024-04-30Fix compiling eror in hpmicro bsp (#8889)Fan Yang
- added 'DEVICE' to rtconfig.py - fixed compiling error cuased by change in interrupt_gcc.S Signed-off-by: Fan YANG <[email protected]>
2024-03-24[bsp] format drivers codeMeco Man
2024-03-24[bsp][drv_gpio] fix the error code return when pin number is illegalMeco Man
2024-03-23[pin] pin_read/write rt_uint8_t to rt_ssize_tkk
2024-03-21[bsp] update projectsMeco Man
2023-10-08[project] update mdk/iar project and config.guozhanxin
2023-08-16[bsp][hpmicro] Update libraries, add new BSPsFan YANG
- Updated hpm_sdk in libraries - Updated rt-thread driver adapter - Updated bsp for hpm6750evkmini - Updated bsp for hpm6750evk - Added bsp for hpm6750evk2 - Added bsp for hpm6300evk - Added bsp for hpm6200evk Signed-off-by: Fan YANG <[email protected]>
2023-05-08[bsp] fix mismatched function types in rt_pin_ops for all drv_gpio.c (#7457)Placebo27
2023-04-17[HUST CSE] Fix many abnormal symbols in annotations and format code7YZ7
2023-04-14【修改】hpm_clock_drv.c文件中if判断中逻辑错误 (#7235)DmrS5
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-03-20[errno code][-RT_ERROR] fix that use RT_ERROR without -Meco Man