Framebuffer Console?


#1

Hi all!

I have tried to enabled the framebuffer console on the Hikey970 but so far I have not been able to get it working. The frame buffer device seems to be working since I can do dd if=/dev/urandom of=/dev/fb0 and see that random output on the screen. Has anyone been able to get that working?

I’m using the following defconfig file: https://github.com/freedrikp/linux/blob/73e2ca3837f655f21789162851cad90ad16d4e3a/arch/arm64/configs/hikey970_defconfig

Thanks!


#2

For Linux Debain / Ubuntu you can try my kernel tree.
The config shouldn’t need changed but i do have NVME Enabled.

git clone https://github.com/Bigcountry907/linux.git -b hikey970-v4.9-Debain-Working

Make sure you use the branch. hikey970-v4.9-Debain-Working

Also this tree is configured to use EDID Helper and the resolution is set at 1920X1080.

You need to put 1920x1080.bin in /firmware/edid
On the hikey970 board.
Get the 1920x1080.bin from here.

Also you need to add this to the end of the grub.cfg commandline.
drm_kms_helper.edid_firmware=edid/1920x1080.bin video=HDMI-A-1:1920x1080@60e consoleblank=0

The grub.cfg is in 2 places and i edit both.
ON THE BOARD /boot/grub/grub.cfg

In boot-hikey970.uefi.img
You have to mount boot-hikey970.uefi.img and then edit grub.cfg in
/boot/grub/grub.cfg

Alternatively you can flash your boot partition with boot-hikey970.uefi.img from here.

The boot image above is for ubuntu 18.04 but should work ok on other installs as long as you have the kernel Image and DTB Named Correctly.

Image-hikey970-v4.9.gz <<-- Yes Use The Gzipped Image
kirin970-hikey970.dtb

To install the kernel modules do.
make INSTALL_MOD_PATH=/mypath/forthemodules/ modules_install

Copy the lib/modules from /mypath/forthemodules/ to the /lib/modules on the board.


#3

Hi Freedrik

If you can dd to /dev/fb0 then you’re almost there.
Possibly there are no tty’s and thus the console cannot start.
Both the kernel config and the kernel commandline require the tty.
commandline needs ‘console=tty1’ and the PTY’s need to be enabled in the kernel.

Hope that helps.