linux-loongson/sound/soc/qcom/usb_offload_utils.h
Wesley Cheng 1b8d0d87b9 ASoC: qcom: qdsp6: Add headphone jack for offload connection status
The headphone jack framework has a well defined infrastructure for
notifying userspace entities through input devices.  Expose a jack device
that carries information about if an offload capable device is connected.
Applications can further identify specific offloading information through
other SND kcontrols.

Signed-off-by: Wesley Cheng <quic_wcheng@quicinc.com>
Acked-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20250409194804.3773260-26-quic_wcheng@quicinc.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-04-11 13:02:32 +02:00

31 lines
912 B
C

/* SPDX-License-Identifier: GPL-2.0
*
* Copyright (c) 2022-2025 Qualcomm Innovation Center, Inc. All rights reserved.
*/
#ifndef __QCOM_SND_USB_OFFLOAD_UTILS_H__
#define __QCOM_SND_USB_OFFLOAD_UTILS_H__
#include <sound/soc.h>
#if IS_ENABLED(CONFIG_SND_SOC_QCOM_OFFLOAD_UTILS)
int qcom_snd_usb_offload_jack_setup(struct snd_soc_pcm_runtime *rtd,
struct snd_soc_jack *jack, bool *jack_setup);
int qcom_snd_usb_offload_jack_remove(struct snd_soc_pcm_runtime *rtd,
bool *jack_setup);
#else
static inline int qcom_snd_usb_offload_jack_setup(struct snd_soc_pcm_runtime *rtd,
struct snd_soc_jack *jack,
bool *jack_setup)
{
return -ENODEV;
}
static inline int qcom_snd_usb_offload_jack_remove(struct snd_soc_pcm_runtime *rtd,
bool *jack_setup)
{
return -ENODEV;
}
#endif /* IS_ENABLED(CONFIG_SND_SOC_QCOM_OFFLOAD_UTILS) */
#endif /* __QCOM_SND_USB_OFFLOAD_UTILS_H__ */