diff options
| author | Chancel Liu <chancel.liu@nxp.com> | 2026-09-13 19:24:59 +0900 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2026-09-15 17:35:01 +0100 |
| commit | c7420dd9213de36a25e03c06e6d3367735970f31 (patch) | |
| tree | 6ca8032c8d6dbca359674dceba0cda0fd99ad088 /tools/perf/scripts/python/export-to-postgresql.py | |
| parent | fd73f4a6659897191fa0d40695fe370925dd3780 (diff) | |
ASoC: simple-card-utils: Add simple_util_remove_jack()
simple_util_init_jack() acquires a GPIO descriptor with
gpiod_get_optional() and hands it to snd_soc_jack_add_gpios(), which
additionally installs an IRQ handler, a PM notifier, a delayed work and
a sysfs export for it. simple-card-utils has no counterpart that
releases any of this again.
Add simple_util_remove_jack(), the counterpart of
simple_util_init_jack(). It releases the jack GPIO and everything
snd_soc_jack_add_gpios() installed for it via snd_soc_jack_free_gpios(),
and clears sjack->gpio.desc so the descriptor is not left dangling after
it has been put.
This gives the generic card drivers a card->remove() path to release the
jack when the card goes away. The devres cleanup alone is not enough:
it is tied to the platform device, so it does not run when the card is
unregistered and re-registered while the platform device stays bound -
for example when a codec component is unbound and bound again.
Signed-off-by: Chancel Liu <chancel.liu@nxp.com>
Link: https://patch.msgid.link/20260913102502.2805912-2-chancel.liu@oss.nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions
