S905x support, what is needed?

  • KLabs: I'm very skeptical about Nexboxes. I heard really bad things about them and theyseem to be very cheap. Also they only offering free boxes for good publicity. For me there is no rush in S905x support. No serious/reliable Box manufacturer is offering them. Why should we support them?

    And from what I've heared the next great thing is gonna be S912 so don't waste your time and money with S905x.

    Edited once, last by GDPR-1 (August 20, 2016 at 9:03 PM).

  • Beer donation link is at the bottom of builds sticky post.

    Hold your horses please, the build is ready but I need to prepare device trees and updating instructions as it is different from earlier releases.

  • just to let you know the usb ports dont work here on mine after flash and if i set resolution in kodi to 4k its just a small box
    [hr]
    i will sort a beer out in couple days. rhanx

    Edited once, last by sharkman (August 20, 2016 at 10:17 PM).


  • just to let you know the usb ports dont work here on mine after flash and if i set resolution in kodi to 4k its just a small box

    For USB try renaming dts.img on SD card to something else - you can also delete it but having a backup is a good choice.

    For 4K this is an issue with this build, I will explain it further in build thread.


  • ive tried everything put no matter what usb ports dont work with the new build on mini m8s 2 s905x

    We all sit the same boat.
    I guess the box says: "could not mount /dev/mmcblk0p1"?

    But I don't know how to fix.

    What can I do for debugging this? :)

    EDIT: Cannot do anything at the shell since usb keyboard is not recognized at this point.

    Edited once, last by lama0900 (August 21, 2016 at 2:05 PM).

  • I've finally received my m8sII and located the serial pads on it. It's the four pins are, starting with the square pad: GND, TX, RX, unknown. I've managed to dump the dtb in u-boot: gUUjand compared sections of it by hand to arch/arm64/boot/dts/amlogic/gxl_p212_2g.dts; so far they look the same, apart from the allocated framebuffer memory.

    I've tried SD boot as well as USB boot and get the same errors as mentioned earlier in the thread. I've not made any headway debugging this further since I don't have an LE build environment set up yet. For the future builds it would be nice to:

    • Set console=tty0 console=ttyS0,115200 to get the ramdisk output on both hdmi and serial
    • Increase the kernel loglevel for serial (I suspect 'quiet' is in the cmdline), all I get is hastebin


    Due to point 1. and 2. I can't say if mmblk0 is eMMC or not working at all. USB seems to be non-functional, keyboard LEDs don't light up and the 'BOOT' partlabel can't be found.
    [hr]


    I've finally received my m8sII and located the serial pads on it. It's the four pins are, starting with the square pad: GND, TX, RX, unknown. I've managed to dump the dtb in u-boot: gUUjand compared sections of it by hand to arch/arm64/boot/dts/amlogic/gxl_p212_2g.dts; so far they look the same, apart from the allocated framebuffer memory.

    I've tried SD boot as well as USB boot and get the same errors as mentioned earlier in the thread. I've not made any headway debugging this further since I don't have an LE build environment set up yet. For the future builds it would be nice to:

    • Set console=tty0 console=ttyS0,115200 to get the ramdisk output on both hdmi and serial
    • Increase the kernel loglevel for serial (I suspect 'quiet' is in the cmdline), all I get is hastebin


    Due to point 1. and 2. I can't say if mmblk0 is eMMC or not working at all. USB seems to be non-functional, keyboard LEDs don't light up and the 'BOOT' partlabel can't be found.

    Some progress, I replace only the kernel with one that has a differentCONFIG_CMDLINE: NhJe

    Edited once, last by koenkooi (August 21, 2016 at 6:57 PM).

  • had also a quick look (booting from SD) and can confirm koenkooi issues.

    I have also noticed the ramdisk.cpio.gz not to be a gzip file but an lzop compressed one. No idea if this irrelevant or might matter. I didnt see the init process being started in koenkooi's logs. Will do some more digging if I manage to get the buildroot / LE crosscompiler-foo working.

    USB not working indicates dwc3 module not being loaded. In the recovery images I "disassembled" it was done via init / init.amlogic.usb.rc IIRC. Could not verify this assumption as the serial console is disabled in the current kernel.

  • Made some progress and got LE compiled from git sources and booting.

    To get the current 006 branch running one will need to change the serial port to from ttyS0 to ttyAMA0, I did that in the LE S905 project kernel config (CONFIG_CMDLINE). Perhaps it would be sufficient to do that change in initramfs/platform_init -> cmdline

    This LE build is far for being usable though, so far I have identified following issues:

    • USB still does not work (kernel and/or ramdisk issue)
    • Serial Console is "read-only", I presume LE does not know about ttyAMA0 and thus wont start a shell here. (root-fs and/or ramdisk)
    • Wired Network does not work (DHCP or fixed IP). Cable / media sensing works though. (kernel, PHY driver?)
    • Graphical glitches, backgrounds are not cleared / filled, buttons are missing. (qurky build-system / broken default theme maybe? gles impl incompatible? rapier theme works for instance.)
    • WiFi seems ok but SAMBA and NFS won't work
    • Video Playback (bbb_sunflower_2160p_60fps_normal, from SD) does not work and gives you audio with a black screen (opengl-es implementation not compatible? using gxbb, not aware of gxl specific impl?).


    If anyone wants to give it a try, I have uploaded the SD card image over here: LibreELEC-S905.aarch64-s905x-7.0.2.006.img.xz - Right now there is very little reason to do so though.

    I will do some more experiments and report back in this thread if my spare time allows it. I am open for any ideas!

    kszaq - can you post some details about your build-environment / steps? Had some trouble with compiling gcc and I do really wonder why the default confluence theme has issues. Could be quirky build system or opengl impelentation. Where does "opengl-meson-gxbb-r6p1" come from?

  • Thank you pulsar.

    I have the box exactly like yours. Just tried install your image on it. But like you said, it's still on experimental state. (At least wifi 5Ghz, bluetooth pairing with headphone works.)

    This is really good news for S905X users. Thanks for your effort here. I hope it will get more stable soon.


  • To get the current 006 branch running one will need to change the serial port to from ttyS0 to ttyAMA0, I did that in the LE S905 project kernel config (CONFIG_CMDLINE). Perhaps it would be sufficient to do that change in initramfs/platform_init -> cmdline



    Serial Console is "read-only", I presume LE does not know about ttyAMA0 and thus wont start a shell here. (root-fs and/or ramdisk)

    Serial port ttyS0 is serial console and this is a parameter passed by bootloader. Kernel tells to run console on tty0 which is screen. I don't think there's ttyAMA0 on Amlogic. If you want to have system console on serial port, you need to add a service: serial-debug.service


    Wired Network does not work (DHCP or fixed IP). Cable / media sensing works though. (kernel, PHY driver?)

    To make Ethernet work you can try unsetting CONFIG_AM_PHY and changing CONFIG_AMLOGIC_PHY to "y" from "m" in kernel config.


    opengl-es implementation not compatible? using gxbb, not aware of gxl specific impl?

    There is no gxl-specific opengl implementation, driver is the same. The name is "gxbb" as it was first used for S905.


    kszaq - can you post some details about your build-environment / steps?

    I only run PROJECT=S905 ARCH=aarch64 make amlpkg. No issues here in building from scratch.


    Where does "opengl-meson-gxbb-r6p1" come from?

    These are libraries from Amlogic buildroot repacked. You can find buildroot here: Index of /download/ARM/filesystem

  • Thanks for getting back,


    Serial port ttyS0 is serial console and this is a parameter passed by bootloader. Kernel tells to run console on tty0 which is screen. I don't think there's ttyAMA0 on Amlogic. If you want to have system console on serial port, you need to add a service: serial-debug.service

    Apparently the S905X uses AMBA PL011. I will try take another shot at the kernel configuration here and add that as a service if needed.


    To make Ethernet work you can try unsetting CONFIG_AM_PHY and changing CONFIG_AMLOGIC_PHY to "y" from "m" in kernel config.

    I have used your linux.aarch64.conf and it was already set to comple as a module.


    I only run PROJECT=S905 ARCH=aarch64 make amlpkg. No issues here in building from scratch.

    Same here, I suspect some distribution / host quirks. Running Arch on my work laptop. Perhaps running something more common like ubuntu might be a better idea here.

    I have also started digging into the buildroot image yesterday. Not working Video-Playback might be also related to the libamcodec/libamplayer library. I noticed that LE uses the WeTek sources while the buildroot environment brings theirown libplayer. At least updating the binary blobs might be worth a shot.

    Again, than you for your time.


  • I have used your linux.aarch64.conf and it was already set to comple as a module.

    I meant not compile as module. This was suggested to me by Alex who said it fixed ethernet for him on S905X

    Try this kernel config: EQiF

    You can also try updating libamcodec to latest buildroot code: gggF