• M
    usb: gadget: uvc_video: add worker to handle the frame pumping · 43cd0023
    Michael Grzeschik 提交于
    This patch changes the function uvc_video_pump to be a separate
    scheduled worker. This way the completion handler of each usb request
    and every direct caller of the pump has only to schedule the worker
    instead of doing the request handling by itself.
    
    Moving the request handling to one thread solves the locking problems
    between the three queueing cases in the completion handler, v4l2_qbuf
    and video_enable.
    
    Many drivers handle the completion handlers directly in their interrupt
    handlers. This patch also reduces the workload on each interrupt.
    Signed-off-by: NMichael Grzeschik <m.grzeschik@pengutronix.de>
    Signed-off-by: NFelipe Balbi <balbi@kernel.org>
    43cd0023
uvc.h 4.1 KB