How to add a kernel module for USB DVB-T tuner?

Recommended Posts


I am trying to use my espressobin board which currently runs Bionic with Hauppauge USB DVB-T tuner.

It seems the default kernel does not have a module for it.

How do I build and use it? Can I build the module on the same device or should I use another machine for that?

Kind regards


Share this post

Link to post
Share on other sites



I've tried the same for a while with TBS5580 (dvb-s2/t2/etc usb card) for tinkerboard running ambrian kernel 4.4.y


I've used TBS github repo for V4L drives which seems has extra TBS open source drivers added to V4L, but straight building and loading modules did not work  - I've got kernel panic containing [   13.721533] PC is at dvb_usb_fe_wakeup+0x20/0x60 [dvb_usb]
[   13.723656] LR is at dvb_frontend_init+0x28/0x74 [dvb_core] etc.


It seems that since 4.4 there were changes in dvb-core and/or dvb-usb making just separately compiled driver modules sometimes not working for older kernels.  Therefore in kernel config CONFIG_MEDIA_SUPPORT=y  should be CONFIG_MEDIA_SUPPORT=m to support dvb-core as a module rather than "build-in".  This allows replacing the "original" dvb-core.ko with dvb-core.ko build fom V4L pack, otherwise there will be a conflict.  So you may need to compile kernel (unless CONFIG_MEDIA_SUPPORT is already set to "m" for your board and you already have "stock" dvb-core module)


Also (note that this is relevant for my experience, but may apply to you):

- there were changes in Kconfig language and "imply" used in one of Kconfigs in /drivers/media does not allow using make menuconfig (for rockchip's 4.4 at least), so I just replaced "imply HWMON" with "select HWMON" in that Kconfig, anyway that driver required higher kernel version

- backports patch 4.4 is not needed for rockchip's 4.4 - building the driver it patches will break, so either deselect that driver or comment out the patch in backports.txt with #

- I would be careful using make install since it will remove all original media modules including vendor specific, but would manually copy/replace only needed ones and run depmod thereafter


PS: I've used ambrian build in VM for kernel, but build V4L on tinkerboard itself to avoid thinking on cross compilation 

Share this post

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.