On Wed, Jan 14, 2015 at 04:15:25PM +0100, Jean Delvare wrote: > On Wed, 14 Jan 2015 15:54:52 +0200, Pantelis Antoniou wrote: > > On Jan 14, 2015, at 15:49 , Jean Delvare <jdelvare@xxxxxxx> wrote: > > > That being said, nobody complained about this in 11 years, so I would > > > be surprised if it was plain wrong. I'd rather question the test code. > > > Where is it? > > > > No-one has apparently tested removing an i2c mux device on a running system > > before. > > I did that. On my system the i2c-i801 driver instantiates an > i2c-mux-gpio device. Unloading the i2c-i801 driver removes that device > and it works fine. Note however that I am not able to unload module > i2c-i801 immediately, I have to unload module i2c-mux-gpio first, as > the latter holds a reference to the former. This is because > i2c-mux-gpio calls i2c_get_adapter() on the parent I2C bus segment at > probing time. > > I see that i2c-mux-pinctrl does the same, but i2c-mux-pca954x and > i2c-mux-pca9541 do not. This might be an issue. I doubt this is related > to your problem though, as these are module references and not device > references. > Should we add get/put functions to those drivers ? Guenter -- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html