Hikey is a development board with HiSilicon Kirin 620 eight-core ARM Cortex-A53 64-bit SoC. The original firmware is based on Tianocore EDK II, and I'd like to port coreboot to this board.

Challenges:

  • Learn about ARMv8 ISA, ARM TrustZone and ARM Trusted firmware
  • Find out the key initialization code in the UEFI firmware
  • Find the way to use the non-free blobs

Goal:

  • Flash the firmware to the board and use of the serial console to debug
  • Boot coreboot firmware
  • Try to boot an operating system

Looking for hackers with the skills:

coreboot uefi arm arm64

This project is part of:

Hack Week 14

Activity

  • almost 8 years ago: tonghuix liked this project.
  • over 8 years ago: mbrugger liked this project.
  • over 8 years ago: vimacs started this project.
  • over 8 years ago: vimacs added keyword "uefi" to this project.
  • over 8 years ago: vimacs added keyword "arm" to this project.
  • over 8 years ago: vimacs added keyword "arm64" to this project.
  • over 8 years ago: vimacs added keyword "coreboot" to this project.
  • over 8 years ago: a_faerber liked this project.
  • over 8 years ago: vimacs originated this project.

  • Comments

    • algraf
      over 8 years ago by algraf | Reply

      There are no non-free blobs on the HiKey IIRC. You can build ATF, EDK2, U-boot, etc all from source code.

      • vimacs
        over 8 years ago by vimacs | Reply

        I've found these blobs: - Watch Dog Driver - Flash Driver - SnpPV600 - MCU

        • a_faerber
          over 8 years ago by a_faerber | Reply

          Surely upstream U-Boot does not contain such blobs. Is there a reason you specifically want coreboot?

          • vimacs
            over 8 years ago by vimacs | Reply

            I just saw that u-boot supports this board, but it still needs the mcuimage.bin blob. The u-boot code base may be easier to understand than edk2, and the job can be easier.

            I think what coreboot can do better than other firmware projects is that it can use many customized payloads, a mature and simplified code base, features like cbmem for debugging and logging, etc.

    Similar Projects

    Create openSUSE images for Arm/RISC-V boards by avicenzi

    Project Description

    Create openSUSE images (or test generic EFI images) for Arm and/or RISC-V boards that are not yet supported.

    Goal for this Hackweek

    Create bootable images of Tumbleweed for SBCs that currently have no images available or are untested.

    Consider generic EFI images where possible, as some boards can hold a bootloader.

    Document in the openSUSE Wiki how to flash and use the image for a given board.

    Boards that I have around and there are no images:

    • Rock 3B
    • Nano PC T3 Plus
    • Lichee RV D1
    • StartFive VisionFive (has some image needs testing)

    Hack Week 22

    Hack Week 21

    Resources