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 mad skills in:

coreboot uefi arm arm64

This project is part of:

Hack Week 14

Activity

  • over 2 years ago: tonghuix liked port coreboot to 96Boards HiKey
  • about 3 years ago: mbrugger liked port coreboot to 96Boards HiKey
  • about 3 years ago: vimacs started port coreboot to 96Boards HiKey
  • about 3 years ago: vimacs added keyword "arm64" to port coreboot to 96Boards HiKey
  • about 3 years ago: vimacs added keyword "arm" to port coreboot to 96Boards HiKey
  • Show History

    Comments

    • algraf
      about 3 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
        about 3 years ago by vimacs | Reply

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

        • a_faerber
          about 3 years ago by a_faerber | Reply

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

          • vimacs
            about 3 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

    work on sunxi a64 cpufreq driver (for teres-1, pine64) by mbrugger

    With the teres-1 [1] laptop we have a first arm...


    openSUSE/SLE/Mainline U-boot for some not-yet-supported ARM64 boards by ldevulder

    The Khadas VIM (http://khadas.com/vim/) is an a...


    work on sunxi a64 cpufreq driver (for teres-1, pine64) by mbrugger

    With the teres-1 [1] laptop we have a first arm...


    openSUSE/SLE/Mainline U-boot for some not-yet-supported ARM64 boards by ldevulder

    The Khadas VIM (http://khadas.com/vim/) is an a...