A new post titled "[GSoC] Better RISC-V support, week #1" has been published on the coreboot blog. Find the full post at http://blogs.coreboot.org/blog/2016/06/01/gsoc-better-risc-v-support-week-1/

<p>Hi, I’m Jonathan Neuschäfer (jn__ on IRC) and my GSoC project for this year is to improve coreboot’s support for RISC-V platforms. <a href="https://riscv.org/">RISC-V</a> is a new instruction set architecture (ISA) that can be implemented without paying license fees and is relatively simple.</p>
<p>Coreboot has already been ported to RISC-V in 2014, and has since received a bunch of patches, but since the RISC-V Privileged ISA Specification (which defines things like interrupt handling and virtual memory) is still in flux, it has become unbootable again.</p>
<p>My first first goal last week was to run coreboot in SPIKE, the official RISC-V emulator, and get some console output. I checked out commit 419f1b5f3 (current master) of the <a href="https://github.com/riscv/riscv-tools">riscv-tools repository</a> and built SPIKE from there.</p>
<p>After I patched a few outdated instructions and worked around the fact that the RISC-V binutils port currently included in coreboot targets a newer version of the RISC-V Privileged Spec by hardcoding some Control and Status Register numbers, I finally got coreboot booting until the point where it would jump into a payload, had I specified one.</p>
<p>All patches can be found under the <a href="https://review.coreboot.org/#/q/topic:riscv+after:2016-05-26+before:2016-06-30">riscv topic on gerrit</a>.</p>
<p><strong>Plans for this week</strong></p>
<p>This week I will update my SPIKE to a version that supports the upcoming Privileged Spec 1.9, which <a href="https://groups.google.com/a/groups.riscv.org/forum/#!topic/isa-dev/-7jrvxevEIM">will be released in the next couple weeks</a>. This has the advantage that I don’t need to patch instructions because GCC encodes them differently than SPIKE decodes them. Additionally, I’ll try to get Linux to boot in SPIKE, under coreboot.</p>