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

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

  • Comments

    • algraf
      almost 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
        almost 8 years ago by vimacs | Reply

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

        • a_faerber
          almost 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
            almost 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

    This project is one of its kind!