Linux TVHeadend: DVBSky S952 and HDHomerun simultaneously
#1
After installation of the DVBSky S952 Dual DVB-S2 PCIe card and the latest driver by the "media_build" method I got a driver conflict with the former installed and properly running DVB-T HDHomerun device.
After a conversion with Max from DVBSky I decided to patch my kernel. I used a guide from https://www.dvbshop.net/forum/viewtopic....04&p=15545 but due to some changes in the kernel config structure I could not enable the S952 driver.

After some investigations and successful installation of both drivers I decides to add a guide with a step-by-step picture guide for the kernel configuration part.

Thanks to Max from DVBSky for the support!

Step-by-Step-Guide:

Get the stable kernel from kernel.org, e.g. linux-3.8.4.tar.bz2 :

$ wget https://www.kernel.org/pub/linux/kernel/....4.tar.bz2

Go to /usr/src/ and extract the tar file:

$ tar xf linux-3.8.4.tar.bz2

That will create a directory linux-3.8.4/. Copy your current kernel config into it, with the filename .config:

$ cp /boot/config-$(uname -r) linux-3.8.4/.config

Get the latest patch for the Linux kernel from http://dvbsky.net/Support.html .

$ wget http://dvbsky.net/download/linux/kernel-....patch.zip

If it's in a zip file, extract it:

$ unzip kernel-3.8.4-dvbsky-wot2.patch.zip

Try to apply the patch (dry-run first):

$ patch --dry-run -p1 -d linux-3.8.4 <kernel-3.8.4-dvbsky-wot2.patch

If it doesn't complain, run that command again, but without the --dry-run.

$ patch -p1 -d linux-3.8.4 <kernel-3.8.4-dvbsky-wot2.patch

change into linux directory:
$ cd linux-3.8.4

If the previous kernel was a standard kernel just do:

$ make defconfig

If you had some special kernel modules enabled before, do:

$ make oldconfig

(Explanation:
The command "make defconfig" creates a configuration based on the defaults for your architecture.
Although these defaults are somewhat arbitrary (on i386, they are rumored to be Linus's configuration!),
they provide a good start if you have never configured the kernel before.
to "update current config utilising a provided .config as base" (that's from "make help") do "make oldconfig".
If you are coming from the old distro kernel, you will get a lot of questions.
Use the default answers for starters (hold down the Enter key).)

It's time to enable the S952 driver in the kernel config:

$ make menuconfig

and select the cx23885 driver (and deselect the other ones if not needed)

This is (for a beginner) the most complicated point of the entire process.
Here is a step-by-step guide by pictures:

watch gallery



Exit "make menuconfig" and save the .config file when asked to do so.

Now you're ready to compile the kernel. Choose a suffix (e.g. your initials and a number) and substitute YOUR_VERSION in the call of make-kpkg:

$ fakeroot make-kpkg --initrd --append-to-version=-YOUR_VERSION kernel-image kernel-headers


If the compile succeeds, you will get two packages in the directory /usr/src, linux-headers-*.deb and linux-image-*.deb.
Install them with e.g.:

$ sudo dpkg -i linux-headers-*.deb linux-image-*.deb

The kernel should be added to your Grub menu automatically.
Reboot and check whether it works. In my case it does.

After mux scanning and channel mapping in tvheadend one can give extra priorities to the adapters. (higher numbers mean lower priorities!)
I gave 5 to the DVB-S adapters and 50 to the DVB-T ones. It works like a charm.

Good luck!
Reply

Logout Mark Read Team Forum Stats Members Help
TVHeadend: DVBSky S952 and HDHomerun simultaneously0