• Felipe Balbi's avatar
    usb: dwc3: gadget: stop touching HWO TRBs · 7282c4ef
    Felipe Balbi authored
    Say we have three requests prepared to the HW (reqA,
    reqB, and reqC). All of them are composed of
    SG-lists with several entries and they all requests
    interrupt only on last TRBs of the SG-list.
    
    When we get interrupt for reqA, it could be that
    reqB is already half-way transferred and some of its
    TRBs will have HWO already cleared.
    
    It's okay to free up TRBs without HWO bit set, but
    we need to guarantee we don't giveback a request
    that's half-way transferred as that will confuse
    gadget drivers.
    Signed-off-by: default avatarFelipe Balbi <felipe.balbi@linux.intel.com>
    7282c4ef
gadget.c 77 KB