Showing posts with label saa7134. Show all posts
Showing posts with label saa7134. Show all posts

09 October 2012

253. Leadtek DTV 1000s in kernel 3.6 (debian wheezy)

My Leadtek DTV 1000s has been working fine for a long time after the initial set-up, but when upgrading from kernel 3.4.0 to 3.6.0 on my tv computer' it suddenly stopped working.
me-tv 1.3.7-3

lspci shows
01:06.0 Multimedia controller: Philips Semiconductors SAA7130 Video Broadcast Decoder (rev 01)
but

 lsmod|grep saa 

returns nothing and there's nothing that looks right in /dev

Finally
sudo modprobe saa7134
FATAL: Module saa7134 not found.

 ls /lib/modules/3.4.0-amd64/kernel/drivers/media
common  dvb  media.ko  radio  rc  video
but

ls /lib/modules/3.6.0-amd64/kernel/drivers/media
common  dvb
Basically, saa7134.ko is never built.

I installed kernel 3.6 from deb files compiled on another computer. My first step was to uninstall linux-headers-3.6.0-amd64 and linux-image-3.6.0-amd64


Next, to get the saa7134 module-- roughly follow this post we get

wget http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.6.tar.bz2
tar xvf linux-3.6.tar.bz2
cd linux-3.6/
cat /boot/config-`uname -r`>.config
make oldconfig

Make sure to answer in the affirmative here:
* Multimedia support
*
Multimedia support (MEDIA_SUPPORT) [M/n/y/?] Y
*
* Multimedia core support
*
Cameras/video grabbers support (MEDIA_CAMERA_SUPPORT) [N/y/?] (NEW) Y
Analog TV support (MEDIA_ANALOG_TV_SUPPORT) [N/y/?] (NEW)
Digital TV support (MEDIA_DIGITAL_TV_SUPPORT) [N/y/?] (NEW) Y
AM/FM radio receivers/transmitters support (MEDIA_RADIO_SUPPORT) [N/y/?] (NEW)
Remote Controller support (MEDIA_RC_SUPPORT) [N/y/?] (NEW) Y

Then build as usual
time fakeroot make-kpkg -j2 --initrd --revision=3.6.0 --append-to-version=-amd64 kernel_image kernel_headers

You can check that it built by

me@lithium:~/tmp/linux-3.6$ ls drivers/media/video/saa7134/*.ko -lah
drivers/media/video/saa7134/saa6752hs.ko
drivers/media/video/saa7134/saa7134-alsa.ko
drivers/media/video/saa7134/saa7134-dvb.ko
drivers/media/video/saa7134/saa7134-empress.ko
drivers/media/video/saa7134/saa7134.ko

All that's left now is to install the kernel:
mv ../linux*3.6*.deb . 
sudo dpkg -i *.deb

and you're done (see the original post for loading the driver: i.e. put options saa7134 tuner=48 card=175 in your /etc/modules) -- unless you have an nvidia graphics card, in which case

me@lithium:~/tmp/linux-3.6$ sudo dpkg-reconfigure nvidia-kernel-dkms

-------- Uninstall Beginning --------
Module:  nvidia
Version: 304.48
Kernel:  3.4.0-amd64 (x86_64)
-------------------------------------

Status: Before uninstall, this module version was ACTIVE on this kernel.

nvidia.ko:
 - Uninstallation
   - Deleting from: /lib/modules/3.4.0-amd64/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.

depmod.......

DKMS: uninstall completed.

-------- Uninstall Beginning --------
Module:  nvidia
Version: 304.48
Kernel:  3.6.0-amd64 (x86_64)
-------------------------------------

Status: Before uninstall, this module version was ACTIVE on this kernel.

nvidia.ko:
 - Uninstallation
   - Deleting from: /lib/modules/3.6.0-amd64/updates/dkms/
 - Original module
   - No original module was found for this module on this kernel.
   - Use the dkms install command to reinstall any previous module version.

depmod....

DKMS: uninstall completed.

------------------------------
Deleting module version: 304.48
completely from the DKMS tree.
------------------------------
Done.
Loading new nvidia-304.48 DKMS files...
Building for 3.4.0-amd64 and 3.6.0-amd64
Building initial module for 3.4.0-amd64
Done.

nvidia:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/3.4.0-amd64/updates/dkms/

depmod....

DKMS: install completed.
Building initial module for 3.6.0-amd64
Done.

nvidia:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/3.6.0-amd64/updates/dkms/

depmod....

DKMS: install completed.