History

Merge tag 'asoc-v4.7-2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus

ASoC: Updates for v4.7 part 2 Really sorry about this late pull request. It looks like at the time I sent my pull request for v4.7 there was some conflict or other issue which caused my script to stop merging the ASoC branches at some point after the HDMI changes. It's all specific driver updates, including: - New drivers for MAX98371 and TAS5720. - SPI support for TLV320AIC32x4. - TDM support for STI Uniperf IPs. This code should all have been in -next prior to the merge window apart from some fixes, it dropped out on the 18th.

Takashi Iwai committed 10 years ago

Commit eb4606e2 parents 86c72d1 bf65921237 files · +4366 −1052Browse files

Showing the changes to include/uapi (5 of 237 files). Show all

Unified · Split

5 files
  1. include/uapi/linux/if.h +28 −0
  2. include/uapi/linux/if_macsec.h +3 −1
  3. include/uapi/linux/libc-compat.h +44 −0
  4. include/uapi/linux/tc_act/Kbuild +1 −0
  5. include/uapi/sound/asoc.h +42 −2
include/uapi/linux/if.h+28−0
@@ -19,14 +19,20 @@ · 18 unmodified lines
19#ifndef _LINUX_IF_H19#ifndef _LINUX_IF_H
20#define _LINUX_IF_H20#define _LINUX_IF_H
21 21
22#include <linux/libc-compat.h> /* for compatibility with glibc */
22#include <linux/types.h> /* for "__kernel_caddr_t" et al */23#include <linux/types.h> /* for "__kernel_caddr_t" et al */
23#include <linux/socket.h> /* for "struct sockaddr" et al */24#include <linux/socket.h> /* for "struct sockaddr" et al */
24#include <linux/compiler.h> /* for "__user" et al */25#include <linux/compiler.h> /* for "__user" et al */
25 26
27#if __UAPI_DEF_IF_IFNAMSIZ
26#define IFNAMSIZ 1628#define IFNAMSIZ 16
29#endif /* __UAPI_DEF_IF_IFNAMSIZ */
27#define IFALIASZ 25630#define IFALIASZ 256
28#include <linux/hdlc/ioctl.h>31#include <linux/hdlc/ioctl.h>
29 32
33/* For glibc compatibility. An empty enum does not compile. */
34#if __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO != 0 && \
35 __UAPI_DEF_IF_NET_DEVICE_FLAGS != 0
30/**36/**
31 * enum net_device_flags - &struct net_device flags37 * enum net_device_flags - &struct net_device flags
32 *38 *
@@ -68,6 +74,8 @@ · 35 unmodified lines
68 * @IFF_ECHO: echo sent packets. Volatile.74 * @IFF_ECHO: echo sent packets. Volatile.
69 */75 */
70enum net_device_flags {76enum net_device_flags {
77/* for compatibility with glibc net/if.h */
78#if __UAPI_DEF_IF_NET_DEVICE_FLAGS
71 IFF_UP = 1<<0, /* sysfs */79 IFF_UP = 1<<0, /* sysfs */
72 IFF_BROADCAST = 1<<1, /* volatile */80 IFF_BROADCAST = 1<<1, /* volatile */
73 IFF_DEBUG = 1<<2, /* sysfs */81 IFF_DEBUG = 1<<2, /* sysfs */
@@ -84,11 +92,17 @@ enum net_device_flags { · 10 unmodified lines
84 IFF_PORTSEL = 1<<13, /* sysfs */92 IFF_PORTSEL = 1<<13, /* sysfs */
85 IFF_AUTOMEDIA = 1<<14, /* sysfs */93 IFF_AUTOMEDIA = 1<<14, /* sysfs */
86 IFF_DYNAMIC = 1<<15, /* sysfs */94 IFF_DYNAMIC = 1<<15, /* sysfs */
95#endif /* __UAPI_DEF_IF_NET_DEVICE_FLAGS */
96#if __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO
87 IFF_LOWER_UP = 1<<16, /* volatile */97 IFF_LOWER_UP = 1<<16, /* volatile */
88 IFF_DORMANT = 1<<17, /* volatile */98 IFF_DORMANT = 1<<17, /* volatile */
89 IFF_ECHO = 1<<18, /* volatile */99 IFF_ECHO = 1<<18, /* volatile */
100#endif /* __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO */
90};101};
102#endif /* __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO != 0 && __UAPI_DEF_IF_NET_DEVICE_FLAGS != 0 */
91 103
104/* for compatibility with glibc net/if.h */
105#if __UAPI_DEF_IF_NET_DEVICE_FLAGS
92#define IFF_UP IFF_UP106#define IFF_UP IFF_UP
93#define IFF_BROADCAST IFF_BROADCAST107#define IFF_BROADCAST IFF_BROADCAST
94#define IFF_DEBUG IFF_DEBUG108#define IFF_DEBUG IFF_DEBUG
@@ -105,9 +119,13 @@ enum net_device_flags { · 10 unmodified lines
105#define IFF_PORTSEL IFF_PORTSEL119#define IFF_PORTSEL IFF_PORTSEL
106#define IFF_AUTOMEDIA IFF_AUTOMEDIA120#define IFF_AUTOMEDIA IFF_AUTOMEDIA
107#define IFF_DYNAMIC IFF_DYNAMIC121#define IFF_DYNAMIC IFF_DYNAMIC
122#endif /* __UAPI_DEF_IF_NET_DEVICE_FLAGS */
123
124#if __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO
108#define IFF_LOWER_UP IFF_LOWER_UP125#define IFF_LOWER_UP IFF_LOWER_UP
109#define IFF_DORMANT IFF_DORMANT126#define IFF_DORMANT IFF_DORMANT
110#define IFF_ECHO IFF_ECHO127#define IFF_ECHO IFF_ECHO
128#endif /* __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO */
111 129
112#define IFF_VOLATILE (IFF_LOOPBACK|IFF_POINTOPOINT|IFF_BROADCAST|IFF_ECHO|\130#define IFF_VOLATILE (IFF_LOOPBACK|IFF_POINTOPOINT|IFF_BROADCAST|IFF_ECHO|\
113 IFF_MASTER|IFF_SLAVE|IFF_RUNNING|IFF_LOWER_UP|IFF_DORMANT)131 IFF_MASTER|IFF_SLAVE|IFF_RUNNING|IFF_LOWER_UP|IFF_DORMANT)
@@ -166,6 +184,8 @@ enum { · 52 unmodified lines
166 * being very small might be worth keeping for clean configuration.184 * being very small might be worth keeping for clean configuration.
167 */185 */
168 186
187/* for compatibility with glibc net/if.h */
188#if __UAPI_DEF_IF_IFMAP
169struct ifmap {189struct ifmap {
170 unsigned long mem_start;190 unsigned long mem_start;
171 unsigned long mem_end;191 unsigned long mem_end;
@@ -175,6 +195,7 @@ struct ifmap { · 3 unmodified lines
175 unsigned char port;195 unsigned char port;
176 /* 3 bytes spare */196 /* 3 bytes spare */
177};197};
198#endif /* __UAPI_DEF_IF_IFMAP */
178 199
179struct if_settings {200struct if_settings {
180 unsigned int type; /* Type of physical device or protocol */201 unsigned int type; /* Type of physical device or protocol */
@@ -200,6 +221,8 @@ struct if_settings { · 19 unmodified lines
200 * remainder may be interface specific.221 * remainder may be interface specific.
201 */222 */
202 223
224/* for compatibility with glibc net/if.h */
225#if __UAPI_DEF_IF_IFREQ
203struct ifreq {226struct ifreq {
204#define IFHWADDRLEN 6227#define IFHWADDRLEN 6
205 union228 union
@@ -223,6 +246,7 @@ struct ifreq { · 17 unmodified lines
223 struct if_settings ifru_settings;246 struct if_settings ifru_settings;
224 } ifr_ifru;247 } ifr_ifru;
225};248};
249#endif /* __UAPI_DEF_IF_IFREQ */
226 250
227#define ifr_name ifr_ifrn.ifrn_name /* interface name */251#define ifr_name ifr_ifrn.ifrn_name /* interface name */
228#define ifr_hwaddr ifr_ifru.ifru_hwaddr /* MAC address */252#define ifr_hwaddr ifr_ifru.ifru_hwaddr /* MAC address */
@@ -249,6 +273,8 @@ struct ifreq { · 20 unmodified lines
249 * must know all networks accessible).273 * must know all networks accessible).
250 */274 */
251 275
276/* for compatibility with glibc net/if.h */
277#if __UAPI_DEF_IF_IFCONF
252struct ifconf {278struct ifconf {
253 int ifc_len; /* size of buffer */279 int ifc_len; /* size of buffer */
254 union {280 union {
@@ -256,6 +282,8 @@ struct ifconf { · 1 unmodified line
256 struct ifreq __user *ifcu_req;282 struct ifreq __user *ifcu_req;
257 } ifc_ifcu;283 } ifc_ifcu;
258};284};
285#endif /* __UAPI_DEF_IF_IFCONF */
286
259#define ifc_buf ifc_ifcu.ifcu_buf /* buffer address */287#define ifc_buf ifc_ifcu.ifcu_buf /* buffer address */
260#define ifc_req ifc_ifcu.ifcu_req /* array of structures */288#define ifc_req ifc_ifcu.ifcu_req /* array of structures */
261 289
include/uapi/linux/if_macsec.h+3−1
@@ -19,6 +19,8 @@ · 18 unmodified lines
19 19
20#define MACSEC_MAX_KEY_LEN 12820#define MACSEC_MAX_KEY_LEN 128
21 21
22#define MACSEC_KEYID_LEN 16
23
22#define MACSEC_DEFAULT_CIPHER_ID 0x0080020001000001ULL24#define MACSEC_DEFAULT_CIPHER_ID 0x0080020001000001ULL
23#define MACSEC_DEFAULT_CIPHER_ALT 0x0080C20001000001ULL25#define MACSEC_DEFAULT_CIPHER_ALT 0x0080C20001000001ULL
24 26
@@ -77,7 +79,7 @@ enum macsec_sa_attrs { · 52 unmodified lines
77 MACSEC_SA_ATTR_ACTIVE, /* config/dump, u8 0..1 */79 MACSEC_SA_ATTR_ACTIVE, /* config/dump, u8 0..1 */
78 MACSEC_SA_ATTR_PN, /* config/dump, u32 */80 MACSEC_SA_ATTR_PN, /* config/dump, u32 */
79 MACSEC_SA_ATTR_KEY, /* config, data */81 MACSEC_SA_ATTR_KEY, /* config, data */
80 MACSEC_SA_ATTR_KEYID, /* config/dump, u64 */82 MACSEC_SA_ATTR_KEYID, /* config/dump, 128-bit */
81 MACSEC_SA_ATTR_STATS, /* dump, nested, macsec_sa_stats_attr */83 MACSEC_SA_ATTR_STATS, /* dump, nested, macsec_sa_stats_attr */
82 __MACSEC_SA_ATTR_END,84 __MACSEC_SA_ATTR_END,
83 NUM_MACSEC_SA_ATTR = __MACSEC_SA_ATTR_END,85 NUM_MACSEC_SA_ATTR = __MACSEC_SA_ATTR_END,
include/uapi/linux/libc-compat.h+44−0
@@ -51,6 +51,40 @@ · 50 unmodified lines
51/* We have included glibc headers... */51/* We have included glibc headers... */
52#if defined(__GLIBC__)52#if defined(__GLIBC__)
53 53
54/* Coordinate with glibc net/if.h header. */
55#if defined(_NET_IF_H)
56
57/* GLIBC headers included first so don't define anything
58 * that would already be defined. */
59
60#define __UAPI_DEF_IF_IFCONF 0
61#define __UAPI_DEF_IF_IFMAP 0
62#define __UAPI_DEF_IF_IFNAMSIZ 0
63#define __UAPI_DEF_IF_IFREQ 0
64/* Everything up to IFF_DYNAMIC, matches net/if.h until glibc 2.23 */
65#define __UAPI_DEF_IF_NET_DEVICE_FLAGS 0
66/* For the future if glibc adds IFF_LOWER_UP, IFF_DORMANT and IFF_ECHO */
67#ifndef __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO
68#define __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO 1
69#endif /* __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO */
70
71#else /* _NET_IF_H */
72
73/* Linux headers included first, and we must define everything
74 * we need. The expectation is that glibc will check the
75 * __UAPI_DEF_* defines and adjust appropriately. */
76
77#define __UAPI_DEF_IF_IFCONF 1
78#define __UAPI_DEF_IF_IFMAP 1
79#define __UAPI_DEF_IF_IFNAMSIZ 1
80#define __UAPI_DEF_IF_IFREQ 1
81/* Everything up to IFF_DYNAMIC, matches net/if.h until glibc 2.23 */
82#define __UAPI_DEF_IF_NET_DEVICE_FLAGS 1
83/* For the future if glibc adds IFF_LOWER_UP, IFF_DORMANT and IFF_ECHO */
84#define __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO 1
85
86#endif /* _NET_IF_H */
87
54/* Coordinate with glibc netinet/in.h header. */88/* Coordinate with glibc netinet/in.h header. */
55#if defined(_NETINET_IN_H)89#if defined(_NETINET_IN_H)
56 90
@@ -117,6 +151,16 @@ · 60 unmodified lines
117 * that we need. */151 * that we need. */
118#else /* !defined(__GLIBC__) */152#else /* !defined(__GLIBC__) */
119 153
154/* Definitions for if.h */
155#define __UAPI_DEF_IF_IFCONF 1
156#define __UAPI_DEF_IF_IFMAP 1
157#define __UAPI_DEF_IF_IFNAMSIZ 1
158#define __UAPI_DEF_IF_IFREQ 1
159/* Everything up to IFF_DYNAMIC, matches net/if.h until glibc 2.23 */
160#define __UAPI_DEF_IF_NET_DEVICE_FLAGS 1
161/* For the future if glibc adds IFF_LOWER_UP, IFF_DORMANT and IFF_ECHO */
162#define __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO 1
163
120/* Definitions for in.h */164/* Definitions for in.h */
121#define __UAPI_DEF_IN_ADDR 1165#define __UAPI_DEF_IN_ADDR 1
122#define __UAPI_DEF_IN_IPPROTO 1166#define __UAPI_DEF_IN_IPPROTO 1
include/uapi/linux/tc_act/Kbuild+1−0
@@ -10,3 +10,4 @@ header-y += tc_skbedit.h · 9 unmodified lines
10header-y += tc_vlan.h10header-y += tc_vlan.h
11header-y += tc_bpf.h11header-y += tc_bpf.h
12header-y += tc_connmark.h12header-y += tc_connmark.h
13header-y += tc_ife.h
include/uapi/sound/asoc.h+42−2
@@ -116,6 +116,14 @@ · 115 unmodified lines
116#define SND_SOC_TPLG_STREAM_PLAYBACK 0116#define SND_SOC_TPLG_STREAM_PLAYBACK 0
117#define SND_SOC_TPLG_STREAM_CAPTURE 1117#define SND_SOC_TPLG_STREAM_CAPTURE 1
118 118
119/* vendor tuple types */
120#define SND_SOC_TPLG_TUPLE_TYPE_UUID 0
121#define SND_SOC_TPLG_TUPLE_TYPE_STRING 1
122#define SND_SOC_TPLG_TUPLE_TYPE_BOOL 2
123#define SND_SOC_TPLG_TUPLE_TYPE_BYTE 3
124#define SND_SOC_TPLG_TUPLE_TYPE_WORD 4
125#define SND_SOC_TPLG_TUPLE_TYPE_SHORT 5
126
119/*127/*
120 * Block Header.128 * Block Header.
121 * This header precedes all object and object arrays below.129 * This header precedes all object and object arrays below.
@@ -132,6 +140,35 @@ struct snd_soc_tplg_hdr { · 10 unmodified lines
132 __le32 count; /* number of elements in block */140 __le32 count; /* number of elements in block */
133} __attribute__((packed));141} __attribute__((packed));
134 142
143/* vendor tuple for uuid */
144struct snd_soc_tplg_vendor_uuid_elem {
145 __le32 token;
146 char uuid[16];
147} __attribute__((packed));
148
149/* vendor tuple for a bool/byte/short/word value */
150struct snd_soc_tplg_vendor_value_elem {
151 __le32 token;
152 __le32 value;
153} __attribute__((packed));
154
155/* vendor tuple for string */
156struct snd_soc_tplg_vendor_string_elem {
157 __le32 token;
158 char string[SNDRV_CTL_ELEM_ID_NAME_MAXLEN];
159} __attribute__((packed));
160
161struct snd_soc_tplg_vendor_array {
162 __le32 size; /* size in bytes of the array, including all elements */
163 __le32 type; /* SND_SOC_TPLG_TUPLE_TYPE_ */
164 __le32 num_elems; /* number of elements in array */
165 union {
166 struct snd_soc_tplg_vendor_uuid_elem uuid[0];
167 struct snd_soc_tplg_vendor_value_elem value[0];
168 struct snd_soc_tplg_vendor_string_elem string[0];
169 };
170} __attribute__((packed));
171
135/*172/*
136 * Private data.173 * Private data.
137 * All topology objects may have private data that can be used by the driver or174 * All topology objects may have private data that can be used by the driver or
@@ -139,7 +176,10 @@ struct snd_soc_tplg_hdr { · 1 unmodified line
139 */176 */
140struct snd_soc_tplg_private {177struct snd_soc_tplg_private {
141 __le32 size; /* in bytes of private data */178 __le32 size; /* in bytes of private data */
142 char data[0];179 union {
180 char data[0];
181 struct snd_soc_tplg_vendor_array array[0];
182 };
143} __attribute__((packed));183} __attribute__((packed));
144 184
145/*185/*
@@ -383,7 +423,7 @@ struct snd_soc_tplg_pcm { · 237 unmodified lines
383 __le32 size; /* in bytes of this structure */423 __le32 size; /* in bytes of this structure */
384 char pcm_name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN];424 char pcm_name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN];
385 char dai_name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN];425 char dai_name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN];
386 __le32 pcm_id; /* unique ID - used to match */426 __le32 pcm_id; /* unique ID - used to match with DAI link */
387 __le32 dai_id; /* unique ID - used to match */427 __le32 dai_id; /* unique ID - used to match */
388 __le32 playback; /* supports playback mode */428 __le32 playback; /* supports playback mode */
389 __le32 capture; /* supports capture mode */429 __le32 capture; /* supports capture mode */