* [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
HPMicro HPM6300EVK BSP(Board Support Package) Introduction
中文页 |
Introduction
This document provides brief introduction of the BSP (board support package) for the HPM6300EVK development board.
The document consists of the following parts:
- HPM6300EVK Board Resources Introduction
- Quickly Getting Started
- Refreences
By reading the Quickly Get Started section developers can quickly get their hands on this BSP and run RT-Thread on the board. More advanced features will be introduced in the Advanced Features section to help developers take advantage of RT-Thread to drive more on-board resources.
Board Resources Introduction
HPM6300EVK is a development board based on the RISC-V core launched by HPMicro, with rich on-board resources and on-chip resources for motor control, etc.

Peripheral Condition
Each peripheral supporting condition for this BSP is as follows:
| On-board Peripherals | Support | Note |
|---|---|---|
| USB | √ | |
| QSPI Flash | √ | |
| Ethernet | √ | Supported by RT-Thread Industry IO |
| GPIO | √ | |
| SPI | √ | |
| I2C | √ | |
| SDIO | √ | |
| RTC | √ | |
| PWM | √ | |
| On-Board Debugger | √ | ft2232 |
Execution Instruction
Quickly Getting Started
The BSP support being build via the 'scons' command, below is the steps of compiling the example via the 'scons' command
Parpare Environment
- Step 1: Prepare RT-Thread ENV
- Step 2: Prepare toolcahin
- Download the package and extract it into a specified directory, for example:
C:\DevTools\riscv32-gnu-toolchain
- Download the package and extract it into a specified directory, for example:
- Step 3: Set environment variable
RTT_RISCV_TOOLCHAINto<TOOLCHAIN_DIR>\bin- For example:
C:\DevTools\riscv32-gnu-toolchain\bin
- For example:
- Step 4: Prepare OpenOCD
- Download and extract it to specified directory, for example:
C:\DevTools\openocd-hpmicro - Add
OpenOCDenvironment variableOPENOCD_HPMICROto<OPENOCD_HPMICRO_DIR>\bin- For example:
C:\DevTools\openocd-hpmicro\bin
- For example:
- Download and extract it to specified directory, for example:
Configure and Build project
Open RT-Thread ENV command-line, and change directory to this BSP directory, then users can:
- Configure the project via
menuconfiginRT-Thread ENV - Build the project using
scons -jN,Nequals to the number of CPU cores - Clean the project using
scons -c
Hardware Connection
- Switch BOOT pin to 2'b00
- Connect the
PWR_DEBUGport to PC via TYPE-C cable
Dowload / Debug
-
Users can download the project via the below command:
%OPENOCD_HPMICRO%\openocd.exe -f boards\debug_scripts\probes\ft2232.cfg -f boards\debug_scripts\soc\hpm6360.cfg -f boards\debug_scripts\boards\hpm6300evk.cfg -c "init; halt; flash write_image erase rtthread.elf; reset; shutdown" -
Users can debug the project via the below command:
- Connect debugger via
OpenOCD:
- Connect debugger via
%OPENOCD_HPMICRO%\openocd.exe -f boards\debug_scripts\probes\ft2232.cfg -f boards\debug_scripts\soc\hpm6360.cfg -f boards\debug_scripts\boards\hpm6300evk.cfg
- Start Debugger via
GDB:
%RTT_EXEC_PATH%\riscv32-unknown-elf-gdb.exe rtthread.elf
- In the
gdb shell, type the following commands:
load
c
Running Results
Once the project is successfully downloaded, the system runs automatically. The LED on the board will flash periodically.
Connect the serial port of the board to the PC, communicate with it via a serial terminal tool(115200-8-1-N). Reset the board and the startup information of RT-Thread will be observed:
\ | /
- RT - Thread Operating System
/ | \ 5.0.1 build Aug 16 2023 18:18:18
2006 - 2023 Copyright by RT-Thread team