Re: [PATCH v21 33/39] ASoC: usb: Fetch ASoC sound card information

From: Wesley Cheng
Date: Wed May 08 2024 - 20:14:12 EST


Hi Pierre,

On 5/7/2024 2:33 PM, Pierre-Louis Bossart wrote:

+/**
+ * snd_soc_usb_device_offload_available() - Fetch BE DAI link sound card
+ * @dev: the device to find in SOC USB
+ *
+ * Finds the component linked to a specific SOC USB instance, and returns
+ * the sound card number for the platform card supporting offloading.
+ *
+ */
+int snd_soc_usb_device_offload_available(struct device *dev)
+{
+ struct snd_soc_usb *ctx;
+
+ ctx = snd_soc_find_usb_ctx(dev);
+ if (!ctx)
+ return -ENODEV;
+
+ return ctx->component->card->snd_card->number;
+}

Presumably there's a notification to help applications discard this
information on removal?

If the platform/ASoC sound card is removed then the USB BE DAI is going to be unregistered from SOC USB. This would lead to the snd_soc_find_usb_ctx() to return with -ENODEV to the USB SND offload kcontrol call.

Thanks
Wesley Cheng