HPMicro's Zephyr RTOS Adaptation for RISC-V MCUs
Features • Boards • Quick Start • Docs • License
Zephyr SDK Glue is a manifest repository developed by HPMicro based on the Zephyr project. This repository contains all source program files adapted by HPMicro for its own MCUs in the Zephyr project. Together with HPMicro's official software development kit (SDK), it forms the HPMicro chip development suite for the Zephyr project.
This repository is bound to Zephyr v3.7.0 (LTS) and undergoes related iterations on this version basis.
| Feature | Description |
|---|---|
| Independent Manifest | Uses its own manifest file, fetching all source code starting from the Glue repository |
| Direct HPM_SDK Integration | No Zephyr HAL repository required, developed directly based on HPM_SDK |
| LTS Version Binding | Bound to Zephyr v3.7.0 LTS for long-term stability |
| Docker Support | Ready-to-use Docker development environment |
| MCUboot Support | Bootloader support for secure firmware updates |
| Board | SoC | Features |
|---|---|---|
| hpm6200evk | HPM6280 |
|
| hpm6750evk2 | HPM6750 |
|
| hpm6800evk | HPM6880 |
|
| hpm6e00evk | HPM6E80 |
|
| Peripheral | Driver | Description |
|---|---|---|
| ADC | adc |
ADC12 and ADC16 support |
| CAN | can |
MCAN controller support |
| Clock | clock_control |
Clock management |
| Display | display |
RGB, MIPI DSI, LVDS display support |
| Video | video |
DVP and MIPI CSI camera support |
| DMA | dma |
DMA controller support |
| Ethernet | ethernet |
Ethernet MAC support |
| GPIO | gpio |
GPIO controller support |
| I2C | i2c |
I2C controller support |
| IOC | pinctrl |
Pin multiplexing control |
| PWM | pwm |
PWM and PWMv2 support |
| SDHC | sdhc |
SD/MMC host controller support |
| UART | serial |
UART support |
| SPI | spi |
SPI controller support |
| USB | usb |
USB device and host (UDC/CherryUSB) |
- Zephyr SDK 0.16.5+
- Python 3.8+
- CMake 3.20+
- Ninja build system
# Initialize workspace
west init -m https://github.com/hpmicro/sdk_glue.git zephyr_hpmicro
cd zephyr_hpmicro
west update
west supply
# Build hello_world example
west build -p always -b hpm6750evk2 zephyr/samples/hello_world
# Flash to board
west flashcmake -GNinja -B build -DBOARD=hpm6750evk2 zephyr/samples/hello_world
ninja -C buildUse
-S ${snippet}to specify hardware configuration snippets for specific samples.
sdk_glue/
├── 📂 boards/ # Board and shield support files
├── 📂 cmake/ # CMake extensions
├── 📂 docs/ # Documentation
├── 📂 drivers/ # Zephyr standard driver files
├── 📂 dts/ # Devicetree files
├── 📂 include/ # Header files
├── 📂 modules/ # Additional modules (CherryUSB, etc.)
├── 📂 samples/ # Sample applications
├── 📂 snippets/ # Hardware configuration snippets
├── 📂 soc/ # SoC specific source
└── 📂 zephyr/ # Zephyr build definitions
| Document | Description |
|---|---|
| 📖 Linux Getting Started | Build environment setup on Linux |
| 📖 Windows Getting Started | Build environment setup on Windows |
| 🐳 Docker Getting Started | Using Docker development environment |
| 🔧 Toolchain Guide | Toolchain configuration (Zephyr SDK / ZCC) |
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.