[linux-dvb] [PATCH] Shrink saa7134 mmio mapped size

Andy Burns linux-dvb at adslpipe.co.uk
Wed Jul 2 17:50:06 CEST 2008

The saa7134 driver attempts to map a fixed 4K starting from the base 
address of its mmio area, regardless of the actual size of the area.
Any excessive mapping may extend past the end of a page, which goes 
un-noticed on bare-metal, but is detected and denied when the card is 
used with pci passthrough to a xen domU. If shared IRQ is used the 
"pollirq" kernel option may be required in dom0.

Signed-off-by: Andy Burns <andy at burns.net>
---- drivers/media/video/saa7134/saa7134-core.c.orig     2008-07-01 
16:46:49.000000000 +0100
+++ drivers/media/video/saa7134/saa7134-core.c  2008-07-02 
16:41:37.000000000 +0100
@@ -908,7 +908,8 @@
                        dev->name,(unsigned long 
                 goto fail1;
-       dev->lmmio = ioremap(pci_resource_start(pci_dev,0), 0x1000);
+       dev->lmmio = ioremap(pci_resource_start(pci_dev,0),
+                             pci_resource_len(pci_dev,0));
         dev->bmmio = (__u8 __iomem *)dev->lmmio;
         if (NULL == dev->lmmio) {
                 err = -EIO;

More information about the linux-dvb mailing list