Does latest rpb desktop image (Debian) supports hdmi on hikey960?

Recent I am testing latest RPB desktop image on hikey960 for X support. But there is no /dev/fb0 show up after boot up.
Image dowloaded from:
http://snapshots.linaro.org/reference-platform/embedded/morty/hikey960/latest/rpb/rpb-desktop-image-hikey960-20180105090944-121.rootfs.ext4.gz
Boot loader is:
http://snapshots.linaro.org/reference-platform/embedded/morty/hikey960/latest/rpb/boot-0.0+AUTOINC+ba45819943-ea12986b87-r0-hikey960-20180105090944-121.uefi.img

After boot, there is no /dev/fb0. I tried to run xorg with no arguments, with some errors like below:
(==) Log file: “/var/log/Xorg.0.log”, Time: Thu Dec 21 20:32:58 2017
(==) Using system config directory “/usr/share/X11/xorg.conf.d”
gbm: failed to open any driver (search paths /usr/lib64/dri)
gbm: Last dlopen error: /usr/lib64/dri/kirin_dri.so: cannot open shared object file: No such file or directory
failed to load driver: kirin
gbm: failed to open any driver (search paths /usr/lib64/dri)
gbm: Last dlopen error: /usr/lib64/dri/kms_swrast_dri.so: cannot open shared object file: No such file or directory
failed to load driver: kms_swrast
EGL_MESA_drm_image required.
[ 1891.047342] [drm:dss_irq_handler] ERROR ldi underflow!
/etc/X11/xinit/xinitrc: line 51: twm: not found
/etc/X11/xinit/xinitrc: line 52: xclock: not found
Warning: locale not supported by Xlib, locale set to C
Warning: locale not supported by Xlib, locale set to C
Warning: X locale modifiers not supported, using default
Warning: X locale modifiers not supported, using default
Warning: locale not supported by Xlib, locale set to C
Warning: X locale modifiers not supported, using default

It seems missing something of graphic so there will not be X support, But surprisingly I found /dev/fb0 exists after that. However, ever with this /dev/fb0, I can not make anything displayed on my LCD displayer.

Does anyone have any idea?

We made this test because we try to make Xen on hikey960 supports video display, then we can get ready to run android in a Xen guest domain. Right now we can only get Android kernel boot and run in a guest domain with no UI.

Hi @StephenSun, You could refer one previous discussion for xorg configuration: How can we deploy latest image with UEFI on hikey960? - #59 by juliansun, You could see @juliansun has posted the steps for enable xorg with rpb releasing.

Thanks a lot Leo, and will give it a try right away.

Best Regards.
孙国峰

Loop 姜哲 as well。

Hi Leo,
I figured there is no x-window-manager (/etc/X11/xinit/xinitrc) in 121 version. Any idea?

Cheers,
Stephen Sun

Best Regards.
孙国峰

Hi Leo,
We made a bit of progress here.
First, we followed Jun Sun’s step, it keep reporting as below:
[ 36.015] (EE) open /dev/fb0: No such file or directory
then xserver quit.

Second, we leave build 121 as it was by removing the newly created configuration file for fbdev. Then we run startx for once, it reports something from hisilicon went missing as before, and as expected we got /dev/fb0 showing up. Again I got the configuration for fddev back as Jun’s step, it seems works and now we can make xserver run in background. However, I still cannot make anything display on my LCD displayer.

So still stalled here. Need your help.

Hi @StephenSun,

@Loic teached me that you could use below command for /dev/fb0:

The framebuffer is normally created by the kirin-drm driver, if CONFIG_DRM_FBDEV_EMULATION is set;
then fb device should be listed in /proc/devices (29 fb), and can be able to create the node with ‘mknod /dev/fb0 c 29 0’

I verified on kernel 4.9 as Loic suggested for /dev/fb0 node.

Thanks,
Leo Yan

Hi @leo-yan,
Thanks a lot for your quick responding. In fact we could have the fb0 created even not follow the suggestion from Jun Sun. I just need run startx on build 121 once, then I got /dev/fb0 created. However whatever I write into it the LCD displayer shows nothing, but a warning says the “beyond valid display range”.

@leo-yan actually I am thinking how can the X server automatically understand the displayer? Should I put more in the configuration files?

@leo-yan Have you ever successfully got output from the HDMI port to a LCD before on a RPB build?

@leo-yan Or anyone else in your team?

Hi @StephenSun, I will download rpb build 121 and try to reproduce it at my side, will let you know the result in tomorrow.

Thanks a lot Leo and wait for good news!

Best Regards.
孙国峰

Hi @StephenSun,

I have tried the image: http://snapshots.linaro.org/reference-platform/embedded/morty/hikey960/100/rpb/rpb-desktop-image-lava-hikey960-20171020080800-100.rootfs.img.gz, which can work well for /dev/fb0 and display properly with HDMI.

I found the display issue should be related with rootfs, you could use build 100 rootfs img.

Hi @leo-yan
Great,I will try it. BTW, what about build 121, have you verified on it?

Best Regards.
孙国峰

I have verified latest building (it’s build 123 actually), I found at least the rootfs [1] does not work well for hdmi on /dev/fb0 device. I will try lava version [2] and will let you know the result.

[1] http://snapshots.linaro.org/reference-platform/embedded/morty/hikey960/latest/rpb/rpb-desktop-image-hikey960-20180112071556-123.rootfs.img.gz
[2] http://snapshots.linaro.org/reference-platform/embedded/morty/hikey960/latest/rpb/rpb-desktop-image-lava-hikey960-20180112071556-123.rootfs.img.gz

BTW, I don’t think the hdmi issue is caused by kernel image, I can see build 123 and build 100 both have /dev/fb0 device node. So seems to me the issue is happened when we launch ‘startx’ command. I think the windows manager is not the first priority for HDMI displaying.

I have filed one bug for latest building to track this issue: https://bugs.96boards.org/show_bug.cgi?id=677; the latest root images (desktop version) cannot support HDMI display.

Hi @leo-yan,I have tried build 100 desktop lava (http://snapshots.linaro.org/reference-platform/embedded/morty/hikey960/100/rpb/rpb-desktop-image-lava-hikey960-20171020080800-100.rootfs.img.gz), and indeed it works. Thanks a lot Leo for your great support.

Best Regards.
孙国峰

Hi @@leo-yan,I also tested build 110, and it can not work with HDMI. So it is not a problem introduced recently.

Best Regards.
孙国峰

@leo-yan https://bugs.96boards.org/show_bug.cgi?id=677 seems has no update. I wonder does Linaro released any other rootfs could be used on hikey960? I tried this one:
http://snapshots.linaro.org/debian/images/stretch/alip-arm64/latest/linaro-stretch-alip-20171109-88.tar.gz
It can boot the board but still X11 does not work on it and even worse, there is no fb0 at all.
I don’t understand the difference before those release. So any suggestion from you?