Message ID | 55cab333-c9ca-4edd-a002-1e2b650a9f5a@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | i2c: Replace lists of special clients with flagging of such clients | expand |
On Thu, 22 Aug 2024 21:47:18 +0200, Heiner Kallweit wrote: > > The i2c_driver.clients list is internal to I2C core and is going > to be removed. No driver should access it. Unregister the > i2c client explicitly before deleting the i2c driver. > > Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com> Reviewed-by: Takashi Iwai <tiwai@suse.de> thanks, Takashi
diff --git a/sound/ppc/keywest.c b/sound/ppc/keywest.c index 3d3513d9d..4ce81ac7f 100644 --- a/sound/ppc/keywest.c +++ b/sound/ppc/keywest.c @@ -61,12 +61,6 @@ static int keywest_attach_adapter(struct i2c_adapter *adapter) return -ENODEV; } - /* - * Let i2c-core delete that device on driver removal. - * This is safe because i2c-core holds the core_lock mutex for us. - */ - list_add_tail(&keywest_ctx->client->detected, - &to_i2c_driver(keywest_ctx->client->dev.driver)->clients); return 0; } @@ -99,6 +93,7 @@ static struct i2c_driver keywest_driver = { void snd_pmac_keywest_cleanup(struct pmac_keywest *i2c) { if (keywest_ctx && keywest_ctx == i2c) { + i2c_unregister_device(keywest_ctx->client); i2c_del_driver(&keywest_driver); keywest_ctx = NULL; }
The i2c_driver.clients list is internal to I2C core and is going to be removed. No driver should access it. Unregister the i2c client explicitly before deleting the i2c driver. Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com> --- sound/ppc/keywest.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-)