State of Linux mainline OpenGL on S905X

Thanks for explaining it @narmstrong :blush:
It something I haven’t been able to tease out from everything I’ve read online. I’m anxious to give your work a try in the coming weeks!
Thanks again for all the work you do


For the bleeding edge, you can use the latest linux-next branch:

It reflects what will be linux-4.12-rc1 in 3 weeks.

But you may need something safer by either using:
which is the ARM Amlogic maintainer integration tree, but without HDMI.

Or you can also use my 4.10 + backports Yocto layer:

Which has almost everything in 4.11 + HDMI + audio but may lack some stuff pushed for 4.12


tried the yocto one, build is successful but can’t get it to create the image:

ric@ric-ubuntu:~/khadasyocto/build$ wic create 
../poky/scripts/lib/wic/canned-wks/sdimage-bootpart.wks -e amlogic-
Checking basic build environment...

Creating image(s)...

Error: No boot files defined, IMAGE_BOOT_FILES unset

Thank you very much for provided the kernel sources. I collected on the base of Your kernel test images Armbian (server and desktop options with two variants of DE, Mate and XFCE Ubuntu-Debian). Checked run these images in several variants, TV boxes (S905 S905X S912). In this kernel (on the chip S905) are all fundamental components to the system as a work desktop. Working wired network, and output to the monitor (HDMI), USB (keyboard and mouse). On the chip s905x and s912 until he was able to run USB. This is the only problem that hinders to launch this kernel in the form of the desktop on these chips. I tried to add patches from Martin Blumenstingl kernel but USB is not working. Maybe I’m doing something wrong. Can you please tell me what links or patches I can look at that would be to implement USB on chips S905X S912 ? By the way, if You’re interested, there are a few users who are willing to help with testing new versions of the kernel on different chips (s905 s905x s912), because the testing process is now simplified. There are ready-made images that are easy to run by any user on their TV boxes with external speakers. Recorded image, hooked up to a TV box with an activated multi-boot, checked the new kernel. You can immediately generate a report and a lot of parameters via the utility armbianmonitor and upload to the website for General access (viewing).

1 Like

Do you have a stable ethernet connection? I experience strange network hangs (without any further notification) when using Neil’s, Martin’s or the mainline kernel source tree. Just try to clone the kernel source repository with git and wait for a couple of seconds.

Issuing sudo ifdown eth0 && sudo ifup eth0 via serial console resolves the problem until the next ‘hang’.


For USB, some more patches are needes for 4.10, the situation will be simple for 4.11.

I’ll be interested for more help for sure !!

On which SoC and linux version ?

On which SoC and linux version ?

Khadas VIM, Ubuntu 16.04.2 LTS.

These hangs resemble the network hangs I had on the ODROID-C2 (I know, totally different SoC, GbE vs. FE) last year.


For what board and which branch of meta-meson did you use ?

Strange indeed since the Vim uses the S905X internal ethernet PHY, so it’s totally different.

Which Linux tree did you use ?

I checked in VIM 2\16. Last image Armbian Ubuntu with Mate (kernel Neil), run from SD card to manage the connection via SSH. Yes, there is a hang while downloading big data (while getting about 900 MB of hangs). When a small download to GIT (within 300-400 MB), no crashes. For purity of experiment I checked the behavior of the same image from SD card (something to eliminate the effect of packages and settings) on Vega S95 S905. Only replaced the dtb file on meson-gxbb-p200.dtb (with the addition of the patch that indicated above, without it, the network doesn’t work at all). Everything works correctly, no lockups. Hence the reason in features of the kernel + dtb at the network part on S905x ?

Maybe this patch will be helpful. He corrects the work with Gigabit network cards in S905 Vega S95.

--- ./arch/arm64/boot/dts/amlogic/meson-gxbb-p200.dts
+++ ./arch/arm64/boot/dts/amlogic/meson-gxbb-p200-lan.dts
@@ -114,9 +114,9 @@
 		#address-cells = <1>;
 		#size-cells = <0>;
-		eth_phy0: ethernet-phy@3 {
-			/* Micrel KSZ9031 (0x00221620) */
-			reg = <3>;
+		eth_phy0: ethernet-phy@0 {
+			reg = <0>;
+			eee-broken-1000t;

It’s very similar to the patch I’m using to avoid these hangs on my C2.

I’m taking this defconfig.

– edit –

I’ve tried linux-next (4.11.0-rc7-next-20170424) as well, same result.
When the network hang occurs, tcpdump (executed locally on serial console) doesn’t show any incoming packets, a second tcpdump on the network router shows the following outgoing traffic (after a while):

  • NTP traffic
  • ARP requests (KVim inquires the the router’s ethernet address)

these configs
export MACHINE=amlogic-s905x
bitbake amlogic-image-sato

Hi. I gathered with the use of meta-meson image. Recorded on the SD card. Added the autorun script. Try to run, the kernel starts fine, but then panics because of the fact that it can not mount the root partition. The question is, where can I see and change the kernel configuration, which is collected in the image ? I looked at all the config files in the build environment and not find configfile to build the kernel.

1 Like

Same problem with mainline kernel (also with rc5) here I opened issue.
Also sometimes is eth0 detected as only 10Mbps. But this isn’t thread about Network but about Mali support. Maybe @Gouwa can separate this from main thread.

where can I find fbdev lib for mali? I would like to try Kodi 17.0.3 with fbdev at least on Khadas VIM device. I would not like to try any ***ELEC release, or such. Would like to compile on ArchLinuxArm (with mainline kernel).