These days, we have receive some questions about Hikey, we also comment some of the question with our answer, but we do not know if all the answer is all alright. So if anybody can help to look over the questions?
- The HiKey installation process cannot use the regular arm64 debian-installer. The main arm64 arch for Debian should work mostly for userland, but lacks kernel, hardware modules and (possibly) boot loader. Apart from this, Debian main is fine. WLAN support is also not included in standard firmware images and tools.
>>>
These are right. Please refer to:
Kernel and rootfs: https://github.com/96boards/documentation/wiki/HiKeyGettingStarted#debian-linux-os
Bootloader: https://github.com/96boards/documentation/wiki/HiKeyGettingStarted#installing-a-bootloader
<<<
Thanks for confirming the links. So you do reckon that the pre-installed
Debian distro is the original Debian except for these two pieces?
>>>
Yes, I think so.
<<<
2a. Linux kernel must be Linaro. Stock Debian linux kernel for amd64 won’t do. Not even the testing/unstable versions. patches are publically available, yet not actively proposed at kernel.org for including them into vanilla linux, are they? This however only covers (most) of the hardware, not necessarily the CPU and mainboard itself (i.e. it might boot, just not have any hardware to install on).
>>>
In upstream kernel, please refer to https://github.com/torvalds/linux/tree/master/arch/arm64/boot/dts/hisilicon, the hikey have been supported, but it only to boot, because some drivers have not been supported。
<<<
right, that’s what I had found. But you (or Linaro) are actively pushing to
close that gap, I guess? Is it expected to have the full support still in 4.4?
>>>
I don’t think it will full support, in kernel.org, it will only gradually add the general modules, e.g. dts, driver, and so on. But for a specific board, it can’t full support, you need to develop some modules. But Linux kernel always to develop by Linaro with arm64 on hikey, but can’t boot on amd64, because the BSP can’t be supported.
<<<
Ok. Yet if I’d take a regular arm64 Debian installer and add the Linaro kernel, that should work, right? Since the HiKey hasn’t got any wired ethernet on board, have you guys tried to put together a rather complete installer on SD-card rather than just trying netboot?
>>>
The HiKey kernel sources are located at: https://github.com/96boards/linux. This sources was developed by Linaro and Hisilicon. But if you use the Linaro kernel and run on Hikey, you need to add the BSP, so I suggest you use this HiKey kernel sources.
The Hikey can’t netboot now.
<<<
2b. since Linarno patches aren’t (yet) pushed back upstream (i.e. linux on kernel.org), my [kernel] security status is mainly dependent on what Linaro gives me. it doesn’t look like they have a security announcement mailinglist to subscribe to, do they? Does LeMaker have one? Since the LeMaker HiKey has its own patches, are they mainly maintained by LeMaker or by Linaro?
- Bootloader seems to have custom parts that are not (yet) included in the usual upstream(s)? I don’t really see (in the given document) what is different in the GRUB on 96boards.org compared to the one in Debian. What will not be working (correctly) when using the regular one shipped in Debian? Is the custom bootloader in the doc just relevant for supporting secure boot?
>>>
UEFI bootloader is still under development, the method and source code link can be found from https://github.com/96boards/documentation/wiki/HiKeyUEFI . The doc now is not ready.
<<<
Ok. I’m not seeing that this isn’t the UEFI already present inside Debian. What exactly is still “under development” and are there any patches not yet
upstream?
>>>
Please refer to : https://github.com/96boards/documentation/wiki/HiKeyUEFI#source-code Open the UEFI code link, you can find some answers in github commits.
<<<
- fastboot is optional as long as I use GRUB on eMMC or boot from SD card,right?
> >>
NOTE that the June 2015 release comes with a fastboot bootloader based on HiSilicon code. It is deprecated and will not be supported in the upcoming releases.
<<<
Alright. So fastboot is entirely not needed when not using Android?
>>>
Yes, only use UEFI.
<<<
-
Updating eMMC parts requires me to flash from another computer and cannot be updated online while booted into eMMC? Or if online updating is supported, what files would need to be written where to make sure the HiKey will survive a reboot after this? Losing all of my files, settings, SSH host keys etc. for every new OS release doesn’t seem to be the correct answer. Rather installing Debian updates the “normal” way and putting new kernels, bootloaders and kernel modules in-place where they belong. Is this planned for the future releases?
>>>
Now, it cannot be updated online. But you can use dd or copy command to update by SD card.
e.g. dd if=<path>/boot-fat.uefi.img of=/dev/mmcblk0p6 bs=1M
copy zImage /boot/
copy *.ko /lib/modules/
Partition Information: https://github.com/96boards/documentation/wiki/HiKeyGettingStarted#appendix-1-partition-information
<<<
Sounds great! I’ll give it a try. -
Supporting WLAN requires a custom kernel module and firmware from 96boards.org. Same question for security support, announcement mailinglist and pushing these upstream into linux and the Debian firmware package as above. Any reasons not to?
>>>
The WLAN module and firmware are provided by TI, please refer to http://www.ti.com/product/WL1835MOD
<<<
Thanks for the info.
- Linaro modified “android-tools-fsutils” is recommended. What will not work when using the regular one?
>>>
Sorry, Linaro had changed the link, please use this link: http://repo.linaro.org/ubuntu/linaro-staging/pool/main/a/android-tools/android-tools-fsutils_5.1.1.r29-3.linarojessie.1_amd64.deb in Linux PC. Or android-tools-fsutils_5.1.1.r29-3.linarojessie.1_arm64.deb in Hikey. They are OK. We will ask linaro to update the wiki.
Thanks. Yet this doesn’t answer what their version does different. Any
comments?
>>>
We will ask linaro to update the wiki. Sorry, I don’t know for that.
<<<
- Practically all of the docs only refer to cross compiling while the HiKey should have enough CPU and RAM to be able to compile simple stuff itself. Is the thermal control not enabled by default or what’s the reason behind this?
>>>
Hikey itself can compile the kernel, but we now just provide the method for cross compile on PC.
Sure. Would be great if we’d have docs to reflect both usecases (or actually
not need it at all and have full upstream support from Debian and Linux).
- HDMI sound is already reported feasible but not yet officially supported by neither LeMaker nor Linaro/96boards.org.
>>>
it will be supported later.
<<<