Skip to content

Commit

Permalink
[media] dvb_usb_v2: git rid of dvb_usb_adapter state variable
Browse files Browse the repository at this point in the history
We can live without it easily.

Also USB data stream complete callback checks for feedcount
seems to be quite redundant so remove those also.

Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
  • Loading branch information
Antti Palosaari authored and Mauro Carvalho Chehab committed Aug 4, 2012
1 parent 5da2aec commit 4edcf22
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 20 deletions.
3 changes: 0 additions & 3 deletions drivers/media/dvb/dvb-usb/dvb_usb.h
Original file line number Diff line number Diff line change
Expand Up @@ -297,9 +297,6 @@ struct usb_data_stream {
* @stream: the usb data stream.
*/
struct dvb_usb_adapter {
#define DVB_USB_ADAP_STATE_INIT 0x000
#define DVB_USB_ADAP_STATE_DVB 0x001
int state;
struct dvb_usb_device *dev;
const struct dvb_usb_adapter_properties *props;
struct usb_data_stream stream;
Expand Down
30 changes: 13 additions & 17 deletions drivers/media/dvb/dvb-usb/dvb_usb_dvb.c
Original file line number Diff line number Diff line change
Expand Up @@ -8,28 +8,25 @@
*/
#include "dvb_usb_common.h"

static void dvb_usb_data_complete(struct usb_data_stream *stream, u8 *buffer,
size_t length)
static void dvb_usb_data_complete(struct usb_data_stream *stream, u8 *buf,
size_t len)
{
struct dvb_usb_adapter *adap = stream->user_priv;
if (adap->feedcount > 0 && adap->state & DVB_USB_ADAP_STATE_DVB)
dvb_dmx_swfilter(&adap->demux, buffer, length);
dvb_dmx_swfilter(&adap->demux, buf, len);
}

static void dvb_usb_data_complete_204(struct usb_data_stream *stream,
u8 *buffer, size_t length)
static void dvb_usb_data_complete_204(struct usb_data_stream *stream, u8 *buf,
size_t len)
{
struct dvb_usb_adapter *adap = stream->user_priv;
if (adap->feedcount > 0 && adap->state & DVB_USB_ADAP_STATE_DVB)
dvb_dmx_swfilter_204(&adap->demux, buffer, length);
dvb_dmx_swfilter_204(&adap->demux, buf, len);
}

static void dvb_usb_data_complete_raw(struct usb_data_stream *stream,
u8 *buffer, size_t length)
static void dvb_usb_data_complete_raw(struct usb_data_stream *stream, u8 *buf,
size_t len)
{
struct dvb_usb_adapter *adap = stream->user_priv;
if (adap->feedcount > 0 && adap->state & DVB_USB_ADAP_STATE_DVB)
dvb_dmx_swfilter_raw(&adap->demux, buffer, length);
dvb_dmx_swfilter_raw(&adap->demux, buf, len);
}

int dvb_usbv2_adapter_stream_init(struct dvb_usb_adapter *adap)
Expand Down Expand Up @@ -244,32 +241,31 @@ int dvb_usbv2_adapter_dvb_init(struct dvb_usb_adapter *adap)
}

mutex_init(&adap->sync_mutex);
adap->state |= DVB_USB_ADAP_STATE_DVB;
return 0;

return 0;
err_net_init:
dvb_dmxdev_release(&adap->dmxdev);
err_dmx_dev:
dvb_dmx_release(&adap->demux);
err_dmx:
dvb_unregister_adapter(&adap->dvb_adap);
err:
adap->dvb_adap.priv = NULL;
return ret;
}

int dvb_usbv2_adapter_dvb_exit(struct dvb_usb_adapter *adap)
{
pr_debug("%s: adap=%d\n", __func__, adap->id);

if (adap->state & DVB_USB_ADAP_STATE_DVB) {
pr_debug("%s: unregistering DVB part\n", __func__);
if (adap->dvb_adap.priv) {
dvb_net_release(&adap->dvb_net);
adap->demux.dmx.close(&adap->demux.dmx);
dvb_dmxdev_release(&adap->dmxdev);
dvb_dmx_release(&adap->demux);
dvb_unregister_adapter(&adap->dvb_adap);
adap->state &= ~DVB_USB_ADAP_STATE_DVB;
}

return 0;
}

Expand Down

0 comments on commit 4edcf22

Please sign in to comment.