History

Merge tag 'v3.16-rc6' into next

Merge with mainline to bring in changes to MFD to allow merging ipaq-micro-ts driver.

Dmitry Torokhov committed 12 years ago

Commit b9f12a52 parents 9d8dc3e 9a3c4149812 files · +498089 −250090Browse files

Showing the changes to include/uapi/linux (45 of 9812 files). Show all

Unified · Split

45 files
  1. include/uapi/linux/Kbuild +1 −0
  2. include/uapi/linux/audit.h +20 −0
  3. include/uapi/linux/btrfs.h +18 −2
  4. include/uapi/linux/can.h +3 −3
  5. include/uapi/linux/can/bcm.h +3 −3
  6. include/uapi/linux/can/error.h +3 −3
  7. include/uapi/linux/can/gw.h +3 −3
  8. include/uapi/linux/can/netlink.h +3 −3
  9. include/uapi/linux/can/raw.h +3 −3
  10. include/uapi/linux/capability.h +6 −1
  11. include/uapi/linux/ethtool.h +35 −0
  12. include/uapi/linux/filter.h +2 −1
  13. include/uapi/linux/gfs2_ondisk.h +1 −1
  14. include/uapi/linux/if_fddi.h +46 −44
  15. include/uapi/linux/if_link.h +11 −1
  16. include/uapi/linux/if_tunnel.h +1 −1
  17. include/uapi/linux/input.h +16 −1
  18. include/uapi/linux/kvm.h +16 −1
  19. include/uapi/linux/kvm_para.h +3 −0
  20. include/uapi/linux/l2tp.h +2 −0
  21. include/uapi/linux/neighbour.h +1 −0
  22. include/uapi/linux/netfilter/nf_tables.h +37 −0
  23. include/uapi/linux/netfilter/nfnetlink.h +2 −0
  24. include/uapi/linux/netfilter/nfnetlink_acct.h +9 −0
  25. include/uapi/linux/nfc.h +12 −4
  26. include/uapi/linux/nfsd/nfsfh.h +7 −25
  27. include/uapi/linux/nl80211.h +66 −5
  28. include/uapi/linux/nvme.h +39 −11
  29. include/uapi/linux/openvswitch.h +3 −1
  30. include/uapi/linux/perf_event.h +14 −7
  31. include/uapi/linux/psci.h +90 −0
  32. include/uapi/linux/serial_core.h +7 −1
  33. include/uapi/linux/serial_reg.h +1 −1
  34. include/uapi/linux/shm.h +9 −8
  35. include/uapi/linux/tipc.h +23 −0
  36. include/uapi/linux/tipc_config.h +1 −9
  37. include/uapi/linux/udp.h +2 −0
  38. include/uapi/linux/usb/Kbuild +1 −0
  39. include/uapi/linux/usb/cdc-wdm.h +2 −0
  40. include/uapi/linux/usb/functionfs.h +7 −0
  41. include/uapi/linux/v4l2-common.h +1 −1
  42. include/uapi/linux/v4l2-dv-timings.h +70 −0
  43. include/uapi/linux/v4l2-mediabus.h +13 −1
  44. include/uapi/linux/v4l2-subdev.h +19 −21
  45. include/uapi/linux/videodev2.h +16 −3
include/uapi/linux/Kbuild+1−0
@@ -317,6 +317,7 @@ header-y += ppp-ioctl.h · 316 unmodified lines
317header-y += ppp_defs.h317header-y += ppp_defs.h
318header-y += pps.h318header-y += pps.h
319header-y += prctl.h319header-y += prctl.h
320header-y += psci.h
320header-y += ptp_clock.h321header-y += ptp_clock.h
321header-y += ptrace.h322header-y += ptrace.h
322header-y += qnx4_fs.h323header-y += qnx4_fs.h
include/uapi/linux/audit.h+20−0
@@ -331,9 +331,17 @@ enum { · 330 unmodified lines
331#define AUDIT_FAIL_PRINTK 1331#define AUDIT_FAIL_PRINTK 1
332#define AUDIT_FAIL_PANIC 2332#define AUDIT_FAIL_PANIC 2
333 333
334/*
335 * These bits disambiguate different calling conventions that share an
336 * ELF machine type, bitness, and endianness
337 */
338#define __AUDIT_ARCH_CONVENTION_MASK 0x30000000
339#define __AUDIT_ARCH_CONVENTION_MIPS64_N32 0x20000000
340
334/* distinguish syscall tables */341/* distinguish syscall tables */
335#define __AUDIT_ARCH_64BIT 0x80000000342#define __AUDIT_ARCH_64BIT 0x80000000
336#define __AUDIT_ARCH_LE 0x40000000343#define __AUDIT_ARCH_LE 0x40000000
344
337#define AUDIT_ARCH_ALPHA (EM_ALPHA|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE)345#define AUDIT_ARCH_ALPHA (EM_ALPHA|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE)
338#define AUDIT_ARCH_ARM (EM_ARM|__AUDIT_ARCH_LE)346#define AUDIT_ARCH_ARM (EM_ARM|__AUDIT_ARCH_LE)
339#define AUDIT_ARCH_ARMEB (EM_ARM)347#define AUDIT_ARCH_ARMEB (EM_ARM)
@@ -346,7 +354,11 @@ enum { · 6 unmodified lines
346#define AUDIT_ARCH_MIPS (EM_MIPS)354#define AUDIT_ARCH_MIPS (EM_MIPS)
347#define AUDIT_ARCH_MIPSEL (EM_MIPS|__AUDIT_ARCH_LE)355#define AUDIT_ARCH_MIPSEL (EM_MIPS|__AUDIT_ARCH_LE)
348#define AUDIT_ARCH_MIPS64 (EM_MIPS|__AUDIT_ARCH_64BIT)356#define AUDIT_ARCH_MIPS64 (EM_MIPS|__AUDIT_ARCH_64BIT)
357#define AUDIT_ARCH_MIPS64N32 (EM_MIPS|__AUDIT_ARCH_64BIT|\
358 __AUDIT_ARCH_CONVENTION_MIPS64_N32)
349#define AUDIT_ARCH_MIPSEL64 (EM_MIPS|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE)359#define AUDIT_ARCH_MIPSEL64 (EM_MIPS|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE)
360#define AUDIT_ARCH_MIPSEL64N32 (EM_MIPS|__AUDIT_ARCH_64BIT|__AUDIT_ARCH_LE|\
361 __AUDIT_ARCH_CONVENTION_MIPS64_N32)
350#define AUDIT_ARCH_OPENRISC (EM_OPENRISC)362#define AUDIT_ARCH_OPENRISC (EM_OPENRISC)
351#define AUDIT_ARCH_PARISC (EM_PARISC)363#define AUDIT_ARCH_PARISC (EM_PARISC)
352#define AUDIT_ARCH_PARISC64 (EM_PARISC|__AUDIT_ARCH_64BIT)364#define AUDIT_ARCH_PARISC64 (EM_PARISC|__AUDIT_ARCH_64BIT)
@@ -373,6 +385,14 @@ enum { · 20 unmodified lines
373 */385 */
374#define AUDIT_MESSAGE_TEXT_MAX 8560386#define AUDIT_MESSAGE_TEXT_MAX 8560
375 387
388/* Multicast Netlink socket groups (default up to 32) */
389enum audit_nlgrps {
390 AUDIT_NLGRP_NONE, /* Group 0 not used */
391 AUDIT_NLGRP_READLOG, /* "best effort" read only socket */
392 __AUDIT_NLGRP_MAX
393};
394#define AUDIT_NLGRP_MAX (__AUDIT_NLGRP_MAX - 1)
395
376struct audit_status {396struct audit_status {
377 __u32 mask; /* Bit mask for valid entries */397 __u32 mask; /* Bit mask for valid entries */
378 __u32 enabled; /* 1 = enabled, 0 = disabled */398 __u32 enabled; /* 1 = enabled, 0 = disabled */
include/uapi/linux/btrfs.h+18−2
@@ -38,6 +38,7 @@ struct btrfs_ioctl_vol_args { · 37 unmodified lines
38#define BTRFS_SUBVOL_QGROUP_INHERIT (1ULL << 2)38#define BTRFS_SUBVOL_QGROUP_INHERIT (1ULL << 2)
39#define BTRFS_FSID_SIZE 1639#define BTRFS_FSID_SIZE 16
40#define BTRFS_UUID_SIZE 1640#define BTRFS_UUID_SIZE 16
41#define BTRFS_UUID_UNPARSED_SIZE 37
41 42
42#define BTRFS_QGROUP_INHERIT_SET_LIMITS (1ULL << 0)43#define BTRFS_QGROUP_INHERIT_SET_LIMITS (1ULL << 0)
43 44
@@ -181,7 +182,11 @@ struct btrfs_ioctl_fs_info_args { · 137 unmodified lines
181 __u64 max_id; /* out */182 __u64 max_id; /* out */
182 __u64 num_devices; /* out */183 __u64 num_devices; /* out */
183 __u8 fsid[BTRFS_FSID_SIZE]; /* out */184 __u8 fsid[BTRFS_FSID_SIZE]; /* out */
184 __u64 reserved[124]; /* pad to 1k */185 __u32 nodesize; /* out */
186 __u32 sectorsize; /* out */
187 __u32 clone_alignment; /* out */
188 __u32 reserved32;
189 __u64 reserved[122]; /* pad to 1k */
185};190};
186 191
187struct btrfs_ioctl_feature_flags {192struct btrfs_ioctl_feature_flags {
@@ -211,7 +216,8 @@ struct btrfs_balance_args { · 23 unmodified lines
211 216
212 __u64 flags;217 __u64 flags;
213 218
214 __u64 unused[8];219 __u64 limit; /* limit number of processed chunks */
220 __u64 unused[7];
215} __attribute__ ((__packed__));221} __attribute__ ((__packed__));
216 222
217/* report balance progress to userspace */223/* report balance progress to userspace */
@@ -301,6 +307,14 @@ struct btrfs_ioctl_search_args { · 83 unmodified lines
301 char buf[BTRFS_SEARCH_ARGS_BUFSIZE];307 char buf[BTRFS_SEARCH_ARGS_BUFSIZE];
302};308};
303 309
310struct btrfs_ioctl_search_args_v2 {
311 struct btrfs_ioctl_search_key key; /* in/out - search parameters */
312 __u64 buf_size; /* in - size of buffer
313 * out - on EOVERFLOW: needed size
314 * to store item */
315 __u64 buf[0]; /* out - found items */
316};
317
304struct btrfs_ioctl_clone_range_args {318struct btrfs_ioctl_clone_range_args {
305 __s64 src_fd;319 __s64 src_fd;
306 __u64 src_offset, src_length;320 __u64 src_offset, src_length;
@@ -553,6 +567,8 @@ static inline char *btrfs_err_str(enum btrfs_err_code err_code) · 246 unmodified lines
553 struct btrfs_ioctl_defrag_range_args)567 struct btrfs_ioctl_defrag_range_args)
554#define BTRFS_IOC_TREE_SEARCH _IOWR(BTRFS_IOCTL_MAGIC, 17, \568#define BTRFS_IOC_TREE_SEARCH _IOWR(BTRFS_IOCTL_MAGIC, 17, \
555 struct btrfs_ioctl_search_args)569 struct btrfs_ioctl_search_args)
570#define BTRFS_IOC_TREE_SEARCH_V2 _IOWR(BTRFS_IOCTL_MAGIC, 17, \
571 struct btrfs_ioctl_search_args_v2)
556#define BTRFS_IOC_INO_LOOKUP _IOWR(BTRFS_IOCTL_MAGIC, 18, \572#define BTRFS_IOC_INO_LOOKUP _IOWR(BTRFS_IOCTL_MAGIC, 18, \
557 struct btrfs_ioctl_ino_lookup_args)573 struct btrfs_ioctl_ino_lookup_args)
558#define BTRFS_IOC_DEFAULT_SUBVOL _IOW(BTRFS_IOCTL_MAGIC, 19, __u64)574#define BTRFS_IOC_DEFAULT_SUBVOL _IOW(BTRFS_IOCTL_MAGIC, 19, __u64)
include/uapi/linux/can.h+3−3
@@ -42,8 +42,8 @@ · 41 unmodified lines
42 * DAMAGE.42 * DAMAGE.
43 */43 */
44 44
45#ifndef CAN_H45#ifndef _UAPI_CAN_H
46#define CAN_H46#define _UAPI_CAN_H
47 47
48#include <linux/types.h>48#include <linux/types.h>
49#include <linux/socket.h>49#include <linux/socket.h>
@@ -191,4 +191,4 @@ struct can_filter { · 141 unmodified lines
191 191
192#define CAN_INV_FILTER 0x20000000U /* to be set in can_filter.can_id */192#define CAN_INV_FILTER 0x20000000U /* to be set in can_filter.can_id */
193 193
194#endif /* CAN_H */194#endif /* !_UAPI_CAN_H */
include/uapi/linux/can/bcm.h+3−3
@@ -41,8 +41,8 @@ · 40 unmodified lines
41 * DAMAGE.41 * DAMAGE.
42 */42 */
43 43
44#ifndef CAN_BCM_H44#ifndef _UAPI_CAN_BCM_H
45#define CAN_BCM_H45#define _UAPI_CAN_BCM_H
46 46
47#include <linux/types.h>47#include <linux/types.h>
48#include <linux/can.h>48#include <linux/can.h>
@@ -95,4 +95,4 @@ enum { · 46 unmodified lines
95#define TX_RESET_MULTI_IDX 0x020095#define TX_RESET_MULTI_IDX 0x0200
96#define RX_RTR_FRAME 0x040096#define RX_RTR_FRAME 0x0400
97 97
98#endif /* CAN_BCM_H */98#endif /* !_UAPI_CAN_BCM_H */
include/uapi/linux/can/error.h+3−3
@@ -41,8 +41,8 @@ · 40 unmodified lines
41 * DAMAGE.41 * DAMAGE.
42 */42 */
43 43
44#ifndef CAN_ERROR_H44#ifndef _UAPI_CAN_ERROR_H
45#define CAN_ERROR_H45#define _UAPI_CAN_ERROR_H
46 46
47#define CAN_ERR_DLC 8 /* dlc for error message frames */47#define CAN_ERR_DLC 8 /* dlc for error message frames */
48 48
@@ -120,4 +120,4 @@ · 71 unmodified lines
120 120
121/* controller specific additional information / data[5..7] */121/* controller specific additional information / data[5..7] */
122 122
123#endif /* CAN_ERROR_H */123#endif /* _UAPI_CAN_ERROR_H */
include/uapi/linux/can/gw.h+3−3
@@ -41,8 +41,8 @@ · 40 unmodified lines
41 * DAMAGE.41 * DAMAGE.
42 */42 */
43 43
44#ifndef CAN_GW_H44#ifndef _UAPI_CAN_GW_H
45#define CAN_GW_H45#define _UAPI_CAN_GW_H
46 46
47#include <linux/types.h>47#include <linux/types.h>
48#include <linux/can.h>48#include <linux/can.h>
@@ -200,4 +200,4 @@ enum { · 151 unmodified lines
200 * Beware of sending unpacked or aligned structs!200 * Beware of sending unpacked or aligned structs!
201 */201 */
202 202
203#endif203#endif /* !_UAPI_CAN_GW_H */
include/uapi/linux/can/netlink.h+3−3
@@ -15,8 +15,8 @@ · 14 unmodified lines
15 * GNU General Public License for more details.15 * GNU General Public License for more details.
16 */16 */
17 17
18#ifndef CAN_NETLINK_H18#ifndef _UAPI_CAN_NETLINK_H
19#define CAN_NETLINK_H19#define _UAPI_CAN_NETLINK_H
20 20
21#include <linux/types.h>21#include <linux/types.h>
22 22
@@ -130,4 +130,4 @@ enum { · 107 unmodified lines
130 130
131#define IFLA_CAN_MAX (__IFLA_CAN_MAX - 1)131#define IFLA_CAN_MAX (__IFLA_CAN_MAX - 1)
132 132
133#endif /* CAN_NETLINK_H */133#endif /* !_UAPI_CAN_NETLINK_H */
include/uapi/linux/can/raw.h+3−3
@@ -42,8 +42,8 @@ · 41 unmodified lines
42 * DAMAGE.42 * DAMAGE.
43 */43 */
44 44
45#ifndef CAN_RAW_H45#ifndef _UAPI_CAN_RAW_H
46#define CAN_RAW_H46#define _UAPI_CAN_RAW_H
47 47
48#include <linux/can.h>48#include <linux/can.h>
49 49
@@ -59,4 +59,4 @@ enum { · 9 unmodified lines
59 CAN_RAW_FD_FRAMES, /* allow CAN FD frames (default:off) */59 CAN_RAW_FD_FRAMES, /* allow CAN FD frames (default:off) */
60};60};
61 61
62#endif62#endif /* !_UAPI_CAN_RAW_H */
include/uapi/linux/capability.h+6−1
@@ -347,7 +347,12 @@ struct vfs_cap_data { · 346 unmodified lines
347 347
348#define CAP_BLOCK_SUSPEND 36348#define CAP_BLOCK_SUSPEND 36
349 349
350#define CAP_LAST_CAP CAP_BLOCK_SUSPEND350/* Allow reading the audit log via multicast netlink socket */
351
352#define CAP_AUDIT_READ 37
353
354
355#define CAP_LAST_CAP CAP_AUDIT_READ
351 356
352#define cap_valid(x) ((x) >= 0 && (x) <= CAP_LAST_CAP)357#define cap_valid(x) ((x) >= 0 && (x) <= CAP_LAST_CAP)
353 358
include/uapi/linux/ethtool.h+35−0
@@ -846,6 +846,38 @@ struct ethtool_rxfh_indir { · 845 unmodified lines
846 __u32 ring_index[0];846 __u32 ring_index[0];
847};847};
848 848
849/**
850 * struct ethtool_rxfh - command to get/set RX flow hash indir or/and hash key.
851 * @cmd: Specific command number - %ETHTOOL_GRSSH or %ETHTOOL_SRSSH
852 * @rss_context: RSS context identifier.
853 * @indir_size: On entry, the array size of the user buffer for the
854 * indirection table, which may be zero, or (for %ETHTOOL_SRSSH),
855 * %ETH_RXFH_INDIR_NO_CHANGE. On return from %ETHTOOL_GRSSH,
856 * the array size of the hardware indirection table.
857 * @key_size: On entry, the array size of the user buffer for the hash key,
858 * which may be zero. On return from %ETHTOOL_GRSSH, the size of the
859 * hardware hash key.
860 * @rsvd: Reserved for future extensions.
861 * @rss_config: RX ring/queue index for each hash value i.e., indirection table
862 * of @indir_size __u32 elements, followed by hash key of @key_size
863 * bytes.
864 *
865 * For %ETHTOOL_GRSSH, a @indir_size and key_size of zero means that only the
866 * size should be returned. For %ETHTOOL_SRSSH, an @indir_size of
867 * %ETH_RXFH_INDIR_NO_CHANGE means that indir table setting is not requested
868 * and a @indir_size of zero means the indir table should be reset to default
869 * values.
870 */
871struct ethtool_rxfh {
872 __u32 cmd;
873 __u32 rss_context;
874 __u32 indir_size;
875 __u32 key_size;
876 __u32 rsvd[2];
877 __u32 rss_config[0];
878};
879#define ETH_RXFH_INDIR_NO_CHANGE 0xffffffff
880
849/**881/**
850 * struct ethtool_rx_ntuple_flow_spec - specification for RX flow filter882 * struct ethtool_rx_ntuple_flow_spec - specification for RX flow filter
851 * @flow_type: Type of match to perform, e.g. %TCP_V4_FLOW883 * @flow_type: Type of match to perform, e.g. %TCP_V4_FLOW
@@ -1118,6 +1150,9 @@ enum ethtool_sfeatures_retval_bits { · 266 unmodified lines
1118#define ETHTOOL_GEEE 0x00000044 /* Get EEE settings */1150#define ETHTOOL_GEEE 0x00000044 /* Get EEE settings */
1119#define ETHTOOL_SEEE 0x00000045 /* Set EEE settings */1151#define ETHTOOL_SEEE 0x00000045 /* Set EEE settings */
1120 1152
1153#define ETHTOOL_GRSSH 0x00000046 /* Get RX flow hash configuration */
1154#define ETHTOOL_SRSSH 0x00000047 /* Set RX flow hash configuration */
1155
1121/* compatibility with older code */1156/* compatibility with older code */
1122#define SPARC_ETH_GSET ETHTOOL_GSET1157#define SPARC_ETH_GSET ETHTOOL_GSET
1123#define SPARC_ETH_SSET ETHTOOL_SSET1158#define SPARC_ETH_SSET ETHTOOL_SSET
include/uapi/linux/filter.h+2−1
@@ -130,7 +130,8 @@ struct sock_fprog { /* Required for SO_ATTACH_FILTER. */ · 129 unmodified lines
130#define SKF_AD_VLAN_TAG 44130#define SKF_AD_VLAN_TAG 44
131#define SKF_AD_VLAN_TAG_PRESENT 48131#define SKF_AD_VLAN_TAG_PRESENT 48
132#define SKF_AD_PAY_OFFSET 52132#define SKF_AD_PAY_OFFSET 52
133#define SKF_AD_MAX 56133#define SKF_AD_RANDOM 56
134#define SKF_AD_MAX 60
134#define SKF_NET_OFF (-0x100000)135#define SKF_NET_OFF (-0x100000)
135#define SKF_LL_OFF (-0x200000)136#define SKF_LL_OFF (-0x200000)
136 137
include/uapi/linux/gfs2_ondisk.h+1−1
@@ -20,7 +20,7 @@ · 19 unmodified lines
20 20
21#define GFS2_MOUNT_LOCK 021#define GFS2_MOUNT_LOCK 0
22#define GFS2_LIVE_LOCK 122#define GFS2_LIVE_LOCK 1
23#define GFS2_TRANS_LOCK 223#define GFS2_FREEZE_LOCK 2
24#define GFS2_RENAME_LOCK 324#define GFS2_RENAME_LOCK 3
25#define GFS2_CONTROL_LOCK 425#define GFS2_CONTROL_LOCK 4
26#define GFS2_MOUNTED_LOCK 526#define GFS2_MOUNTED_LOCK 5
include/uapi/linux/if_fddi.h+46−44
@@ -30,74 +30,76 @@ · 29 unmodified lines
30 * Define max and min legal sizes. The frame sizes do not include30 * Define max and min legal sizes. The frame sizes do not include
31 * 4 byte FCS/CRC (frame check sequence).31 * 4 byte FCS/CRC (frame check sequence).
32 */32 */
33#define FDDI_K_ALEN 6 /* Octets in one FDDI address */33#define FDDI_K_ALEN 6 /* Octets in one FDDI address */
34#define FDDI_K_8022_HLEN 16 /* Total octets in 802.2 header */34#define FDDI_K_8022_HLEN 16 /* Total octets in 802.2 header */
35#define FDDI_K_SNAP_HLEN 21 /* Total octets in 802.2 SNAP header */35#define FDDI_K_SNAP_HLEN 21 /* Total octets in 802.2 SNAP header */
36#define FDDI_K_8022_ZLEN 16 /* Min octets in 802.2 frame sans FCS */36#define FDDI_K_8022_ZLEN 16 /* Min octets in 802.2 frame sans
37#define FDDI_K_SNAP_ZLEN 21 /* Min octets in 802.2 SNAP frame sans FCS */37 FCS */
38#define FDDI_K_SNAP_ZLEN 21 /* Min octets in 802.2 SNAP frame sans
39 FCS */
38#define FDDI_K_8022_DLEN 4475 /* Max octets in 802.2 payload */40#define FDDI_K_8022_DLEN 4475 /* Max octets in 802.2 payload */
39#define FDDI_K_SNAP_DLEN 4470 /* Max octets in 802.2 SNAP payload */41#define FDDI_K_SNAP_DLEN 4470 /* Max octets in 802.2 SNAP payload */
40#define FDDI_K_LLC_ZLEN 13 /* Min octets in LLC frame sans FCS */42#define FDDI_K_LLC_ZLEN 13 /* Min octets in LLC frame sans FCS */
41#define FDDI_K_LLC_LEN 4491 /* Max octets in LLC frame sans FCS */43#define FDDI_K_LLC_LEN 4491 /* Max octets in LLC frame sans FCS */
44#define FDDI_K_OUI_LEN 3 /* Octets in OUI in 802.2 SNAP
45 header */
42 46
43/* Define FDDI Frame Control (FC) Byte values */47/* Define FDDI Frame Control (FC) Byte values */
44#define FDDI_FC_K_VOID 0x00 48#define FDDI_FC_K_VOID 0x00
45#define FDDI_FC_K_NON_RESTRICTED_TOKEN 0x80 49#define FDDI_FC_K_NON_RESTRICTED_TOKEN 0x80
46#define FDDI_FC_K_RESTRICTED_TOKEN 0xC0 50#define FDDI_FC_K_RESTRICTED_TOKEN 0xC0
47#define FDDI_FC_K_SMT_MIN 0x4151#define FDDI_FC_K_SMT_MIN 0x41
48#define FDDI_FC_K_SMT_MAX 0x4F52#define FDDI_FC_K_SMT_MAX 0x4F
49#define FDDI_FC_K_MAC_MIN 0xC153#define FDDI_FC_K_MAC_MIN 0xC1
50#define FDDI_FC_K_MAC_MAX 0xCF 54#define FDDI_FC_K_MAC_MAX 0xCF
51#define FDDI_FC_K_ASYNC_LLC_MIN 0x5055#define FDDI_FC_K_ASYNC_LLC_MIN 0x50
52#define FDDI_FC_K_ASYNC_LLC_DEF 0x5456#define FDDI_FC_K_ASYNC_LLC_DEF 0x54
53#define FDDI_FC_K_ASYNC_LLC_MAX 0x5F57#define FDDI_FC_K_ASYNC_LLC_MAX 0x5F
54#define FDDI_FC_K_SYNC_LLC_MIN 0xD058#define FDDI_FC_K_SYNC_LLC_MIN 0xD0
55#define FDDI_FC_K_SYNC_LLC_MAX 0xD759#define FDDI_FC_K_SYNC_LLC_MAX 0xD7
56#define FDDI_FC_K_IMPLEMENTOR_MIN 0x6060#define FDDI_FC_K_IMPLEMENTOR_MIN 0x60
57#define FDDI_FC_K_IMPLEMENTOR_MAX 0x6F61#define FDDI_FC_K_IMPLEMENTOR_MAX 0x6F
58#define FDDI_FC_K_RESERVED_MIN 0x7062#define FDDI_FC_K_RESERVED_MIN 0x70
59#define FDDI_FC_K_RESERVED_MAX 0x7F63#define FDDI_FC_K_RESERVED_MAX 0x7F
60 64
61/* Define LLC and SNAP constants */65/* Define LLC and SNAP constants */
62#define FDDI_EXTENDED_SAP 0xAA66#define FDDI_EXTENDED_SAP 0xAA
63#define FDDI_UI_CMD 0x0367#define FDDI_UI_CMD 0x03
64 68
65/* Define 802.2 Type 1 header */69/* Define 802.2 Type 1 header */
66struct fddi_8022_1_hdr {70struct fddi_8022_1_hdr {
67 __u8 dsap; /* destination service access point */71 __u8 dsap; /* destination service access point */
68 __u8 ssap; /* source service access point */72 __u8 ssap; /* source service access point */
69 __u8 ctrl; /* control byte #1 */73 __u8 ctrl; /* control byte #1 */
70} __attribute__((packed));74} __attribute__((packed));
71 75
72/* Define 802.2 Type 2 header */76/* Define 802.2 Type 2 header */
73struct fddi_8022_2_hdr {77struct fddi_8022_2_hdr {
74 __u8 dsap; /* destination service access point */78 __u8 dsap; /* destination service access point */
75 __u8 ssap; /* source service access point */79 __u8 ssap; /* source service access point */
76 __u8 ctrl_1; /* control byte #1 */80 __u8 ctrl_1; /* control byte #1 */
77 __u8 ctrl_2; /* control byte #2 */81 __u8 ctrl_2; /* control byte #2 */
78} __attribute__((packed));82} __attribute__((packed));
79 83
80/* Define 802.2 SNAP header */84/* Define 802.2 SNAP header */
81#define FDDI_K_OUI_LEN 3
82struct fddi_snap_hdr {85struct fddi_snap_hdr {
83 __u8 dsap; /* always 0xAA */86 __u8 dsap; /* always 0xAA */
84 __u8 ssap; /* always 0xAA */87 __u8 ssap; /* always 0xAA */
85 __u8 ctrl; /* always 0x03 */88 __u8 ctrl; /* always 0x03 */
86 __u8 oui[FDDI_K_OUI_LEN]; /* organizational universal id */89 __u8 oui[FDDI_K_OUI_LEN]; /* organizational universal id */
87 __be16 ethertype; /* packet type ID field */90 __be16 ethertype; /* packet type ID field */
88} __attribute__((packed));91} __attribute__((packed));
89 92
90/* Define FDDI LLC frame header */93/* Define FDDI LLC frame header */
91struct fddihdr {94struct fddihdr {
92 __u8 fc; /* frame control */95 __u8 fc; /* frame control */
93 __u8 daddr[FDDI_K_ALEN]; /* destination address */96 __u8 daddr[FDDI_K_ALEN]; /* destination address */
94 __u8 saddr[FDDI_K_ALEN]; /* source address */97 __u8 saddr[FDDI_K_ALEN]; /* source address */
95 union98 union {
96 {99 struct fddi_8022_1_hdr llc_8022_1;
97 struct fddi_8022_1_hdr llc_8022_1;100 struct fddi_8022_2_hdr llc_8022_2;
98 struct fddi_8022_2_hdr llc_8022_2;101 struct fddi_snap_hdr llc_snap;
99 struct fddi_snap_hdr llc_snap;102 } hdr;
100 } hdr;
101} __attribute__((packed));103} __attribute__((packed));
102 104
103 105
include/uapi/linux/if_link.h+11−1
@@ -319,6 +319,9 @@ enum { · 318 unmodified lines
319 IFLA_VXLAN_PORT, /* destination port */319 IFLA_VXLAN_PORT, /* destination port */
320 IFLA_VXLAN_GROUP6,320 IFLA_VXLAN_GROUP6,
321 IFLA_VXLAN_LOCAL6,321 IFLA_VXLAN_LOCAL6,
322 IFLA_VXLAN_UDP_CSUM,
323 IFLA_VXLAN_UDP_ZERO_CSUM6_TX,
324 IFLA_VXLAN_UDP_ZERO_CSUM6_RX,
322 __IFLA_VXLAN_MAX325 __IFLA_VXLAN_MAX
323};326};
324#define IFLA_VXLAN_MAX (__IFLA_VXLAN_MAX - 1)327#define IFLA_VXLAN_MAX (__IFLA_VXLAN_MAX - 1)
@@ -399,9 +402,10 @@ enum { · 74 unmodified lines
399 IFLA_VF_UNSPEC,402 IFLA_VF_UNSPEC,
400 IFLA_VF_MAC, /* Hardware queue specific attributes */403 IFLA_VF_MAC, /* Hardware queue specific attributes */
401 IFLA_VF_VLAN,404 IFLA_VF_VLAN,
402 IFLA_VF_TX_RATE, /* TX Bandwidth Allocation */405 IFLA_VF_TX_RATE, /* Max TX Bandwidth Allocation */
403 IFLA_VF_SPOOFCHK, /* Spoof Checking on/off switch */406 IFLA_VF_SPOOFCHK, /* Spoof Checking on/off switch */
404 IFLA_VF_LINK_STATE, /* link state enable/disable/auto switch */407 IFLA_VF_LINK_STATE, /* link state enable/disable/auto switch */
408 IFLA_VF_RATE, /* Min and Max TX Bandwidth Allocation */
405 __IFLA_VF_MAX,409 __IFLA_VF_MAX,
406};410};
407 411
@@ -423,6 +427,12 @@ struct ifla_vf_tx_rate { · 15 unmodified lines
423 __u32 rate; /* Max TX bandwidth in Mbps, 0 disables throttling */427 __u32 rate; /* Max TX bandwidth in Mbps, 0 disables throttling */
424};428};
425 429
430struct ifla_vf_rate {
431 __u32 vf;
432 __u32 min_tx_rate; /* Min Bandwidth in Mbps */
433 __u32 max_tx_rate; /* Max Bandwidth in Mbps */
434};
435
426struct ifla_vf_spoofchk {436struct ifla_vf_spoofchk {
427 __u32 vf;437 __u32 vf;
428 __u32 setting;438 __u32 setting;
include/uapi/linux/if_tunnel.h+1−1
@@ -100,7 +100,7 @@ enum { · 99 unmodified lines
100#define IFLA_GRE_MAX (__IFLA_GRE_MAX - 1)100#define IFLA_GRE_MAX (__IFLA_GRE_MAX - 1)
101 101
102/* VTI-mode i_flags */102/* VTI-mode i_flags */
103#define VTI_ISVTI 0x0001103#define VTI_ISVTI ((__force __be16)0x0001)
104 104
105enum {105enum {
106 IFLA_VTI_UNSPEC,106 IFLA_VTI_UNSPEC,
include/uapi/linux/input.h+16−1
@@ -462,7 +462,10 @@ struct input_keymap_entry { · 461 unmodified lines
462#define KEY_VIDEO_NEXT 241 /* drive next video source */462#define KEY_VIDEO_NEXT 241 /* drive next video source */
463#define KEY_VIDEO_PREV 242 /* drive previous video source */463#define KEY_VIDEO_PREV 242 /* drive previous video source */
464#define KEY_BRIGHTNESS_CYCLE 243 /* brightness up, after max is min */464#define KEY_BRIGHTNESS_CYCLE 243 /* brightness up, after max is min */
465#define KEY_BRIGHTNESS_ZERO 244 /* brightness off, use ambient */465#define KEY_BRIGHTNESS_AUTO 244 /* Set Auto Brightness: manual
466 brightness control is off,
467 rely on ambient */
468#define KEY_BRIGHTNESS_ZERO KEY_BRIGHTNESS_AUTO
466#define KEY_DISPLAY_OFF 245 /* display device to off state */469#define KEY_DISPLAY_OFF 245 /* display device to off state */
467 470
468#define KEY_WWAN 246 /* Wireless WAN (LTE, UMTS, GSM, etc.) */471#define KEY_WWAN 246 /* Wireless WAN (LTE, UMTS, GSM, etc.) */
@@ -632,6 +635,7 @@ struct input_keymap_entry { · 163 unmodified lines
632#define KEY_ADDRESSBOOK 0x1ad /* AL Contacts/Address Book */635#define KEY_ADDRESSBOOK 0x1ad /* AL Contacts/Address Book */
633#define KEY_MESSENGER 0x1ae /* AL Instant Messaging */636#define KEY_MESSENGER 0x1ae /* AL Instant Messaging */
634#define KEY_DISPLAYTOGGLE 0x1af /* Turn display (LCD) on and off */637#define KEY_DISPLAYTOGGLE 0x1af /* Turn display (LCD) on and off */
638#define KEY_BRIGHTNESS_TOGGLE KEY_DISPLAYTOGGLE
635#define KEY_SPELLCHECK 0x1b0 /* AL Spell Check */639#define KEY_SPELLCHECK 0x1b0 /* AL Spell Check */
636#define KEY_LOGOFF 0x1b1 /* AL Logoff */640#define KEY_LOGOFF 0x1b1 /* AL Logoff */
637 641
@@ -723,6 +727,17 @@ struct input_keymap_entry { · 85 unmodified lines
723 727
724#define KEY_ALS_TOGGLE 0x230 /* Ambient light sensor */728#define KEY_ALS_TOGGLE 0x230 /* Ambient light sensor */
725 729
730#define KEY_BUTTONCONFIG 0x240 /* AL Button Configuration */
731#define KEY_TASKMANAGER 0x241 /* AL Task/Project Manager */
732#define KEY_JOURNAL 0x242 /* AL Log/Journal/Timecard */
733#define KEY_CONTROLPANEL 0x243 /* AL Control Panel */
734#define KEY_APPSELECT 0x244 /* AL Select Task/Application */
735#define KEY_SCREENSAVER 0x245 /* AL Screen Saver */
736#define KEY_VOICECOMMAND 0x246 /* Listening Voice Command */
737
738#define KEY_BRIGHTNESS_MIN 0x250 /* Set Brightness to Minimum */
739#define KEY_BRIGHTNESS_MAX 0x251 /* Set Brightness to Maximum */
740
726#define BTN_TRIGGER_HAPPY 0x2c0741#define BTN_TRIGGER_HAPPY 0x2c0
727#define BTN_TRIGGER_HAPPY1 0x2c0742#define BTN_TRIGGER_HAPPY1 0x2c0
728#define BTN_TRIGGER_HAPPY2 0x2c1743#define BTN_TRIGGER_HAPPY2 0x2c1
include/uapi/linux/kvm.h+16−1
@@ -171,6 +171,7 @@ struct kvm_pit_config { · 170 unmodified lines
171#define KVM_EXIT_WATCHDOG 21171#define KVM_EXIT_WATCHDOG 21
172#define KVM_EXIT_S390_TSCH 22172#define KVM_EXIT_S390_TSCH 22
173#define KVM_EXIT_EPR 23173#define KVM_EXIT_EPR 23
174#define KVM_EXIT_SYSTEM_EVENT 24
174 175
175/* For KVM_EXIT_INTERNAL_ERROR */176/* For KVM_EXIT_INTERNAL_ERROR */
176/* Emulate instruction failed. */177/* Emulate instruction failed. */
@@ -301,6 +302,13 @@ struct kvm_run { · 124 unmodified lines
301 struct {302 struct {
302 __u32 epr;303 __u32 epr;
303 } epr;304 } epr;
305 /* KVM_EXIT_SYSTEM_EVENT */
306 struct {
307#define KVM_SYSTEM_EVENT_SHUTDOWN 1
308#define KVM_SYSTEM_EVENT_RESET 2
309 __u32 type;
310 __u64 flags;
311 } system_event;
304 /* Fix the size of the union. */312 /* Fix the size of the union. */
305 char padding[256];313 char padding[256];
306 };314 };
@@ -416,6 +424,8 @@ struct kvm_s390_psw { · 109 unmodified lines
416#define KVM_S390_INT_PFAULT_INIT 0xfffe0004u424#define KVM_S390_INT_PFAULT_INIT 0xfffe0004u
417#define KVM_S390_INT_PFAULT_DONE 0xfffe0005u425#define KVM_S390_INT_PFAULT_DONE 0xfffe0005u
418#define KVM_S390_MCHK 0xfffe1000u426#define KVM_S390_MCHK 0xfffe1000u
427#define KVM_S390_INT_CLOCK_COMP 0xffff1004u
428#define KVM_S390_INT_CPU_TIMER 0xffff1005u
419#define KVM_S390_INT_VIRTIO 0xffff2603u429#define KVM_S390_INT_VIRTIO 0xffff2603u
420#define KVM_S390_INT_SERVICE 0xffff2401u430#define KVM_S390_INT_SERVICE 0xffff2401u
421#define KVM_S390_INT_EMERGENCY 0xffff1201u431#define KVM_S390_INT_EMERGENCY 0xffff1201u
@@ -515,6 +525,7 @@ enum { · 93 unmodified lines
515 kvm_ioeventfd_flag_nr_pio,525 kvm_ioeventfd_flag_nr_pio,
516 kvm_ioeventfd_flag_nr_deassign,526 kvm_ioeventfd_flag_nr_deassign,
517 kvm_ioeventfd_flag_nr_virtio_ccw_notify,527 kvm_ioeventfd_flag_nr_virtio_ccw_notify,
528 kvm_ioeventfd_flag_nr_fast_mmio,
518 kvm_ioeventfd_flag_nr_max,529 kvm_ioeventfd_flag_nr_max,
519};530};
520 531
@@ -529,7 +540,7 @@ enum { · 8 unmodified lines
529struct kvm_ioeventfd {540struct kvm_ioeventfd {
530 __u64 datamatch;541 __u64 datamatch;
531 __u64 addr; /* legal pio/mmio address */542 __u64 addr; /* legal pio/mmio address */
532 __u32 len; /* 1, 2, 4, or 8 bytes */543 __u32 len; /* 1, 2, 4, or 8 bytes; or 0 to ignore length */
533 __s32 fd;544 __s32 fd;
534 __u32 flags;545 __u32 flags;
535 __u8 pad[36];546 __u8 pad[36];
@@ -743,6 +754,10 @@ struct kvm_ppc_smmu_info { · 207 unmodified lines
743#define KVM_CAP_IOAPIC_POLARITY_IGNORED 97754#define KVM_CAP_IOAPIC_POLARITY_IGNORED 97
744#define KVM_CAP_ENABLE_CAP_VM 98755#define KVM_CAP_ENABLE_CAP_VM 98
745#define KVM_CAP_S390_IRQCHIP 99756#define KVM_CAP_S390_IRQCHIP 99
757#define KVM_CAP_IOEVENTFD_NO_LENGTH 100
758#define KVM_CAP_VM_ATTRIBUTES 101
759#define KVM_CAP_ARM_PSCI_0_2 102
760#define KVM_CAP_PPC_FIXUP_HCALL 103
746 761
747#ifdef KVM_CAP_IRQ_ROUTING762#ifdef KVM_CAP_IRQ_ROUTING
748 763
include/uapi/linux/kvm_para.h+3−0
@@ -20,6 +20,9 @@ · 19 unmodified lines
20#define KVM_HC_FEATURES 320#define KVM_HC_FEATURES 3
21#define KVM_HC_PPC_MAP_MAGIC_PAGE 421#define KVM_HC_PPC_MAP_MAGIC_PAGE 4
22#define KVM_HC_KICK_CPU 522#define KVM_HC_KICK_CPU 5
23#define KVM_HC_MIPS_GET_CLOCK_FREQ 6
24#define KVM_HC_MIPS_EXIT_VM 7
25#define KVM_HC_MIPS_CONSOLE_OUTPUT 8
23 26
24/*27/*
25 * hypercalls use architecture specific28 * hypercalls use architecture specific
include/uapi/linux/l2tp.h+2−0
@@ -124,6 +124,8 @@ enum { · 123 unmodified lines
124 L2TP_ATTR_STATS, /* nested */124 L2TP_ATTR_STATS, /* nested */
125 L2TP_ATTR_IP6_SADDR, /* struct in6_addr */125 L2TP_ATTR_IP6_SADDR, /* struct in6_addr */
126 L2TP_ATTR_IP6_DADDR, /* struct in6_addr */126 L2TP_ATTR_IP6_DADDR, /* struct in6_addr */
127 L2TP_ATTR_UDP_ZERO_CSUM6_TX, /* u8 */
128 L2TP_ATTR_UDP_ZERO_CSUM6_RX, /* u8 */
127 __L2TP_ATTR_MAX,129 __L2TP_ATTR_MAX,
128};130};
129 131
include/uapi/linux/neighbour.h+1−0
@@ -24,6 +24,7 @@ enum { · 23 unmodified lines
24 NDA_PORT,24 NDA_PORT,
25 NDA_VNI,25 NDA_VNI,
26 NDA_IFINDEX,26 NDA_IFINDEX,
27 NDA_MASTER,
27 __NDA_MAX28 __NDA_MAX
28};29};
29 30
include/uapi/linux/netfilter/nf_tables.h+37−0
@@ -211,6 +211,29 @@ enum nft_set_flags { · 210 unmodified lines
211 NFT_SET_MAP = 0x8,211 NFT_SET_MAP = 0x8,
212};212};
213 213
214/**
215 * enum nft_set_policies - set selection policy
216 *
217 * @NFT_SET_POL_PERFORMANCE: prefer high performance over low memory use
218 * @NFT_SET_POL_MEMORY: prefer low memory use over high performance
219 */
220enum nft_set_policies {
221 NFT_SET_POL_PERFORMANCE,
222 NFT_SET_POL_MEMORY,
223};
224
225/**
226 * enum nft_set_desc_attributes - set element description
227 *
228 * @NFTA_SET_DESC_SIZE: number of elements in set (NLA_U32)
229 */
230enum nft_set_desc_attributes {
231 NFTA_SET_DESC_UNSPEC,
232 NFTA_SET_DESC_SIZE,
233 __NFTA_SET_DESC_MAX
234};
235#define NFTA_SET_DESC_MAX (__NFTA_SET_DESC_MAX - 1)
236
214/**237/**
215 * enum nft_set_attributes - nf_tables set netlink attributes238 * enum nft_set_attributes - nf_tables set netlink attributes
216 *239 *
@@ -221,6 +244,9 @@ enum nft_set_flags { · 4 unmodified lines
221 * @NFTA_SET_KEY_LEN: key data length (NLA_U32)244 * @NFTA_SET_KEY_LEN: key data length (NLA_U32)
222 * @NFTA_SET_DATA_TYPE: mapping data type (NLA_U32)245 * @NFTA_SET_DATA_TYPE: mapping data type (NLA_U32)
223 * @NFTA_SET_DATA_LEN: mapping data length (NLA_U32)246 * @NFTA_SET_DATA_LEN: mapping data length (NLA_U32)
247 * @NFTA_SET_POLICY: selection policy (NLA_U32)
248 * @NFTA_SET_DESC: set description (NLA_NESTED)
249 * @NFTA_SET_ID: uniquely identifies a set in a transaction (NLA_U32)
224 */250 */
225enum nft_set_attributes {251enum nft_set_attributes {
226 NFTA_SET_UNSPEC,252 NFTA_SET_UNSPEC,
@@ -231,6 +257,9 @@ enum nft_set_attributes { · 4 unmodified lines
231 NFTA_SET_KEY_LEN,257 NFTA_SET_KEY_LEN,
232 NFTA_SET_DATA_TYPE,258 NFTA_SET_DATA_TYPE,
233 NFTA_SET_DATA_LEN,259 NFTA_SET_DATA_LEN,
260 NFTA_SET_POLICY,
261 NFTA_SET_DESC,
262 NFTA_SET_ID,
234 __NFTA_SET_MAX263 __NFTA_SET_MAX
235};264};
236#define NFTA_SET_MAX (__NFTA_SET_MAX - 1)265#define NFTA_SET_MAX (__NFTA_SET_MAX - 1)
@@ -266,12 +295,14 @@ enum nft_set_elem_attributes { · 29 unmodified lines
266 * @NFTA_SET_ELEM_LIST_TABLE: table of the set to be changed (NLA_STRING)295 * @NFTA_SET_ELEM_LIST_TABLE: table of the set to be changed (NLA_STRING)
267 * @NFTA_SET_ELEM_LIST_SET: name of the set to be changed (NLA_STRING)296 * @NFTA_SET_ELEM_LIST_SET: name of the set to be changed (NLA_STRING)
268 * @NFTA_SET_ELEM_LIST_ELEMENTS: list of set elements (NLA_NESTED: nft_set_elem_attributes)297 * @NFTA_SET_ELEM_LIST_ELEMENTS: list of set elements (NLA_NESTED: nft_set_elem_attributes)
298 * @NFTA_SET_ELEM_LIST_SET_ID: uniquely identifies a set in a transaction (NLA_U32)
269 */299 */
270enum nft_set_elem_list_attributes {300enum nft_set_elem_list_attributes {
271 NFTA_SET_ELEM_LIST_UNSPEC,301 NFTA_SET_ELEM_LIST_UNSPEC,
272 NFTA_SET_ELEM_LIST_TABLE,302 NFTA_SET_ELEM_LIST_TABLE,
273 NFTA_SET_ELEM_LIST_SET,303 NFTA_SET_ELEM_LIST_SET,
274 NFTA_SET_ELEM_LIST_ELEMENTS,304 NFTA_SET_ELEM_LIST_ELEMENTS,
305 NFTA_SET_ELEM_LIST_SET_ID,
275 __NFTA_SET_ELEM_LIST_MAX306 __NFTA_SET_ELEM_LIST_MAX
276};307};
277#define NFTA_SET_ELEM_LIST_MAX (__NFTA_SET_ELEM_LIST_MAX - 1)308#define NFTA_SET_ELEM_LIST_MAX (__NFTA_SET_ELEM_LIST_MAX - 1)
@@ -457,12 +488,14 @@ enum nft_cmp_attributes { · 179 unmodified lines
457 * @NFTA_LOOKUP_SET: name of the set where to look for (NLA_STRING)488 * @NFTA_LOOKUP_SET: name of the set where to look for (NLA_STRING)
458 * @NFTA_LOOKUP_SREG: source register of the data to look for (NLA_U32: nft_registers)489 * @NFTA_LOOKUP_SREG: source register of the data to look for (NLA_U32: nft_registers)
459 * @NFTA_LOOKUP_DREG: destination register (NLA_U32: nft_registers)490 * @NFTA_LOOKUP_DREG: destination register (NLA_U32: nft_registers)
491 * @NFTA_LOOKUP_SET_ID: uniquely identifies a set in a transaction (NLA_U32)
460 */492 */
461enum nft_lookup_attributes {493enum nft_lookup_attributes {
462 NFTA_LOOKUP_UNSPEC,494 NFTA_LOOKUP_UNSPEC,
463 NFTA_LOOKUP_SET,495 NFTA_LOOKUP_SET,
464 NFTA_LOOKUP_SREG,496 NFTA_LOOKUP_SREG,
465 NFTA_LOOKUP_DREG,497 NFTA_LOOKUP_DREG,
498 NFTA_LOOKUP_SET_ID,
466 __NFTA_LOOKUP_MAX499 __NFTA_LOOKUP_MAX
467};500};
468#define NFTA_LOOKUP_MAX (__NFTA_LOOKUP_MAX - 1)501#define NFTA_LOOKUP_MAX (__NFTA_LOOKUP_MAX - 1)
@@ -536,6 +569,8 @@ enum nft_exthdr_attributes { · 67 unmodified lines
536 * @NFT_META_SECMARK: packet secmark (skb->secmark)569 * @NFT_META_SECMARK: packet secmark (skb->secmark)
537 * @NFT_META_NFPROTO: netfilter protocol570 * @NFT_META_NFPROTO: netfilter protocol
538 * @NFT_META_L4PROTO: layer 4 protocol number571 * @NFT_META_L4PROTO: layer 4 protocol number
572 * @NFT_META_BRI_IIFNAME: packet input bridge interface name
573 * @NFT_META_BRI_OIFNAME: packet output bridge interface name
539 */574 */
540enum nft_meta_keys {575enum nft_meta_keys {
541 NFT_META_LEN,576 NFT_META_LEN,
@@ -555,6 +590,8 @@ enum nft_meta_keys { · 13 unmodified lines
555 NFT_META_SECMARK,590 NFT_META_SECMARK,
556 NFT_META_NFPROTO,591 NFT_META_NFPROTO,
557 NFT_META_L4PROTO,592 NFT_META_L4PROTO,
593 NFT_META_BRI_IIFNAME,
594 NFT_META_BRI_OIFNAME,
558};595};
559 596
560/**597/**
include/uapi/linux/netfilter/nfnetlink.h+2−0
@@ -20,6 +20,8 @@ enum nfnetlink_groups { · 19 unmodified lines
20#define NFNLGRP_CONNTRACK_EXP_DESTROY NFNLGRP_CONNTRACK_EXP_DESTROY20#define NFNLGRP_CONNTRACK_EXP_DESTROY NFNLGRP_CONNTRACK_EXP_DESTROY
21 NFNLGRP_NFTABLES,21 NFNLGRP_NFTABLES,
22#define NFNLGRP_NFTABLES NFNLGRP_NFTABLES22#define NFNLGRP_NFTABLES NFNLGRP_NFTABLES
23 NFNLGRP_ACCT_QUOTA,
24#define NFNLGRP_ACCT_QUOTA NFNLGRP_ACCT_QUOTA
23 __NFNLGRP_MAX,25 __NFNLGRP_MAX,
24};26};
25#define NFNLGRP_MAX (__NFNLGRP_MAX - 1)27#define NFNLGRP_MAX (__NFNLGRP_MAX - 1)
include/uapi/linux/netfilter/nfnetlink_acct.h+9−0
@@ -10,15 +10,24 @@ enum nfnl_acct_msg_types { · 9 unmodified lines
10 NFNL_MSG_ACCT_GET,10 NFNL_MSG_ACCT_GET,
11 NFNL_MSG_ACCT_GET_CTRZERO,11 NFNL_MSG_ACCT_GET_CTRZERO,
12 NFNL_MSG_ACCT_DEL,12 NFNL_MSG_ACCT_DEL,
13 NFNL_MSG_ACCT_OVERQUOTA,
13 NFNL_MSG_ACCT_MAX14 NFNL_MSG_ACCT_MAX
14};15};
15 16
17enum nfnl_acct_flags {
18 NFACCT_F_QUOTA_PKTS = (1 << 0),
19 NFACCT_F_QUOTA_BYTES = (1 << 1),
20 NFACCT_F_OVERQUOTA = (1 << 2), /* can't be set from userspace */
21};
22
16enum nfnl_acct_type {23enum nfnl_acct_type {
17 NFACCT_UNSPEC,24 NFACCT_UNSPEC,
18 NFACCT_NAME,25 NFACCT_NAME,
19 NFACCT_PKTS,26 NFACCT_PKTS,
20 NFACCT_BYTES,27 NFACCT_BYTES,
21 NFACCT_USE,28 NFACCT_USE,
29 NFACCT_FLAGS,
30 NFACCT_QUOTA,
22 __NFACCT_MAX31 __NFACCT_MAX
23};32};
24#define NFACCT_MAX (__NFACCT_MAX - 1)33#define NFACCT_MAX (__NFACCT_MAX - 1)
include/uapi/linux/nfc.h+12−4
@@ -273,11 +273,19 @@ struct sockaddr_nfc_llcp { · 272 unmodified lines
273 * First byte is the adapter index273 * First byte is the adapter index
274 * Second byte contains flags274 * Second byte contains flags
275 * - 0x01 - Direction (0=RX, 1=TX)275 * - 0x01 - Direction (0=RX, 1=TX)
276 * - 0x02-0x80 - Reserved276 * - 0x02-0x04 - Payload type (000=LLCP, 001=NCI, 010=HCI, 011=Digital,
277 * 100=Proprietary)
278 * - 0x05-0x80 - Reserved
277 **/279 **/
278#define NFC_LLCP_RAW_HEADER_SIZE 2280#define NFC_RAW_HEADER_SIZE 2
279#define NFC_LLCP_DIRECTION_RX 0x00281#define NFC_DIRECTION_RX 0x00
280#define NFC_LLCP_DIRECTION_TX 0x01282#define NFC_DIRECTION_TX 0x01
283
284#define RAW_PAYLOAD_LLCP 0
285#define RAW_PAYLOAD_NCI 1
286#define RAW_PAYLOAD_HCI 2
287#define RAW_PAYLOAD_DIGITAL 3
288#define RAW_PAYLOAD_PROPRIETARY 4
281 289
282/* socket option names */290/* socket option names */
283#define NFC_LLCP_RW 0291#define NFC_LLCP_RW 0
include/uapi/linux/nfsd/nfsfh.h+7−25
@@ -1,13 +1,7 @@
1/*1/*
2 * include/linux/nfsd/nfsfh.h
3 *
4 * This file describes the layout of the file handles as passed2 * This file describes the layout of the file handles as passed
5 * over the wire.3 * over the wire.
6 *4 *
7 * Earlier versions of knfsd used to sign file handles using keyed MD5
8 * or SHA. I've removed this code, because it doesn't give you more
9 * security than blocking external access to port 2049 on your firewall.
10 *
11 * Copyright (C) 1995, 1996, 1997 Olaf Kirch <okir@monad.swb.de>5 * Copyright (C) 1995, 1996, 1997 Olaf Kirch <okir@monad.swb.de>
12 */6 */
13 7
@@ -37,7 +31,7 @@ struct nfs_fhbase_old { · 23 unmodified lines
37};31};
38 32
39/*33/*
40 * This is the new flexible, extensible style NFSv2/v3 file handle.34 * This is the new flexible, extensible style NFSv2/v3/v4 file handle.
41 * by Neil Brown <neilb@cse.unsw.edu.au> - March 200035 * by Neil Brown <neilb@cse.unsw.edu.au> - March 2000
42 *36 *
43 * The file handle starts with a sequence of four-byte words.37 * The file handle starts with a sequence of four-byte words.
@@ -47,14 +41,7 @@ struct nfs_fhbase_old { · 3 unmodified lines
47 *41 *
48 * All four-byte values are in host-byte-order.42 * All four-byte values are in host-byte-order.
49 *43 *
50 * The auth_type field specifies how the filehandle can be authenticated44 * The auth_type field is deprecated and must be set to 0.
51 * This might allow a file to be confirmed to be in a writable part of a
52 * filetree without checking the path from it up to the root.
53 * Current values:
54 * 0 - No authentication. fb_auth is 0 bytes long
55 * Possible future values:
56 * 1 - 4 bytes taken from MD5 hash of the remainer of the file handle
57 * prefixed by a secret and with the important export flags.
58 *45 *
59 * The fsid_type identifies how the filesystem (or export point) is46 * The fsid_type identifies how the filesystem (or export point) is
60 * encoded.47 * encoded.
@@ -71,14 +58,9 @@ struct nfs_fhbase_old { · 10 unmodified lines
71 * 7 - 8 byte inode number and 16 byte uuid58 * 7 - 8 byte inode number and 16 byte uuid
72 *59 *
73 * The fileid_type identified how the file within the filesystem is encoded.60 * The fileid_type identified how the file within the filesystem is encoded.
74 * This is (will be) passed to, and set by, the underlying filesystem if it supports61 * The values for this field are filesystem specific, exccept that
75 * filehandle operations. The filesystem must not use the value '0' or '0xff' and may62 * filesystems must not use the values '0' or '0xff'. 'See enum fid_type'
76 * only use the values 1 and 2 as defined below:63 * in include/linux/exportfs.h for currently registered values.
77 * Current values:
78 * 0 - The root, or export point, of the filesystem. fb_fileid is 0 bytes.
79 * 1 - 32bit inode number, 32 bit generation number.
80 * 2 - 32bit inode number, 32 bit generation number, 32 bit parent directory inode number.
81 *
82 */64 */
83struct nfs_fhbase_new {65struct nfs_fhbase_new {
84 __u8 fb_version; /* == 1, even => nfs_fhbase_old */66 __u8 fb_version; /* == 1, even => nfs_fhbase_old */
@@ -114,9 +96,9 @@ struct knfsd_fh { · 29 unmodified lines
114#define fh_fsid_type fh_base.fh_new.fb_fsid_type96#define fh_fsid_type fh_base.fh_new.fb_fsid_type
115#define fh_auth_type fh_base.fh_new.fb_auth_type97#define fh_auth_type fh_base.fh_new.fb_auth_type
116#define fh_fileid_type fh_base.fh_new.fb_fileid_type98#define fh_fileid_type fh_base.fh_new.fb_fileid_type
117#define fh_auth fh_base.fh_new.fb_auth
118#define fh_fsid fh_base.fh_new.fb_auth99#define fh_fsid fh_base.fh_new.fb_auth
119 100
120 101/* Do not use, provided for userspace compatiblity. */
102#define fh_auth fh_base.fh_new.fb_auth
121 103
122#endif /* _UAPI_LINUX_NFSD_FH_H */104#endif /* _UAPI_LINUX_NFSD_FH_H */
include/uapi/linux/nl80211.h+66−5
@@ -503,6 +503,9 @@ · 502 unmodified lines
503 * TX status event pertaining to the TX request.503 * TX status event pertaining to the TX request.
504 * %NL80211_ATTR_TX_NO_CCK_RATE is used to decide whether to send the504 * %NL80211_ATTR_TX_NO_CCK_RATE is used to decide whether to send the
505 * management frames at CCK rate or not in 2GHz band.505 * management frames at CCK rate or not in 2GHz band.
506 * %NL80211_ATTR_CSA_C_OFFSETS_TX is an array of offsets to CSA
507 * counters which will be updated to the current value. This attribute
508 * is used during CSA period.
506 * @NL80211_CMD_FRAME_WAIT_CANCEL: When an off-channel TX was requested, this509 * @NL80211_CMD_FRAME_WAIT_CANCEL: When an off-channel TX was requested, this
507 * command may be used with the corresponding cookie to cancel the wait510 * command may be used with the corresponding cookie to cancel the wait
508 * time if it is known that it is no longer necessary.511 * time if it is known that it is no longer necessary.
@@ -1525,10 +1528,10 @@ enum nl80211_commands { · 1016 unmodified lines
1525 * operation).1528 * operation).
1526 * @NL80211_ATTR_CSA_IES: Nested set of attributes containing the IE information1529 * @NL80211_ATTR_CSA_IES: Nested set of attributes containing the IE information
1527 * for the time while performing a channel switch.1530 * for the time while performing a channel switch.
1528 * @NL80211_ATTR_CSA_C_OFF_BEACON: Offset of the channel switch counter1531 * @NL80211_ATTR_CSA_C_OFF_BEACON: An array of offsets (u16) to the channel
1529 * field in the beacons tail (%NL80211_ATTR_BEACON_TAIL).1532 * switch counters in the beacons tail (%NL80211_ATTR_BEACON_TAIL).
1530 * @NL80211_ATTR_CSA_C_OFF_PRESP: Offset of the channel switch counter1533 * @NL80211_ATTR_CSA_C_OFF_PRESP: An array of offsets (u16) to the channel
1531 * field in the probe response (%NL80211_ATTR_PROBE_RESP).1534 * switch counters in the probe response (%NL80211_ATTR_PROBE_RESP).
1532 *1535 *
1533 * @NL80211_ATTR_RXMGMT_FLAGS: flags for nl80211_send_mgmt(), u32.1536 * @NL80211_ATTR_RXMGMT_FLAGS: flags for nl80211_send_mgmt(), u32.
1534 * As specified in the &enum nl80211_rxmgmt_flags.1537 * As specified in the &enum nl80211_rxmgmt_flags.
@@ -1576,9 +1579,18 @@ enum nl80211_commands { · 41 unmodified lines
1576 * advertise values that cannot always be met. In such cases, an attempt1579 * advertise values that cannot always be met. In such cases, an attempt
1577 * to add a new station entry with @NL80211_CMD_NEW_STATION may fail.1580 * to add a new station entry with @NL80211_CMD_NEW_STATION may fail.
1578 *1581 *
1582 * @NL80211_ATTR_CSA_C_OFFSETS_TX: An array of csa counter offsets (u16) which
1583 * should be updated when the frame is transmitted.
1584 * @NL80211_ATTR_MAX_CSA_COUNTERS: U8 attribute used to advertise the maximum
1585 * supported number of csa counters.
1586 *
1579 * @NL80211_ATTR_TDLS_PEER_CAPABILITY: flags for TDLS peer capabilities, u32.1587 * @NL80211_ATTR_TDLS_PEER_CAPABILITY: flags for TDLS peer capabilities, u32.
1580 * As specified in the &enum nl80211_tdls_peer_capability.1588 * As specified in the &enum nl80211_tdls_peer_capability.
1581 *1589 *
1590 * @NL80211_ATTR_IFACE_SOCKET_OWNER: flag attribute, if set during interface
1591 * creation then the new interface will be owned by the netlink socket
1592 * that created it and will be destroyed when the socket is closed
1593 *
1582 * @NL80211_ATTR_MAX: highest attribute number currently defined1594 * @NL80211_ATTR_MAX: highest attribute number currently defined
1583 * @__NL80211_ATTR_AFTER_LAST: internal use1595 * @__NL80211_ATTR_AFTER_LAST: internal use
1584 */1596 */
@@ -1914,6 +1926,11 @@ enum nl80211_attrs { · 329 unmodified lines
1914 1926
1915 NL80211_ATTR_TDLS_PEER_CAPABILITY,1927 NL80211_ATTR_TDLS_PEER_CAPABILITY,
1916 1928
1929 NL80211_ATTR_IFACE_SOCKET_OWNER,
1930
1931 NL80211_ATTR_CSA_C_OFFSETS_TX,
1932 NL80211_ATTR_MAX_CSA_COUNTERS,
1933
1917 /* add attributes here, update the policy in nl80211.c */1934 /* add attributes here, update the policy in nl80211.c */
1918 1935
1919 __NL80211_ATTR_AFTER_LAST,1936 __NL80211_ATTR_AFTER_LAST,
@@ -2182,6 +2199,8 @@ enum nl80211_sta_bss_param { · 262 unmodified lines
2182 * Contains a nested array of signal strength attributes (u8, dBm)2199 * Contains a nested array of signal strength attributes (u8, dBm)
2183 * @NL80211_STA_INFO_CHAIN_SIGNAL_AVG: per-chain signal strength average2200 * @NL80211_STA_INFO_CHAIN_SIGNAL_AVG: per-chain signal strength average
2184 * Same format as NL80211_STA_INFO_CHAIN_SIGNAL.2201 * Same format as NL80211_STA_INFO_CHAIN_SIGNAL.
2202 * @NL80211_STA_EXPECTED_THROUGHPUT: expected throughput considering also the
2203 * 802.11 header (u32, kbps)
2185 * @__NL80211_STA_INFO_AFTER_LAST: internal2204 * @__NL80211_STA_INFO_AFTER_LAST: internal
2186 * @NL80211_STA_INFO_MAX: highest possible station info attribute2205 * @NL80211_STA_INFO_MAX: highest possible station info attribute
2187 */2206 */
@@ -2213,6 +2232,7 @@ enum nl80211_sta_info { · 25 unmodified lines
2213 NL80211_STA_INFO_TX_BYTES64,2232 NL80211_STA_INFO_TX_BYTES64,
2214 NL80211_STA_INFO_CHAIN_SIGNAL,2233 NL80211_STA_INFO_CHAIN_SIGNAL,
2215 NL80211_STA_INFO_CHAIN_SIGNAL_AVG,2234 NL80211_STA_INFO_CHAIN_SIGNAL_AVG,
2235 NL80211_STA_INFO_EXPECTED_THROUGHPUT,
2216 2236
2217 /* keep last */2237 /* keep last */
2218 __NL80211_STA_INFO_AFTER_LAST,2238 __NL80211_STA_INFO_AFTER_LAST,
@@ -2336,9 +2356,34 @@ enum nl80211_band_attr { · 117 unmodified lines
2336 * using this channel as the primary or any of the secondary channels2356 * using this channel as the primary or any of the secondary channels
2337 * isn't possible2357 * isn't possible
2338 * @NL80211_FREQUENCY_ATTR_DFS_CAC_TIME: DFS CAC time in milliseconds.2358 * @NL80211_FREQUENCY_ATTR_DFS_CAC_TIME: DFS CAC time in milliseconds.
2359 * @NL80211_FREQUENCY_ATTR_INDOOR_ONLY: Only indoor use is permitted on this
2360 * channel. A channel that has the INDOOR_ONLY attribute can only be
2361 * used when there is a clear assessment that the device is operating in
2362 * an indoor surroundings, i.e., it is connected to AC power (and not
2363 * through portable DC inverters) or is under the control of a master
2364 * that is acting as an AP and is connected to AC power.
2365 * @NL80211_FREQUENCY_ATTR_GO_CONCURRENT: GO operation is allowed on this
2366 * channel if it's connected concurrently to a BSS on the same channel on
2367 * the 2 GHz band or to a channel in the same UNII band (on the 5 GHz
2368 * band), and IEEE80211_CHAN_RADAR is not set. Instantiating a GO on a
2369 * channel that has the GO_CONCURRENT attribute set can be done when there
2370 * is a clear assessment that the device is operating under the guidance of
2371 * an authorized master, i.e., setting up a GO while the device is also
2372 * connected to an AP with DFS and radar detection on the UNII band (it is
2373 * up to user-space, i.e., wpa_supplicant to perform the required
2374 * verifications)
2375 * @NL80211_FREQUENCY_ATTR_NO_20MHZ: 20 MHz operation is not allowed
2376 * on this channel in current regulatory domain.
2377 * @NL80211_FREQUENCY_ATTR_NO_10MHZ: 10 MHz operation is not allowed
2378 * on this channel in current regulatory domain.
2339 * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number2379 * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number
2340 * currently defined2380 * currently defined
2341 * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use2381 * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use
2382 *
2383 * See https://apps.fcc.gov/eas/comments/GetPublishedDocument.html?id=327&tn=528122
2384 * for more information on the FCC description of the relaxations allowed
2385 * by NL80211_FREQUENCY_ATTR_INDOOR_ONLY and
2386 * NL80211_FREQUENCY_ATTR_GO_CONCURRENT.
2342 */2387 */
2343enum nl80211_frequency_attr {2388enum nl80211_frequency_attr {
2344 __NL80211_FREQUENCY_ATTR_INVALID,2389 __NL80211_FREQUENCY_ATTR_INVALID,
@@ -2355,6 +2400,10 @@ enum nl80211_frequency_attr { · 10 unmodified lines
2355 NL80211_FREQUENCY_ATTR_NO_80MHZ,2400 NL80211_FREQUENCY_ATTR_NO_80MHZ,
2356 NL80211_FREQUENCY_ATTR_NO_160MHZ,2401 NL80211_FREQUENCY_ATTR_NO_160MHZ,
2357 NL80211_FREQUENCY_ATTR_DFS_CAC_TIME,2402 NL80211_FREQUENCY_ATTR_DFS_CAC_TIME,
2403 NL80211_FREQUENCY_ATTR_INDOOR_ONLY,
2404 NL80211_FREQUENCY_ATTR_GO_CONCURRENT,
2405 NL80211_FREQUENCY_ATTR_NO_20MHZ,
2406 NL80211_FREQUENCY_ATTR_NO_10MHZ,
2358 2407
2359 /* keep last */2408 /* keep last */
2360 __NL80211_FREQUENCY_ATTR_AFTER_LAST,2409 __NL80211_FREQUENCY_ATTR_AFTER_LAST,
@@ -2573,10 +2622,13 @@ enum nl80211_dfs_regions { · 212 unmodified lines
2573 * present has been registered with the wireless core that2622 * present has been registered with the wireless core that
2574 * has listed NL80211_FEATURE_CELL_BASE_REG_HINTS as a2623 * has listed NL80211_FEATURE_CELL_BASE_REG_HINTS as a
2575 * supported feature.2624 * supported feature.
2625 * @NL80211_USER_REG_HINT_INDOOR: a user sent an hint indicating that the
2626 * platform is operating in an indoor environment.
2576 */2627 */
2577enum nl80211_user_reg_hint_type {2628enum nl80211_user_reg_hint_type {
2578 NL80211_USER_REG_HINT_USER = 0,2629 NL80211_USER_REG_HINT_USER = 0,
2579 NL80211_USER_REG_HINT_CELL_BASE = 1,2630 NL80211_USER_REG_HINT_CELL_BASE = 1,
2631 NL80211_USER_REG_HINT_INDOOR = 2,
2580};2632};
2581 2633
2582/**2634/**
@@ -3650,6 +3702,8 @@ enum nl80211_iface_limit_attrs { · 1067 unmodified lines
3650 * different channels may be used within this group.3702 * different channels may be used within this group.
3651 * @NL80211_IFACE_COMB_RADAR_DETECT_WIDTHS: u32 attribute containing the bitmap3703 * @NL80211_IFACE_COMB_RADAR_DETECT_WIDTHS: u32 attribute containing the bitmap
3652 * of supported channel widths for radar detection.3704 * of supported channel widths for radar detection.
3705 * @NL80211_IFACE_COMB_RADAR_DETECT_REGIONS: u32 attribute containing the bitmap
3706 * of supported regulatory regions for radar detection.
3653 * @NUM_NL80211_IFACE_COMB: number of attributes3707 * @NUM_NL80211_IFACE_COMB: number of attributes
3654 * @MAX_NL80211_IFACE_COMB: highest attribute number3708 * @MAX_NL80211_IFACE_COMB: highest attribute number
3655 *3709 *
@@ -3683,6 +3737,7 @@ enum nl80211_if_combination_attrs { · 27 unmodified lines
3683 NL80211_IFACE_COMB_STA_AP_BI_MATCH,3737 NL80211_IFACE_COMB_STA_AP_BI_MATCH,
3684 NL80211_IFACE_COMB_NUM_CHANNELS,3738 NL80211_IFACE_COMB_NUM_CHANNELS,
3685 NL80211_IFACE_COMB_RADAR_DETECT_WIDTHS,3739 NL80211_IFACE_COMB_RADAR_DETECT_WIDTHS,
3740 NL80211_IFACE_COMB_RADAR_DETECT_REGIONS,
3686 3741
3687 /* keep last */3742 /* keep last */
3688 NUM_NL80211_IFACE_COMB,3743 NUM_NL80211_IFACE_COMB,
@@ -3856,6 +3911,8 @@ enum nl80211_ap_sme_features { · 167 unmodified lines
3856 * @NL80211_FEATURE_CELL_BASE_REG_HINTS: This driver has been tested3911 * @NL80211_FEATURE_CELL_BASE_REG_HINTS: This driver has been tested
3857 * to work properly to suppport receiving regulatory hints from3912 * to work properly to suppport receiving regulatory hints from
3858 * cellular base stations.3913 * cellular base stations.
3914 * @NL80211_FEATURE_P2P_DEVICE_NEEDS_CHANNEL: (no longer available, only
3915 * here to reserve the value for API/ABI compatibility)
3859 * @NL80211_FEATURE_SAE: This driver supports simultaneous authentication of3916 * @NL80211_FEATURE_SAE: This driver supports simultaneous authentication of
3860 * equals (SAE) with user space SME (NL80211_CMD_AUTHENTICATE) in station3917 * equals (SAE) with user space SME (NL80211_CMD_AUTHENTICATE) in station
3861 * mode3918 * mode
@@ -3891,13 +3948,16 @@ enum nl80211_ap_sme_features { · 29 unmodified lines
3891 * interface. An active monitor interface behaves like a normal monitor3948 * interface. An active monitor interface behaves like a normal monitor
3892 * interface, but gets added to the driver. It ensures that incoming3949 * interface, but gets added to the driver. It ensures that incoming
3893 * unicast packets directed at the configured interface address get ACKed.3950 * unicast packets directed at the configured interface address get ACKed.
3951 * @NL80211_FEATURE_AP_MODE_CHAN_WIDTH_CHANGE: This driver supports dynamic
3952 * channel bandwidth change (e.g., HT 20 <-> 40 MHz channel) during the
3953 * lifetime of a BSS.
3894 */3954 */
3895enum nl80211_feature_flags {3955enum nl80211_feature_flags {
3896 NL80211_FEATURE_SK_TX_STATUS = 1 << 0,3956 NL80211_FEATURE_SK_TX_STATUS = 1 << 0,
3897 NL80211_FEATURE_HT_IBSS = 1 << 1,3957 NL80211_FEATURE_HT_IBSS = 1 << 1,
3898 NL80211_FEATURE_INACTIVITY_TIMER = 1 << 2,3958 NL80211_FEATURE_INACTIVITY_TIMER = 1 << 2,
3899 NL80211_FEATURE_CELL_BASE_REG_HINTS = 1 << 3,3959 NL80211_FEATURE_CELL_BASE_REG_HINTS = 1 << 3,
3900 /* bit 4 is reserved - don't use */3960 NL80211_FEATURE_P2P_DEVICE_NEEDS_CHANNEL = 1 << 4,
3901 NL80211_FEATURE_SAE = 1 << 5,3961 NL80211_FEATURE_SAE = 1 << 5,
3902 NL80211_FEATURE_LOW_PRIORITY_SCAN = 1 << 6,3962 NL80211_FEATURE_LOW_PRIORITY_SCAN = 1 << 6,
3903 NL80211_FEATURE_SCAN_FLUSH = 1 << 7,3963 NL80211_FEATURE_SCAN_FLUSH = 1 << 7,
@@ -3911,6 +3971,7 @@ enum nl80211_feature_flags { · 7 unmodified lines
3911 NL80211_FEATURE_FULL_AP_CLIENT_STATE = 1 << 15,3971 NL80211_FEATURE_FULL_AP_CLIENT_STATE = 1 << 15,
3912 NL80211_FEATURE_USERSPACE_MPM = 1 << 16,3972 NL80211_FEATURE_USERSPACE_MPM = 1 << 16,
3913 NL80211_FEATURE_ACTIVE_MONITOR = 1 << 17,3973 NL80211_FEATURE_ACTIVE_MONITOR = 1 << 17,
3974 NL80211_FEATURE_AP_MODE_CHAN_WIDTH_CHANGE = 1 << 18,
3914};3975};
3915 3976
3916/**3977/**
include/uapi/linux/nvme.h+39−11
@@ -1,6 +1,6 @@
1/*1/*
2 * Definitions for the NVM Express interface2 * Definitions for the NVM Express interface
3 * Copyright (c) 2011-2013, Intel Corporation.3 * Copyright (c) 2011-2014, Intel Corporation.
4 *4 *
5 * This program is free software; you can redistribute it and/or modify it5 * This program is free software; you can redistribute it and/or modify it
6 * under the terms and conditions of the GNU General Public License,6 * under the terms and conditions of the GNU General Public License,
@@ -10,10 +10,6 @@ · 3 unmodified lines
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12 * more details.12 * more details.
13 *
14 * You should have received a copy of the GNU General Public License along with
15 * this program; if not, write to the Free Software Foundation, Inc.,
16 * 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
17 */13 */
18 14
19#ifndef _UAPI_LINUX_NVME_H15#ifndef _UAPI_LINUX_NVME_H
@@ -31,7 +27,12 @@ struct nvme_id_power_state { · 11 unmodified lines
31 __u8 read_lat;27 __u8 read_lat;
32 __u8 write_tput;28 __u8 write_tput;
33 __u8 write_lat;29 __u8 write_lat;
34 __u8 rsvd16[16];30 __le16 idle_power;
31 __u8 idle_scale;
32 __u8 rsvd19;
33 __le16 active_power;
34 __u8 active_work_scale;
35 __u8 rsvd23[9];
35};36};
36 37
37enum {38enum {
@@ -49,7 +50,9 @@ struct nvme_id_ctrl { · 11 unmodified lines
49 __u8 ieee[3];50 __u8 ieee[3];
50 __u8 mic;51 __u8 mic;
51 __u8 mdts;52 __u8 mdts;
52 __u8 rsvd78[178];53 __u16 cntlid;
54 __u32 ver;
55 __u8 rsvd84[172];
53 __le16 oacs;56 __le16 oacs;
54 __u8 acl;57 __u8 acl;
55 __u8 aerl;58 __u8 aerl;
@@ -57,7 +60,11 @@ struct nvme_id_ctrl { · 1 unmodified line
57 __u8 lpa;60 __u8 lpa;
58 __u8 elpe;61 __u8 elpe;
59 __u8 npss;62 __u8 npss;
60 __u8 rsvd264[248];63 __u8 avscc;
64 __u8 apsta;
65 __le16 wctemp;
66 __le16 cctemp;
67 __u8 rsvd270[242];
61 __u8 sqes;68 __u8 sqes;
62 __u8 cqes;69 __u8 cqes;
63 __u8 rsvd514[2];70 __u8 rsvd514[2];
@@ -68,7 +75,12 @@ struct nvme_id_ctrl { · 4 unmodified lines
68 __u8 vwc;75 __u8 vwc;
69 __le16 awun;76 __le16 awun;
70 __le16 awupf;77 __le16 awupf;
71 __u8 rsvd530[1518];78 __u8 nvscc;
79 __u8 rsvd531;
80 __le16 acwu;
81 __u8 rsvd534[2];
82 __le32 sgls;
83 __u8 rsvd540[1508];
72 struct nvme_id_power_state psd[32];84 struct nvme_id_power_state psd[32];
73 __u8 vs[1024];85 __u8 vs[1024];
74};86};
@@ -77,6 +89,7 @@ enum { · 2 unmodified lines
77 NVME_CTRL_ONCS_COMPARE = 1 << 0,89 NVME_CTRL_ONCS_COMPARE = 1 << 0,
78 NVME_CTRL_ONCS_WRITE_UNCORRECTABLE = 1 << 1,90 NVME_CTRL_ONCS_WRITE_UNCORRECTABLE = 1 << 1,
79 NVME_CTRL_ONCS_DSM = 1 << 2,91 NVME_CTRL_ONCS_DSM = 1 << 2,
92 NVME_CTRL_VWC_PRESENT = 1 << 0,
80};93};
81 94
82struct nvme_lbaf {95struct nvme_lbaf {
@@ -95,7 +108,15 @@ struct nvme_id_ns { · 12 unmodified lines
95 __u8 mc;108 __u8 mc;
96 __u8 dpc;109 __u8 dpc;
97 __u8 dps;110 __u8 dps;
98 __u8 rsvd30[98];111 __u8 nmic;
112 __u8 rescap;
113 __u8 fpi;
114 __u8 rsvd33;
115 __le16 nawun;
116 __le16 nawupf;
117 __le16 nacwu;
118 __u8 rsvd40[80];
119 __u8 eui64[8];
99 struct nvme_lbaf lbaf[16];120 struct nvme_lbaf lbaf[16];
100 __u8 rsvd192[192];121 __u8 rsvd192[192];
101 __u8 vs[3712];122 __u8 vs[3712];
@@ -126,7 +147,10 @@ struct nvme_smart_log { · 24 unmodified lines
126 __u8 unsafe_shutdowns[16];147 __u8 unsafe_shutdowns[16];
127 __u8 media_errors[16];148 __u8 media_errors[16];
128 __u8 num_err_log_entries[16];149 __u8 num_err_log_entries[16];
129 __u8 rsvd192[320];150 __le32 warning_temp_time;
151 __le32 critical_comp_time;
152 __le16 temp_sensor[8];
153 __u8 rsvd216[296];
130};154};
131 155
132enum {156enum {
@@ -282,6 +306,10 @@ enum { · 149 unmodified lines
282 NVME_FEAT_WRITE_ATOMIC = 0x0a,306 NVME_FEAT_WRITE_ATOMIC = 0x0a,
283 NVME_FEAT_ASYNC_EVENT = 0x0b,307 NVME_FEAT_ASYNC_EVENT = 0x0b,
284 NVME_FEAT_SW_PROGRESS = 0x0c,308 NVME_FEAT_SW_PROGRESS = 0x0c,
309 NVME_LOG_ERROR = 0x01,
310 NVME_LOG_SMART = 0x02,
311 NVME_LOG_FW_SLOT = 0x03,
312 NVME_LOG_RESERVATION = 0x80,
285 NVME_FWACT_REPL = (0 << 3),313 NVME_FWACT_REPL = (0 << 3),
286 NVME_FWACT_REPL_ACTV = (1 << 3),314 NVME_FWACT_REPL_ACTV = (1 << 3),
287 NVME_FWACT_ACTV = (2 << 3),315 NVME_FWACT_ACTV = (2 << 3),
include/uapi/linux/openvswitch.h+3−1
@@ -395,7 +395,9 @@ struct ovs_key_nd { · 394 unmodified lines
395 * @OVS_FLOW_ATTR_ACTIONS: Nested %OVS_ACTION_ATTR_* attributes specifying395 * @OVS_FLOW_ATTR_ACTIONS: Nested %OVS_ACTION_ATTR_* attributes specifying
396 * the actions to take for packets that match the key. Always present in396 * the actions to take for packets that match the key. Always present in
397 * notifications. Required for %OVS_FLOW_CMD_NEW requests, optional for397 * notifications. Required for %OVS_FLOW_CMD_NEW requests, optional for
398 * %OVS_FLOW_CMD_SET requests.398 * %OVS_FLOW_CMD_SET requests. An %OVS_FLOW_CMD_SET without
399 * %OVS_FLOW_ATTR_ACTIONS will not modify the actions. To clear the actions,
400 * an %OVS_FLOW_ATTR_ACTIONS without any nested attributes must be given.
399 * @OVS_FLOW_ATTR_STATS: &struct ovs_flow_stats giving statistics for this401 * @OVS_FLOW_ATTR_STATS: &struct ovs_flow_stats giving statistics for this
400 * flow. Present in notifications if the stats would be nonzero. Ignored in402 * flow. Present in notifications if the stats would be nonzero. Ignored in
401 * requests.403 * requests.
include/uapi/linux/perf_event.h+14−7
@@ -163,8 +163,9 @@ enum perf_branch_sample_type { · 162 unmodified lines
163 PERF_SAMPLE_BRANCH_ABORT_TX = 1U << 7, /* transaction aborts */163 PERF_SAMPLE_BRANCH_ABORT_TX = 1U << 7, /* transaction aborts */
164 PERF_SAMPLE_BRANCH_IN_TX = 1U << 8, /* in transaction */164 PERF_SAMPLE_BRANCH_IN_TX = 1U << 8, /* in transaction */
165 PERF_SAMPLE_BRANCH_NO_TX = 1U << 9, /* not in transaction */165 PERF_SAMPLE_BRANCH_NO_TX = 1U << 9, /* not in transaction */
166 PERF_SAMPLE_BRANCH_COND = 1U << 10, /* conditional branches */
166 167
167 PERF_SAMPLE_BRANCH_MAX = 1U << 10, /* non-ABI */168 PERF_SAMPLE_BRANCH_MAX = 1U << 11, /* non-ABI */
168};169};
169 170
170#define PERF_SAMPLE_BRANCH_PLM_ALL \171#define PERF_SAMPLE_BRANCH_PLM_ALL \
@@ -301,8 +302,8 @@ struct perf_event_attr { · 130 unmodified lines
301 exclude_callchain_kernel : 1, /* exclude kernel callchains */302 exclude_callchain_kernel : 1, /* exclude kernel callchains */
302 exclude_callchain_user : 1, /* exclude user callchains */303 exclude_callchain_user : 1, /* exclude user callchains */
303 mmap2 : 1, /* include mmap with inode data */304 mmap2 : 1, /* include mmap with inode data */
304 305 comm_exec : 1, /* flag comm events that are due to an exec */
305 __reserved_1 : 40;306 __reserved_1 : 39;
306 307
307 union {308 union {
308 __u32 wakeup_events; /* wakeup every n events */309 __u32 wakeup_events; /* wakeup every n events */
@@ -501,7 +502,12 @@ struct perf_event_mmap_page { · 192 unmodified lines
501#define PERF_RECORD_MISC_GUEST_KERNEL (4 << 0)502#define PERF_RECORD_MISC_GUEST_KERNEL (4 << 0)
502#define PERF_RECORD_MISC_GUEST_USER (5 << 0)503#define PERF_RECORD_MISC_GUEST_USER (5 << 0)
503 504
505/*
506 * PERF_RECORD_MISC_MMAP_DATA and PERF_RECORD_MISC_COMM_EXEC are used on
507 * different events so can reuse the same bit position.
508 */
504#define PERF_RECORD_MISC_MMAP_DATA (1 << 13)509#define PERF_RECORD_MISC_MMAP_DATA (1 << 13)
510#define PERF_RECORD_MISC_COMM_EXEC (1 << 13)
505/*511/*
506 * Indicates that the content of PERF_SAMPLE_IP points to512 * Indicates that the content of PERF_SAMPLE_IP points to
507 * the actual instruction that triggered the event. See also513 * the actual instruction that triggered the event. See also
@@ -699,6 +705,7 @@ enum perf_event_type { · 191 unmodified lines
699 * u32 min;705 * u32 min;
700 * u64 ino;706 * u64 ino;
701 * u64 ino_generation;707 * u64 ino_generation;
708 * u32 prot, flags;
702 * char filename[];709 * char filename[];
703 * struct sample_id sample_id;710 * struct sample_id sample_id;
704 * };711 * };
@@ -722,10 +729,10 @@ enum perf_callchain_context { · 17 unmodified lines
722 PERF_CONTEXT_MAX = (__u64)-4095,729 PERF_CONTEXT_MAX = (__u64)-4095,
723};730};
724 731
725#define PERF_FLAG_FD_NO_GROUP (1U << 0)732#define PERF_FLAG_FD_NO_GROUP (1UL << 0)
726#define PERF_FLAG_FD_OUTPUT (1U << 1)733#define PERF_FLAG_FD_OUTPUT (1UL << 1)
727#define PERF_FLAG_PID_CGROUP (1U << 2) /* pid=cgroup id, per-cpu mode only */734#define PERF_FLAG_PID_CGROUP (1UL << 2) /* pid=cgroup id, per-cpu mode only */
728#define PERF_FLAG_FD_CLOEXEC (1U << 3) /* O_CLOEXEC */735#define PERF_FLAG_FD_CLOEXEC (1UL << 3) /* O_CLOEXEC */
729 736
730union perf_mem_data_src {737union perf_mem_data_src {
731 __u64 val;738 __u64 val;
include/uapi/linux/psci.h+90−0
@@ -0,0 +1,90 @@
1/*
2 * ARM Power State and Coordination Interface (PSCI) header
3 *
4 * This header holds common PSCI defines and macros shared
5 * by: ARM kernel, ARM64 kernel, KVM ARM/ARM64 and user space.
6 *
7 * Copyright (C) 2014 Linaro Ltd.
8 * Author: Anup Patel <anup.patel@linaro.org>
9 */
10
11#ifndef _UAPI_LINUX_PSCI_H
12#define _UAPI_LINUX_PSCI_H
13
14/*
15 * PSCI v0.1 interface
16 *
17 * The PSCI v0.1 function numbers are implementation defined.
18 *
19 * Only PSCI return values such as: SUCCESS, NOT_SUPPORTED,
20 * INVALID_PARAMS, and DENIED defined below are applicable
21 * to PSCI v0.1.
22 */
23
24/* PSCI v0.2 interface */
25#define PSCI_0_2_FN_BASE 0x84000000
26#define PSCI_0_2_FN(n) (PSCI_0_2_FN_BASE + (n))
27#define PSCI_0_2_64BIT 0x40000000
28#define PSCI_0_2_FN64_BASE \
29 (PSCI_0_2_FN_BASE + PSCI_0_2_64BIT)
30#define PSCI_0_2_FN64(n) (PSCI_0_2_FN64_BASE + (n))
31
32#define PSCI_0_2_FN_PSCI_VERSION PSCI_0_2_FN(0)
33#define PSCI_0_2_FN_CPU_SUSPEND PSCI_0_2_FN(1)
34#define PSCI_0_2_FN_CPU_OFF PSCI_0_2_FN(2)
35#define PSCI_0_2_FN_CPU_ON PSCI_0_2_FN(3)
36#define PSCI_0_2_FN_AFFINITY_INFO PSCI_0_2_FN(4)
37#define PSCI_0_2_FN_MIGRATE PSCI_0_2_FN(5)
38#define PSCI_0_2_FN_MIGRATE_INFO_TYPE PSCI_0_2_FN(6)
39#define PSCI_0_2_FN_MIGRATE_INFO_UP_CPU PSCI_0_2_FN(7)
40#define PSCI_0_2_FN_SYSTEM_OFF PSCI_0_2_FN(8)
41#define PSCI_0_2_FN_SYSTEM_RESET PSCI_0_2_FN(9)
42
43#define PSCI_0_2_FN64_CPU_SUSPEND PSCI_0_2_FN64(1)
44#define PSCI_0_2_FN64_CPU_ON PSCI_0_2_FN64(3)
45#define PSCI_0_2_FN64_AFFINITY_INFO PSCI_0_2_FN64(4)
46#define PSCI_0_2_FN64_MIGRATE PSCI_0_2_FN64(5)
47#define PSCI_0_2_FN64_MIGRATE_INFO_UP_CPU PSCI_0_2_FN64(7)
48
49/* PSCI v0.2 power state encoding for CPU_SUSPEND function */
50#define PSCI_0_2_POWER_STATE_ID_MASK 0xffff
51#define PSCI_0_2_POWER_STATE_ID_SHIFT 0
52#define PSCI_0_2_POWER_STATE_TYPE_SHIFT 16
53#define PSCI_0_2_POWER_STATE_TYPE_MASK \
54 (0x1 << PSCI_0_2_POWER_STATE_TYPE_SHIFT)
55#define PSCI_0_2_POWER_STATE_AFFL_SHIFT 24
56#define PSCI_0_2_POWER_STATE_AFFL_MASK \
57 (0x3 << PSCI_0_2_POWER_STATE_AFFL_SHIFT)
58
59/* PSCI v0.2 affinity level state returned by AFFINITY_INFO */
60#define PSCI_0_2_AFFINITY_LEVEL_ON 0
61#define PSCI_0_2_AFFINITY_LEVEL_OFF 1
62#define PSCI_0_2_AFFINITY_LEVEL_ON_PENDING 2
63
64/* PSCI v0.2 multicore support in Trusted OS returned by MIGRATE_INFO_TYPE */
65#define PSCI_0_2_TOS_UP_MIGRATE 0
66#define PSCI_0_2_TOS_UP_NO_MIGRATE 1
67#define PSCI_0_2_TOS_MP 2
68
69/* PSCI version decoding (independent of PSCI version) */
70#define PSCI_VERSION_MAJOR_SHIFT 16
71#define PSCI_VERSION_MINOR_MASK \
72 ((1U << PSCI_VERSION_MAJOR_SHIFT) - 1)
73#define PSCI_VERSION_MAJOR_MASK ~PSCI_VERSION_MINOR_MASK
74#define PSCI_VERSION_MAJOR(ver) \
75 (((ver) & PSCI_VERSION_MAJOR_MASK) >> PSCI_VERSION_MAJOR_SHIFT)
76#define PSCI_VERSION_MINOR(ver) \
77 ((ver) & PSCI_VERSION_MINOR_MASK)
78
79/* PSCI return values (inclusive of all PSCI versions) */
80#define PSCI_RET_SUCCESS 0
81#define PSCI_RET_NOT_SUPPORTED -1
82#define PSCI_RET_INVALID_PARAMS -2
83#define PSCI_RET_DENIED -3
84#define PSCI_RET_ALREADY_ON -4
85#define PSCI_RET_ON_PENDING -5
86#define PSCI_RET_INTERNAL_FAILURE -6
87#define PSCI_RET_NOT_PRESENT -7
88#define PSCI_RET_DISABLED -8
89
90#endif /* _UAPI_LINUX_PSCI_H */
include/uapi/linux/serial_core.h+7−1
@@ -211,7 +211,7 @@ · 210 unmodified lines
211/* VIA VT8500 SoC */211/* VIA VT8500 SoC */
212#define PORT_VT8500 97212#define PORT_VT8500 97
213 213
214/* Xilinx PSS UART */214/* Cadence (Xilinx Zynq) UART */
215#define PORT_XUARTPS 98215#define PORT_XUARTPS 98
216 216
217/* Atheros AR933X SoC */217/* Atheros AR933X SoC */
@@ -238,4 +238,10 @@ · 20 unmodified lines
238/* Tilera TILE-Gx UART */238/* Tilera TILE-Gx UART */
239#define PORT_TILEGX 106239#define PORT_TILEGX 106
240 240
241/* MEN 16z135 UART */
242#define PORT_MEN_Z135 107
243
244/* SC16IS74xx */
245#define PORT_SC16IS7XX 108
246
241#endif /* _UAPILINUX_SERIAL_CORE_H */247#endif /* _UAPILINUX_SERIAL_CORE_H */
include/uapi/linux/serial_reg.h+1−1
@@ -32,7 +32,7 @@ · 31 unmodified lines
32 32
33#define UART_IIR 2 /* In: Interrupt ID Register */33#define UART_IIR 2 /* In: Interrupt ID Register */
34#define UART_IIR_NO_INT 0x01 /* No interrupts pending */34#define UART_IIR_NO_INT 0x01 /* No interrupts pending */
35#define UART_IIR_ID 0x06 /* Mask for the interrupt ID */35#define UART_IIR_ID 0x0e /* Mask for the interrupt ID */
36#define UART_IIR_MSI 0x00 /* Modem status interrupt */36#define UART_IIR_MSI 0x00 /* Modem status interrupt */
37#define UART_IIR_THRI 0x02 /* Transmitter holding register empty */37#define UART_IIR_THRI 0x02 /* Transmitter holding register empty */
38#define UART_IIR_RDI 0x04 /* Receiver data interrupt */38#define UART_IIR_RDI 0x04 /* Receiver data interrupt */
include/uapi/linux/shm.h+9−8
@@ -8,19 +8,20 @@ · 7 unmodified lines
8#endif8#endif
9 9
10/*10/*
11 * SHMMAX, SHMMNI and SHMALL are upper limits are defaults which can11 * SHMMNI, SHMMAX and SHMALL are default upper limits which can be
12 * be increased by sysctl12 * modified by sysctl. The SHMMAX and SHMALL values have been chosen to
13 * be as large possible without facilitating scenarios where userspace
14 * causes overflows when adjusting the limits via operations of the form
15 * "retrieve current limit; add X; update limit". It is therefore not
16 * advised to make SHMMAX and SHMALL any larger. These limits are
17 * suitable for both 32 and 64-bit systems.
13 */18 */
14
15#define SHMMAX 0x2000000 /* max shared seg size (bytes) */
16#define SHMMIN 1 /* min shared seg size (bytes) */19#define SHMMIN 1 /* min shared seg size (bytes) */
17#define SHMMNI 4096 /* max num of segs system wide */20#define SHMMNI 4096 /* max num of segs system wide */
18#ifndef __KERNEL__21#define SHMMAX (ULONG_MAX - (1UL << 24)) /* max shared seg size (bytes) */
19#define SHMALL (SHMMAX/getpagesize()*(SHMMNI/16))22#define SHMALL (ULONG_MAX - (1UL << 24)) /* max shm system wide (pages) */
20#endif
21#define SHMSEG SHMMNI /* max shared segs per process */23#define SHMSEG SHMMNI /* max shared segs per process */
22 24
23
24/* Obsolete, used only for backwards compatibility and libc5 compiles */25/* Obsolete, used only for backwards compatibility and libc5 compiles */
25struct shmid_ds {26struct shmid_ds {
26 struct ipc_perm shm_perm; /* operation perms */27 struct ipc_perm shm_perm; /* operation perms */
include/uapi/linux/tipc.h+23−0
@@ -38,6 +38,7 @@ · 37 unmodified lines
38#define _LINUX_TIPC_H_38#define _LINUX_TIPC_H_
39 39
40#include <linux/types.h>40#include <linux/types.h>
41#include <linux/sockios.h>
41 42
42/*43/*
43 * TIPC addressing primitives44 * TIPC addressing primitives
@@ -87,6 +88,7 @@ static inline unsigned int tipc_node(__u32 addr) · 43 unmodified lines
87 88
88#define TIPC_CFG_SRV 0 /* configuration service name type */89#define TIPC_CFG_SRV 0 /* configuration service name type */
89#define TIPC_TOP_SRV 1 /* topology service name type */90#define TIPC_TOP_SRV 1 /* topology service name type */
91#define TIPC_LINK_STATE 2 /* link state name type */
90#define TIPC_RESERVED_TYPES 64 /* lowest user-publishable name type */92#define TIPC_RESERVED_TYPES 64 /* lowest user-publishable name type */
91 93
92/*94/*
@@ -206,4 +208,25 @@ struct sockaddr_tipc { · 113 unmodified lines
206#define TIPC_NODE_RECVQ_DEPTH 131 /* Default: none (read only) */208#define TIPC_NODE_RECVQ_DEPTH 131 /* Default: none (read only) */
207#define TIPC_SOCK_RECVQ_DEPTH 132 /* Default: none (read only) */209#define TIPC_SOCK_RECVQ_DEPTH 132 /* Default: none (read only) */
208 210
211/*
212 * Maximum sizes of TIPC bearer-related names (including terminating NULL)
213 * The string formatting for each name element is:
214 * media: media
215 * interface: media:interface name
216 * link: Z.C.N:interface-Z.C.N:interface
217 *
218 */
219
220#define TIPC_MAX_MEDIA_NAME 16
221#define TIPC_MAX_IF_NAME 16
222#define TIPC_MAX_BEARER_NAME 32
223#define TIPC_MAX_LINK_NAME 60
224
225#define SIOCGETLINKNAME SIOCPROTOPRIVATE
226
227struct tipc_sioc_ln_req {
228 __u32 peer;
229 __u32 bearer_id;
230 char linkname[TIPC_MAX_LINK_NAME];
231};
209#endif232#endif
include/uapi/linux/tipc_config.h+1−9
@@ -39,6 +39,7 @@ · 38 unmodified lines
39 39
40#include <linux/types.h>40#include <linux/types.h>
41#include <linux/string.h>41#include <linux/string.h>
42#include <linux/tipc.h>
42#include <asm/byteorder.h>43#include <asm/byteorder.h>
43 44
44#ifndef __KERNEL__45#ifndef __KERNEL__
@@ -154,15 +155,6 @@ · 109 unmodified lines
154#define TIPC_TLV_NAME_TBL_QUERY 25 /* struct tipc_name_table_query */155#define TIPC_TLV_NAME_TBL_QUERY 25 /* struct tipc_name_table_query */
155#define TIPC_TLV_PORT_REF 26 /* 32-bit port reference */156#define TIPC_TLV_PORT_REF 26 /* 32-bit port reference */
156 157
157/*
158 * Maximum sizes of TIPC bearer-related names (including terminating NUL)
159 */
160
161#define TIPC_MAX_MEDIA_NAME 16 /* format = media */
162#define TIPC_MAX_IF_NAME 16 /* format = interface */
163#define TIPC_MAX_BEARER_NAME 32 /* format = media:interface */
164#define TIPC_MAX_LINK_NAME 60 /* format = Z.C.N:interface-Z.C.N:interface */
165
166/*158/*
167 * Link priority limits (min, default, max, media default)159 * Link priority limits (min, default, max, media default)
168 */160 */
include/uapi/linux/udp.h+2−0
@@ -29,6 +29,8 @@ struct udphdr { · 28 unmodified lines
29/* UDP socket options */29/* UDP socket options */
30#define UDP_CORK 1 /* Never send partially complete segments */30#define UDP_CORK 1 /* Never send partially complete segments */
31#define UDP_ENCAP 100 /* Set the socket to accept encapsulated packets */31#define UDP_ENCAP 100 /* Set the socket to accept encapsulated packets */
32#define UDP_NO_CHECK6_TX 101 /* Disable sending checksum for UDP6X */
33#define UDP_NO_CHECK6_RX 102 /* Disable accpeting checksum for UDP6 */
32 34
33/* UDP encapsulation types */35/* UDP encapsulation types */
34#define UDP_ENCAP_ESPINUDP_NON_IKE 1 /* draft-ietf-ipsec-nat-t-ike-00/01 */36#define UDP_ENCAP_ESPINUDP_NON_IKE 1 /* draft-ietf-ipsec-nat-t-ike-00/01 */
include/uapi/linux/usb/Kbuild+1−0
@@ -1,6 +1,7 @@
1# UAPI Header export list1# UAPI Header export list
2header-y += audio.h2header-y += audio.h
3header-y += cdc.h3header-y += cdc.h
4header-y += cdc-wdm.h
4header-y += ch11.h5header-y += ch11.h
5header-y += ch9.h6header-y += ch9.h
6header-y += functionfs.h7header-y += functionfs.h
include/uapi/linux/usb/cdc-wdm.h+2−0
@@ -9,6 +9,8 @@ · 8 unmodified lines
9#ifndef _UAPI__LINUX_USB_CDC_WDM_H9#ifndef _UAPI__LINUX_USB_CDC_WDM_H
10#define _UAPI__LINUX_USB_CDC_WDM_H10#define _UAPI__LINUX_USB_CDC_WDM_H
11 11
12#include <linux/types.h>
13
12/*14/*
13 * This IOCTL is used to retrieve the wMaxCommand for the device,15 * This IOCTL is used to retrieve the wMaxCommand for the device,
14 * defining the message limit for both reading and writing.16 * defining the message limit for both reading and writing.
include/uapi/linux/usb/functionfs.h+7−0
@@ -33,6 +33,13 @@ struct usb_endpoint_descriptor_no_audio { · 32 unmodified lines
33 __u8 bInterval;33 __u8 bInterval;
34} __attribute__((packed));34} __attribute__((packed));
35 35
36/* Legacy format, deprecated as of 3.14. */
37struct usb_functionfs_descs_head {
38 __le32 magic;
39 __le32 length;
40 __le32 fs_count;
41 __le32 hs_count;
42} __attribute__((packed, deprecated));
36 43
37/*44/*
38 * Descriptors format:45 * Descriptors format:
include/uapi/linux/v4l2-common.h+1−1
@@ -75,7 +75,7 @@ struct v4l2_edid { · 74 unmodified lines
75 __u32 start_block;75 __u32 start_block;
76 __u32 blocks;76 __u32 blocks;
77 __u32 reserved[5];77 __u32 reserved[5];
78 __u8 __user *edid;78 __u8 *edid;
79};79};
80 80
81#endif /* __V4L2_COMMON__ */81#endif /* __V4L2_COMMON__ */
include/uapi/linux/v4l2-dv-timings.h+70−0
@@ -173,6 +173,76 @@ · 172 unmodified lines
173 V4L2_DV_FL_CAN_REDUCE_FPS) \173 V4L2_DV_FL_CAN_REDUCE_FPS) \
174}174}
175 175
176#define V4L2_DV_BT_CEA_3840X2160P24 { \
177 .type = V4L2_DV_BT_656_1120, \
178 V4L2_INIT_BT_TIMINGS(3840, 2160, 0, V4L2_DV_HSYNC_POS_POL, \
179 297000000, 1276, 88, 296, 8, 10, 72, 0, 0, 0, \
180 V4L2_DV_BT_STD_CEA861, V4L2_DV_FL_CAN_REDUCE_FPS) \
181}
182
183#define V4L2_DV_BT_CEA_3840X2160P25 { \
184 .type = V4L2_DV_BT_656_1120, \
185 V4L2_INIT_BT_TIMINGS(3840, 2160, 0, V4L2_DV_HSYNC_POS_POL, \
186 297000000, 1056, 88, 296, 8, 10, 72, 0, 0, 0, \
187 V4L2_DV_BT_STD_CEA861, 0) \
188}
189
190#define V4L2_DV_BT_CEA_3840X2160P30 { \
191 .type = V4L2_DV_BT_656_1120, \
192 V4L2_INIT_BT_TIMINGS(3840, 2160, 0, V4L2_DV_HSYNC_POS_POL, \
193 297000000, 176, 88, 296, 8, 10, 72, 0, 0, 0, \
194 V4L2_DV_BT_STD_CEA861, V4L2_DV_FL_CAN_REDUCE_FPS) \
195}
196
197#define V4L2_DV_BT_CEA_3840X2160P50 { \
198 .type = V4L2_DV_BT_656_1120, \
199 V4L2_INIT_BT_TIMINGS(3840, 2160, 0, V4L2_DV_HSYNC_POS_POL, \
200 594000000, 1056, 88, 296, 8, 10, 72, 0, 0, 0, \
201 V4L2_DV_BT_STD_CEA861, 0) \
202}
203
204#define V4L2_DV_BT_CEA_3840X2160P60 { \
205 .type = V4L2_DV_BT_656_1120, \
206 V4L2_INIT_BT_TIMINGS(3840, 2160, 0, V4L2_DV_HSYNC_POS_POL, \
207 594000000, 176, 88, 296, 8, 10, 72, 0, 0, 0, \
208 V4L2_DV_BT_STD_CEA861, V4L2_DV_FL_CAN_REDUCE_FPS) \
209}
210
211#define V4L2_DV_BT_CEA_4096X2160P24 { \
212 .type = V4L2_DV_BT_656_1120, \
213 V4L2_INIT_BT_TIMINGS(4096, 2160, 0, V4L2_DV_HSYNC_POS_POL, \
214 297000000, 1020, 88, 296, 8, 10, 72, 0, 0, 0, \
215 V4L2_DV_BT_STD_CEA861, V4L2_DV_FL_CAN_REDUCE_FPS) \
216}
217
218#define V4L2_DV_BT_CEA_4096X2160P25 { \
219 .type = V4L2_DV_BT_656_1120, \
220 V4L2_INIT_BT_TIMINGS(4096, 2160, 0, V4L2_DV_HSYNC_POS_POL, \
221 297000000, 968, 88, 128, 8, 10, 72, 0, 0, 0, \
222 V4L2_DV_BT_STD_CEA861, 0) \
223}
224
225#define V4L2_DV_BT_CEA_4096X2160P30 { \
226 .type = V4L2_DV_BT_656_1120, \
227 V4L2_INIT_BT_TIMINGS(4096, 2160, 0, V4L2_DV_HSYNC_POS_POL, \
228 297000000, 88, 88, 128, 8, 10, 72, 0, 0, 0, \
229 V4L2_DV_BT_STD_CEA861, V4L2_DV_FL_CAN_REDUCE_FPS) \
230}
231
232#define V4L2_DV_BT_CEA_4096X2160P50 { \
233 .type = V4L2_DV_BT_656_1120, \
234 V4L2_INIT_BT_TIMINGS(4096, 2160, 0, V4L2_DV_HSYNC_POS_POL, \
235 594000000, 968, 88, 128, 8, 10, 72, 0, 0, 0, \
236 V4L2_DV_BT_STD_CEA861, 0) \
237}
238
239#define V4L2_DV_BT_CEA_4096X2160P60 { \
240 .type = V4L2_DV_BT_656_1120, \
241 V4L2_INIT_BT_TIMINGS(4096, 2160, 0, V4L2_DV_HSYNC_POS_POL, \
242 594000000, 88, 88, 128, 8, 10, 72, 0, 0, 0, \
243 V4L2_DV_BT_STD_CEA861, V4L2_DV_FL_CAN_REDUCE_FPS) \
244}
245
176 246
177/* VESA Discrete Monitor Timings as per version 1.0, revision 12 */247/* VESA Discrete Monitor Timings as per version 1.0, revision 12 */
178 248
include/uapi/linux/v4l2-mediabus.h+13−1
@@ -52,7 +52,7 @@ enum v4l2_mbus_pixelcode { · 51 unmodified lines
52 V4L2_MBUS_FMT_RGB888_2X12_LE = 0x100c,52 V4L2_MBUS_FMT_RGB888_2X12_LE = 0x100c,
53 V4L2_MBUS_FMT_ARGB8888_1X32 = 0x100d,53 V4L2_MBUS_FMT_ARGB8888_1X32 = 0x100d,
54 54
55 /* YUV (including grey) - next is 0x2018 */55 /* YUV (including grey) - next is 0x2024 */
56 V4L2_MBUS_FMT_Y8_1X8 = 0x2001,56 V4L2_MBUS_FMT_Y8_1X8 = 0x2001,
57 V4L2_MBUS_FMT_UV8_1X8 = 0x2015,57 V4L2_MBUS_FMT_UV8_1X8 = 0x2015,
58 V4L2_MBUS_FMT_UYVY8_1_5X8 = 0x2002,58 V4L2_MBUS_FMT_UYVY8_1_5X8 = 0x2002,
@@ -64,6 +64,8 @@ enum v4l2_mbus_pixelcode { · 5 unmodified lines
64 V4L2_MBUS_FMT_YUYV8_2X8 = 0x2008,64 V4L2_MBUS_FMT_YUYV8_2X8 = 0x2008,
65 V4L2_MBUS_FMT_YVYU8_2X8 = 0x2009,65 V4L2_MBUS_FMT_YVYU8_2X8 = 0x2009,
66 V4L2_MBUS_FMT_Y10_1X10 = 0x200a,66 V4L2_MBUS_FMT_Y10_1X10 = 0x200a,
67 V4L2_MBUS_FMT_UYVY10_2X10 = 0x2018,
68 V4L2_MBUS_FMT_VYUY10_2X10 = 0x2019,
67 V4L2_MBUS_FMT_YUYV10_2X10 = 0x200b,69 V4L2_MBUS_FMT_YUYV10_2X10 = 0x200b,
68 V4L2_MBUS_FMT_YVYU10_2X10 = 0x200c,70 V4L2_MBUS_FMT_YVYU10_2X10 = 0x200c,
69 V4L2_MBUS_FMT_Y12_1X12 = 0x2013,71 V4L2_MBUS_FMT_Y12_1X12 = 0x2013,
@@ -72,10 +74,20 @@ enum v4l2_mbus_pixelcode { · 2 unmodified lines
72 V4L2_MBUS_FMT_YUYV8_1X16 = 0x2011,74 V4L2_MBUS_FMT_YUYV8_1X16 = 0x2011,
73 V4L2_MBUS_FMT_YVYU8_1X16 = 0x2012,75 V4L2_MBUS_FMT_YVYU8_1X16 = 0x2012,
74 V4L2_MBUS_FMT_YDYUYDYV8_1X16 = 0x2014,76 V4L2_MBUS_FMT_YDYUYDYV8_1X16 = 0x2014,
77 V4L2_MBUS_FMT_UYVY10_1X20 = 0x201a,
78 V4L2_MBUS_FMT_VYUY10_1X20 = 0x201b,
75 V4L2_MBUS_FMT_YUYV10_1X20 = 0x200d,79 V4L2_MBUS_FMT_YUYV10_1X20 = 0x200d,
76 V4L2_MBUS_FMT_YVYU10_1X20 = 0x200e,80 V4L2_MBUS_FMT_YVYU10_1X20 = 0x200e,
77 V4L2_MBUS_FMT_YUV10_1X30 = 0x2016,81 V4L2_MBUS_FMT_YUV10_1X30 = 0x2016,
78 V4L2_MBUS_FMT_AYUV8_1X32 = 0x2017,82 V4L2_MBUS_FMT_AYUV8_1X32 = 0x2017,
83 V4L2_MBUS_FMT_UYVY12_2X12 = 0x201c,
84 V4L2_MBUS_FMT_VYUY12_2X12 = 0x201d,
85 V4L2_MBUS_FMT_YUYV12_2X12 = 0x201e,
86 V4L2_MBUS_FMT_YVYU12_2X12 = 0x201f,
87 V4L2_MBUS_FMT_UYVY12_1X24 = 0x2020,
88 V4L2_MBUS_FMT_VYUY12_1X24 = 0x2021,
89 V4L2_MBUS_FMT_YUYV12_1X24 = 0x2022,
90 V4L2_MBUS_FMT_YVYU12_1X24 = 0x2023,
79 91
80 /* Bayer - next is 0x3019 */92 /* Bayer - next is 0x3019 */
81 V4L2_MBUS_FMT_SBGGR8_1X8 = 0x3001,93 V4L2_MBUS_FMT_SBGGR8_1X8 = 0x3001,
include/uapi/linux/v4l2-subdev.h+19−21
@@ -151,26 +151,24 @@ struct v4l2_subdev_selection { · 150 unmodified lines
151/* Backwards compatibility define --- to be removed */151/* Backwards compatibility define --- to be removed */
152#define v4l2_subdev_edid v4l2_edid152#define v4l2_subdev_edid v4l2_edid
153 153
154#define VIDIOC_SUBDEV_G_FMT _IOWR('V', 4, struct v4l2_subdev_format)154#define VIDIOC_SUBDEV_G_FMT _IOWR('V', 4, struct v4l2_subdev_format)
155#define VIDIOC_SUBDEV_S_FMT _IOWR('V', 5, struct v4l2_subdev_format)155#define VIDIOC_SUBDEV_S_FMT _IOWR('V', 5, struct v4l2_subdev_format)
156#define VIDIOC_SUBDEV_G_FRAME_INTERVAL \156#define VIDIOC_SUBDEV_G_FRAME_INTERVAL _IOWR('V', 21, struct v4l2_subdev_frame_interval)
157 _IOWR('V', 21, struct v4l2_subdev_frame_interval)157#define VIDIOC_SUBDEV_S_FRAME_INTERVAL _IOWR('V', 22, struct v4l2_subdev_frame_interval)
158#define VIDIOC_SUBDEV_S_FRAME_INTERVAL \158#define VIDIOC_SUBDEV_ENUM_MBUS_CODE _IOWR('V', 2, struct v4l2_subdev_mbus_code_enum)
159 _IOWR('V', 22, struct v4l2_subdev_frame_interval)159#define VIDIOC_SUBDEV_ENUM_FRAME_SIZE _IOWR('V', 74, struct v4l2_subdev_frame_size_enum)
160#define VIDIOC_SUBDEV_ENUM_MBUS_CODE \160#define VIDIOC_SUBDEV_ENUM_FRAME_INTERVAL _IOWR('V', 75, struct v4l2_subdev_frame_interval_enum)
161 _IOWR('V', 2, struct v4l2_subdev_mbus_code_enum)161#define VIDIOC_SUBDEV_G_CROP _IOWR('V', 59, struct v4l2_subdev_crop)
162#define VIDIOC_SUBDEV_ENUM_FRAME_SIZE \162#define VIDIOC_SUBDEV_S_CROP _IOWR('V', 60, struct v4l2_subdev_crop)
163 _IOWR('V', 74, struct v4l2_subdev_frame_size_enum)163#define VIDIOC_SUBDEV_G_SELECTION _IOWR('V', 61, struct v4l2_subdev_selection)
164#define VIDIOC_SUBDEV_ENUM_FRAME_INTERVAL \164#define VIDIOC_SUBDEV_S_SELECTION _IOWR('V', 62, struct v4l2_subdev_selection)
165 _IOWR('V', 75, struct v4l2_subdev_frame_interval_enum)165/* The following ioctls are identical to the ioctls in videodev2.h */
166#define VIDIOC_SUBDEV_G_CROP _IOWR('V', 59, struct v4l2_subdev_crop)166#define VIDIOC_SUBDEV_G_EDID _IOWR('V', 40, struct v4l2_edid)
167#define VIDIOC_SUBDEV_S_CROP _IOWR('V', 60, struct v4l2_subdev_crop)167#define VIDIOC_SUBDEV_S_EDID _IOWR('V', 41, struct v4l2_edid)
168#define VIDIOC_SUBDEV_G_SELECTION \168#define VIDIOC_SUBDEV_S_DV_TIMINGS _IOWR('V', 87, struct v4l2_dv_timings)
169 _IOWR('V', 61, struct v4l2_subdev_selection)169#define VIDIOC_SUBDEV_G_DV_TIMINGS _IOWR('V', 88, struct v4l2_dv_timings)
170#define VIDIOC_SUBDEV_S_SELECTION \170#define VIDIOC_SUBDEV_ENUM_DV_TIMINGS _IOWR('V', 98, struct v4l2_enum_dv_timings)
171 _IOWR('V', 62, struct v4l2_subdev_selection)171#define VIDIOC_SUBDEV_QUERY_DV_TIMINGS _IOR('V', 99, struct v4l2_dv_timings)
172/* These two G/S_EDID ioctls are identical to the ioctls in videodev2.h */172#define VIDIOC_SUBDEV_DV_TIMINGS_CAP _IOWR('V', 100, struct v4l2_dv_timings_cap)
173#define VIDIOC_SUBDEV_G_EDID _IOWR('V', 40, struct v4l2_edid)
174#define VIDIOC_SUBDEV_S_EDID _IOWR('V', 41, struct v4l2_edid)
175 173
176#endif174#endif
include/uapi/linux/videodev2.h+16−3
@@ -649,7 +649,6 @@ struct v4l2_plane { · 648 unmodified lines
649 * @length: size in bytes of the buffer (NOT its payload) for single-plane649 * @length: size in bytes of the buffer (NOT its payload) for single-plane
650 * buffers (when type != *_MPLANE); number of elements in the650 * buffers (when type != *_MPLANE); number of elements in the
651 * planes array for multi-plane buffers651 * planes array for multi-plane buffers
652 * @input: input number from which the video data has has been captured
653 *652 *
654 * Contains data exchanged by application and driver using one of the Streaming653 * Contains data exchanged by application and driver using one of the Streaming
655 * I/O methods.654 * I/O methods.
@@ -1107,12 +1106,15 @@ struct v4l2_dv_timings { · 451 unmodified lines
1107 1106
1108/** struct v4l2_enum_dv_timings - DV timings enumeration1107/** struct v4l2_enum_dv_timings - DV timings enumeration
1109 * @index: enumeration index1108 * @index: enumeration index
1109 * @pad: the pad number for which to enumerate timings (used with
1110 * v4l-subdev nodes only)
1110 * @reserved: must be zeroed1111 * @reserved: must be zeroed
1111 * @timings: the timings for the given index1112 * @timings: the timings for the given index
1112 */1113 */
1113struct v4l2_enum_dv_timings {1114struct v4l2_enum_dv_timings {
1114 __u32 index;1115 __u32 index;
1115 __u32 reserved[3];1116 __u32 pad;
1117 __u32 reserved[2];
1116 struct v4l2_dv_timings timings;1118 struct v4l2_dv_timings timings;
1117};1119};
1118 1120
@@ -1150,11 +1152,14 @@ struct v4l2_bt_timings_cap { · 31 unmodified lines
1150 1152
1151/** struct v4l2_dv_timings_cap - DV timings capabilities1153/** struct v4l2_dv_timings_cap - DV timings capabilities
1152 * @type: the type of the timings (same as in struct v4l2_dv_timings)1154 * @type: the type of the timings (same as in struct v4l2_dv_timings)
1155 * @pad: the pad number for which to query capabilities (used with
1156 * v4l-subdev nodes only)
1153 * @bt: the BT656/1120 timings capabilities1157 * @bt: the BT656/1120 timings capabilities
1154 */1158 */
1155struct v4l2_dv_timings_cap {1159struct v4l2_dv_timings_cap {
1156 __u32 type;1160 __u32 type;
1157 __u32 reserved[3];1161 __u32 pad;
1162 __u32 reserved[2];
1158 union {1163 union {
1159 struct v4l2_bt_timings_cap bt;1164 struct v4l2_bt_timings_cap bt;
1160 __u32 raw_data[32];1165 __u32 raw_data[32];
@@ -1765,6 +1770,7 @@ struct v4l2_streamparm { · 604 unmodified lines
1765#define V4L2_EVENT_EOS 21770#define V4L2_EVENT_EOS 2
1766#define V4L2_EVENT_CTRL 31771#define V4L2_EVENT_CTRL 3
1767#define V4L2_EVENT_FRAME_SYNC 41772#define V4L2_EVENT_FRAME_SYNC 4
1773#define V4L2_EVENT_SOURCE_CHANGE 5
1768#define V4L2_EVENT_PRIVATE_START 0x080000001774#define V4L2_EVENT_PRIVATE_START 0x08000000
1769 1775
1770/* Payload for V4L2_EVENT_VSYNC */1776/* Payload for V4L2_EVENT_VSYNC */
@@ -1796,12 +1802,19 @@ struct v4l2_event_frame_sync { · 25 unmodified lines
1796 __u32 frame_sequence;1802 __u32 frame_sequence;
1797};1803};
1798 1804
1805#define V4L2_EVENT_SRC_CH_RESOLUTION (1 << 0)
1806
1807struct v4l2_event_src_change {
1808 __u32 changes;
1809};
1810
1799struct v4l2_event {1811struct v4l2_event {
1800 __u32 type;1812 __u32 type;
1801 union {1813 union {
1802 struct v4l2_event_vsync vsync;1814 struct v4l2_event_vsync vsync;
1803 struct v4l2_event_ctrl ctrl;1815 struct v4l2_event_ctrl ctrl;
1804 struct v4l2_event_frame_sync frame_sync;1816 struct v4l2_event_frame_sync frame_sync;
1817 struct v4l2_event_src_change src_change;
1805 __u8 data[64];1818 __u8 data[64];
1806 } u;1819 } u;
1807 __u32 pending;1820 __u32 pending;