This is an automatic generated email to let you know that the following patch 
were queued at the 
http://git.linuxtv.org/media_tree.git tree:

Subject: [media] tm6000: Don't try to use a non-existing interface
Author:  Mauro Carvalho Chehab <[email protected]>
Date:    Thu Sep 1 02:57:02 2011 -0300

> [34883.426065] tm6000 #0: registered device video0
> [34883.430591] Trident TVMaster TM5600/TM6000/TM6010 USB2 board (Load status: 
> 0)
> [34883.437763] usbcore: registered new interface driver tm6000
> [34884.608372] BUG: unable to handle kernel NULL pointer dereference at 
> 00000002
> [34884.615514] IP: [<f8c4ceea>] tm6000_reset+0xd7/0x11c [tm6000]

The dev->int_in USB interfaces is used by some devices for the
Remote Controller. Not all devices seem to define this interface,
so, tm6000_reset should not try to set the interface to it on
such devices.

Signed-off-by: Mauro Carvalho Chehab <[email protected]>

 drivers/staging/tm6000/tm6000-core.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

---

http://git.linuxtv.org/media_tree.git?a=commitdiff;h=f8dbab29f4d4b977a56776af0d5296b0e6386aef

diff --git a/drivers/staging/tm6000/tm6000-core.c 
b/drivers/staging/tm6000/tm6000-core.c
index 9cef1d1..b3c4e05 100644
--- a/drivers/staging/tm6000/tm6000-core.c
+++ b/drivers/staging/tm6000/tm6000-core.c
@@ -621,6 +621,12 @@ int tm6000_reset(struct tm6000_core *dev)
 
        msleep(5);
 
+       /*
+        * Not all devices have int_in defined
+        */
+       if (!dev->int_in.endp)
+               return 0;
+
        err = usb_set_interface(dev->udev, dev->isoc_in.bInterfaceNumber, 2);
        if (err < 0) {
                tm6000_err("failed to select interface %d, alt. setting 2\n",

_______________________________________________
linuxtv-commits mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to