History

Merge branch 'perf/urgent' into perf/core, to pick up latest fixes and refresh the tree

Ingo Molnar committed 9 years ago

Commit f5db3402 parents ee438ec 38115f29242 files · +780174 −185167Browse files

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

Unified · Split

45 files
  1. include/uapi/linux/auto_fs.h +2 −2
  2. include/uapi/linux/auto_fs4.h +2 −2
  3. include/uapi/linux/bpf.h +135 −5
  4. include/uapi/linux/btrfs.h +43 −20
  5. include/uapi/linux/cec.h +2 −0
  6. include/uapi/linux/dm-ioctl.h +3 −1
  7. include/uapi/linux/dvb/video.h +2 −1
  8. include/uapi/linux/fs.h +2 −0
  9. include/uapi/linux/if_link.h +18 −2
  10. include/uapi/linux/input-event-codes.h +1 −0
  11. include/uapi/linux/kcmp.h +10 −0
  12. include/uapi/linux/kvm.h +37 −0
  13. include/uapi/linux/magic.h +3 −0
  14. include/uapi/linux/max2175.h +28 −0
  15. include/uapi/linux/media.h +6 −0
  16. include/uapi/linux/mempolicy.h +0 −8
  17. include/uapi/linux/mroute.h +54 −0
  18. include/uapi/linux/mroute6.h +12 −0
  19. include/uapi/linux/ndctl.h +41 −1
  20. include/uapi/linux/neighbour.h +1 −0
  21. include/uapi/linux/net_tstamp.h +14 −1
  22. include/uapi/linux/nl80211.h +73 −9
  23. include/uapi/linux/pci_regs.h +1 −0
  24. include/uapi/linux/pkt_cls.h +17 −0
  25. include/uapi/linux/rtnetlink.h +9 −0
  26. include/uapi/linux/sched/types.h +8 −8
  27. include/uapi/linux/sctp.h +6 −0
  28. include/uapi/linux/sem.h +1 −1
  29. include/uapi/linux/serial.h +3 −0
  30. include/uapi/linux/serial_core.h +1 −1
  31. include/uapi/linux/snmp.h +1 −0
  32. include/uapi/linux/switchtec_ioctl.h +3 −0
  33. include/uapi/linux/target_core_user.h +12 −0
  34. include/uapi/linux/tc_act/tc_bpf.h +1 −0
  35. include/uapi/linux/tc_act/tc_tunnel_key.h +1 −0
  36. include/uapi/linux/tcp.h +8 −2
  37. include/uapi/linux/tls.h +79 −0
  38. include/uapi/linux/tty.h +2 −0
  39. include/uapi/linux/usb/audio.h +3 −3
  40. include/uapi/linux/usb/functionfs.h +4 −3
  41. include/uapi/linux/usbdevice_fs.h +6 −0
  42. include/uapi/linux/v4l2-controls.h +10 −1
  43. include/uapi/linux/videodev2.h +3 −0
  44. include/uapi/linux/vtpm_proxy.h +4 −0
  45. include/uapi/linux/wil6210_uapi.h +0 −87
include/uapi/linux/auto_fs.h+2−2
@@ -26,7 +26,7 @@ · 25 unmodified lines
26#define AUTOFS_MIN_PROTO_VERSION AUTOFS_PROTO_VERSION26#define AUTOFS_MIN_PROTO_VERSION AUTOFS_PROTO_VERSION
27 27
28/*28/*
29 * The wait_queue_entry_token (autofs_wqt_t) is part of a structure which is passed29 * The wait_queue_token (autofs_wqt_t) is part of a structure which is passed
30 * back to the kernel via ioctl from userspace. On architectures where 32- and30 * back to the kernel via ioctl from userspace. On architectures where 32- and
31 * 64-bit userspace binaries can be executed it's important that the size of31 * 64-bit userspace binaries can be executed it's important that the size of
32 * autofs_wqt_t stays constant between 32- and 64-bit Linux kernels so that we32 * autofs_wqt_t stays constant between 32- and 64-bit Linux kernels so that we
@@ -49,7 +49,7 @@ struct autofs_packet_hdr { · 16 unmodified lines
49 49
50struct autofs_packet_missing {50struct autofs_packet_missing {
51 struct autofs_packet_hdr hdr;51 struct autofs_packet_hdr hdr;
52 autofs_wqt_t wait_queue_entry_token;52 autofs_wqt_t wait_queue_token;
53 int len;53 int len;
54 char name[NAME_MAX+1];54 char name[NAME_MAX+1];
55}; 55};
include/uapi/linux/auto_fs4.h+2−2
@@ -108,7 +108,7 @@ enum autofs_notify { · 107 unmodified lines
108/* v4 multi expire (via pipe) */108/* v4 multi expire (via pipe) */
109struct autofs_packet_expire_multi {109struct autofs_packet_expire_multi {
110 struct autofs_packet_hdr hdr;110 struct autofs_packet_hdr hdr;
111 autofs_wqt_t wait_queue_entry_token;111 autofs_wqt_t wait_queue_token;
112 int len;112 int len;
113 char name[NAME_MAX+1];113 char name[NAME_MAX+1];
114};114};
@@ -123,7 +123,7 @@ union autofs_packet_union { · 8 unmodified lines
123/* autofs v5 common packet struct */123/* autofs v5 common packet struct */
124struct autofs_v5_packet {124struct autofs_v5_packet {
125 struct autofs_packet_hdr hdr;125 struct autofs_packet_hdr hdr;
126 autofs_wqt_t wait_queue_entry_token;126 autofs_wqt_t wait_queue_token;
127 __u32 dev;127 __u32 dev;
128 __u64 ino;128 __u64 ino;
129 __u32 uid;129 __u32 uid;
include/uapi/linux/bpf.h+135−5
@@ -82,6 +82,11 @@ enum bpf_cmd { · 81 unmodified lines
82 BPF_PROG_ATTACH,82 BPF_PROG_ATTACH,
83 BPF_PROG_DETACH,83 BPF_PROG_DETACH,
84 BPF_PROG_TEST_RUN,84 BPF_PROG_TEST_RUN,
85 BPF_PROG_GET_NEXT_ID,
86 BPF_MAP_GET_NEXT_ID,
87 BPF_PROG_GET_FD_BY_ID,
88 BPF_MAP_GET_FD_BY_ID,
89 BPF_OBJ_GET_INFO_BY_FD,
85};90};
86 91
87enum bpf_map_type {92enum bpf_map_type {
@@ -115,12 +120,14 @@ enum bpf_prog_type { · 27 unmodified lines
115 BPF_PROG_TYPE_LWT_IN,120 BPF_PROG_TYPE_LWT_IN,
116 BPF_PROG_TYPE_LWT_OUT,121 BPF_PROG_TYPE_LWT_OUT,
117 BPF_PROG_TYPE_LWT_XMIT,122 BPF_PROG_TYPE_LWT_XMIT,
123 BPF_PROG_TYPE_SOCK_OPS,
118};124};
119 125
120enum bpf_attach_type {126enum bpf_attach_type {
121 BPF_CGROUP_INET_INGRESS,127 BPF_CGROUP_INET_INGRESS,
122 BPF_CGROUP_INET_EGRESS,128 BPF_CGROUP_INET_EGRESS,
123 BPF_CGROUP_INET_SOCK_CREATE,129 BPF_CGROUP_INET_SOCK_CREATE,
130 BPF_CGROUP_SOCK_OPS,
124 __MAX_BPF_ATTACH_TYPE131 __MAX_BPF_ATTACH_TYPE
125};132};
126 133
@@ -209,6 +216,21 @@ union bpf_attr { · 82 unmodified lines
209 __u32 repeat;216 __u32 repeat;
210 __u32 duration;217 __u32 duration;
211 } test;218 } test;
219
220 struct { /* anonymous struct used by BPF_*_GET_*_ID */
221 union {
222 __u32 start_id;
223 __u32 prog_id;
224 __u32 map_id;
225 };
226 __u32 next_id;
227 };
228
229 struct { /* anonymous struct used by BPF_OBJ_GET_INFO_BY_FD */
230 __u32 bpf_fd;
231 __u32 info_len;
232 __aligned_u64 info;
233 } info;
212} __attribute__((aligned(8)));234} __attribute__((aligned(8)));
213 235
214/* BPF helper function descriptions:236/* BPF helper function descriptions:
@@ -313,8 +335,11 @@ union bpf_attr { · 98 unmodified lines
313 * @flags: room for future extensions335 * @flags: room for future extensions
314 * Return: 0 on success or negative error336 * Return: 0 on success or negative error
315 *337 *
316 * u64 bpf_perf_event_read(&map, index)338 * u64 bpf_perf_event_read(map, flags)
317 * Return: Number events read or error code339 * read perf event counter value
340 * @map: pointer to perf_event_array map
341 * @flags: index of event in the map or bitmask flags
342 * Return: value of perf event counter read or error code
318 *343 *
319 * int bpf_redirect(ifindex, flags)344 * int bpf_redirect(ifindex, flags)
320 * redirect to another netdev345 * redirect to another netdev
@@ -328,11 +353,11 @@ union bpf_attr { · 7 unmodified lines
328 * @skb: pointer to skb353 * @skb: pointer to skb
329 * Return: realm if != 0354 * Return: realm if != 0
330 *355 *
331 * int bpf_perf_event_output(ctx, map, index, data, size)356 * int bpf_perf_event_output(ctx, map, flags, data, size)
332 * output perf raw sample357 * output perf raw sample
333 * @ctx: struct pt_regs*358 * @ctx: struct pt_regs*
334 * @map: pointer to perf_event_array map359 * @map: pointer to perf_event_array map
335 * @index: index of event in the map360 * @flags: index of event in the map or bitmask flags
336 * @data: data on stack to be output as raw data361 * @data: data on stack to be output as raw data
337 * @size: size of data362 * @size: size of data
338 * Return: 0 on success or negative error363 * Return: 0 on success or negative error
@@ -490,6 +515,30 @@ union bpf_attr { · 151 unmodified lines
490 * Get the owner uid of the socket stored inside sk_buff.515 * Get the owner uid of the socket stored inside sk_buff.
491 * @skb: pointer to skb516 * @skb: pointer to skb
492 * Return: uid of the socket owner on success or overflowuid if failed.517 * Return: uid of the socket owner on success or overflowuid if failed.
518 *
519 * u32 bpf_set_hash(skb, hash)
520 * Set full skb->hash.
521 * @skb: pointer to skb
522 * @hash: hash to set
523 *
524 * int bpf_setsockopt(bpf_socket, level, optname, optval, optlen)
525 * Calls setsockopt. Not all opts are available, only those with
526 * integer optvals plus TCP_CONGESTION.
527 * Supported levels: SOL_SOCKET and IPROTO_TCP
528 * @bpf_socket: pointer to bpf_socket
529 * @level: SOL_SOCKET or IPROTO_TCP
530 * @optname: option name
531 * @optval: pointer to option value
532 * @optlen: length of optval in byes
533 * Return: 0 or negative error
534 *
535 * int bpf_skb_adjust_room(skb, len_diff, mode, flags)
536 * Grow or shrink room in sk_buff.
537 * @skb: pointer to skb
538 * @len_diff: (signed) amount of room to grow/shrink
539 * @mode: operation mode (enum bpf_adj_room_mode)
540 * @flags: reserved for future use
541 * Return: 0 on success or negative error code
493 */542 */
494#define __BPF_FUNC_MAPPER(FN) \543#define __BPF_FUNC_MAPPER(FN) \
495 FN(unspec), \544 FN(unspec), \
@@ -539,7 +588,10 @@ union bpf_attr { · 43 unmodified lines
539 FN(xdp_adjust_head), \588 FN(xdp_adjust_head), \
540 FN(probe_read_str), \589 FN(probe_read_str), \
541 FN(get_socket_cookie), \590 FN(get_socket_cookie), \
542 FN(get_socket_uid),591 FN(get_socket_uid), \
592 FN(set_hash), \
593 FN(setsockopt), \
594 FN(skb_adjust_room),
543 595
544/* integer value in 'imm' field of BPF_CALL instruction selects which helper596/* integer value in 'imm' field of BPF_CALL instruction selects which helper
545 * function eBPF program intends to call597 * function eBPF program intends to call
@@ -589,6 +641,11 @@ enum bpf_func_id { · 43 unmodified lines
589/* BPF_FUNC_perf_event_output for sk_buff input context. */641/* BPF_FUNC_perf_event_output for sk_buff input context. */
590#define BPF_F_CTXLEN_MASK (0xfffffULL << 32)642#define BPF_F_CTXLEN_MASK (0xfffffULL << 32)
591 643
644/* Mode for BPF_FUNC_skb_adjust_room helper. */
645enum bpf_adj_room_mode {
646 BPF_ADJ_ROOM_NET,
647};
648
592/* user accessible mirror of in-kernel sk_buff.649/* user accessible mirror of in-kernel sk_buff.
593 * new fields can only be added to the end of this structure650 * new fields can only be added to the end of this structure
594 */651 */
@@ -670,4 +727,77 @@ struct xdp_md { · 75 unmodified lines
670 __u32 data_end;727 __u32 data_end;
671};728};
672 729
730#define BPF_TAG_SIZE 8
731
732struct bpf_prog_info {
733 __u32 type;
734 __u32 id;
735 __u8 tag[BPF_TAG_SIZE];
736 __u32 jited_prog_len;
737 __u32 xlated_prog_len;
738 __aligned_u64 jited_prog_insns;
739 __aligned_u64 xlated_prog_insns;
740} __attribute__((aligned(8)));
741
742struct bpf_map_info {
743 __u32 type;
744 __u32 id;
745 __u32 key_size;
746 __u32 value_size;
747 __u32 max_entries;
748 __u32 map_flags;
749} __attribute__((aligned(8)));
750
751/* User bpf_sock_ops struct to access socket values and specify request ops
752 * and their replies.
753 * Some of this fields are in network (bigendian) byte order and may need
754 * to be converted before use (bpf_ntohl() defined in samples/bpf/bpf_endian.h).
755 * New fields can only be added at the end of this structure
756 */
757struct bpf_sock_ops {
758 __u32 op;
759 union {
760 __u32 reply;
761 __u32 replylong[4];
762 };
763 __u32 family;
764 __u32 remote_ip4; /* Stored in network byte order */
765 __u32 local_ip4; /* Stored in network byte order */
766 __u32 remote_ip6[4]; /* Stored in network byte order */
767 __u32 local_ip6[4]; /* Stored in network byte order */
768 __u32 remote_port; /* Stored in network byte order */
769 __u32 local_port; /* stored in host byte order */
770};
771
772/* List of known BPF sock_ops operators.
773 * New entries can only be added at the end
774 */
775enum {
776 BPF_SOCK_OPS_VOID,
777 BPF_SOCK_OPS_TIMEOUT_INIT, /* Should return SYN-RTO value to use or
778 * -1 if default value should be used
779 */
780 BPF_SOCK_OPS_RWND_INIT, /* Should return initial advertized
781 * window (in packets) or -1 if default
782 * value should be used
783 */
784 BPF_SOCK_OPS_TCP_CONNECT_CB, /* Calls BPF program right before an
785 * active connection is initialized
786 */
787 BPF_SOCK_OPS_ACTIVE_ESTABLISHED_CB, /* Calls BPF program when an
788 * active connection is
789 * established
790 */
791 BPF_SOCK_OPS_PASSIVE_ESTABLISHED_CB, /* Calls BPF program when a
792 * passive connection is
793 * established
794 */
795 BPF_SOCK_OPS_NEEDS_ECN, /* If connection's congestion control
796 * needs ECN
797 */
798};
799
800#define TCP_BPF_IW 1001 /* Set TCP initial congestion window */
801#define TCP_BPF_SNDCWND_CLAMP 1002 /* Set sndcwnd_clamp */
802
673#endif /* _UAPI__LINUX_BPF_H__ */803#endif /* _UAPI__LINUX_BPF_H__ */
include/uapi/linux/btrfs.h+43−20
@@ -426,31 +426,54 @@ struct btrfs_ioctl_ino_lookup_args { · 425 unmodified lines
426 char name[BTRFS_INO_LOOKUP_PATH_MAX];426 char name[BTRFS_INO_LOOKUP_PATH_MAX];
427};427};
428 428
429/* Search criteria for the btrfs SEARCH ioctl family. */
429struct btrfs_ioctl_search_key {430struct btrfs_ioctl_search_key {
430 /* which root are we searching. 0 is the tree of tree roots */431 /*
431 __u64 tree_id;432 * The tree we're searching in. 1 is the tree of tree roots, 2 is the
432 433 * extent tree, etc...
433 /* keys returned will be >= min and <= max */434 *
434 __u64 min_objectid;435 * A special tree_id value of 0 will cause a search in the subvolume
435 __u64 max_objectid;436 * tree that the inode which is passed to the ioctl is part of.
436 437 */
437 /* keys returned will be >= min and <= max */438 __u64 tree_id; /* in */
438 __u64 min_offset;
439 __u64 max_offset;
440
441 /* max and min transids to search for */
442 __u64 min_transid;
443 __u64 max_transid;
444 439
445 /* keys returned will be >= min and <= max */440 /*
446 __u32 min_type;441 * When doing a tree search, we're actually taking a slice from a
447 __u32 max_type;442 * linear search space of 136-bit keys.
443 *
444 * A full 136-bit tree key is composed as:
445 * (objectid << 72) + (type << 64) + offset
446 *
447 * The individual min and max values for objectid, type and offset
448 * define the min_key and max_key values for the search range. All
449 * metadata items with a key in the interval [min_key, max_key] will be
450 * returned.
451 *
452 * Additionally, we can filter the items returned on transaction id of
453 * the metadata block they're stored in by specifying a transid range.
454 * Be aware that this transaction id only denotes when the metadata
455 * page that currently contains the item got written the last time as
456 * result of a COW operation. The number does not have any meaning
457 * related to the transaction in which an individual item that is being
458 * returned was created or changed.
459 */
460 __u64 min_objectid; /* in */
461 __u64 max_objectid; /* in */
462 __u64 min_offset; /* in */
463 __u64 max_offset; /* in */
464 __u64 min_transid; /* in */
465 __u64 max_transid; /* in */
466 __u32 min_type; /* in */
467 __u32 max_type; /* in */
448 468
449 /*469 /*
450 * how many items did userland ask for, and how many are we470 * input: The maximum amount of results desired.
451 * returning471 * output: The actual amount of items returned, restricted by any of:
472 * - reaching the upper bound of the search range
473 * - reaching the input nr_items amount of items
474 * - completely filling the supplied memory buffer
452 */475 */
453 __u32 nr_items;476 __u32 nr_items; /* in/out */
454 477
455 /* align to 64 bits */478 /* align to 64 bits */
456 __u32 unused;479 __u32 unused;
include/uapi/linux/cec.h+2−0
@@ -336,6 +336,8 @@ static inline int cec_is_unconfigured(__u16 log_addr_mask) · 335 unmodified lines
336#define CEC_CAP_RC (1 << 4)336#define CEC_CAP_RC (1 << 4)
337/* Hardware can monitor all messages, not just directed and broadcast. */337/* Hardware can monitor all messages, not just directed and broadcast. */
338#define CEC_CAP_MONITOR_ALL (1 << 5)338#define CEC_CAP_MONITOR_ALL (1 << 5)
339/* Hardware can use CEC only if the HDMI HPD pin is high. */
340#define CEC_CAP_NEEDS_HPD (1 << 6)
339 341
340/**342/**
341 * struct cec_caps - CEC capabilities structure.343 * struct cec_caps - CEC capabilities structure.
include/uapi/linux/dm-ioctl.h+3−1
@@ -240,7 +240,8 @@ enum { · 239 unmodified lines
240 /* Added later */240 /* Added later */
241 DM_LIST_VERSIONS_CMD,241 DM_LIST_VERSIONS_CMD,
242 DM_TARGET_MSG_CMD,242 DM_TARGET_MSG_CMD,
243 DM_DEV_SET_GEOMETRY_CMD243 DM_DEV_SET_GEOMETRY_CMD,
244 DM_DEV_ARM_POLL_CMD,
244};245};
245 246
246#define DM_IOCTL 0xfd247#define DM_IOCTL 0xfd
@@ -255,6 +256,7 @@ enum { · 8 unmodified lines
255#define DM_DEV_SUSPEND _IOWR(DM_IOCTL, DM_DEV_SUSPEND_CMD, struct dm_ioctl)256#define DM_DEV_SUSPEND _IOWR(DM_IOCTL, DM_DEV_SUSPEND_CMD, struct dm_ioctl)
256#define DM_DEV_STATUS _IOWR(DM_IOCTL, DM_DEV_STATUS_CMD, struct dm_ioctl)257#define DM_DEV_STATUS _IOWR(DM_IOCTL, DM_DEV_STATUS_CMD, struct dm_ioctl)
257#define DM_DEV_WAIT _IOWR(DM_IOCTL, DM_DEV_WAIT_CMD, struct dm_ioctl)258#define DM_DEV_WAIT _IOWR(DM_IOCTL, DM_DEV_WAIT_CMD, struct dm_ioctl)
259#define DM_DEV_ARM_POLL _IOWR(DM_IOCTL, DM_DEV_ARM_POLL_CMD, struct dm_ioctl)
258 260
259#define DM_TABLE_LOAD _IOWR(DM_IOCTL, DM_TABLE_LOAD_CMD, struct dm_ioctl)261#define DM_TABLE_LOAD _IOWR(DM_IOCTL, DM_TABLE_LOAD_CMD, struct dm_ioctl)
260#define DM_TABLE_CLEAR _IOWR(DM_IOCTL, DM_TABLE_CLEAR_CMD, struct dm_ioctl)262#define DM_TABLE_CLEAR _IOWR(DM_IOCTL, DM_TABLE_CLEAR_CMD, struct dm_ioctl)
include/uapi/linux/dvb/video.h+2−1
@@ -134,7 +134,8 @@ struct video_event { · 133 unmodified lines
134#define VIDEO_EVENT_FRAME_RATE_CHANGED 2134#define VIDEO_EVENT_FRAME_RATE_CHANGED 2
135#define VIDEO_EVENT_DECODER_STOPPED 3135#define VIDEO_EVENT_DECODER_STOPPED 3
136#define VIDEO_EVENT_VSYNC 4136#define VIDEO_EVENT_VSYNC 4
137 __kernel_time_t timestamp;137 /* unused, make sure to use atomic time for y2038 if it ever gets used */
138 long timestamp;
138 union {139 union {
139 video_size_t size;140 video_size_t size;
140 unsigned int frame_rate; /* in frames per 1000sec */141 unsigned int frame_rate; /* in frames per 1000sec */
include/uapi/linux/fs.h+2−0
@@ -272,6 +272,8 @@ struct fsxattr { · 271 unmodified lines
272#define FS_ENCRYPTION_MODE_AES_256_GCM 2272#define FS_ENCRYPTION_MODE_AES_256_GCM 2
273#define FS_ENCRYPTION_MODE_AES_256_CBC 3273#define FS_ENCRYPTION_MODE_AES_256_CBC 3
274#define FS_ENCRYPTION_MODE_AES_256_CTS 4274#define FS_ENCRYPTION_MODE_AES_256_CTS 4
275#define FS_ENCRYPTION_MODE_AES_128_CBC 5
276#define FS_ENCRYPTION_MODE_AES_128_CTS 6
275 277
276struct fscrypt_policy {278struct fscrypt_policy {
277 __u8 version;279 __u8 version;
include/uapi/linux/if_link.h+18−2
@@ -157,6 +157,7 @@ enum { · 156 unmodified lines
157 IFLA_GSO_MAX_SIZE,157 IFLA_GSO_MAX_SIZE,
158 IFLA_PAD,158 IFLA_PAD,
159 IFLA_XDP,159 IFLA_XDP,
160 IFLA_EVENT,
160 __IFLA_MAX161 __IFLA_MAX
161};162};
162 163
@@ -890,15 +891,19 @@ enum { · 727 unmodified lines
890#define XDP_FLAGS_UPDATE_IF_NOEXIST (1U << 0)891#define XDP_FLAGS_UPDATE_IF_NOEXIST (1U << 0)
891#define XDP_FLAGS_SKB_MODE (1U << 1)892#define XDP_FLAGS_SKB_MODE (1U << 1)
892#define XDP_FLAGS_DRV_MODE (1U << 2)893#define XDP_FLAGS_DRV_MODE (1U << 2)
894#define XDP_FLAGS_HW_MODE (1U << 3)
895#define XDP_FLAGS_MODES (XDP_FLAGS_SKB_MODE | \
896 XDP_FLAGS_DRV_MODE | \
897 XDP_FLAGS_HW_MODE)
893#define XDP_FLAGS_MASK (XDP_FLAGS_UPDATE_IF_NOEXIST | \898#define XDP_FLAGS_MASK (XDP_FLAGS_UPDATE_IF_NOEXIST | \
894 XDP_FLAGS_SKB_MODE | \899 XDP_FLAGS_MODES)
895 XDP_FLAGS_DRV_MODE)
896 900
897/* These are stored into IFLA_XDP_ATTACHED on dump. */901/* These are stored into IFLA_XDP_ATTACHED on dump. */
898enum {902enum {
899 XDP_ATTACHED_NONE = 0,903 XDP_ATTACHED_NONE = 0,
900 XDP_ATTACHED_DRV,904 XDP_ATTACHED_DRV,
901 XDP_ATTACHED_SKB,905 XDP_ATTACHED_SKB,
906 XDP_ATTACHED_HW,
902};907};
903 908
904enum {909enum {
@@ -906,9 +911,20 @@ enum { · 1 unmodified line
906 IFLA_XDP_FD,911 IFLA_XDP_FD,
907 IFLA_XDP_ATTACHED,912 IFLA_XDP_ATTACHED,
908 IFLA_XDP_FLAGS,913 IFLA_XDP_FLAGS,
914 IFLA_XDP_PROG_ID,
909 __IFLA_XDP_MAX,915 __IFLA_XDP_MAX,
910};916};
911 917
912#define IFLA_XDP_MAX (__IFLA_XDP_MAX - 1)918#define IFLA_XDP_MAX (__IFLA_XDP_MAX - 1)
913 919
920enum {
921 IFLA_EVENT_NONE,
922 IFLA_EVENT_REBOOT, /* internal reset / reboot */
923 IFLA_EVENT_FEATURES, /* change in offload features */
924 IFLA_EVENT_BONDING_FAILOVER, /* change in active slave */
925 IFLA_EVENT_NOTIFY_PEERS, /* re-sent grat. arp/ndisc */
926 IFLA_EVENT_IGMP_RESEND, /* re-sent IGMP JOIN */
927 IFLA_EVENT_BONDING_OPTIONS, /* change in bonding options */
928};
929
914#endif /* _UAPI_LINUX_IF_LINK_H */930#endif /* _UAPI_LINUX_IF_LINK_H */
include/uapi/linux/input-event-codes.h+1−0
@@ -600,6 +600,7 @@ · 599 unmodified lines
600#define KEY_APPSELECT 0x244 /* AL Select Task/Application */600#define KEY_APPSELECT 0x244 /* AL Select Task/Application */
601#define KEY_SCREENSAVER 0x245 /* AL Screen Saver */601#define KEY_SCREENSAVER 0x245 /* AL Screen Saver */
602#define KEY_VOICECOMMAND 0x246 /* Listening Voice Command */602#define KEY_VOICECOMMAND 0x246 /* Listening Voice Command */
603#define KEY_ASSISTANT 0x247 /* AL Context-aware desktop assistant */
603 604
604#define KEY_BRIGHTNESS_MIN 0x250 /* Set Brightness to Minimum */605#define KEY_BRIGHTNESS_MIN 0x250 /* Set Brightness to Minimum */
605#define KEY_BRIGHTNESS_MAX 0x251 /* Set Brightness to Maximum */606#define KEY_BRIGHTNESS_MAX 0x251 /* Set Brightness to Maximum */
include/uapi/linux/kcmp.h+10−0
@@ -1,6 +1,8 @@
1#ifndef _UAPI_LINUX_KCMP_H1#ifndef _UAPI_LINUX_KCMP_H
2#define _UAPI_LINUX_KCMP_H2#define _UAPI_LINUX_KCMP_H
3 3
4#include <linux/types.h>
5
4/* Comparison type */6/* Comparison type */
5enum kcmp_type {7enum kcmp_type {
6 KCMP_FILE,8 KCMP_FILE,
@@ -10,8 +12,16 @@ enum kcmp_type { · 3 unmodified lines
10 KCMP_SIGHAND,12 KCMP_SIGHAND,
11 KCMP_IO,13 KCMP_IO,
12 KCMP_SYSVSEM,14 KCMP_SYSVSEM,
15 KCMP_EPOLL_TFD,
13 16
14 KCMP_TYPES,17 KCMP_TYPES,
15};18};
16 19
20/* Slot for KCMP_EPOLL_TFD */
21struct kcmp_epoll_slot {
22 __u32 efd; /* epoll file descriptor */
23 __u32 tfd; /* target file number */
24 __u32 toff; /* target offset within same numbered sequence */
25};
26
17#endif /* _UAPI_LINUX_KCMP_H */27#endif /* _UAPI_LINUX_KCMP_H */
include/uapi/linux/kvm.h+37−0
@@ -155,6 +155,35 @@ struct kvm_s390_skeys { · 154 unmodified lines
155 __u32 reserved[9];155 __u32 reserved[9];
156};156};
157 157
158#define KVM_S390_CMMA_PEEK (1 << 0)
159
160/**
161 * kvm_s390_cmma_log - Used for CMMA migration.
162 *
163 * Used both for input and output.
164 *
165 * @start_gfn: Guest page number to start from.
166 * @count: Size of the result buffer.
167 * @flags: Control operation mode via KVM_S390_CMMA_* flags
168 * @remaining: Used with KVM_S390_GET_CMMA_BITS. Indicates how many dirty
169 * pages are still remaining.
170 * @mask: Used with KVM_S390_SET_CMMA_BITS. Bitmap of bits to actually set
171 * in the PGSTE.
172 * @values: Pointer to the values buffer.
173 *
174 * Used in KVM_S390_{G,S}ET_CMMA_BITS ioctls.
175 */
176struct kvm_s390_cmma_log {
177 __u64 start_gfn;
178 __u32 count;
179 __u32 flags;
180 union {
181 __u64 remaining;
182 __u64 mask;
183 };
184 __u64 values;
185};
186
158struct kvm_hyperv_exit {187struct kvm_hyperv_exit {
159#define KVM_EXIT_HYPERV_SYNIC 1188#define KVM_EXIT_HYPERV_SYNIC 1
160#define KVM_EXIT_HYPERV_HCALL 2189#define KVM_EXIT_HYPERV_HCALL 2
@@ -895,6 +924,11 @@ struct kvm_ppc_resize_hpt { · 734 unmodified lines
895#define KVM_CAP_SPAPR_TCE_VFIO 142924#define KVM_CAP_SPAPR_TCE_VFIO 142
896#define KVM_CAP_X86_GUEST_MWAIT 143925#define KVM_CAP_X86_GUEST_MWAIT 143
897#define KVM_CAP_ARM_USER_IRQ 144926#define KVM_CAP_ARM_USER_IRQ 144
927#define KVM_CAP_S390_CMMA_MIGRATION 145
928#define KVM_CAP_PPC_FWNMI 146
929#define KVM_CAP_PPC_SMT_POSSIBLE 147
930#define KVM_CAP_HYPERV_SYNIC2 148
931#define KVM_CAP_HYPERV_VP_INDEX 149
898 932
899#ifdef KVM_CAP_IRQ_ROUTING933#ifdef KVM_CAP_IRQ_ROUTING
900 934
@@ -1318,6 +1352,9 @@ struct kvm_s390_ucas_mapping { · 417 unmodified lines
1318#define KVM_S390_GET_IRQ_STATE _IOW(KVMIO, 0xb6, struct kvm_s390_irq_state)1352#define KVM_S390_GET_IRQ_STATE _IOW(KVMIO, 0xb6, struct kvm_s390_irq_state)
1319/* Available with KVM_CAP_X86_SMM */1353/* Available with KVM_CAP_X86_SMM */
1320#define KVM_SMI _IO(KVMIO, 0xb7)1354#define KVM_SMI _IO(KVMIO, 0xb7)
1355/* Available with KVM_CAP_S390_CMMA_MIGRATION */
1356#define KVM_S390_GET_CMMA_BITS _IOWR(KVMIO, 0xb8, struct kvm_s390_cmma_log)
1357#define KVM_S390_SET_CMMA_BITS _IOW(KVMIO, 0xb9, struct kvm_s390_cmma_log)
1321 1358
1322#define KVM_DEV_ASSIGN_ENABLE_IOMMU (1 << 0)1359#define KVM_DEV_ASSIGN_ENABLE_IOMMU (1 << 0)
1323#define KVM_DEV_ASSIGN_PCI_2_3 (1 << 1)1360#define KVM_DEV_ASSIGN_PCI_2_3 (1 << 1)
include/uapi/linux/magic.h+3−0
@@ -42,6 +42,7 @@ · 41 unmodified lines
42#define MSDOS_SUPER_MAGIC 0x4d44 /* MD */42#define MSDOS_SUPER_MAGIC 0x4d44 /* MD */
43#define NCP_SUPER_MAGIC 0x564c /* Guess, what 0x564c is :-) */43#define NCP_SUPER_MAGIC 0x564c /* Guess, what 0x564c is :-) */
44#define NFS_SUPER_MAGIC 0x696944#define NFS_SUPER_MAGIC 0x6969
45#define OCFS2_SUPER_MAGIC 0x7461636f
45#define OPENPROM_SUPER_MAGIC 0x9fa146#define OPENPROM_SUPER_MAGIC 0x9fa1
46#define QNX4_SUPER_MAGIC 0x002f /* qnx4 fs detection */47#define QNX4_SUPER_MAGIC 0x002f /* qnx4 fs detection */
47#define QNX6_SUPER_MAGIC 0x68191122 /* qnx6 fs detection */48#define QNX6_SUPER_MAGIC 0x68191122 /* qnx6 fs detection */
@@ -80,6 +81,8 @@ · 32 unmodified lines
80#define BTRFS_TEST_MAGIC 0x7372727981#define BTRFS_TEST_MAGIC 0x73727279
81#define NSFS_MAGIC 0x6e73667382#define NSFS_MAGIC 0x6e736673
82#define BPF_FS_MAGIC 0xcafe4a1183#define BPF_FS_MAGIC 0xcafe4a11
84#define AAFS_MAGIC 0x5a3c69f0
85
83/* Since UDF 2.01 is ISO 13346 based... */86/* Since UDF 2.01 is ISO 13346 based... */
84#define UDF_SUPER_MAGIC 0x1501334687#define UDF_SUPER_MAGIC 0x15013346
85#define BALLOON_KVM_MAGIC 0x1366136688#define BALLOON_KVM_MAGIC 0x13661366
include/uapi/linux/max2175.h+28−0
@@ -0,0 +1,28 @@
1/*
2 * max2175.h
3 *
4 * Maxim Integrated MAX2175 RF to Bits tuner driver - user space header file.
5 *
6 * Copyright (C) 2016 Maxim Integrated Products
7 * Copyright (C) 2017 Renesas Electronics Corporation
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License version 2
11 * as published by the Free Software Foundation.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 */
18
19#ifndef __UAPI_MAX2175_H_
20#define __UAPI_MAX2175_H_
21
22#include <linux/v4l2-controls.h>
23
24#define V4L2_CID_MAX2175_I2S_ENABLE (V4L2_CID_USER_MAX217X_BASE + 0x01)
25#define V4L2_CID_MAX2175_HSLS (V4L2_CID_USER_MAX217X_BASE + 0x02)
26#define V4L2_CID_MAX2175_RX_MODE (V4L2_CID_USER_MAX217X_BASE + 0x03)
27
28#endif /* __UAPI_MAX2175_H_ */
include/uapi/linux/media.h+6−0
@@ -104,6 +104,12 @@ struct media_device_info { · 103 unmodified lines
104#define MEDIA_ENT_F_PROC_VIDEO_SCALER (MEDIA_ENT_F_BASE + 0x4005)104#define MEDIA_ENT_F_PROC_VIDEO_SCALER (MEDIA_ENT_F_BASE + 0x4005)
105#define MEDIA_ENT_F_PROC_VIDEO_STATISTICS (MEDIA_ENT_F_BASE + 0x4006)105#define MEDIA_ENT_F_PROC_VIDEO_STATISTICS (MEDIA_ENT_F_BASE + 0x4006)
106 106
107/*
108 * Switch and bridge entitites
109 */
110#define MEDIA_ENT_F_VID_MUX (MEDIA_ENT_F_BASE + 0x5001)
111#define MEDIA_ENT_F_VID_IF_BRIDGE (MEDIA_ENT_F_BASE + 0x5002)
112
107/*113/*
108 * Connectors114 * Connectors
109 */115 */
include/uapi/linux/mempolicy.h+0−8
@@ -24,13 +24,6 @@ enum { · 23 unmodified lines
24 MPOL_MAX, /* always last member of enum */24 MPOL_MAX, /* always last member of enum */
25};25};
26 26
27enum mpol_rebind_step {
28 MPOL_REBIND_ONCE, /* do rebind work at once(not by two step) */
29 MPOL_REBIND_STEP1, /* first step(set all the newly nodes) */
30 MPOL_REBIND_STEP2, /* second step(clean all the disallowed nodes)*/
31 MPOL_REBIND_NSTEP,
32};
33
34/* Flags for set_mempolicy */27/* Flags for set_mempolicy */
35#define MPOL_F_STATIC_NODES (1 << 15)28#define MPOL_F_STATIC_NODES (1 << 15)
36#define MPOL_F_RELATIVE_NODES (1 << 14)29#define MPOL_F_RELATIVE_NODES (1 << 14)
@@ -65,7 +58,6 @@ enum mpol_rebind_step { · 28 unmodified lines
65 */58 */
66#define MPOL_F_SHARED (1 << 0) /* identify shared policies */59#define MPOL_F_SHARED (1 << 0) /* identify shared policies */
67#define MPOL_F_LOCAL (1 << 1) /* preferred local allocation */60#define MPOL_F_LOCAL (1 << 1) /* preferred local allocation */
68#define MPOL_F_REBINDING (1 << 2) /* identify policies in rebinding */
69#define MPOL_F_MOF (1 << 3) /* this policy wants migrate on fault */61#define MPOL_F_MOF (1 << 3) /* this policy wants migrate on fault */
70#define MPOL_F_MORON (1 << 4) /* Migrate On protnone Reference On Node */62#define MPOL_F_MORON (1 << 4) /* Migrate On protnone Reference On Node */
71 63
include/uapi/linux/mroute.h+54−0
@@ -110,6 +110,60 @@ struct igmpmsg { · 109 unmodified lines
110 struct in_addr im_src,im_dst;110 struct in_addr im_src,im_dst;
111};111};
112 112
113/* ipmr netlink table attributes */
114enum {
115 IPMRA_TABLE_UNSPEC,
116 IPMRA_TABLE_ID,
117 IPMRA_TABLE_CACHE_RES_QUEUE_LEN,
118 IPMRA_TABLE_MROUTE_REG_VIF_NUM,
119 IPMRA_TABLE_MROUTE_DO_ASSERT,
120 IPMRA_TABLE_MROUTE_DO_PIM,
121 IPMRA_TABLE_VIFS,
122 __IPMRA_TABLE_MAX
123};
124#define IPMRA_TABLE_MAX (__IPMRA_TABLE_MAX - 1)
125
126/* ipmr netlink vif attribute format
127 * [ IPMRA_TABLE_VIFS ] - nested attribute
128 * [ IPMRA_VIF ] - nested attribute
129 * [ IPMRA_VIFA_xxx ]
130 */
131enum {
132 IPMRA_VIF_UNSPEC,
133 IPMRA_VIF,
134 __IPMRA_VIF_MAX
135};
136#define IPMRA_VIF_MAX (__IPMRA_VIF_MAX - 1)
137
138/* vif-specific attributes */
139enum {
140 IPMRA_VIFA_UNSPEC,
141 IPMRA_VIFA_IFINDEX,
142 IPMRA_VIFA_VIF_ID,
143 IPMRA_VIFA_FLAGS,
144 IPMRA_VIFA_BYTES_IN,
145 IPMRA_VIFA_BYTES_OUT,
146 IPMRA_VIFA_PACKETS_IN,
147 IPMRA_VIFA_PACKETS_OUT,
148 IPMRA_VIFA_LOCAL_ADDR,
149 IPMRA_VIFA_REMOTE_ADDR,
150 IPMRA_VIFA_PAD,
151 __IPMRA_VIFA_MAX
152};
153#define IPMRA_VIFA_MAX (__IPMRA_VIFA_MAX - 1)
154
155/* ipmr netlink cache report attributes */
156enum {
157 IPMRA_CREPORT_UNSPEC,
158 IPMRA_CREPORT_MSGTYPE,
159 IPMRA_CREPORT_VIF_ID,
160 IPMRA_CREPORT_SRC_ADDR,
161 IPMRA_CREPORT_DST_ADDR,
162 IPMRA_CREPORT_PKT,
163 __IPMRA_CREPORT_MAX
164};
165#define IPMRA_CREPORT_MAX (__IPMRA_CREPORT_MAX - 1)
166
113/* That's all usermode folks */167/* That's all usermode folks */
114 168
115#define MFC_ASSERT_THRESH (3*HZ) /* Maximal freq. of asserts */169#define MFC_ASSERT_THRESH (3*HZ) /* Maximal freq. of asserts */
include/uapi/linux/mroute6.h+12−0
@@ -133,4 +133,16 @@ struct mrt6msg { · 132 unmodified lines
133 struct in6_addr im6_src, im6_dst;133 struct in6_addr im6_src, im6_dst;
134};134};
135 135
136/* ip6mr netlink cache report attributes */
137enum {
138 IP6MRA_CREPORT_UNSPEC,
139 IP6MRA_CREPORT_MSGTYPE,
140 IP6MRA_CREPORT_MIF_ID,
141 IP6MRA_CREPORT_SRC_ADDR,
142 IP6MRA_CREPORT_DST_ADDR,
143 IP6MRA_CREPORT_PKT,
144 __IP6MRA_CREPORT_MAX
145};
146#define IP6MRA_CREPORT_MAX (__IP6MRA_CREPORT_MAX - 1)
147
136#endif /* _UAPI__LINUX_MROUTE6_H */148#endif /* _UAPI__LINUX_MROUTE6_H */
include/uapi/linux/ndctl.h+41−1
@@ -105,7 +105,8 @@ struct nd_cmd_ars_cap { · 104 unmodified lines
105 __u32 status;105 __u32 status;
106 __u32 max_ars_out;106 __u32 max_ars_out;
107 __u32 clear_err_unit;107 __u32 clear_err_unit;
108 __u32 reserved;108 __u16 flags;
109 __u16 reserved;
109} __packed;110} __packed;
110 111
111struct nd_cmd_ars_start {112struct nd_cmd_ars_start {
@@ -144,6 +145,43 @@ struct nd_cmd_clear_error { · 32 unmodified lines
144 __u64 cleared;145 __u64 cleared;
145} __packed;146} __packed;
146 147
148struct nd_cmd_trans_spa {
149 __u64 spa;
150 __u32 status;
151 __u8 flags;
152 __u8 _reserved[3];
153 __u64 trans_length;
154 __u32 num_nvdimms;
155 struct nd_nvdimm_device {
156 __u32 nfit_device_handle;
157 __u32 _reserved;
158 __u64 dpa;
159 } __packed devices[0];
160
161} __packed;
162
163struct nd_cmd_ars_err_inj {
164 __u64 err_inj_spa_range_base;
165 __u64 err_inj_spa_range_length;
166 __u8 err_inj_options;
167 __u32 status;
168} __packed;
169
170struct nd_cmd_ars_err_inj_clr {
171 __u64 err_inj_clr_spa_range_base;
172 __u64 err_inj_clr_spa_range_length;
173 __u32 status;
174} __packed;
175
176struct nd_cmd_ars_err_inj_stat {
177 __u32 status;
178 __u32 inj_err_rec_count;
179 struct nd_error_stat_query_record {
180 __u64 err_inj_stat_spa_range_base;
181 __u64 err_inj_stat_spa_range_length;
182 } __packed record[0];
183} __packed;
184
147enum {185enum {
148 ND_CMD_IMPLEMENTED = 0,186 ND_CMD_IMPLEMENTED = 0,
149 187
@@ -169,6 +207,7 @@ enum { · 19 unmodified lines
169enum {207enum {
170 ND_ARS_VOLATILE = 1,208 ND_ARS_VOLATILE = 1,
171 ND_ARS_PERSISTENT = 2,209 ND_ARS_PERSISTENT = 2,
210 ND_ARS_RETURN_PREV_DATA = 1 << 1,
172 ND_CONFIG_LOCKED = 1,211 ND_CONFIG_LOCKED = 1,
173};212};
174 213
@@ -179,6 +218,7 @@ static inline const char *nvdimm_bus_cmd_name(unsigned cmd) · 4 unmodified lines
179 [ND_CMD_ARS_START] = "ars_start",218 [ND_CMD_ARS_START] = "ars_start",
180 [ND_CMD_ARS_STATUS] = "ars_status",219 [ND_CMD_ARS_STATUS] = "ars_status",
181 [ND_CMD_CLEAR_ERROR] = "clear_error",220 [ND_CMD_CLEAR_ERROR] = "clear_error",
221 [ND_CMD_CALL] = "cmd_call",
182 };222 };
183 223
184 if (cmd < ARRAY_SIZE(names) && names[cmd])224 if (cmd < ARRAY_SIZE(names) && names[cmd])
include/uapi/linux/neighbour.h+1−0
@@ -41,6 +41,7 @@ enum { · 40 unmodified lines
41#define NTF_MASTER 0x0441#define NTF_MASTER 0x04
42#define NTF_PROXY 0x08 /* == ATF_PUBL */42#define NTF_PROXY 0x08 /* == ATF_PUBL */
43#define NTF_EXT_LEARNED 0x1043#define NTF_EXT_LEARNED 0x10
44#define NTF_OFFLOADED 0x20
44#define NTF_ROUTER 0x8045#define NTF_ROUTER 0x80
45 46
46/*47/*
include/uapi/linux/net_tstamp.h+14−1
@@ -9,6 +9,7 @@ · 8 unmodified lines
9#ifndef _NET_TIMESTAMPING_H9#ifndef _NET_TIMESTAMPING_H
10#define _NET_TIMESTAMPING_H10#define _NET_TIMESTAMPING_H
11 11
12#include <linux/types.h>
12#include <linux/socket.h> /* for SO_TIMESTAMPING */13#include <linux/socket.h> /* for SO_TIMESTAMPING */
13 14
14/* SO_TIMESTAMPING gets an integer bit field comprised of these values */15/* SO_TIMESTAMPING gets an integer bit field comprised of these values */
@@ -26,8 +27,10 @@ enum { · 11 unmodified lines
26 SOF_TIMESTAMPING_OPT_CMSG = (1<<10),27 SOF_TIMESTAMPING_OPT_CMSG = (1<<10),
27 SOF_TIMESTAMPING_OPT_TSONLY = (1<<11),28 SOF_TIMESTAMPING_OPT_TSONLY = (1<<11),
28 SOF_TIMESTAMPING_OPT_STATS = (1<<12),29 SOF_TIMESTAMPING_OPT_STATS = (1<<12),
30 SOF_TIMESTAMPING_OPT_PKTINFO = (1<<13),
31 SOF_TIMESTAMPING_OPT_TX_SWHW = (1<<14),
29 32
30 SOF_TIMESTAMPING_LAST = SOF_TIMESTAMPING_OPT_STATS,33 SOF_TIMESTAMPING_LAST = SOF_TIMESTAMPING_OPT_TX_SWHW,
31 SOF_TIMESTAMPING_MASK = (SOF_TIMESTAMPING_LAST - 1) |34 SOF_TIMESTAMPING_MASK = (SOF_TIMESTAMPING_LAST - 1) |
32 SOF_TIMESTAMPING_LAST35 SOF_TIMESTAMPING_LAST
33};36};
@@ -125,6 +128,16 @@ enum hwtstamp_rx_filters { · 91 unmodified lines
125 HWTSTAMP_FILTER_PTP_V2_SYNC,128 HWTSTAMP_FILTER_PTP_V2_SYNC,
126 /* PTP v2/802.AS1, any layer, Delay_req packet */129 /* PTP v2/802.AS1, any layer, Delay_req packet */
127 HWTSTAMP_FILTER_PTP_V2_DELAY_REQ,130 HWTSTAMP_FILTER_PTP_V2_DELAY_REQ,
131
132 /* NTP, UDP, all versions and packet modes */
133 HWTSTAMP_FILTER_NTP_ALL,
134};
135
136/* SCM_TIMESTAMPING_PKTINFO control message */
137struct scm_ts_pktinfo {
138 __u32 if_index;
139 __u32 pkt_length;
140 __u32 reserved[2];
128};141};
129 142
130#endif /* _NET_TIMESTAMPING_H */143#endif /* _NET_TIMESTAMPING_H */
include/uapi/linux/nl80211.h+73−9
@@ -172,6 +172,29 @@ · 171 unmodified lines
172 * Multiple such rules can be created.172 * Multiple such rules can be created.
173 */173 */
174 174
175/**
176 * DOC: WPA/WPA2 EAPOL handshake offload
177 *
178 * By setting @NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_PSK flag drivers
179 * can indicate they support offloading EAPOL handshakes for WPA/WPA2
180 * preshared key authentication. In %NL80211_CMD_CONNECT the preshared
181 * key should be specified using %NL80211_ATTR_PMK. Drivers supporting
182 * this offload may reject the %NL80211_CMD_CONNECT when no preshared
183 * key material is provided, for example when that driver does not
184 * support setting the temporal keys through %CMD_NEW_KEY.
185 *
186 * Similarly @NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_1X flag can be
187 * set by drivers indicating offload support of the PTK/GTK EAPOL
188 * handshakes during 802.1X authentication. In order to use the offload
189 * the %NL80211_CMD_CONNECT should have %NL80211_ATTR_WANT_1X_4WAY_HS
190 * attribute flag. Drivers supporting this offload may reject the
191 * %NL80211_CMD_CONNECT when the attribute flag is not present.
192 *
193 * For 802.1X the PMK or PMK-R0 are set by providing %NL80211_ATTR_PMK
194 * using %NL80211_CMD_SET_PMK. For offloaded FT support also
195 * %NL80211_ATTR_PMKR0_NAME must be provided.
196 */
197
175/**198/**
176 * DOC: FILS shared key authentication offload199 * DOC: FILS shared key authentication offload
177 *200 *
@@ -546,8 +569,13 @@ · 368 unmodified lines
546 * authentication/association or not receiving a response from the AP.569 * authentication/association or not receiving a response from the AP.
547 * Non-zero %NL80211_ATTR_STATUS_CODE value is indicated in that case as570 * Non-zero %NL80211_ATTR_STATUS_CODE value is indicated in that case as
548 * well to remain backwards compatible.571 * well to remain backwards compatible.
549 * @NL80211_CMD_ROAM: request that the card roam (currently not implemented),572 * @NL80211_CMD_ROAM: notifcation indicating the card/driver roamed by itself.
550 * sent as an event when the card/driver roamed by itself.573 * When the driver roamed in a network that requires 802.1X authentication,
574 * %NL80211_ATTR_PORT_AUTHORIZED should be set if the 802.1X authentication
575 * was done by the driver or if roaming was done using Fast Transition
576 * protocol (in which case 802.1X authentication is not needed). If
577 * %NL80211_ATTR_PORT_AUTHORIZED is not set, user space is responsible for
578 * the 802.1X authentication.
551 * @NL80211_CMD_DISCONNECT: drop a given connection; also used to notify579 * @NL80211_CMD_DISCONNECT: drop a given connection; also used to notify
552 * userspace that a connection was dropped by the AP or due to other580 * userspace that a connection was dropped by the AP or due to other
553 * reasons, for this the %NL80211_ATTR_DISCONNECTED_BY_AP and581 * reasons, for this the %NL80211_ATTR_DISCONNECTED_BY_AP and
@@ -947,6 +975,14 @@ · 393 unmodified lines
947 * does not result in a change for the current association. Currently,975 * does not result in a change for the current association. Currently,
948 * only the %NL80211_ATTR_IE data is used and updated with this command.976 * only the %NL80211_ATTR_IE data is used and updated with this command.
949 *977 *
978 * @NL80211_CMD_SET_PMK: For offloaded 4-Way handshake, set the PMK or PMK-R0
979 * for the given authenticator address (specified with &NL80211_ATTR_MAC).
980 * When &NL80211_ATTR_PMKR0_NAME is set, &NL80211_ATTR_PMK specifies the
981 * PMK-R0, otherwise it specifies the PMK.
982 * @NL80211_CMD_DEL_PMK: For offloaded 4-Way handshake, delete the previously
983 * configured PMK for the authenticator address identified by
984 * &NL80211_ATTR_MAC.
985 *
950 * @NL80211_CMD_MAX: highest used command number986 * @NL80211_CMD_MAX: highest used command number
951 * @__NL80211_CMD_AFTER_LAST: internal use987 * @__NL80211_CMD_AFTER_LAST: internal use
952 */988 */
@@ -1146,6 +1182,9 @@ enum nl80211_commands { · 193 unmodified lines
1146 1182
1147 NL80211_CMD_UPDATE_CONNECT_PARAMS,1183 NL80211_CMD_UPDATE_CONNECT_PARAMS,
1148 1184
1185 NL80211_CMD_SET_PMK,
1186 NL80211_CMD_DEL_PMK,
1187
1149 /* add new commands above here */1188 /* add new commands above here */
1150 1189
1151 /* used to define NL80211_CMD_MAX below */1190 /* used to define NL80211_CMD_MAX below */
@@ -1870,11 +1909,10 @@ enum nl80211_commands { · 718 unmodified lines
1870 * that configured the indoor setting, and the indoor operation would be1909 * that configured the indoor setting, and the indoor operation would be
1871 * cleared when the socket is closed.1910 * cleared when the socket is closed.
1872 * If set during NAN interface creation, the interface will be destroyed1911 * If set during NAN interface creation, the interface will be destroyed
1873 * if the socket is closed just like any other interface. Moreover, only1912 * if the socket is closed just like any other interface. Moreover, NAN
1874 * the netlink socket that created the interface will be allowed to add1913 * notifications will be sent in unicast to that socket. Without this
1875 * and remove functions. NAN notifications will be sent in unicast to that1914 * attribute, the notifications will be sent to the %NL80211_MCGRP_NAN
1876 * socket. Without this attribute, any socket can add functions and the1915 * multicast group.
1877 * notifications will be sent to the %NL80211_MCGRP_NAN multicast group.
1878 * If set during %NL80211_CMD_ASSOCIATE or %NL80211_CMD_CONNECT the1916 * If set during %NL80211_CMD_ASSOCIATE or %NL80211_CMD_CONNECT the
1879 * station will deauthenticate when the socket is closed.1917 * station will deauthenticate when the socket is closed.
1880 *1918 *
@@ -2080,14 +2118,27 @@ enum nl80211_commands { · 199 unmodified lines
2080 * identifying the scope of PMKSAs. This is used with2118 * identifying the scope of PMKSAs. This is used with
2081 * @NL80211_CMD_SET_PMKSA and @NL80211_CMD_DEL_PMKSA.2119 * @NL80211_CMD_SET_PMKSA and @NL80211_CMD_DEL_PMKSA.
2082 *2120 *
2083 * @NL80211_ATTR_PMK: PMK for the PMKSA identified by %NL80211_ATTR_PMKID.2121 * @NL80211_ATTR_PMK: attribute for passing PMK key material. Used with
2084 * This is used with @NL80211_CMD_SET_PMKSA.2122 * %NL80211_CMD_SET_PMKSA for the PMKSA identified by %NL80211_ATTR_PMKID.
2123 * For %NL80211_CMD_CONNECT it is used to provide PSK for offloading 4-way
2124 * handshake for WPA/WPA2-PSK networks. For 802.1X authentication it is
2125 * used with %NL80211_CMD_SET_PMK. For offloaded FT support this attribute
2126 * specifies the PMK-R0 if NL80211_ATTR_PMKR0_NAME is included as well.
2085 *2127 *
2086 * @NL80211_ATTR_SCHED_SCAN_MULTI: flag attribute which user-space shall use to2128 * @NL80211_ATTR_SCHED_SCAN_MULTI: flag attribute which user-space shall use to
2087 * indicate that it supports multiple active scheduled scan requests.2129 * indicate that it supports multiple active scheduled scan requests.
2088 * @NL80211_ATTR_SCHED_SCAN_MAX_REQS: indicates maximum number of scheduled2130 * @NL80211_ATTR_SCHED_SCAN_MAX_REQS: indicates maximum number of scheduled
2089 * scan request that may be active for the device (u32).2131 * scan request that may be active for the device (u32).
2090 *2132 *
2133 * @NL80211_ATTR_WANT_1X_4WAY_HS: flag attribute which user-space can include
2134 * in %NL80211_CMD_CONNECT to indicate that for 802.1X authentication it
2135 * wants to use the supported offload of the 4-way handshake.
2136 * @NL80211_ATTR_PMKR0_NAME: PMK-R0 Name for offloaded FT.
2137 * @NL80211_ATTR_PORT_AUTHORIZED: flag attribute used in %NL80211_CMD_ROAMED
2138 * notification indicating that that 802.1X authentication was done by
2139 * the driver or is not needed (because roaming used the Fast Transition
2140 * protocol).
2141 *
2091 * @NUM_NL80211_ATTR: total number of nl80211_attrs available2142 * @NUM_NL80211_ATTR: total number of nl80211_attrs available
2092 * @NL80211_ATTR_MAX: highest attribute number currently defined2143 * @NL80211_ATTR_MAX: highest attribute number currently defined
2093 * @__NL80211_ATTR_AFTER_LAST: internal use2144 * @__NL80211_ATTR_AFTER_LAST: internal use
@@ -2510,6 +2561,10 @@ enum nl80211_attrs { · 416 unmodified lines
2510 NL80211_ATTR_SCHED_SCAN_MULTI,2561 NL80211_ATTR_SCHED_SCAN_MULTI,
2511 NL80211_ATTR_SCHED_SCAN_MAX_REQS,2562 NL80211_ATTR_SCHED_SCAN_MAX_REQS,
2512 2563
2564 NL80211_ATTR_WANT_1X_4WAY_HS,
2565 NL80211_ATTR_PMKR0_NAME,
2566 NL80211_ATTR_PORT_AUTHORIZED,
2567
2513 /* add attributes here, update the policy in nl80211.c */2568 /* add attributes here, update the policy in nl80211.c */
2514 2569
2515 __NL80211_ATTR_AFTER_LAST,2570 __NL80211_ATTR_AFTER_LAST,
@@ -4852,6 +4907,13 @@ enum nl80211_feature_flags { · 2336 unmodified lines
4852 * RSSI threshold values to monitor rather than exactly one threshold.4907 * RSSI threshold values to monitor rather than exactly one threshold.
4853 * @NL80211_EXT_FEATURE_FILS_SK_OFFLOAD: Driver SME supports FILS shared key4908 * @NL80211_EXT_FEATURE_FILS_SK_OFFLOAD: Driver SME supports FILS shared key
4854 * authentication with %NL80211_CMD_CONNECT.4909 * authentication with %NL80211_CMD_CONNECT.
4910 * @NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_PSK: Device wants to do 4-way
4911 * handshake with PSK in station mode (PSK is passed as part of the connect
4912 * and associate commands), doing it in the host might not be supported.
4913 * @NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_1X: Device wants to do doing 4-way
4914 * handshake with 802.1X in station mode (will pass EAP frames to the host
4915 * and accept the set_pmk/del_pmk commands), doing it in the host might not
4916 * be supported.
4855 *4917 *
4856 * @NUM_NL80211_EXT_FEATURES: number of extended features.4918 * @NUM_NL80211_EXT_FEATURES: number of extended features.
4857 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.4919 * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
@@ -4872,6 +4934,8 @@ enum nl80211_ext_feature_index { · 14 unmodified lines
4872 NL80211_EXT_FEATURE_SCHED_SCAN_RELATIVE_RSSI,4934 NL80211_EXT_FEATURE_SCHED_SCAN_RELATIVE_RSSI,
4873 NL80211_EXT_FEATURE_CQM_RSSI_LIST,4935 NL80211_EXT_FEATURE_CQM_RSSI_LIST,
4874 NL80211_EXT_FEATURE_FILS_SK_OFFLOAD,4936 NL80211_EXT_FEATURE_FILS_SK_OFFLOAD,
4937 NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_PSK,
4938 NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_1X,
4875 4939
4876 /* add new features before the definition below */4940 /* add new features before the definition below */
4877 NUM_NL80211_EXT_FEATURES,4941 NUM_NL80211_EXT_FEATURES,
include/uapi/linux/pci_regs.h+1−0
@@ -517,6 +517,7 @@ · 516 unmodified lines
517#define PCI_EXP_LNKCAP_SLS 0x0000000f /* Supported Link Speeds */517#define PCI_EXP_LNKCAP_SLS 0x0000000f /* Supported Link Speeds */
518#define PCI_EXP_LNKCAP_SLS_2_5GB 0x00000001 /* LNKCAP2 SLS Vector bit 0 */518#define PCI_EXP_LNKCAP_SLS_2_5GB 0x00000001 /* LNKCAP2 SLS Vector bit 0 */
519#define PCI_EXP_LNKCAP_SLS_5_0GB 0x00000002 /* LNKCAP2 SLS Vector bit 1 */519#define PCI_EXP_LNKCAP_SLS_5_0GB 0x00000002 /* LNKCAP2 SLS Vector bit 1 */
520#define PCI_EXP_LNKCAP_SLS_8_0GB 0x00000003 /* LNKCAP2 SLS Vector bit 2 */
520#define PCI_EXP_LNKCAP_MLW 0x000003f0 /* Maximum Link Width */521#define PCI_EXP_LNKCAP_MLW 0x000003f0 /* Maximum Link Width */
521#define PCI_EXP_LNKCAP_ASPMS 0x00000c00 /* ASPM Support */522#define PCI_EXP_LNKCAP_ASPMS 0x00000c00 /* ASPM Support */
522#define PCI_EXP_LNKCAP_L0SEL 0x00007000 /* L0s Exit Latency */523#define PCI_EXP_LNKCAP_L0SEL 0x00007000 /* L0s Exit Latency */
include/uapi/linux/pkt_cls.h+17−0
@@ -37,6 +37,13 @@ enum { · 36 unmodified lines
37#define TC_ACT_QUEUED 537#define TC_ACT_QUEUED 5
38#define TC_ACT_REPEAT 638#define TC_ACT_REPEAT 6
39#define TC_ACT_REDIRECT 739#define TC_ACT_REDIRECT 7
40#define TC_ACT_TRAP 8 /* For hw path, this means "trap to cpu"
41 * and don't further process the frame
42 * in hardware. For sw path, this is
43 * equivalent of TC_ACT_STOLEN - drop
44 * the skb and act like everything
45 * is alright.
46 */
40 47
41/* There is a special kind of actions called "extended actions",48/* There is a special kind of actions called "extended actions",
42 * which need a value parameter. These have a local opcode located in49 * which need a value parameter. These have a local opcode located in
@@ -51,6 +58,7 @@ enum { · 8 unmodified lines
51 (((combined) & (~TC_ACT_EXT_VAL_MASK)) == opcode)58 (((combined) & (~TC_ACT_EXT_VAL_MASK)) == opcode)
52 59
53#define TC_ACT_JUMP __TC_ACT_EXT(1)60#define TC_ACT_JUMP __TC_ACT_EXT(1)
61#define TC_ACT_GOTO_CHAIN __TC_ACT_EXT(2)
54 62
55/* Action type identifiers*/63/* Action type identifiers*/
56enum {64enum {
@@ -361,6 +369,7 @@ enum { · 304 unmodified lines
361 TCA_BPF_FLAGS,369 TCA_BPF_FLAGS,
362 TCA_BPF_FLAGS_GEN,370 TCA_BPF_FLAGS_GEN,
363 TCA_BPF_TAG,371 TCA_BPF_TAG,
372 TCA_BPF_ID,
364 __TCA_BPF_MAX,373 __TCA_BPF_MAX,
365};374};
366 375
@@ -450,6 +459,14 @@ enum { · 83 unmodified lines
450 TCA_FLOWER_KEY_MPLS_TC, /* u8 - 3 bits */459 TCA_FLOWER_KEY_MPLS_TC, /* u8 - 3 bits */
451 TCA_FLOWER_KEY_MPLS_LABEL, /* be32 - 20 bits */460 TCA_FLOWER_KEY_MPLS_LABEL, /* be32 - 20 bits */
452 461
462 TCA_FLOWER_KEY_TCP_FLAGS, /* be16 */
463 TCA_FLOWER_KEY_TCP_FLAGS_MASK, /* be16 */
464
465 TCA_FLOWER_KEY_IP_TOS, /* u8 */
466 TCA_FLOWER_KEY_IP_TOS_MASK, /* u8 */
467 TCA_FLOWER_KEY_IP_TTL, /* u8 */
468 TCA_FLOWER_KEY_IP_TTL_MASK, /* u8 */
469
453 __TCA_FLOWER_MAX,470 __TCA_FLOWER_MAX,
454};471};
455 472
include/uapi/linux/rtnetlink.h+9−0
@@ -146,6 +146,9 @@ enum { · 145 unmodified lines
146 RTM_GETSTATS = 94,146 RTM_GETSTATS = 94,
147#define RTM_GETSTATS RTM_GETSTATS147#define RTM_GETSTATS RTM_GETSTATS
148 148
149 RTM_NEWCACHEREPORT = 96,
150#define RTM_NEWCACHEREPORT RTM_NEWCACHEREPORT
151
149 __RTM_MAX,152 __RTM_MAX,
150#define RTM_MAX (((__RTM_MAX + 3) & ~3) - 1)153#define RTM_MAX (((__RTM_MAX + 3) & ~3) - 1)
151};154};
@@ -278,6 +281,7 @@ enum rt_scope_t { · 126 unmodified lines
278#define RTM_F_EQUALIZE 0x400 /* Multipath equalizer: NI */281#define RTM_F_EQUALIZE 0x400 /* Multipath equalizer: NI */
279#define RTM_F_PREFIX 0x800 /* Prefix addresses */282#define RTM_F_PREFIX 0x800 /* Prefix addresses */
280#define RTM_F_LOOKUP_TABLE 0x1000 /* set rtm_table to FIB lookup result */283#define RTM_F_LOOKUP_TABLE 0x1000 /* set rtm_table to FIB lookup result */
284#define RTM_F_FIB_MATCH 0x2000 /* return full fib lookup match */
281 285
282/* Reserved table identifiers */286/* Reserved table identifiers */
283 287
@@ -549,6 +553,7 @@ enum { · 265 unmodified lines
549 TCA_STAB,553 TCA_STAB,
550 TCA_PAD,554 TCA_PAD,
551 TCA_DUMP_INVISIBLE,555 TCA_DUMP_INVISIBLE,
556 TCA_CHAIN,
552 __TCA_MAX557 __TCA_MAX
553};558};
554 559
@@ -664,6 +669,10 @@ enum rtnetlink_groups { · 109 unmodified lines
664#define RTNLGRP_NSID RTNLGRP_NSID669#define RTNLGRP_NSID RTNLGRP_NSID
665 RTNLGRP_MPLS_NETCONF,670 RTNLGRP_MPLS_NETCONF,
666#define RTNLGRP_MPLS_NETCONF RTNLGRP_MPLS_NETCONF671#define RTNLGRP_MPLS_NETCONF RTNLGRP_MPLS_NETCONF
672 RTNLGRP_IPV4_MROUTE_R,
673#define RTNLGRP_IPV4_MROUTE_R RTNLGRP_IPV4_MROUTE_R
674 RTNLGRP_IPV6_MROUTE_R,
675#define RTNLGRP_IPV6_MROUTE_R RTNLGRP_IPV6_MROUTE_R
667 __RTNLGRP_MAX676 __RTNLGRP_MAX
668};677};
669#define RTNLGRP_MAX (__RTNLGRP_MAX - 1)678#define RTNLGRP_MAX (__RTNLGRP_MAX - 1)
include/uapi/linux/sched/types.h+8−8
@@ -54,21 +54,21 @@ struct sched_param { · 53 unmodified lines
54 * available in the scheduling class file or in Documentation/.54 * available in the scheduling class file or in Documentation/.
55 */55 */
56struct sched_attr {56struct sched_attr {
57 u32 size;57 __u32 size;
58 58
59 u32 sched_policy;59 __u32 sched_policy;
60 u64 sched_flags;60 __u64 sched_flags;
61 61
62 /* SCHED_NORMAL, SCHED_BATCH */62 /* SCHED_NORMAL, SCHED_BATCH */
63 s32 sched_nice;63 __s32 sched_nice;
64 64
65 /* SCHED_FIFO, SCHED_RR */65 /* SCHED_FIFO, SCHED_RR */
66 u32 sched_priority;66 __u32 sched_priority;
67 67
68 /* SCHED_DEADLINE */68 /* SCHED_DEADLINE */
69 u64 sched_runtime;69 __u64 sched_runtime;
70 u64 sched_deadline;70 __u64 sched_deadline;
71 u64 sched_period;71 __u64 sched_period;
72};72};
73 73
74#endif /* _UAPI_LINUX_SCHED_TYPES_H */74#endif /* _UAPI_LINUX_SCHED_TYPES_H */
include/uapi/linux/sctp.h+6−0
@@ -121,6 +121,7 @@ typedef __s32 sctp_assoc_t; · 120 unmodified lines
121#define SCTP_RESET_STREAMS 119121#define SCTP_RESET_STREAMS 119
122#define SCTP_RESET_ASSOC 120122#define SCTP_RESET_ASSOC 120
123#define SCTP_ADD_STREAMS 121123#define SCTP_ADD_STREAMS 121
124#define SCTP_SOCKOPT_PEELOFF_FLAGS 122
124 125
125/* PR-SCTP policies */126/* PR-SCTP policies */
126#define SCTP_PR_SCTP_NONE 0x0000127#define SCTP_PR_SCTP_NONE 0x0000
@@ -978,6 +979,11 @@ typedef struct { · 851 unmodified lines
978 int sd;979 int sd;
979} sctp_peeloff_arg_t;980} sctp_peeloff_arg_t;
980 981
982typedef struct {
983 sctp_peeloff_arg_t p_arg;
984 unsigned flags;
985} sctp_peeloff_flags_arg_t;
986
981/*987/*
982 * Peer Address Thresholds socket option988 * Peer Address Thresholds socket option
983 */989 */
include/uapi/linux/sem.h+1−1
@@ -23,7 +23,7 @@ · 22 unmodified lines
23struct semid_ds {23struct semid_ds {
24 struct ipc_perm sem_perm; /* permissions .. see ipc.h */24 struct ipc_perm sem_perm; /* permissions .. see ipc.h */
25 __kernel_time_t sem_otime; /* last semop time */25 __kernel_time_t sem_otime; /* last semop time */
26 __kernel_time_t sem_ctime; /* last change time */26 __kernel_time_t sem_ctime; /* create/last semctl() time */
27 struct sem *sem_base; /* ptr to first semaphore in array */27 struct sem *sem_base; /* ptr to first semaphore in array */
28 struct sem_queue *sem_pending; /* pending operations to be processed */28 struct sem_queue *sem_pending; /* pending operations to be processed */
29 struct sem_queue **sem_pending_last; /* last pending operation */29 struct sem_queue **sem_pending_last; /* last pending operation */
include/uapi/linux/serial.h+3−0
@@ -122,6 +122,9 @@ struct serial_rs485 { · 121 unmodified lines
122#define SER_RS485_RTS_AFTER_SEND (1 << 2) /* Logical level for122#define SER_RS485_RTS_AFTER_SEND (1 << 2) /* Logical level for
123 RTS pin after sent*/123 RTS pin after sent*/
124#define SER_RS485_RX_DURING_TX (1 << 4)124#define SER_RS485_RX_DURING_TX (1 << 4)
125#define SER_RS485_TERMINATE_BUS (1 << 5) /* Enable bus
126 termination
127 (if supported) */
125 __u32 delay_rts_before_send; /* Delay before send (milliseconds) */128 __u32 delay_rts_before_send; /* Delay before send (milliseconds) */
126 __u32 delay_rts_after_send; /* Delay after send (milliseconds) */129 __u32 delay_rts_after_send; /* Delay after send (milliseconds) */
127 __u32 padding[5]; /* Memory is cheap, new structs130 __u32 padding[5]; /* Memory is cheap, new structs
include/uapi/linux/serial_core.h+1−1
@@ -83,7 +83,7 @@ · 82 unmodified lines
83/* Parisc type numbers. */83/* Parisc type numbers. */
84#define PORT_MUX 4884#define PORT_MUX 48
85 85
86/* Atmel AT91 / AT32 SoC */86/* Atmel AT91 SoC */
87#define PORT_ATMEL 4987#define PORT_ATMEL 49
88 88
89/* Macintosh Zilog type numbers */89/* Macintosh Zilog type numbers */
include/uapi/linux/snmp.h+1−0
@@ -228,6 +228,7 @@ enum · 227 unmodified lines
228 LINUX_MIB_TCPABORTONLINGER, /* TCPAbortOnLinger */228 LINUX_MIB_TCPABORTONLINGER, /* TCPAbortOnLinger */
229 LINUX_MIB_TCPABORTFAILED, /* TCPAbortFailed */229 LINUX_MIB_TCPABORTFAILED, /* TCPAbortFailed */
230 LINUX_MIB_TCPMEMORYPRESSURES, /* TCPMemoryPressures */230 LINUX_MIB_TCPMEMORYPRESSURES, /* TCPMemoryPressures */
231 LINUX_MIB_TCPMEMORYPRESSURESCHRONO, /* TCPMemoryPressuresChrono */
231 LINUX_MIB_TCPSACKDISCARD, /* TCPSACKDiscard */232 LINUX_MIB_TCPSACKDISCARD, /* TCPSACKDiscard */
232 LINUX_MIB_TCPDSACKIGNOREDOLD, /* TCPSACKIgnoredOld */233 LINUX_MIB_TCPDSACKIGNOREDOLD, /* TCPSACKIgnoredOld */
233 LINUX_MIB_TCPDSACKIGNOREDNOUNDO, /* TCPSACKIgnoredNoUndo */234 LINUX_MIB_TCPDSACKIGNOREDNOUNDO, /* TCPSACKIgnoredNoUndo */
include/uapi/linux/switchtec_ioctl.h+3−0
@@ -39,6 +39,9 @@ struct switchtec_ioctl_flash_info { · 38 unmodified lines
39 __u32 padding;39 __u32 padding;
40};40};
41 41
42#define SWITCHTEC_IOCTL_PART_ACTIVE 1
43#define SWITCHTEC_IOCTL_PART_RUNNING 2
44
42struct switchtec_ioctl_flash_part_info {45struct switchtec_ioctl_flash_part_info {
43 __u32 flash_partition;46 __u32 flash_partition;
44 __u32 address;47 __u32 address;
include/uapi/linux/target_core_user.h+12−0
@@ -130,6 +130,11 @@ enum tcmu_genl_cmd { · 129 unmodified lines
130 TCMU_CMD_UNSPEC,130 TCMU_CMD_UNSPEC,
131 TCMU_CMD_ADDED_DEVICE,131 TCMU_CMD_ADDED_DEVICE,
132 TCMU_CMD_REMOVED_DEVICE,132 TCMU_CMD_REMOVED_DEVICE,
133 TCMU_CMD_RECONFIG_DEVICE,
134 TCMU_CMD_ADDED_DEVICE_DONE,
135 TCMU_CMD_REMOVED_DEVICE_DONE,
136 TCMU_CMD_RECONFIG_DEVICE_DONE,
137 TCMU_CMD_SET_FEATURES,
133 __TCMU_CMD_MAX,138 __TCMU_CMD_MAX,
134};139};
135#define TCMU_CMD_MAX (__TCMU_CMD_MAX - 1)140#define TCMU_CMD_MAX (__TCMU_CMD_MAX - 1)
@@ -138,6 +143,13 @@ enum tcmu_genl_attr { · 2 unmodified lines
138 TCMU_ATTR_UNSPEC,143 TCMU_ATTR_UNSPEC,
139 TCMU_ATTR_DEVICE,144 TCMU_ATTR_DEVICE,
140 TCMU_ATTR_MINOR,145 TCMU_ATTR_MINOR,
146 TCMU_ATTR_PAD,
147 TCMU_ATTR_DEV_CFG,
148 TCMU_ATTR_DEV_SIZE,
149 TCMU_ATTR_WRITECACHE,
150 TCMU_ATTR_CMD_STATUS,
151 TCMU_ATTR_DEVICE_ID,
152 TCMU_ATTR_SUPP_KERN_CMD_REPLY,
141 __TCMU_ATTR_MAX,153 __TCMU_ATTR_MAX,
142};154};
143#define TCMU_ATTR_MAX (__TCMU_ATTR_MAX - 1)155#define TCMU_ATTR_MAX (__TCMU_ATTR_MAX - 1)
include/uapi/linux/tc_act/tc_bpf.h+1−0
@@ -28,6 +28,7 @@ enum { · 27 unmodified lines
28 TCA_ACT_BPF_NAME,28 TCA_ACT_BPF_NAME,
29 TCA_ACT_BPF_PAD,29 TCA_ACT_BPF_PAD,
30 TCA_ACT_BPF_TAG,30 TCA_ACT_BPF_TAG,
31 TCA_ACT_BPF_ID,
31 __TCA_ACT_BPF_MAX,32 __TCA_ACT_BPF_MAX,
32};33};
33#define TCA_ACT_BPF_MAX (__TCA_ACT_BPF_MAX - 1)34#define TCA_ACT_BPF_MAX (__TCA_ACT_BPF_MAX - 1)
include/uapi/linux/tc_act/tc_tunnel_key.h+1−0
@@ -34,6 +34,7 @@ enum { · 33 unmodified lines
34 TCA_TUNNEL_KEY_ENC_KEY_ID, /* be64 */34 TCA_TUNNEL_KEY_ENC_KEY_ID, /* be64 */
35 TCA_TUNNEL_KEY_PAD,35 TCA_TUNNEL_KEY_PAD,
36 TCA_TUNNEL_KEY_ENC_DST_PORT, /* be16 */36 TCA_TUNNEL_KEY_ENC_DST_PORT, /* be16 */
37 TCA_TUNNEL_KEY_NO_CSUM, /* u8 */
37 __TCA_TUNNEL_KEY_MAX,38 __TCA_TUNNEL_KEY_MAX,
38};39};
39 40
include/uapi/linux/tcp.h+8−2
@@ -117,6 +117,8 @@ enum { · 116 unmodified lines
117#define TCP_SAVED_SYN 28 /* Get SYN headers recorded for connection */117#define TCP_SAVED_SYN 28 /* Get SYN headers recorded for connection */
118#define TCP_REPAIR_WINDOW 29 /* Get/set window parameters */118#define TCP_REPAIR_WINDOW 29 /* Get/set window parameters */
119#define TCP_FASTOPEN_CONNECT 30 /* Attempt FastOpen with connect */119#define TCP_FASTOPEN_CONNECT 30 /* Attempt FastOpen with connect */
120#define TCP_ULP 31 /* Attach a ULP to a TCP connection */
121#define TCP_MD5SIG_EXT 32 /* TCP MD5 Signature with extensions */
120 122
121struct tcp_repair_opt {123struct tcp_repair_opt {
122 __u32 opt_code;124 __u32 opt_code;
@@ -234,11 +236,15 @@ enum { · 111 unmodified lines
234/* for TCP_MD5SIG socket option */236/* for TCP_MD5SIG socket option */
235#define TCP_MD5SIG_MAXKEYLEN 80237#define TCP_MD5SIG_MAXKEYLEN 80
236 238
239/* tcp_md5sig extension flags for TCP_MD5SIG_EXT */
240#define TCP_MD5SIG_FLAG_PREFIX 1 /* address prefix length */
241
237struct tcp_md5sig {242struct tcp_md5sig {
238 struct __kernel_sockaddr_storage tcpm_addr; /* address associated */243 struct __kernel_sockaddr_storage tcpm_addr; /* address associated */
239 __u16 __tcpm_pad1; /* zero */244 __u8 tcpm_flags; /* extension flags */
245 __u8 tcpm_prefixlen; /* address prefix */
240 __u16 tcpm_keylen; /* key length */246 __u16 tcpm_keylen; /* key length */
241 __u32 __tcpm_pad2; /* zero */247 __u32 __tcpm_pad; /* zero */
242 __u8 tcpm_key[TCP_MD5SIG_MAXKEYLEN]; /* key (binary) */248 __u8 tcpm_key[TCP_MD5SIG_MAXKEYLEN]; /* key (binary) */
243};249};
244 250
include/uapi/linux/tls.h+79−0
@@ -0,0 +1,79 @@
1/*
2 * Copyright (c) 2016-2017, Mellanox Technologies. All rights reserved.
3 *
4 * This software is available to you under a choice of one of two
5 * licenses. You may choose to be licensed under the terms of the GNU
6 * General Public License (GPL) Version 2, available from the file
7 * COPYING in the main directory of this source tree, or the
8 * OpenIB.org BSD license below:
9 *
10 * Redistribution and use in source and binary forms, with or
11 * without modification, are permitted provided that the following
12 * conditions are met:
13 *
14 * - Redistributions of source code must retain the above
15 * copyright notice, this list of conditions and the following
16 * disclaimer.
17 *
18 * - Redistributions in binary form must reproduce the above
19 * copyright notice, this list of conditions and the following
20 * disclaimer in the documentation and/or other materials
21 * provided with the distribution.
22 *
23 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
24 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
25 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
26 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
27 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
28 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
29 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
30 * SOFTWARE.
31 */
32
33#ifndef _UAPI_LINUX_TLS_H
34#define _UAPI_LINUX_TLS_H
35
36#include <linux/types.h>
37#include <asm/byteorder.h>
38#include <linux/socket.h>
39#include <linux/tcp.h>
40#include <net/tcp.h>
41
42/* TLS socket options */
43#define TLS_TX 1 /* Set transmit parameters */
44
45/* Supported versions */
46#define TLS_VERSION_MINOR(ver) ((ver) & 0xFF)
47#define TLS_VERSION_MAJOR(ver) (((ver) >> 8) & 0xFF)
48
49#define TLS_VERSION_NUMBER(id) ((((id##_VERSION_MAJOR) & 0xFF) << 8) | \
50 ((id##_VERSION_MINOR) & 0xFF))
51
52#define TLS_1_2_VERSION_MAJOR 0x3
53#define TLS_1_2_VERSION_MINOR 0x3
54#define TLS_1_2_VERSION TLS_VERSION_NUMBER(TLS_1_2)
55
56/* Supported ciphers */
57#define TLS_CIPHER_AES_GCM_128 51
58#define TLS_CIPHER_AES_GCM_128_IV_SIZE 8
59#define TLS_CIPHER_AES_GCM_128_KEY_SIZE 16
60#define TLS_CIPHER_AES_GCM_128_SALT_SIZE 4
61#define TLS_CIPHER_AES_GCM_128_TAG_SIZE 16
62#define TLS_CIPHER_AES_GCM_128_REC_SEQ_SIZE 8
63
64#define TLS_SET_RECORD_TYPE 1
65
66struct tls_crypto_info {
67 __u16 version;
68 __u16 cipher_type;
69};
70
71struct tls12_crypto_info_aes_gcm_128 {
72 struct tls_crypto_info info;
73 unsigned char iv[TLS_CIPHER_AES_GCM_128_IV_SIZE];
74 unsigned char key[TLS_CIPHER_AES_GCM_128_KEY_SIZE];
75 unsigned char salt[TLS_CIPHER_AES_GCM_128_SALT_SIZE];
76 unsigned char rec_seq[TLS_CIPHER_AES_GCM_128_REC_SEQ_SIZE];
77};
78
79#endif /* _UAPI_LINUX_TLS_H */
include/uapi/linux/tty.h+2−0
@@ -35,5 +35,7 @@ · 34 unmodified lines
35#define N_TRACESINK 23 /* Trace data routing for MIPI P1149.7 */35#define N_TRACESINK 23 /* Trace data routing for MIPI P1149.7 */
36#define N_TRACEROUTER 24 /* Trace data routing for MIPI P1149.7 */36#define N_TRACEROUTER 24 /* Trace data routing for MIPI P1149.7 */
37#define N_NCI 25 /* NFC NCI UART */37#define N_NCI 25 /* NFC NCI UART */
38#define N_SPEAKUP 26 /* Speakup communication with synths */
39#define N_NULL 27 /* Null ldisc used for error handling */
38 40
39#endif /* _UAPI_LINUX_TTY_H */41#endif /* _UAPI_LINUX_TTY_H */
include/uapi/linux/usb/audio.h+3−3
@@ -333,7 +333,7 @@ struct uac_processing_unit_descriptor { · 332 unmodified lines
333 __u8 bDescriptorType;333 __u8 bDescriptorType;
334 __u8 bDescriptorSubtype;334 __u8 bDescriptorSubtype;
335 __u8 bUnitID;335 __u8 bUnitID;
336 __u16 wProcessType;336 __le16 wProcessType;
337 __u8 bNrInPins;337 __u8 bNrInPins;
338 __u8 baSourceID[];338 __u8 baSourceID[];
339} __attribute__ ((packed));339} __attribute__ ((packed));
@@ -491,8 +491,8 @@ struct uac_format_type_ii_ext_descriptor { · 151 unmodified lines
491 __u8 bDescriptorType;491 __u8 bDescriptorType;
492 __u8 bDescriptorSubtype;492 __u8 bDescriptorSubtype;
493 __u8 bFormatType;493 __u8 bFormatType;
494 __u16 wMaxBitRate;494 __le16 wMaxBitRate;
495 __u16 wSamplesPerFrame;495 __le16 wSamplesPerFrame;
496 __u8 bHeaderLength;496 __u8 bHeaderLength;
497 __u8 bSideBandProtocol;497 __u8 bSideBandProtocol;
498} __attribute__((packed));498} __attribute__((packed));
include/uapi/linux/usb/functionfs.h+4−3
@@ -275,13 +275,14 @@ struct usb_functionfs_event { · 274 unmodified lines
275#define FUNCTIONFS_INTERFACE_REVMAP _IO('g', 128)275#define FUNCTIONFS_INTERFACE_REVMAP _IO('g', 128)
276 276
277/*277/*
278 * Returns real bEndpointAddress of an endpoint. If function is not278 * Returns real bEndpointAddress of an endpoint. If endpoint shuts down
279 * active returns -ENODEV.279 * during the call, returns -ESHUTDOWN.
280 */280 */
281#define FUNCTIONFS_ENDPOINT_REVMAP _IO('g', 129)281#define FUNCTIONFS_ENDPOINT_REVMAP _IO('g', 129)
282 282
283/*283/*
284 * Returns endpoint descriptor. If function is not active returns -ENODEV.284 * Returns endpoint descriptor. If endpoint shuts down during the call,
285 * returns -ESHUTDOWN.
285 */286 */
286#define FUNCTIONFS_ENDPOINT_DESC _IOR('g', 130, \287#define FUNCTIONFS_ENDPOINT_DESC _IOR('g', 130, \
287 struct usb_endpoint_descriptor)288 struct usb_endpoint_descriptor)
include/uapi/linux/usbdevice_fs.h+6−0
@@ -156,6 +156,11 @@ struct usbdevfs_streams { · 155 unmodified lines
156 unsigned char eps[0];156 unsigned char eps[0];
157};157};
158 158
159/*
160 * USB_SPEED_* values returned by USBDEVFS_GET_SPEED are defined in
161 * linux/usb/ch9.h
162 */
163
159#define USBDEVFS_CONTROL _IOWR('U', 0, struct usbdevfs_ctrltransfer)164#define USBDEVFS_CONTROL _IOWR('U', 0, struct usbdevfs_ctrltransfer)
160#define USBDEVFS_CONTROL32 _IOWR('U', 0, struct usbdevfs_ctrltransfer32)165#define USBDEVFS_CONTROL32 _IOWR('U', 0, struct usbdevfs_ctrltransfer32)
161#define USBDEVFS_BULK _IOWR('U', 2, struct usbdevfs_bulktransfer)166#define USBDEVFS_BULK _IOWR('U', 2, struct usbdevfs_bulktransfer)
@@ -190,5 +195,6 @@ struct usbdevfs_streams { · 28 unmodified lines
190#define USBDEVFS_ALLOC_STREAMS _IOR('U', 28, struct usbdevfs_streams)195#define USBDEVFS_ALLOC_STREAMS _IOR('U', 28, struct usbdevfs_streams)
191#define USBDEVFS_FREE_STREAMS _IOR('U', 29, struct usbdevfs_streams)196#define USBDEVFS_FREE_STREAMS _IOR('U', 29, struct usbdevfs_streams)
192#define USBDEVFS_DROP_PRIVILEGES _IOW('U', 30, __u32)197#define USBDEVFS_DROP_PRIVILEGES _IOW('U', 30, __u32)
198#define USBDEVFS_GET_SPEED _IO('U', 31)
193 199
194#endif /* _UAPI_LINUX_USBDEVICE_FS_H */200#endif /* _UAPI_LINUX_USBDEVICE_FS_H */
include/uapi/linux/v4l2-controls.h+10−1
@@ -180,6 +180,15 @@ enum v4l2_colorfx { · 179 unmodified lines
180 * We reserve 16 controls for this driver. */180 * We reserve 16 controls for this driver. */
181#define V4L2_CID_USER_TC358743_BASE (V4L2_CID_USER_BASE + 0x1080)181#define V4L2_CID_USER_TC358743_BASE (V4L2_CID_USER_BASE + 0x1080)
182 182
183/* The base for the max217x driver controls.
184 * We reserve 32 controls for this driver
185 */
186#define V4L2_CID_USER_MAX217X_BASE (V4L2_CID_USER_BASE + 0x1090)
187
188/* The base for the imx driver controls.
189 * We reserve 16 controls for this driver. */
190#define V4L2_CID_USER_IMX_BASE (V4L2_CID_USER_BASE + 0x1090)
191
183/* MPEG-class control IDs */192/* MPEG-class control IDs */
184/* The MPEG controls are applicable to all codec controls193/* The MPEG controls are applicable to all codec controls
185 * and the 'MPEG' part of the define is historical */194 * and the 'MPEG' part of the define is historical */
@@ -893,7 +902,7 @@ enum v4l2_jpeg_chroma_subsampling { · 707 unmodified lines
893#define V4L2_CID_PIXEL_RATE (V4L2_CID_IMAGE_PROC_CLASS_BASE + 2)902#define V4L2_CID_PIXEL_RATE (V4L2_CID_IMAGE_PROC_CLASS_BASE + 2)
894#define V4L2_CID_TEST_PATTERN (V4L2_CID_IMAGE_PROC_CLASS_BASE + 3)903#define V4L2_CID_TEST_PATTERN (V4L2_CID_IMAGE_PROC_CLASS_BASE + 3)
895#define V4L2_CID_DEINTERLACING_MODE (V4L2_CID_IMAGE_PROC_CLASS_BASE + 4)904#define V4L2_CID_DEINTERLACING_MODE (V4L2_CID_IMAGE_PROC_CLASS_BASE + 4)
896 905#define V4L2_CID_DIGITAL_GAIN (V4L2_CID_IMAGE_PROC_CLASS_BASE + 5)
897 906
898/* DV-class control IDs defined by V4L2 */907/* DV-class control IDs defined by V4L2 */
899#define V4L2_CID_DV_CLASS_BASE (V4L2_CTRL_CLASS_DV | 0x900)908#define V4L2_CID_DV_CLASS_BASE (V4L2_CTRL_CLASS_DV | 0x900)
include/uapi/linux/videodev2.h+3−0
@@ -669,6 +669,9 @@ struct v4l2_pix_format { · 668 unmodified lines
669#define V4L2_SDR_FMT_CS8 v4l2_fourcc('C', 'S', '0', '8') /* complex s8 */669#define V4L2_SDR_FMT_CS8 v4l2_fourcc('C', 'S', '0', '8') /* complex s8 */
670#define V4L2_SDR_FMT_CS14LE v4l2_fourcc('C', 'S', '1', '4') /* complex s14le */670#define V4L2_SDR_FMT_CS14LE v4l2_fourcc('C', 'S', '1', '4') /* complex s14le */
671#define V4L2_SDR_FMT_RU12LE v4l2_fourcc('R', 'U', '1', '2') /* real u12le */671#define V4L2_SDR_FMT_RU12LE v4l2_fourcc('R', 'U', '1', '2') /* real u12le */
672#define V4L2_SDR_FMT_PCU16BE v4l2_fourcc('P', 'C', '1', '6') /* planar complex u16be */
673#define V4L2_SDR_FMT_PCU18BE v4l2_fourcc('P', 'C', '1', '8') /* planar complex u18be */
674#define V4L2_SDR_FMT_PCU20BE v4l2_fourcc('P', 'C', '2', '0') /* planar complex u20be */
672 675
673/* Touch formats - used for Touch devices */676/* Touch formats - used for Touch devices */
674#define V4L2_TCH_FMT_DELTA_TD16 v4l2_fourcc('T', 'D', '1', '6') /* 16-bit signed deltas */677#define V4L2_TCH_FMT_DELTA_TD16 v4l2_fourcc('T', 'D', '1', '6') /* 16-bit signed deltas */
include/uapi/linux/vtpm_proxy.h+4−0
@@ -46,4 +46,8 @@ struct vtpm_proxy_new_dev { · 45 unmodified lines
46 46
47#define VTPM_PROXY_IOC_NEW_DEV _IOWR(0xa1, 0x00, struct vtpm_proxy_new_dev)47#define VTPM_PROXY_IOC_NEW_DEV _IOWR(0xa1, 0x00, struct vtpm_proxy_new_dev)
48 48
49/* vendor specific commands to set locality */
50#define TPM2_CC_SET_LOCALITY 0x20001000
51#define TPM_ORD_SET_LOCALITY 0x20001000
52
49#endif /* _UAPI_LINUX_VTPM_PROXY_H */53#endif /* _UAPI_LINUX_VTPM_PROXY_H */
include/uapi/linux/wil6210_uapi.h+0−87
@@ -1,87 +0,0 @@
1/*
2 * Copyright (c) 2014 Qualcomm Atheros, Inc.
3 *
4 * Permission to use, copy, modify, and/or distribute this software for any
5 * purpose with or without fee is hereby granted, provided that the above
6 * copyright notice and this permission notice appear in all copies.
7 *
8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15 */
16
17#ifndef __WIL6210_UAPI_H__
18#define __WIL6210_UAPI_H__
19
20#if !defined(__KERNEL__)
21#define __user
22#endif
23
24#include <linux/sockios.h>
25
26/* Numbers SIOCDEVPRIVATE and SIOCDEVPRIVATE + 1
27 * are used by Android devices to implement PNO (preferred network offload).
28 * Albeit it is temporary solution, use different numbers to avoid conflicts
29 */
30
31/**
32 * Perform 32-bit I/O operation to the card memory
33 *
34 * User code should arrange data in memory like this:
35 *
36 * struct wil_memio io;
37 * struct ifreq ifr = {
38 * .ifr_data = &io,
39 * };
40 */
41#define WIL_IOCTL_MEMIO (SIOCDEVPRIVATE + 2)
42
43/**
44 * Perform block I/O operation to the card memory
45 *
46 * User code should arrange data in memory like this:
47 *
48 * void *buf;
49 * struct wil_memio_block io = {
50 * .block = buf,
51 * };
52 * struct ifreq ifr = {
53 * .ifr_data = &io,
54 * };
55 */
56#define WIL_IOCTL_MEMIO_BLOCK (SIOCDEVPRIVATE + 3)
57
58/**
59 * operation to perform
60 *
61 * @wil_mmio_op_mask - bits defining operation,
62 * @wil_mmio_addr_mask - bits defining addressing mode
63 */
64enum wil_memio_op {
65 wil_mmio_read = 0,
66 wil_mmio_write = 1,
67 wil_mmio_op_mask = 0xff,
68 wil_mmio_addr_linker = 0 << 8,
69 wil_mmio_addr_ahb = 1 << 8,
70 wil_mmio_addr_bar = 2 << 8,
71 wil_mmio_addr_mask = 0xff00,
72};
73
74struct wil_memio {
75 uint32_t op; /* enum wil_memio_op */
76 uint32_t addr; /* should be 32-bit aligned */
77 uint32_t val;
78};
79
80struct wil_memio_block {
81 uint32_t op; /* enum wil_memio_op */
82 uint32_t addr; /* should be 32-bit aligned */
83 uint32_t size; /* should be multiple of 4 */
84 void __user *block; /* block address */
85};
86
87#endif /* __WIL6210_UAPI_H__ */