[Plugin] Linuxserver.io - Unraid DVB


Recommended Posts

OK, lemme fix this, I used to build bzimage, but there was plans to make the DVB stuff all incorporated within bzmodules and bzfirmware.  Relatively easy to add bzimage back into the script.

 

Including this for my own reference

│Symbol: FRAME_VECTOR [=y]                                                                                                                                                                                                             │  
  │ Type  : boolean                                                                                                                                                                                                                       │  
  │   Defined at mm/Kconfig:702                                                                                                                                                                                                           │  
  │   Selected by: VIDEOBUF2_MEMOPS [=m] && MEDIA_SUPPORT [=m] || VIDEO_OMAP2_VOUT [=n] && MEDIA_SUPPORT [=m] && V4L_PLATFORM_DRIVERS [=y] && MMU [=y] && (ARCH_OMAP2 || ARCH_OMAP3) && FB_OMAP2 [=n] || DRM_EXYNOS_G2D [=n] && HAS_IOMEM [=y] && DRM_EXYNOS [=n] && VIDEO_SAMSUNG_S5P_G2D [=n]=n 

 

  • Like 1
Link to comment
Just now, ProGEEK said:

Either that, or we include a patch as part of your build process to just compile frame_vector as a loadable kernel module and include it in the bzmodules

 

I like that option, but running a compile now, I'll upload it when it's finished and we can check it works.

 

And to be honest patching is out of my expertise, but you want to work on it, I'm all ears.  My only concern with that approach is could there be anything else that's "missing" that others might need for their cards.  Wondering if it's safer to just package up bzimage for each build?

Link to comment
3 minutes ago, CHBMB said:

 

I like that option, but running a compile now, I'll upload it when it's finished and we can check it works.

 

And to be honest patching is out of my expertise, but you want to work on it, I'm all ears.  My only concern with that approach is could there be anything else that's "missing" that others might need for their cards.  Wondering if it's safer to just package up bzimage for each build?

I guess thats a call we'd have to make based on feedback from the public, if there is minimal, say 2-3 that are unrelated to frame_vector, then I think patch is the better road, if more, then yeah, complete kernel replacement - Have you had any other reports of cards suddenly not working as a result of the new unraid ?

Im already working on and testing a patch

EDIT: attached is my working patch to generate a frame_vector.ko in mm: mm/frame_vector.ko
As long as the patch exists in the root of the kernel tree before line 38 of you kernel-compile-module.sh script executes, it'll be patched

compile_frame_vector_as_module.patch

Edited by ProGEEK
Added Patch
  • Upvote 1
Link to comment
6 minutes ago, CHBMB said:

@ProGEEK @Zan

 

Uploaded a new LibreELEC build with bzimage, if someone can confirm it works, we should be good.

 


root@matrix:~# dmesg | tail -n1
[   57.174478] cx23885: cx23885 driver version 0.0.4 loaded

@ProGEEK I'm up for the idea of the patch, one question, will this remain constant or will it require changing as Unraid changes kernel version?

It will work until either you edit the .config or the kernel changes for file mm/Kconfig

I could split the patch so each file is patched separately. or drop the .config from the patch and you just edit your .config to have CONFIG_FRAME_VECTOR=m
Then the patch would work until mm/Kconfig is updated, as the patch changes frame_vector to be able to be compiled as a module

 

Edited by ProGEEK
Link to comment
44 minutes ago, ProGEEK said:

@Zan I've attached my frame_vector.ko file.

Can you please download this to your machine and run


insmod frame_vector.ko
modprobe videobuf2_memops
modprobe cx23885

and see if your tuner springs to life ?

I'd do this myself, but my server isnt in a state where it can run the RC of unRAID right now.

frame_vector.ko

With the libreelec build, I get this:

root@Tower:~# insmod /boot/frame_vector.ko 
insmod: ERROR: could not insert module /boot/frame_vector.ko: Invalid module format
root@Tower:~# insmod /boot/frame_vector.ko 
insmod: ERROR: could not insert module /boot/frame_vector.ko: Invalid module format

I'll try your libreelec build now, @CHBMB

Link to comment
55 minutes ago, CHBMB said:

Hmmm, kernel changes with every Unraid release, and  i generate a new .config each time. 

 

Might be easier to replace CONFIG_FRAME_VECTOR=y with CONFIG_FRAME_VECTOR=m to be honest.

 

Should be relatively easy to achieve that in bash.

Might be just easier if you rebuild the bzimage every time.
So long as the code in /usr/src/whatever is the source that the unraid dev team use to build their kernel, it should be fine to use and we wont have to bother with the patch.

Edited by ProGEEK
Link to comment
4 hours ago, ProGEEK said:

Might be just easier if you rebuild the bzimage every time.
So long as the code in /usr/src/whatever is the source that the unraid dev team use to build their kernel, it should be fine to use and we wont have to bother with the patch.

 

Isn't it better to ask @limetechto include it as a module? Then you don't have to rebuild the B image. 

Link to comment
  • Squid locked this topic
Guest
This topic is now closed to further replies.