Re: [PATCH v2 0/3] Allow SoundWire devices to communicate during remove
From: Pierre-Louis Bossart
Date: Tue Sep 29 2026 - 14:36:06 EST
On 9/25/26 17:42, Charles Keepax wrote:
> Currently on Intel systems SoundWire drivers can't communicate with the
> device during driver removal. This is primarily because the IRQs are
> disabled before the driver remove callback is run. The result of this is
> such transactions timeout causing a) a lot of errors in the log and b)
> driver remove to take a very long time.
>
> This issue affects cs42l43 and cs42l45, primarily due to both using
> regmap IRQ.
>
> soundwire_intel soundwire_intel.link.0: IO transfer timed out, cmd 3 device 6 addr 5d len 1
> soundwire sdw-master-0-0: trf on Slave 6 failed:-110 write addr 5d count 0
> sdca_class sdw:0:0:01fa:4245:01: Failed to sync masks in 5d
>
> As regmap IRQ is torn down it will mask the interrupts that are
> removed. However, there are many valid reasons a driver might want
> communicate with the device during removal, others would include
> disabling jack detection, putting the device into the lowest possible
> power state to save power, etc.
>
> This patch set attempts to address this problem trying to locate the
> reason interrupts are disabled, fixing that and then leaving the IRQs
> enabled for the remove callback.
>
> Thanks,
> Charles
>
> Changes since v1:
> - Add a new helper to destroy the children on the bus separately, this
> allows the IRQs to be disabled for final cleanup.
> - Split device_unregister into device_del and put_device.
>
> Changes since v1:
> - Add a new helper to destroy the children on the bus separately, this
> allows the IRQs to be disabled for final cleanup.
> - Split device_unregister into device_del and put_device.
>
> Charles Keepax (3):
> soundwire: bus: Don't unassign dev_num before unregistering device
> soundwire: bus: Expose a helper to remove devices from the bus
> soundwire: intel_auxdevice: Don't disable IRQs before removing
> children
I've run out of objections and can't think of a better solution, so for
the patchset:
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@xxxxxxxxx>
Thanks Charles!