mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-09-02 08:32:55 +00:00

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>
31 lines
912 B
C
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__ */
|