Building older 9.0.x images from source

    • Official Post

    With driver media_build-2020-01-02

    The main problem is that media_build (or more specific the media_tree that is build by media_build) includes a lot drivers around the new mainline stack for decoding and whatnot at the gpu/soc. So if you use some media_build with some version of media_tree you loose all patches/fixes/improvements that are avaibvle at the normal kernel.

    The situation gets better and better with more stuff is finally merged at the kernel. We have also a idea how to fix the remaining parts but that is highly hacky - but is likely working (just copy DVB modules instead the whole media_tree stuff build by media_build).

    Of course you could merge it all down into a single kernel, but this is basically not maintainable.

  • The main problem is that media_build (or more specific the media_tree that is build by media_build) includes a lot drivers around the new mainline stack for decoding and whatnot at the gpu/soc. So if you use some media_build with some version of media_tree you loose all patches/fixes/improvements that are avaibvle at the normal kernel.

    The situation gets better and better with more stuff is finally merged at the kernel. We have also a idea how to fix the remaining parts but that is highly hacky - but is likely working (just copy DVB modules instead the whole media_tree stuff build by media_build).

    Of course you could merge it all down into a single kernel, but this is basically not maintainable.

    I don't know if that information comes and it can help in something!

    After going round in a circles I've managed to build a kernel with support for this device.

    I _think_ the problem is that the kernels shipped since 4.9.59 have multimedia support built in to the kernel instead of as a module. When we build the crazycat build, it wants to replace the multimedia module but it gets ignored if it's built in.

    Building crazycat's media_build on RPi3 - Raspberry Pi Forums

    highly hacky - but is likely working (just copy DVB modules instead the whole media_tree stuff build by media_build).

    You can direct me to this provisional situation.

    I would like to try this method!

    Edited once, last by erbas (May 16, 2020 at 11:03 PM).

    • Official Post

    You can direct me to this provisional situation.

    basically take LE master, activate the dvb modules

    LibreELEC.tv/options at master · LibreELEC/LibreELEC.tv · GitHub

    add to make_target an command that deletes all modules that you are not interested in, so all that just dvb modules are there at the build folder

    you need to compile the full stack and remove it afterwards, if you disable it at compile time it won't work at all

    LibreELEC.tv/package.mk at master · LibreELEC/LibreELEC.tv · GitHub

    thats it basically, then it might work, but the crazycat version needs no be compatible with the current used kernel or it won't build at all

    because AML is likely always very close to the very latest kernel it might break

    so to get an idea what you need

    Use an LE version where the driver works, lsmod and have a look at the dvb driver that are in use and what dependencies it has. Then you know what drivers you actually need. Of course you could include everything else too but for a quick hacky try better delete all and just keep the files you need.

    basically the folder here

    /usr/lib/kernel-overlays/driver.dvb.crazycat/lib/modules/5.123.123/updates/driver.dvb.crazycat/ should only include the dvb drivers you are interested in at the LE image


    I try to setup some test PR soonish, but I still wait for my new PC to properly build LE. Can't tell you if this takes a week or a month.

  • I'm not good at this, and it's not an easy task for me.

    Have a little patience. For the second step add to make_target, I have no idea how to solve it!

    but I am quarantined tried (I am only good at following ready commands)^^^^

    Well I managed to make the first step!

    Construcão LibreELEC 9.2.1, Commits · LibreELEC/LibreELEC.tv · GitHub

    after construction I put it on an SD card and the crazycat driver was ready for activation.

    I connected the TBS5520SE but did not detect tuners.

  • add to make_target an command that deletes all modules that you are not interested in, so all that just dvb modules are there at the build folder

    you need to compile the full stack and remove it afterwards, if you disable it at compile time it won't work at all

    LibreELEC.tv/package.mk at master · LibreELEC/LibreELEC.tv · GitHub

    Can you help with this command?

    I just need the driver for TBS5520SE

    Don't know how to create the same!