2020/08/31

Porting embox to MAiX BiT(Google Summer of Code 2020)

Mentor: Anton Bondarev

GitHub Repository: https://github.com/embox/embox

Overview

The goal of this project is to make embox run on MAiX BiT.

Embox is a configurable RTOS, is already support RISC-V architecture but only for 32bit RISC-V. So, I wanted to get embox to work on 64bit RISC-V board such as MAiX-BiT and send proposal to embox community.

MAiX BiT is a new 64bit RISC-V board from Sipeed. MAiX BiT has Kendryte K210 SoC, it has dual-core 64bit RISC-V CPU and many features.

Result

I added 64bit RISC-V support and template for MAiX BiT. We can run emobx on MAiX BiT and control GPIO from tish(embox's shell) now.

current status:

wiki: https://github.com/embox/embox/wiki/MAiX-BiT

Merged Pull Request

Demonstration

Below is a simple demonstration of this project.

Build embox in riscv64/maixbit template and Flash to board:

$ git clone https://github.com/embox/embox
$ cd embox
$ make confloar-riscv64/maixbit
$ make
$ ./scripts/maixbit-flash.sh
$ screen /dev/ttyUSB0 115200

embox shell(tish):

embox>pin GPIO0 0 blink

Then, we can see blinking red LED on board.

Future Work

Kendryte K210 has many features such as dual-core CPU, AES accelerator and KPU I want to use these features from embox and I will keep working on this project. I think the most challenging task is support dual-core support.