4.19.5 kernel based Debian snapshot image release for HiKey960

I tried compiling your kernel today and ran into a small build issue. The one-liner in this link fixes it:


Just build and installed the kernel debian package 5.0 and 5.1.0-rc6 on the image: http://snapshots.linaro.org/96boards/hikey/linaro/debian/30/
on both SD card and UFS and I see the same issue

the boot process for 5.0 stops at:
for 5.1 kernel:
the same kernel are working fine in android enviroment with the same boards, any hint?


Try to enable early console via kernel cmd line (earlycon=pl011,0xfff32000,115200).

Hi @Mani, since I’m looking at the latest debian should be “30” from http://snapshots.linaro.org/96boards/hikey/linaro/debian/ is the kernel 4.19.5 in this release or in previous one? also sd card image has that kernel? Thanks

Yes, release 30 is based on 4.19.5 kernel but there is no SD card image.

sorry @mani but i see http://snapshots.linaro.org/96boards/hikey/linaro/debian/30/linaro-stretch-developer-hikey-20190420-30.sd.gz , am I in the right repo?

@francesco_camarda I should’ve clarified. We do have SD card image but it is not tested on Hikey960!

@mani …I tested it and was not working, the latest working kernel for debian sd for me is the 4.18.
So i will try the UFS debain image, Thanks! F.

@mani, the UFS image is fine, the SD card one is freezing @:

[    3.854640] Run /init as init process
Loading, please wait...
[    3.867323] mmc_host mmc1: Bus speed (slot 0) = 25000000Hz (slot req 25000000Hz, actual 25000000HZ div = 0)
starting version 232
[    3.878666] random: systemd-udevd: uninitialized urandom read (16 bytes read)
[    3.879818] random: udevadm: uninitialized urandom read (16 bytes read)
[    3.880183] mmc1: new SDIO card at address 0001
[    3.886518] random: systemd-udevd: uninitialized urandom read (16 bytes read)

where the kernel seems to init the mmc card another time.

Hi Mani, are you going to test the SD card image too? Is there any instruction or suggestion that you could provide to make the SD image boot?


@Mani I am also unable to boot 4.19.5 via SD card on hikey960. UEFI hangs in console when any SD card is present at boot.

1 Like

@francesco_camarda @marcodip SD boot issue is now fixed: https://git.linaro.org/people/manivannan.sadhasivam/linux.git/commit/?h=hikey_debian&id=6a56c6048aeda7854580b6e5154dd7e174248d77

Next debian image build (#34) should boot from SD without any issues.

Sorry for the long delay.


1 Like


To build we should:
export PATH=~/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin/:$PATH
make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- defconfig distro.config
make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j24

BUT and how to flash this new kernel to the board ?
/boot in the board doesn’t have a DTB , so I assume I have to glue together with the kernel image, but how to do that ?

How to generate this files :
root@linaro-developer:~# ls -l /boot/
total 17568
-rw-r–r-- 1 root root 4770026 Dec 17 2018 System.map-4.19.5-hikey
-rw-r–r-- 1 root root 184190 Dec 17 2018 config-4.19.5-hikey
drwxr-xr-x 3 root root 16384 Jan 1 1970 efi
drwxr-xr-x 5 root root 4096 Jul 20 09:55 grub
-rw-r–r-- 1 root root 4276427 Jul 20 09:55 initrd.img-4.19.5-hikey
-rw-r–r-- 1 root root 8728842 Dec 17 2018 vmlinuz-4.19.5-hikey



Couple of options:

  1. Build the kernel and modules as a debian package and install it on the board. More info here: https://github.com/96boards/documentation/blob/master/consumer/hikey/hikey620/build/linux-kernel.md#build-the-linux-kernel

This is the preferred option. Only thing to make sure here is to copy the dtb to the board and modify the boot parameters at grub.

  1. Copy the dtb and vmlinuz* to SD card’s boot partition and copy the modules to rootfs partition. Then modify the grub parameters to pass the correct dtb as mentioned in the guide I shared above.


Is there a patch to enable support for I2S0 , the I2S at the low speed connector ?

Hi, I tried to update Kernel to 5.1-rc6 using option 1 but I have this issue at start:

Loading Linux 5.1.0-rc6 …
Loading initial ramdisk …
EFI stub: Booting Linux Kernel…
EFI stub: EFI_RNG_PROTOCOL unavailable, no randomness supplied
EFI stub: Using DTB from configuration table
EFI stub: Exiting boot services and installing virtual address map…

Platform exception reporting:
ESR_EL3: 0000000092000210
ELR_EL3: ffffff8010770fe4

Never seen an issue like this. Did you update UEFI and base firmware to the latest ones available?

Hi Mani,

I am using uefi_76, is a newer version available?

I simply run this command:
# ./hikey_idt -c config.orig -p /dev/ttyUSB1

# cat config.orig
hisi-sec_usb_xloader.img 0x00020000
hisi-sec_uce_boot.img 0x6A908000
recovery.bin 0x1AC00000

Hi @Mani, do you have any news?


Hi, I tried debian build 34 but it stops loading.

[    3.807763] Run /init as init process
[    3.811764] dwmmc_k3 ff3ff000.dwmmc2: card claims to support voltages below defined range
[    3.822672] usb 1-1: new high-speed USB device number 2 using xhci-hcd
Loading, please wait...
[    3.841512] mmc_host mmc1: Bus speed (slot 0) = 25000000Hz (slot req 25000000Hz, actual 25000000HZ div = 0)
starting version 232
[    3.856229] random: systemd-udevd: uninitialized urandom read (16 bytes read)
[    3.867541] random: udevadm: uninitialized urandom read (16 bytes read)
[    3.874639] hisi_hikey_usb hisi_hikey_usb: extcon_hisi_pd_set_role:set usb role to 2
[    3.882900] mmc1: new SDIO card at address 0001
[    3.887611] random: systemd-udevd: uninitialized urandom read (16 bytes read)
[    3.895069] usb_typec_power_ctrl: set typec vbus gpio to 1
[    3.912052] usb_switch_ctrl: switch to typec
[    3.922934] xhci-hcd xhci-hcd.0.auto: remove, state 4
[    3.932135] usb usb2: USB disconnect, device number 1
[    3.942714] usb 2-1: USB disconnect, device number 2
[    3.960205] xhci-hcd xhci-hcd.0.auto: USB bus 2 deregistered
[    3.974803] xhci-hcd xhci-hcd.0.auto: remove, state 1
[    3.986766] usb usb1: USB disconnect, device number 1

Can you give me any suggestion?