diff options
author | Heiner Kallweit <hkallweit1@gmail.com> | 2024-11-01 23:07:14 +0100 |
---|---|---|
committer | Wolfram Sang <wsa+renesas@sang-engineering.com> | 2025-01-03 13:21:54 +0100 |
commit | 60be800603ff81d43b2fbb3c067bbef49f7d8414 (patch) | |
tree | 19691d5251cb908db2417466db069f83f729e9c2 /sound/ppc | |
parent | fc033cf25e612e840e545f8d5ad2edd6ba613ed5 (diff) |
ALSA: ppc: Remove i2c client removal hack
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.
Reviewed-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Diffstat (limited to 'sound/ppc')
-rw-r--r-- | sound/ppc/keywest.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/sound/ppc/keywest.c b/sound/ppc/keywest.c index 3d3513d9def5..4ce81ac7f700 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; } |