Hacking the Realtek DVB RTL2832U into Linux by hand

I had the misfortune of purchasing two of these PCIe TV tuners (as per lsusb):

Bus 004 Device 002: ID 1f4d:a803 G-Tek Electronics Group
Bus 003 Device 002: ID 1f4d:a803 G-Tek Electronics Group

I’d assumed that the RTL2832U was a common chipset, and would detect on a stock kernel. How wrong I was. Not only do you need to compile media_build, you need to patch media_build for this card to detect.

I originally found a patch for 3.8 kernel on the web. It seems I can’t find it on the web any more, and the kernel has changed slightly since then. I had to change how an enum was referenced to get it working in Linux 4.2.

Update 22nd Feb 2017: I had to update the patch to work on a 4.8 kernel. The 4.2 patch can still be found here.

Here’s the original instructions I found on the net (copy/pasted here).

sudo apt install build-essential 
sudo apt install linux-headers-`uname-r`
sudo apt install libproc-processtable-perl
mkdir dvb-2832u
cd dvb-2832u
git clone git://linuxtv.org/media_build.git
cd media_build
./build
cd linux/
patch -p1 < ../dvb-usb-rtl2832.patch
cd ..
make allmodconfig
make
sudo make install

It’s a bit of a pain when a kernel update comes through. After rebooting to the new kernel, you need to edit the following file and update the version number to the currently running kernel:

./v4l/.version

Then rebuild and install:

make
sudo make install

…and reboot.


Posted

in

by

Tags:

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *