Re: [PATCH v24 10/34] ASoC: usb: Create SOC USB SND jack kcontrol

From: Pierre-Louis Bossart
Date: Thu Aug 01 2024 - 05:13:05 EST





> +static inline int snd_soc_usb_setup_offload_jack(struct snd_soc_component *component,
> + struct snd_soc_jack *jack)
> +{
> + return -ENODEV;
> +}
> +
> +static inline int snd_soc_usb_disable_offload_jack(struct snd_soc_component *component)
> +{
> + return -ENODEV;
> +}

usually fallback functions return 0, is the error code intentional?


> +int snd_soc_usb_setup_offload_jack(struct snd_soc_component *component,
> + struct snd_soc_jack *jack)
> +{
> + int ret;
> +
> + ret = snd_soc_card_jack_new(component->card, "USB Offload Playback Jack",

do we need the reference to Playback?

> + SND_JACK_HEADPHONE, jack);

wondering if there would be any merit in defining a new type of jack,
e.g. SND_JACK_USB since here the purpose is to notify that there's a USB
device connected. The type of device does not really matter, does it?


> + if (ret < 0) {
> + dev_err(component->card->dev, "Unable to add USB offload jack\n");
> + return ret;
> + }
> +
> + ret = snd_soc_component_set_jack(component, jack, NULL);
> + if (ret) {
> + dev_err(component->card->dev, "Failed to set jack: %d\n", ret);
> + return ret;
> + }
> +
> + return 0;