diff options
Diffstat (limited to 'include/uapi/linux')
49 files changed, 717 insertions, 141 deletions
diff --git a/include/uapi/linux/Kbuild b/include/uapi/linux/Kbuild index ad821a3a99f5..6d4e92ccdc91 100644 --- a/include/uapi/linux/Kbuild +++ b/include/uapi/linux/Kbuild | |||
| @@ -245,6 +245,7 @@ endif | |||
| 245 | header-y += hw_breakpoint.h | 245 | header-y += hw_breakpoint.h |
| 246 | header-y += l2tp.h | 246 | header-y += l2tp.h |
| 247 | header-y += libc-compat.h | 247 | header-y += libc-compat.h |
| 248 | header-y += lirc.h | ||
| 248 | header-y += limits.h | 249 | header-y += limits.h |
| 249 | header-y += llc.h | 250 | header-y += llc.h |
| 250 | header-y += loop.h | 251 | header-y += loop.h |
diff --git a/include/uapi/linux/batman_adv.h b/include/uapi/linux/batman_adv.h new file mode 100644 index 000000000000..0fbf6fd4711b --- /dev/null +++ b/include/uapi/linux/batman_adv.h | |||
| @@ -0,0 +1,114 @@ | |||
| 1 | /* Copyright (C) 2016 B.A.T.M.A.N. contributors: | ||
| 2 | * | ||
| 3 | * Matthias Schiffer | ||
| 4 | * | ||
| 5 | * Permission to use, copy, modify, and/or distribute this software for any | ||
| 6 | * purpose with or without fee is hereby granted, provided that the above | ||
| 7 | * copyright notice and this permission notice appear in all copies. | ||
| 8 | * | ||
| 9 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | ||
| 10 | * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | ||
| 11 | * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | ||
| 12 | * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | ||
| 13 | * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | ||
| 14 | * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | ||
| 15 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||
| 16 | */ | ||
| 17 | |||
| 18 | #ifndef _UAPI_LINUX_BATMAN_ADV_H_ | ||
| 19 | #define _UAPI_LINUX_BATMAN_ADV_H_ | ||
| 20 | |||
| 21 | #define BATADV_NL_NAME "batadv" | ||
| 22 | |||
| 23 | #define BATADV_NL_MCAST_GROUP_TPMETER "tpmeter" | ||
| 24 | |||
| 25 | /** | ||
| 26 | * enum batadv_nl_attrs - batman-adv netlink attributes | ||
| 27 | * | ||
| 28 | * @BATADV_ATTR_UNSPEC: unspecified attribute to catch errors | ||
| 29 | * @BATADV_ATTR_VERSION: batman-adv version string | ||
| 30 | * @BATADV_ATTR_ALGO_NAME: name of routing algorithm | ||
| 31 | * @BATADV_ATTR_MESH_IFINDEX: index of the batman-adv interface | ||
| 32 | * @BATADV_ATTR_MESH_IFNAME: name of the batman-adv interface | ||
| 33 | * @BATADV_ATTR_MESH_ADDRESS: mac address of the batman-adv interface | ||
| 34 | * @BATADV_ATTR_HARD_IFINDEX: index of the non-batman-adv interface | ||
| 35 | * @BATADV_ATTR_HARD_IFNAME: name of the non-batman-adv interface | ||
| 36 | * @BATADV_ATTR_HARD_ADDRESS: mac address of the non-batman-adv interface | ||
| 37 | * @BATADV_ATTR_ORIG_ADDRESS: originator mac address | ||
| 38 | * @BATADV_ATTR_TPMETER_RESULT: result of run (see batadv_tp_meter_status) | ||
| 39 | * @BATADV_ATTR_TPMETER_TEST_TIME: time (msec) the run took | ||
| 40 | * @BATADV_ATTR_TPMETER_BYTES: amount of acked bytes during run | ||
| 41 | * @BATADV_ATTR_TPMETER_COOKIE: session cookie to match tp_meter session | ||
| 42 | * @BATADV_ATTR_PAD: attribute used for padding for 64-bit alignment | ||
| 43 | * @__BATADV_ATTR_AFTER_LAST: internal use | ||
| 44 | * @NUM_BATADV_ATTR: total number of batadv_nl_attrs available | ||
| 45 | * @BATADV_ATTR_MAX: highest attribute number currently defined | ||
| 46 | */ | ||
| 47 | enum batadv_nl_attrs { | ||
| 48 | BATADV_ATTR_UNSPEC, | ||
| 49 | BATADV_ATTR_VERSION, | ||
| 50 | BATADV_ATTR_ALGO_NAME, | ||
| 51 | BATADV_ATTR_MESH_IFINDEX, | ||
| 52 | BATADV_ATTR_MESH_IFNAME, | ||
| 53 | BATADV_ATTR_MESH_ADDRESS, | ||
| 54 | BATADV_ATTR_HARD_IFINDEX, | ||
| 55 | BATADV_ATTR_HARD_IFNAME, | ||
| 56 | BATADV_ATTR_HARD_ADDRESS, | ||
| 57 | BATADV_ATTR_ORIG_ADDRESS, | ||
| 58 | BATADV_ATTR_TPMETER_RESULT, | ||
| 59 | BATADV_ATTR_TPMETER_TEST_TIME, | ||
| 60 | BATADV_ATTR_TPMETER_BYTES, | ||
| 61 | BATADV_ATTR_TPMETER_COOKIE, | ||
| 62 | BATADV_ATTR_PAD, | ||
| 63 | /* add attributes above here, update the policy in netlink.c */ | ||
| 64 | __BATADV_ATTR_AFTER_LAST, | ||
| 65 | NUM_BATADV_ATTR = __BATADV_ATTR_AFTER_LAST, | ||
| 66 | BATADV_ATTR_MAX = __BATADV_ATTR_AFTER_LAST - 1 | ||
| 67 | }; | ||
| 68 | |||
| 69 | /** | ||
| 70 | * enum batadv_nl_commands - supported batman-adv netlink commands | ||
| 71 | * | ||
| 72 | * @BATADV_CMD_UNSPEC: unspecified command to catch errors | ||
| 73 | * @BATADV_CMD_GET_MESH_INFO: Query basic information about batman-adv device | ||
| 74 | * @BATADV_CMD_TP_METER: Start a tp meter session | ||
| 75 | * @BATADV_CMD_TP_METER_CANCEL: Cancel a tp meter session | ||
| 76 | * @__BATADV_CMD_AFTER_LAST: internal use | ||
| 77 | * @BATADV_CMD_MAX: highest used command number | ||
| 78 | */ | ||
| 79 | enum batadv_nl_commands { | ||
| 80 | BATADV_CMD_UNSPEC, | ||
| 81 | BATADV_CMD_GET_MESH_INFO, | ||
| 82 | BATADV_CMD_TP_METER, | ||
| 83 | BATADV_CMD_TP_METER_CANCEL, | ||
| 84 | /* add new commands above here */ | ||
| 85 | __BATADV_CMD_AFTER_LAST, | ||
| 86 | BATADV_CMD_MAX = __BATADV_CMD_AFTER_LAST - 1 | ||
| 87 | }; | ||
| 88 | |||
| 89 | /** | ||
| 90 | * enum batadv_tp_meter_reason - reason of a tp meter test run stop | ||
| 91 | * @BATADV_TP_REASON_COMPLETE: sender finished tp run | ||
| 92 | * @BATADV_TP_REASON_CANCEL: sender was stopped during run | ||
| 93 | * @BATADV_TP_REASON_DST_UNREACHABLE: receiver could not be reached or didn't | ||
| 94 | * answer | ||
| 95 | * @BATADV_TP_REASON_RESEND_LIMIT: (unused) sender retry reached limit | ||
| 96 | * @BATADV_TP_REASON_ALREADY_ONGOING: test to or from the same node already | ||
| 97 | * ongoing | ||
| 98 | * @BATADV_TP_REASON_MEMORY_ERROR: test was stopped due to low memory | ||
| 99 | * @BATADV_TP_REASON_CANT_SEND: failed to send via outgoing interface | ||
| 100 | * @BATADV_TP_REASON_TOO_MANY: too many ongoing sessions | ||
| 101 | */ | ||
| 102 | enum batadv_tp_meter_reason { | ||
| 103 | BATADV_TP_REASON_COMPLETE = 3, | ||
| 104 | BATADV_TP_REASON_CANCEL = 4, | ||
| 105 | /* error status >= 128 */ | ||
| 106 | BATADV_TP_REASON_DST_UNREACHABLE = 128, | ||
| 107 | BATADV_TP_REASON_RESEND_LIMIT = 129, | ||
| 108 | BATADV_TP_REASON_ALREADY_ONGOING = 130, | ||
| 109 | BATADV_TP_REASON_MEMORY_ERROR = 131, | ||
| 110 | BATADV_TP_REASON_CANT_SEND = 132, | ||
| 111 | BATADV_TP_REASON_TOO_MANY = 133, | ||
| 112 | }; | ||
| 113 | |||
| 114 | #endif /* _UAPI_LINUX_BATMAN_ADV_H_ */ | ||
diff --git a/include/uapi/linux/bpf.h b/include/uapi/linux/bpf.h index 406459b935a2..da218fec6056 100644 --- a/include/uapi/linux/bpf.h +++ b/include/uapi/linux/bpf.h | |||
| @@ -84,6 +84,7 @@ enum bpf_map_type { | |||
| 84 | BPF_MAP_TYPE_PERCPU_HASH, | 84 | BPF_MAP_TYPE_PERCPU_HASH, |
| 85 | BPF_MAP_TYPE_PERCPU_ARRAY, | 85 | BPF_MAP_TYPE_PERCPU_ARRAY, |
| 86 | BPF_MAP_TYPE_STACK_TRACE, | 86 | BPF_MAP_TYPE_STACK_TRACE, |
| 87 | BPF_MAP_TYPE_CGROUP_ARRAY, | ||
| 87 | }; | 88 | }; |
| 88 | 89 | ||
| 89 | enum bpf_prog_type { | 90 | enum bpf_prog_type { |
| @@ -93,6 +94,7 @@ enum bpf_prog_type { | |||
| 93 | BPF_PROG_TYPE_SCHED_CLS, | 94 | BPF_PROG_TYPE_SCHED_CLS, |
| 94 | BPF_PROG_TYPE_SCHED_ACT, | 95 | BPF_PROG_TYPE_SCHED_ACT, |
| 95 | BPF_PROG_TYPE_TRACEPOINT, | 96 | BPF_PROG_TYPE_TRACEPOINT, |
| 97 | BPF_PROG_TYPE_XDP, | ||
| 96 | }; | 98 | }; |
| 97 | 99 | ||
| 98 | #define BPF_PSEUDO_MAP_FD 1 | 100 | #define BPF_PSEUDO_MAP_FD 1 |
| @@ -313,6 +315,66 @@ enum bpf_func_id { | |||
| 313 | */ | 315 | */ |
| 314 | BPF_FUNC_skb_get_tunnel_opt, | 316 | BPF_FUNC_skb_get_tunnel_opt, |
| 315 | BPF_FUNC_skb_set_tunnel_opt, | 317 | BPF_FUNC_skb_set_tunnel_opt, |
| 318 | |||
| 319 | /** | ||
| 320 | * bpf_skb_change_proto(skb, proto, flags) | ||
| 321 | * Change protocol of the skb. Currently supported is | ||
| 322 | * v4 -> v6, v6 -> v4 transitions. The helper will also | ||
| 323 | * resize the skb. eBPF program is expected to fill the | ||
| 324 | * new headers via skb_store_bytes and lX_csum_replace. | ||
| 325 | * @skb: pointer to skb | ||
| 326 | * @proto: new skb->protocol type | ||
| 327 | * @flags: reserved | ||
| 328 | * Return: 0 on success or negative error | ||
| 329 | */ | ||
| 330 | BPF_FUNC_skb_change_proto, | ||
| 331 | |||
| 332 | /** | ||
| 333 | * bpf_skb_change_type(skb, type) | ||
| 334 | * Change packet type of skb. | ||
| 335 | * @skb: pointer to skb | ||
| 336 | * @type: new skb->pkt_type type | ||
| 337 | * Return: 0 on success or negative error | ||
| 338 | */ | ||
| 339 | BPF_FUNC_skb_change_type, | ||
| 340 | |||
| 341 | /** | ||
| 342 | * bpf_skb_in_cgroup(skb, map, index) - Check cgroup2 membership of skb | ||
| 343 | * @skb: pointer to skb | ||
| 344 | * @map: pointer to bpf_map in BPF_MAP_TYPE_CGROUP_ARRAY type | ||
| 345 | * @index: index of the cgroup in the bpf_map | ||
| 346 | * Return: | ||
| 347 | * == 0 skb failed the cgroup2 descendant test | ||
| 348 | * == 1 skb succeeded the cgroup2 descendant test | ||
| 349 | * < 0 error | ||
| 350 | */ | ||
| 351 | BPF_FUNC_skb_in_cgroup, | ||
| 352 | |||
| 353 | /** | ||
| 354 | * bpf_get_hash_recalc(skb) | ||
| 355 | * Retrieve and possibly recalculate skb->hash. | ||
| 356 | * @skb: pointer to skb | ||
| 357 | * Return: hash | ||
| 358 | */ | ||
| 359 | BPF_FUNC_get_hash_recalc, | ||
| 360 | |||
| 361 | /** | ||
| 362 | * u64 bpf_get_current_task(void) | ||
| 363 | * Returns current task_struct | ||
| 364 | * Return: current | ||
| 365 | */ | ||
| 366 | BPF_FUNC_get_current_task, | ||
| 367 | |||
| 368 | /** | ||
| 369 | * bpf_probe_write_user(void *dst, void *src, int len) | ||
| 370 | * safely attempt to write to a location | ||
| 371 | * @dst: destination address in userspace | ||
| 372 | * @src: source address on stack | ||
| 373 | * @len: number of bytes to copy | ||
| 374 | * Return: 0 on success or negative error | ||
| 375 | */ | ||
| 376 | BPF_FUNC_probe_write_user, | ||
| 377 | |||
| 316 | __BPF_FUNC_MAX_ID, | 378 | __BPF_FUNC_MAX_ID, |
| 317 | }; | 379 | }; |
| 318 | 380 | ||
| @@ -347,9 +409,11 @@ enum bpf_func_id { | |||
| 347 | #define BPF_F_ZERO_CSUM_TX (1ULL << 1) | 409 | #define BPF_F_ZERO_CSUM_TX (1ULL << 1) |
| 348 | #define BPF_F_DONT_FRAGMENT (1ULL << 2) | 410 | #define BPF_F_DONT_FRAGMENT (1ULL << 2) |
| 349 | 411 | ||
| 350 | /* BPF_FUNC_perf_event_output flags. */ | 412 | /* BPF_FUNC_perf_event_output and BPF_FUNC_perf_event_read flags. */ |
| 351 | #define BPF_F_INDEX_MASK 0xffffffffULL | 413 | #define BPF_F_INDEX_MASK 0xffffffffULL |
| 352 | #define BPF_F_CURRENT_CPU BPF_F_INDEX_MASK | 414 | #define BPF_F_CURRENT_CPU BPF_F_INDEX_MASK |
| 415 | /* BPF_FUNC_perf_event_output for sk_buff input context. */ | ||
| 416 | #define BPF_F_CTXLEN_MASK (0xfffffULL << 32) | ||
| 353 | 417 | ||
| 354 | /* user accessible mirror of in-kernel sk_buff. | 418 | /* user accessible mirror of in-kernel sk_buff. |
| 355 | * new fields can only be added to the end of this structure | 419 | * new fields can only be added to the end of this structure |
| @@ -386,4 +450,24 @@ struct bpf_tunnel_key { | |||
| 386 | __u32 tunnel_label; | 450 | __u32 tunnel_label; |
| 387 | }; | 451 | }; |
| 388 | 452 | ||
| 453 | /* User return codes for XDP prog type. | ||
| 454 | * A valid XDP program must return one of these defined values. All other | ||
| 455 | * return codes are reserved for future use. Unknown return codes will result | ||
| 456 | * in packet drop. | ||
| 457 | */ | ||
| 458 | enum xdp_action { | ||
| 459 | XDP_ABORTED = 0, | ||
| 460 | XDP_DROP, | ||
| 461 | XDP_PASS, | ||
| 462 | XDP_TX, | ||
| 463 | }; | ||
| 464 | |||
| 465 | /* user accessible metadata for XDP packet hook | ||
| 466 | * new fields must be added to the end of this structure | ||
| 467 | */ | ||
| 468 | struct xdp_md { | ||
| 469 | __u32 data; | ||
| 470 | __u32 data_end; | ||
| 471 | }; | ||
| 472 | |||
| 389 | #endif /* _UAPI__LINUX_BPF_H__ */ | 473 | #endif /* _UAPI__LINUX_BPF_H__ */ |
diff --git a/include/uapi/linux/btrfs.h b/include/uapi/linux/btrfs.h index 23c6960e94a4..2bdd1e3e7007 100644 --- a/include/uapi/linux/btrfs.h +++ b/include/uapi/linux/btrfs.h | |||
| @@ -118,7 +118,7 @@ struct btrfs_ioctl_vol_args_v2 { | |||
| 118 | }; | 118 | }; |
| 119 | union { | 119 | union { |
| 120 | char name[BTRFS_SUBVOL_NAME_MAX + 1]; | 120 | char name[BTRFS_SUBVOL_NAME_MAX + 1]; |
| 121 | u64 devid; | 121 | __u64 devid; |
| 122 | }; | 122 | }; |
| 123 | }; | 123 | }; |
| 124 | 124 | ||
diff --git a/include/uapi/linux/can/bcm.h b/include/uapi/linux/can/bcm.h index 7a291dc1ff15..cefb304414ba 100644 --- a/include/uapi/linux/can/bcm.h +++ b/include/uapi/linux/can/bcm.h | |||
| @@ -99,5 +99,6 @@ enum { | |||
| 99 | #define RX_ANNOUNCE_RESUME 0x0100 | 99 | #define RX_ANNOUNCE_RESUME 0x0100 |
| 100 | #define TX_RESET_MULTI_IDX 0x0200 | 100 | #define TX_RESET_MULTI_IDX 0x0200 |
| 101 | #define RX_RTR_FRAME 0x0400 | 101 | #define RX_RTR_FRAME 0x0400 |
| 102 | #define CAN_FD_FRAME 0x0800 | ||
| 102 | 103 | ||
| 103 | #endif /* !_UAPI_CAN_BCM_H */ | 104 | #endif /* !_UAPI_CAN_BCM_H */ |
diff --git a/include/uapi/linux/cryptouser.h b/include/uapi/linux/cryptouser.h index 2e67bb64c1da..79b5ded2001a 100644 --- a/include/uapi/linux/cryptouser.h +++ b/include/uapi/linux/cryptouser.h | |||
| @@ -45,6 +45,7 @@ enum crypto_attr_type_t { | |||
| 45 | CRYPTOCFGA_REPORT_RNG, /* struct crypto_report_rng */ | 45 | CRYPTOCFGA_REPORT_RNG, /* struct crypto_report_rng */ |
| 46 | CRYPTOCFGA_REPORT_CIPHER, /* struct crypto_report_cipher */ | 46 | CRYPTOCFGA_REPORT_CIPHER, /* struct crypto_report_cipher */ |
| 47 | CRYPTOCFGA_REPORT_AKCIPHER, /* struct crypto_report_akcipher */ | 47 | CRYPTOCFGA_REPORT_AKCIPHER, /* struct crypto_report_akcipher */ |
| 48 | CRYPTOCFGA_REPORT_KPP, /* struct crypto_report_kpp */ | ||
| 48 | __CRYPTOCFGA_MAX | 49 | __CRYPTOCFGA_MAX |
| 49 | 50 | ||
| 50 | #define CRYPTOCFGA_MAX (__CRYPTOCFGA_MAX - 1) | 51 | #define CRYPTOCFGA_MAX (__CRYPTOCFGA_MAX - 1) |
| @@ -107,5 +108,9 @@ struct crypto_report_akcipher { | |||
| 107 | char type[CRYPTO_MAX_NAME]; | 108 | char type[CRYPTO_MAX_NAME]; |
| 108 | }; | 109 | }; |
| 109 | 110 | ||
| 111 | struct crypto_report_kpp { | ||
| 112 | char type[CRYPTO_MAX_NAME]; | ||
| 113 | }; | ||
| 114 | |||
| 110 | #define CRYPTO_REPORT_MAXSIZE (sizeof(struct crypto_user_alg) + \ | 115 | #define CRYPTO_REPORT_MAXSIZE (sizeof(struct crypto_user_alg) + \ |
| 111 | sizeof(struct crypto_report_blkcipher)) | 116 | sizeof(struct crypto_report_blkcipher)) |
diff --git a/include/uapi/linux/devlink.h b/include/uapi/linux/devlink.h index ba0073b26fa6..915bfa74458c 100644 --- a/include/uapi/linux/devlink.h +++ b/include/uapi/linux/devlink.h | |||
| @@ -57,6 +57,8 @@ enum devlink_command { | |||
| 57 | DEVLINK_CMD_SB_OCC_SNAPSHOT, | 57 | DEVLINK_CMD_SB_OCC_SNAPSHOT, |
| 58 | DEVLINK_CMD_SB_OCC_MAX_CLEAR, | 58 | DEVLINK_CMD_SB_OCC_MAX_CLEAR, |
| 59 | 59 | ||
| 60 | DEVLINK_CMD_ESWITCH_MODE_GET, | ||
| 61 | DEVLINK_CMD_ESWITCH_MODE_SET, | ||
| 60 | /* add new commands above here */ | 62 | /* add new commands above here */ |
| 61 | 63 | ||
| 62 | __DEVLINK_CMD_MAX, | 64 | __DEVLINK_CMD_MAX, |
| @@ -95,6 +97,11 @@ enum devlink_sb_threshold_type { | |||
| 95 | 97 | ||
| 96 | #define DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX 20 | 98 | #define DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX 20 |
| 97 | 99 | ||
| 100 | enum devlink_eswitch_mode { | ||
| 101 | DEVLINK_ESWITCH_MODE_LEGACY, | ||
| 102 | DEVLINK_ESWITCH_MODE_SWITCHDEV, | ||
| 103 | }; | ||
| 104 | |||
| 98 | enum devlink_attr { | 105 | enum devlink_attr { |
| 99 | /* don't change the order or add anything between, this is ABI! */ | 106 | /* don't change the order or add anything between, this is ABI! */ |
| 100 | DEVLINK_ATTR_UNSPEC, | 107 | DEVLINK_ATTR_UNSPEC, |
| @@ -125,6 +132,7 @@ enum devlink_attr { | |||
| 125 | DEVLINK_ATTR_SB_TC_INDEX, /* u16 */ | 132 | DEVLINK_ATTR_SB_TC_INDEX, /* u16 */ |
| 126 | DEVLINK_ATTR_SB_OCC_CUR, /* u32 */ | 133 | DEVLINK_ATTR_SB_OCC_CUR, /* u32 */ |
| 127 | DEVLINK_ATTR_SB_OCC_MAX, /* u32 */ | 134 | DEVLINK_ATTR_SB_OCC_MAX, /* u32 */ |
| 135 | DEVLINK_ATTR_ESWITCH_MODE, /* u16 */ | ||
| 128 | 136 | ||
| 129 | /* add new attributes above here, update the policy in devlink.c */ | 137 | /* add new attributes above here, update the policy in devlink.c */ |
| 130 | 138 | ||
diff --git a/include/uapi/linux/dm-ioctl.h b/include/uapi/linux/dm-ioctl.h index 30afd0a23c4b..4bf9f1eabffc 100644 --- a/include/uapi/linux/dm-ioctl.h +++ b/include/uapi/linux/dm-ioctl.h | |||
| @@ -267,9 +267,9 @@ enum { | |||
| 267 | #define DM_DEV_SET_GEOMETRY _IOWR(DM_IOCTL, DM_DEV_SET_GEOMETRY_CMD, struct dm_ioctl) | 267 | #define DM_DEV_SET_GEOMETRY _IOWR(DM_IOCTL, DM_DEV_SET_GEOMETRY_CMD, struct dm_ioctl) |
| 268 | 268 | ||
| 269 | #define DM_VERSION_MAJOR 4 | 269 | #define DM_VERSION_MAJOR 4 |
| 270 | #define DM_VERSION_MINOR 34 | 270 | #define DM_VERSION_MINOR 35 |
| 271 | #define DM_VERSION_PATCHLEVEL 0 | 271 | #define DM_VERSION_PATCHLEVEL 0 |
| 272 | #define DM_VERSION_EXTRA "-ioctl (2015-10-28)" | 272 | #define DM_VERSION_EXTRA "-ioctl (2016-06-23)" |
| 273 | 273 | ||
| 274 | /* Status bits */ | 274 | /* Status bits */ |
| 275 | #define DM_READONLY_FLAG (1 << 0) /* In/Out */ | 275 | #define DM_READONLY_FLAG (1 << 0) /* In/Out */ |
diff --git a/include/uapi/linux/elf-em.h b/include/uapi/linux/elf-em.h index c3fdfe79e5cc..cb5d1a519202 100644 --- a/include/uapi/linux/elf-em.h +++ b/include/uapi/linux/elf-em.h | |||
| @@ -40,6 +40,7 @@ | |||
| 40 | #define EM_TILEPRO 188 /* Tilera TILEPro */ | 40 | #define EM_TILEPRO 188 /* Tilera TILEPro */ |
| 41 | #define EM_MICROBLAZE 189 /* Xilinx MicroBlaze */ | 41 | #define EM_MICROBLAZE 189 /* Xilinx MicroBlaze */ |
| 42 | #define EM_TILEGX 191 /* Tilera TILE-Gx */ | 42 | #define EM_TILEGX 191 /* Tilera TILE-Gx */ |
| 43 | #define EM_BPF 247 /* Linux BPF - in-kernel virtual machine */ | ||
| 43 | #define EM_FRV 0x5441 /* Fujitsu FR-V */ | 44 | #define EM_FRV 0x5441 /* Fujitsu FR-V */ |
| 44 | #define EM_AVR32 0x18ad /* Atmel AVR32 */ | 45 | #define EM_AVR32 0x18ad /* Atmel AVR32 */ |
| 45 | 46 | ||
diff --git a/include/uapi/linux/ethtool.h b/include/uapi/linux/ethtool.h index 5f030b46cff4..b8f38e84d93a 100644 --- a/include/uapi/linux/ethtool.h +++ b/include/uapi/linux/ethtool.h | |||
| @@ -1362,6 +1362,7 @@ enum ethtool_link_mode_bit_indices { | |||
| 1362 | ETHTOOL_LINK_MODE_100000baseSR4_Full_BIT = 37, | 1362 | ETHTOOL_LINK_MODE_100000baseSR4_Full_BIT = 37, |
| 1363 | ETHTOOL_LINK_MODE_100000baseCR4_Full_BIT = 38, | 1363 | ETHTOOL_LINK_MODE_100000baseCR4_Full_BIT = 38, |
| 1364 | ETHTOOL_LINK_MODE_100000baseLR4_ER4_Full_BIT = 39, | 1364 | ETHTOOL_LINK_MODE_100000baseLR4_ER4_Full_BIT = 39, |
| 1365 | ETHTOOL_LINK_MODE_50000baseSR2_Full_BIT = 40, | ||
| 1365 | 1366 | ||
| 1366 | /* Last allowed bit for __ETHTOOL_LINK_MODE_LEGACY_MASK is bit | 1367 | /* Last allowed bit for __ETHTOOL_LINK_MODE_LEGACY_MASK is bit |
| 1367 | * 31. Please do NOT define any SUPPORTED_* or ADVERTISED_* | 1368 | * 31. Please do NOT define any SUPPORTED_* or ADVERTISED_* |
| @@ -1370,7 +1371,7 @@ enum ethtool_link_mode_bit_indices { | |||
| 1370 | */ | 1371 | */ |
| 1371 | 1372 | ||
| 1372 | __ETHTOOL_LINK_MODE_LAST | 1373 | __ETHTOOL_LINK_MODE_LAST |
| 1373 | = ETHTOOL_LINK_MODE_100000baseLR4_ER4_Full_BIT, | 1374 | = ETHTOOL_LINK_MODE_50000baseSR2_Full_BIT, |
| 1374 | }; | 1375 | }; |
| 1375 | 1376 | ||
| 1376 | #define __ETHTOOL_LINK_MODE_LEGACY_MASK(base_name) \ | 1377 | #define __ETHTOOL_LINK_MODE_LEGACY_MASK(base_name) \ |
diff --git a/include/uapi/linux/fib_rules.h b/include/uapi/linux/fib_rules.h index 620c8a5ddc00..14404b3ebb89 100644 --- a/include/uapi/linux/fib_rules.h +++ b/include/uapi/linux/fib_rules.h | |||
| @@ -50,6 +50,7 @@ enum { | |||
| 50 | FRA_FWMASK, /* mask for netfilter mark */ | 50 | FRA_FWMASK, /* mask for netfilter mark */ |
| 51 | FRA_OIFNAME, | 51 | FRA_OIFNAME, |
| 52 | FRA_PAD, | 52 | FRA_PAD, |
| 53 | FRA_L3MDEV, /* iif or oif is l3mdev goto its table */ | ||
| 53 | __FRA_MAX | 54 | __FRA_MAX |
| 54 | }; | 55 | }; |
| 55 | 56 | ||
diff --git a/include/uapi/linux/fuse.h b/include/uapi/linux/fuse.h index 5974fae54e12..27e17363263a 100644 --- a/include/uapi/linux/fuse.h +++ b/include/uapi/linux/fuse.h | |||
| @@ -105,6 +105,9 @@ | |||
| 105 | * | 105 | * |
| 106 | * 7.24 | 106 | * 7.24 |
| 107 | * - add FUSE_LSEEK for SEEK_HOLE and SEEK_DATA support | 107 | * - add FUSE_LSEEK for SEEK_HOLE and SEEK_DATA support |
| 108 | * | ||
| 109 | * 7.25 | ||
| 110 | * - add FUSE_PARALLEL_DIROPS | ||
| 108 | */ | 111 | */ |
| 109 | 112 | ||
| 110 | #ifndef _LINUX_FUSE_H | 113 | #ifndef _LINUX_FUSE_H |
| @@ -140,7 +143,7 @@ | |||
| 140 | #define FUSE_KERNEL_VERSION 7 | 143 | #define FUSE_KERNEL_VERSION 7 |
| 141 | 144 | ||
| 142 | /** Minor version number of this interface */ | 145 | /** Minor version number of this interface */ |
| 143 | #define FUSE_KERNEL_MINOR_VERSION 24 | 146 | #define FUSE_KERNEL_MINOR_VERSION 25 |
| 144 | 147 | ||
| 145 | /** The node ID of the root inode */ | 148 | /** The node ID of the root inode */ |
| 146 | #define FUSE_ROOT_ID 1 | 149 | #define FUSE_ROOT_ID 1 |
| @@ -234,6 +237,7 @@ struct fuse_file_lock { | |||
| 234 | * FUSE_ASYNC_DIO: asynchronous direct I/O submission | 237 | * FUSE_ASYNC_DIO: asynchronous direct I/O submission |
| 235 | * FUSE_WRITEBACK_CACHE: use writeback cache for buffered writes | 238 | * FUSE_WRITEBACK_CACHE: use writeback cache for buffered writes |
| 236 | * FUSE_NO_OPEN_SUPPORT: kernel supports zero-message opens | 239 | * FUSE_NO_OPEN_SUPPORT: kernel supports zero-message opens |
| 240 | * FUSE_PARALLEL_DIROPS: allow parallel lookups and readdir | ||
| 237 | */ | 241 | */ |
| 238 | #define FUSE_ASYNC_READ (1 << 0) | 242 | #define FUSE_ASYNC_READ (1 << 0) |
| 239 | #define FUSE_POSIX_LOCKS (1 << 1) | 243 | #define FUSE_POSIX_LOCKS (1 << 1) |
| @@ -253,6 +257,7 @@ struct fuse_file_lock { | |||
| 253 | #define FUSE_ASYNC_DIO (1 << 15) | 257 | #define FUSE_ASYNC_DIO (1 << 15) |
| 254 | #define FUSE_WRITEBACK_CACHE (1 << 16) | 258 | #define FUSE_WRITEBACK_CACHE (1 << 16) |
| 255 | #define FUSE_NO_OPEN_SUPPORT (1 << 17) | 259 | #define FUSE_NO_OPEN_SUPPORT (1 << 17) |
| 260 | #define FUSE_PARALLEL_DIROPS (1 << 18) | ||
| 256 | 261 | ||
| 257 | /** | 262 | /** |
| 258 | * CUSE INIT request/reply flags | 263 | * CUSE INIT request/reply flags |
diff --git a/include/uapi/linux/gpio.h b/include/uapi/linux/gpio.h index d0a3cac72250..333d3544c964 100644 --- a/include/uapi/linux/gpio.h +++ b/include/uapi/linux/gpio.h | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | /* | 1 | /* |
| 2 | * <linux/gpio.h> - userspace ABI for the GPIO character devices | 2 | * <linux/gpio.h> - userspace ABI for the GPIO character devices |
| 3 | * | 3 | * |
| 4 | * Copyright (C) 2015 Linus Walleij | 4 | * Copyright (C) 2016 Linus Walleij |
| 5 | * | 5 | * |
| 6 | * This program is free software; you can redistribute it and/or modify it | 6 | * This program is free software; you can redistribute it and/or modify it |
| 7 | * under the terms of the GNU General Public License version 2 as published by | 7 | * under the terms of the GNU General Public License version 2 as published by |
| @@ -26,8 +26,8 @@ struct gpiochip_info { | |||
| 26 | __u32 lines; | 26 | __u32 lines; |
| 27 | }; | 27 | }; |
| 28 | 28 | ||
| 29 | /* Line is in use by the kernel */ | 29 | /* Informational flags */ |
| 30 | #define GPIOLINE_FLAG_KERNEL (1UL << 0) | 30 | #define GPIOLINE_FLAG_KERNEL (1UL << 0) /* Line used by the kernel */ |
| 31 | #define GPIOLINE_FLAG_IS_OUT (1UL << 1) | 31 | #define GPIOLINE_FLAG_IS_OUT (1UL << 1) |
| 32 | #define GPIOLINE_FLAG_ACTIVE_LOW (1UL << 2) | 32 | #define GPIOLINE_FLAG_ACTIVE_LOW (1UL << 2) |
| 33 | #define GPIOLINE_FLAG_OPEN_DRAIN (1UL << 3) | 33 | #define GPIOLINE_FLAG_OPEN_DRAIN (1UL << 3) |
| @@ -52,7 +52,106 @@ struct gpioline_info { | |||
| 52 | char consumer[32]; | 52 | char consumer[32]; |
| 53 | }; | 53 | }; |
| 54 | 54 | ||
| 55 | /* Maximum number of requested handles */ | ||
| 56 | #define GPIOHANDLES_MAX 64 | ||
| 57 | |||
| 58 | /* Linerequest flags */ | ||
| 59 | #define GPIOHANDLE_REQUEST_INPUT (1UL << 0) | ||
| 60 | #define GPIOHANDLE_REQUEST_OUTPUT (1UL << 1) | ||
| 61 | #define GPIOHANDLE_REQUEST_ACTIVE_LOW (1UL << 2) | ||
| 62 | #define GPIOHANDLE_REQUEST_OPEN_DRAIN (1UL << 3) | ||
| 63 | #define GPIOHANDLE_REQUEST_OPEN_SOURCE (1UL << 4) | ||
| 64 | |||
| 65 | /** | ||
| 66 | * struct gpiohandle_request - Information about a GPIO handle request | ||
| 67 | * @lineoffsets: an array desired lines, specified by offset index for the | ||
| 68 | * associated GPIO device | ||
| 69 | * @flags: desired flags for the desired GPIO lines, such as | ||
| 70 | * GPIOHANDLE_REQUEST_OUTPUT, GPIOHANDLE_REQUEST_ACTIVE_LOW etc, OR:ed | ||
| 71 | * together. Note that even if multiple lines are requested, the same flags | ||
| 72 | * must be applicable to all of them, if you want lines with individual | ||
| 73 | * flags set, request them one by one. It is possible to select | ||
| 74 | * a batch of input or output lines, but they must all have the same | ||
| 75 | * characteristics, i.e. all inputs or all outputs, all active low etc | ||
| 76 | * @default_values: if the GPIOHANDLE_REQUEST_OUTPUT is set for a requested | ||
| 77 | * line, this specifies the default output value, should be 0 (low) or | ||
| 78 | * 1 (high), anything else than 0 or 1 will be interpreted as 1 (high) | ||
| 79 | * @consumer_label: a desired consumer label for the selected GPIO line(s) | ||
| 80 | * such as "my-bitbanged-relay" | ||
| 81 | * @lines: number of lines requested in this request, i.e. the number of | ||
| 82 | * valid fields in the above arrays, set to 1 to request a single line | ||
| 83 | * @fd: if successful this field will contain a valid anonymous file handle | ||
| 84 | * after a GPIO_GET_LINEHANDLE_IOCTL operation, zero or negative value | ||
| 85 | * means error | ||
| 86 | */ | ||
| 87 | struct gpiohandle_request { | ||
| 88 | __u32 lineoffsets[GPIOHANDLES_MAX]; | ||
| 89 | __u32 flags; | ||
| 90 | __u8 default_values[GPIOHANDLES_MAX]; | ||
| 91 | char consumer_label[32]; | ||
| 92 | __u32 lines; | ||
| 93 | int fd; | ||
| 94 | }; | ||
| 95 | |||
| 96 | /** | ||
| 97 | * struct gpiohandle_data - Information of values on a GPIO handle | ||
| 98 | * @values: when getting the state of lines this contains the current | ||
| 99 | * state of a line, when setting the state of lines these should contain | ||
| 100 | * the desired target state | ||
| 101 | */ | ||
| 102 | struct gpiohandle_data { | ||
| 103 | __u8 values[GPIOHANDLES_MAX]; | ||
| 104 | }; | ||
| 105 | |||
| 106 | #define GPIOHANDLE_GET_LINE_VALUES_IOCTL _IOWR(0xB4, 0x08, struct gpiohandle_data) | ||
| 107 | #define GPIOHANDLE_SET_LINE_VALUES_IOCTL _IOWR(0xB4, 0x09, struct gpiohandle_data) | ||
| 108 | |||
| 109 | /* Eventrequest flags */ | ||
| 110 | #define GPIOEVENT_REQUEST_RISING_EDGE (1UL << 0) | ||
| 111 | #define GPIOEVENT_REQUEST_FALLING_EDGE (1UL << 1) | ||
| 112 | #define GPIOEVENT_REQUEST_BOTH_EDGES ((1UL << 0) | (1UL << 1)) | ||
| 113 | |||
| 114 | /** | ||
| 115 | * struct gpioevent_request - Information about a GPIO event request | ||
| 116 | * @lineoffset: the desired line to subscribe to events from, specified by | ||
| 117 | * offset index for the associated GPIO device | ||
| 118 | * @handleflags: desired handle flags for the desired GPIO line, such as | ||
| 119 | * GPIOHANDLE_REQUEST_ACTIVE_LOW or GPIOHANDLE_REQUEST_OPEN_DRAIN | ||
| 120 | * @eventflags: desired flags for the desired GPIO event line, such as | ||
| 121 | * GPIOEVENT_REQUEST_RISING_EDGE or GPIOEVENT_REQUEST_FALLING_EDGE | ||
| 122 | * @consumer_label: a desired consumer label for the selected GPIO line(s) | ||
| 123 | * such as "my-listener" | ||
| 124 | * @fd: if successful this field will contain a valid anonymous file handle | ||
| 125 | * after a GPIO_GET_LINEEVENT_IOCTL operation, zero or negative value | ||
| 126 | * means error | ||
| 127 | */ | ||
| 128 | struct gpioevent_request { | ||
| 129 | __u32 lineoffset; | ||
| 130 | __u32 handleflags; | ||
| 131 | __u32 eventflags; | ||
| 132 | char consumer_label[32]; | ||
| 133 | int fd; | ||
| 134 | }; | ||
| 135 | |||
| 136 | /** | ||
| 137 | * GPIO event types | ||
| 138 | */ | ||
| 139 | #define GPIOEVENT_EVENT_RISING_EDGE 0x01 | ||
| 140 | #define GPIOEVENT_EVENT_FALLING_EDGE 0x02 | ||
| 141 | |||
| 142 | /** | ||
| 143 | * struct gpioevent_data - The actual event being pushed to userspace | ||
| 144 | * @timestamp: best estimate of time of event occurrence, in nanoseconds | ||
| 145 | * @id: event identifier | ||
| 146 | */ | ||
| 147 | struct gpioevent_data { | ||
| 148 | __u64 timestamp; | ||
| 149 | __u32 id; | ||
| 150 | }; | ||
| 151 | |||
| 55 | #define GPIO_GET_CHIPINFO_IOCTL _IOR(0xB4, 0x01, struct gpiochip_info) | 152 | #define GPIO_GET_CHIPINFO_IOCTL _IOR(0xB4, 0x01, struct gpiochip_info) |
| 56 | #define GPIO_GET_LINEINFO_IOCTL _IOWR(0xB4, 0x02, struct gpioline_info) | 153 | #define GPIO_GET_LINEINFO_IOCTL _IOWR(0xB4, 0x02, struct gpioline_info) |
| 154 | #define GPIO_GET_LINEHANDLE_IOCTL _IOWR(0xB4, 0x03, struct gpiohandle_request) | ||
| 155 | #define GPIO_GET_LINEEVENT_IOCTL _IOWR(0xB4, 0x04, struct gpioevent_request) | ||
| 57 | 156 | ||
| 58 | #endif /* _UAPI_GPIO_H_ */ | 157 | #endif /* _UAPI_GPIO_H_ */ |
diff --git a/include/uapi/linux/gtp.h b/include/uapi/linux/gtp.h index ca1054dd8249..72a04a0e8cce 100644 --- a/include/uapi/linux/gtp.h +++ b/include/uapi/linux/gtp.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | #ifndef _UAPI_LINUX_GTP_H_ | 1 | #ifndef _UAPI_LINUX_GTP_H_ |
| 2 | #define _UAPI_LINUX_GTP_H__ | 2 | #define _UAPI_LINUX_GTP_H_ |
| 3 | 3 | ||
| 4 | enum gtp_genl_cmds { | 4 | enum gtp_genl_cmds { |
| 5 | GTP_CMD_NEWPDP, | 5 | GTP_CMD_NEWPDP, |
diff --git a/include/uapi/linux/i2c.h b/include/uapi/linux/i2c.h index adcbef4bff61..009e27bb9abe 100644 --- a/include/uapi/linux/i2c.h +++ b/include/uapi/linux/i2c.h | |||
| @@ -102,6 +102,7 @@ struct i2c_msg { | |||
| 102 | #define I2C_FUNC_SMBUS_WRITE_BLOCK_DATA 0x02000000 | 102 | #define I2C_FUNC_SMBUS_WRITE_BLOCK_DATA 0x02000000 |
| 103 | #define I2C_FUNC_SMBUS_READ_I2C_BLOCK 0x04000000 /* I2C-like block xfer */ | 103 | #define I2C_FUNC_SMBUS_READ_I2C_BLOCK 0x04000000 /* I2C-like block xfer */ |
| 104 | #define I2C_FUNC_SMBUS_WRITE_I2C_BLOCK 0x08000000 /* w/ 1-byte reg. addr. */ | 104 | #define I2C_FUNC_SMBUS_WRITE_I2C_BLOCK 0x08000000 /* w/ 1-byte reg. addr. */ |
| 105 | #define I2C_FUNC_SMBUS_HOST_NOTIFY 0x10000000 | ||
| 105 | 106 | ||
| 106 | #define I2C_FUNC_SMBUS_BYTE (I2C_FUNC_SMBUS_READ_BYTE | \ | 107 | #define I2C_FUNC_SMBUS_BYTE (I2C_FUNC_SMBUS_READ_BYTE | \ |
| 107 | I2C_FUNC_SMBUS_WRITE_BYTE) | 108 | I2C_FUNC_SMBUS_WRITE_BYTE) |
diff --git a/include/uapi/linux/icmp.h b/include/uapi/linux/icmp.h index 16fff055f734..fddd9d736284 100644 --- a/include/uapi/linux/icmp.h +++ b/include/uapi/linux/icmp.h | |||
| @@ -79,6 +79,7 @@ struct icmphdr { | |||
| 79 | __be16 __unused; | 79 | __be16 __unused; |
| 80 | __be16 mtu; | 80 | __be16 mtu; |
| 81 | } frag; | 81 | } frag; |
| 82 | __u8 reserved[4]; | ||
| 82 | } un; | 83 | } un; |
| 83 | }; | 84 | }; |
| 84 | 85 | ||
diff --git a/include/uapi/linux/if_bridge.h b/include/uapi/linux/if_bridge.h index 397d503fdedb..c186f64fffca 100644 --- a/include/uapi/linux/if_bridge.h +++ b/include/uapi/linux/if_bridge.h | |||
| @@ -247,8 +247,37 @@ enum { | |||
| 247 | enum { | 247 | enum { |
| 248 | BRIDGE_XSTATS_UNSPEC, | 248 | BRIDGE_XSTATS_UNSPEC, |
| 249 | BRIDGE_XSTATS_VLAN, | 249 | BRIDGE_XSTATS_VLAN, |
| 250 | BRIDGE_XSTATS_MCAST, | ||
| 251 | BRIDGE_XSTATS_PAD, | ||
| 250 | __BRIDGE_XSTATS_MAX | 252 | __BRIDGE_XSTATS_MAX |
| 251 | }; | 253 | }; |
| 252 | #define BRIDGE_XSTATS_MAX (__BRIDGE_XSTATS_MAX - 1) | 254 | #define BRIDGE_XSTATS_MAX (__BRIDGE_XSTATS_MAX - 1) |
| 253 | 255 | ||
| 256 | enum { | ||
| 257 | BR_MCAST_DIR_RX, | ||
| 258 | BR_MCAST_DIR_TX, | ||
| 259 | BR_MCAST_DIR_SIZE | ||
| 260 | }; | ||
| 261 | |||
| 262 | /* IGMP/MLD statistics */ | ||
| 263 | struct br_mcast_stats { | ||
| 264 | __u64 igmp_v1queries[BR_MCAST_DIR_SIZE]; | ||
| 265 | __u64 igmp_v2queries[BR_MCAST_DIR_SIZE]; | ||
| 266 | __u64 igmp_v3queries[BR_MCAST_DIR_SIZE]; | ||
| 267 | __u64 igmp_leaves[BR_MCAST_DIR_SIZE]; | ||
| 268 | __u64 igmp_v1reports[BR_MCAST_DIR_SIZE]; | ||
| 269 | __u64 igmp_v2reports[BR_MCAST_DIR_SIZE]; | ||
| 270 | __u64 igmp_v3reports[BR_MCAST_DIR_SIZE]; | ||
| 271 | __u64 igmp_parse_errors; | ||
| 272 | |||
| 273 | __u64 mld_v1queries[BR_MCAST_DIR_SIZE]; | ||
| 274 | __u64 mld_v2queries[BR_MCAST_DIR_SIZE]; | ||
| 275 | __u64 mld_leaves[BR_MCAST_DIR_SIZE]; | ||
| 276 | __u64 mld_v1reports[BR_MCAST_DIR_SIZE]; | ||
| 277 | __u64 mld_v2reports[BR_MCAST_DIR_SIZE]; | ||
| 278 | __u64 mld_parse_errors; | ||
| 279 | |||
| 280 | __u64 mcast_bytes[BR_MCAST_DIR_SIZE]; | ||
| 281 | __u64 mcast_packets[BR_MCAST_DIR_SIZE]; | ||
| 282 | }; | ||
| 254 | #endif /* _UAPI_LINUX_IF_BRIDGE_H */ | 283 | #endif /* _UAPI_LINUX_IF_BRIDGE_H */ |
diff --git a/include/uapi/linux/if_ether.h b/include/uapi/linux/if_ether.h index cec849a239f6..117d02e0fc31 100644 --- a/include/uapi/linux/if_ether.h +++ b/include/uapi/linux/if_ether.h | |||
| @@ -87,6 +87,7 @@ | |||
| 87 | #define ETH_P_8021AH 0x88E7 /* 802.1ah Backbone Service Tag */ | 87 | #define ETH_P_8021AH 0x88E7 /* 802.1ah Backbone Service Tag */ |
| 88 | #define ETH_P_MVRP 0x88F5 /* 802.1Q MVRP */ | 88 | #define ETH_P_MVRP 0x88F5 /* 802.1Q MVRP */ |
| 89 | #define ETH_P_1588 0x88F7 /* IEEE 1588 Timesync */ | 89 | #define ETH_P_1588 0x88F7 /* IEEE 1588 Timesync */ |
| 90 | #define ETH_P_NCSI 0x88F8 /* NCSI protocol */ | ||
| 90 | #define ETH_P_PRP 0x88FB /* IEC 62439-3 PRP/HSRv0 */ | 91 | #define ETH_P_PRP 0x88FB /* IEC 62439-3 PRP/HSRv0 */ |
| 91 | #define ETH_P_FCOE 0x8906 /* Fibre Channel over Ethernet */ | 92 | #define ETH_P_FCOE 0x8906 /* Fibre Channel over Ethernet */ |
| 92 | #define ETH_P_TDLS 0x890D /* TDLS */ | 93 | #define ETH_P_TDLS 0x890D /* TDLS */ |
diff --git a/include/uapi/linux/if_link.h b/include/uapi/linux/if_link.h index bb36bd5675a7..a1b5202c5f6b 100644 --- a/include/uapi/linux/if_link.h +++ b/include/uapi/linux/if_link.h | |||
| @@ -156,6 +156,7 @@ enum { | |||
| 156 | IFLA_GSO_MAX_SEGS, | 156 | IFLA_GSO_MAX_SEGS, |
| 157 | IFLA_GSO_MAX_SIZE, | 157 | IFLA_GSO_MAX_SIZE, |
| 158 | IFLA_PAD, | 158 | IFLA_PAD, |
| 159 | IFLA_XDP, | ||
| 159 | __IFLA_MAX | 160 | __IFLA_MAX |
| 160 | }; | 161 | }; |
| 161 | 162 | ||
| @@ -273,6 +274,7 @@ enum { | |||
| 273 | IFLA_BR_VLAN_DEFAULT_PVID, | 274 | IFLA_BR_VLAN_DEFAULT_PVID, |
| 274 | IFLA_BR_PAD, | 275 | IFLA_BR_PAD, |
| 275 | IFLA_BR_VLAN_STATS_ENABLED, | 276 | IFLA_BR_VLAN_STATS_ENABLED, |
| 277 | IFLA_BR_MCAST_STATS_ENABLED, | ||
| 276 | __IFLA_BR_MAX, | 278 | __IFLA_BR_MAX, |
| 277 | }; | 279 | }; |
| 278 | 280 | ||
| @@ -822,6 +824,7 @@ enum { | |||
| 822 | IFLA_STATS_UNSPEC, /* also used as 64bit pad attribute */ | 824 | IFLA_STATS_UNSPEC, /* also used as 64bit pad attribute */ |
| 823 | IFLA_STATS_LINK_64, | 825 | IFLA_STATS_LINK_64, |
| 824 | IFLA_STATS_LINK_XSTATS, | 826 | IFLA_STATS_LINK_XSTATS, |
| 827 | IFLA_STATS_LINK_XSTATS_SLAVE, | ||
| 825 | __IFLA_STATS_MAX, | 828 | __IFLA_STATS_MAX, |
| 826 | }; | 829 | }; |
| 827 | 830 | ||
| @@ -841,4 +844,15 @@ enum { | |||
| 841 | }; | 844 | }; |
| 842 | #define LINK_XSTATS_TYPE_MAX (__LINK_XSTATS_TYPE_MAX - 1) | 845 | #define LINK_XSTATS_TYPE_MAX (__LINK_XSTATS_TYPE_MAX - 1) |
| 843 | 846 | ||
| 847 | /* XDP section */ | ||
| 848 | |||
| 849 | enum { | ||
| 850 | IFLA_XDP_UNSPEC, | ||
| 851 | IFLA_XDP_FD, | ||
| 852 | IFLA_XDP_ATTACHED, | ||
| 853 | __IFLA_XDP_MAX, | ||
| 854 | }; | ||
| 855 | |||
| 856 | #define IFLA_XDP_MAX (__IFLA_XDP_MAX - 1) | ||
| 857 | |||
| 844 | #endif /* _UAPI_LINUX_IF_LINK_H */ | 858 | #endif /* _UAPI_LINUX_IF_LINK_H */ |
diff --git a/include/uapi/linux/if_macsec.h b/include/uapi/linux/if_macsec.h index f7d4831a2cc7..02fc49cb72d8 100644 --- a/include/uapi/linux/if_macsec.h +++ b/include/uapi/linux/if_macsec.h | |||
| @@ -26,6 +26,8 @@ | |||
| 26 | 26 | ||
| 27 | #define MACSEC_MIN_ICV_LEN 8 | 27 | #define MACSEC_MIN_ICV_LEN 8 |
| 28 | #define MACSEC_MAX_ICV_LEN 32 | 28 | #define MACSEC_MAX_ICV_LEN 32 |
| 29 | /* upper limit for ICV length as recommended by IEEE802.1AE-2006 */ | ||
| 30 | #define MACSEC_STD_ICV_LEN 16 | ||
| 29 | 31 | ||
| 30 | enum macsec_attrs { | 32 | enum macsec_attrs { |
| 31 | MACSEC_ATTR_UNSPEC, | 33 | MACSEC_ATTR_UNSPEC, |
diff --git a/include/uapi/linux/if_tunnel.h b/include/uapi/linux/if_tunnel.h index af4de90ba27d..1046f5515174 100644 --- a/include/uapi/linux/if_tunnel.h +++ b/include/uapi/linux/if_tunnel.h | |||
| @@ -113,6 +113,7 @@ enum { | |||
| 113 | IFLA_GRE_ENCAP_SPORT, | 113 | IFLA_GRE_ENCAP_SPORT, |
| 114 | IFLA_GRE_ENCAP_DPORT, | 114 | IFLA_GRE_ENCAP_DPORT, |
| 115 | IFLA_GRE_COLLECT_METADATA, | 115 | IFLA_GRE_COLLECT_METADATA, |
| 116 | IFLA_GRE_IGNORE_DF, | ||
| 116 | __IFLA_GRE_MAX, | 117 | __IFLA_GRE_MAX, |
| 117 | }; | 118 | }; |
| 118 | 119 | ||
diff --git a/include/uapi/linux/iio/types.h b/include/uapi/linux/iio/types.h index b0916fc72cce..22e5e589a274 100644 --- a/include/uapi/linux/iio/types.h +++ b/include/uapi/linux/iio/types.h | |||
| @@ -39,6 +39,7 @@ enum iio_chan_type { | |||
| 39 | IIO_RESISTANCE, | 39 | IIO_RESISTANCE, |
| 40 | IIO_PH, | 40 | IIO_PH, |
| 41 | IIO_UVINDEX, | 41 | IIO_UVINDEX, |
| 42 | IIO_ELECTRICALCONDUCTIVITY, | ||
| 42 | }; | 43 | }; |
| 43 | 44 | ||
| 44 | enum iio_modifier { | 45 | enum iio_modifier { |
diff --git a/include/uapi/linux/inet_diag.h b/include/uapi/linux/inet_diag.h index a16643705669..abbd1dc5d683 100644 --- a/include/uapi/linux/inet_diag.h +++ b/include/uapi/linux/inet_diag.h | |||
| @@ -72,6 +72,7 @@ enum { | |||
| 72 | INET_DIAG_BC_AUTO, | 72 | INET_DIAG_BC_AUTO, |
| 73 | INET_DIAG_BC_S_COND, | 73 | INET_DIAG_BC_S_COND, |
| 74 | INET_DIAG_BC_D_COND, | 74 | INET_DIAG_BC_D_COND, |
| 75 | INET_DIAG_BC_DEV_COND, /* u32 ifindex */ | ||
| 75 | }; | 76 | }; |
| 76 | 77 | ||
| 77 | struct inet_diag_hostcond { | 78 | struct inet_diag_hostcond { |
diff --git a/include/uapi/linux/input-event-codes.h b/include/uapi/linux/input-event-codes.h index 87cf351bab03..d6d071fc3c56 100644 --- a/include/uapi/linux/input-event-codes.h +++ b/include/uapi/linux/input-event-codes.h | |||
| @@ -611,6 +611,37 @@ | |||
| 611 | #define KEY_KBDINPUTASSIST_ACCEPT 0x264 | 611 | #define KEY_KBDINPUTASSIST_ACCEPT 0x264 |
| 612 | #define KEY_KBDINPUTASSIST_CANCEL 0x265 | 612 | #define KEY_KBDINPUTASSIST_CANCEL 0x265 |
| 613 | 613 | ||
| 614 | /* Diagonal movement keys */ | ||
| 615 | #define KEY_RIGHT_UP 0x266 | ||
| 616 | #define KEY_RIGHT_DOWN 0x267 | ||
| 617 | #define KEY_LEFT_UP 0x268 | ||
| 618 | #define KEY_LEFT_DOWN 0x269 | ||
| 619 | |||
| 620 | #define KEY_ROOT_MENU 0x26a /* Show Device's Root Menu */ | ||
| 621 | /* Show Top Menu of the Media (e.g. DVD) */ | ||
| 622 | #define KEY_MEDIA_TOP_MENU 0x26b | ||
| 623 | #define KEY_NUMERIC_11 0x26c | ||
| 624 | #define KEY_NUMERIC_12 0x26d | ||
| 625 | /* | ||
| 626 | * Toggle Audio Description: refers to an audio service that helps blind and | ||
| 627 | * visually impaired consumers understand the action in a program. Note: in | ||
| 628 | * some countries this is referred to as "Video Description". | ||
| 629 | */ | ||
| 630 | #define KEY_AUDIO_DESC 0x26e | ||
| 631 | #define KEY_3D_MODE 0x26f | ||
| 632 | #define KEY_NEXT_FAVORITE 0x270 | ||
| 633 | #define KEY_STOP_RECORD 0x271 | ||
| 634 | #define KEY_PAUSE_RECORD 0x272 | ||
| 635 | #define KEY_VOD 0x273 /* Video on Demand */ | ||
| 636 | #define KEY_UNMUTE 0x274 | ||
| 637 | #define KEY_FASTREVERSE 0x275 | ||
| 638 | #define KEY_SLOWREVERSE 0x276 | ||
| 639 | /* | ||
| 640 | * Control a data application associated with the currently viewed channel, | ||
| 641 | * e.g. teletext or data broadcast application (MHEG, MHP, HbbTV, etc.) | ||
| 642 | */ | ||
| 643 | #define KEY_DATA 0x275 | ||
| 644 | |||
| 614 | #define BTN_TRIGGER_HAPPY 0x2c0 | 645 | #define BTN_TRIGGER_HAPPY 0x2c0 |
| 615 | #define BTN_TRIGGER_HAPPY1 0x2c0 | 646 | #define BTN_TRIGGER_HAPPY1 0x2c0 |
| 616 | #define BTN_TRIGGER_HAPPY2 0x2c1 | 647 | #define BTN_TRIGGER_HAPPY2 0x2c1 |
| @@ -749,6 +780,7 @@ | |||
| 749 | #define SW_ROTATE_LOCK 0x0c /* set = rotate locked/disabled */ | 780 | #define SW_ROTATE_LOCK 0x0c /* set = rotate locked/disabled */ |
| 750 | #define SW_LINEIN_INSERT 0x0d /* set = inserted */ | 781 | #define SW_LINEIN_INSERT 0x0d /* set = inserted */ |
| 751 | #define SW_MUTE_DEVICE 0x0e /* set = device disabled */ | 782 | #define SW_MUTE_DEVICE 0x0e /* set = device disabled */ |
| 783 | #define SW_PEN_INSERTED 0x0f /* set = pen inserted */ | ||
| 752 | #define SW_MAX 0x0f | 784 | #define SW_MAX 0x0f |
| 753 | #define SW_CNT (SW_MAX+1) | 785 | #define SW_CNT (SW_MAX+1) |
| 754 | 786 | ||
diff --git a/include/uapi/linux/input.h b/include/uapi/linux/input.h index 01113841190d..c51494119817 100644 --- a/include/uapi/linux/input.h +++ b/include/uapi/linux/input.h | |||
| @@ -247,6 +247,7 @@ struct input_mask { | |||
| 247 | #define BUS_ATARI 0x1B | 247 | #define BUS_ATARI 0x1B |
| 248 | #define BUS_SPI 0x1C | 248 | #define BUS_SPI 0x1C |
| 249 | #define BUS_RMI 0x1D | 249 | #define BUS_RMI 0x1D |
| 250 | #define BUS_CEC 0x1E | ||
| 250 | 251 | ||
| 251 | /* | 252 | /* |
| 252 | * MT_TOOL types | 253 | * MT_TOOL types |
diff --git a/include/uapi/linux/kexec.h b/include/uapi/linux/kexec.h index 99048e501b88..aae5ebf2022b 100644 --- a/include/uapi/linux/kexec.h +++ b/include/uapi/linux/kexec.h | |||
| @@ -39,6 +39,7 @@ | |||
| 39 | #define KEXEC_ARCH_SH (42 << 16) | 39 | #define KEXEC_ARCH_SH (42 << 16) |
| 40 | #define KEXEC_ARCH_MIPS_LE (10 << 16) | 40 | #define KEXEC_ARCH_MIPS_LE (10 << 16) |
| 41 | #define KEXEC_ARCH_MIPS ( 8 << 16) | 41 | #define KEXEC_ARCH_MIPS ( 8 << 16) |
| 42 | #define KEXEC_ARCH_AARCH64 (183 << 16) | ||
| 42 | 43 | ||
| 43 | /* The artificial cap on the number of segments passed to kexec_load. */ | 44 | /* The artificial cap on the number of segments passed to kexec_load. */ |
| 44 | #define KEXEC_SEGMENT_MAX 16 | 45 | #define KEXEC_SEGMENT_MAX 16 |
diff --git a/include/uapi/linux/lirc.h b/include/uapi/linux/lirc.h index 4b3ab2966b5a..991ab4570b8e 100644 --- a/include/uapi/linux/lirc.h +++ b/include/uapi/linux/lirc.h | |||
| @@ -90,20 +90,11 @@ | |||
| 90 | 90 | ||
| 91 | #define LIRC_GET_SEND_MODE _IOR('i', 0x00000001, __u32) | 91 | #define LIRC_GET_SEND_MODE _IOR('i', 0x00000001, __u32) |
| 92 | #define LIRC_GET_REC_MODE _IOR('i', 0x00000002, __u32) | 92 | #define LIRC_GET_REC_MODE _IOR('i', 0x00000002, __u32) |
| 93 | #define LIRC_GET_SEND_CARRIER _IOR('i', 0x00000003, __u32) | ||
| 94 | #define LIRC_GET_REC_CARRIER _IOR('i', 0x00000004, __u32) | ||
| 95 | #define LIRC_GET_SEND_DUTY_CYCLE _IOR('i', 0x00000005, __u32) | ||
| 96 | #define LIRC_GET_REC_DUTY_CYCLE _IOR('i', 0x00000006, __u32) | ||
| 97 | #define LIRC_GET_REC_RESOLUTION _IOR('i', 0x00000007, __u32) | 93 | #define LIRC_GET_REC_RESOLUTION _IOR('i', 0x00000007, __u32) |
| 98 | 94 | ||
| 99 | #define LIRC_GET_MIN_TIMEOUT _IOR('i', 0x00000008, __u32) | 95 | #define LIRC_GET_MIN_TIMEOUT _IOR('i', 0x00000008, __u32) |
| 100 | #define LIRC_GET_MAX_TIMEOUT _IOR('i', 0x00000009, __u32) | 96 | #define LIRC_GET_MAX_TIMEOUT _IOR('i', 0x00000009, __u32) |
| 101 | 97 | ||
| 102 | #define LIRC_GET_MIN_FILTER_PULSE _IOR('i', 0x0000000a, __u32) | ||
| 103 | #define LIRC_GET_MAX_FILTER_PULSE _IOR('i', 0x0000000b, __u32) | ||
| 104 | #define LIRC_GET_MIN_FILTER_SPACE _IOR('i', 0x0000000c, __u32) | ||
| 105 | #define LIRC_GET_MAX_FILTER_SPACE _IOR('i', 0x0000000d, __u32) | ||
| 106 | |||
| 107 | /* code length in bits, currently only for LIRC_MODE_LIRCCODE */ | 98 | /* code length in bits, currently only for LIRC_MODE_LIRCCODE */ |
| 108 | #define LIRC_GET_LENGTH _IOR('i', 0x0000000f, __u32) | 99 | #define LIRC_GET_LENGTH _IOR('i', 0x0000000f, __u32) |
| 109 | 100 | ||
| @@ -113,7 +104,6 @@ | |||
| 113 | #define LIRC_SET_SEND_CARRIER _IOW('i', 0x00000013, __u32) | 104 | #define LIRC_SET_SEND_CARRIER _IOW('i', 0x00000013, __u32) |
| 114 | #define LIRC_SET_REC_CARRIER _IOW('i', 0x00000014, __u32) | 105 | #define LIRC_SET_REC_CARRIER _IOW('i', 0x00000014, __u32) |
| 115 | #define LIRC_SET_SEND_DUTY_CYCLE _IOW('i', 0x00000015, __u32) | 106 | #define LIRC_SET_SEND_DUTY_CYCLE _IOW('i', 0x00000015, __u32) |
| 116 | #define LIRC_SET_REC_DUTY_CYCLE _IOW('i', 0x00000016, __u32) | ||
| 117 | #define LIRC_SET_TRANSMITTER_MASK _IOW('i', 0x00000017, __u32) | 107 | #define LIRC_SET_TRANSMITTER_MASK _IOW('i', 0x00000017, __u32) |
| 118 | 108 | ||
| 119 | /* | 109 | /* |
| @@ -127,42 +117,17 @@ | |||
| 127 | #define LIRC_SET_REC_TIMEOUT_REPORTS _IOW('i', 0x00000019, __u32) | 117 | #define LIRC_SET_REC_TIMEOUT_REPORTS _IOW('i', 0x00000019, __u32) |
| 128 | 118 | ||
| 129 | /* | 119 | /* |
| 130 | * pulses shorter than this are filtered out by hardware (software | ||
| 131 | * emulation in lirc_dev?) | ||
| 132 | */ | ||
| 133 | #define LIRC_SET_REC_FILTER_PULSE _IOW('i', 0x0000001a, __u32) | ||
| 134 | /* | ||
| 135 | * spaces shorter than this are filtered out by hardware (software | ||
| 136 | * emulation in lirc_dev?) | ||
| 137 | */ | ||
| 138 | #define LIRC_SET_REC_FILTER_SPACE _IOW('i', 0x0000001b, __u32) | ||
| 139 | /* | ||
| 140 | * if filter cannot be set independently for pulse/space, this should | ||
| 141 | * be used | ||
| 142 | */ | ||
| 143 | #define LIRC_SET_REC_FILTER _IOW('i', 0x0000001c, __u32) | ||
| 144 | |||
| 145 | /* | ||
| 146 | * if enabled from the next key press on the driver will send | 120 | * if enabled from the next key press on the driver will send |
| 147 | * LIRC_MODE2_FREQUENCY packets | 121 | * LIRC_MODE2_FREQUENCY packets |
| 148 | */ | 122 | */ |
| 149 | #define LIRC_SET_MEASURE_CARRIER_MODE _IOW('i', 0x0000001d, __u32) | 123 | #define LIRC_SET_MEASURE_CARRIER_MODE _IOW('i', 0x0000001d, __u32) |
| 150 | 124 | ||
| 151 | /* | 125 | /* |
| 152 | * to set a range use | 126 | * to set a range use LIRC_SET_REC_CARRIER_RANGE with the |
| 153 | * LIRC_SET_REC_DUTY_CYCLE_RANGE/LIRC_SET_REC_CARRIER_RANGE with the | 127 | * lower bound first and later LIRC_SET_REC_CARRIER with the upper bound |
| 154 | * lower bound first and later | ||
| 155 | * LIRC_SET_REC_DUTY_CYCLE/LIRC_SET_REC_CARRIER with the upper bound | ||
| 156 | */ | 128 | */ |
| 157 | |||
| 158 | #define LIRC_SET_REC_DUTY_CYCLE_RANGE _IOW('i', 0x0000001e, __u32) | ||
| 159 | #define LIRC_SET_REC_CARRIER_RANGE _IOW('i', 0x0000001f, __u32) | 129 | #define LIRC_SET_REC_CARRIER_RANGE _IOW('i', 0x0000001f, __u32) |
| 160 | 130 | ||
| 161 | #define LIRC_NOTIFY_DECODE _IO('i', 0x00000020) | ||
| 162 | |||
| 163 | #define LIRC_SETUP_START _IO('i', 0x00000021) | ||
| 164 | #define LIRC_SETUP_END _IO('i', 0x00000022) | ||
| 165 | |||
| 166 | #define LIRC_SET_WIDEBAND_RECEIVER _IOW('i', 0x00000023, __u32) | 131 | #define LIRC_SET_WIDEBAND_RECEIVER _IOW('i', 0x00000023, __u32) |
| 167 | 132 | ||
| 168 | #endif | 133 | #endif |
diff --git a/include/uapi/linux/magic.h b/include/uapi/linux/magic.h index 546b38886e11..e398beac67b8 100644 --- a/include/uapi/linux/magic.h +++ b/include/uapi/linux/magic.h | |||
| @@ -80,5 +80,7 @@ | |||
| 80 | #define BPF_FS_MAGIC 0xcafe4a11 | 80 | #define BPF_FS_MAGIC 0xcafe4a11 |
| 81 | /* Since UDF 2.01 is ISO 13346 based... */ | 81 | /* Since UDF 2.01 is ISO 13346 based... */ |
| 82 | #define UDF_SUPER_MAGIC 0x15013346 | 82 | #define UDF_SUPER_MAGIC 0x15013346 |
| 83 | #define BALLOON_KVM_MAGIC 0x13661366 | ||
| 84 | #define ZSMALLOC_MAGIC 0x58295829 | ||
| 83 | 85 | ||
| 84 | #endif /* __LINUX_MAGIC_H__ */ | 86 | #endif /* __LINUX_MAGIC_H__ */ |
diff --git a/include/uapi/linux/media.h b/include/uapi/linux/media.h index df59edee25d1..7acf0f634f70 100644 --- a/include/uapi/linux/media.h +++ b/include/uapi/linux/media.h | |||
| @@ -95,6 +95,16 @@ struct media_device_info { | |||
| 95 | #define MEDIA_ENT_F_AUDIO_MIXER (MEDIA_ENT_F_BASE + 0x03003) | 95 | #define MEDIA_ENT_F_AUDIO_MIXER (MEDIA_ENT_F_BASE + 0x03003) |
| 96 | 96 | ||
| 97 | /* | 97 | /* |
| 98 | * Processing entities | ||
| 99 | */ | ||
| 100 | #define MEDIA_ENT_F_PROC_VIDEO_COMPOSER (MEDIA_ENT_F_BASE + 0x4001) | ||
| 101 | #define MEDIA_ENT_F_PROC_VIDEO_PIXEL_FORMATTER (MEDIA_ENT_F_BASE + 0x4002) | ||
| 102 | #define MEDIA_ENT_F_PROC_VIDEO_PIXEL_ENC_CONV (MEDIA_ENT_F_BASE + 0x4003) | ||
| 103 | #define MEDIA_ENT_F_PROC_VIDEO_LUT (MEDIA_ENT_F_BASE + 0x4004) | ||
| 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) | ||
| 106 | |||
| 107 | /* | ||
| 98 | * Connectors | 108 | * Connectors |
| 99 | */ | 109 | */ |
| 100 | /* It is a responsibility of the entity drivers to add connectors and links */ | 110 | /* It is a responsibility of the entity drivers to add connectors and links */ |
diff --git a/include/uapi/linux/ndctl.h b/include/uapi/linux/ndctl.h index 309915f74492..ba5a8c79652a 100644 --- a/include/uapi/linux/ndctl.h +++ b/include/uapi/linux/ndctl.h | |||
| @@ -298,6 +298,7 @@ struct nd_cmd_pkg { | |||
| 298 | #define NVDIMM_FAMILY_INTEL 0 | 298 | #define NVDIMM_FAMILY_INTEL 0 |
| 299 | #define NVDIMM_FAMILY_HPE1 1 | 299 | #define NVDIMM_FAMILY_HPE1 1 |
| 300 | #define NVDIMM_FAMILY_HPE2 2 | 300 | #define NVDIMM_FAMILY_HPE2 2 |
| 301 | #define NVDIMM_FAMILY_MSFT 3 | ||
| 301 | 302 | ||
| 302 | #define ND_IOCTL_CALL _IOWR(ND_IOCTL, ND_CMD_CALL,\ | 303 | #define ND_IOCTL_CALL _IOWR(ND_IOCTL, ND_CMD_CALL,\ |
| 303 | struct nd_cmd_pkg) | 304 | struct nd_cmd_pkg) |
diff --git a/include/uapi/linux/netfilter/Kbuild b/include/uapi/linux/netfilter/Kbuild index 1d973d2ba417..cd26d7a0fd07 100644 --- a/include/uapi/linux/netfilter/Kbuild +++ b/include/uapi/linux/netfilter/Kbuild | |||
| @@ -33,6 +33,7 @@ header-y += xt_NFLOG.h | |||
| 33 | header-y += xt_NFQUEUE.h | 33 | header-y += xt_NFQUEUE.h |
| 34 | header-y += xt_RATEEST.h | 34 | header-y += xt_RATEEST.h |
| 35 | header-y += xt_SECMARK.h | 35 | header-y += xt_SECMARK.h |
| 36 | header-y += xt_SYNPROXY.h | ||
| 36 | header-y += xt_TCPMSS.h | 37 | header-y += xt_TCPMSS.h |
| 37 | header-y += xt_TCPOPTSTRIP.h | 38 | header-y += xt_TCPOPTSTRIP.h |
| 38 | header-y += xt_TEE.h | 39 | header-y += xt_TEE.h |
diff --git a/include/uapi/linux/netfilter/nf_tables.h b/include/uapi/linux/netfilter/nf_tables.h index 6a4dbe04f09e..01751faccaf8 100644 --- a/include/uapi/linux/netfilter/nf_tables.h +++ b/include/uapi/linux/netfilter/nf_tables.h | |||
| @@ -546,6 +546,10 @@ enum nft_cmp_attributes { | |||
| 546 | }; | 546 | }; |
| 547 | #define NFTA_CMP_MAX (__NFTA_CMP_MAX - 1) | 547 | #define NFTA_CMP_MAX (__NFTA_CMP_MAX - 1) |
| 548 | 548 | ||
| 549 | enum nft_lookup_flags { | ||
| 550 | NFT_LOOKUP_F_INV = (1 << 0), | ||
| 551 | }; | ||
| 552 | |||
| 549 | /** | 553 | /** |
| 550 | * enum nft_lookup_attributes - nf_tables set lookup expression netlink attributes | 554 | * enum nft_lookup_attributes - nf_tables set lookup expression netlink attributes |
| 551 | * | 555 | * |
| @@ -553,6 +557,7 @@ enum nft_cmp_attributes { | |||
| 553 | * @NFTA_LOOKUP_SREG: source register of the data to look for (NLA_U32: nft_registers) | 557 | * @NFTA_LOOKUP_SREG: source register of the data to look for (NLA_U32: nft_registers) |
| 554 | * @NFTA_LOOKUP_DREG: destination register (NLA_U32: nft_registers) | 558 | * @NFTA_LOOKUP_DREG: destination register (NLA_U32: nft_registers) |
| 555 | * @NFTA_LOOKUP_SET_ID: uniquely identifies a set in a transaction (NLA_U32) | 559 | * @NFTA_LOOKUP_SET_ID: uniquely identifies a set in a transaction (NLA_U32) |
| 560 | * @NFTA_LOOKUP_FLAGS: flags (NLA_U32: enum nft_lookup_flags) | ||
| 556 | */ | 561 | */ |
| 557 | enum nft_lookup_attributes { | 562 | enum nft_lookup_attributes { |
| 558 | NFTA_LOOKUP_UNSPEC, | 563 | NFTA_LOOKUP_UNSPEC, |
| @@ -560,6 +565,7 @@ enum nft_lookup_attributes { | |||
| 560 | NFTA_LOOKUP_SREG, | 565 | NFTA_LOOKUP_SREG, |
| 561 | NFTA_LOOKUP_DREG, | 566 | NFTA_LOOKUP_DREG, |
| 562 | NFTA_LOOKUP_SET_ID, | 567 | NFTA_LOOKUP_SET_ID, |
| 568 | NFTA_LOOKUP_FLAGS, | ||
| 563 | __NFTA_LOOKUP_MAX | 569 | __NFTA_LOOKUP_MAX |
| 564 | }; | 570 | }; |
| 565 | #define NFTA_LOOKUP_MAX (__NFTA_LOOKUP_MAX - 1) | 571 | #define NFTA_LOOKUP_MAX (__NFTA_LOOKUP_MAX - 1) |
diff --git a/include/uapi/linux/netfilter/xt_NFLOG.h b/include/uapi/linux/netfilter/xt_NFLOG.h index 87b58311ce6b..f33070730fc8 100644 --- a/include/uapi/linux/netfilter/xt_NFLOG.h +++ b/include/uapi/linux/netfilter/xt_NFLOG.h | |||
| @@ -6,9 +6,13 @@ | |||
| 6 | #define XT_NFLOG_DEFAULT_GROUP 0x1 | 6 | #define XT_NFLOG_DEFAULT_GROUP 0x1 |
| 7 | #define XT_NFLOG_DEFAULT_THRESHOLD 0 | 7 | #define XT_NFLOG_DEFAULT_THRESHOLD 0 |
| 8 | 8 | ||
| 9 | #define XT_NFLOG_MASK 0x0 | 9 | #define XT_NFLOG_MASK 0x1 |
| 10 | |||
| 11 | /* This flag indicates that 'len' field in xt_nflog_info is set*/ | ||
| 12 | #define XT_NFLOG_F_COPY_LEN 0x1 | ||
| 10 | 13 | ||
| 11 | struct xt_nflog_info { | 14 | struct xt_nflog_info { |
| 15 | /* 'len' will be used iff you set XT_NFLOG_F_COPY_LEN in flags */ | ||
| 12 | __u32 len; | 16 | __u32 len; |
| 13 | __u16 group; | 17 | __u16 group; |
| 14 | __u16 threshold; | 18 | __u16 threshold; |
diff --git a/include/uapi/linux/netfilter/xt_SYNPROXY.h b/include/uapi/linux/netfilter/xt_SYNPROXY.h index 2d59fbaa93c6..ca67e61d2a61 100644 --- a/include/uapi/linux/netfilter/xt_SYNPROXY.h +++ b/include/uapi/linux/netfilter/xt_SYNPROXY.h | |||
| @@ -1,6 +1,8 @@ | |||
| 1 | #ifndef _XT_SYNPROXY_H | 1 | #ifndef _XT_SYNPROXY_H |
| 2 | #define _XT_SYNPROXY_H | 2 | #define _XT_SYNPROXY_H |
| 3 | 3 | ||
| 4 | #include <linux/types.h> | ||
| 5 | |||
| 4 | #define XT_SYNPROXY_OPT_MSS 0x01 | 6 | #define XT_SYNPROXY_OPT_MSS 0x01 |
| 5 | #define XT_SYNPROXY_OPT_WSCALE 0x02 | 7 | #define XT_SYNPROXY_OPT_WSCALE 0x02 |
| 6 | #define XT_SYNPROXY_OPT_SACK_PERM 0x04 | 8 | #define XT_SYNPROXY_OPT_SACK_PERM 0x04 |
diff --git a/include/uapi/linux/netlink_diag.h b/include/uapi/linux/netlink_diag.h index d79399394b46..76b4d87c83a8 100644 --- a/include/uapi/linux/netlink_diag.h +++ b/include/uapi/linux/netlink_diag.h | |||
| @@ -49,6 +49,7 @@ enum { | |||
| 49 | #define NDIAG_SHOW_MEMINFO 0x00000001 /* show memory info of a socket */ | 49 | #define NDIAG_SHOW_MEMINFO 0x00000001 /* show memory info of a socket */ |
| 50 | #define NDIAG_SHOW_GROUPS 0x00000002 /* show groups of a netlink socket */ | 50 | #define NDIAG_SHOW_GROUPS 0x00000002 /* show groups of a netlink socket */ |
| 51 | #ifndef __KERNEL__ | 51 | #ifndef __KERNEL__ |
| 52 | /* deprecated since 4.6 */ | ||
| 52 | #define NDIAG_SHOW_RING_CFG 0x00000004 /* show ring configuration */ | 53 | #define NDIAG_SHOW_RING_CFG 0x00000004 /* show ring configuration */ |
| 53 | #endif | 54 | #endif |
| 54 | 55 | ||
diff --git a/include/uapi/linux/nl80211.h b/include/uapi/linux/nl80211.h index e23d78685a01..220694151434 100644 --- a/include/uapi/linux/nl80211.h +++ b/include/uapi/linux/nl80211.h | |||
| @@ -493,7 +493,12 @@ | |||
| 493 | * This attribute is ignored if driver does not support roam scan. | 493 | * This attribute is ignored if driver does not support roam scan. |
| 494 | * It is also sent as an event, with the BSSID and response IEs when the | 494 | * It is also sent as an event, with the BSSID and response IEs when the |
| 495 | * connection is established or failed to be established. This can be | 495 | * connection is established or failed to be established. This can be |
| 496 | * determined by the STATUS_CODE attribute. | 496 | * determined by the %NL80211_ATTR_STATUS_CODE attribute (0 = success, |
| 497 | * non-zero = failure). If %NL80211_ATTR_TIMED_OUT is included in the | ||
| 498 | * event, the connection attempt failed due to not being able to initiate | ||
| 499 | * authentication/association or not receiving a response from the AP. | ||
| 500 | * Non-zero %NL80211_ATTR_STATUS_CODE value is indicated in that case as | ||
| 501 | * well to remain backwards compatible. | ||
| 497 | * @NL80211_CMD_ROAM: request that the card roam (currently not implemented), | 502 | * @NL80211_CMD_ROAM: request that the card roam (currently not implemented), |
| 498 | * sent as an event when the card/driver roamed by itself. | 503 | * sent as an event when the card/driver roamed by itself. |
| 499 | * @NL80211_CMD_DISCONNECT: drop a given connection; also used to notify | 504 | * @NL80211_CMD_DISCONNECT: drop a given connection; also used to notify |
| @@ -1819,6 +1824,49 @@ enum nl80211_commands { | |||
| 1819 | * | 1824 | * |
| 1820 | * @NL80211_ATTR_PAD: attribute used for padding for 64-bit alignment | 1825 | * @NL80211_ATTR_PAD: attribute used for padding for 64-bit alignment |
| 1821 | * | 1826 | * |
| 1827 | * @NL80211_ATTR_IFTYPE_EXT_CAPA: Nested attribute of the following attributes: | ||
| 1828 | * %NL80211_ATTR_IFTYPE, %NL80211_ATTR_EXT_CAPA, | ||
| 1829 | * %NL80211_ATTR_EXT_CAPA_MASK, to specify the extended capabilities per | ||
| 1830 | * interface type. | ||
| 1831 | * | ||
| 1832 | * @NL80211_ATTR_MU_MIMO_GROUP_DATA: array of 24 bytes that defines a MU-MIMO | ||
| 1833 | * groupID for monitor mode. | ||
| 1834 | * The first 8 bytes are a mask that defines the membership in each | ||
| 1835 | * group (there are 64 groups, group 0 and 63 are reserved), | ||
| 1836 | * each bit represents a group and set to 1 for being a member in | ||
| 1837 | * that group and 0 for not being a member. | ||
| 1838 | * The remaining 16 bytes define the position in each group: 2 bits for | ||
| 1839 | * each group. | ||
| 1840 | * (smaller group numbers represented on most significant bits and bigger | ||
| 1841 | * group numbers on least significant bits.) | ||
| 1842 | * This attribute is used only if all interfaces are in monitor mode. | ||
| 1843 | * Set this attribute in order to monitor packets using the given MU-MIMO | ||
| 1844 | * groupID data. | ||
| 1845 | * to turn off that feature set all the bits of the groupID to zero. | ||
| 1846 | * @NL80211_ATTR_MU_MIMO_FOLLOW_MAC_ADDR: mac address for the sniffer to follow | ||
| 1847 | * when using MU-MIMO air sniffer. | ||
| 1848 | * to turn that feature off set an invalid mac address | ||
| 1849 | * (e.g. FF:FF:FF:FF:FF:FF) | ||
| 1850 | * | ||
| 1851 | * @NL80211_ATTR_SCAN_START_TIME_TSF: The time at which the scan was actually | ||
| 1852 | * started (u64). The time is the TSF of the BSS the interface that | ||
| 1853 | * requested the scan is connected to (if available, otherwise this | ||
| 1854 | * attribute must not be included). | ||
| 1855 | * @NL80211_ATTR_SCAN_START_TIME_TSF_BSSID: The BSS according to which | ||
| 1856 | * %NL80211_ATTR_SCAN_START_TIME_TSF is set. | ||
| 1857 | * @NL80211_ATTR_MEASUREMENT_DURATION: measurement duration in TUs (u16). If | ||
| 1858 | * %NL80211_ATTR_MEASUREMENT_DURATION_MANDATORY is not set, this is the | ||
| 1859 | * maximum measurement duration allowed. This attribute is used with | ||
| 1860 | * measurement requests. It can also be used with %NL80211_CMD_TRIGGER_SCAN | ||
| 1861 | * if the scan is used for beacon report radio measurement. | ||
| 1862 | * @NL80211_ATTR_MEASUREMENT_DURATION_MANDATORY: flag attribute that indicates | ||
| 1863 | * that the duration specified with %NL80211_ATTR_MEASUREMENT_DURATION is | ||
| 1864 | * mandatory. If this flag is not set, the duration is the maximum duration | ||
| 1865 | * and the actual measurement duration may be shorter. | ||
| 1866 | * | ||
| 1867 | * @NL80211_ATTR_MESH_PEER_AID: Association ID for the mesh peer (u16). This is | ||
| 1868 | * used to pull the stored data for mesh peer in power save state. | ||
| 1869 | * | ||
| 1822 | * @NUM_NL80211_ATTR: total number of nl80211_attrs available | 1870 | * @NUM_NL80211_ATTR: total number of nl80211_attrs available |
| 1823 | * @NL80211_ATTR_MAX: highest attribute number currently defined | 1871 | * @NL80211_ATTR_MAX: highest attribute number currently defined |
| 1824 | * @__NL80211_ATTR_AFTER_LAST: internal use | 1872 | * @__NL80211_ATTR_AFTER_LAST: internal use |
| @@ -2201,6 +2249,18 @@ enum nl80211_attrs { | |||
| 2201 | 2249 | ||
| 2202 | NL80211_ATTR_PAD, | 2250 | NL80211_ATTR_PAD, |
| 2203 | 2251 | ||
| 2252 | NL80211_ATTR_IFTYPE_EXT_CAPA, | ||
| 2253 | |||
| 2254 | NL80211_ATTR_MU_MIMO_GROUP_DATA, | ||
| 2255 | NL80211_ATTR_MU_MIMO_FOLLOW_MAC_ADDR, | ||
| 2256 | |||
| 2257 | NL80211_ATTR_SCAN_START_TIME_TSF, | ||
| 2258 | NL80211_ATTR_SCAN_START_TIME_TSF_BSSID, | ||
| 2259 | NL80211_ATTR_MEASUREMENT_DURATION, | ||
| 2260 | NL80211_ATTR_MEASUREMENT_DURATION_MANDATORY, | ||
| 2261 | |||
| 2262 | NL80211_ATTR_MESH_PEER_AID, | ||
| 2263 | |||
| 2204 | /* add attributes here, update the policy in nl80211.c */ | 2264 | /* add attributes here, update the policy in nl80211.c */ |
| 2205 | 2265 | ||
| 2206 | __NL80211_ATTR_AFTER_LAST, | 2266 | __NL80211_ATTR_AFTER_LAST, |
| @@ -3462,6 +3522,12 @@ enum nl80211_bss_scan_width { | |||
| 3462 | * was last updated by a received frame. The value is expected to be | 3522 | * was last updated by a received frame. The value is expected to be |
| 3463 | * accurate to about 10ms. (u64, nanoseconds) | 3523 | * accurate to about 10ms. (u64, nanoseconds) |
| 3464 | * @NL80211_BSS_PAD: attribute used for padding for 64-bit alignment | 3524 | * @NL80211_BSS_PAD: attribute used for padding for 64-bit alignment |
| 3525 | * @NL80211_BSS_PARENT_TSF: the time at the start of reception of the first | ||
| 3526 | * octet of the timestamp field of the last beacon/probe received for | ||
| 3527 | * this BSS. The time is the TSF of the BSS specified by | ||
| 3528 | * @NL80211_BSS_PARENT_BSSID. (u64). | ||
| 3529 | * @NL80211_BSS_PARENT_BSSID: the BSS according to which @NL80211_BSS_PARENT_TSF | ||
| 3530 | * is set. | ||
| 3465 | * @__NL80211_BSS_AFTER_LAST: internal | 3531 | * @__NL80211_BSS_AFTER_LAST: internal |
| 3466 | * @NL80211_BSS_MAX: highest BSS attribute | 3532 | * @NL80211_BSS_MAX: highest BSS attribute |
| 3467 | */ | 3533 | */ |
| @@ -3483,6 +3549,8 @@ enum nl80211_bss { | |||
| 3483 | NL80211_BSS_PRESP_DATA, | 3549 | NL80211_BSS_PRESP_DATA, |
| 3484 | NL80211_BSS_LAST_SEEN_BOOTTIME, | 3550 | NL80211_BSS_LAST_SEEN_BOOTTIME, |
| 3485 | NL80211_BSS_PAD, | 3551 | NL80211_BSS_PAD, |
| 3552 | NL80211_BSS_PARENT_TSF, | ||
| 3553 | NL80211_BSS_PARENT_BSSID, | ||
| 3486 | 3554 | ||
| 3487 | /* keep last */ | 3555 | /* keep last */ |
| 3488 | __NL80211_BSS_AFTER_LAST, | 3556 | __NL80211_BSS_AFTER_LAST, |
| @@ -4467,6 +4535,22 @@ enum nl80211_feature_flags { | |||
| 4467 | * %NL80211_CMD_ASSOCIATE and %NL80211_CMD_CONNECT requests, which will set | 4535 | * %NL80211_CMD_ASSOCIATE and %NL80211_CMD_CONNECT requests, which will set |
| 4468 | * the ASSOC_REQ_USE_RRM flag in the association request even if | 4536 | * the ASSOC_REQ_USE_RRM flag in the association request even if |
| 4469 | * NL80211_FEATURE_QUIET is not advertized. | 4537 | * NL80211_FEATURE_QUIET is not advertized. |
| 4538 | * @NL80211_EXT_FEATURE_MU_MIMO_AIR_SNIFFER: This device supports MU-MIMO air | ||
| 4539 | * sniffer which means that it can be configured to hear packets from | ||
| 4540 | * certain groups which can be configured by the | ||
| 4541 | * %NL80211_ATTR_MU_MIMO_GROUP_DATA attribute, | ||
| 4542 | * or can be configured to follow a station by configuring the | ||
| 4543 | * %NL80211_ATTR_MU_MIMO_FOLLOW_MAC_ADDR attribute. | ||
| 4544 | * @NL80211_EXT_FEATURE_SCAN_START_TIME: This driver includes the actual | ||
| 4545 | * time the scan started in scan results event. The time is the TSF of | ||
| 4546 | * the BSS that the interface that requested the scan is connected to | ||
| 4547 | * (if available). | ||
| 4548 | * @NL80211_EXT_FEATURE_BSS_PARENT_TSF: Per BSS, this driver reports the | ||
| 4549 | * time the last beacon/probe was received. The time is the TSF of the | ||
| 4550 | * BSS that the interface that requested the scan is connected to | ||
| 4551 | * (if available). | ||
| 4552 | * @NL80211_EXT_FEATURE_SET_SCAN_DWELL: This driver supports configuration of | ||
| 4553 | * channel dwell time. | ||
| 4470 | * | 4554 | * |
| 4471 | * @NUM_NL80211_EXT_FEATURES: number of extended features. | 4555 | * @NUM_NL80211_EXT_FEATURES: number of extended features. |
| 4472 | * @MAX_NL80211_EXT_FEATURES: highest extended feature index. | 4556 | * @MAX_NL80211_EXT_FEATURES: highest extended feature index. |
| @@ -4474,6 +4558,10 @@ enum nl80211_feature_flags { | |||
| 4474 | enum nl80211_ext_feature_index { | 4558 | enum nl80211_ext_feature_index { |
| 4475 | NL80211_EXT_FEATURE_VHT_IBSS, | 4559 | NL80211_EXT_FEATURE_VHT_IBSS, |
| 4476 | NL80211_EXT_FEATURE_RRM, | 4560 | NL80211_EXT_FEATURE_RRM, |
| 4561 | NL80211_EXT_FEATURE_MU_MIMO_AIR_SNIFFER, | ||
| 4562 | NL80211_EXT_FEATURE_SCAN_START_TIME, | ||
| 4563 | NL80211_EXT_FEATURE_BSS_PARENT_TSF, | ||
| 4564 | NL80211_EXT_FEATURE_SET_SCAN_DWELL, | ||
| 4477 | 4565 | ||
| 4478 | /* add new features before the definition below */ | 4566 | /* add new features before the definition below */ |
| 4479 | NUM_NL80211_EXT_FEATURES, | 4567 | NUM_NL80211_EXT_FEATURES, |
diff --git a/include/uapi/linux/openvswitch.h b/include/uapi/linux/openvswitch.h index bb0d515b7654..d95a3018f6a1 100644 --- a/include/uapi/linux/openvswitch.h +++ b/include/uapi/linux/openvswitch.h | |||
| @@ -166,6 +166,7 @@ enum ovs_packet_cmd { | |||
| 166 | * output port is actually a tunnel port. Contains the output tunnel key | 166 | * output port is actually a tunnel port. Contains the output tunnel key |
| 167 | * extracted from the packet as nested %OVS_TUNNEL_KEY_ATTR_* attributes. | 167 | * extracted from the packet as nested %OVS_TUNNEL_KEY_ATTR_* attributes. |
| 168 | * @OVS_PACKET_ATTR_MRU: Present for an %OVS_PACKET_CMD_ACTION and | 168 | * @OVS_PACKET_ATTR_MRU: Present for an %OVS_PACKET_CMD_ACTION and |
| 169 | * @OVS_PACKET_ATTR_LEN: Packet size before truncation. | ||
| 169 | * %OVS_PACKET_ATTR_USERSPACE action specify the Maximum received fragment | 170 | * %OVS_PACKET_ATTR_USERSPACE action specify the Maximum received fragment |
| 170 | * size. | 171 | * size. |
| 171 | * | 172 | * |
| @@ -185,6 +186,7 @@ enum ovs_packet_attr { | |||
| 185 | OVS_PACKET_ATTR_PROBE, /* Packet operation is a feature probe, | 186 | OVS_PACKET_ATTR_PROBE, /* Packet operation is a feature probe, |
| 186 | error logging should be suppressed. */ | 187 | error logging should be suppressed. */ |
| 187 | OVS_PACKET_ATTR_MRU, /* Maximum received IP fragment size. */ | 188 | OVS_PACKET_ATTR_MRU, /* Maximum received IP fragment size. */ |
| 189 | OVS_PACKET_ATTR_LEN, /* Packet size before truncation. */ | ||
| 188 | __OVS_PACKET_ATTR_MAX | 190 | __OVS_PACKET_ATTR_MAX |
| 189 | }; | 191 | }; |
| 190 | 192 | ||
| @@ -580,6 +582,10 @@ enum ovs_userspace_attr { | |||
| 580 | 582 | ||
| 581 | #define OVS_USERSPACE_ATTR_MAX (__OVS_USERSPACE_ATTR_MAX - 1) | 583 | #define OVS_USERSPACE_ATTR_MAX (__OVS_USERSPACE_ATTR_MAX - 1) |
| 582 | 584 | ||
| 585 | struct ovs_action_trunc { | ||
| 586 | uint32_t max_len; /* Max packet size in bytes. */ | ||
| 587 | }; | ||
| 588 | |||
| 583 | /** | 589 | /** |
| 584 | * struct ovs_action_push_mpls - %OVS_ACTION_ATTR_PUSH_MPLS action argument. | 590 | * struct ovs_action_push_mpls - %OVS_ACTION_ATTR_PUSH_MPLS action argument. |
| 585 | * @mpls_lse: MPLS label stack entry to push. | 591 | * @mpls_lse: MPLS label stack entry to push. |
| @@ -703,6 +709,7 @@ enum ovs_nat_attr { | |||
| 703 | * enum ovs_action_attr - Action types. | 709 | * enum ovs_action_attr - Action types. |
| 704 | * | 710 | * |
| 705 | * @OVS_ACTION_ATTR_OUTPUT: Output packet to port. | 711 | * @OVS_ACTION_ATTR_OUTPUT: Output packet to port. |
| 712 | * @OVS_ACTION_ATTR_TRUNC: Output packet to port with truncated packet size. | ||
| 706 | * @OVS_ACTION_ATTR_USERSPACE: Send packet to userspace according to nested | 713 | * @OVS_ACTION_ATTR_USERSPACE: Send packet to userspace according to nested |
| 707 | * %OVS_USERSPACE_ATTR_* attributes. | 714 | * %OVS_USERSPACE_ATTR_* attributes. |
| 708 | * @OVS_ACTION_ATTR_SET: Replaces the contents of an existing header. The | 715 | * @OVS_ACTION_ATTR_SET: Replaces the contents of an existing header. The |
| @@ -756,6 +763,7 @@ enum ovs_action_attr { | |||
| 756 | * The data must be zero for the unmasked | 763 | * The data must be zero for the unmasked |
| 757 | * bits. */ | 764 | * bits. */ |
| 758 | OVS_ACTION_ATTR_CT, /* Nested OVS_CT_ATTR_* . */ | 765 | OVS_ACTION_ATTR_CT, /* Nested OVS_CT_ATTR_* . */ |
| 766 | OVS_ACTION_ATTR_TRUNC, /* u32 struct ovs_action_trunc. */ | ||
| 759 | 767 | ||
| 760 | __OVS_ACTION_ATTR_MAX, /* Nothing past this will be accepted | 768 | __OVS_ACTION_ATTR_MAX, /* Nothing past this will be accepted |
| 761 | * from userspace. */ | 769 | * from userspace. */ |
diff --git a/include/uapi/linux/perf_event.h b/include/uapi/linux/perf_event.h index 36ce552cf6a9..c66a485a24ac 100644 --- a/include/uapi/linux/perf_event.h +++ b/include/uapi/linux/perf_event.h | |||
| @@ -276,6 +276,9 @@ enum perf_event_read_format { | |||
| 276 | 276 | ||
| 277 | /* | 277 | /* |
| 278 | * Hardware event_id to monitor via a performance monitoring event: | 278 | * Hardware event_id to monitor via a performance monitoring event: |
| 279 | * | ||
| 280 | * @sample_max_stack: Max number of frame pointers in a callchain, | ||
| 281 | * should be < /proc/sys/kernel/perf_event_max_stack | ||
| 279 | */ | 282 | */ |
| 280 | struct perf_event_attr { | 283 | struct perf_event_attr { |
| 281 | 284 | ||
| @@ -385,7 +388,8 @@ struct perf_event_attr { | |||
| 385 | * Wakeup watermark for AUX area | 388 | * Wakeup watermark for AUX area |
| 386 | */ | 389 | */ |
| 387 | __u32 aux_watermark; | 390 | __u32 aux_watermark; |
| 388 | __u32 __reserved_2; /* align to __u64 */ | 391 | __u16 sample_max_stack; |
| 392 | __u16 __reserved_2; /* align to __u64 */ | ||
| 389 | }; | 393 | }; |
| 390 | 394 | ||
| 391 | #define perf_flags(attr) (*(&(attr)->read_format + 1)) | 395 | #define perf_flags(attr) (*(&(attr)->read_format + 1)) |
diff --git a/include/uapi/linux/pkt_cls.h b/include/uapi/linux/pkt_cls.h index f4297c8a42fe..d1c1ccaba787 100644 --- a/include/uapi/linux/pkt_cls.h +++ b/include/uapi/linux/pkt_cls.h | |||
| @@ -115,8 +115,8 @@ struct tc_police { | |||
| 115 | __u32 mtu; | 115 | __u32 mtu; |
| 116 | struct tc_ratespec rate; | 116 | struct tc_ratespec rate; |
| 117 | struct tc_ratespec peakrate; | 117 | struct tc_ratespec peakrate; |
| 118 | int refcnt; | 118 | int refcnt; |
| 119 | int bindcnt; | 119 | int bindcnt; |
| 120 | __u32 capab; | 120 | __u32 capab; |
| 121 | }; | 121 | }; |
| 122 | 122 | ||
| @@ -124,10 +124,11 @@ struct tcf_t { | |||
| 124 | __u64 install; | 124 | __u64 install; |
| 125 | __u64 lastuse; | 125 | __u64 lastuse; |
| 126 | __u64 expires; | 126 | __u64 expires; |
| 127 | __u64 firstuse; | ||
| 127 | }; | 128 | }; |
| 128 | 129 | ||
| 129 | struct tc_cnt { | 130 | struct tc_cnt { |
| 130 | int refcnt; | 131 | int refcnt; |
| 131 | int bindcnt; | 132 | int bindcnt; |
| 132 | }; | 133 | }; |
| 133 | 134 | ||
| @@ -432,6 +433,18 @@ enum { | |||
| 432 | 433 | ||
| 433 | #define TCA_FLOWER_MAX (__TCA_FLOWER_MAX - 1) | 434 | #define TCA_FLOWER_MAX (__TCA_FLOWER_MAX - 1) |
| 434 | 435 | ||
| 436 | /* Match-all classifier */ | ||
| 437 | |||
| 438 | enum { | ||
| 439 | TCA_MATCHALL_UNSPEC, | ||
| 440 | TCA_MATCHALL_CLASSID, | ||
| 441 | TCA_MATCHALL_ACT, | ||
| 442 | TCA_MATCHALL_FLAGS, | ||
| 443 | __TCA_MATCHALL_MAX, | ||
| 444 | }; | ||
| 445 | |||
| 446 | #define TCA_MATCHALL_MAX (__TCA_MATCHALL_MAX - 1) | ||
| 447 | |||
| 435 | /* Extended Matches */ | 448 | /* Extended Matches */ |
| 436 | 449 | ||
| 437 | struct tcf_ematch_tree_hdr { | 450 | struct tcf_ematch_tree_hdr { |
diff --git a/include/uapi/linux/sctp.h b/include/uapi/linux/sctp.h index ce70fe6b45df..d304f4c9792c 100644 --- a/include/uapi/linux/sctp.h +++ b/include/uapi/linux/sctp.h | |||
| @@ -112,6 +112,31 @@ typedef __s32 sctp_assoc_t; | |||
| 112 | #define SCTP_SOCKOPT_CONNECTX 110 /* CONNECTX requests. */ | 112 | #define SCTP_SOCKOPT_CONNECTX 110 /* CONNECTX requests. */ |
| 113 | #define SCTP_SOCKOPT_CONNECTX3 111 /* CONNECTX requests (updated) */ | 113 | #define SCTP_SOCKOPT_CONNECTX3 111 /* CONNECTX requests (updated) */ |
| 114 | #define SCTP_GET_ASSOC_STATS 112 /* Read only */ | 114 | #define SCTP_GET_ASSOC_STATS 112 /* Read only */ |
| 115 | #define SCTP_PR_SUPPORTED 113 | ||
| 116 | #define SCTP_DEFAULT_PRINFO 114 | ||
| 117 | #define SCTP_PR_ASSOC_STATUS 115 | ||
| 118 | |||
| 119 | /* PR-SCTP policies */ | ||
| 120 | #define SCTP_PR_SCTP_NONE 0x0000 | ||
| 121 | #define SCTP_PR_SCTP_TTL 0x0010 | ||
| 122 | #define SCTP_PR_SCTP_RTX 0x0020 | ||
| 123 | #define SCTP_PR_SCTP_PRIO 0x0030 | ||
| 124 | #define SCTP_PR_SCTP_MAX SCTP_PR_SCTP_PRIO | ||
| 125 | #define SCTP_PR_SCTP_MASK 0x0030 | ||
| 126 | |||
| 127 | #define __SCTP_PR_INDEX(x) ((x >> 4) - 1) | ||
| 128 | #define SCTP_PR_INDEX(x) __SCTP_PR_INDEX(SCTP_PR_SCTP_ ## x) | ||
| 129 | |||
| 130 | #define SCTP_PR_POLICY(x) ((x) & SCTP_PR_SCTP_MASK) | ||
| 131 | #define SCTP_PR_SET_POLICY(flags, x) \ | ||
| 132 | do { \ | ||
| 133 | flags &= ~SCTP_PR_SCTP_MASK; \ | ||
| 134 | flags |= x; \ | ||
| 135 | } while (0) | ||
| 136 | |||
| 137 | #define SCTP_PR_TTL_ENABLED(x) (SCTP_PR_POLICY(x) == SCTP_PR_SCTP_TTL) | ||
| 138 | #define SCTP_PR_RTX_ENABLED(x) (SCTP_PR_POLICY(x) == SCTP_PR_SCTP_RTX) | ||
| 139 | #define SCTP_PR_PRIO_ENABLED(x) (SCTP_PR_POLICY(x) == SCTP_PR_SCTP_PRIO) | ||
| 115 | 140 | ||
| 116 | /* These are bit fields for msghdr->msg_flags. See section 5.1. */ | 141 | /* These are bit fields for msghdr->msg_flags. See section 5.1. */ |
| 117 | /* On user space Linux, these live in <bits/socket.h> as an enum. */ | 142 | /* On user space Linux, these live in <bits/socket.h> as an enum. */ |
| @@ -902,4 +927,21 @@ struct sctp_paddrthlds { | |||
| 902 | __u16 spt_pathpfthld; | 927 | __u16 spt_pathpfthld; |
| 903 | }; | 928 | }; |
| 904 | 929 | ||
| 930 | /* | ||
| 931 | * Socket Option for Getting the Association/Stream-Specific PR-SCTP Status | ||
| 932 | */ | ||
| 933 | struct sctp_prstatus { | ||
| 934 | sctp_assoc_t sprstat_assoc_id; | ||
| 935 | __u16 sprstat_sid; | ||
| 936 | __u16 sprstat_policy; | ||
| 937 | __u64 sprstat_abandoned_unsent; | ||
| 938 | __u64 sprstat_abandoned_sent; | ||
| 939 | }; | ||
| 940 | |||
| 941 | struct sctp_default_prinfo { | ||
| 942 | sctp_assoc_t pr_assoc_id; | ||
| 943 | __u32 pr_value; | ||
| 944 | __u16 pr_policy; | ||
| 945 | }; | ||
| 946 | |||
| 905 | #endif /* _UAPI_SCTP_H */ | 947 | #endif /* _UAPI_SCTP_H */ |
diff --git a/include/uapi/linux/serio.h b/include/uapi/linux/serio.h index c2ea1698257f..f2447a83ac8d 100644 --- a/include/uapi/linux/serio.h +++ b/include/uapi/linux/serio.h | |||
| @@ -78,5 +78,6 @@ | |||
| 78 | #define SERIO_TSC40 0x3d | 78 | #define SERIO_TSC40 0x3d |
| 79 | #define SERIO_WACOM_IV 0x3e | 79 | #define SERIO_WACOM_IV 0x3e |
| 80 | #define SERIO_EGALAX 0x3f | 80 | #define SERIO_EGALAX 0x3f |
| 81 | #define SERIO_PULSE8_CEC 0x40 | ||
| 81 | 82 | ||
| 82 | #endif /* _UAPI_SERIO_H */ | 83 | #endif /* _UAPI_SERIO_H */ |
diff --git a/include/uapi/linux/tc_act/tc_skbedit.h b/include/uapi/linux/tc_act/tc_skbedit.h index fecb5cc48c40..a4d00c608d8f 100644 --- a/include/uapi/linux/tc_act/tc_skbedit.h +++ b/include/uapi/linux/tc_act/tc_skbedit.h | |||
| @@ -27,6 +27,7 @@ | |||
| 27 | #define SKBEDIT_F_PRIORITY 0x1 | 27 | #define SKBEDIT_F_PRIORITY 0x1 |
| 28 | #define SKBEDIT_F_QUEUE_MAPPING 0x2 | 28 | #define SKBEDIT_F_QUEUE_MAPPING 0x2 |
| 29 | #define SKBEDIT_F_MARK 0x4 | 29 | #define SKBEDIT_F_MARK 0x4 |
| 30 | #define SKBEDIT_F_PTYPE 0x8 | ||
| 30 | 31 | ||
| 31 | struct tc_skbedit { | 32 | struct tc_skbedit { |
| 32 | tc_gen; | 33 | tc_gen; |
| @@ -40,6 +41,7 @@ enum { | |||
| 40 | TCA_SKBEDIT_QUEUE_MAPPING, | 41 | TCA_SKBEDIT_QUEUE_MAPPING, |
| 41 | TCA_SKBEDIT_MARK, | 42 | TCA_SKBEDIT_MARK, |
| 42 | TCA_SKBEDIT_PAD, | 43 | TCA_SKBEDIT_PAD, |
| 44 | TCA_SKBEDIT_PTYPE, | ||
| 43 | __TCA_SKBEDIT_MAX | 45 | __TCA_SKBEDIT_MAX |
| 44 | }; | 46 | }; |
| 45 | #define TCA_SKBEDIT_MAX (__TCA_SKBEDIT_MAX - 1) | 47 | #define TCA_SKBEDIT_MAX (__TCA_SKBEDIT_MAX - 1) |
diff --git a/include/uapi/linux/tcp.h b/include/uapi/linux/tcp.h index 53e8e3fe6b1b..482898fc433a 100644 --- a/include/uapi/linux/tcp.h +++ b/include/uapi/linux/tcp.h | |||
| @@ -115,12 +115,22 @@ enum { | |||
| 115 | #define TCP_CC_INFO 26 /* Get Congestion Control (optional) info */ | 115 | #define TCP_CC_INFO 26 /* Get Congestion Control (optional) info */ |
| 116 | #define TCP_SAVE_SYN 27 /* Record SYN headers for new connections */ | 116 | #define TCP_SAVE_SYN 27 /* Record SYN headers for new connections */ |
| 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 | 119 | ||
| 119 | struct tcp_repair_opt { | 120 | struct tcp_repair_opt { |
| 120 | __u32 opt_code; | 121 | __u32 opt_code; |
| 121 | __u32 opt_val; | 122 | __u32 opt_val; |
| 122 | }; | 123 | }; |
| 123 | 124 | ||
| 125 | struct tcp_repair_window { | ||
| 126 | __u32 snd_wl1; | ||
| 127 | __u32 snd_wnd; | ||
| 128 | __u32 max_window; | ||
| 129 | |||
| 130 | __u32 rcv_wnd; | ||
| 131 | __u32 rcv_wup; | ||
| 132 | }; | ||
| 133 | |||
| 124 | enum { | 134 | enum { |
| 125 | TCP_NO_QUEUE, | 135 | TCP_NO_QUEUE, |
| 126 | TCP_RECV_QUEUE, | 136 | TCP_RECV_QUEUE, |
diff --git a/include/uapi/linux/tipc.h b/include/uapi/linux/tipc.h index 6f71b9b41595..bf049e8fe31b 100644 --- a/include/uapi/linux/tipc.h +++ b/include/uapi/linux/tipc.h | |||
| @@ -60,26 +60,48 @@ struct tipc_name_seq { | |||
| 60 | __u32 upper; | 60 | __u32 upper; |
| 61 | }; | 61 | }; |
| 62 | 62 | ||
| 63 | /* TIPC Address Size, Offset, Mask specification for Z.C.N | ||
| 64 | */ | ||
| 65 | #define TIPC_NODE_BITS 12 | ||
| 66 | #define TIPC_CLUSTER_BITS 12 | ||
| 67 | #define TIPC_ZONE_BITS 8 | ||
| 68 | |||
| 69 | #define TIPC_NODE_OFFSET 0 | ||
| 70 | #define TIPC_CLUSTER_OFFSET TIPC_NODE_BITS | ||
| 71 | #define TIPC_ZONE_OFFSET (TIPC_CLUSTER_OFFSET + TIPC_CLUSTER_BITS) | ||
| 72 | |||
| 73 | #define TIPC_NODE_SIZE ((1UL << TIPC_NODE_BITS) - 1) | ||
| 74 | #define TIPC_CLUSTER_SIZE ((1UL << TIPC_CLUSTER_BITS) - 1) | ||
| 75 | #define TIPC_ZONE_SIZE ((1UL << TIPC_ZONE_BITS) - 1) | ||
| 76 | |||
| 77 | #define TIPC_NODE_MASK (TIPC_NODE_SIZE << TIPC_NODE_OFFSET) | ||
| 78 | #define TIPC_CLUSTER_MASK (TIPC_CLUSTER_SIZE << TIPC_CLUSTER_OFFSET) | ||
| 79 | #define TIPC_ZONE_MASK (TIPC_ZONE_SIZE << TIPC_ZONE_OFFSET) | ||
| 80 | |||
| 81 | #define TIPC_ZONE_CLUSTER_MASK (TIPC_ZONE_MASK | TIPC_CLUSTER_MASK) | ||
| 82 | |||
| 63 | static inline __u32 tipc_addr(unsigned int zone, | 83 | static inline __u32 tipc_addr(unsigned int zone, |
| 64 | unsigned int cluster, | 84 | unsigned int cluster, |
| 65 | unsigned int node) | 85 | unsigned int node) |
| 66 | { | 86 | { |
| 67 | return (zone << 24) | (cluster << 12) | node; | 87 | return (zone << TIPC_ZONE_OFFSET) | |
| 88 | (cluster << TIPC_CLUSTER_OFFSET) | | ||
| 89 | node; | ||
| 68 | } | 90 | } |
| 69 | 91 | ||
| 70 | static inline unsigned int tipc_zone(__u32 addr) | 92 | static inline unsigned int tipc_zone(__u32 addr) |
| 71 | { | 93 | { |
| 72 | return addr >> 24; | 94 | return addr >> TIPC_ZONE_OFFSET; |
| 73 | } | 95 | } |
| 74 | 96 | ||
| 75 | static inline unsigned int tipc_cluster(__u32 addr) | 97 | static inline unsigned int tipc_cluster(__u32 addr) |
| 76 | { | 98 | { |
| 77 | return (addr >> 12) & 0xfff; | 99 | return (addr & TIPC_CLUSTER_MASK) >> TIPC_CLUSTER_OFFSET; |
| 78 | } | 100 | } |
| 79 | 101 | ||
| 80 | static inline unsigned int tipc_node(__u32 addr) | 102 | static inline unsigned int tipc_node(__u32 addr) |
| 81 | { | 103 | { |
| 82 | return addr & 0xfff; | 104 | return addr & TIPC_NODE_MASK; |
| 83 | } | 105 | } |
| 84 | 106 | ||
| 85 | /* | 107 | /* |
diff --git a/include/uapi/linux/tipc_netlink.h b/include/uapi/linux/tipc_netlink.h index d4c8f142ba63..5f3f6d09fb79 100644 --- a/include/uapi/linux/tipc_netlink.h +++ b/include/uapi/linux/tipc_netlink.h | |||
| @@ -56,6 +56,9 @@ enum { | |||
| 56 | TIPC_NL_NET_GET, | 56 | TIPC_NL_NET_GET, |
| 57 | TIPC_NL_NET_SET, | 57 | TIPC_NL_NET_SET, |
| 58 | TIPC_NL_NAME_TABLE_GET, | 58 | TIPC_NL_NAME_TABLE_GET, |
| 59 | TIPC_NL_MON_SET, | ||
| 60 | TIPC_NL_MON_GET, | ||
| 61 | TIPC_NL_MON_PEER_GET, | ||
| 59 | 62 | ||
| 60 | __TIPC_NL_CMD_MAX, | 63 | __TIPC_NL_CMD_MAX, |
| 61 | TIPC_NL_CMD_MAX = __TIPC_NL_CMD_MAX - 1 | 64 | TIPC_NL_CMD_MAX = __TIPC_NL_CMD_MAX - 1 |
| @@ -72,6 +75,8 @@ enum { | |||
| 72 | TIPC_NLA_NODE, /* nest */ | 75 | TIPC_NLA_NODE, /* nest */ |
| 73 | TIPC_NLA_NET, /* nest */ | 76 | TIPC_NLA_NET, /* nest */ |
| 74 | TIPC_NLA_NAME_TABLE, /* nest */ | 77 | TIPC_NLA_NAME_TABLE, /* nest */ |
| 78 | TIPC_NLA_MON, /* nest */ | ||
| 79 | TIPC_NLA_MON_PEER, /* nest */ | ||
| 75 | 80 | ||
| 76 | __TIPC_NLA_MAX, | 81 | __TIPC_NLA_MAX, |
| 77 | TIPC_NLA_MAX = __TIPC_NLA_MAX - 1 | 82 | TIPC_NLA_MAX = __TIPC_NLA_MAX - 1 |
| @@ -166,6 +171,20 @@ enum { | |||
| 166 | TIPC_NLA_NAME_TABLE_MAX = __TIPC_NLA_NAME_TABLE_MAX - 1 | 171 | TIPC_NLA_NAME_TABLE_MAX = __TIPC_NLA_NAME_TABLE_MAX - 1 |
| 167 | }; | 172 | }; |
| 168 | 173 | ||
| 174 | /* Monitor info */ | ||
| 175 | enum { | ||
| 176 | TIPC_NLA_MON_UNSPEC, | ||
| 177 | TIPC_NLA_MON_ACTIVATION_THRESHOLD, /* u32 */ | ||
| 178 | TIPC_NLA_MON_REF, /* u32 */ | ||
| 179 | TIPC_NLA_MON_ACTIVE, /* flag */ | ||
| 180 | TIPC_NLA_MON_BEARER_NAME, /* string */ | ||
| 181 | TIPC_NLA_MON_PEERCNT, /* u32 */ | ||
| 182 | TIPC_NLA_MON_LISTGEN, /* u32 */ | ||
| 183 | |||
| 184 | __TIPC_NLA_MON_MAX, | ||
| 185 | TIPC_NLA_MON_MAX = __TIPC_NLA_MON_MAX - 1 | ||
| 186 | }; | ||
| 187 | |||
| 169 | /* Publication info */ | 188 | /* Publication info */ |
| 170 | enum { | 189 | enum { |
| 171 | TIPC_NLA_PUBL_UNSPEC, | 190 | TIPC_NLA_PUBL_UNSPEC, |
| @@ -182,6 +201,24 @@ enum { | |||
| 182 | TIPC_NLA_PUBL_MAX = __TIPC_NLA_PUBL_MAX - 1 | 201 | TIPC_NLA_PUBL_MAX = __TIPC_NLA_PUBL_MAX - 1 |
| 183 | }; | 202 | }; |
| 184 | 203 | ||
| 204 | /* Monitor peer info */ | ||
| 205 | enum { | ||
| 206 | TIPC_NLA_MON_PEER_UNSPEC, | ||
| 207 | |||
| 208 | TIPC_NLA_MON_PEER_ADDR, /* u32 */ | ||
| 209 | TIPC_NLA_MON_PEER_DOMGEN, /* u32 */ | ||
| 210 | TIPC_NLA_MON_PEER_APPLIED, /* u32 */ | ||
| 211 | TIPC_NLA_MON_PEER_UPMAP, /* u64 */ | ||
| 212 | TIPC_NLA_MON_PEER_MEMBERS, /* tlv */ | ||
| 213 | TIPC_NLA_MON_PEER_UP, /* flag */ | ||
| 214 | TIPC_NLA_MON_PEER_HEAD, /* flag */ | ||
| 215 | TIPC_NLA_MON_PEER_LOCAL, /* flag */ | ||
| 216 | TIPC_NLA_MON_PEER_PAD, /* flag */ | ||
| 217 | |||
| 218 | __TIPC_NLA_MON_PEER_MAX, | ||
| 219 | TIPC_NLA_MON_PEER_MAX = __TIPC_NLA_MON_PEER_MAX - 1 | ||
| 220 | }; | ||
| 221 | |||
| 185 | /* Nest, connection info */ | 222 | /* Nest, connection info */ |
| 186 | enum { | 223 | enum { |
| 187 | TIPC_NLA_CON_UNSPEC, | 224 | TIPC_NLA_CON_UNSPEC, |
diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h index 8f951917be74..724f43e69d03 100644 --- a/include/uapi/linux/videodev2.h +++ b/include/uapi/linux/videodev2.h | |||
| @@ -504,22 +504,16 @@ struct v4l2_pix_format { | |||
| 504 | #define V4L2_PIX_FMT_UV8 v4l2_fourcc('U', 'V', '8', ' ') /* 8 UV 4:4 */ | 504 | #define V4L2_PIX_FMT_UV8 v4l2_fourcc('U', 'V', '8', ' ') /* 8 UV 4:4 */ |
| 505 | 505 | ||
| 506 | /* Luminance+Chrominance formats */ | 506 | /* Luminance+Chrominance formats */ |
| 507 | #define V4L2_PIX_FMT_YVU410 v4l2_fourcc('Y', 'V', 'U', '9') /* 9 YVU 4:1:0 */ | ||
| 508 | #define V4L2_PIX_FMT_YVU420 v4l2_fourcc('Y', 'V', '1', '2') /* 12 YVU 4:2:0 */ | ||
| 509 | #define V4L2_PIX_FMT_YUYV v4l2_fourcc('Y', 'U', 'Y', 'V') /* 16 YUV 4:2:2 */ | 507 | #define V4L2_PIX_FMT_YUYV v4l2_fourcc('Y', 'U', 'Y', 'V') /* 16 YUV 4:2:2 */ |
| 510 | #define V4L2_PIX_FMT_YYUV v4l2_fourcc('Y', 'Y', 'U', 'V') /* 16 YUV 4:2:2 */ | 508 | #define V4L2_PIX_FMT_YYUV v4l2_fourcc('Y', 'Y', 'U', 'V') /* 16 YUV 4:2:2 */ |
| 511 | #define V4L2_PIX_FMT_YVYU v4l2_fourcc('Y', 'V', 'Y', 'U') /* 16 YVU 4:2:2 */ | 509 | #define V4L2_PIX_FMT_YVYU v4l2_fourcc('Y', 'V', 'Y', 'U') /* 16 YVU 4:2:2 */ |
| 512 | #define V4L2_PIX_FMT_UYVY v4l2_fourcc('U', 'Y', 'V', 'Y') /* 16 YUV 4:2:2 */ | 510 | #define V4L2_PIX_FMT_UYVY v4l2_fourcc('U', 'Y', 'V', 'Y') /* 16 YUV 4:2:2 */ |
| 513 | #define V4L2_PIX_FMT_VYUY v4l2_fourcc('V', 'Y', 'U', 'Y') /* 16 YUV 4:2:2 */ | 511 | #define V4L2_PIX_FMT_VYUY v4l2_fourcc('V', 'Y', 'U', 'Y') /* 16 YUV 4:2:2 */ |
| 514 | #define V4L2_PIX_FMT_YUV422P v4l2_fourcc('4', '2', '2', 'P') /* 16 YVU422 planar */ | ||
| 515 | #define V4L2_PIX_FMT_YUV411P v4l2_fourcc('4', '1', '1', 'P') /* 16 YVU411 planar */ | ||
| 516 | #define V4L2_PIX_FMT_Y41P v4l2_fourcc('Y', '4', '1', 'P') /* 12 YUV 4:1:1 */ | 512 | #define V4L2_PIX_FMT_Y41P v4l2_fourcc('Y', '4', '1', 'P') /* 12 YUV 4:1:1 */ |
| 517 | #define V4L2_PIX_FMT_YUV444 v4l2_fourcc('Y', '4', '4', '4') /* 16 xxxxyyyy uuuuvvvv */ | 513 | #define V4L2_PIX_FMT_YUV444 v4l2_fourcc('Y', '4', '4', '4') /* 16 xxxxyyyy uuuuvvvv */ |
| 518 | #define V4L2_PIX_FMT_YUV555 v4l2_fourcc('Y', 'U', 'V', 'O') /* 16 YUV-5-5-5 */ | 514 | #define V4L2_PIX_FMT_YUV555 v4l2_fourcc('Y', 'U', 'V', 'O') /* 16 YUV-5-5-5 */ |
| 519 | #define V4L2_PIX_FMT_YUV565 v4l2_fourcc('Y', 'U', 'V', 'P') /* 16 YUV-5-6-5 */ | 515 | #define V4L2_PIX_FMT_YUV565 v4l2_fourcc('Y', 'U', 'V', 'P') /* 16 YUV-5-6-5 */ |
| 520 | #define V4L2_PIX_FMT_YUV32 v4l2_fourcc('Y', 'U', 'V', '4') /* 32 YUV-8-8-8-8 */ | 516 | #define V4L2_PIX_FMT_YUV32 v4l2_fourcc('Y', 'U', 'V', '4') /* 32 YUV-8-8-8-8 */ |
| 521 | #define V4L2_PIX_FMT_YUV410 v4l2_fourcc('Y', 'U', 'V', '9') /* 9 YUV 4:1:0 */ | ||
| 522 | #define V4L2_PIX_FMT_YUV420 v4l2_fourcc('Y', 'U', '1', '2') /* 12 YUV 4:2:0 */ | ||
| 523 | #define V4L2_PIX_FMT_HI240 v4l2_fourcc('H', 'I', '2', '4') /* 8 8-bit color */ | 517 | #define V4L2_PIX_FMT_HI240 v4l2_fourcc('H', 'I', '2', '4') /* 8 8-bit color */ |
| 524 | #define V4L2_PIX_FMT_HM12 v4l2_fourcc('H', 'M', '1', '2') /* 8 YUV 4:2:0 16x16 macroblocks */ | 518 | #define V4L2_PIX_FMT_HM12 v4l2_fourcc('H', 'M', '1', '2') /* 8 YUV 4:2:0 16x16 macroblocks */ |
| 525 | #define V4L2_PIX_FMT_M420 v4l2_fourcc('M', '4', '2', '0') /* 12 YUV 4:2:0 2 lines y, 1 line uv interleaved */ | 519 | #define V4L2_PIX_FMT_M420 v4l2_fourcc('M', '4', '2', '0') /* 12 YUV 4:2:0 2 lines y, 1 line uv interleaved */ |
| @@ -540,6 +534,14 @@ struct v4l2_pix_format { | |||
| 540 | #define V4L2_PIX_FMT_NV12MT v4l2_fourcc('T', 'M', '1', '2') /* 12 Y/CbCr 4:2:0 64x32 macroblocks */ | 534 | #define V4L2_PIX_FMT_NV12MT v4l2_fourcc('T', 'M', '1', '2') /* 12 Y/CbCr 4:2:0 64x32 macroblocks */ |
| 541 | #define V4L2_PIX_FMT_NV12MT_16X16 v4l2_fourcc('V', 'M', '1', '2') /* 12 Y/CbCr 4:2:0 16x16 macroblocks */ | 535 | #define V4L2_PIX_FMT_NV12MT_16X16 v4l2_fourcc('V', 'M', '1', '2') /* 12 Y/CbCr 4:2:0 16x16 macroblocks */ |
| 542 | 536 | ||
| 537 | /* three planes - Y Cb, Cr */ | ||
| 538 | #define V4L2_PIX_FMT_YUV410 v4l2_fourcc('Y', 'U', 'V', '9') /* 9 YUV 4:1:0 */ | ||
| 539 | #define V4L2_PIX_FMT_YVU410 v4l2_fourcc('Y', 'V', 'U', '9') /* 9 YVU 4:1:0 */ | ||
| 540 | #define V4L2_PIX_FMT_YUV411P v4l2_fourcc('4', '1', '1', 'P') /* 12 YVU411 planar */ | ||
| 541 | #define V4L2_PIX_FMT_YUV420 v4l2_fourcc('Y', 'U', '1', '2') /* 12 YUV 4:2:0 */ | ||
| 542 | #define V4L2_PIX_FMT_YVU420 v4l2_fourcc('Y', 'V', '1', '2') /* 12 YVU 4:2:0 */ | ||
| 543 | #define V4L2_PIX_FMT_YUV422P v4l2_fourcc('4', '2', '2', 'P') /* 16 YVU422 planar */ | ||
| 544 | |||
| 543 | /* three non contiguous planes - Y, Cb, Cr */ | 545 | /* three non contiguous planes - Y, Cb, Cr */ |
| 544 | #define V4L2_PIX_FMT_YUV420M v4l2_fourcc('Y', 'M', '1', '2') /* 12 YUV420 planar */ | 546 | #define V4L2_PIX_FMT_YUV420M v4l2_fourcc('Y', 'M', '1', '2') /* 12 YUV420 planar */ |
| 545 | #define V4L2_PIX_FMT_YVU420M v4l2_fourcc('Y', 'M', '2', '1') /* 12 YVU420 planar */ | 547 | #define V4L2_PIX_FMT_YVU420M v4l2_fourcc('Y', 'M', '2', '1') /* 12 YVU420 planar */ |
diff --git a/include/uapi/linux/virtio_net.h b/include/uapi/linux/virtio_net.h index ec32293a00db..fc353b518288 100644 --- a/include/uapi/linux/virtio_net.h +++ b/include/uapi/linux/virtio_net.h | |||
| @@ -1,5 +1,5 @@ | |||
| 1 | #ifndef _LINUX_VIRTIO_NET_H | 1 | #ifndef _UAPI_LINUX_VIRTIO_NET_H |
| 2 | #define _LINUX_VIRTIO_NET_H | 2 | #define _UAPI_LINUX_VIRTIO_NET_H |
| 3 | /* This header is BSD licensed so anyone can use the definitions to implement | 3 | /* This header is BSD licensed so anyone can use the definitions to implement |
| 4 | * compatible drivers/servers. | 4 | * compatible drivers/servers. |
| 5 | * | 5 | * |
| @@ -35,6 +35,7 @@ | |||
| 35 | #define VIRTIO_NET_F_CSUM 0 /* Host handles pkts w/ partial csum */ | 35 | #define VIRTIO_NET_F_CSUM 0 /* Host handles pkts w/ partial csum */ |
| 36 | #define VIRTIO_NET_F_GUEST_CSUM 1 /* Guest handles pkts w/ partial csum */ | 36 | #define VIRTIO_NET_F_GUEST_CSUM 1 /* Guest handles pkts w/ partial csum */ |
| 37 | #define VIRTIO_NET_F_CTRL_GUEST_OFFLOADS 2 /* Dynamic offload configuration. */ | 37 | #define VIRTIO_NET_F_CTRL_GUEST_OFFLOADS 2 /* Dynamic offload configuration. */ |
| 38 | #define VIRTIO_NET_F_MTU 3 /* Initial MTU advice */ | ||
| 38 | #define VIRTIO_NET_F_MAC 5 /* Host has given MAC address. */ | 39 | #define VIRTIO_NET_F_MAC 5 /* Host has given MAC address. */ |
| 39 | #define VIRTIO_NET_F_GUEST_TSO4 7 /* Guest can handle TSOv4 in. */ | 40 | #define VIRTIO_NET_F_GUEST_TSO4 7 /* Guest can handle TSOv4 in. */ |
| 40 | #define VIRTIO_NET_F_GUEST_TSO6 8 /* Guest can handle TSOv6 in. */ | 41 | #define VIRTIO_NET_F_GUEST_TSO6 8 /* Guest can handle TSOv6 in. */ |
| @@ -73,6 +74,8 @@ struct virtio_net_config { | |||
| 73 | * Legal values are between 1 and 0x8000 | 74 | * Legal values are between 1 and 0x8000 |
| 74 | */ | 75 | */ |
| 75 | __u16 max_virtqueue_pairs; | 76 | __u16 max_virtqueue_pairs; |
| 77 | /* Default maximum transmit unit advice */ | ||
| 78 | __u16 mtu; | ||
| 76 | } __attribute__((packed)); | 79 | } __attribute__((packed)); |
| 77 | 80 | ||
| 78 | /* | 81 | /* |
| @@ -242,4 +245,4 @@ struct virtio_net_ctrl_mq { | |||
| 242 | #define VIRTIO_NET_CTRL_GUEST_OFFLOADS 5 | 245 | #define VIRTIO_NET_CTRL_GUEST_OFFLOADS 5 |
| 243 | #define VIRTIO_NET_CTRL_GUEST_OFFLOADS_SET 0 | 246 | #define VIRTIO_NET_CTRL_GUEST_OFFLOADS_SET 0 |
| 244 | 247 | ||
| 245 | #endif /* _LINUX_VIRTIO_NET_H */ | 248 | #endif /* _UAPI_LINUX_VIRTIO_NET_H */ |
diff --git a/include/uapi/linux/vsp1.h b/include/uapi/linux/vsp1.h deleted file mode 100644 index 9a823696d816..000000000000 --- a/include/uapi/linux/vsp1.h +++ /dev/null | |||
| @@ -1,34 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * vsp1.h | ||
| 3 | * | ||
| 4 | * Renesas R-Car VSP1 - User-space API | ||
| 5 | * | ||
| 6 | * Copyright (C) 2013 Renesas Corporation | ||
| 7 | * | ||
| 8 | * Contacts: Laurent Pinchart <laurent.pinchart@ideasonboard.com> | ||
| 9 | * | ||
| 10 | * This program is free software; you can redistribute it and/or modify | ||
| 11 | * it under the terms of the GNU General Public License version 2 as | ||
| 12 | * published by the Free Software Foundation. | ||
| 13 | */ | ||
| 14 | |||
| 15 | #ifndef __VSP1_USER_H__ | ||
| 16 | #define __VSP1_USER_H__ | ||
| 17 | |||
| 18 | #include <linux/types.h> | ||
| 19 | #include <linux/videodev2.h> | ||
| 20 | |||
| 21 | /* | ||
| 22 | * Private IOCTLs | ||
| 23 | * | ||
| 24 | * VIDIOC_VSP1_LUT_CONFIG - Configure the lookup table | ||
| 25 | */ | ||
| 26 | |||
| 27 | #define VIDIOC_VSP1_LUT_CONFIG \ | ||
| 28 | _IOWR('V', BASE_VIDIOC_PRIVATE + 1, struct vsp1_lut_config) | ||
| 29 | |||
| 30 | struct vsp1_lut_config { | ||
| 31 | __u32 lut[256]; | ||
| 32 | }; | ||
| 33 | |||
| 34 | #endif /* __VSP1_USER_H__ */ | ||
diff --git a/include/uapi/linux/wireless.h b/include/uapi/linux/wireless.h index c1592e3e4036..d9ecd7c6d691 100644 --- a/include/uapi/linux/wireless.h +++ b/include/uapi/linux/wireless.h | |||
| @@ -670,8 +670,7 @@ | |||
| 670 | /* | 670 | /* |
| 671 | * Generic format for most parameters that fit in an int | 671 | * Generic format for most parameters that fit in an int |
| 672 | */ | 672 | */ |
| 673 | struct iw_param | 673 | struct iw_param { |
| 674 | { | ||
| 675 | __s32 value; /* The value of the parameter itself */ | 674 | __s32 value; /* The value of the parameter itself */ |
| 676 | __u8 fixed; /* Hardware should not use auto select */ | 675 | __u8 fixed; /* Hardware should not use auto select */ |
| 677 | __u8 disabled; /* Disable the feature */ | 676 | __u8 disabled; /* Disable the feature */ |
| @@ -682,8 +681,7 @@ struct iw_param | |||
| 682 | * For all data larger than 16 octets, we need to use a | 681 | * For all data larger than 16 octets, we need to use a |
| 683 | * pointer to memory allocated in user space. | 682 | * pointer to memory allocated in user space. |
| 684 | */ | 683 | */ |
| 685 | struct iw_point | 684 | struct iw_point { |
| 686 | { | ||
| 687 | void __user *pointer; /* Pointer to the data (in user space) */ | 685 | void __user *pointer; /* Pointer to the data (in user space) */ |
| 688 | __u16 length; /* number of fields or size in bytes */ | 686 | __u16 length; /* number of fields or size in bytes */ |
| 689 | __u16 flags; /* Optional params */ | 687 | __u16 flags; /* Optional params */ |
| @@ -698,8 +696,7 @@ struct iw_point | |||
| 698 | * of 10 to get 'm' lower than 10^9, with 'm'= f / (10^'e')... | 696 | * of 10 to get 'm' lower than 10^9, with 'm'= f / (10^'e')... |
| 699 | * The power of 10 is in 'e', the result of the division is in 'm'. | 697 | * The power of 10 is in 'e', the result of the division is in 'm'. |
| 700 | */ | 698 | */ |
| 701 | struct iw_freq | 699 | struct iw_freq { |
| 702 | { | ||
| 703 | __s32 m; /* Mantissa */ | 700 | __s32 m; /* Mantissa */ |
| 704 | __s16 e; /* Exponent */ | 701 | __s16 e; /* Exponent */ |
| 705 | __u8 i; /* List index (when in range struct) */ | 702 | __u8 i; /* List index (when in range struct) */ |
| @@ -709,8 +706,7 @@ struct iw_freq | |||
| 709 | /* | 706 | /* |
| 710 | * Quality of the link | 707 | * Quality of the link |
| 711 | */ | 708 | */ |
| 712 | struct iw_quality | 709 | struct iw_quality { |
| 713 | { | ||
| 714 | __u8 qual; /* link quality (%retries, SNR, | 710 | __u8 qual; /* link quality (%retries, SNR, |
| 715 | %missed beacons or better...) */ | 711 | %missed beacons or better...) */ |
| 716 | __u8 level; /* signal level (dBm) */ | 712 | __u8 level; /* signal level (dBm) */ |
| @@ -725,8 +721,7 @@ struct iw_quality | |||
| 725 | * is already pretty exhaustive, and you should use that first. | 721 | * is already pretty exhaustive, and you should use that first. |
| 726 | * This is only additional stats... | 722 | * This is only additional stats... |
| 727 | */ | 723 | */ |
| 728 | struct iw_discarded | 724 | struct iw_discarded { |
| 729 | { | ||
| 730 | __u32 nwid; /* Rx : Wrong nwid/essid */ | 725 | __u32 nwid; /* Rx : Wrong nwid/essid */ |
| 731 | __u32 code; /* Rx : Unable to code/decode (WEP) */ | 726 | __u32 code; /* Rx : Unable to code/decode (WEP) */ |
| 732 | __u32 fragment; /* Rx : Can't perform MAC reassembly */ | 727 | __u32 fragment; /* Rx : Can't perform MAC reassembly */ |
| @@ -738,16 +733,14 @@ struct iw_discarded | |||
| 738 | * Packet/Time period missed in the wireless adapter due to | 733 | * Packet/Time period missed in the wireless adapter due to |
| 739 | * "wireless" specific problems... | 734 | * "wireless" specific problems... |
| 740 | */ | 735 | */ |
| 741 | struct iw_missed | 736 | struct iw_missed { |
| 742 | { | ||
| 743 | __u32 beacon; /* Missed beacons/superframe */ | 737 | __u32 beacon; /* Missed beacons/superframe */ |
| 744 | }; | 738 | }; |
| 745 | 739 | ||
| 746 | /* | 740 | /* |
| 747 | * Quality range (for spy threshold) | 741 | * Quality range (for spy threshold) |
| 748 | */ | 742 | */ |
| 749 | struct iw_thrspy | 743 | struct iw_thrspy { |
| 750 | { | ||
| 751 | struct sockaddr addr; /* Source address (hw/mac) */ | 744 | struct sockaddr addr; /* Source address (hw/mac) */ |
| 752 | struct iw_quality qual; /* Quality of the link */ | 745 | struct iw_quality qual; /* Quality of the link */ |
| 753 | struct iw_quality low; /* Low threshold */ | 746 | struct iw_quality low; /* Low threshold */ |
| @@ -765,8 +758,7 @@ struct iw_thrspy | |||
| 765 | * Especially, scan results are required to include an entry for the | 758 | * Especially, scan results are required to include an entry for the |
| 766 | * current BSS if the driver is in Managed mode and associated with an AP. | 759 | * current BSS if the driver is in Managed mode and associated with an AP. |
| 767 | */ | 760 | */ |
| 768 | struct iw_scan_req | 761 | struct iw_scan_req { |
| 769 | { | ||
| 770 | __u8 scan_type; /* IW_SCAN_TYPE_{ACTIVE,PASSIVE} */ | 762 | __u8 scan_type; /* IW_SCAN_TYPE_{ACTIVE,PASSIVE} */ |
| 771 | __u8 essid_len; | 763 | __u8 essid_len; |
| 772 | __u8 num_channels; /* num entries in channel_list; | 764 | __u8 num_channels; /* num entries in channel_list; |
| @@ -827,8 +819,7 @@ struct iw_scan_req | |||
| 827 | * RX_SEQ_VALID for SIOCGIWENCODEEXT are optional, but can be useful for | 819 | * RX_SEQ_VALID for SIOCGIWENCODEEXT are optional, but can be useful for |
| 828 | * debugging/testing. | 820 | * debugging/testing. |
| 829 | */ | 821 | */ |
| 830 | struct iw_encode_ext | 822 | struct iw_encode_ext { |
| 831 | { | ||
| 832 | __u32 ext_flags; /* IW_ENCODE_EXT_* */ | 823 | __u32 ext_flags; /* IW_ENCODE_EXT_* */ |
| 833 | __u8 tx_seq[IW_ENCODE_SEQ_MAX_SIZE]; /* LSB first */ | 824 | __u8 tx_seq[IW_ENCODE_SEQ_MAX_SIZE]; /* LSB first */ |
| 834 | __u8 rx_seq[IW_ENCODE_SEQ_MAX_SIZE]; /* LSB first */ | 825 | __u8 rx_seq[IW_ENCODE_SEQ_MAX_SIZE]; /* LSB first */ |
| @@ -841,8 +832,7 @@ struct iw_encode_ext | |||
| 841 | }; | 832 | }; |
| 842 | 833 | ||
| 843 | /* SIOCSIWMLME data */ | 834 | /* SIOCSIWMLME data */ |
| 844 | struct iw_mlme | 835 | struct iw_mlme { |
| 845 | { | ||
| 846 | __u16 cmd; /* IW_MLME_* */ | 836 | __u16 cmd; /* IW_MLME_* */ |
| 847 | __u16 reason_code; | 837 | __u16 reason_code; |
| 848 | struct sockaddr addr; | 838 | struct sockaddr addr; |
| @@ -855,16 +845,14 @@ struct iw_mlme | |||
| 855 | 845 | ||
| 856 | #define IW_PMKID_LEN 16 | 846 | #define IW_PMKID_LEN 16 |
| 857 | 847 | ||
| 858 | struct iw_pmksa | 848 | struct iw_pmksa { |
| 859 | { | ||
| 860 | __u32 cmd; /* IW_PMKSA_* */ | 849 | __u32 cmd; /* IW_PMKSA_* */ |
| 861 | struct sockaddr bssid; | 850 | struct sockaddr bssid; |
| 862 | __u8 pmkid[IW_PMKID_LEN]; | 851 | __u8 pmkid[IW_PMKID_LEN]; |
| 863 | }; | 852 | }; |
| 864 | 853 | ||
| 865 | /* IWEVMICHAELMICFAILURE data */ | 854 | /* IWEVMICHAELMICFAILURE data */ |
| 866 | struct iw_michaelmicfailure | 855 | struct iw_michaelmicfailure { |
| 867 | { | ||
| 868 | __u32 flags; | 856 | __u32 flags; |
| 869 | struct sockaddr src_addr; | 857 | struct sockaddr src_addr; |
| 870 | __u8 tsc[IW_ENCODE_SEQ_MAX_SIZE]; /* LSB first */ | 858 | __u8 tsc[IW_ENCODE_SEQ_MAX_SIZE]; /* LSB first */ |
| @@ -872,8 +860,7 @@ struct iw_michaelmicfailure | |||
| 872 | 860 | ||
| 873 | /* IWEVPMKIDCAND data */ | 861 | /* IWEVPMKIDCAND data */ |
| 874 | #define IW_PMKID_CAND_PREAUTH 0x00000001 /* RNS pre-authentication enabled */ | 862 | #define IW_PMKID_CAND_PREAUTH 0x00000001 /* RNS pre-authentication enabled */ |
| 875 | struct iw_pmkid_cand | 863 | struct iw_pmkid_cand { |
| 876 | { | ||
| 877 | __u32 flags; /* IW_PMKID_CAND_* */ | 864 | __u32 flags; /* IW_PMKID_CAND_* */ |
| 878 | __u32 index; /* the smaller the index, the higher the | 865 | __u32 index; /* the smaller the index, the higher the |
| 879 | * priority */ | 866 | * priority */ |
| @@ -884,8 +871,7 @@ struct iw_pmkid_cand | |||
| 884 | /* | 871 | /* |
| 885 | * Wireless statistics (used for /proc/net/wireless) | 872 | * Wireless statistics (used for /proc/net/wireless) |
| 886 | */ | 873 | */ |
| 887 | struct iw_statistics | 874 | struct iw_statistics { |
| 888 | { | ||
| 889 | __u16 status; /* Status | 875 | __u16 status; /* Status |
| 890 | * - device dependent for now */ | 876 | * - device dependent for now */ |
| 891 | 877 | ||
| @@ -897,7 +883,7 @@ struct iw_statistics | |||
| 897 | 883 | ||
| 898 | /* ------------------------ IOCTL REQUEST ------------------------ */ | 884 | /* ------------------------ IOCTL REQUEST ------------------------ */ |
| 899 | /* | 885 | /* |
| 900 | * This structure defines the payload of an ioctl, and is used | 886 | * This structure defines the payload of an ioctl, and is used |
| 901 | * below. | 887 | * below. |
| 902 | * | 888 | * |
| 903 | * Note that this structure should fit on the memory footprint | 889 | * Note that this structure should fit on the memory footprint |
| @@ -906,8 +892,7 @@ struct iw_statistics | |||
| 906 | * You should check this when increasing the structures defined | 892 | * You should check this when increasing the structures defined |
| 907 | * above in this file... | 893 | * above in this file... |
| 908 | */ | 894 | */ |
| 909 | union iwreq_data | 895 | union iwreq_data { |
| 910 | { | ||
| 911 | /* Config - generic */ | 896 | /* Config - generic */ |
| 912 | char name[IFNAMSIZ]; | 897 | char name[IFNAMSIZ]; |
| 913 | /* Name : used to verify the presence of wireless extensions. | 898 | /* Name : used to verify the presence of wireless extensions. |
| @@ -944,15 +929,14 @@ union iwreq_data | |||
| 944 | * convenience... | 929 | * convenience... |
| 945 | * Do I need to remind you about structure size (32 octets) ? | 930 | * Do I need to remind you about structure size (32 octets) ? |
| 946 | */ | 931 | */ |
| 947 | struct iwreq | 932 | struct iwreq { |
| 948 | { | ||
| 949 | union | 933 | union |
| 950 | { | 934 | { |
| 951 | char ifrn_name[IFNAMSIZ]; /* if name, e.g. "eth0" */ | 935 | char ifrn_name[IFNAMSIZ]; /* if name, e.g. "eth0" */ |
| 952 | } ifr_ifrn; | 936 | } ifr_ifrn; |
| 953 | 937 | ||
| 954 | /* Data part (defined just above) */ | 938 | /* Data part (defined just above) */ |
| 955 | union iwreq_data u; | 939 | union iwreq_data u; |
| 956 | }; | 940 | }; |
| 957 | 941 | ||
| 958 | /* -------------------------- IOCTL DATA -------------------------- */ | 942 | /* -------------------------- IOCTL DATA -------------------------- */ |
| @@ -965,8 +949,7 @@ struct iwreq | |||
| 965 | * Range of parameters | 949 | * Range of parameters |
| 966 | */ | 950 | */ |
| 967 | 951 | ||
| 968 | struct iw_range | 952 | struct iw_range { |
| 969 | { | ||
| 970 | /* Informative stuff (to choose between different interface) */ | 953 | /* Informative stuff (to choose between different interface) */ |
| 971 | __u32 throughput; /* To give an idea... */ | 954 | __u32 throughput; /* To give an idea... */ |
| 972 | /* In theory this value should be the maximum benchmarked | 955 | /* In theory this value should be the maximum benchmarked |
| @@ -1069,9 +1052,8 @@ struct iw_range | |||
| 1069 | /* | 1052 | /* |
| 1070 | * Private ioctl interface information | 1053 | * Private ioctl interface information |
| 1071 | */ | 1054 | */ |
| 1072 | 1055 | ||
| 1073 | struct iw_priv_args | 1056 | struct iw_priv_args { |
| 1074 | { | ||
| 1075 | __u32 cmd; /* Number of the ioctl to issue */ | 1057 | __u32 cmd; /* Number of the ioctl to issue */ |
| 1076 | __u16 set_args; /* Type and number of args */ | 1058 | __u16 set_args; /* Type and number of args */ |
| 1077 | __u16 get_args; /* Type and number of args */ | 1059 | __u16 get_args; /* Type and number of args */ |
| @@ -1088,8 +1070,7 @@ struct iw_priv_args | |||
| 1088 | /* | 1070 | /* |
| 1089 | * A Wireless Event. Contains basically the same data as the ioctl... | 1071 | * A Wireless Event. Contains basically the same data as the ioctl... |
| 1090 | */ | 1072 | */ |
| 1091 | struct iw_event | 1073 | struct iw_event { |
| 1092 | { | ||
| 1093 | __u16 len; /* Real length of this stuff */ | 1074 | __u16 len; /* Real length of this stuff */ |
| 1094 | __u16 cmd; /* Wireless IOCTL */ | 1075 | __u16 cmd; /* Wireless IOCTL */ |
| 1095 | union iwreq_data u; /* IOCTL fixed payload */ | 1076 | union iwreq_data u; /* IOCTL fixed payload */ |
