1*cda5da8dSAndroid Build Coastguard Worker /*
2*cda5da8dSAndroid Build Coastguard Worker  * This file is auto-generated. Modifications will be lost.
3*cda5da8dSAndroid Build Coastguard Worker  *
4*cda5da8dSAndroid Build Coastguard Worker  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5*cda5da8dSAndroid Build Coastguard Worker  * for more information.
6*cda5da8dSAndroid Build Coastguard Worker  */
7*cda5da8dSAndroid Build Coastguard Worker #ifndef __HDA_TPLG_INTERFACE_H__
8*cda5da8dSAndroid Build Coastguard Worker #define __HDA_TPLG_INTERFACE_H__
9*cda5da8dSAndroid Build Coastguard Worker #include <linux/types.h>
10*cda5da8dSAndroid Build Coastguard Worker #define SKL_CONTROL_TYPE_BYTE_TLV 0x100
11*cda5da8dSAndroid Build Coastguard Worker #define SKL_CONTROL_TYPE_MIC_SELECT 0x102
12*cda5da8dSAndroid Build Coastguard Worker #define SKL_CONTROL_TYPE_MULTI_IO_SELECT 0x103
13*cda5da8dSAndroid Build Coastguard Worker #define SKL_CONTROL_TYPE_MULTI_IO_SELECT_DMIC 0x104
14*cda5da8dSAndroid Build Coastguard Worker #define HDA_SST_CFG_MAX 900
15*cda5da8dSAndroid Build Coastguard Worker #define MAX_IN_QUEUE 8
16*cda5da8dSAndroid Build Coastguard Worker #define MAX_OUT_QUEUE 8
17*cda5da8dSAndroid Build Coastguard Worker #define SKL_UUID_STR_SZ 40
18*cda5da8dSAndroid Build Coastguard Worker enum skl_event_types {
19*cda5da8dSAndroid Build Coastguard Worker   SKL_EVENT_NONE = 0,
20*cda5da8dSAndroid Build Coastguard Worker   SKL_MIXER_EVENT,
21*cda5da8dSAndroid Build Coastguard Worker   SKL_MUX_EVENT,
22*cda5da8dSAndroid Build Coastguard Worker   SKL_VMIXER_EVENT,
23*cda5da8dSAndroid Build Coastguard Worker   SKL_PGA_EVENT
24*cda5da8dSAndroid Build Coastguard Worker };
25*cda5da8dSAndroid Build Coastguard Worker enum skl_ch_cfg {
26*cda5da8dSAndroid Build Coastguard Worker   SKL_CH_CFG_MONO = 0,
27*cda5da8dSAndroid Build Coastguard Worker   SKL_CH_CFG_STEREO = 1,
28*cda5da8dSAndroid Build Coastguard Worker   SKL_CH_CFG_2_1 = 2,
29*cda5da8dSAndroid Build Coastguard Worker   SKL_CH_CFG_3_0 = 3,
30*cda5da8dSAndroid Build Coastguard Worker   SKL_CH_CFG_3_1 = 4,
31*cda5da8dSAndroid Build Coastguard Worker   SKL_CH_CFG_QUATRO = 5,
32*cda5da8dSAndroid Build Coastguard Worker   SKL_CH_CFG_4_0 = 6,
33*cda5da8dSAndroid Build Coastguard Worker   SKL_CH_CFG_5_0 = 7,
34*cda5da8dSAndroid Build Coastguard Worker   SKL_CH_CFG_5_1 = 8,
35*cda5da8dSAndroid Build Coastguard Worker   SKL_CH_CFG_DUAL_MONO = 9,
36*cda5da8dSAndroid Build Coastguard Worker   SKL_CH_CFG_I2S_DUAL_STEREO_0 = 10,
37*cda5da8dSAndroid Build Coastguard Worker   SKL_CH_CFG_I2S_DUAL_STEREO_1 = 11,
38*cda5da8dSAndroid Build Coastguard Worker   SKL_CH_CFG_7_1 = 12,
39*cda5da8dSAndroid Build Coastguard Worker   SKL_CH_CFG_4_CHANNEL = SKL_CH_CFG_7_1,
40*cda5da8dSAndroid Build Coastguard Worker   SKL_CH_CFG_INVALID
41*cda5da8dSAndroid Build Coastguard Worker };
42*cda5da8dSAndroid Build Coastguard Worker enum skl_module_type {
43*cda5da8dSAndroid Build Coastguard Worker   SKL_MODULE_TYPE_MIXER = 0,
44*cda5da8dSAndroid Build Coastguard Worker   SKL_MODULE_TYPE_COPIER,
45*cda5da8dSAndroid Build Coastguard Worker   SKL_MODULE_TYPE_UPDWMIX,
46*cda5da8dSAndroid Build Coastguard Worker   SKL_MODULE_TYPE_SRCINT,
47*cda5da8dSAndroid Build Coastguard Worker   SKL_MODULE_TYPE_ALGO,
48*cda5da8dSAndroid Build Coastguard Worker   SKL_MODULE_TYPE_BASE_OUTFMT,
49*cda5da8dSAndroid Build Coastguard Worker   SKL_MODULE_TYPE_KPB,
50*cda5da8dSAndroid Build Coastguard Worker   SKL_MODULE_TYPE_MIC_SELECT,
51*cda5da8dSAndroid Build Coastguard Worker };
52*cda5da8dSAndroid Build Coastguard Worker enum skl_core_affinity {
53*cda5da8dSAndroid Build Coastguard Worker   SKL_AFFINITY_CORE_0 = 0,
54*cda5da8dSAndroid Build Coastguard Worker   SKL_AFFINITY_CORE_1,
55*cda5da8dSAndroid Build Coastguard Worker   SKL_AFFINITY_CORE_MAX
56*cda5da8dSAndroid Build Coastguard Worker };
57*cda5da8dSAndroid Build Coastguard Worker enum skl_pipe_conn_type {
58*cda5da8dSAndroid Build Coastguard Worker   SKL_PIPE_CONN_TYPE_NONE = 0,
59*cda5da8dSAndroid Build Coastguard Worker   SKL_PIPE_CONN_TYPE_FE,
60*cda5da8dSAndroid Build Coastguard Worker   SKL_PIPE_CONN_TYPE_BE
61*cda5da8dSAndroid Build Coastguard Worker };
62*cda5da8dSAndroid Build Coastguard Worker enum skl_hw_conn_type {
63*cda5da8dSAndroid Build Coastguard Worker   SKL_CONN_NONE = 0,
64*cda5da8dSAndroid Build Coastguard Worker   SKL_CONN_SOURCE = 1,
65*cda5da8dSAndroid Build Coastguard Worker   SKL_CONN_SINK = 2
66*cda5da8dSAndroid Build Coastguard Worker };
67*cda5da8dSAndroid Build Coastguard Worker enum skl_dev_type {
68*cda5da8dSAndroid Build Coastguard Worker   SKL_DEVICE_BT = 0x0,
69*cda5da8dSAndroid Build Coastguard Worker   SKL_DEVICE_DMIC = 0x1,
70*cda5da8dSAndroid Build Coastguard Worker   SKL_DEVICE_I2S = 0x2,
71*cda5da8dSAndroid Build Coastguard Worker   SKL_DEVICE_SLIMBUS = 0x3,
72*cda5da8dSAndroid Build Coastguard Worker   SKL_DEVICE_HDALINK = 0x4,
73*cda5da8dSAndroid Build Coastguard Worker   SKL_DEVICE_HDAHOST = 0x5,
74*cda5da8dSAndroid Build Coastguard Worker   SKL_DEVICE_NONE
75*cda5da8dSAndroid Build Coastguard Worker };
76*cda5da8dSAndroid Build Coastguard Worker enum skl_interleaving {
77*cda5da8dSAndroid Build Coastguard Worker   SKL_INTERLEAVING_PER_CHANNEL = 0,
78*cda5da8dSAndroid Build Coastguard Worker   SKL_INTERLEAVING_PER_SAMPLE = 1,
79*cda5da8dSAndroid Build Coastguard Worker };
80*cda5da8dSAndroid Build Coastguard Worker enum skl_sample_type {
81*cda5da8dSAndroid Build Coastguard Worker   SKL_SAMPLE_TYPE_INT_MSB = 0,
82*cda5da8dSAndroid Build Coastguard Worker   SKL_SAMPLE_TYPE_INT_LSB = 1,
83*cda5da8dSAndroid Build Coastguard Worker   SKL_SAMPLE_TYPE_INT_SIGNED = 2,
84*cda5da8dSAndroid Build Coastguard Worker   SKL_SAMPLE_TYPE_INT_UNSIGNED = 3,
85*cda5da8dSAndroid Build Coastguard Worker   SKL_SAMPLE_TYPE_FLOAT = 4
86*cda5da8dSAndroid Build Coastguard Worker };
87*cda5da8dSAndroid Build Coastguard Worker enum module_pin_type {
88*cda5da8dSAndroid Build Coastguard Worker   SKL_PIN_TYPE_HOMOGENEOUS,
89*cda5da8dSAndroid Build Coastguard Worker   SKL_PIN_TYPE_HETEROGENEOUS,
90*cda5da8dSAndroid Build Coastguard Worker };
91*cda5da8dSAndroid Build Coastguard Worker enum skl_module_param_type {
92*cda5da8dSAndroid Build Coastguard Worker   SKL_PARAM_DEFAULT = 0,
93*cda5da8dSAndroid Build Coastguard Worker   SKL_PARAM_INIT,
94*cda5da8dSAndroid Build Coastguard Worker   SKL_PARAM_SET,
95*cda5da8dSAndroid Build Coastguard Worker   SKL_PARAM_BIND
96*cda5da8dSAndroid Build Coastguard Worker };
97*cda5da8dSAndroid Build Coastguard Worker struct skl_dfw_algo_data {
98*cda5da8dSAndroid Build Coastguard Worker   __u32 set_params : 2;
99*cda5da8dSAndroid Build Coastguard Worker   __u32 rsvd : 30;
100*cda5da8dSAndroid Build Coastguard Worker   __u32 param_id;
101*cda5da8dSAndroid Build Coastguard Worker   __u32 max;
102*cda5da8dSAndroid Build Coastguard Worker   char params[];
103*cda5da8dSAndroid Build Coastguard Worker } __attribute__((__packed__));
104*cda5da8dSAndroid Build Coastguard Worker enum skl_tkn_dir {
105*cda5da8dSAndroid Build Coastguard Worker   SKL_DIR_IN,
106*cda5da8dSAndroid Build Coastguard Worker   SKL_DIR_OUT
107*cda5da8dSAndroid Build Coastguard Worker };
108*cda5da8dSAndroid Build Coastguard Worker enum skl_tuple_type {
109*cda5da8dSAndroid Build Coastguard Worker   SKL_TYPE_TUPLE,
110*cda5da8dSAndroid Build Coastguard Worker   SKL_TYPE_DATA
111*cda5da8dSAndroid Build Coastguard Worker };
112*cda5da8dSAndroid Build Coastguard Worker #endif
113