[PATCH v2 0/3] bsps/riscv: Add kendrytek210 riscv BSP variant

Alan Cudmore alan.cudmore at gmail.com
Thu Mar 16 02:04:09 UTC 2023


Version 2 patch updates: Separated the device tree source and encoded
device tree blob into a separate patch, added the license text to
k210.h, eliminated whitespace warnings, and eliminated dead code in 
the conditional compilation structure for the core_get_frequency
function in start/bspstart.c.

This patch set adds the riscv/kendrytek210 BSP variant to support the
Kendryte K210 Dual Core RISC-V SoC. The BSP runs on the renode.io
simulator, the Sipeed MAiX BiT and MAiXDuino boards, and would likely
run on other boards. RTEMS binaries can be flashed to the boards using
the kflash python utility available through the pip command. Currently
the BSP supports the console UART which is shared with the frdme310arty,
an interrupt controller, and timer. The included device tree source
just covers a minimal set of peripherals. The device tree can be
expanded as additional device support is addded.
Manufacturer, board links, and other information can be found in
ticket #4876.

Documentation that describes how to build and run the BSP on the
boards and simulator has been prepared and will be submitted after the bsp
is merged.

The full testsuite has not been run on this BSP, but I run a
subset of the of testsuite on the renode.io robot test framework.

Alan Cudmore (3):
  bsps/riscv: add device tree source and device tree blob header for
    k210 bsp variant
  bsps/riscv: add riscv/kendrytek210 BSP variant source changes
  spec: add riscv kendrytek210 variant build options

 bsps/riscv/riscv/config/kendrytek210.cfg      |   9 +
 bsps/riscv/riscv/console/console-config.c     |  10 +-
 bsps/riscv/riscv/console/fe310-uart.c         |   2 +-
 bsps/riscv/riscv/dts/kendryte-k210.dts        | 216 ++++++++++++
 bsps/riscv/riscv/include/bsp.h                |   4 +
 bsps/riscv/riscv/include/bsp/k210.h           | 105 ++++++
 .../riscv/include/bsp/kendryte-k210-dtb.h     | 315 ++++++++++++++++++
 bsps/riscv/riscv/include/bsp/riscv.h          |   4 +
 bsps/riscv/riscv/start/bspstart.c             |  43 +++
 spec/build/bsps/optdtb.yml                    |   4 +-
 spec/build/bsps/optdtbheaderpath.yml          |   2 +
 spec/build/bsps/optfdtuboot.yml               |   3 +
 spec/build/bsps/riscv/optramsize.yml          |   2 +
 spec/build/bsps/riscv/riscv/abi.yml           |   1 +
 .../bsps/riscv/riscv/bspkendrtyek210.yml      |  19 ++
 spec/build/bsps/riscv/riscv/grp.yml           |   4 +
 spec/build/bsps/riscv/riscv/obj.yml           |   1 +
 .../bsps/riscv/riscv/optkendrytek210.yml      |  18 +
 spec/build/bsps/riscv/riscv/optns16550max.yml |   4 +-
 spec/build/bsps/riscv/riscv/optsifiveuart.yml |  20 ++
 spec/build/cpukit/optsmp.yml                  |   1 +
 21 files changed, 779 insertions(+), 8 deletions(-)
 create mode 100644 bsps/riscv/riscv/config/kendrytek210.cfg
 create mode 100644 bsps/riscv/riscv/dts/kendryte-k210.dts
 create mode 100644 bsps/riscv/riscv/include/bsp/k210.h
 create mode 100644 bsps/riscv/riscv/include/bsp/kendryte-k210-dtb.h
 create mode 100644 spec/build/bsps/riscv/riscv/bspkendrtyek210.yml
 create mode 100644 spec/build/bsps/riscv/riscv/optkendrytek210.yml
 create mode 100644 spec/build/bsps/riscv/riscv/optsifiveuart.yml

-- 
2.25.1



More information about the devel mailing list