The patch number 9554 was added via Jean-Francois Moine <[EMAIL PROTECTED]>
to http://linuxtv.org/hg/v4l-dvb master development tree.

Kernel patches in this development tree may be modified to be backward
compatible with older kernels. Compatibility modifications will be
removed before inclusion into the mainstream Kernel

If anyone has any objections, please let us know by sending a message to:
        [EMAIL PROTECTED]

------

merge: v4l-dvb


---

 linux/drivers/media/dvb/dm1105/dm1105.c   |    6 +-----
 linux/drivers/media/dvb/dvb-core/dvbdev.c |   18 ++++++++++++++++--
 2 files changed, 17 insertions(+), 7 deletions(-)

diff -r dbeee743998e -r 5050ec12d4c7 linux/drivers/media/dvb/dm1105/dm1105.c
--- a/linux/drivers/media/dvb/dm1105/dm1105.c   Tue Oct 28 12:00:23 2008 +0100
+++ b/linux/drivers/media/dvb/dm1105/dm1105.c   Thu Oct 30 08:44:52 2008 +0100
@@ -367,11 +367,7 @@ static int __devinit dm1105dvb_dma_map(s
 {
        dm1105dvb->ts_buf = pci_alloc_consistent(dm1105dvb->pdev, 
6*DM1105_DMA_BYTES, &dm1105dvb->dma_addr);
 
-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 27)
-       return pci_dma_mapping_error(dm1105dvb->dma_addr);
-#else
-       return pci_dma_mapping_error(dm1105dvb->pdev, dm1105dvb->dma_addr);
-#endif
+       return !dm1105dvb->ts_buf;
 }
 
 static void dm1105dvb_dma_unmap(struct dm1105dvb *dm1105dvb)
diff -r dbeee743998e -r 5050ec12d4c7 linux/drivers/media/dvb/dvb-core/dvbdev.c
--- a/linux/drivers/media/dvb/dvb-core/dvbdev.c Tue Oct 28 12:00:23 2008 +0100
+++ b/linux/drivers/media/dvb/dvb-core/dvbdev.c Thu Oct 30 08:44:52 2008 +0100
@@ -262,11 +262,11 @@ int dvb_register_device(struct dvb_adapt
 #if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 27)
        clsdev = device_create(dvb_class, adap->device,
                               MKDEV(DVB_MAJOR, nums2minor(adap->num, type, 
id)),
-                              NULL, "dvb%d.%s%d", adap->num, dnames[type], id);
+                              dvbdev, "dvb%d.%s%d", adap->num, dnames[type], 
id);
 #elif LINUX_VERSION_CODE == KERNEL_VERSION(2, 6, 27)
        clsdev = device_create_drvdata(dvb_class, adap->device,
                               MKDEV(DVB_MAJOR, minor),
-                              NULL, "dvb%d.%s%d", adap->num, dnames[type], id);
+                              dvbdev, "dvb%d.%s%d", adap->num, dnames[type], 
id);
 #else
        clsdev = device_create(dvb_class, adap->device,
                               MKDEV(DVB_MAJOR, minor),
@@ -451,6 +451,17 @@ out:
        return err;
 }
 
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27)
+static int dvb_uevent(struct device *dev, struct kobj_uevent_env *env)
+{
+       struct dvb_device *dvbdev = dev_get_drvdata(dev);
+
+       add_uevent_var(env, "DVB_DEVICE_NUM=%d", dvbdev->id);
+       add_uevent_var(env, "DVB_ADAPTER_NUM=%d", dvbdev->adapter->num);
+       return 0;
+}
+#endif
+
 static int __init init_dvbdev(void)
 {
        int retval;
@@ -477,6 +488,9 @@ static int __init init_dvbdev(void)
                retval = PTR_ERR(dvb_class);
                goto error;
        }
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27)
+       dvb_class->dev_uevent = dvb_uevent;
+#endif
        return 0;
 
 error:


---

Patch is available at: 
http://linuxtv.org/hg/v4l-dvb/rev/5050ec12d4c796fa2a7382590a45fbbab0495cd0

_______________________________________________
linuxtv-commits mailing list
linuxtv-commits@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to