lkml.org 
[lkml]   [2006]   [Jun]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH] get USB suspend to work again on 2.6.17-mm1
    Mattai and Jiri, can you try the patch below to see if it fixes the USB
    suspend problem you are seeing with 2.6.17-mm1?

    David, we really should not be caring about what the children of a USB
    device is doing here, as who knows what type of "device" might hang off
    of a struct usb_device. This patch is just a band-aid around this area,
    until Alan's patches fix up everything "properly" :)

    thanks,

    greg k-h

    -----------------------------
    Subject: USB: get USB suspend to work again

    Yeah, it's a hack, but it is only temporary until Alan's patches
    reworking this area make it in. We really should not care what devices
    below us are doing, especially when we do not really know what type of
    devices they are. This patch relies on the fact that the endpoint
    devices do not have a driver assigned to us.

    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

    ---
    drivers/usb/core/usb.c | 2 ++
    1 file changed, 2 insertions(+)

    --- gregkh-2.6.orig/drivers/usb/core/usb.c
    +++ gregkh-2.6/drivers/usb/core/usb.c
    @@ -991,6 +991,8 @@ void usb_buffer_unmap_sg (struct usb_dev

    static int verify_suspended(struct device *dev, void *unused)
    {
    + if (dev->driver == NULL)
    + return 0;
    return (dev->power.power_state.event == PM_EVENT_ON) ? -EBUSY : 0;
    }

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/
    \
     
     \ /
      Last update: 2006-06-22 22:35    [W:2.516 / U:0.148 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site