Showing the changes to include/uapi/linux (45 of 9242 files). Show all
Unified · Split
| @@ -26,7 +26,7 @@ · 25 unmodified lines | ||
| 26 | 26 | #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 passed | |
| 29 | + * The wait_queue_token (autofs_wqt_t) is part of a structure which is passed | |
| 30 | 30 | * back to the kernel via ioctl from userspace. On architectures where 32- and |
| 31 | 31 | * 64-bit userspace binaries can be executed it's important that the size of |
| 32 | 32 | * 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 | |
| 50 | 50 | struct autofs_packet_missing { |
| 51 | 51 | struct autofs_packet_hdr hdr; |
| 52 | − autofs_wqt_t wait_queue_entry_token; | |
| 52 | + autofs_wqt_t wait_queue_token; | |
| 53 | 53 | int len; |
| 54 | 54 | char name[NAME_MAX+1]; |
| 55 | 55 | }; |
| @@ -108,7 +108,7 @@ enum autofs_notify { · 107 unmodified lines | ||
| 108 | 108 | /* v4 multi expire (via pipe) */ |
| 109 | 109 | struct autofs_packet_expire_multi { |
| 110 | 110 | struct autofs_packet_hdr hdr; |
| 111 | − autofs_wqt_t wait_queue_entry_token; | |
| 111 | + autofs_wqt_t wait_queue_token; | |
| 112 | 112 | int len; |
| 113 | 113 | char name[NAME_MAX+1]; |
| 114 | 114 | }; |
| @@ -123,7 +123,7 @@ union autofs_packet_union { · 8 unmodified lines | ||
| 123 | 123 | /* autofs v5 common packet struct */ |
| 124 | 124 | struct autofs_v5_packet { |
| 125 | 125 | struct autofs_packet_hdr hdr; |
| 126 | − autofs_wqt_t wait_queue_entry_token; | |
| 126 | + autofs_wqt_t wait_queue_token; | |
| 127 | 127 | __u32 dev; |
| 128 | 128 | __u64 ino; |
| 129 | 129 | __u32 uid; |
| @@ -82,6 +82,11 @@ enum bpf_cmd { · 81 unmodified lines | ||
| 82 | 82 | BPF_PROG_ATTACH, |
| 83 | 83 | BPF_PROG_DETACH, |
| 84 | 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 | |
| 87 | 92 | enum bpf_map_type { |
| @@ -115,12 +120,14 @@ enum bpf_prog_type { · 27 unmodified lines | ||
| 115 | 120 | BPF_PROG_TYPE_LWT_IN, |
| 116 | 121 | BPF_PROG_TYPE_LWT_OUT, |
| 117 | 122 | BPF_PROG_TYPE_LWT_XMIT, |
| 123 | + BPF_PROG_TYPE_SOCK_OPS, | |
| 118 | 124 | }; |
| 119 | 125 | |
| 120 | 126 | enum bpf_attach_type { |
| 121 | 127 | BPF_CGROUP_INET_INGRESS, |
| 122 | 128 | BPF_CGROUP_INET_EGRESS, |
| 123 | 129 | BPF_CGROUP_INET_SOCK_CREATE, |
| 130 | + BPF_CGROUP_SOCK_OPS, | |
| 124 | 131 | __MAX_BPF_ATTACH_TYPE |
| 125 | 132 | }; |
| 126 | 133 | |
| @@ -209,6 +216,21 @@ union bpf_attr { · 82 unmodified lines | ||
| 209 | 216 | __u32 repeat; |
| 210 | 217 | __u32 duration; |
| 211 | 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 | 234 | } __attribute__((aligned(8))); |
| 213 | 235 | |
| 214 | 236 | /* BPF helper function descriptions: |
| @@ -313,8 +335,11 @@ union bpf_attr { · 98 unmodified lines | ||
| 313 | 335 | * @flags: room for future extensions |
| 314 | 336 | * Return: 0 on success or negative error |
| 315 | 337 | * |
| 316 | − * u64 bpf_perf_event_read(&map, index) | |
| 317 | − * Return: Number events read or error code | |
| 338 | + * u64 bpf_perf_event_read(map, flags) | |
| 339 | + * 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 | 344 | * int bpf_redirect(ifindex, flags) |
| 320 | 345 | * redirect to another netdev |
| @@ -328,11 +353,11 @@ union bpf_attr { · 7 unmodified lines | ||
| 328 | 353 | * @skb: pointer to skb |
| 329 | 354 | * 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 | 357 | * output perf raw sample |
| 333 | 358 | * @ctx: struct pt_regs* |
| 334 | 359 | * @map: pointer to perf_event_array map |
| 335 | − * @index: index of event in the map | |
| 360 | + * @flags: index of event in the map or bitmask flags | |
| 336 | 361 | * @data: data on stack to be output as raw data |
| 337 | 362 | * @size: size of data |
| 338 | 363 | * Return: 0 on success or negative error |
| @@ -490,6 +515,30 @@ union bpf_attr { · 151 unmodified lines | ||
| 490 | 515 | * Get the owner uid of the socket stored inside sk_buff. |
| 491 | 516 | * @skb: pointer to skb |
| 492 | 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 | 543 | #define __BPF_FUNC_MAPPER(FN) \ |
| 495 | 544 | FN(unspec), \ |
| @@ -539,7 +588,10 @@ union bpf_attr { · 43 unmodified lines | ||
| 539 | 588 | FN(xdp_adjust_head), \ |
| 540 | 589 | FN(probe_read_str), \ |
| 541 | 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 | 596 | /* integer value in 'imm' field of BPF_CALL instruction selects which helper |
| 545 | 597 | * function eBPF program intends to call |
| @@ -589,6 +641,11 @@ enum bpf_func_id { · 43 unmodified lines | ||
| 589 | 641 | /* BPF_FUNC_perf_event_output for sk_buff input context. */ |
| 590 | 642 | #define BPF_F_CTXLEN_MASK (0xfffffULL << 32) |
| 591 | 643 | |
| 644 | +/* Mode for BPF_FUNC_skb_adjust_room helper. */ | |
| 645 | +enum bpf_adj_room_mode { | |
| 646 | + BPF_ADJ_ROOM_NET, | |
| 647 | +}; | |
| 648 | + | |
| 592 | 649 | /* user accessible mirror of in-kernel sk_buff. |
| 593 | 650 | * 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 | 727 | __u32 data_end; |
| 671 | 728 | }; |
| 672 | 729 | |
| 730 | +#define BPF_TAG_SIZE 8 | |
| 731 | + | |
| 732 | +struct 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 | + | |
| 742 | +struct 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 | + */ | |
| 757 | +struct 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 | + */ | |
| 775 | +enum { | |
| 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 | 803 | #endif /* _UAPI__LINUX_BPF_H__ */ |
| @@ -426,31 +426,54 @@ struct btrfs_ioctl_ino_lookup_args { · 425 unmodified lines | ||
| 426 | 426 | char name[BTRFS_INO_LOOKUP_PATH_MAX]; |
| 427 | 427 | }; |
| 428 | 428 | |
| 429 | +/* Search criteria for the btrfs SEARCH ioctl family. */ | |
| 429 | 430 | struct btrfs_ioctl_search_key { |
| 430 | − /* which root are we searching. 0 is the tree of tree roots */ | |
| 431 | − __u64 tree_id; | |
| 432 | − | |
| 433 | − /* keys returned will be >= min and <= max */ | |
| 434 | − __u64 min_objectid; | |
| 435 | − __u64 max_objectid; | |
| 436 | − | |
| 437 | − /* keys returned will be >= min and <= max */ | |
| 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; | |
| 431 | + /* | |
| 432 | + * The tree we're searching in. 1 is the tree of tree roots, 2 is the | |
| 433 | + * extent tree, etc... | |
| 434 | + * | |
| 435 | + * A special tree_id value of 0 will cause a search in the subvolume | |
| 436 | + * tree that the inode which is passed to the ioctl is part of. | |
| 437 | + */ | |
| 438 | + __u64 tree_id; /* in */ | |
| 444 | 439 | |
| 445 | − /* keys returned will be >= min and <= max */ | |
| 446 | − __u32 min_type; | |
| 447 | − __u32 max_type; | |
| 440 | + /* | |
| 441 | + * When doing a tree search, we're actually taking a slice from a | |
| 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 we | |
| 451 | − * returning | |
| 470 | + * input: The maximum amount of results desired. | |
| 471 | + * 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 | 478 | /* align to 64 bits */ |
| 456 | 479 | __u32 unused; |
| @@ -336,6 +336,8 @@ static inline int cec_is_unconfigured(__u16 log_addr_mask) · 335 unmodified lines | ||
| 336 | 336 | #define CEC_CAP_RC (1 << 4) |
| 337 | 337 | /* Hardware can monitor all messages, not just directed and broadcast. */ |
| 338 | 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 | 343 | * struct cec_caps - CEC capabilities structure. |
| @@ -240,7 +240,8 @@ enum { · 239 unmodified lines | ||
| 240 | 240 | /* Added later */ |
| 241 | 241 | DM_LIST_VERSIONS_CMD, |
| 242 | 242 | DM_TARGET_MSG_CMD, |
| 243 | − DM_DEV_SET_GEOMETRY_CMD | |
| 243 | + DM_DEV_SET_GEOMETRY_CMD, | |
| 244 | + DM_DEV_ARM_POLL_CMD, | |
| 244 | 245 | }; |
| 245 | 246 | |
| 246 | 247 | #define DM_IOCTL 0xfd |
| @@ -255,6 +256,7 @@ enum { · 8 unmodified lines | ||
| 255 | 256 | #define DM_DEV_SUSPEND _IOWR(DM_IOCTL, DM_DEV_SUSPEND_CMD, struct dm_ioctl) |
| 256 | 257 | #define DM_DEV_STATUS _IOWR(DM_IOCTL, DM_DEV_STATUS_CMD, struct dm_ioctl) |
| 257 | 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 | 261 | #define DM_TABLE_LOAD _IOWR(DM_IOCTL, DM_TABLE_LOAD_CMD, struct dm_ioctl) |
| 260 | 262 | #define DM_TABLE_CLEAR _IOWR(DM_IOCTL, DM_TABLE_CLEAR_CMD, struct dm_ioctl) |
| @@ -134,7 +134,8 @@ struct video_event { · 133 unmodified lines | ||
| 134 | 134 | #define VIDEO_EVENT_FRAME_RATE_CHANGED 2 |
| 135 | 135 | #define VIDEO_EVENT_DECODER_STOPPED 3 |
| 136 | 136 | #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 | 139 | union { |
| 139 | 140 | video_size_t size; |
| 140 | 141 | unsigned int frame_rate; /* in frames per 1000sec */ |
| @@ -272,6 +272,8 @@ struct fsxattr { · 271 unmodified lines | ||
| 272 | 272 | #define FS_ENCRYPTION_MODE_AES_256_GCM 2 |
| 273 | 273 | #define FS_ENCRYPTION_MODE_AES_256_CBC 3 |
| 274 | 274 | #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 | |
| 276 | 278 | struct fscrypt_policy { |
| 277 | 279 | __u8 version; |
| @@ -157,6 +157,7 @@ enum { · 156 unmodified lines | ||
| 157 | 157 | IFLA_GSO_MAX_SIZE, |
| 158 | 158 | IFLA_PAD, |
| 159 | 159 | IFLA_XDP, |
| 160 | + IFLA_EVENT, | |
| 160 | 161 | __IFLA_MAX |
| 161 | 162 | }; |
| 162 | 163 | |
| @@ -890,15 +891,19 @@ enum { · 727 unmodified lines | ||
| 890 | 891 | #define XDP_FLAGS_UPDATE_IF_NOEXIST (1U << 0) |
| 891 | 892 | #define XDP_FLAGS_SKB_MODE (1U << 1) |
| 892 | 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 | 898 | #define XDP_FLAGS_MASK (XDP_FLAGS_UPDATE_IF_NOEXIST | \ |
| 894 | − XDP_FLAGS_SKB_MODE | \ | |
| 895 | − XDP_FLAGS_DRV_MODE) | |
| 899 | + XDP_FLAGS_MODES) | |
| 896 | 900 | |
| 897 | 901 | /* These are stored into IFLA_XDP_ATTACHED on dump. */ |
| 898 | 902 | enum { |
| 899 | 903 | XDP_ATTACHED_NONE = 0, |
| 900 | 904 | XDP_ATTACHED_DRV, |
| 901 | 905 | XDP_ATTACHED_SKB, |
| 906 | + XDP_ATTACHED_HW, | |
| 902 | 907 | }; |
| 903 | 908 | |
| 904 | 909 | enum { |
| @@ -906,9 +911,20 @@ enum { · 1 unmodified line | ||
| 906 | 911 | IFLA_XDP_FD, |
| 907 | 912 | IFLA_XDP_ATTACHED, |
| 908 | 913 | IFLA_XDP_FLAGS, |
| 914 | + IFLA_XDP_PROG_ID, | |
| 909 | 915 | __IFLA_XDP_MAX, |
| 910 | 916 | }; |
| 911 | 917 | |
| 912 | 918 | #define IFLA_XDP_MAX (__IFLA_XDP_MAX - 1) |
| 913 | 919 | |
| 920 | +enum { | |
| 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 | 930 | #endif /* _UAPI_LINUX_IF_LINK_H */ |
| @@ -600,6 +600,7 @@ · 599 unmodified lines | ||
| 600 | 600 | #define KEY_APPSELECT 0x244 /* AL Select Task/Application */ |
| 601 | 601 | #define KEY_SCREENSAVER 0x245 /* AL Screen Saver */ |
| 602 | 602 | #define KEY_VOICECOMMAND 0x246 /* Listening Voice Command */ |
| 603 | +#define KEY_ASSISTANT 0x247 /* AL Context-aware desktop assistant */ | |
| 603 | 604 | |
| 604 | 605 | #define KEY_BRIGHTNESS_MIN 0x250 /* Set Brightness to Minimum */ |
| 605 | 606 | #define KEY_BRIGHTNESS_MAX 0x251 /* Set Brightness to Maximum */ |
| @@ -1,6 +1,8 @@ | ||
| 1 | 1 | #ifndef _UAPI_LINUX_KCMP_H |
| 2 | 2 | #define _UAPI_LINUX_KCMP_H |
| 3 | 3 | |
| 4 | +#include <linux/types.h> | |
| 5 | + | |
| 4 | 6 | /* Comparison type */ |
| 5 | 7 | enum kcmp_type { |
| 6 | 8 | KCMP_FILE, |
| @@ -10,8 +12,16 @@ enum kcmp_type { · 3 unmodified lines | ||
| 10 | 12 | KCMP_SIGHAND, |
| 11 | 13 | KCMP_IO, |
| 12 | 14 | KCMP_SYSVSEM, |
| 15 | + KCMP_EPOLL_TFD, | |
| 13 | 16 | |
| 14 | 17 | KCMP_TYPES, |
| 15 | 18 | }; |
| 16 | 19 | |
| 20 | +/* Slot for KCMP_EPOLL_TFD */ | |
| 21 | +struct 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 | 27 | #endif /* _UAPI_LINUX_KCMP_H */ |
| @@ -155,6 +155,35 @@ struct kvm_s390_skeys { · 154 unmodified lines | ||
| 155 | 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 | + */ | |
| 176 | +struct 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 | + | |
| 158 | 187 | struct kvm_hyperv_exit { |
| 159 | 188 | #define KVM_EXIT_HYPERV_SYNIC 1 |
| 160 | 189 | #define KVM_EXIT_HYPERV_HCALL 2 |
| @@ -895,6 +924,11 @@ struct kvm_ppc_resize_hpt { · 734 unmodified lines | ||
| 895 | 924 | #define KVM_CAP_SPAPR_TCE_VFIO 142 |
| 896 | 925 | #define KVM_CAP_X86_GUEST_MWAIT 143 |
| 897 | 926 | #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 | 933 | #ifdef KVM_CAP_IRQ_ROUTING |
| 900 | 934 | |
| @@ -1318,6 +1352,9 @@ struct kvm_s390_ucas_mapping { · 417 unmodified lines | ||
| 1318 | 1352 | #define KVM_S390_GET_IRQ_STATE _IOW(KVMIO, 0xb6, struct kvm_s390_irq_state) |
| 1319 | 1353 | /* Available with KVM_CAP_X86_SMM */ |
| 1320 | 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 | 1359 | #define KVM_DEV_ASSIGN_ENABLE_IOMMU (1 << 0) |
| 1323 | 1360 | #define KVM_DEV_ASSIGN_PCI_2_3 (1 << 1) |
| @@ -42,6 +42,7 @@ · 41 unmodified lines | ||
| 42 | 42 | #define MSDOS_SUPER_MAGIC 0x4d44 /* MD */ |
| 43 | 43 | #define NCP_SUPER_MAGIC 0x564c /* Guess, what 0x564c is :-) */ |
| 44 | 44 | #define NFS_SUPER_MAGIC 0x6969 |
| 45 | +#define OCFS2_SUPER_MAGIC 0x7461636f | |
| 45 | 46 | #define OPENPROM_SUPER_MAGIC 0x9fa1 |
| 46 | 47 | #define QNX4_SUPER_MAGIC 0x002f /* qnx4 fs detection */ |
| 47 | 48 | #define QNX6_SUPER_MAGIC 0x68191122 /* qnx6 fs detection */ |
| @@ -80,6 +81,8 @@ · 32 unmodified lines | ||
| 80 | 81 | #define BTRFS_TEST_MAGIC 0x73727279 |
| 81 | 82 | #define NSFS_MAGIC 0x6e736673 |
| 82 | 83 | #define BPF_FS_MAGIC 0xcafe4a11 |
| 84 | +#define AAFS_MAGIC 0x5a3c69f0 | |
| 85 | + | |
| 83 | 86 | /* Since UDF 2.01 is ISO 13346 based... */ |
| 84 | 87 | #define UDF_SUPER_MAGIC 0x15013346 |
| 85 | 88 | #define BALLOON_KVM_MAGIC 0x13661366 |
| @@ -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_ */ | |
| @@ -104,6 +104,12 @@ struct media_device_info { · 103 unmodified lines | ||
| 104 | 104 | #define MEDIA_ENT_F_PROC_VIDEO_SCALER (MEDIA_ENT_F_BASE + 0x4005) |
| 105 | 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 | 114 | * Connectors |
| 109 | 115 | */ |
| @@ -24,13 +24,6 @@ enum { · 23 unmodified lines | ||
| 24 | 24 | MPOL_MAX, /* always last member of enum */ |
| 25 | 25 | }; |
| 26 | 26 | |
| 27 | −enum 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 | 27 | /* Flags for set_mempolicy */ |
| 35 | 28 | #define MPOL_F_STATIC_NODES (1 << 15) |
| 36 | 29 | #define MPOL_F_RELATIVE_NODES (1 << 14) |
| @@ -65,7 +58,6 @@ enum mpol_rebind_step { · 28 unmodified lines | ||
| 65 | 58 | */ |
| 66 | 59 | #define MPOL_F_SHARED (1 << 0) /* identify shared policies */ |
| 67 | 60 | #define MPOL_F_LOCAL (1 << 1) /* preferred local allocation */ |
| 68 | −#define MPOL_F_REBINDING (1 << 2) /* identify policies in rebinding */ | |
| 69 | 61 | #define MPOL_F_MOF (1 << 3) /* this policy wants migrate on fault */ |
| 70 | 62 | #define MPOL_F_MORON (1 << 4) /* Migrate On protnone Reference On Node */ |
| 71 | 63 | |
| @@ -110,6 +110,60 @@ struct igmpmsg { · 109 unmodified lines | ||
| 110 | 110 | struct in_addr im_src,im_dst; |
| 111 | 111 | }; |
| 112 | 112 | |
| 113 | +/* ipmr netlink table attributes */ | |
| 114 | +enum { | |
| 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 | + */ | |
| 131 | +enum { | |
| 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 */ | |
| 139 | +enum { | |
| 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 */ | |
| 156 | +enum { | |
| 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 | 167 | /* That's all usermode folks */ |
| 114 | 168 | |
| 115 | 169 | #define MFC_ASSERT_THRESH (3*HZ) /* Maximal freq. of asserts */ |
| @@ -133,4 +133,16 @@ struct mrt6msg { · 132 unmodified lines | ||
| 133 | 133 | struct in6_addr im6_src, im6_dst; |
| 134 | 134 | }; |
| 135 | 135 | |
| 136 | +/* ip6mr netlink cache report attributes */ | |
| 137 | +enum { | |
| 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 | 148 | #endif /* _UAPI__LINUX_MROUTE6_H */ |
| @@ -105,7 +105,8 @@ struct nd_cmd_ars_cap { · 104 unmodified lines | ||
| 105 | 105 | __u32 status; |
| 106 | 106 | __u32 max_ars_out; |
| 107 | 107 | __u32 clear_err_unit; |
| 108 | − __u32 reserved; | |
| 108 | + __u16 flags; | |
| 109 | + __u16 reserved; | |
| 109 | 110 | } __packed; |
| 110 | 111 | |
| 111 | 112 | struct nd_cmd_ars_start { |
| @@ -144,6 +145,43 @@ struct nd_cmd_clear_error { · 32 unmodified lines | ||
| 144 | 145 | __u64 cleared; |
| 145 | 146 | } __packed; |
| 146 | 147 | |
| 148 | +struct 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 | + | |
| 163 | +struct 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 | + | |
| 170 | +struct 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 | + | |
| 176 | +struct 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 | + | |
| 147 | 185 | enum { |
| 148 | 186 | ND_CMD_IMPLEMENTED = 0, |
| 149 | 187 | |
| @@ -169,6 +207,7 @@ enum { · 19 unmodified lines | ||
| 169 | 207 | enum { |
| 170 | 208 | ND_ARS_VOLATILE = 1, |
| 171 | 209 | ND_ARS_PERSISTENT = 2, |
| 210 | + ND_ARS_RETURN_PREV_DATA = 1 << 1, | |
| 172 | 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 | 218 | [ND_CMD_ARS_START] = "ars_start", |
| 180 | 219 | [ND_CMD_ARS_STATUS] = "ars_status", |
| 181 | 220 | [ND_CMD_CLEAR_ERROR] = "clear_error", |
| 221 | + [ND_CMD_CALL] = "cmd_call", | |
| 182 | 222 | }; |
| 183 | 223 | |
| 184 | 224 | if (cmd < ARRAY_SIZE(names) && names[cmd]) |
| @@ -41,6 +41,7 @@ enum { · 40 unmodified lines | ||
| 41 | 41 | #define NTF_MASTER 0x04 |
| 42 | 42 | #define NTF_PROXY 0x08 /* == ATF_PUBL */ |
| 43 | 43 | #define NTF_EXT_LEARNED 0x10 |
| 44 | +#define NTF_OFFLOADED 0x20 | |
| 44 | 45 | #define NTF_ROUTER 0x80 |
| 45 | 46 | |
| 46 | 47 | /* |
| @@ -9,6 +9,7 @@ · 8 unmodified lines | ||
| 9 | 9 | #ifndef _NET_TIMESTAMPING_H |
| 10 | 10 | #define _NET_TIMESTAMPING_H |
| 11 | 11 | |
| 12 | +#include <linux/types.h> | |
| 12 | 13 | #include <linux/socket.h> /* for SO_TIMESTAMPING */ |
| 13 | 14 | |
| 14 | 15 | /* SO_TIMESTAMPING gets an integer bit field comprised of these values */ |
| @@ -26,8 +27,10 @@ enum { · 11 unmodified lines | ||
| 26 | 27 | SOF_TIMESTAMPING_OPT_CMSG = (1<<10), |
| 27 | 28 | SOF_TIMESTAMPING_OPT_TSONLY = (1<<11), |
| 28 | 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 | 34 | SOF_TIMESTAMPING_MASK = (SOF_TIMESTAMPING_LAST - 1) | |
| 32 | 35 | SOF_TIMESTAMPING_LAST |
| 33 | 36 | }; |
| @@ -125,6 +128,16 @@ enum hwtstamp_rx_filters { · 91 unmodified lines | ||
| 125 | 128 | HWTSTAMP_FILTER_PTP_V2_SYNC, |
| 126 | 129 | /* PTP v2/802.AS1, any layer, Delay_req packet */ |
| 127 | 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 */ | |
| 137 | +struct scm_ts_pktinfo { | |
| 138 | + __u32 if_index; | |
| 139 | + __u32 pkt_length; | |
| 140 | + __u32 reserved[2]; | |
| 128 | 141 | }; |
| 129 | 142 | |
| 130 | 143 | #endif /* _NET_TIMESTAMPING_H */ |
| @@ -172,6 +172,29 @@ · 171 unmodified lines | ||
| 172 | 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 | 199 | * DOC: FILS shared key authentication offload |
| 177 | 200 | * |
| @@ -546,8 +569,13 @@ · 368 unmodified lines | ||
| 546 | 569 | * authentication/association or not receiving a response from the AP. |
| 547 | 570 | * Non-zero %NL80211_ATTR_STATUS_CODE value is indicated in that case as |
| 548 | 571 | * well to remain backwards compatible. |
| 549 | − * @NL80211_CMD_ROAM: request that the card roam (currently not implemented), | |
| 550 | − * sent as an event when the card/driver roamed by itself. | |
| 572 | + * @NL80211_CMD_ROAM: notifcation indicating 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 | 579 | * @NL80211_CMD_DISCONNECT: drop a given connection; also used to notify |
| 552 | 580 | * userspace that a connection was dropped by the AP or due to other |
| 553 | 581 | * reasons, for this the %NL80211_ATTR_DISCONNECTED_BY_AP and |
| @@ -947,6 +975,14 @@ · 393 unmodified lines | ||
| 947 | 975 | * does not result in a change for the current association. Currently, |
| 948 | 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 | 986 | * @NL80211_CMD_MAX: highest used command number |
| 951 | 987 | * @__NL80211_CMD_AFTER_LAST: internal use |
| 952 | 988 | */ |
| @@ -1146,6 +1182,9 @@ enum nl80211_commands { · 193 unmodified lines | ||
| 1146 | 1182 | |
| 1147 | 1183 | NL80211_CMD_UPDATE_CONNECT_PARAMS, |
| 1148 | 1184 | |
| 1185 | + NL80211_CMD_SET_PMK, | |
| 1186 | + NL80211_CMD_DEL_PMK, | |
| 1187 | + | |
| 1149 | 1188 | /* add new commands above here */ |
| 1150 | 1189 | |
| 1151 | 1190 | /* used to define NL80211_CMD_MAX below */ |
| @@ -1870,11 +1909,10 @@ enum nl80211_commands { · 718 unmodified lines | ||
| 1870 | 1909 | * that configured the indoor setting, and the indoor operation would be |
| 1871 | 1910 | * cleared when the socket is closed. |
| 1872 | 1911 | * If set during NAN interface creation, the interface will be destroyed |
| 1873 | − * if the socket is closed just like any other interface. Moreover, only | |
| 1874 | − * the netlink socket that created the interface will be allowed to add | |
| 1875 | − * and remove functions. NAN notifications will be sent in unicast to that | |
| 1876 | − * socket. Without this attribute, any socket can add functions and the | |
| 1877 | − * notifications will be sent to the %NL80211_MCGRP_NAN multicast group. | |
| 1912 | + * if the socket is closed just like any other interface. Moreover, NAN | |
| 1913 | + * notifications will be sent in unicast to that socket. Without this | |
| 1914 | + * attribute, the notifications will be sent to the %NL80211_MCGRP_NAN | |
| 1915 | + * multicast group. | |
| 1878 | 1916 | * If set during %NL80211_CMD_ASSOCIATE or %NL80211_CMD_CONNECT the |
| 1879 | 1917 | * station will deauthenticate when the socket is closed. |
| 1880 | 1918 | * |
| @@ -2080,14 +2118,27 @@ enum nl80211_commands { · 199 unmodified lines | ||
| 2080 | 2118 | * identifying the scope of PMKSAs. This is used with |
| 2081 | 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. | |
| 2084 | − * This is used with @NL80211_CMD_SET_PMKSA. | |
| 2121 | + * @NL80211_ATTR_PMK: attribute for passing PMK key material. Used with | |
| 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 | 2128 | * @NL80211_ATTR_SCHED_SCAN_MULTI: flag attribute which user-space shall use to |
| 2087 | 2129 | * indicate that it supports multiple active scheduled scan requests. |
| 2088 | 2130 | * @NL80211_ATTR_SCHED_SCAN_MAX_REQS: indicates maximum number of scheduled |
| 2089 | 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 | 2142 | * @NUM_NL80211_ATTR: total number of nl80211_attrs available |
| 2092 | 2143 | * @NL80211_ATTR_MAX: highest attribute number currently defined |
| 2093 | 2144 | * @__NL80211_ATTR_AFTER_LAST: internal use |
| @@ -2510,6 +2561,10 @@ enum nl80211_attrs { · 416 unmodified lines | ||
| 2510 | 2561 | NL80211_ATTR_SCHED_SCAN_MULTI, |
| 2511 | 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 | 2568 | /* add attributes here, update the policy in nl80211.c */ |
| 2514 | 2569 | |
| 2515 | 2570 | __NL80211_ATTR_AFTER_LAST, |
| @@ -4852,6 +4907,13 @@ enum nl80211_feature_flags { · 2336 unmodified lines | ||
| 4852 | 4907 | * RSSI threshold values to monitor rather than exactly one threshold. |
| 4853 | 4908 | * @NL80211_EXT_FEATURE_FILS_SK_OFFLOAD: Driver SME supports FILS shared key |
| 4854 | 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 | 4918 | * @NUM_NL80211_EXT_FEATURES: number of extended features. |
| 4857 | 4919 | * @MAX_NL80211_EXT_FEATURES: highest extended feature index. |
| @@ -4872,6 +4934,8 @@ enum nl80211_ext_feature_index { · 14 unmodified lines | ||
| 4872 | 4934 | NL80211_EXT_FEATURE_SCHED_SCAN_RELATIVE_RSSI, |
| 4873 | 4935 | NL80211_EXT_FEATURE_CQM_RSSI_LIST, |
| 4874 | 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 | 4940 | /* add new features before the definition below */ |
| 4877 | 4941 | NUM_NL80211_EXT_FEATURES, |
| @@ -517,6 +517,7 @@ · 516 unmodified lines | ||
| 517 | 517 | #define PCI_EXP_LNKCAP_SLS 0x0000000f /* Supported Link Speeds */ |
| 518 | 518 | #define PCI_EXP_LNKCAP_SLS_2_5GB 0x00000001 /* LNKCAP2 SLS Vector bit 0 */ |
| 519 | 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 | 521 | #define PCI_EXP_LNKCAP_MLW 0x000003f0 /* Maximum Link Width */ |
| 521 | 522 | #define PCI_EXP_LNKCAP_ASPMS 0x00000c00 /* ASPM Support */ |
| 522 | 523 | #define PCI_EXP_LNKCAP_L0SEL 0x00007000 /* L0s Exit Latency */ |
| @@ -37,6 +37,13 @@ enum { · 36 unmodified lines | ||
| 37 | 37 | #define TC_ACT_QUEUED 5 |
| 38 | 38 | #define TC_ACT_REPEAT 6 |
| 39 | 39 | #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 | 48 | /* There is a special kind of actions called "extended actions", |
| 42 | 49 | * which need a value parameter. These have a local opcode located in |
| @@ -51,6 +58,7 @@ enum { · 8 unmodified lines | ||
| 51 | 58 | (((combined) & (~TC_ACT_EXT_VAL_MASK)) == opcode) |
| 52 | 59 | |
| 53 | 60 | #define TC_ACT_JUMP __TC_ACT_EXT(1) |
| 61 | +#define TC_ACT_GOTO_CHAIN __TC_ACT_EXT(2) | |
| 54 | 62 | |
| 55 | 63 | /* Action type identifiers*/ |
| 56 | 64 | enum { |
| @@ -361,6 +369,7 @@ enum { · 304 unmodified lines | ||
| 361 | 369 | TCA_BPF_FLAGS, |
| 362 | 370 | TCA_BPF_FLAGS_GEN, |
| 363 | 371 | TCA_BPF_TAG, |
| 372 | + TCA_BPF_ID, | |
| 364 | 373 | __TCA_BPF_MAX, |
| 365 | 374 | }; |
| 366 | 375 | |
| @@ -450,6 +459,14 @@ enum { · 83 unmodified lines | ||
| 450 | 459 | TCA_FLOWER_KEY_MPLS_TC, /* u8 - 3 bits */ |
| 451 | 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 | 470 | __TCA_FLOWER_MAX, |
| 454 | 471 | }; |
| 455 | 472 | |
| @@ -146,6 +146,9 @@ enum { · 145 unmodified lines | ||
| 146 | 146 | RTM_GETSTATS = 94, |
| 147 | 147 | #define RTM_GETSTATS RTM_GETSTATS |
| 148 | 148 | |
| 149 | + RTM_NEWCACHEREPORT = 96, | |
| 150 | +#define RTM_NEWCACHEREPORT RTM_NEWCACHEREPORT | |
| 151 | + | |
| 149 | 152 | __RTM_MAX, |
| 150 | 153 | #define RTM_MAX (((__RTM_MAX + 3) & ~3) - 1) |
| 151 | 154 | }; |
| @@ -278,6 +281,7 @@ enum rt_scope_t { · 126 unmodified lines | ||
| 278 | 281 | #define RTM_F_EQUALIZE 0x400 /* Multipath equalizer: NI */ |
| 279 | 282 | #define RTM_F_PREFIX 0x800 /* Prefix addresses */ |
| 280 | 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 | 286 | /* Reserved table identifiers */ |
| 283 | 287 | |
| @@ -549,6 +553,7 @@ enum { · 265 unmodified lines | ||
| 549 | 553 | TCA_STAB, |
| 550 | 554 | TCA_PAD, |
| 551 | 555 | TCA_DUMP_INVISIBLE, |
| 556 | + TCA_CHAIN, | |
| 552 | 557 | __TCA_MAX |
| 553 | 558 | }; |
| 554 | 559 | |
| @@ -664,6 +669,10 @@ enum rtnetlink_groups { · 109 unmodified lines | ||
| 664 | 669 | #define RTNLGRP_NSID RTNLGRP_NSID |
| 665 | 670 | RTNLGRP_MPLS_NETCONF, |
| 666 | 671 | #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 | 676 | __RTNLGRP_MAX |
| 668 | 677 | }; |
| 669 | 678 | #define RTNLGRP_MAX (__RTNLGRP_MAX - 1) |
| @@ -54,21 +54,21 @@ struct sched_param { · 53 unmodified lines | ||
| 54 | 54 | * available in the scheduling class file or in Documentation/. |
| 55 | 55 | */ |
| 56 | 56 | struct sched_attr { |
| 57 | − u32 size; | |
| 57 | + __u32 size; | |
| 58 | 58 | |
| 59 | − u32 sched_policy; | |
| 60 | − u64 sched_flags; | |
| 59 | + __u32 sched_policy; | |
| 60 | + __u64 sched_flags; | |
| 61 | 61 | |
| 62 | 62 | /* SCHED_NORMAL, SCHED_BATCH */ |
| 63 | − s32 sched_nice; | |
| 63 | + __s32 sched_nice; | |
| 64 | 64 | |
| 65 | 65 | /* SCHED_FIFO, SCHED_RR */ |
| 66 | − u32 sched_priority; | |
| 66 | + __u32 sched_priority; | |
| 67 | 67 | |
| 68 | 68 | /* SCHED_DEADLINE */ |
| 69 | − u64 sched_runtime; | |
| 70 | − u64 sched_deadline; | |
| 71 | − u64 sched_period; | |
| 69 | + __u64 sched_runtime; | |
| 70 | + __u64 sched_deadline; | |
| 71 | + __u64 sched_period; | |
| 72 | 72 | }; |
| 73 | 73 | |
| 74 | 74 | #endif /* _UAPI_LINUX_SCHED_TYPES_H */ |
| @@ -121,6 +121,7 @@ typedef __s32 sctp_assoc_t; · 120 unmodified lines | ||
| 121 | 121 | #define SCTP_RESET_STREAMS 119 |
| 122 | 122 | #define SCTP_RESET_ASSOC 120 |
| 123 | 123 | #define SCTP_ADD_STREAMS 121 |
| 124 | +#define SCTP_SOCKOPT_PEELOFF_FLAGS 122 | |
| 124 | 125 | |
| 125 | 126 | /* PR-SCTP policies */ |
| 126 | 127 | #define SCTP_PR_SCTP_NONE 0x0000 |
| @@ -978,6 +979,11 @@ typedef struct { · 851 unmodified lines | ||
| 978 | 979 | int sd; |
| 979 | 980 | } sctp_peeloff_arg_t; |
| 980 | 981 | |
| 982 | +typedef struct { | |
| 983 | + sctp_peeloff_arg_t p_arg; | |
| 984 | + unsigned flags; | |
| 985 | +} sctp_peeloff_flags_arg_t; | |
| 986 | + | |
| 981 | 987 | /* |
| 982 | 988 | * Peer Address Thresholds socket option |
| 983 | 989 | */ |
| @@ -23,7 +23,7 @@ · 22 unmodified lines | ||
| 23 | 23 | struct semid_ds { |
| 24 | 24 | struct ipc_perm sem_perm; /* permissions .. see ipc.h */ |
| 25 | 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 | 27 | struct sem *sem_base; /* ptr to first semaphore in array */ |
| 28 | 28 | struct sem_queue *sem_pending; /* pending operations to be processed */ |
| 29 | 29 | struct sem_queue **sem_pending_last; /* last pending operation */ |
| @@ -122,6 +122,9 @@ struct serial_rs485 { · 121 unmodified lines | ||
| 122 | 122 | #define SER_RS485_RTS_AFTER_SEND (1 << 2) /* Logical level for |
| 123 | 123 | RTS pin after sent*/ |
| 124 | 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 | 128 | __u32 delay_rts_before_send; /* Delay before send (milliseconds) */ |
| 126 | 129 | __u32 delay_rts_after_send; /* Delay after send (milliseconds) */ |
| 127 | 130 | __u32 padding[5]; /* Memory is cheap, new structs |
| @@ -83,7 +83,7 @@ · 82 unmodified lines | ||
| 83 | 83 | /* Parisc type numbers. */ |
| 84 | 84 | #define PORT_MUX 48 |
| 85 | 85 | |
| 86 | −/* Atmel AT91 / AT32 SoC */ | |
| 86 | +/* Atmel AT91 SoC */ | |
| 87 | 87 | #define PORT_ATMEL 49 |
| 88 | 88 | |
| 89 | 89 | /* Macintosh Zilog type numbers */ |
| @@ -228,6 +228,7 @@ enum · 227 unmodified lines | ||
| 228 | 228 | LINUX_MIB_TCPABORTONLINGER, /* TCPAbortOnLinger */ |
| 229 | 229 | LINUX_MIB_TCPABORTFAILED, /* TCPAbortFailed */ |
| 230 | 230 | LINUX_MIB_TCPMEMORYPRESSURES, /* TCPMemoryPressures */ |
| 231 | + LINUX_MIB_TCPMEMORYPRESSURESCHRONO, /* TCPMemoryPressuresChrono */ | |
| 231 | 232 | LINUX_MIB_TCPSACKDISCARD, /* TCPSACKDiscard */ |
| 232 | 233 | LINUX_MIB_TCPDSACKIGNOREDOLD, /* TCPSACKIgnoredOld */ |
| 233 | 234 | LINUX_MIB_TCPDSACKIGNOREDNOUNDO, /* TCPSACKIgnoredNoUndo */ |
| @@ -39,6 +39,9 @@ struct switchtec_ioctl_flash_info { · 38 unmodified lines | ||
| 39 | 39 | __u32 padding; |
| 40 | 40 | }; |
| 41 | 41 | |
| 42 | +#define SWITCHTEC_IOCTL_PART_ACTIVE 1 | |
| 43 | +#define SWITCHTEC_IOCTL_PART_RUNNING 2 | |
| 44 | + | |
| 42 | 45 | struct switchtec_ioctl_flash_part_info { |
| 43 | 46 | __u32 flash_partition; |
| 44 | 47 | __u32 address; |
| @@ -130,6 +130,11 @@ enum tcmu_genl_cmd { · 129 unmodified lines | ||
| 130 | 130 | TCMU_CMD_UNSPEC, |
| 131 | 131 | TCMU_CMD_ADDED_DEVICE, |
| 132 | 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 | 138 | __TCMU_CMD_MAX, |
| 134 | 139 | }; |
| 135 | 140 | #define TCMU_CMD_MAX (__TCMU_CMD_MAX - 1) |
| @@ -138,6 +143,13 @@ enum tcmu_genl_attr { · 2 unmodified lines | ||
| 138 | 143 | TCMU_ATTR_UNSPEC, |
| 139 | 144 | TCMU_ATTR_DEVICE, |
| 140 | 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 | 153 | __TCMU_ATTR_MAX, |
| 142 | 154 | }; |
| 143 | 155 | #define TCMU_ATTR_MAX (__TCMU_ATTR_MAX - 1) |
| @@ -28,6 +28,7 @@ enum { · 27 unmodified lines | ||
| 28 | 28 | TCA_ACT_BPF_NAME, |
| 29 | 29 | TCA_ACT_BPF_PAD, |
| 30 | 30 | TCA_ACT_BPF_TAG, |
| 31 | + TCA_ACT_BPF_ID, | |
| 31 | 32 | __TCA_ACT_BPF_MAX, |
| 32 | 33 | }; |
| 33 | 34 | #define TCA_ACT_BPF_MAX (__TCA_ACT_BPF_MAX - 1) |
| @@ -34,6 +34,7 @@ enum { · 33 unmodified lines | ||
| 34 | 34 | TCA_TUNNEL_KEY_ENC_KEY_ID, /* be64 */ |
| 35 | 35 | TCA_TUNNEL_KEY_PAD, |
| 36 | 36 | TCA_TUNNEL_KEY_ENC_DST_PORT, /* be16 */ |
| 37 | + TCA_TUNNEL_KEY_NO_CSUM, /* u8 */ | |
| 37 | 38 | __TCA_TUNNEL_KEY_MAX, |
| 38 | 39 | }; |
| 39 | 40 | |
| @@ -117,6 +117,8 @@ enum { · 116 unmodified lines | ||
| 117 | 117 | #define TCP_SAVED_SYN 28 /* Get SYN headers recorded for connection */ |
| 118 | 118 | #define TCP_REPAIR_WINDOW 29 /* Get/set window parameters */ |
| 119 | 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 | |
| 121 | 123 | struct tcp_repair_opt { |
| 122 | 124 | __u32 opt_code; |
| @@ -234,11 +236,15 @@ enum { · 111 unmodified lines | ||
| 234 | 236 | /* for TCP_MD5SIG socket option */ |
| 235 | 237 | #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 | + | |
| 237 | 242 | struct tcp_md5sig { |
| 238 | 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 | 246 | __u16 tcpm_keylen; /* key length */ |
| 241 | − __u32 __tcpm_pad2; /* zero */ | |
| 247 | + __u32 __tcpm_pad; /* zero */ | |
| 242 | 248 | __u8 tcpm_key[TCP_MD5SIG_MAXKEYLEN]; /* key (binary) */ |
| 243 | 249 | }; |
| 244 | 250 | |
| @@ -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 | + | |
| 66 | +struct tls_crypto_info { | |
| 67 | + __u16 version; | |
| 68 | + __u16 cipher_type; | |
| 69 | +}; | |
| 70 | + | |
| 71 | +struct 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 */ | |
| @@ -35,5 +35,7 @@ · 34 unmodified lines | ||
| 35 | 35 | #define N_TRACESINK 23 /* Trace data routing for MIPI P1149.7 */ |
| 36 | 36 | #define N_TRACEROUTER 24 /* Trace data routing for MIPI P1149.7 */ |
| 37 | 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 | 41 | #endif /* _UAPI_LINUX_TTY_H */ |
| @@ -333,7 +333,7 @@ struct uac_processing_unit_descriptor { · 332 unmodified lines | ||
| 333 | 333 | __u8 bDescriptorType; |
| 334 | 334 | __u8 bDescriptorSubtype; |
| 335 | 335 | __u8 bUnitID; |
| 336 | − __u16 wProcessType; | |
| 336 | + __le16 wProcessType; | |
| 337 | 337 | __u8 bNrInPins; |
| 338 | 338 | __u8 baSourceID[]; |
| 339 | 339 | } __attribute__ ((packed)); |
| @@ -491,8 +491,8 @@ struct uac_format_type_ii_ext_descriptor { · 151 unmodified lines | ||
| 491 | 491 | __u8 bDescriptorType; |
| 492 | 492 | __u8 bDescriptorSubtype; |
| 493 | 493 | __u8 bFormatType; |
| 494 | − __u16 wMaxBitRate; | |
| 495 | − __u16 wSamplesPerFrame; | |
| 494 | + __le16 wMaxBitRate; | |
| 495 | + __le16 wSamplesPerFrame; | |
| 496 | 496 | __u8 bHeaderLength; |
| 497 | 497 | __u8 bSideBandProtocol; |
| 498 | 498 | } __attribute__((packed)); |
| @@ -275,13 +275,14 @@ struct usb_functionfs_event { · 274 unmodified lines | ||
| 275 | 275 | #define FUNCTIONFS_INTERFACE_REVMAP _IO('g', 128) |
| 276 | 276 | |
| 277 | 277 | /* |
| 278 | − * Returns real bEndpointAddress of an endpoint. If function is not | |
| 279 | − * active returns -ENODEV. | |
| 278 | + * Returns real bEndpointAddress of an endpoint. If endpoint shuts down | |
| 279 | + * during the call, returns -ESHUTDOWN. | |
| 280 | 280 | */ |
| 281 | 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 | 287 | #define FUNCTIONFS_ENDPOINT_DESC _IOR('g', 130, \ |
| 287 | 288 | struct usb_endpoint_descriptor) |
| @@ -156,6 +156,11 @@ struct usbdevfs_streams { · 155 unmodified lines | ||
| 156 | 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 | 164 | #define USBDEVFS_CONTROL _IOWR('U', 0, struct usbdevfs_ctrltransfer) |
| 160 | 165 | #define USBDEVFS_CONTROL32 _IOWR('U', 0, struct usbdevfs_ctrltransfer32) |
| 161 | 166 | #define USBDEVFS_BULK _IOWR('U', 2, struct usbdevfs_bulktransfer) |
| @@ -190,5 +195,6 @@ struct usbdevfs_streams { · 28 unmodified lines | ||
| 190 | 195 | #define USBDEVFS_ALLOC_STREAMS _IOR('U', 28, struct usbdevfs_streams) |
| 191 | 196 | #define USBDEVFS_FREE_STREAMS _IOR('U', 29, struct usbdevfs_streams) |
| 192 | 197 | #define USBDEVFS_DROP_PRIVILEGES _IOW('U', 30, __u32) |
| 198 | +#define USBDEVFS_GET_SPEED _IO('U', 31) | |
| 193 | 199 | |
| 194 | 200 | #endif /* _UAPI_LINUX_USBDEVICE_FS_H */ |
| @@ -180,6 +180,15 @@ enum v4l2_colorfx { · 179 unmodified lines | ||
| 180 | 180 | * We reserve 16 controls for this driver. */ |
| 181 | 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 | 192 | /* MPEG-class control IDs */ |
| 184 | 193 | /* The MPEG controls are applicable to all codec controls |
| 185 | 194 | * and the 'MPEG' part of the define is historical */ |
| @@ -893,7 +902,7 @@ enum v4l2_jpeg_chroma_subsampling { · 707 unmodified lines | ||
| 893 | 902 | #define V4L2_CID_PIXEL_RATE (V4L2_CID_IMAGE_PROC_CLASS_BASE + 2) |
| 894 | 903 | #define V4L2_CID_TEST_PATTERN (V4L2_CID_IMAGE_PROC_CLASS_BASE + 3) |
| 895 | 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 | 907 | /* DV-class control IDs defined by V4L2 */ |
| 899 | 908 | #define V4L2_CID_DV_CLASS_BASE (V4L2_CTRL_CLASS_DV | 0x900) |
| @@ -669,6 +669,9 @@ struct v4l2_pix_format { · 668 unmodified lines | ||
| 669 | 669 | #define V4L2_SDR_FMT_CS8 v4l2_fourcc('C', 'S', '0', '8') /* complex s8 */ |
| 670 | 670 | #define V4L2_SDR_FMT_CS14LE v4l2_fourcc('C', 'S', '1', '4') /* complex s14le */ |
| 671 | 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 | 676 | /* Touch formats - used for Touch devices */ |
| 674 | 677 | #define V4L2_TCH_FMT_DELTA_TD16 v4l2_fourcc('T', 'D', '1', '6') /* 16-bit signed deltas */ |
| @@ -46,4 +46,8 @@ struct vtpm_proxy_new_dev { · 45 unmodified lines | ||
| 46 | 46 | |
| 47 | 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 | 53 | #endif /* _UAPI_LINUX_VTPM_PROXY_H */ |
| @@ -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 | − */ | |
| 64 | −enum 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 | − | |
| 74 | −struct 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 | − | |
| 80 | −struct 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__ */ | |