• yuzheng ma's avatar
    usb: musb: host: fix for musb_start_urb Oops · 3067779b
    yuzheng ma authored
    when using musb_urb_enqueue to submit three urbs to the same endpoint, when
    hep->hcpriv is NULL, qh will be allocated when the first urb is completed.
    
    When the IRQ completes the next two urbs, qh->hep->hcpriv will be set to NULL.
    Now the second urb get musb->lock and executes musb_schedule(), but
    next_urb(qh) is NULL, so musb_start_urb will Oops.
    
    [ balbi@ti.com : practically rewrote commit log so it makes sense ]
    Signed-off-by: default avatarmayuzheng <myz147@gmail.com>
    Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
    3067779b
musb_host.c 64.5 KB