diff options
| author | Peter Ujfalusi <peter.ujfalusi@linux.intel.com> | 2026-10-27 10:38:39 +0200 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2026-10-27 11:53:12 +0000 |
| commit | 08a44bde821d4fe22c0b6e63da04b3c59ac243a8 (patch) | |
| tree | 20206e43271709fc3cc6f7ee99aed917bbc5f519 /scripts/basic | |
| parent | 7d357eae973a1e1933f81f55aa1b3b4e3064570f (diff) | |
| download | linux-08a44bde821d4fe22c0b6e63da04b3c59ac243a8.tar.gz linux-08a44bde821d4fe22c0b6e63da04b3c59ac243a8.zip | |
ASoC: hdac_hda: Restore the codec device type on unbind
hdac_hda_codec_probe() changes the type of the codec device to
HDA_DEV_ASOC to prevent snd_hda_codec_unregister() from unregistering
the device when the card is freed.
The type is never restored, and hda_bus_match() requires the device and
driver types to be equal. After unbinding the codec driver via sysfs the
HDA_DEV_LEGACY codec drivers no longer match the device and bind fails
with -ENODEV.
Restore HDA_DEV_LEGACY with a device managed action registered before
the component, so it runs after the component and the card are gone.
Fixes: b60ee2e281b6 ("ASoC: hdac_hda: overwrite hdev type to HDA_DEV_ASOC")
Cc: stable@vger.kernel.org
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://patch.msgid.link/20261027083840.28813-3-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'scripts/basic')
0 files changed, 0 insertions, 0 deletions
