From: Antti Palosaari <crope@iki.fi>
Date: Mon, 18 Jun 2012 02:42:11 +0000 (-0300)
Subject: [media] dvb_usb_v2: git rid of dvb_usb_adapter state variable
X-Git-Tag: firefly_0821_release~3680^2~275^2~1633
X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=4edcf22bf2cf5fe679dd51c6d0f092f1fabdff1e;p=firefly-linux-kernel-4.4.55.git

[media] dvb_usb_v2: git rid of dvb_usb_adapter state variable

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>
---

diff --git a/drivers/media/dvb/dvb-usb/dvb_usb.h b/drivers/media/dvb/dvb-usb/dvb_usb.h
index 6bd27e511102..933d69004ab7 100644
--- a/drivers/media/dvb/dvb-usb/dvb_usb.h
+++ b/drivers/media/dvb/dvb-usb/dvb_usb.h
@@ -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;
diff --git a/drivers/media/dvb/dvb-usb/dvb_usb_dvb.c b/drivers/media/dvb/dvb-usb/dvb_usb_dvb.c
index 97b509332430..9e1bf03e03b3 100644
--- a/drivers/media/dvb/dvb-usb/dvb_usb_dvb.c
+++ b/drivers/media/dvb/dvb-usb/dvb_usb_dvb.c
@@ -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)
@@ -244,9 +241,8 @@ 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:
@@ -254,6 +250,7 @@ err_dmx_dev:
 err_dmx:
 	dvb_unregister_adapter(&adap->dvb_adap);
 err:
+	adap->dvb_adap.priv = NULL;
 	return ret;
 }
 
@@ -261,15 +258,14 @@ 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;
 }