Commit 5b74c2c7 authored by Michel Ludwig's avatar Michel Ludwig Committed by Mauro Carvalho Chehab
Browse files

V4L/DVB (12816): tm6000: fix tm6000 attach method and fix a few CodingStyles

parent 47878f16
Loading
Loading
Loading
Loading
+24 −10
Original line number Diff line number Diff line
@@ -28,6 +28,8 @@

#include <media/tuner.h>

#include "tuner-xc2028.h"

static void tm6000_urb_received(struct urb *urb)
{
	int ret;
@@ -232,19 +234,28 @@ int tm6000_dvb_register(struct tm6000_core *dev)
	dvb->adapter.priv = dev;

	if (dvb->frontend) {
		struct xc2028_config cfg = {
			.i2c_adap  = &dev->i2c_adap,
			.video_dev = dev,
		};

		ret = dvb_register_frontend(&dvb->adapter, dvb->frontend);
		if (ret < 0) {
			printk("tm6000: couldn't register frontend\n");
			printk(KERN_ERR
				"tm6000: couldn't register frontend\n");
			goto adapter_err;
		}

		// attach the tuner like this for now
		tm6000_i2c_call_clients(dev, VIDIOC_INT_DVB_TUNER_ATTACH, dvb->frontend);

		printk("tm6000: XC2028/3028 asked to be attached to frontend!\n");
		if (!dvb_attach(xc2028_attach, dvb->frontend, &cfg)) {
			printk(KERN_ERR "tm6000: couldn't register "
					"frontend (xc3028)\n");
			ret = -EINVAL;
			goto adapter_err;
		}
	else {
		printk("tm6000: no frontend found\n");
		printk(KERN_INFO "tm6000: XC2028/3028 asked to be "
				 "attached to frontend!\n");
	} else {
		printk(KERN_ERR "tm6000: no frontend found\n");
	}

	dvb->demux.dmx.capabilities = DMX_TS_FILTERING | DMX_SECTION_FILTERING
@@ -278,6 +289,9 @@ int tm6000_dvb_register(struct tm6000_core *dev)
frontend_err:
	if(dvb->frontend) {
		dvb_unregister_frontend(dvb->frontend);
#ifdef CONFIG_DVB_CORE_ATTACH
		symbol_put(xc3028_attach);
#endif
	}
adapter_err:
	dvb_unregister_adapter(&dvb->adapter);