aboutsummaryrefslogtreecommitdiffstats
path: root/include/uapi
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2016-09-30 12:40:40 -0400
committerTakashi Iwai <tiwai@suse.de>2016-09-30 12:40:40 -0400
commiteeea8b40cd2866ca24f25e5ef09225edb076ae45 (patch)
treeece5b5287ee2ce53a841b66d0f526947f74d036f /include/uapi
parent3383c5c395386ac8e258b1a324c72ce850b84a9e (diff)
parent513e43efafe329dad7b5794583b67ac898dcbdca (diff)
Merge tag 'asoc-v4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-next
ASoC: Updates for v4.9 Apart from the cleanups done by Morimoto-san this has very much been a driver focused release with very little generic change: - A big factoring out of the simple-card code to allow it to be shared more with the rcar generic card from Kuninori Morimoto. - Removal of some operations duplicated on the CODEC level, again by Kuninori Morimoto. - Lots more machine support for x86 systems. - New drivers for Nuvoton NAU88C10, Realtek RT5660 and RT5663.
Diffstat (limited to 'include/uapi')
-rw-r--r--include/uapi/linux/atm_zatm.h1
-rw-r--r--include/uapi/linux/if_pppol2tp.h3
-rw-r--r--include/uapi/linux/if_pppox.h3
-rw-r--r--include/uapi/linux/if_tunnel.h3
-rw-r--r--include/uapi/linux/ipx.h13
-rw-r--r--include/uapi/linux/libc-compat.h26
-rw-r--r--include/uapi/linux/openvswitch.h6
-rw-r--r--include/uapi/sound/Kbuild1
-rw-r--r--include/uapi/sound/asoc.h35
-rw-r--r--include/uapi/sound/snd_sst_tokens.h214
10 files changed, 298 insertions, 7 deletions
diff --git a/include/uapi/linux/atm_zatm.h b/include/uapi/linux/atm_zatm.h
index 9c9c6ad55f14..5cd4d4d2dd1d 100644
--- a/include/uapi/linux/atm_zatm.h
+++ b/include/uapi/linux/atm_zatm.h
@@ -14,6 +14,7 @@
14 14
15#include <linux/atmapi.h> 15#include <linux/atmapi.h>
16#include <linux/atmioc.h> 16#include <linux/atmioc.h>
17#include <linux/time.h>
17 18
18#define ZATM_GETPOOL _IOW('a',ATMIOC_SARPRV+1,struct atmif_sioc) 19#define ZATM_GETPOOL _IOW('a',ATMIOC_SARPRV+1,struct atmif_sioc)
19 /* get pool statistics */ 20 /* get pool statistics */
diff --git a/include/uapi/linux/if_pppol2tp.h b/include/uapi/linux/if_pppol2tp.h
index 163e8adac2d6..4bd1f55d6377 100644
--- a/include/uapi/linux/if_pppol2tp.h
+++ b/include/uapi/linux/if_pppol2tp.h
@@ -16,7 +16,8 @@
16#define _UAPI__LINUX_IF_PPPOL2TP_H 16#define _UAPI__LINUX_IF_PPPOL2TP_H
17 17
18#include <linux/types.h> 18#include <linux/types.h>
19 19#include <linux/in.h>
20#include <linux/in6.h>
20 21
21/* Structure used to connect() the socket to a particular tunnel UDP 22/* Structure used to connect() the socket to a particular tunnel UDP
22 * socket over IPv4. 23 * socket over IPv4.
diff --git a/include/uapi/linux/if_pppox.h b/include/uapi/linux/if_pppox.h
index e128769331b5..d37bbb17a007 100644
--- a/include/uapi/linux/if_pppox.h
+++ b/include/uapi/linux/if_pppox.h
@@ -21,8 +21,11 @@
21#include <asm/byteorder.h> 21#include <asm/byteorder.h>
22 22
23#include <linux/socket.h> 23#include <linux/socket.h>
24#include <linux/if.h>
24#include <linux/if_ether.h> 25#include <linux/if_ether.h>
25#include <linux/if_pppol2tp.h> 26#include <linux/if_pppol2tp.h>
27#include <linux/in.h>
28#include <linux/in6.h>
26 29
27/* For user-space programs to pick up these definitions 30/* For user-space programs to pick up these definitions
28 * which they wouldn't get otherwise without defining __KERNEL__ 31 * which they wouldn't get otherwise without defining __KERNEL__
diff --git a/include/uapi/linux/if_tunnel.h b/include/uapi/linux/if_tunnel.h
index 1046f5515174..777b6cdb1b7b 100644
--- a/include/uapi/linux/if_tunnel.h
+++ b/include/uapi/linux/if_tunnel.h
@@ -2,6 +2,9 @@
2#define _UAPI_IF_TUNNEL_H_ 2#define _UAPI_IF_TUNNEL_H_
3 3
4#include <linux/types.h> 4#include <linux/types.h>
5#include <linux/if.h>
6#include <linux/ip.h>
7#include <linux/in6.h>
5#include <asm/byteorder.h> 8#include <asm/byteorder.h>
6 9
7 10
diff --git a/include/uapi/linux/ipx.h b/include/uapi/linux/ipx.h
index 3d48014cdd71..30f031db12f6 100644
--- a/include/uapi/linux/ipx.h
+++ b/include/uapi/linux/ipx.h
@@ -1,11 +1,13 @@
1#ifndef _IPX_H_ 1#ifndef _IPX_H_
2#define _IPX_H_ 2#define _IPX_H_
3#include <linux/libc-compat.h> /* for compatibility with glibc netipx/ipx.h */
3#include <linux/types.h> 4#include <linux/types.h>
4#include <linux/sockios.h> 5#include <linux/sockios.h>
5#include <linux/socket.h> 6#include <linux/socket.h>
6#define IPX_NODE_LEN 6 7#define IPX_NODE_LEN 6
7#define IPX_MTU 576 8#define IPX_MTU 576
8 9
10#if __UAPI_DEF_SOCKADDR_IPX
9struct sockaddr_ipx { 11struct sockaddr_ipx {
10 __kernel_sa_family_t sipx_family; 12 __kernel_sa_family_t sipx_family;
11 __be16 sipx_port; 13 __be16 sipx_port;
@@ -14,6 +16,7 @@ struct sockaddr_ipx {
14 __u8 sipx_type; 16 __u8 sipx_type;
15 unsigned char sipx_zero; /* 16 byte fill */ 17 unsigned char sipx_zero; /* 16 byte fill */
16}; 18};
19#endif /* __UAPI_DEF_SOCKADDR_IPX */
17 20
18/* 21/*
19 * So we can fit the extra info for SIOCSIFADDR into the address nicely 22 * So we can fit the extra info for SIOCSIFADDR into the address nicely
@@ -23,12 +26,15 @@ struct sockaddr_ipx {
23#define IPX_DLTITF 0 26#define IPX_DLTITF 0
24#define IPX_CRTITF 1 27#define IPX_CRTITF 1
25 28
29#if __UAPI_DEF_IPX_ROUTE_DEFINITION
26struct ipx_route_definition { 30struct ipx_route_definition {
27 __be32 ipx_network; 31 __be32 ipx_network;
28 __be32 ipx_router_network; 32 __be32 ipx_router_network;
29 unsigned char ipx_router_node[IPX_NODE_LEN]; 33 unsigned char ipx_router_node[IPX_NODE_LEN];
30}; 34};
35#endif /* __UAPI_DEF_IPX_ROUTE_DEFINITION */
31 36
37#if __UAPI_DEF_IPX_INTERFACE_DEFINITION
32struct ipx_interface_definition { 38struct ipx_interface_definition {
33 __be32 ipx_network; 39 __be32 ipx_network;
34 unsigned char ipx_device[16]; 40 unsigned char ipx_device[16];
@@ -45,16 +51,20 @@ struct ipx_interface_definition {
45#define IPX_INTERNAL 2 51#define IPX_INTERNAL 2
46 unsigned char ipx_node[IPX_NODE_LEN]; 52 unsigned char ipx_node[IPX_NODE_LEN];
47}; 53};
48 54#endif /* __UAPI_DEF_IPX_INTERFACE_DEFINITION */
55
56#if __UAPI_DEF_IPX_CONFIG_DATA
49struct ipx_config_data { 57struct ipx_config_data {
50 unsigned char ipxcfg_auto_select_primary; 58 unsigned char ipxcfg_auto_select_primary;
51 unsigned char ipxcfg_auto_create_interfaces; 59 unsigned char ipxcfg_auto_create_interfaces;
52}; 60};
61#endif /* __UAPI_DEF_IPX_CONFIG_DATA */
53 62
54/* 63/*
55 * OLD Route Definition for backward compatibility. 64 * OLD Route Definition for backward compatibility.
56 */ 65 */
57 66
67#if __UAPI_DEF_IPX_ROUTE_DEF
58struct ipx_route_def { 68struct ipx_route_def {
59 __be32 ipx_network; 69 __be32 ipx_network;
60 __be32 ipx_router_network; 70 __be32 ipx_router_network;
@@ -67,6 +77,7 @@ struct ipx_route_def {
67#define IPX_RT_BLUEBOOK 2 77#define IPX_RT_BLUEBOOK 2
68#define IPX_RT_ROUTED 1 78#define IPX_RT_ROUTED 1
69}; 79};
80#endif /* __UAPI_DEF_IPX_ROUTE_DEF */
70 81
71#define SIOCAIPXITFCRT (SIOCPROTOPRIVATE) 82#define SIOCAIPXITFCRT (SIOCPROTOPRIVATE)
72#define SIOCAIPXPRISLT (SIOCPROTOPRIVATE + 1) 83#define SIOCAIPXPRISLT (SIOCPROTOPRIVATE + 1)
diff --git a/include/uapi/linux/libc-compat.h b/include/uapi/linux/libc-compat.h
index e4f048ee7043..44b8a6bd5fe1 100644
--- a/include/uapi/linux/libc-compat.h
+++ b/include/uapi/linux/libc-compat.h
@@ -139,6 +139,25 @@
139 139
140#endif /* _NETINET_IN_H */ 140#endif /* _NETINET_IN_H */
141 141
142/* Coordinate with glibc netipx/ipx.h header. */
143#if defined(__NETIPX_IPX_H)
144
145#define __UAPI_DEF_SOCKADDR_IPX 0
146#define __UAPI_DEF_IPX_ROUTE_DEFINITION 0
147#define __UAPI_DEF_IPX_INTERFACE_DEFINITION 0
148#define __UAPI_DEF_IPX_CONFIG_DATA 0
149#define __UAPI_DEF_IPX_ROUTE_DEF 0
150
151#else /* defined(__NETIPX_IPX_H) */
152
153#define __UAPI_DEF_SOCKADDR_IPX 1
154#define __UAPI_DEF_IPX_ROUTE_DEFINITION 1
155#define __UAPI_DEF_IPX_INTERFACE_DEFINITION 1
156#define __UAPI_DEF_IPX_CONFIG_DATA 1
157#define __UAPI_DEF_IPX_ROUTE_DEF 1
158
159#endif /* defined(__NETIPX_IPX_H) */
160
142/* Definitions for xattr.h */ 161/* Definitions for xattr.h */
143#if defined(_SYS_XATTR_H) 162#if defined(_SYS_XATTR_H)
144#define __UAPI_DEF_XATTR 0 163#define __UAPI_DEF_XATTR 0
@@ -179,6 +198,13 @@
179#define __UAPI_DEF_IN6_PKTINFO 1 198#define __UAPI_DEF_IN6_PKTINFO 1
180#define __UAPI_DEF_IP6_MTUINFO 1 199#define __UAPI_DEF_IP6_MTUINFO 1
181 200
201/* Definitions for ipx.h */
202#define __UAPI_DEF_SOCKADDR_IPX 1
203#define __UAPI_DEF_IPX_ROUTE_DEFINITION 1
204#define __UAPI_DEF_IPX_INTERFACE_DEFINITION 1
205#define __UAPI_DEF_IPX_CONFIG_DATA 1
206#define __UAPI_DEF_IPX_ROUTE_DEF 1
207
182/* Definitions for xattr.h */ 208/* Definitions for xattr.h */
183#define __UAPI_DEF_XATTR 1 209#define __UAPI_DEF_XATTR 1
184 210
diff --git a/include/uapi/linux/openvswitch.h b/include/uapi/linux/openvswitch.h
index d95a3018f6a1..54c3b4f4aceb 100644
--- a/include/uapi/linux/openvswitch.h
+++ b/include/uapi/linux/openvswitch.h
@@ -583,7 +583,7 @@ enum ovs_userspace_attr {
583#define OVS_USERSPACE_ATTR_MAX (__OVS_USERSPACE_ATTR_MAX - 1) 583#define OVS_USERSPACE_ATTR_MAX (__OVS_USERSPACE_ATTR_MAX - 1)
584 584
585struct ovs_action_trunc { 585struct ovs_action_trunc {
586 uint32_t max_len; /* Max packet size in bytes. */ 586 __u32 max_len; /* Max packet size in bytes. */
587}; 587};
588 588
589/** 589/**
@@ -632,8 +632,8 @@ enum ovs_hash_alg {
632 * @hash_basis: basis used for computing hash. 632 * @hash_basis: basis used for computing hash.
633 */ 633 */
634struct ovs_action_hash { 634struct ovs_action_hash {
635 uint32_t hash_alg; /* One of ovs_hash_alg. */ 635 __u32 hash_alg; /* One of ovs_hash_alg. */
636 uint32_t hash_basis; 636 __u32 hash_basis;
637}; 637};
638 638
639/** 639/**
diff --git a/include/uapi/sound/Kbuild b/include/uapi/sound/Kbuild
index 691984cb0b91..9578d8bdbf31 100644
--- a/include/uapi/sound/Kbuild
+++ b/include/uapi/sound/Kbuild
@@ -13,3 +13,4 @@ header-y += sb16_csp.h
13header-y += sfnt_info.h 13header-y += sfnt_info.h
14header-y += tlv.h 14header-y += tlv.h
15header-y += usb_stream.h 15header-y += usb_stream.h
16header-y += snd_sst_tokens.h
diff --git a/include/uapi/sound/asoc.h b/include/uapi/sound/asoc.h
index e4701a3c6331..33d00a4ce656 100644
--- a/include/uapi/sound/asoc.h
+++ b/include/uapi/sound/asoc.h
@@ -83,7 +83,7 @@
83#define SND_SOC_TPLG_NUM_TEXTS 16 83#define SND_SOC_TPLG_NUM_TEXTS 16
84 84
85/* ABI version */ 85/* ABI version */
86#define SND_SOC_TPLG_ABI_VERSION 0x4 86#define SND_SOC_TPLG_ABI_VERSION 0x5
87 87
88/* Max size of TLV data */ 88/* Max size of TLV data */
89#define SND_SOC_TPLG_TLV_SIZE 32 89#define SND_SOC_TPLG_TLV_SIZE 32
@@ -105,7 +105,8 @@
105#define SND_SOC_TPLG_TYPE_CODEC_LINK 9 105#define SND_SOC_TPLG_TYPE_CODEC_LINK 9
106#define SND_SOC_TPLG_TYPE_BACKEND_LINK 10 106#define SND_SOC_TPLG_TYPE_BACKEND_LINK 10
107#define SND_SOC_TPLG_TYPE_PDATA 11 107#define SND_SOC_TPLG_TYPE_PDATA 11
108#define SND_SOC_TPLG_TYPE_MAX SND_SOC_TPLG_TYPE_PDATA 108#define SND_SOC_TPLG_TYPE_BE_DAI 12
109#define SND_SOC_TPLG_TYPE_MAX SND_SOC_TPLG_TYPE_BE_DAI
109 110
110/* vendor block IDs - please add new vendor types to end */ 111/* vendor block IDs - please add new vendor types to end */
111#define SND_SOC_TPLG_TYPE_VENDOR_FW 1000 112#define SND_SOC_TPLG_TYPE_VENDOR_FW 1000
@@ -124,6 +125,11 @@
124#define SND_SOC_TPLG_TUPLE_TYPE_WORD 4 125#define SND_SOC_TPLG_TUPLE_TYPE_WORD 4
125#define SND_SOC_TPLG_TUPLE_TYPE_SHORT 5 126#define SND_SOC_TPLG_TUPLE_TYPE_SHORT 5
126 127
128/* BE DAI flags */
129#define SND_SOC_TPLG_DAI_FLGBIT_SYMMETRIC_RATES (1 << 0)
130#define SND_SOC_TPLG_DAI_FLGBIT_SYMMETRIC_CHANNELS (1 << 1)
131#define SND_SOC_TPLG_DAI_FLGBIT_SYMMETRIC_SAMPLEBITS (1 << 2)
132
127/* 133/*
128 * Block Header. 134 * Block Header.
129 * This header precedes all object and object arrays below. 135 * This header precedes all object and object arrays below.
@@ -251,6 +257,7 @@ struct snd_soc_tplg_stream_caps {
251 __le32 period_size_max; /* max period size bytes */ 257 __le32 period_size_max; /* max period size bytes */
252 __le32 buffer_size_min; /* min buffer size bytes */ 258 __le32 buffer_size_min; /* min buffer size bytes */
253 __le32 buffer_size_max; /* max buffer size bytes */ 259 __le32 buffer_size_max; /* max buffer size bytes */
260 __le32 sig_bits; /* number of bits of content */
254} __attribute__((packed)); 261} __attribute__((packed));
255 262
256/* 263/*
@@ -285,6 +292,8 @@ struct snd_soc_tplg_manifest {
285 __le32 graph_elems; /* number of graph elements */ 292 __le32 graph_elems; /* number of graph elements */
286 __le32 pcm_elems; /* number of PCM elements */ 293 __le32 pcm_elems; /* number of PCM elements */
287 __le32 dai_link_elems; /* number of DAI link elements */ 294 __le32 dai_link_elems; /* number of DAI link elements */
295 __le32 be_dai_elems; /* number of BE DAI elements */
296 __le32 reserved[20]; /* reserved for new ABI element types */
288 struct snd_soc_tplg_private priv; 297 struct snd_soc_tplg_private priv;
289} __attribute__((packed)); 298} __attribute__((packed));
290 299
@@ -450,4 +459,26 @@ struct snd_soc_tplg_link_config {
450 struct snd_soc_tplg_stream stream[SND_SOC_TPLG_STREAM_CONFIG_MAX]; /* supported configs playback and captrure */ 459 struct snd_soc_tplg_stream stream[SND_SOC_TPLG_STREAM_CONFIG_MAX]; /* supported configs playback and captrure */
451 __le32 num_streams; /* number of streams */ 460 __le32 num_streams; /* number of streams */
452} __attribute__((packed)); 461} __attribute__((packed));
462
463/*
464 * Describes SW/FW specific features of BE DAI.
465 *
466 * File block representation for BE DAI :-
467 * +-----------------------------------+-----+
468 * | struct snd_soc_tplg_hdr | 1 |
469 * +-----------------------------------+-----+
470 * | struct snd_soc_tplg_be_dai | N |
471 * +-----------------------------------+-----+
472 */
473struct snd_soc_tplg_be_dai {
474 __le32 size; /* in bytes of this structure */
475 char dai_name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN]; /* name - used to match */
476 __le32 dai_id; /* unique ID - used to match */
477 __le32 playback; /* supports playback mode */
478 __le32 capture; /* supports capture mode */
479 struct snd_soc_tplg_stream_caps caps[2]; /* playback and capture for DAI */
480 __le32 flag_mask; /* bitmask of flags to configure */
481 __le32 flags; /* SND_SOC_TPLG_DAI_FLGBIT_* */
482 struct snd_soc_tplg_private priv;
483} __attribute__((packed));
453#endif 484#endif
diff --git a/include/uapi/sound/snd_sst_tokens.h b/include/uapi/sound/snd_sst_tokens.h
new file mode 100644
index 000000000000..1ee2e943d66a
--- /dev/null
+++ b/include/uapi/sound/snd_sst_tokens.h
@@ -0,0 +1,214 @@
1/*
2 * snd_sst_tokens.h - Intel SST tokens definition
3 *
4 * Copyright (C) 2016 Intel Corp
5 * Author: Shreyas NC <shreyas.nc@intel.com>
6 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
7 *
8 * This program is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as version 2, as
10 * published by the Free Software Foundation.
11 *
12 * This program is distributed in the hope that it will be useful, but
13 * WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * General Public License for more details.
16 */
17#ifndef __SND_SST_TOKENS_H__
18#define __SND_SST_TOKENS_H__
19
20/**
21 * %SKL_TKN_UUID: Module UUID
22 *
23 * %SKL_TKN_U8_BLOCK_TYPE: Type of the private data block.Can be:
24 * tuples, bytes, short and words
25 *
26 * %SKL_TKN_U8_IN_PIN_TYPE: Input pin type,
27 * homogenous=0, heterogenous=1
28 *
29 * %SKL_TKN_U8_OUT_PIN_TYPE: Output pin type,
30 * homogenous=0, heterogenous=1
31 * %SKL_TKN_U8_DYN_IN_PIN: Configure Input pin dynamically
32 * if true
33 *
34 * %SKL_TKN_U8_DYN_OUT_PIN: Configure Output pin dynamically
35 * if true
36 *
37 * %SKL_TKN_U8_IN_QUEUE_COUNT: Store the number of Input pins
38 *
39 * %SKL_TKN_U8_OUT_QUEUE_COUNT: Store the number of Output pins
40 *
41 * %SKL_TKN_U8_TIME_SLOT: TDM slot number
42 *
43 * %SKL_TKN_U8_CORE_ID: Stores module affinity value.Can take
44 * the values:
45 * SKL_AFFINITY_CORE_0 = 0,
46 * SKL_AFFINITY_CORE_1,
47 * SKL_AFFINITY_CORE_MAX
48 *
49 * %SKL_TKN_U8_MOD_TYPE: Module type value.
50 *
51 * %SKL_TKN_U8_CONN_TYPE: Module connection type can be a FE,
52 * BE or NONE as defined :
53 * SKL_PIPE_CONN_TYPE_NONE = 0,
54 * SKL_PIPE_CONN_TYPE_FE = 1 (HOST_DMA)
55 * SKL_PIPE_CONN_TYPE_BE = 2 (LINK_DMA)
56 *
57 * %SKL_TKN_U8_DEV_TYPE: Type of device to which the module is
58 * connected
59 * Can take the values:
60 * SKL_DEVICE_BT = 0x0,
61 * SKL_DEVICE_DMIC = 0x1,
62 * SKL_DEVICE_I2S = 0x2,
63 * SKL_DEVICE_SLIMBUS = 0x3,
64 * SKL_DEVICE_HDALINK = 0x4,
65 * SKL_DEVICE_HDAHOST = 0x5,
66 * SKL_DEVICE_NONE
67 *
68 * %SKL_TKN_U8_HW_CONN_TYPE: Connection type of the HW to which the
69 * module is connected
70 * SKL_CONN_NONE = 0,
71 * SKL_CONN_SOURCE = 1,
72 * SKL_CONN_SINK = 2
73 *
74 * %SKL_TKN_U16_PIN_INST_ID: Stores the pin instance id
75 *
76 * %SKL_TKN_U16_MOD_INST_ID: Stores the mdule instance id
77 *
78 * %SKL_TKN_U32_MAX_MCPS: Module max mcps value
79 *
80 * %SKL_TKN_U32_MEM_PAGES: Module resource pages
81 *
82 * %SKL_TKN_U32_OBS: Stores Output Buffer size
83 *
84 * %SKL_TKN_U32_IBS: Stores input buffer size
85 *
86 * %SKL_TKN_U32_VBUS_ID: Module VBUS_ID. PDM=0, SSP0=0,
87 * SSP1=1,SSP2=2,
88 * SSP3=3, SSP4=4,
89 * SSP5=5, SSP6=6,INVALID
90 *
91 * %SKL_TKN_U32_PARAMS_FIXUP: Module Params fixup mask
92 * %SKL_TKN_U32_CONVERTER: Module params converter mask
93 * %SKL_TKN_U32_PIPE_ID: Stores the pipe id
94 *
95 * %SKL_TKN_U32_PIPE_CONN_TYPE: Type of the token to which the pipe is
96 * connected to. It can be
97 * SKL_PIPE_CONN_TYPE_NONE = 0,
98 * SKL_PIPE_CONN_TYPE_FE = 1 (HOST_DMA),
99 * SKL_PIPE_CONN_TYPE_BE = 2 (LINK_DMA),
100 *
101 * %SKL_TKN_U32_PIPE_PRIORITY: Pipe priority value
102 * %SKL_TKN_U32_PIPE_MEM_PGS: Pipe resource pages
103 *
104 * %SKL_TKN_U32_DIR_PIN_COUNT: Value for the direction to set input/output
105 * formats and the pin count.
106 * The first 4 bits have the direction
107 * value and the next 4 have
108 * the pin count value.
109 * SKL_DIR_IN = 0, SKL_DIR_OUT = 1.
110 * The input and output formats
111 * share the same set of tokens
112 * with the distinction between input
113 * and output made by reading direction
114 * token.
115 *
116 * %SKL_TKN_U32_FMT_CH: Supported channel count
117 *
118 * %SKL_TKN_U32_FMT_FREQ: Supported frequency/sample rate
119 *
120 * %SKL_TKN_U32_FMT_BIT_DEPTH: Supported container size
121 *
122 * %SKL_TKN_U32_FMT_SAMPLE_SIZE:Number of samples in the container
123 *
124 * %SKL_TKN_U32_FMT_CH_CONFIG: Supported channel configurations for the
125 * input/output.
126 *
127 * %SKL_TKN_U32_FMT_INTERLEAVE: Interleaving style which can be per
128 * channel or per sample. The values can be :
129 * SKL_INTERLEAVING_PER_CHANNEL = 0,
130 * SKL_INTERLEAVING_PER_SAMPLE = 1,
131 *
132 * %SKL_TKN_U32_FMT_SAMPLE_TYPE:
133 * Specifies the sample type. Can take the
134 * values: SKL_SAMPLE_TYPE_INT_MSB = 0,
135 * SKL_SAMPLE_TYPE_INT_LSB = 1,
136 * SKL_SAMPLE_TYPE_INT_SIGNED = 2,
137 * SKL_SAMPLE_TYPE_INT_UNSIGNED = 3,
138 * SKL_SAMPLE_TYPE_FLOAT = 4
139 *
140 * %SKL_TKN_U32_CH_MAP: Channel map values
141 * %SKL_TKN_U32_MOD_SET_PARAMS: It can take these values:
142 * SKL_PARAM_DEFAULT, SKL_PARAM_INIT,
143 * SKL_PARAM_SET, SKL_PARAM_BIND
144 *
145 * %SKL_TKN_U32_MOD_PARAM_ID: ID of the module params
146 *
147 * %SKL_TKN_U32_CAPS_SET_PARAMS:
148 * Set params value
149 *
150 * %SKL_TKN_U32_CAPS_PARAMS_ID: Params ID
151 *
152 * %SKL_TKN_U32_CAPS_SIZE: Caps size
153 *
154 * %SKL_TKN_U32_PROC_DOMAIN: Specify processing domain
155 *
156 * %SKL_TKN_U32_LIB_COUNT: Specifies the number of libraries
157 *
158 * %SKL_TKN_STR_LIB_NAME: Specifies the library name
159 *
160 * module_id and loadable flags dont have tokens as these values will be
161 * read from the DSP FW manifest
162 */
163enum SKL_TKNS {
164 SKL_TKN_UUID = 1,
165 SKL_TKN_U8_NUM_BLOCKS,
166 SKL_TKN_U8_BLOCK_TYPE,
167 SKL_TKN_U8_IN_PIN_TYPE,
168 SKL_TKN_U8_OUT_PIN_TYPE,
169 SKL_TKN_U8_DYN_IN_PIN,
170 SKL_TKN_U8_DYN_OUT_PIN,
171 SKL_TKN_U8_IN_QUEUE_COUNT,
172 SKL_TKN_U8_OUT_QUEUE_COUNT,
173 SKL_TKN_U8_TIME_SLOT,
174 SKL_TKN_U8_CORE_ID,
175 SKL_TKN_U8_MOD_TYPE,
176 SKL_TKN_U8_CONN_TYPE,
177 SKL_TKN_U8_DEV_TYPE,
178 SKL_TKN_U8_HW_CONN_TYPE,
179 SKL_TKN_U16_MOD_INST_ID,
180 SKL_TKN_U16_BLOCK_SIZE,
181 SKL_TKN_U32_MAX_MCPS,
182 SKL_TKN_U32_MEM_PAGES,
183 SKL_TKN_U32_OBS,
184 SKL_TKN_U32_IBS,
185 SKL_TKN_U32_VBUS_ID,
186 SKL_TKN_U32_PARAMS_FIXUP,
187 SKL_TKN_U32_CONVERTER,
188 SKL_TKN_U32_PIPE_ID,
189 SKL_TKN_U32_PIPE_CONN_TYPE,
190 SKL_TKN_U32_PIPE_PRIORITY,
191 SKL_TKN_U32_PIPE_MEM_PGS,
192 SKL_TKN_U32_DIR_PIN_COUNT,
193 SKL_TKN_U32_FMT_CH,
194 SKL_TKN_U32_FMT_FREQ,
195 SKL_TKN_U32_FMT_BIT_DEPTH,
196 SKL_TKN_U32_FMT_SAMPLE_SIZE,
197 SKL_TKN_U32_FMT_CH_CONFIG,
198 SKL_TKN_U32_FMT_INTERLEAVE,
199 SKL_TKN_U32_FMT_SAMPLE_TYPE,
200 SKL_TKN_U32_FMT_CH_MAP,
201 SKL_TKN_U32_PIN_MOD_ID,
202 SKL_TKN_U32_PIN_INST_ID,
203 SKL_TKN_U32_MOD_SET_PARAMS,
204 SKL_TKN_U32_MOD_PARAM_ID,
205 SKL_TKN_U32_CAPS_SET_PARAMS,
206 SKL_TKN_U32_CAPS_PARAMS_ID,
207 SKL_TKN_U32_CAPS_SIZE,
208 SKL_TKN_U32_PROC_DOMAIN,
209 SKL_TKN_U32_LIB_COUNT,
210 SKL_TKN_STR_LIB_NAME,
211 SKL_TKN_MAX = SKL_TKN_STR_LIB_NAME,
212};
213
214#endif