Hello Dong Du,
On 12.03.2018 12:45, Dd Nirvana wrote:
Hi guys,         I am so glad to know that genode has supported RISCV from v16.02. I have already read the article(http://genode.org/documentation/articles/riscv) which introduce how genode port the RISCV.     However, I am still a little confused about how to build a runnable genode image and how to run it on riscv platform like spike. Could you give me any advices to do it?
Genode's support for RISC-V is currently very limited. For example, there is no libc or any peripheral devices. Currently, RISC-V can be tested on Genode using the spike emulator and our custom kernel, which implements support for the RISCV 1.9 privileged ISA. So, in order to test RISC-V make sure to have spike installed. You can find the version we are using here:
https://github.com/ssumpf/riscv-isa-sim https://github.com/ssumpf/riscv-fesvr
Please check out the 17.05 branches of both repositories. The fesvr (front-end server) is required by the instruction emulator and has to be build first. Please check the README.md files for build instructions.
With spike installed you want to create a Genode directory next:
<genode-src>/tool/create_builddir riscv_spike cd <genode-src>/build/risc_spike
Next you may execute the log run script:
make KERNEL=hw run/log
(make sure to have the Genode tool chain installed - http://genode.org/download/tool-chain)
This will build the log scenario and execute it within spike. The actual boot image can be found under the <genode-src>/build/riscv-spike/bbl/bbl (Berkeley Boot Loader). BBL implements the machine mode and also piggy backs the Genode image.
Regards,
Sebastian
-- Sebastian Sumpf Genode Labs
http://www.genode-labs.com · http://genode.org
Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth