diff options
author | Mauro Carvalho Chehab <m.chehab@samsung.com> | 2014-08-10 04:14:21 +0200 |
---|---|---|
committer | Mauro Carvalho Chehab <m.chehab@samsung.com> | 2014-08-21 22:25:10 +0200 |
commit | 2930977ac5934540d876715fdf32b1dd6f405df5 (patch) | |
tree | aa041b42c74722538999566039d9565623648b6f /drivers/media/usb/au0828/au0828.h | |
parent | [media] au0828: fix checks if dvb is initialized (diff) | |
download | linux-2930977ac5934540d876715fdf32b1dd6f405df5.tar.xz linux-2930977ac5934540d876715fdf32b1dd6f405df5.zip |
[media] au0828: Fix DVB resume when streaming
When DVB is streaming and suspend is called, it will call
au0828_stop_transport(), with will clean the streaming flag.
Due to that, stop_urb_transfer() will be called twice,
causing an oops.
So, we need another flag to be used at resume, telling it
to restart DVB.
While here, add a logic at stop_urb_transfer() to prevent
it of being called twice, and convert the usb_streaming
flag into boolean.
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Diffstat (limited to 'drivers/media/usb/au0828/au0828.h')
-rw-r--r-- | drivers/media/usb/au0828/au0828.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/media/usb/au0828/au0828.h b/drivers/media/usb/au0828/au0828.h index d187129b96b7..a7cc6e397fdd 100644 --- a/drivers/media/usb/au0828/au0828.h +++ b/drivers/media/usb/au0828/au0828.h @@ -267,8 +267,8 @@ struct au0828_dev { char *transfer_buffer[AU0828_MAX_ISO_BUFS];/* transfer buffers for isoc transfer */ - /* USB / URB Related */ - int urb_streaming; + /* DVB USB / URB Related */ + bool urb_streaming, need_urb_start; struct urb *urbs[URB_COUNT]; /* Preallocated transfer digital transfer buffers */ |