[CentOS-devel] Missing DVB driver(s) in centosplus 5.2 kernel

Sun Jun 29 01:01:11 UTC 2008
Andy Burns <lists.centos.org at adslpipe.co.uk>

I've been trying to install a mythtv backend in centos 5.2 under Xen, 
with PCI passthrough of a DVB-T tuner to the domU.

In theory I should just need to use the centosplus kernel to get the 
additional video capture drivers. In practice I've got two problems, the 
first of which I think is easy to solve.

Once I got the PCI device visible in the domU, I could load the saa7134 
driver for the analogue section of the card, but I couldn't load the 
saa7134_dvb driver for the digital section of the card, this driver is 
missing from the centosplus kernel.

I've installed the kernel source, and modified the .config file as shown 
in the patch below (the extra SAA7134_DVB settings are what my card 
requires, but I figure there are potentially users of the BT848_DVB 
driver that might appreciate that being included too).

After re-building the relevant modules, copying them to /lib/modules and 
doing "depmod -a" I can load the saa7134_dvb module.

I saw another user who experienced the same issue with centos 5.1 and 
Johnny Hughes said he would be willing to enable extra modules if they 
would help.

http://lists.centos.org/pipermail/centos/2007-December/091890.html

Could the relevant .config files for centosplus kernels be patched as 
follows?

--- .config.pre  2008-06-29 00:41:18.000000000 +0100
+++ .config.post 2008-06-29 01:33:04.000000000 +0100
@@ -1,7 +1,7 @@
  #
  # Automatically generated make config: don't edit
  # Linux kernel version: 2.6.18-prep
-# Sun Jun 29 00:41:10 2008
+# Sun Jun 29 01:33:04 2008
  #
  CONFIG_X86_64=y
  CONFIG_64BIT=y
@@ -2035,7 +2035,7 @@
  # CONFIG_VIDEO_ADV_DEBUG is not set
  CONFIG_VIDEO_VIVI=m
  CONFIG_VIDEO_BT848=m
-# CONFIG_VIDEO_BT848_DVB is not set
+CONFIG_VIDEO_BT848_DVB=y
  CONFIG_VIDEO_SAA6588=m
  CONFIG_VIDEO_BWQCAM=m
  CONFIG_VIDEO_CQCAM=m
@@ -2057,7 +2057,8 @@
  CONFIG_VIDEO_ZORAN_AVS6EYES=m
  CONFIG_VIDEO_SAA7134=m
  CONFIG_VIDEO_SAA7134_ALSA=m
-# CONFIG_VIDEO_SAA7134_DVB is not set
+CONFIG_VIDEO_SAA7134_DVB=m
+CONFIG_VIDEO_SAA7134_DVB_ALL_FRONTENDS=y
  CONFIG_VIDEO_MXB=m
  CONFIG_VIDEO_DPC=m
  CONFIG_VIDEO_HEXIUM_ORION=m

My second problem is a bit harder, or possibly a sign that I've not 
configured xen pciback/pcifront properly.  When the saa7134 driver is 
loaded in the domU, I see the following messages in dmesg

saa7130/34: v4l2 driver version 0.2.14 loaded
saa7130[0]: found at 0000:00:00.0, rev: 1, irq: 17, latency: 64, mmio: 
0xfebffc00
saa7130[0]: subsystem: 185b:c901, board: Compro Videomate DVB-T200 
[card=71,autodetected]
saa7130[0]: can't ioremap() MMIO memory
saa7134: probe of 0000:00:00.0 failed with error -5

I'm not sure if the saa7134 driver is unusual in trying to perform an 
ioremap which is causing the error?

         dev->lmmio = ioremap(pci_resource_start(pci_dev,0), 0x1000);

Any suggestions on that one?