You need to sign in or sign up before continuing.

RISC-V boot deep dive (Boot FLOW from 0 to Linux Kernel)

Make RISC-V boot like rest of industry U-boot for embedded, UEFI for consumer and servers

  • Deep dive on RISC-V boot flow started from openSBI.

    • Mode switching (U/S/H/M), SBI calls, platform ops .. , etc.
    • Embedded boot sprawl: U-boot vs edk2/uEFI with GRUB2
  • The latest code base of OpenSBI follow-up.

  • EDKII (edk2) support status on RISC-V: uEFI support to run GRUB2 or load kernel directly as EFI STUB add-emoji

  • Trace RISC-V’s efistub implementation in LINUX.

  • RISC-V ISA study.

Resources

Linux kernel EFI boot Stub

Soft RISC-V by QEMU

Berry inspiration

Embedded Linux Boot Process

Looking for hackers with the skills:

risc-v u-boot grub2 linux

This project is part of:

Hack Week 20

Activity

  • over 1 year ago: nika100s joined this project.
  • about 2 years ago: Aalaalalaaa left this project.
  • about 2 years ago: Aalaalalaaa joined this project.
  • over 4 years ago: Natiku started this project.
  • over 4 years ago: Natiku left this project.
  • over 4 years ago: Natiku added keyword "risc-v" to this project.
  • over 4 years ago: Natiku added keyword "u-boot" to this project.
  • over 4 years ago: Natiku added keyword "grub2" to this project.
  • over 4 years ago: Natiku added keyword "linux" to this project.
  • over 4 years ago: Natiku started this project.
  • over 4 years ago: Natiku left this project.
  • over 4 years ago: iivanov liked this project.
  • over 4 years ago: Natiku started this project.
  • over 4 years ago: Natiku liked this project.
  • over 4 years ago: clin originated this project.

  • Comments

    Be the first to comment!

    Similar Projects

    pudc - A PID 1 process that barks to the internet by mssola

    Description

    As a fun exercise in order to dig deeper into the Linux kernel, its interfaces, the RISC-V architecture, and all the dragons in between; I'm building a blog site cooked like this:

    • The backend is written in a mixture of C and RISC-V assembly.
    • The backend is actually PID1 (for real, not within a container).
    • We poll and parse incoming HTTP requests ourselves.
    • The frontend is a mere HTML page with htmx.

    The project is meant to be Linux-specific, so I'm going to use io_uring, pidfs, namespaces, and Linux-specific features in order to drive all of this.

    I'm open for suggestions and so on, but this is meant to be a solo project, as this is more of a learning exercise for me than anything else.

    Goals

    • Have a better understanding of different Linux features from user space down to the kernel internals.
    • Most importantly: have fun.

    Resources


    pudc - A PID 1 process that barks to the internet by mssola

    Description

    As a fun exercise in order to dig deeper into the Linux kernel, its interfaces, the RISC-V architecture, and all the dragons in between; I'm building a blog site cooked like this:

    • The backend is written in a mixture of C and RISC-V assembly.
    • The backend is actually PID1 (for real, not within a container).
    • We poll and parse incoming HTTP requests ourselves.
    • The frontend is a mere HTML page with htmx.

    The project is meant to be Linux-specific, so I'm going to use io_uring, pidfs, namespaces, and Linux-specific features in order to drive all of this.

    I'm open for suggestions and so on, but this is meant to be a solo project, as this is more of a learning exercise for me than anything else.

    Goals

    • Have a better understanding of different Linux features from user space down to the kernel internals.
    • Most importantly: have fun.

    Resources