This symbol mismatch is handled by NULL'ing out the release
callback if the driver is loaded as an i2c device.
This patch reverts:
- commit
94448e21cf08 ("media: lgdt3306a: Fix a double kfree on i2c
device remove")
- commit
835d66173a38 ("media: lgdt3306a: Fix module count mismatch
on usb unplug")
The symbol count mismatch is handled by:
- commit
5b3a8e906973 ("media: lgdt3306a: Set fe ops.release to
NULL if probed")
Signed-off-by: Brad Love <brad@nextdimension.cc>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
struct lgdt3306a_state *state = fe->demodulator_priv;
dbg_info("\n");
-
- /*
- * If state->muxc is not NULL, then we are an i2c device
- * and lgdt3306a_remove will clean up state
- */
- if (!state->muxc)
- kfree(state);
+ kfree(state);
}
static const struct dvb_frontend_ops lgdt3306a_ops;
sizeof(struct lgdt3306a_config));
config->i2c_addr = client->addr;
- fe = dvb_attach(lgdt3306a_attach, config, client->adapter);
+ fe = lgdt3306a_attach(config, client->adapter);
if (fe == NULL) {
ret = -ENODEV;
goto err_fe;