State of Linux mainline OpenGL on S905X

Another potential way is to RE the libmali.so similar to what nouveau has done with nvidia, but that would require someone who knows quite a bit about arm asm and lots of free time.

An initiative already begun but for the Mali-400 GPUs (quite close from the Mali-450), but it stalled a few months/years ago because the author did not want to make a proper Mesa driver neither provide a global Linux driver + Mesa Driver support like other platforms:
https://limadriver.org/

Hopefully, one day another genius will continue his work…

The kernel driver is only here to get the “jobs” created by the libMali and execute them on the right GPU, it’s kind of a jobs sequencer and hardware initializer.

The X11 driver (xf86-video-armsoc) is here to intercept the DRI2 calls from the libMali and forward them to the X11 server, for example the libMali needs some memory buffers, and so needs to tell the X11 driver to give it those buffers.
And it needs to tell the X11 server to flip the window content on the next vsync, …

1 Like

Hi. I want to help support development of chips S805 S905 S905x S812 S912 in the new kernel. Do you need any help with testing and verification on real hardware ? I have got a few different options of models on the platform S805 S905 S905x S812 S912 (with different characteristics) and the ability to connect to the console UART.

Hi,

Any help is welcome !

You can start by subscribing to the linux amlogic mailiing list : http://lists.infradead.org/mailman/listinfo/linux-amlogic

And you can reach us on the #linux-amlogic channel in the Freenode irc network.

Don’t hesitate to send emails about your configurations and whet needs to be tested.

Neil

1 Like

I have already subscribed to this newsletter. Soon I will try there to write your question. :slight_smile:

By the way, have You seen the kernel sources 4.9 in the latest version Amlogic BUILDROOT ? There is a HDMI video output. Though not in full screen, and just before the half.

Which part is in charge for hardware video decoding? I would like to use VIM Pro as a Kodi media center and Live TV client.
I wonder what part does c2play use to play ES streams on odroid c2.
https://forum.odroid.com/viewtopic.php?t=23143

Tried to write in the newsletter, but the letter does not reach. The mail server does not accept HTTP requests when trying to send him emails from a browser.

UPDATE
I correctly understand, what now the most actual version of the kernel (which can be checked to run at S905) is this branch ?

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

Hi,

For the bleeding edge, you can use the latest linux-next branch:
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/

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

But you may need something safer by either using:
https://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-amlogic.git/log/?h=v4.12/integ
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

3 Likes

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-
image-sato
Checking basic build environment...
Done.

Creating image(s)...

Error: No boot files defined, IMAGE_BOOT_FILES unset
1 Like

https://forum.armbian.com/index.php?/topic/2419-armbian-for-amlogic-s905-and-s905x/&do=findComment&comment=30100

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’.

Hi,

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.

Hi,

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;
 		};
 	};
 };