S905x support, what is needed?

  • dmesg: aDJh

    Works:

    • ethernet
    • wifi
    • GUI
    • h264 playback
    • switching to 1080p/24
    • dolby atmos passthrough
    • IR remote


    Doesn't work:

    • CEC
    • USB


    [hr]
    For people wanting to try it: Test image
    Replacing kernel.img and fixing up its md5 in the .006 build kszaq provides also works: kernel.img

    I recommend using kszaqs images and replacing the kernel.img, because only changes one thing instead of an unknown number of other things.

    Edited once, last by koenkooi (August 24, 2016 at 5:07 PM).

  • Got USB working now:

    Findings and changes in a nutshell:

    • console=ttyAMA0 has to be used as default kernel command string. Tried to override that via platform_init and aml_autoscript with no luck. When using ttyS0 here, the kernel will stop booting up bailing out an error about ttyS0 not being available. Compiling PL011 into the kernel will give us a ttyS0 later on so the debug-console can be bound to that but it wont work to boot the kernel as the console parameter. Odd. I guess a build working for both S905 variants could be achieved when serial console is disabled entirely. This might be fine for "stable" releases but is a bit PITA for dev releases.
    • USB needs needs updated kernel configuration: <*> xHCI, <*> EHCI, <*> OHCI, <M> DesignWare USB3 DRD Core Support -> Host Only (see diff)
    • Wired Network does not work when compiled as a module
    • My previous skin and service issues were solved by moving the build host to a ubuntu machine. (Arch or zsh incompatibility, did not dig any deeper)
    • Perliminary video playback tests look fine. 4k@60hz won't work (black screen with audio), 4k@30hz works fine, 1080p content seemed also fine.
    • Using updated libamplayer library and serial-debug console as suggested by kszaq (aml 2016-08-18-builroot via surkovalex). OpenGL/ES libs were not updated in the 2016-08-18 buildroot (judging by the version name). Did not bother to update them.


    As soon I finished the clean build I will post an update with the usual release files for download.
    diff: eUib

  • would creating a projects/S905x folder in LE make sense for the time being? That would give us seperate kernel configs, among other things. But since that's basically the only difference, I'm not 100% convinced it's a good idea.


  • would creating a projects/S905x folder in LE make sense for the time being? That would give us seperate kernel configs, among other things. But since that's basically the only difference, I'm not 100% convinced it's a good idea.

    This is what I did locally. And yes, I do also think this is a bad idea as it does contain lots of duplicated code / patches and config files.

  • ... and here it is:

    http://www.memoryleaks.org/libreelec.tv/s905x/

    thanks kszaq & koenkooi

    Lets hope kszaq comes up with an idea how to use the same set of build options / patches etc for S905 and S905X. Diff against the "official" 006 branch: eUib - so there are mainly some additions and serial console changes to the linux kernel. Other changes are either cosmetics or not relevant for non-debug releases.

    Please note that this is an experimental build and not well tested.

    Edited once, last by pulsar (August 24, 2016 at 10:26 PM).

  • Just installed this new build on sd card. It's working great. So far no problems at all.

    My box is Nexbox A95X (S905X, 2gb/16gb)
    - wifi 5ghz ok
    - 2 usb ports ok
    - bluetooth ok
    - tvheadend server with Mygica T230 usb-dvb-t2 ok

    Has anyone try install this on NAND yet? I'd really like to do that but being afraid of bricking it due to not having tools to unbrick.

    In case I try install on NAND and brick, will it still be possible to boot from sd card?

    pulsar, Thanks a lot.


  • ... and here it is:

    http://www.memoryleaks.org/libreelec.tv/s905x/

    thanks kszaq & koenkooi

    Lets hope kszaq comes up with an idea how to use the same set of build options / patches etc for S905 and S905X. Diff against the "official" 006 branch: eUib - so there are mainly some additions and serial console changes to the linux kernel. Other changes are either cosmetics or not relevant for non-debug releases.

    Please note that this is an experimental build and not well tested.

    I integrated your diff in my build and now usb and CEC work!


  • ... and here it is:

    http://www.memoryleaks.org/libreelec.tv/s905x/

    thanks kszaq & koenkooi

    Lets hope kszaq comes up with an idea how to use the same set of build options / patches etc for S905 and S905X. Diff against the "official" 006 branch: eUib - so there are mainly some additions and serial console changes to the linux kernel. Other changes are either cosmetics or not relevant for non-debug releases.

    Please note that this is an experimental build and not well tested.

    Tested on Tanix TX5 Pro Amlogic s905x/2GB RAM/16GB eMMC/Ampak AP6255 module for WiFi 802.11 b/g/n/ac and Bluetooth 4.0 LE connectivity

    From SD card it works normaly (just copied meson1.dtb to dtb.img from stock android firmware, maybe this step is not necesary)
    !!! Be patient, first boot after SDCard preparation is 2-3 min !!!

    Here is my findings on this build

    remote - Works normaly (power on and power of of device also work),
    WiFi 2.4 GHz - do not work,
    WiFi 5 GHz - do not work
    Bluetooth do not work,
    Ethernet - works normaly
    USB botw ports works normaly,
    SSH login works normaly

    PlayBack
    1080p all tested movies Auto refresh rate works normaly
    h265, h264 works normaly
    dont have 4k tv for testing 4k contents

    Exelent smooth playback, much better than from stock android + kodi 16.1

    Currently only one problem encountered on some h.265 and h.264 movies after fast forward (up key) there is problem with audio out of sync

    Also tested starting from usb stick in both usb ports but without success (there is no LibreElec logo only black screen) and after 15 sec complains about tty...

    Great work!
    Big thaks for the build

    Edited once, last by pm_mickey (August 25, 2016 at 4:23 PM).

  • pulsar Thank you for your findings! I think there is no special treatment needed to make the build work on both S905 and S905X after your kernel config changes. I have built a new build with my 4K fixes included, I'd be great if you can try if it works:
    s905x-test1


    In case I try install on NAND and brick, will it still be possible to boot from sd card?


    If you install above test version, you should still be able to boot into recovery without SD card inserted or into LE from SD card. Try SD version first to confirm if it works.


  • pulsar Thank you for your findings! I think there is no special treatment needed to make the build work on both S905 and S905X after your kernel config changes. I have built a new build with my 4K fixes included, I'd be great if you can try if it works:
    s905x-test1


    If you install above test version, you should still be able to boot into recovery without SD card inserted or into LE from SD card. Try SD version first to confirm if it works.

    So I tried with your version kszaq: didn't work on my Mini M8s II (2GB/8GB - S905X)

    pulsar yours works.

    Very smooth playback of 23.976p files

    EDIT: Just shutdown and then power on doesn't work.
    So i've to cut power and plug it in again.

    Edited once, last by lama0900 (August 25, 2016 at 10:11 AM).

  • Likewise.

    On my Nexbox A95X (2gb/16gb) kszaq version still got the same error as before. (SH: can't access tty job).
    I tried both with and without dtb.img file that comes with the image.

  • Superb job. Downloaded Pulsar's build and tested it. Thank you so much for your work.

    Box: Mini M8S II 2G / 8G
    Boot: SD
    H.264 Playback: Yes
    H.265 Playback: Yes
    4k Playback: Yes
    True-HD Passthrough: Yes
    DTS-HD Master Audio Passthrough: Yes
    USB Playback: Yes
    Wired Playback: Yes
    Wireless Playback: Not tested
    Bluethooth: Not tested
    Remote Control: Working perfectly

    Edited once, last by bumperboy (August 25, 2016 at 11:34 AM).