33#define SOF_DAI_FMT_I2S 1
34#define SOF_DAI_FMT_RIGHT_J 2
35#define SOF_DAI_FMT_LEFT_J 3
36#define SOF_DAI_FMT_DSP_A 4
37#define SOF_DAI_FMT_DSP_B 5
38#define SOF_DAI_FMT_PDM 6
40#define SOF_DAI_FMT_CONT (1 << 4)
41#define SOF_DAI_FMT_GATED (0 << 4)
43#define SOF_DAI_FMT_NB_NF (0 << 8)
44#define SOF_DAI_FMT_NB_IF (2 << 8)
45#define SOF_DAI_FMT_IB_NF (3 << 8)
46#define SOF_DAI_FMT_IB_IF (4 << 8)
48#define SOF_DAI_FMT_CBP_CFP (0 << 12)
49#define SOF_DAI_FMT_CBC_CFP (2 << 12)
50#define SOF_DAI_FMT_CBP_CFC (3 << 12)
51#define SOF_DAI_FMT_CBC_CFC (4 << 12)
53#define SOF_DAI_FMT_FORMAT_MASK 0x000f
54#define SOF_DAI_FMT_CLOCK_MASK 0x00f0
55#define SOF_DAI_FMT_INV_MASK 0x0f00
56#define SOF_DAI_FMT_CLOCK_PROVIDER_MASK 0xf000
63#define SOF_DAI_CONFIG_FLAGS_CMD_MASK 0xF
64#define SOF_DAI_CONFIG_FLAGS_NONE 0
65#define SOF_DAI_CONFIG_FLAGS_HW_PARAMS BIT(0)
66#define SOF_DAI_CONFIG_FLAGS_HW_FREE BIT(1)
68#define SOF_DAI_CONFIG_FLAGS_PAUSE BIT(2)
69#define SOF_DAI_CONFIG_FLAGS_QUIRK_SHIFT 4
70#define SOF_DAI_CONFIG_FLAGS_QUIRK_MASK (0xF << SOF_DAI_CONFIG_FLAGS_QUIRK_SHIFT)
76#define SOF_DAI_CONFIG_FLAGS_2_STEP_STOP BIT(0)
78#define SOF_DAI_QUIRK_IS_SET(flags, quirk) \
79 (((flags & SOF_DAI_CONFIG_FLAGS_QUIRK_MASK) >> SOF_DAI_CONFIG_FLAGS_QUIRK_SHIFT) & quirk)
103#define SOF_DAI_CONFIG_HW_SPEC_OFFSET offsetof(struct sof_ipc_dai_config, ssp)
135} __attribute__((packed, aligned(4)));
sof_ipc_dai_type
Types of DAI.
Definition dai.h:82
@ SOF_DAI_AMD_HS_VIRTUAL
Amd HS VIRTUAL.
Definition dai.h:96
@ SOF_DAI_AMD_BT
Amd BT.
Definition dai.h:90
@ SOF_DAI_AMD_DMIC
Amd DMIC.
Definition dai.h:92
@ SOF_DAI_INTEL_ALH
Intel ALH.
Definition dai.h:87
@ SOF_DAI_AMD_TDM
Amd TDM.
Definition dai.h:100
@ SOF_DAI_AMD_SDW
Amd SDW.
Definition dai.h:98
@ SOF_DAI_AMD_SP_VIRTUAL
Amd SP VIRTUAL.
Definition dai.h:95
@ SOF_DAI_INTEL_DMIC
Intel DMIC.
Definition dai.h:85
@ SOF_DAI_INTEL_SSP
Intel SSP.
Definition dai.h:84
@ SOF_DAI_IMX_ESAI
i.MX ESAI
Definition dai.h:89
@ SOF_DAI_INTEL_NONE
None.
Definition dai.h:83
@ SOF_DAI_IMX_MICFIL
i.MX MICFIL
Definition dai.h:97
@ SOF_DAI_INTEL_UAOL
Intel UAOL.
Definition dai.h:99
@ SOF_DAI_AMD_HS
Amd HS.
Definition dai.h:94
@ SOF_DAI_IMX_SAI
i.MX SAI
Definition dai.h:88
@ SOF_DAI_MEDIATEK_AFE
Mtk AFE.
Definition dai.h:93
@ SOF_DAI_AMD_SP
Amd SP.
Definition dai.h:91
@ SOF_DAI_INTEL_HDA
Intel HD/A.
Definition dai.h:86
Command Header - Header for all IPC commands.
Definition header.h:357
Definition dai-mediatek.h:14
Definition dai-intel.h:110
struct sof_ipc_dai_acp_params acpbt
Definition dai.h:127
uint32_t dai_index
index of this type dai
Definition dai.h:109
struct sof_ipc_dai_sai_params sai
Definition dai.h:126
uint16_t format
SOF_DAI_FMT_.
Definition dai.h:112
struct sof_ipc_dai_acp_params acpsp
Definition dai.h:128
uint8_t group_id
group ID, 0 means no group (ABI 3.17)
Definition dai.h:113
struct sof_ipc_dai_hda_params hda
Definition dai.h:123
struct sof_ipc_dai_afe_params afe
Definition dai.h:131
struct sof_ipc_cmd_hdr hdr
Definition dai.h:107
uint8_t flags
SOF_DAI_CONFIG_FLAGS_ (ABI 3.19).
Definition dai.h:114
struct sof_ipc_dai_alh_params alh
Definition dai.h:124
struct sof_ipc_dai_acp_sdw_params acpsdw
Definition dai.h:133
struct sof_ipc_dai_micfil_params micfil
Definition dai.h:132
uint32_t type
DAI type - enum sof_ipc_dai_type.
Definition dai.h:108
struct sof_ipc_dai_dmic_params dmic
Definition dai.h:122
struct sof_ipc_dai_acp_params acptdm
Definition dai.h:130
struct sof_ipc_dai_esai_params esai
Definition dai.h:125
uint32_t reserved[8]
Definition dai.h:117
struct sof_ipc_dai_ssp_params ssp
Definition dai.h:121
struct sof_ipc_dai_acpdmic_params acpdmic
Definition dai.h:129
Definition dai-intel.h:185
Definition dai-intel.h:102
Definition dai-intel.h:70