From 0ec6de1c0fd4aee2037559520db72b6271f2fba3 Mon Sep 17 00:00:00 2001 From: Michael Hunold Date: Wed, 18 Aug 2004 16:01:48 +0000 Subject: - remove dvb i2c code (all drivers are ported to kernel i2c) - remove dvb i2c frontend (un)register code (all drivers use non-i2c frontend calls now) - add i2c driver ids for all frontends to dvb_frontend.h (should be submitted to i2c-id.h) - fix usage of i2c driver ids in dst, ves1x93, nxt6000 drivers - remove dvb i2c functionality from av7110 and budget drivers - remove dvb i2c functionality from Skystar2 driver - fix up kernel Makefile - add a FE_ATSC case to avoid compiler warning (print warning message instead) --- linux/drivers/media/dvb/b2c2/skystar2.c | 41 ++++----------------------------- 1 file changed, 4 insertions(+), 37 deletions(-) (limited to 'linux/drivers/media/dvb/b2c2') diff --git a/linux/drivers/media/dvb/b2c2/skystar2.c b/linux/drivers/media/dvb/b2c2/skystar2.c index 1dc7b801b..9a5449383 100644 --- a/linux/drivers/media/dvb/b2c2/skystar2.c +++ b/linux/drivers/media/dvb/b2c2/skystar2.c @@ -40,7 +40,6 @@ #include -#include "dvb_i2c.h" #include "dvb_frontend.h" #include @@ -98,7 +97,6 @@ struct adapter { struct dmxdev dmxdev; struct dmx_frontend hw_frontend; struct dmx_frontend mem_frontend; - struct dvb_i2c_bus *i2c_bus; struct i2c_adapter i2c_adap; struct dvb_net dvbnet; @@ -287,9 +285,9 @@ static u32 flex_i2c_write(struct adapter *adapter, u32 device, u32 bus, u32 addr return buf - start; } -static int master_xfer(struct dvb_i2c_bus *i2c, const struct i2c_msg *msgs, int num) +static int master_xfer(struct i2c_adapter* adapter, struct i2c_msg msgs[], int num) { - struct adapter *tmp = i2c->data; + struct adapter *tmp = i2c_get_adapdata(adapter); int i, ret = 0; if (down_interruptible(&tmp->i2c_sem)) @@ -2261,15 +2259,6 @@ int client_unregister(struct i2c_client *client) return 0; } -static int flexcop_i2c_xfer(struct i2c_adapter *i2c_adapter, struct i2c_msg msg[], int num) -{ - struct adapter *adapter = i2c_get_adapdata(i2c_adapter); - - dprintk("flexcop_i2c_xfer\n"); - - return master_xfer(adapter->i2c_bus, msg, num); -} - u32 flexcop_i2c_func(struct i2c_adapter *adapter) { printk("flexcop_i2c_func\n"); @@ -2280,7 +2269,7 @@ u32 flexcop_i2c_func(struct i2c_adapter *adapter) static struct i2c_algorithm flexcop_algo = { .name = "flexcop i2c algorithm", .id = I2C_ALGO_BIT, - .master_xfer = flexcop_i2c_xfer, + .master_xfer = master_xfer, .functionality = flexcop_i2c_func, }; @@ -2319,35 +2308,16 @@ static int skystar2_probe(struct pci_dev *pdev, const struct pci_device_id *ent) memset(&adapter->i2c_adap, 0, sizeof(struct i2c_adapter)); strcpy(adapter->i2c_adap.name, "Technisat SkyStar2 driver"); -#if ( LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0) ) - adapter->i2c_adap.data = adapter; -#else i2c_set_adapdata(&adapter->i2c_adap, adapter); - #ifdef I2C_ADAP_CLASS_TV_DIGITAL - adapter->i2c_adap.class = I2C_ADAP_CLASS_TV_DIGITAL; - #else - adapter->i2c_adap.class = I2C_CLASS_TV_DIGITAL; - #endif - -#endif + adapter->i2c_adap.class = I2C_CLASS_TV_DIGITAL; adapter->i2c_adap.algo = &flexcop_algo; adapter->i2c_adap.algo_data = NULL; adapter->i2c_adap.id = I2C_ALGO_BIT; adapter->i2c_adap.client_register = client_register; adapter->i2c_adap.client_unregister = client_unregister; - - adapter->i2c_bus = dvb_register_i2c_bus(master_xfer, adapter, adapter->dvb_adapter, 0); - - if (!adapter->i2c_bus) { - dvb_unregister_adapter (adapter->dvb_adapter); - return -ENOMEM; - } - - if (i2c_add_adapter(&adapter->i2c_adap) < 0) { - dvb_unregister_i2c_bus (master_xfer, adapter->i2c_bus->adapter, adapter->i2c_bus->id); dvb_unregister_adapter (adapter->dvb_adapter); return -ENOMEM; } @@ -2418,9 +2388,6 @@ static void skystar2_remove(struct pci_dev *pdev) i2c_del_adapter(&adapter->i2c_adap); - if (adapter->i2c_bus != NULL) - dvb_unregister_i2c_bus(master_xfer, adapter->i2c_bus->adapter, adapter->i2c_bus->id); - dvb_unregister_adapter(adapter->dvb_adapter); } driver_halt(pdev); -- cgit v1.2.3