On Wed, Apr 20, 2016 at 10:21 AM Jonathan Neuschäfer j.neuschaefer@gmx.net wrote:
I can get coreboot to boot in QEMU up to the "payload not loaded" message with a few patches:
- I patched QEMU to not trap unaligned memory accesses
we're supposed to handle these traps, so something is broken. I would only trust spike however.
- I patched coreboot to use the HTIF console instead of a 8250 UART memory-mapped at 0x3f8.
I suspect htis means the qemu or qemu target is still out of date, but who knows.
- Both the write_msr(tohost, ...) interface and the memory-mapped HTIF at 0xFFFFFFFFF0000000 work.
good.
- I patched QEMU to dump characters written to the HTIF console, because I couldn't figure out how to use it properly.
Coreboot fails to boot Linux (configured vmlinux as an ELF payload, because I couldn't find a compressed kernel):
CBFS: Locating 'fallback/payload' CBFS: Found @ offset cbc0 size 136043 Loading segment from rom address 0x000000000002ccf8 code (compression=1) New segment dstaddr 0x0 memsize 0x35abe0 srcaddr 0x2cd30 filesize 0x13600b Loading segment from rom address 0x000000000002cd14 Entry Point 0xffffffff80000000 SELF Payload doesn't target RAM: Failed Segment: 0x0, 3517408 bytes 0. 0000000000200000-0000000001fdafff: RAM
- 0000000001fdb000-0000000001ffefff: CONFIGURATION TABLES
- 0000000001fff000-00000000021fffff: RAM
Payload not loaded.
we still only do uncompressed kernels. There are other problems with riscv right now, so I'm holding off doing anything until they are done redoing parts of the architecture spec.
ron