[linux-dvb] af9005/mt2060 module unload failure

Olaf Titz olaf at bigred.inka.de
Thu Jun 14 20:55:26 CEST 2007


> ... You should not have to do the symbol_put inside af9005-fe.c
>   If you remove that code, does it fix the issue?

If I remove it, unloading the modules works, but on re-loading I get
the same error:
__tune_to_transponder:1507: ERROR: FE_READ_STATUS failed: 19 No such device
when I try to invoke "scan" after re-loading the modules. Looks like
the connection between demux and frontend driver gets lost (btw.
"modprobe -r dvb_usb_af9005" now does not unload mt2060 too, is that a
hint?)

When I physically remove and re-insert the USB device it works.

So this fixes the module count issue, but reloading fails nonetheless.
Either there is an issue with module loading which udev magically gets
right, or the driver doesn't like a "warm" device at all [btw. "warm"
is appropriate, the device does get really hot; is it possible to
disable it by software when unused so it does not draw that much power?]

Olaf


--- a/linux/drivers/media/dvb/dvb-usb/af9005-fe.c	Fri Jun 08 08:58:41 2007 -0300
+++ b/linux/drivers/media/dvb/dvb-usb/af9005-fe.c	Thu Jun 14 20:48:16 2007 +0200
@@ -1578,9 +1578,6 @@ static void af9005_fe_release(struct dvb
 	    (struct af9005_fe_state *)fe->demodulator_priv;
 	if (state->tuner != NULL && state->tuner->ops.tuner_ops.release != NULL) {
 		state->tuner->ops.tuner_ops.release(state->tuner);
-#ifdef CONFIG_DVB_CORE_ATTACH
-		symbol_put_addr(state->tuner->ops.tuner_ops.release);
-#endif
 	}
 	kfree(state);
 }

=== end of patch ===



More information about the linux-dvb mailing list