cmvr_head/packages/erpc-1.14.0/zephyr
2025-12-30 15:44:41 +08:00
..
CMakeLists.txt feat:open I cache and FPU 2025-12-30 15:44:41 +08:00
Kconfig feat:open I cache and FPU 2025-12-30 15:44:41 +08:00
module.yml feat:open I cache and FPU 2025-12-30 15:44:41 +08:00
readme.md feat:open I cache and FPU 2025-12-30 15:44:41 +08:00

eRPC Zephyr support

Adding eRPC to Zephyr as module

To include eRPC Zephyr, update Zephyr's west.yml:

  projects:
    - name: erpc
      revision: <revision with Zephyr support>
      url: <erpc repository>
      path: modules/lib/erpc

Then run:

west update erpc

eRPC module files

  • erpc/zephyr/ - This directory holds all files required for Zephyr module
  • erpc/zephyr/module.yml - This file defines module name and Cmake and Kconfig location
  • erpc/zephyr/CMakeList.txt - Defines module's includes and source files base on Kconfig
  • erpc/zephyr/Kconfig - Defines eRPC module configuration

Kconfig

Kconfig options:

  • CONFIG_ERPC - enable eRPC support
  • CONFIG_ERPC_TRANSPORT_UART - enable UART transport layer
  • CONFIG_ERPC_TRANSPORT_RPMSG_LITE - enable RPMSG-Lite transport layer
    • To use RPMSG-Lite transport layer, RPMSG-Lite module is required.
    • RPMSG-Lite module has to be included in Zephyr
    • Enable RPMSG-Lite module by this options:
      • CONFIG_RPMSGLITE=y
      • CONFIG_RPMSGLITE_QUEUE=y
      • CONFIG_RPMSGLITE_NS=y
  • CONFIG_ERPC_ARBITRATED_CLIENT - enable arbitrated client

CMakeList

CMakeLists.txt defines eRPC as Zephyr library. Includes all required directories and source files for Zephyr environment. Optionaly import uart/rpmsg-lite/ns source files.

Samples

Samples are located in examples/zephyr/. We can build the examples using west tool:

Matrix multiply with RPMSG-Lite transport

cd path/to/zephyrproject
west build --sysbuild -b <supported board> modules/lib/erpc/examples/zephyr/matrix_multiply_rpmsglite/ -p
west flash

Matrix multiply with UART transport

cd path/to/zephyrproject
west build -b <board> modules/lib/erpc/examples/zephyr/matrix_multiply_uart/ -p
west flash