Re: Oops in CDC ACM after an Openmoko phone (neo1973) changes its usb interface from ACM to Ethernet

From: Alex Riesen
Date: Mon Aug 03 2009 - 09:22:44 EST


On Mon, Aug 3, 2009 at 15:04, Oliver Neukum<oliver@xxxxxxxxxx> wrote:
> Am Montag, 3. August 2009 11:17:05 schrieb Alex Riesen:
>> 466ÂÂÂÂÂÂÂÂÂÂÂÂÂep = (usb_pipein(acm->rx_endpoint) ? acm->dev->ep_in :
>> acm->dev->ep_out)
>> 467ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ[usb_pipeendpoint(acm->rx_endpoint)];
>> 468ÂÂÂÂÂÂÂÂÂÂÂÂÂif (usb_endpoint_xfer_int(&ep->desc))
>>
>> So it looks like ep is NULL (usb_endpoint_xfer_int accesses
>> desc.bmAttributes, which is 3 bytes off the beginning of struct
>> usb_host_endpoint (desc being the first field in usb_host_endpoint).
>
> This tells you that the device has been disconnected. The question
> is not why this function fails, but why it is called even though the
> device has been disconnected.

Cool. How can I help?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/