/* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ | |
/* | |
* Copyright (c) 2019 Amlogic, Inc. All rights reserved. | |
*/ | |
#ifndef __AML_AUDIO_LOOPBACK_H__ | |
#define __AML_AUDIO_LOOPBACK_H__ | |
#include <sound/soc.h> | |
#include <sound/tlv.h> | |
/* datain src | |
* [4]: pdmin; | |
* [3]: spdifin; | |
* [2]: tdmin_c; | |
* [1]: tdmin_b; | |
* [0]: tdmin_a; | |
*/ | |
enum datain_src { | |
DATAIN_TDMA = 0, | |
DATAIN_TDMB, | |
DATAIN_TDMC, | |
DATAIN_SPDIF, | |
DATAIN_PDM, | |
DATAIN_LOOPBACK, | |
DATAIN_TDMD, | |
DATAIN_PDMB, | |
DATAIN_MAX | |
}; | |
/* datalb src | |
* /tdmin_lb src | |
* [0]: tdmoutA | |
* [1]: tdmoutB | |
* [2]: tdmoutC | |
* [3]: PAD_tdminA | |
* [4]: PAD_tdminB | |
* [5]: PAD_tdminC | |
* /spdifin_lb src | |
* spdifout_a | |
* spdifout_b | |
*/ | |
enum datalb_src { | |
TDMINLB_TDMOUTA = 0, | |
TDMINLB_TDMOUTB, | |
TDMINLB_TDMOUTC, | |
TDMINLB_TDMOUTD, | |
TDMINLB_PAD_TDMINA, | |
TDMINLB_PAD_TDMINB, | |
TDMINLB_PAD_TDMINC, | |
TDMINLB_PAD_TDMIND, | |
TDMINLB_PAD_TDMINA_D, | |
TDMINLB_PAD_TDMINB_D, | |
TDMINLB_PAD_TDMINC_D, | |
TDMINLB_HDMIRX, | |
TDMINLB_ACODEC, | |
SPDIFINLB_SPDIFOUTA, | |
SPDIFINLB_SPDIFOUTB, | |
TDMINLB_SRC_MAX | |
}; | |
unsigned int loopback_get_lb_channel(int id); | |
#endif |