diff options
| author | Jiri Kosina <jkosina@suse.cz> | 2013-03-09 04:58:13 -0500 |
|---|---|---|
| committer | Jiri Kosina <jkosina@suse.cz> | 2013-03-09 05:01:06 -0500 |
| commit | 83a44ac8bf4a8e6cbbf0c00ff281a482778f708a (patch) | |
| tree | 325be1e4d52372db888396549908f25c5370caee /include/uapi/linux | |
| parent | 4ba25d3f87fe3ed6634f61da2a6904e2dfd09192 (diff) | |
| parent | d381f45c890a3fb136afb0dc1cbe025e066cb981 (diff) | |
HID: Merge branch 'master' into for-3.10/hid-driver-transport-cleanups
Sync with Linus' tree. This is necessary to resolve build conflict
caused by dcd9006b1b053c7b ("HID: logitech-dj: do not directly call
hid_output_raw_report() during probe") which issues direct call to
usbhid_submit_report(), but that is gone in this branch and
hid_hw_request() has to be used instead.
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'include/uapi/linux')
| -rw-r--r-- | include/uapi/linux/Kbuild | 1 | ||||
| -rw-r--r-- | include/uapi/linux/btrfs.h | 514 | ||||
| -rw-r--r-- | include/uapi/linux/cdrom.h | 34 | ||||
| -rw-r--r-- | include/uapi/linux/dm-ioctl.h | 11 | ||||
| -rw-r--r-- | include/uapi/linux/dvb/frontend.h | 79 | ||||
| -rw-r--r-- | include/uapi/linux/dvb/version.h | 2 | ||||
| -rw-r--r-- | include/uapi/linux/elf.h | 2 | ||||
| -rw-r--r-- | include/uapi/linux/ipmi.h | 10 | ||||
| -rw-r--r-- | include/uapi/linux/kvm.h | 27 | ||||
| -rw-r--r-- | include/uapi/linux/meye.h | 8 | ||||
| -rw-r--r-- | include/uapi/linux/msdos_fs.h | 38 | ||||
| -rw-r--r-- | include/uapi/linux/nbd.h | 3 | ||||
| -rw-r--r-- | include/uapi/linux/v4l2-controls.h | 33 | ||||
| -rw-r--r-- | include/uapi/linux/v4l2-mediabus.h | 11 | ||||
| -rw-r--r-- | include/uapi/linux/vfio.h | 9 | ||||
| -rw-r--r-- | include/uapi/linux/videodev2.h | 35 | ||||
| -rw-r--r-- | include/uapi/linux/xattr.h | 13 |
17 files changed, 769 insertions, 61 deletions
diff --git a/include/uapi/linux/Kbuild b/include/uapi/linux/Kbuild index 4e67194fd2c3..5c8a1d25e21c 100644 --- a/include/uapi/linux/Kbuild +++ b/include/uapi/linux/Kbuild | |||
| @@ -68,6 +68,7 @@ header-y += blkpg.h | |||
| 68 | header-y += blktrace_api.h | 68 | header-y += blktrace_api.h |
| 69 | header-y += bpqether.h | 69 | header-y += bpqether.h |
| 70 | header-y += bsg.h | 70 | header-y += bsg.h |
| 71 | header-y += btrfs.h | ||
| 71 | header-y += can.h | 72 | header-y += can.h |
| 72 | header-y += capability.h | 73 | header-y += capability.h |
| 73 | header-y += capi.h | 74 | header-y += capi.h |
diff --git a/include/uapi/linux/btrfs.h b/include/uapi/linux/btrfs.h new file mode 100644 index 000000000000..fa3a5f9338fc --- /dev/null +++ b/include/uapi/linux/btrfs.h | |||
| @@ -0,0 +1,514 @@ | |||
| 1 | /* | ||
| 2 | * Copyright (C) 2007 Oracle. All rights reserved. | ||
| 3 | * | ||
| 4 | * This program is free software; you can redistribute it and/or | ||
| 5 | * modify it under the terms of the GNU General Public | ||
| 6 | * License v2 as published by the Free Software Foundation. | ||
| 7 | * | ||
| 8 | * This program is distributed in the hope that it will be useful, | ||
| 9 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 10 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
| 11 | * General Public License for more details. | ||
| 12 | * | ||
| 13 | * You should have received a copy of the GNU General Public | ||
| 14 | * License along with this program; if not, write to the | ||
| 15 | * Free Software Foundation, Inc., 59 Temple Place - Suite 330, | ||
| 16 | * Boston, MA 021110-1307, USA. | ||
| 17 | */ | ||
| 18 | |||
| 19 | #ifndef _UAPI_LINUX_BTRFS_H | ||
| 20 | #define _UAPI_LINUX_BTRFS_H | ||
| 21 | #include <linux/types.h> | ||
| 22 | #include <linux/ioctl.h> | ||
| 23 | |||
| 24 | #define BTRFS_IOCTL_MAGIC 0x94 | ||
| 25 | #define BTRFS_VOL_NAME_MAX 255 | ||
| 26 | |||
| 27 | /* this should be 4k */ | ||
| 28 | #define BTRFS_PATH_NAME_MAX 4087 | ||
| 29 | struct btrfs_ioctl_vol_args { | ||
| 30 | __s64 fd; | ||
| 31 | char name[BTRFS_PATH_NAME_MAX + 1]; | ||
| 32 | }; | ||
| 33 | |||
| 34 | #define BTRFS_DEVICE_PATH_NAME_MAX 1024 | ||
| 35 | |||
| 36 | #define BTRFS_SUBVOL_CREATE_ASYNC (1ULL << 0) | ||
| 37 | #define BTRFS_SUBVOL_RDONLY (1ULL << 1) | ||
| 38 | #define BTRFS_SUBVOL_QGROUP_INHERIT (1ULL << 2) | ||
| 39 | #define BTRFS_FSID_SIZE 16 | ||
| 40 | #define BTRFS_UUID_SIZE 16 | ||
| 41 | |||
| 42 | #define BTRFS_QGROUP_INHERIT_SET_LIMITS (1ULL << 0) | ||
| 43 | |||
| 44 | struct btrfs_qgroup_limit { | ||
| 45 | __u64 flags; | ||
| 46 | __u64 max_rfer; | ||
| 47 | __u64 max_excl; | ||
| 48 | __u64 rsv_rfer; | ||
| 49 | __u64 rsv_excl; | ||
| 50 | }; | ||
| 51 | |||
| 52 | struct btrfs_qgroup_inherit { | ||
| 53 | __u64 flags; | ||
| 54 | __u64 num_qgroups; | ||
| 55 | __u64 num_ref_copies; | ||
| 56 | __u64 num_excl_copies; | ||
| 57 | struct btrfs_qgroup_limit lim; | ||
| 58 | __u64 qgroups[0]; | ||
| 59 | }; | ||
| 60 | |||
| 61 | struct btrfs_ioctl_qgroup_limit_args { | ||
| 62 | __u64 qgroupid; | ||
| 63 | struct btrfs_qgroup_limit lim; | ||
| 64 | }; | ||
| 65 | |||
| 66 | #define BTRFS_SUBVOL_NAME_MAX 4039 | ||
| 67 | struct btrfs_ioctl_vol_args_v2 { | ||
| 68 | __s64 fd; | ||
| 69 | __u64 transid; | ||
| 70 | __u64 flags; | ||
| 71 | union { | ||
| 72 | struct { | ||
| 73 | __u64 size; | ||
| 74 | struct btrfs_qgroup_inherit __user *qgroup_inherit; | ||
| 75 | }; | ||
| 76 | __u64 unused[4]; | ||
| 77 | }; | ||
| 78 | char name[BTRFS_SUBVOL_NAME_MAX + 1]; | ||
| 79 | }; | ||
| 80 | |||
| 81 | /* | ||
| 82 | * structure to report errors and progress to userspace, either as a | ||
| 83 | * result of a finished scrub, a canceled scrub or a progress inquiry | ||
| 84 | */ | ||
| 85 | struct btrfs_scrub_progress { | ||
| 86 | __u64 data_extents_scrubbed; /* # of data extents scrubbed */ | ||
| 87 | __u64 tree_extents_scrubbed; /* # of tree extents scrubbed */ | ||
| 88 | __u64 data_bytes_scrubbed; /* # of data bytes scrubbed */ | ||
| 89 | __u64 tree_bytes_scrubbed; /* # of tree bytes scrubbed */ | ||
| 90 | __u64 read_errors; /* # of read errors encountered (EIO) */ | ||
| 91 | __u64 csum_errors; /* # of failed csum checks */ | ||
| 92 | __u64 verify_errors; /* # of occurences, where the metadata | ||
| 93 | * of a tree block did not match the | ||
| 94 | * expected values, like generation or | ||
| 95 | * logical */ | ||
| 96 | __u64 no_csum; /* # of 4k data block for which no csum | ||
| 97 | * is present, probably the result of | ||
| 98 | * data written with nodatasum */ | ||
| 99 | __u64 csum_discards; /* # of csum for which no data was found | ||
| 100 | * in the extent tree. */ | ||
| 101 | __u64 super_errors; /* # of bad super blocks encountered */ | ||
| 102 | __u64 malloc_errors; /* # of internal kmalloc errors. These | ||
| 103 | * will likely cause an incomplete | ||
| 104 | * scrub */ | ||
| 105 | __u64 uncorrectable_errors; /* # of errors where either no intact | ||
| 106 | * copy was found or the writeback | ||
| 107 | * failed */ | ||
| 108 | __u64 corrected_errors; /* # of errors corrected */ | ||
| 109 | __u64 last_physical; /* last physical address scrubbed. In | ||
| 110 | * case a scrub was aborted, this can | ||
| 111 | * be used to restart the scrub */ | ||
| 112 | __u64 unverified_errors; /* # of occurences where a read for a | ||
| 113 | * full (64k) bio failed, but the re- | ||
| 114 | * check succeeded for each 4k piece. | ||
| 115 | * Intermittent error. */ | ||
| 116 | }; | ||
| 117 | |||
| 118 | #define BTRFS_SCRUB_READONLY 1 | ||
| 119 | struct btrfs_ioctl_scrub_args { | ||
| 120 | __u64 devid; /* in */ | ||
| 121 | __u64 start; /* in */ | ||
| 122 | __u64 end; /* in */ | ||
| 123 | __u64 flags; /* in */ | ||
| 124 | struct btrfs_scrub_progress progress; /* out */ | ||
| 125 | /* pad to 1k */ | ||
| 126 | __u64 unused[(1024-32-sizeof(struct btrfs_scrub_progress))/8]; | ||
| 127 | }; | ||
| 128 | |||
| 129 | #define BTRFS_IOCTL_DEV_REPLACE_CONT_READING_FROM_SRCDEV_MODE_ALWAYS 0 | ||
| 130 | #define BTRFS_IOCTL_DEV_REPLACE_CONT_READING_FROM_SRCDEV_MODE_AVOID 1 | ||
| 131 | struct btrfs_ioctl_dev_replace_start_params { | ||
| 132 | __u64 srcdevid; /* in, if 0, use srcdev_name instead */ | ||
| 133 | __u64 cont_reading_from_srcdev_mode; /* in, see #define | ||
| 134 | * above */ | ||
| 135 | __u8 srcdev_name[BTRFS_DEVICE_PATH_NAME_MAX + 1]; /* in */ | ||
| 136 | __u8 tgtdev_name[BTRFS_DEVICE_PATH_NAME_MAX + 1]; /* in */ | ||
| 137 | }; | ||
| 138 | |||
| 139 | #define BTRFS_IOCTL_DEV_REPLACE_STATE_NEVER_STARTED 0 | ||
| 140 | #define BTRFS_IOCTL_DEV_REPLACE_STATE_STARTED 1 | ||
| 141 | #define BTRFS_IOCTL_DEV_REPLACE_STATE_FINISHED 2 | ||
| 142 | #define BTRFS_IOCTL_DEV_REPLACE_STATE_CANCELED 3 | ||
| 143 | #define BTRFS_IOCTL_DEV_REPLACE_STATE_SUSPENDED 4 | ||
| 144 | struct btrfs_ioctl_dev_replace_status_params { | ||
| 145 | __u64 replace_state; /* out, see #define above */ | ||
| 146 | __u64 progress_1000; /* out, 0 <= x <= 1000 */ | ||
| 147 | __u64 time_started; /* out, seconds since 1-Jan-1970 */ | ||
| 148 | __u64 time_stopped; /* out, seconds since 1-Jan-1970 */ | ||
| 149 | __u64 num_write_errors; /* out */ | ||
| 150 | __u64 num_uncorrectable_read_errors; /* out */ | ||
| 151 | }; | ||
| 152 | |||
| 153 | #define BTRFS_IOCTL_DEV_REPLACE_CMD_START 0 | ||
| 154 | #define BTRFS_IOCTL_DEV_REPLACE_CMD_STATUS 1 | ||
| 155 | #define BTRFS_IOCTL_DEV_REPLACE_CMD_CANCEL 2 | ||
| 156 | #define BTRFS_IOCTL_DEV_REPLACE_RESULT_NO_ERROR 0 | ||
| 157 | #define BTRFS_IOCTL_DEV_REPLACE_RESULT_NOT_STARTED 1 | ||
| 158 | #define BTRFS_IOCTL_DEV_REPLACE_RESULT_ALREADY_STARTED 2 | ||
| 159 | struct btrfs_ioctl_dev_replace_args { | ||
| 160 | __u64 cmd; /* in */ | ||
| 161 | __u64 result; /* out */ | ||
| 162 | |||
| 163 | union { | ||
| 164 | struct btrfs_ioctl_dev_replace_start_params start; | ||
| 165 | struct btrfs_ioctl_dev_replace_status_params status; | ||
| 166 | }; /* in/out */ | ||
| 167 | |||
| 168 | __u64 spare[64]; | ||
| 169 | }; | ||
| 170 | |||
| 171 | struct btrfs_ioctl_dev_info_args { | ||
| 172 | __u64 devid; /* in/out */ | ||
| 173 | __u8 uuid[BTRFS_UUID_SIZE]; /* in/out */ | ||
| 174 | __u64 bytes_used; /* out */ | ||
| 175 | __u64 total_bytes; /* out */ | ||
| 176 | __u64 unused[379]; /* pad to 4k */ | ||
| 177 | __u8 path[BTRFS_DEVICE_PATH_NAME_MAX]; /* out */ | ||
| 178 | }; | ||
| 179 | |||
| 180 | struct btrfs_ioctl_fs_info_args { | ||
| 181 | __u64 max_id; /* out */ | ||
| 182 | __u64 num_devices; /* out */ | ||
| 183 | __u8 fsid[BTRFS_FSID_SIZE]; /* out */ | ||
| 184 | __u64 reserved[124]; /* pad to 1k */ | ||
| 185 | }; | ||
| 186 | |||
| 187 | /* balance control ioctl modes */ | ||
| 188 | #define BTRFS_BALANCE_CTL_PAUSE 1 | ||
| 189 | #define BTRFS_BALANCE_CTL_CANCEL 2 | ||
| 190 | |||
| 191 | /* | ||
| 192 | * this is packed, because it should be exactly the same as its disk | ||
| 193 | * byte order counterpart (struct btrfs_disk_balance_args) | ||
| 194 | */ | ||
| 195 | struct btrfs_balance_args { | ||
| 196 | __u64 profiles; | ||
| 197 | __u64 usage; | ||
| 198 | __u64 devid; | ||
| 199 | __u64 pstart; | ||
| 200 | __u64 pend; | ||
| 201 | __u64 vstart; | ||
| 202 | __u64 vend; | ||
| 203 | |||
| 204 | __u64 target; | ||
| 205 | |||
| 206 | __u64 flags; | ||
| 207 | |||
| 208 | __u64 unused[8]; | ||
| 209 | } __attribute__ ((__packed__)); | ||
| 210 | |||
| 211 | /* report balance progress to userspace */ | ||
| 212 | struct btrfs_balance_progress { | ||
| 213 | __u64 expected; /* estimated # of chunks that will be | ||
| 214 | * relocated to fulfill the request */ | ||
| 215 | __u64 considered; /* # of chunks we have considered so far */ | ||
| 216 | __u64 completed; /* # of chunks relocated so far */ | ||
| 217 | }; | ||
| 218 | |||
| 219 | #define BTRFS_BALANCE_STATE_RUNNING (1ULL << 0) | ||
| 220 | #define BTRFS_BALANCE_STATE_PAUSE_REQ (1ULL << 1) | ||
| 221 | #define BTRFS_BALANCE_STATE_CANCEL_REQ (1ULL << 2) | ||
| 222 | |||
| 223 | struct btrfs_ioctl_balance_args { | ||
| 224 | __u64 flags; /* in/out */ | ||
| 225 | __u64 state; /* out */ | ||
| 226 | |||
| 227 | struct btrfs_balance_args data; /* in/out */ | ||
| 228 | struct btrfs_balance_args meta; /* in/out */ | ||
| 229 | struct btrfs_balance_args sys; /* in/out */ | ||
| 230 | |||
| 231 | struct btrfs_balance_progress stat; /* out */ | ||
| 232 | |||
| 233 | __u64 unused[72]; /* pad to 1k */ | ||
| 234 | }; | ||
| 235 | |||
| 236 | #define BTRFS_INO_LOOKUP_PATH_MAX 4080 | ||
| 237 | struct btrfs_ioctl_ino_lookup_args { | ||
| 238 | __u64 treeid; | ||
| 239 | __u64 objectid; | ||
| 240 | char name[BTRFS_INO_LOOKUP_PATH_MAX]; | ||
| 241 | }; | ||
| 242 | |||
| 243 | struct btrfs_ioctl_search_key { | ||
| 244 | /* which root are we searching. 0 is the tree of tree roots */ | ||
| 245 | __u64 tree_id; | ||
| 246 | |||
| 247 | /* keys returned will be >= min and <= max */ | ||
| 248 | __u64 min_objectid; | ||
| 249 | __u64 max_objectid; | ||
| 250 | |||
| 251 | /* keys returned will be >= min and <= max */ | ||
| 252 | __u64 min_offset; | ||
| 253 | __u64 max_offset; | ||
| 254 | |||
| 255 | /* max and min transids to search for */ | ||
| 256 | __u64 min_transid; | ||
| 257 | __u64 max_transid; | ||
| 258 | |||
| 259 | /* keys returned will be >= min and <= max */ | ||
| 260 | __u32 min_type; | ||
| 261 | __u32 max_type; | ||
| 262 | |||
| 263 | /* | ||
| 264 | * how many items did userland ask for, and how many are we | ||
| 265 | * returning | ||
| 266 | */ | ||
| 267 | __u32 nr_items; | ||
| 268 | |||
| 269 | /* align to 64 bits */ | ||
| 270 | __u32 unused; | ||
| 271 | |||
| 272 | /* some extra for later */ | ||
| 273 | __u64 unused1; | ||
| 274 | __u64 unused2; | ||
| 275 | __u64 unused3; | ||
| 276 | __u64 unused4; | ||
| 277 | }; | ||
| 278 | |||
| 279 | struct btrfs_ioctl_search_header { | ||
| 280 | __u64 transid; | ||
| 281 | __u64 objectid; | ||
| 282 | __u64 offset; | ||
| 283 | __u32 type; | ||
| 284 | __u32 len; | ||
| 285 | }; | ||
| 286 | |||
| 287 | #define BTRFS_SEARCH_ARGS_BUFSIZE (4096 - sizeof(struct btrfs_ioctl_search_key)) | ||
| 288 | /* | ||
| 289 | * the buf is an array of search headers where | ||
| 290 | * each header is followed by the actual item | ||
| 291 | * the type field is expanded to 32 bits for alignment | ||
| 292 | */ | ||
| 293 | struct btrfs_ioctl_search_args { | ||
| 294 | struct btrfs_ioctl_search_key key; | ||
| 295 | char buf[BTRFS_SEARCH_ARGS_BUFSIZE]; | ||
| 296 | }; | ||
| 297 | |||
| 298 | struct btrfs_ioctl_clone_range_args { | ||
| 299 | __s64 src_fd; | ||
| 300 | __u64 src_offset, src_length; | ||
| 301 | __u64 dest_offset; | ||
| 302 | }; | ||
| 303 | |||
| 304 | /* flags for the defrag range ioctl */ | ||
| 305 | #define BTRFS_DEFRAG_RANGE_COMPRESS 1 | ||
| 306 | #define BTRFS_DEFRAG_RANGE_START_IO 2 | ||
| 307 | |||
| 308 | struct btrfs_ioctl_space_info { | ||
| 309 | __u64 flags; | ||
| 310 | __u64 total_bytes; | ||
| 311 | __u64 used_bytes; | ||
| 312 | }; | ||
| 313 | |||
| 314 | struct btrfs_ioctl_space_args { | ||
| 315 | __u64 space_slots; | ||
| 316 | __u64 total_spaces; | ||
| 317 | struct btrfs_ioctl_space_info spaces[0]; | ||
| 318 | }; | ||
| 319 | |||
| 320 | struct btrfs_data_container { | ||
| 321 | __u32 bytes_left; /* out -- bytes not needed to deliver output */ | ||
| 322 | __u32 bytes_missing; /* out -- additional bytes needed for result */ | ||
| 323 | __u32 elem_cnt; /* out */ | ||
| 324 | __u32 elem_missed; /* out */ | ||
| 325 | __u64 val[0]; /* out */ | ||
| 326 | }; | ||
| 327 | |||
| 328 | struct btrfs_ioctl_ino_path_args { | ||
| 329 | __u64 inum; /* in */ | ||
| 330 | __u64 size; /* in */ | ||
| 331 | __u64 reserved[4]; | ||
| 332 | /* struct btrfs_data_container *fspath; out */ | ||
| 333 | __u64 fspath; /* out */ | ||
| 334 | }; | ||
| 335 | |||
| 336 | struct btrfs_ioctl_logical_ino_args { | ||
| 337 | __u64 logical; /* in */ | ||
| 338 | __u64 size; /* in */ | ||
| 339 | __u64 reserved[4]; | ||
| 340 | /* struct btrfs_data_container *inodes; out */ | ||
| 341 | __u64 inodes; | ||
| 342 | }; | ||
| 343 | |||
| 344 | enum btrfs_dev_stat_values { | ||
| 345 | /* disk I/O failure stats */ | ||
| 346 | BTRFS_DEV_STAT_WRITE_ERRS, /* EIO or EREMOTEIO from lower layers */ | ||
| 347 | BTRFS_DEV_STAT_READ_ERRS, /* EIO or EREMOTEIO from lower layers */ | ||
| 348 | BTRFS_DEV_STAT_FLUSH_ERRS, /* EIO or EREMOTEIO from lower layers */ | ||
| 349 | |||
| 350 | /* stats for indirect indications for I/O failures */ | ||
| 351 | BTRFS_DEV_STAT_CORRUPTION_ERRS, /* checksum error, bytenr error or | ||
| 352 | * contents is illegal: this is an | ||
| 353 | * indication that the block was damaged | ||
| 354 | * during read or write, or written to | ||
| 355 | * wrong location or read from wrong | ||
| 356 | * location */ | ||
| 357 | BTRFS_DEV_STAT_GENERATION_ERRS, /* an indication that blocks have not | ||
| 358 | * been written */ | ||
| 359 | |||
| 360 | BTRFS_DEV_STAT_VALUES_MAX | ||
| 361 | }; | ||
| 362 | |||
| 363 | /* Reset statistics after reading; needs SYS_ADMIN capability */ | ||
| 364 | #define BTRFS_DEV_STATS_RESET (1ULL << 0) | ||
| 365 | |||
| 366 | struct btrfs_ioctl_get_dev_stats { | ||
| 367 | __u64 devid; /* in */ | ||
| 368 | __u64 nr_items; /* in/out */ | ||
| 369 | __u64 flags; /* in/out */ | ||
| 370 | |||
| 371 | /* out values: */ | ||
| 372 | __u64 values[BTRFS_DEV_STAT_VALUES_MAX]; | ||
| 373 | |||
| 374 | __u64 unused[128 - 2 - BTRFS_DEV_STAT_VALUES_MAX]; /* pad to 1k */ | ||
| 375 | }; | ||
| 376 | |||
| 377 | #define BTRFS_QUOTA_CTL_ENABLE 1 | ||
| 378 | #define BTRFS_QUOTA_CTL_DISABLE 2 | ||
| 379 | #define BTRFS_QUOTA_CTL_RESCAN 3 | ||
| 380 | struct btrfs_ioctl_quota_ctl_args { | ||
| 381 | __u64 cmd; | ||
| 382 | __u64 status; | ||
| 383 | }; | ||
| 384 | |||
| 385 | struct btrfs_ioctl_qgroup_assign_args { | ||
| 386 | __u64 assign; | ||
| 387 | __u64 src; | ||
| 388 | __u64 dst; | ||
| 389 | }; | ||
| 390 | |||
| 391 | struct btrfs_ioctl_qgroup_create_args { | ||
| 392 | __u64 create; | ||
| 393 | __u64 qgroupid; | ||
| 394 | }; | ||
| 395 | struct btrfs_ioctl_timespec { | ||
| 396 | __u64 sec; | ||
| 397 | __u32 nsec; | ||
| 398 | }; | ||
| 399 | |||
| 400 | struct btrfs_ioctl_received_subvol_args { | ||
| 401 | char uuid[BTRFS_UUID_SIZE]; /* in */ | ||
| 402 | __u64 stransid; /* in */ | ||
| 403 | __u64 rtransid; /* out */ | ||
| 404 | struct btrfs_ioctl_timespec stime; /* in */ | ||
| 405 | struct btrfs_ioctl_timespec rtime; /* out */ | ||
| 406 | __u64 flags; /* in */ | ||
| 407 | __u64 reserved[16]; /* in */ | ||
| 408 | }; | ||
| 409 | |||
| 410 | /* | ||
| 411 | * Caller doesn't want file data in the send stream, even if the | ||
| 412 | * search of clone sources doesn't find an extent. UPDATE_EXTENT | ||
| 413 | * commands will be sent instead of WRITE commands. | ||
| 414 | */ | ||
| 415 | #define BTRFS_SEND_FLAG_NO_FILE_DATA 0x1 | ||
| 416 | |||
| 417 | struct btrfs_ioctl_send_args { | ||
| 418 | __s64 send_fd; /* in */ | ||
| 419 | __u64 clone_sources_count; /* in */ | ||
| 420 | __u64 __user *clone_sources; /* in */ | ||
| 421 | __u64 parent_root; /* in */ | ||
| 422 | __u64 flags; /* in */ | ||
| 423 | __u64 reserved[4]; /* in */ | ||
| 424 | }; | ||
| 425 | |||
| 426 | #define BTRFS_IOC_SNAP_CREATE _IOW(BTRFS_IOCTL_MAGIC, 1, \ | ||
| 427 | struct btrfs_ioctl_vol_args) | ||
| 428 | #define BTRFS_IOC_DEFRAG _IOW(BTRFS_IOCTL_MAGIC, 2, \ | ||
| 429 | struct btrfs_ioctl_vol_args) | ||
| 430 | #define BTRFS_IOC_RESIZE _IOW(BTRFS_IOCTL_MAGIC, 3, \ | ||
| 431 | struct btrfs_ioctl_vol_args) | ||
| 432 | #define BTRFS_IOC_SCAN_DEV _IOW(BTRFS_IOCTL_MAGIC, 4, \ | ||
| 433 | struct btrfs_ioctl_vol_args) | ||
| 434 | /* trans start and trans end are dangerous, and only for | ||
| 435 | * use by applications that know how to avoid the | ||
| 436 | * resulting deadlocks | ||
| 437 | */ | ||
| 438 | #define BTRFS_IOC_TRANS_START _IO(BTRFS_IOCTL_MAGIC, 6) | ||
| 439 | #define BTRFS_IOC_TRANS_END _IO(BTRFS_IOCTL_MAGIC, 7) | ||
| 440 | #define BTRFS_IOC_SYNC _IO(BTRFS_IOCTL_MAGIC, 8) | ||
| 441 | |||
| 442 | #define BTRFS_IOC_CLONE _IOW(BTRFS_IOCTL_MAGIC, 9, int) | ||
| 443 | #define BTRFS_IOC_ADD_DEV _IOW(BTRFS_IOCTL_MAGIC, 10, \ | ||
| 444 | struct btrfs_ioctl_vol_args) | ||
| 445 | #define BTRFS_IOC_RM_DEV _IOW(BTRFS_IOCTL_MAGIC, 11, \ | ||
| 446 | struct btrfs_ioctl_vol_args) | ||
| 447 | #define BTRFS_IOC_BALANCE _IOW(BTRFS_IOCTL_MAGIC, 12, \ | ||
| 448 | struct btrfs_ioctl_vol_args) | ||
| 449 | |||
| 450 | #define BTRFS_IOC_CLONE_RANGE _IOW(BTRFS_IOCTL_MAGIC, 13, \ | ||
| 451 | struct btrfs_ioctl_clone_range_args) | ||
| 452 | |||
| 453 | #define BTRFS_IOC_SUBVOL_CREATE _IOW(BTRFS_IOCTL_MAGIC, 14, \ | ||
| 454 | struct btrfs_ioctl_vol_args) | ||
| 455 | #define BTRFS_IOC_SNAP_DESTROY _IOW(BTRFS_IOCTL_MAGIC, 15, \ | ||
| 456 | struct btrfs_ioctl_vol_args) | ||
| 457 | #define BTRFS_IOC_DEFRAG_RANGE _IOW(BTRFS_IOCTL_MAGIC, 16, \ | ||
| 458 | struct btrfs_ioctl_defrag_range_args) | ||
| 459 | #define BTRFS_IOC_TREE_SEARCH _IOWR(BTRFS_IOCTL_MAGIC, 17, \ | ||
| 460 | struct btrfs_ioctl_search_args) | ||
| 461 | #define BTRFS_IOC_INO_LOOKUP _IOWR(BTRFS_IOCTL_MAGIC, 18, \ | ||
| 462 | struct btrfs_ioctl_ino_lookup_args) | ||
| 463 | #define BTRFS_IOC_DEFAULT_SUBVOL _IOW(BTRFS_IOCTL_MAGIC, 19, u64) | ||
| 464 | #define BTRFS_IOC_SPACE_INFO _IOWR(BTRFS_IOCTL_MAGIC, 20, \ | ||
| 465 | struct btrfs_ioctl_space_args) | ||
| 466 | #define BTRFS_IOC_START_SYNC _IOR(BTRFS_IOCTL_MAGIC, 24, __u64) | ||
| 467 | #define BTRFS_IOC_WAIT_SYNC _IOW(BTRFS_IOCTL_MAGIC, 22, __u64) | ||
| 468 | #define BTRFS_IOC_SNAP_CREATE_V2 _IOW(BTRFS_IOCTL_MAGIC, 23, \ | ||
| 469 | struct btrfs_ioctl_vol_args_v2) | ||
| 470 | #define BTRFS_IOC_SUBVOL_CREATE_V2 _IOW(BTRFS_IOCTL_MAGIC, 24, \ | ||
| 471 | struct btrfs_ioctl_vol_args_v2) | ||
| 472 | #define BTRFS_IOC_SUBVOL_GETFLAGS _IOR(BTRFS_IOCTL_MAGIC, 25, __u64) | ||
| 473 | #define BTRFS_IOC_SUBVOL_SETFLAGS _IOW(BTRFS_IOCTL_MAGIC, 26, __u64) | ||
| 474 | #define BTRFS_IOC_SCRUB _IOWR(BTRFS_IOCTL_MAGIC, 27, \ | ||
| 475 | struct btrfs_ioctl_scrub_args) | ||
| 476 | #define BTRFS_IOC_SCRUB_CANCEL _IO(BTRFS_IOCTL_MAGIC, 28) | ||
| 477 | #define BTRFS_IOC_SCRUB_PROGRESS _IOWR(BTRFS_IOCTL_MAGIC, 29, \ | ||
| 478 | struct btrfs_ioctl_scrub_args) | ||
| 479 | #define BTRFS_IOC_DEV_INFO _IOWR(BTRFS_IOCTL_MAGIC, 30, \ | ||
| 480 | struct btrfs_ioctl_dev_info_args) | ||
| 481 | #define BTRFS_IOC_FS_INFO _IOR(BTRFS_IOCTL_MAGIC, 31, \ | ||
| 482 | struct btrfs_ioctl_fs_info_args) | ||
| 483 | #define BTRFS_IOC_BALANCE_V2 _IOWR(BTRFS_IOCTL_MAGIC, 32, \ | ||
| 484 | struct btrfs_ioctl_balance_args) | ||
| 485 | #define BTRFS_IOC_BALANCE_CTL _IOW(BTRFS_IOCTL_MAGIC, 33, int) | ||
| 486 | #define BTRFS_IOC_BALANCE_PROGRESS _IOR(BTRFS_IOCTL_MAGIC, 34, \ | ||
| 487 | struct btrfs_ioctl_balance_args) | ||
| 488 | #define BTRFS_IOC_INO_PATHS _IOWR(BTRFS_IOCTL_MAGIC, 35, \ | ||
| 489 | struct btrfs_ioctl_ino_path_args) | ||
| 490 | #define BTRFS_IOC_LOGICAL_INO _IOWR(BTRFS_IOCTL_MAGIC, 36, \ | ||
| 491 | struct btrfs_ioctl_ino_path_args) | ||
| 492 | #define BTRFS_IOC_SET_RECEIVED_SUBVOL _IOWR(BTRFS_IOCTL_MAGIC, 37, \ | ||
| 493 | struct btrfs_ioctl_received_subvol_args) | ||
| 494 | #define BTRFS_IOC_SEND _IOW(BTRFS_IOCTL_MAGIC, 38, struct btrfs_ioctl_send_args) | ||
| 495 | #define BTRFS_IOC_DEVICES_READY _IOR(BTRFS_IOCTL_MAGIC, 39, \ | ||
| 496 | struct btrfs_ioctl_vol_args) | ||
| 497 | #define BTRFS_IOC_QUOTA_CTL _IOWR(BTRFS_IOCTL_MAGIC, 40, \ | ||
| 498 | struct btrfs_ioctl_quota_ctl_args) | ||
| 499 | #define BTRFS_IOC_QGROUP_ASSIGN _IOW(BTRFS_IOCTL_MAGIC, 41, \ | ||
| 500 | struct btrfs_ioctl_qgroup_assign_args) | ||
| 501 | #define BTRFS_IOC_QGROUP_CREATE _IOW(BTRFS_IOCTL_MAGIC, 42, \ | ||
| 502 | struct btrfs_ioctl_qgroup_create_args) | ||
| 503 | #define BTRFS_IOC_QGROUP_LIMIT _IOR(BTRFS_IOCTL_MAGIC, 43, \ | ||
| 504 | struct btrfs_ioctl_qgroup_limit_args) | ||
| 505 | #define BTRFS_IOC_GET_FSLABEL _IOR(BTRFS_IOCTL_MAGIC, 49, \ | ||
| 506 | char[BTRFS_LABEL_SIZE]) | ||
| 507 | #define BTRFS_IOC_SET_FSLABEL _IOW(BTRFS_IOCTL_MAGIC, 50, \ | ||
| 508 | char[BTRFS_LABEL_SIZE]) | ||
| 509 | #define BTRFS_IOC_GET_DEV_STATS _IOWR(BTRFS_IOCTL_MAGIC, 52, \ | ||
| 510 | struct btrfs_ioctl_get_dev_stats) | ||
| 511 | #define BTRFS_IOC_DEV_REPLACE _IOWR(BTRFS_IOCTL_MAGIC, 53, \ | ||
| 512 | struct btrfs_ioctl_dev_replace_args) | ||
| 513 | |||
| 514 | #endif /* _UAPI_LINUX_BTRFS_H */ | ||
diff --git a/include/uapi/linux/cdrom.h b/include/uapi/linux/cdrom.h index 898b866b300c..bd17ad5aa06d 100644 --- a/include/uapi/linux/cdrom.h +++ b/include/uapi/linux/cdrom.h | |||
| @@ -908,5 +908,39 @@ struct mode_page_header { | |||
| 908 | __be16 desc_length; | 908 | __be16 desc_length; |
| 909 | }; | 909 | }; |
| 910 | 910 | ||
| 911 | /* removable medium feature descriptor */ | ||
| 912 | struct rm_feature_desc { | ||
| 913 | __be16 feature_code; | ||
| 914 | #if defined(__BIG_ENDIAN_BITFIELD) | ||
| 915 | __u8 reserved1:2; | ||
| 916 | __u8 feature_version:4; | ||
| 917 | __u8 persistent:1; | ||
| 918 | __u8 curr:1; | ||
| 919 | #elif defined(__LITTLE_ENDIAN_BITFIELD) | ||
| 920 | __u8 curr:1; | ||
| 921 | __u8 persistent:1; | ||
| 922 | __u8 feature_version:4; | ||
| 923 | __u8 reserved1:2; | ||
| 924 | #endif | ||
| 925 | __u8 add_len; | ||
| 926 | #if defined(__BIG_ENDIAN_BITFIELD) | ||
| 927 | __u8 mech_type:3; | ||
| 928 | __u8 load:1; | ||
| 929 | __u8 eject:1; | ||
| 930 | __u8 pvnt_jmpr:1; | ||
| 931 | __u8 dbml:1; | ||
| 932 | __u8 lock:1; | ||
| 933 | #elif defined(__LITTLE_ENDIAN_BITFIELD) | ||
| 934 | __u8 lock:1; | ||
| 935 | __u8 dbml:1; | ||
| 936 | __u8 pvnt_jmpr:1; | ||
| 937 | __u8 eject:1; | ||
| 938 | __u8 load:1; | ||
| 939 | __u8 mech_type:3; | ||
| 940 | #endif | ||
| 941 | __u8 reserved2; | ||
| 942 | __u8 reserved3; | ||
| 943 | __u8 reserved4; | ||
| 944 | }; | ||
| 911 | 945 | ||
| 912 | #endif /* _UAPI_LINUX_CDROM_H */ | 946 | #endif /* _UAPI_LINUX_CDROM_H */ |
diff --git a/include/uapi/linux/dm-ioctl.h b/include/uapi/linux/dm-ioctl.h index 539b179b349c..7e75b6fd8d45 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 23 | 270 | #define DM_VERSION_MINOR 24 |
| 271 | #define DM_VERSION_PATCHLEVEL 1 | 271 | #define DM_VERSION_PATCHLEVEL 0 |
| 272 | #define DM_VERSION_EXTRA "-ioctl (2012-12-18)" | 272 | #define DM_VERSION_EXTRA "-ioctl (2013-01-15)" |
| 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 */ |
| @@ -336,4 +336,9 @@ enum { | |||
| 336 | */ | 336 | */ |
| 337 | #define DM_SECURE_DATA_FLAG (1 << 15) /* In */ | 337 | #define DM_SECURE_DATA_FLAG (1 << 15) /* In */ |
| 338 | 338 | ||
| 339 | /* | ||
| 340 | * If set, a message generated output data. | ||
| 341 | */ | ||
| 342 | #define DM_DATA_OUT_FLAG (1 << 16) /* Out */ | ||
| 343 | |||
| 339 | #endif /* _LINUX_DM_IOCTL_H */ | 344 | #endif /* _LINUX_DM_IOCTL_H */ |
diff --git a/include/uapi/linux/dvb/frontend.h b/include/uapi/linux/dvb/frontend.h index c12d452cb40d..c56d77c496a5 100644 --- a/include/uapi/linux/dvb/frontend.h +++ b/include/uapi/linux/dvb/frontend.h | |||
| @@ -365,7 +365,17 @@ struct dvb_frontend_event { | |||
| 365 | #define DTV_INTERLEAVING 60 | 365 | #define DTV_INTERLEAVING 60 |
| 366 | #define DTV_LNA 61 | 366 | #define DTV_LNA 61 |
| 367 | 367 | ||
| 368 | #define DTV_MAX_COMMAND DTV_LNA | 368 | /* Quality parameters */ |
| 369 | #define DTV_STAT_SIGNAL_STRENGTH 62 | ||
| 370 | #define DTV_STAT_CNR 63 | ||
| 371 | #define DTV_STAT_PRE_ERROR_BIT_COUNT 64 | ||
| 372 | #define DTV_STAT_PRE_TOTAL_BIT_COUNT 65 | ||
| 373 | #define DTV_STAT_POST_ERROR_BIT_COUNT 66 | ||
| 374 | #define DTV_STAT_POST_TOTAL_BIT_COUNT 67 | ||
| 375 | #define DTV_STAT_ERROR_BLOCK_COUNT 68 | ||
| 376 | #define DTV_STAT_TOTAL_BLOCK_COUNT 69 | ||
| 377 | |||
| 378 | #define DTV_MAX_COMMAND DTV_STAT_TOTAL_BLOCK_COUNT | ||
| 369 | 379 | ||
| 370 | typedef enum fe_pilot { | 380 | typedef enum fe_pilot { |
| 371 | PILOT_ON, | 381 | PILOT_ON, |
| @@ -452,11 +462,78 @@ struct dtv_cmds_h { | |||
| 452 | __u32 reserved:30; /* Align */ | 462 | __u32 reserved:30; /* Align */ |
| 453 | }; | 463 | }; |
| 454 | 464 | ||
| 465 | /** | ||
| 466 | * Scale types for the quality parameters. | ||
| 467 | * @FE_SCALE_NOT_AVAILABLE: That QoS measure is not available. That | ||
| 468 | * could indicate a temporary or a permanent | ||
| 469 | * condition. | ||
| 470 | * @FE_SCALE_DECIBEL: The scale is measured in 0.0001 dB steps, typically | ||
| 471 | * used on signal measures. | ||
| 472 | * @FE_SCALE_RELATIVE: The scale is a relative percentual measure, | ||
| 473 | * ranging from 0 (0%) to 0xffff (100%). | ||
| 474 | * @FE_SCALE_COUNTER: The scale counts the occurrence of an event, like | ||
| 475 | * bit error, block error, lapsed time. | ||
| 476 | */ | ||
| 477 | enum fecap_scale_params { | ||
| 478 | FE_SCALE_NOT_AVAILABLE = 0, | ||
| 479 | FE_SCALE_DECIBEL, | ||
| 480 | FE_SCALE_RELATIVE, | ||
| 481 | FE_SCALE_COUNTER | ||
| 482 | }; | ||
| 483 | |||
| 484 | /** | ||
| 485 | * struct dtv_stats - Used for reading a DTV status property | ||
| 486 | * | ||
| 487 | * @value: value of the measure. Should range from 0 to 0xffff; | ||
| 488 | * @scale: Filled with enum fecap_scale_params - the scale | ||
| 489 | * in usage for that parameter | ||
| 490 | * | ||
| 491 | * For most delivery systems, this will return a single value for each | ||
| 492 | * parameter. | ||
| 493 | * It should be noticed, however, that new OFDM delivery systems like | ||
| 494 | * ISDB can use different modulation types for each group of carriers. | ||
| 495 | * On such standards, up to 8 groups of statistics can be provided, one | ||
| 496 | * for each carrier group (called "layer" on ISDB). | ||
| 497 | * In order to be consistent with other delivery systems, the first | ||
| 498 | * value refers to the entire set of carriers ("global"). | ||
| 499 | * dtv_status:scale should use the value FE_SCALE_NOT_AVAILABLE when | ||
| 500 | * the value for the entire group of carriers or from one specific layer | ||
| 501 | * is not provided by the hardware. | ||
| 502 | * st.len should be filled with the latest filled status + 1. | ||
| 503 | * | ||
| 504 | * In other words, for ISDB, those values should be filled like: | ||
| 505 | * u.st.stat.svalue[0] = global statistics; | ||
| 506 | * u.st.stat.scale[0] = FE_SCALE_DECIBELS; | ||
| 507 | * u.st.stat.value[1] = layer A statistics; | ||
| 508 | * u.st.stat.scale[1] = FE_SCALE_NOT_AVAILABLE (if not available); | ||
| 509 | * u.st.stat.svalue[2] = layer B statistics; | ||
| 510 | * u.st.stat.scale[2] = FE_SCALE_DECIBELS; | ||
| 511 | * u.st.stat.svalue[3] = layer C statistics; | ||
| 512 | * u.st.stat.scale[3] = FE_SCALE_DECIBELS; | ||
| 513 | * u.st.len = 4; | ||
| 514 | */ | ||
| 515 | struct dtv_stats { | ||
| 516 | __u8 scale; /* enum fecap_scale_params type */ | ||
| 517 | union { | ||
| 518 | __u64 uvalue; /* for counters and relative scales */ | ||
| 519 | __s64 svalue; /* for 0.0001 dB measures */ | ||
| 520 | }; | ||
| 521 | } __attribute__ ((packed)); | ||
| 522 | |||
| 523 | |||
| 524 | #define MAX_DTV_STATS 4 | ||
| 525 | |||
| 526 | struct dtv_fe_stats { | ||
| 527 | __u8 len; | ||
| 528 | struct dtv_stats stat[MAX_DTV_STATS]; | ||
| 529 | } __attribute__ ((packed)); | ||
| 530 | |||
| 455 | struct dtv_property { | 531 | struct dtv_property { |
| 456 | __u32 cmd; | 532 | __u32 cmd; |
| 457 | __u32 reserved[3]; | 533 | __u32 reserved[3]; |
| 458 | union { | 534 | union { |
| 459 | __u32 data; | 535 | __u32 data; |
| 536 | struct dtv_fe_stats st; | ||
| 460 | struct { | 537 | struct { |
| 461 | __u8 data[32]; | 538 | __u8 data[32]; |
| 462 | __u32 len; | 539 | __u32 len; |
diff --git a/include/uapi/linux/dvb/version.h b/include/uapi/linux/dvb/version.h index 827cce7e33e3..e53e2ad4444f 100644 --- a/include/uapi/linux/dvb/version.h +++ b/include/uapi/linux/dvb/version.h | |||
| @@ -24,6 +24,6 @@ | |||
| 24 | #define _DVBVERSION_H_ | 24 | #define _DVBVERSION_H_ |
| 25 | 25 | ||
| 26 | #define DVB_API_VERSION 5 | 26 | #define DVB_API_VERSION 5 |
| 27 | #define DVB_API_VERSION_MINOR 9 | 27 | #define DVB_API_VERSION_MINOR 10 |
| 28 | 28 | ||
| 29 | #endif /*_DVBVERSION_H_*/ | 29 | #endif /*_DVBVERSION_H_*/ |
diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h index 900b9484445b..8072d352b98f 100644 --- a/include/uapi/linux/elf.h +++ b/include/uapi/linux/elf.h | |||
| @@ -395,6 +395,8 @@ typedef struct elf64_shdr { | |||
| 395 | #define NT_ARM_TLS 0x401 /* ARM TLS register */ | 395 | #define NT_ARM_TLS 0x401 /* ARM TLS register */ |
| 396 | #define NT_ARM_HW_BREAK 0x402 /* ARM hardware breakpoint registers */ | 396 | #define NT_ARM_HW_BREAK 0x402 /* ARM hardware breakpoint registers */ |
| 397 | #define NT_ARM_HW_WATCH 0x403 /* ARM hardware watchpoint registers */ | 397 | #define NT_ARM_HW_WATCH 0x403 /* ARM hardware watchpoint registers */ |
| 398 | #define NT_METAG_CBUF 0x500 /* Metag catch buffer registers */ | ||
| 399 | #define NT_METAG_RPIPE 0x501 /* Metag read pipeline state */ | ||
| 398 | 400 | ||
| 399 | 401 | ||
| 400 | /* Note header in a PT_NOTE section */ | 402 | /* Note header in a PT_NOTE section */ |
diff --git a/include/uapi/linux/ipmi.h b/include/uapi/linux/ipmi.h index 33fbc99b3812..7b26a62e5707 100644 --- a/include/uapi/linux/ipmi.h +++ b/include/uapi/linux/ipmi.h | |||
| @@ -59,15 +59,7 @@ | |||
| 59 | * if it becomes full and it is queried once a second to see if | 59 | * if it becomes full and it is queried once a second to see if |
| 60 | * anything is in it. Incoming commands to the driver will get | 60 | * anything is in it. Incoming commands to the driver will get |
| 61 | * delivered as commands. | 61 | * delivered as commands. |
| 62 | * | 62 | */ |
| 63 | * This driver provides two main interfaces: one for in-kernel | ||
| 64 | * applications and another for userland applications. The | ||
| 65 | * capabilities are basically the same for both interface, although | ||
| 66 | * the interfaces are somewhat different. The stuff in the | ||
| 67 | * #ifdef __KERNEL__ below is the in-kernel interface. The userland | ||
| 68 | * interface is defined later in the file. */ | ||
| 69 | |||
| 70 | |||
| 71 | 63 | ||
| 72 | /* | 64 | /* |
| 73 | * This is an overlay for all the address types, so it's easy to | 65 | * This is an overlay for all the address types, so it's easy to |
diff --git a/include/uapi/linux/kvm.h b/include/uapi/linux/kvm.h index c70577cf67bc..3c56ba3d80c1 100644 --- a/include/uapi/linux/kvm.h +++ b/include/uapi/linux/kvm.h | |||
| @@ -169,6 +169,8 @@ struct kvm_pit_config { | |||
| 169 | #define KVM_EXIT_PAPR_HCALL 19 | 169 | #define KVM_EXIT_PAPR_HCALL 19 |
| 170 | #define KVM_EXIT_S390_UCONTROL 20 | 170 | #define KVM_EXIT_S390_UCONTROL 20 |
| 171 | #define KVM_EXIT_WATCHDOG 21 | 171 | #define KVM_EXIT_WATCHDOG 21 |
| 172 | #define KVM_EXIT_S390_TSCH 22 | ||
| 173 | #define KVM_EXIT_EPR 23 | ||
| 172 | 174 | ||
| 173 | /* For KVM_EXIT_INTERNAL_ERROR */ | 175 | /* For KVM_EXIT_INTERNAL_ERROR */ |
| 174 | /* Emulate instruction failed. */ | 176 | /* Emulate instruction failed. */ |
| @@ -286,6 +288,19 @@ struct kvm_run { | |||
| 286 | __u64 ret; | 288 | __u64 ret; |
| 287 | __u64 args[9]; | 289 | __u64 args[9]; |
| 288 | } papr_hcall; | 290 | } papr_hcall; |
| 291 | /* KVM_EXIT_S390_TSCH */ | ||
| 292 | struct { | ||
| 293 | __u16 subchannel_id; | ||
| 294 | __u16 subchannel_nr; | ||
| 295 | __u32 io_int_parm; | ||
| 296 | __u32 io_int_word; | ||
| 297 | __u32 ipb; | ||
| 298 | __u8 dequeued; | ||
| 299 | } s390_tsch; | ||
| 300 | /* KVM_EXIT_EPR */ | ||
| 301 | struct { | ||
| 302 | __u32 epr; | ||
| 303 | } epr; | ||
| 289 | /* Fix the size of the union. */ | 304 | /* Fix the size of the union. */ |
| 290 | char padding[256]; | 305 | char padding[256]; |
| 291 | }; | 306 | }; |
| @@ -398,10 +413,20 @@ struct kvm_s390_psw { | |||
| 398 | #define KVM_S390_PROGRAM_INT 0xfffe0001u | 413 | #define KVM_S390_PROGRAM_INT 0xfffe0001u |
| 399 | #define KVM_S390_SIGP_SET_PREFIX 0xfffe0002u | 414 | #define KVM_S390_SIGP_SET_PREFIX 0xfffe0002u |
| 400 | #define KVM_S390_RESTART 0xfffe0003u | 415 | #define KVM_S390_RESTART 0xfffe0003u |
| 416 | #define KVM_S390_MCHK 0xfffe1000u | ||
| 401 | #define KVM_S390_INT_VIRTIO 0xffff2603u | 417 | #define KVM_S390_INT_VIRTIO 0xffff2603u |
| 402 | #define KVM_S390_INT_SERVICE 0xffff2401u | 418 | #define KVM_S390_INT_SERVICE 0xffff2401u |
| 403 | #define KVM_S390_INT_EMERGENCY 0xffff1201u | 419 | #define KVM_S390_INT_EMERGENCY 0xffff1201u |
| 404 | #define KVM_S390_INT_EXTERNAL_CALL 0xffff1202u | 420 | #define KVM_S390_INT_EXTERNAL_CALL 0xffff1202u |
| 421 | /* Anything below 0xfffe0000u is taken by INT_IO */ | ||
| 422 | #define KVM_S390_INT_IO(ai,cssid,ssid,schid) \ | ||
| 423 | (((schid)) | \ | ||
| 424 | ((ssid) << 16) | \ | ||
| 425 | ((cssid) << 18) | \ | ||
| 426 | ((ai) << 26)) | ||
| 427 | #define KVM_S390_INT_IO_MIN 0x00000000u | ||
| 428 | #define KVM_S390_INT_IO_MAX 0xfffdffffu | ||
| 429 | |||
| 405 | 430 | ||
| 406 | struct kvm_s390_interrupt { | 431 | struct kvm_s390_interrupt { |
| 407 | __u32 type; | 432 | __u32 type; |
| @@ -636,6 +661,8 @@ struct kvm_ppc_smmu_info { | |||
| 636 | #define KVM_CAP_IRQFD_RESAMPLE 82 | 661 | #define KVM_CAP_IRQFD_RESAMPLE 82 |
| 637 | #define KVM_CAP_PPC_BOOKE_WATCHDOG 83 | 662 | #define KVM_CAP_PPC_BOOKE_WATCHDOG 83 |
| 638 | #define KVM_CAP_PPC_HTAB_FD 84 | 663 | #define KVM_CAP_PPC_HTAB_FD 84 |
| 664 | #define KVM_CAP_S390_CSS_SUPPORT 85 | ||
| 665 | #define KVM_CAP_PPC_EPR 86 | ||
| 639 | #define KVM_CAP_ARM_PSCI 87 | 666 | #define KVM_CAP_ARM_PSCI 87 |
| 640 | #define KVM_CAP_ARM_SET_DEVICE_ADDR 88 | 667 | #define KVM_CAP_ARM_SET_DEVICE_ADDR 88 |
| 641 | 668 | ||
diff --git a/include/uapi/linux/meye.h b/include/uapi/linux/meye.h index 0dd49954f746..8ff50fe9e481 100644 --- a/include/uapi/linux/meye.h +++ b/include/uapi/linux/meye.h | |||
| @@ -57,10 +57,8 @@ struct meye_params { | |||
| 57 | #define MEYEIOC_STILLJCAPT _IOR ('v', BASE_VIDIOC_PRIVATE+5, int) | 57 | #define MEYEIOC_STILLJCAPT _IOR ('v', BASE_VIDIOC_PRIVATE+5, int) |
| 58 | 58 | ||
| 59 | /* V4L2 private controls */ | 59 | /* V4L2 private controls */ |
| 60 | #define V4L2_CID_AGC V4L2_CID_PRIVATE_BASE | 60 | #define V4L2_CID_MEYE_AGC (V4L2_CID_USER_MEYE_BASE + 0) |
| 61 | #define V4L2_CID_MEYE_SHARPNESS (V4L2_CID_PRIVATE_BASE + 1) | 61 | #define V4L2_CID_MEYE_PICTURE (V4L2_CID_USER_MEYE_BASE + 1) |
| 62 | #define V4L2_CID_PICTURE (V4L2_CID_PRIVATE_BASE + 2) | 62 | #define V4L2_CID_MEYE_FRAMERATE (V4L2_CID_USER_MEYE_BASE + 2) |
| 63 | #define V4L2_CID_JPEGQUAL (V4L2_CID_PRIVATE_BASE + 3) | ||
| 64 | #define V4L2_CID_FRAMERATE (V4L2_CID_PRIVATE_BASE + 4) | ||
| 65 | 63 | ||
| 66 | #endif | 64 | #endif |
diff --git a/include/uapi/linux/msdos_fs.h b/include/uapi/linux/msdos_fs.h index 996719f82e28..f055e58b3147 100644 --- a/include/uapi/linux/msdos_fs.h +++ b/include/uapi/linux/msdos_fs.h | |||
| @@ -87,6 +87,8 @@ | |||
| 87 | #define IS_FSINFO(x) (le32_to_cpu((x)->signature1) == FAT_FSINFO_SIG1 \ | 87 | #define IS_FSINFO(x) (le32_to_cpu((x)->signature1) == FAT_FSINFO_SIG1 \ |
| 88 | && le32_to_cpu((x)->signature2) == FAT_FSINFO_SIG2) | 88 | && le32_to_cpu((x)->signature2) == FAT_FSINFO_SIG2) |
| 89 | 89 | ||
| 90 | #define FAT_STATE_DIRTY 0x01 | ||
| 91 | |||
| 90 | struct __fat_dirent { | 92 | struct __fat_dirent { |
| 91 | long d_ino; | 93 | long d_ino; |
| 92 | __kernel_off_t d_off; | 94 | __kernel_off_t d_off; |
| @@ -120,14 +122,34 @@ struct fat_boot_sector { | |||
| 120 | __le32 hidden; /* hidden sectors (unused) */ | 122 | __le32 hidden; /* hidden sectors (unused) */ |
| 121 | __le32 total_sect; /* number of sectors (if sectors == 0) */ | 123 | __le32 total_sect; /* number of sectors (if sectors == 0) */ |
| 122 | 124 | ||
| 123 | /* The following fields are only used by FAT32 */ | 125 | union { |
| 124 | __le32 fat32_length; /* sectors/FAT */ | 126 | struct { |
| 125 | __le16 flags; /* bit 8: fat mirroring, low 4: active fat */ | 127 | /* Extended BPB Fields for FAT16 */ |
| 126 | __u8 version[2]; /* major, minor filesystem version */ | 128 | __u8 drive_number; /* Physical drive number */ |
| 127 | __le32 root_cluster; /* first cluster in root directory */ | 129 | __u8 state; /* undocumented, but used |
| 128 | __le16 info_sector; /* filesystem info sector */ | 130 | for mount state. */ |
| 129 | __le16 backup_boot; /* backup boot sector */ | 131 | /* other fiealds are not added here */ |
| 130 | __le16 reserved2[6]; /* Unused */ | 132 | } fat16; |
| 133 | |||
| 134 | struct { | ||
| 135 | /* only used by FAT32 */ | ||
| 136 | __le32 length; /* sectors/FAT */ | ||
| 137 | __le16 flags; /* bit 8: fat mirroring, | ||
| 138 | low 4: active fat */ | ||
| 139 | __u8 version[2]; /* major, minor filesystem | ||
| 140 | version */ | ||
| 141 | __le32 root_cluster; /* first cluster in | ||
| 142 | root directory */ | ||
| 143 | __le16 info_sector; /* filesystem info sector */ | ||
| 144 | __le16 backup_boot; /* backup boot sector */ | ||
| 145 | __le16 reserved2[6]; /* Unused */ | ||
| 146 | /* Extended BPB Fields for FAT32 */ | ||
| 147 | __u8 drive_number; /* Physical drive number */ | ||
| 148 | __u8 state; /* undocumented, but used | ||
| 149 | for mount state. */ | ||
| 150 | /* other fiealds are not added here */ | ||
| 151 | } fat32; | ||
| 152 | }; | ||
| 131 | }; | 153 | }; |
| 132 | 154 | ||
| 133 | struct fat_boot_fsinfo { | 155 | struct fat_boot_fsinfo { |
diff --git a/include/uapi/linux/nbd.h b/include/uapi/linux/nbd.h index dfb514472cbc..4f52549b23ff 100644 --- a/include/uapi/linux/nbd.h +++ b/include/uapi/linux/nbd.h | |||
| @@ -33,13 +33,14 @@ enum { | |||
| 33 | NBD_CMD_READ = 0, | 33 | NBD_CMD_READ = 0, |
| 34 | NBD_CMD_WRITE = 1, | 34 | NBD_CMD_WRITE = 1, |
| 35 | NBD_CMD_DISC = 2, | 35 | NBD_CMD_DISC = 2, |
| 36 | /* there is a gap here to match userspace */ | 36 | NBD_CMD_FLUSH = 3, |
| 37 | NBD_CMD_TRIM = 4 | 37 | NBD_CMD_TRIM = 4 |
| 38 | }; | 38 | }; |
| 39 | 39 | ||
| 40 | /* values for flags field */ | 40 | /* values for flags field */ |
| 41 | #define NBD_FLAG_HAS_FLAGS (1 << 0) /* nbd-server supports flags */ | 41 | #define NBD_FLAG_HAS_FLAGS (1 << 0) /* nbd-server supports flags */ |
| 42 | #define NBD_FLAG_READ_ONLY (1 << 1) /* device is read-only */ | 42 | #define NBD_FLAG_READ_ONLY (1 << 1) /* device is read-only */ |
| 43 | #define NBD_FLAG_SEND_FLUSH (1 << 2) /* can flush writeback cache */ | ||
| 43 | /* there is a gap here to match userspace */ | 44 | /* there is a gap here to match userspace */ |
| 44 | #define NBD_FLAG_SEND_TRIM (1 << 5) /* send trim/discard */ | 45 | #define NBD_FLAG_SEND_TRIM (1 << 5) /* send trim/discard */ |
| 45 | 46 | ||
diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h index f56c945cecd4..dcd63745e83a 100644 --- a/include/uapi/linux/v4l2-controls.h +++ b/include/uapi/linux/v4l2-controls.h | |||
| @@ -88,10 +88,6 @@ | |||
| 88 | #define V4L2_CID_HFLIP (V4L2_CID_BASE+20) | 88 | #define V4L2_CID_HFLIP (V4L2_CID_BASE+20) |
| 89 | #define V4L2_CID_VFLIP (V4L2_CID_BASE+21) | 89 | #define V4L2_CID_VFLIP (V4L2_CID_BASE+21) |
| 90 | 90 | ||
| 91 | /* Deprecated; use V4L2_CID_PAN_RESET and V4L2_CID_TILT_RESET */ | ||
| 92 | #define V4L2_CID_HCENTER (V4L2_CID_BASE+22) | ||
| 93 | #define V4L2_CID_VCENTER (V4L2_CID_BASE+23) | ||
| 94 | |||
| 95 | #define V4L2_CID_POWER_LINE_FREQUENCY (V4L2_CID_BASE+24) | 91 | #define V4L2_CID_POWER_LINE_FREQUENCY (V4L2_CID_BASE+24) |
| 96 | enum v4l2_power_line_frequency { | 92 | enum v4l2_power_line_frequency { |
| 97 | V4L2_CID_POWER_LINE_FREQUENCY_DISABLED = 0, | 93 | V4L2_CID_POWER_LINE_FREQUENCY_DISABLED = 0, |
| @@ -144,6 +140,11 @@ enum v4l2_colorfx { | |||
| 144 | /* last CID + 1 */ | 140 | /* last CID + 1 */ |
| 145 | #define V4L2_CID_LASTP1 (V4L2_CID_BASE+43) | 141 | #define V4L2_CID_LASTP1 (V4L2_CID_BASE+43) |
| 146 | 142 | ||
| 143 | /* USER-class private control IDs */ | ||
| 144 | |||
| 145 | /* The base for the meye driver controls. See linux/meye.h for the list | ||
| 146 | * of controls. We reserve 16 controls for this driver. */ | ||
| 147 | #define V4L2_CID_USER_MEYE_BASE (V4L2_CID_USER_BASE + 0x1000) | ||
| 147 | 148 | ||
| 148 | /* MPEG-class control IDs */ | 149 | /* MPEG-class control IDs */ |
| 149 | 150 | ||
| @@ -782,6 +783,7 @@ enum v4l2_jpeg_chroma_subsampling { | |||
| 782 | #define V4L2_JPEG_ACTIVE_MARKER_DQT (1 << 17) | 783 | #define V4L2_JPEG_ACTIVE_MARKER_DQT (1 << 17) |
| 783 | #define V4L2_JPEG_ACTIVE_MARKER_DHT (1 << 18) | 784 | #define V4L2_JPEG_ACTIVE_MARKER_DHT (1 << 18) |
| 784 | 785 | ||
| 786 | |||
| 785 | /* Image source controls */ | 787 | /* Image source controls */ |
| 786 | #define V4L2_CID_IMAGE_SOURCE_CLASS_BASE (V4L2_CTRL_CLASS_IMAGE_SOURCE | 0x900) | 788 | #define V4L2_CID_IMAGE_SOURCE_CLASS_BASE (V4L2_CTRL_CLASS_IMAGE_SOURCE | 0x900) |
| 787 | #define V4L2_CID_IMAGE_SOURCE_CLASS (V4L2_CTRL_CLASS_IMAGE_SOURCE | 1) | 789 | #define V4L2_CID_IMAGE_SOURCE_CLASS (V4L2_CTRL_CLASS_IMAGE_SOURCE | 1) |
| @@ -800,4 +802,27 @@ enum v4l2_jpeg_chroma_subsampling { | |||
| 800 | #define V4L2_CID_PIXEL_RATE (V4L2_CID_IMAGE_PROC_CLASS_BASE + 2) | 802 | #define V4L2_CID_PIXEL_RATE (V4L2_CID_IMAGE_PROC_CLASS_BASE + 2) |
| 801 | #define V4L2_CID_TEST_PATTERN (V4L2_CID_IMAGE_PROC_CLASS_BASE + 3) | 803 | #define V4L2_CID_TEST_PATTERN (V4L2_CID_IMAGE_PROC_CLASS_BASE + 3) |
| 802 | 804 | ||
| 805 | |||
| 806 | /* DV-class control IDs defined by V4L2 */ | ||
| 807 | #define V4L2_CID_DV_CLASS_BASE (V4L2_CTRL_CLASS_DV | 0x900) | ||
| 808 | #define V4L2_CID_DV_CLASS (V4L2_CTRL_CLASS_DV | 1) | ||
| 809 | |||
| 810 | #define V4L2_CID_DV_TX_HOTPLUG (V4L2_CID_DV_CLASS_BASE + 1) | ||
| 811 | #define V4L2_CID_DV_TX_RXSENSE (V4L2_CID_DV_CLASS_BASE + 2) | ||
| 812 | #define V4L2_CID_DV_TX_EDID_PRESENT (V4L2_CID_DV_CLASS_BASE + 3) | ||
| 813 | #define V4L2_CID_DV_TX_MODE (V4L2_CID_DV_CLASS_BASE + 4) | ||
| 814 | enum v4l2_dv_tx_mode { | ||
| 815 | V4L2_DV_TX_MODE_DVI_D = 0, | ||
| 816 | V4L2_DV_TX_MODE_HDMI = 1, | ||
| 817 | }; | ||
| 818 | #define V4L2_CID_DV_TX_RGB_RANGE (V4L2_CID_DV_CLASS_BASE + 5) | ||
| 819 | enum v4l2_dv_rgb_range { | ||
| 820 | V4L2_DV_RGB_RANGE_AUTO = 0, | ||
| 821 | V4L2_DV_RGB_RANGE_LIMITED = 1, | ||
| 822 | V4L2_DV_RGB_RANGE_FULL = 2, | ||
| 823 | }; | ||
| 824 | |||
| 825 | #define V4L2_CID_DV_RX_POWER_PRESENT (V4L2_CID_DV_CLASS_BASE + 100) | ||
| 826 | #define V4L2_CID_DV_RX_RGB_RANGE (V4L2_CID_DV_CLASS_BASE + 101) | ||
| 827 | |||
| 803 | #endif | 828 | #endif |
diff --git a/include/uapi/linux/v4l2-mediabus.h b/include/uapi/linux/v4l2-mediabus.h index 7d64e0e1a18b..b9b7bea04537 100644 --- a/include/uapi/linux/v4l2-mediabus.h +++ b/include/uapi/linux/v4l2-mediabus.h | |||
| @@ -47,8 +47,9 @@ enum v4l2_mbus_pixelcode { | |||
| 47 | V4L2_MBUS_FMT_RGB565_2X8_BE = 0x1007, | 47 | V4L2_MBUS_FMT_RGB565_2X8_BE = 0x1007, |
| 48 | V4L2_MBUS_FMT_RGB565_2X8_LE = 0x1008, | 48 | V4L2_MBUS_FMT_RGB565_2X8_LE = 0x1008, |
| 49 | 49 | ||
| 50 | /* YUV (including grey) - next is 0x2014 */ | 50 | /* YUV (including grey) - next is 0x2017 */ |
| 51 | V4L2_MBUS_FMT_Y8_1X8 = 0x2001, | 51 | V4L2_MBUS_FMT_Y8_1X8 = 0x2001, |
| 52 | V4L2_MBUS_FMT_UV8_1X8 = 0x2015, | ||
| 52 | V4L2_MBUS_FMT_UYVY8_1_5X8 = 0x2002, | 53 | V4L2_MBUS_FMT_UYVY8_1_5X8 = 0x2002, |
| 53 | V4L2_MBUS_FMT_VYUY8_1_5X8 = 0x2003, | 54 | V4L2_MBUS_FMT_VYUY8_1_5X8 = 0x2003, |
| 54 | V4L2_MBUS_FMT_YUYV8_1_5X8 = 0x2004, | 55 | V4L2_MBUS_FMT_YUYV8_1_5X8 = 0x2004, |
| @@ -65,14 +66,20 @@ enum v4l2_mbus_pixelcode { | |||
| 65 | V4L2_MBUS_FMT_VYUY8_1X16 = 0x2010, | 66 | V4L2_MBUS_FMT_VYUY8_1X16 = 0x2010, |
| 66 | V4L2_MBUS_FMT_YUYV8_1X16 = 0x2011, | 67 | V4L2_MBUS_FMT_YUYV8_1X16 = 0x2011, |
| 67 | V4L2_MBUS_FMT_YVYU8_1X16 = 0x2012, | 68 | V4L2_MBUS_FMT_YVYU8_1X16 = 0x2012, |
| 69 | V4L2_MBUS_FMT_YDYUYDYV8_1X16 = 0x2014, | ||
| 68 | V4L2_MBUS_FMT_YUYV10_1X20 = 0x200d, | 70 | V4L2_MBUS_FMT_YUYV10_1X20 = 0x200d, |
| 69 | V4L2_MBUS_FMT_YVYU10_1X20 = 0x200e, | 71 | V4L2_MBUS_FMT_YVYU10_1X20 = 0x200e, |
| 72 | V4L2_MBUS_FMT_YUV10_1X30 = 0x2016, | ||
| 70 | 73 | ||
| 71 | /* Bayer - next is 0x3015 */ | 74 | /* Bayer - next is 0x3019 */ |
| 72 | V4L2_MBUS_FMT_SBGGR8_1X8 = 0x3001, | 75 | V4L2_MBUS_FMT_SBGGR8_1X8 = 0x3001, |
| 73 | V4L2_MBUS_FMT_SGBRG8_1X8 = 0x3013, | 76 | V4L2_MBUS_FMT_SGBRG8_1X8 = 0x3013, |
| 74 | V4L2_MBUS_FMT_SGRBG8_1X8 = 0x3002, | 77 | V4L2_MBUS_FMT_SGRBG8_1X8 = 0x3002, |
| 75 | V4L2_MBUS_FMT_SRGGB8_1X8 = 0x3014, | 78 | V4L2_MBUS_FMT_SRGGB8_1X8 = 0x3014, |
| 79 | V4L2_MBUS_FMT_SBGGR10_ALAW8_1X8 = 0x3015, | ||
| 80 | V4L2_MBUS_FMT_SGBRG10_ALAW8_1X8 = 0x3016, | ||
| 81 | V4L2_MBUS_FMT_SGRBG10_ALAW8_1X8 = 0x3017, | ||
| 82 | V4L2_MBUS_FMT_SRGGB10_ALAW8_1X8 = 0x3018, | ||
| 76 | V4L2_MBUS_FMT_SBGGR10_DPCM8_1X8 = 0x300b, | 83 | V4L2_MBUS_FMT_SBGGR10_DPCM8_1X8 = 0x300b, |
| 77 | V4L2_MBUS_FMT_SGBRG10_DPCM8_1X8 = 0x300c, | 84 | V4L2_MBUS_FMT_SGBRG10_DPCM8_1X8 = 0x300c, |
| 78 | V4L2_MBUS_FMT_SGRBG10_DPCM8_1X8 = 0x3009, | 85 | V4L2_MBUS_FMT_SGRBG10_DPCM8_1X8 = 0x3009, |
diff --git a/include/uapi/linux/vfio.h b/include/uapi/linux/vfio.h index 4758d1bfcf41..4f41f309911e 100644 --- a/include/uapi/linux/vfio.h +++ b/include/uapi/linux/vfio.h | |||
| @@ -303,6 +303,15 @@ enum { | |||
| 303 | VFIO_PCI_BAR5_REGION_INDEX, | 303 | VFIO_PCI_BAR5_REGION_INDEX, |
| 304 | VFIO_PCI_ROM_REGION_INDEX, | 304 | VFIO_PCI_ROM_REGION_INDEX, |
| 305 | VFIO_PCI_CONFIG_REGION_INDEX, | 305 | VFIO_PCI_CONFIG_REGION_INDEX, |
| 306 | /* | ||
| 307 | * Expose VGA regions defined for PCI base class 03, subclass 00. | ||
| 308 | * This includes I/O port ranges 0x3b0 to 0x3bb and 0x3c0 to 0x3df | ||
| 309 | * as well as the MMIO range 0xa0000 to 0xbffff. Each implemented | ||
| 310 | * range is found at it's identity mapped offset from the region | ||
| 311 | * offset, for example 0x3b0 is region_info.offset + 0x3b0. Areas | ||
| 312 | * between described ranges are unimplemented. | ||
| 313 | */ | ||
| 314 | VFIO_PCI_VGA_REGION_INDEX, | ||
| 306 | VFIO_PCI_NUM_REGIONS | 315 | VFIO_PCI_NUM_REGIONS |
| 307 | }; | 316 | }; |
| 308 | 317 | ||
diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h index 3cf3e946e331..234d1d870914 100644 --- a/include/uapi/linux/videodev2.h +++ b/include/uapi/linux/videodev2.h | |||
| @@ -334,6 +334,9 @@ struct v4l2_pix_format { | |||
| 334 | /* Palette formats */ | 334 | /* Palette formats */ |
| 335 | #define V4L2_PIX_FMT_PAL8 v4l2_fourcc('P', 'A', 'L', '8') /* 8 8-bit palette */ | 335 | #define V4L2_PIX_FMT_PAL8 v4l2_fourcc('P', 'A', 'L', '8') /* 8 8-bit palette */ |
| 336 | 336 | ||
| 337 | /* Chrominance formats */ | ||
| 338 | #define V4L2_PIX_FMT_UV8 v4l2_fourcc('U', 'V', '8', ' ') /* 8 UV 4:4 */ | ||
| 339 | |||
| 337 | /* Luminance+Chrominance formats */ | 340 | /* Luminance+Chrominance formats */ |
| 338 | #define V4L2_PIX_FMT_YVU410 v4l2_fourcc('Y', 'V', 'U', '9') /* 9 YVU 4:1:0 */ | 341 | #define V4L2_PIX_FMT_YVU410 v4l2_fourcc('Y', 'V', 'U', '9') /* 9 YVU 4:1:0 */ |
| 339 | #define V4L2_PIX_FMT_YVU420 v4l2_fourcc('Y', 'V', '1', '2') /* 12 YVU 4:2:0 */ | 342 | #define V4L2_PIX_FMT_YVU420 v4l2_fourcc('Y', 'V', '1', '2') /* 12 YVU 4:2:0 */ |
| @@ -386,6 +389,11 @@ struct v4l2_pix_format { | |||
| 386 | #define V4L2_PIX_FMT_SGBRG12 v4l2_fourcc('G', 'B', '1', '2') /* 12 GBGB.. RGRG.. */ | 389 | #define V4L2_PIX_FMT_SGBRG12 v4l2_fourcc('G', 'B', '1', '2') /* 12 GBGB.. RGRG.. */ |
| 387 | #define V4L2_PIX_FMT_SGRBG12 v4l2_fourcc('B', 'A', '1', '2') /* 12 GRGR.. BGBG.. */ | 390 | #define V4L2_PIX_FMT_SGRBG12 v4l2_fourcc('B', 'A', '1', '2') /* 12 GRGR.. BGBG.. */ |
| 388 | #define V4L2_PIX_FMT_SRGGB12 v4l2_fourcc('R', 'G', '1', '2') /* 12 RGRG.. GBGB.. */ | 391 | #define V4L2_PIX_FMT_SRGGB12 v4l2_fourcc('R', 'G', '1', '2') /* 12 RGRG.. GBGB.. */ |
| 392 | /* 10bit raw bayer a-law compressed to 8 bits */ | ||
| 393 | #define V4L2_PIX_FMT_SBGGR10ALAW8 v4l2_fourcc('a', 'B', 'A', '8') | ||
| 394 | #define V4L2_PIX_FMT_SGBRG10ALAW8 v4l2_fourcc('a', 'G', 'A', '8') | ||
| 395 | #define V4L2_PIX_FMT_SGRBG10ALAW8 v4l2_fourcc('a', 'g', 'A', '8') | ||
| 396 | #define V4L2_PIX_FMT_SRGGB10ALAW8 v4l2_fourcc('a', 'R', 'A', '8') | ||
| 389 | /* 10bit raw bayer DPCM compressed to 8 bits */ | 397 | /* 10bit raw bayer DPCM compressed to 8 bits */ |
| 390 | #define V4L2_PIX_FMT_SBGGR10DPCM8 v4l2_fourcc('b', 'B', 'A', '8') | 398 | #define V4L2_PIX_FMT_SBGGR10DPCM8 v4l2_fourcc('b', 'B', 'A', '8') |
| 391 | #define V4L2_PIX_FMT_SGBRG10DPCM8 v4l2_fourcc('b', 'G', 'A', '8') | 399 | #define V4L2_PIX_FMT_SGBRG10DPCM8 v4l2_fourcc('b', 'G', 'A', '8') |
| @@ -693,6 +701,10 @@ struct v4l2_buffer { | |||
| 693 | /* Cache handling flags */ | 701 | /* Cache handling flags */ |
| 694 | #define V4L2_BUF_FLAG_NO_CACHE_INVALIDATE 0x0800 | 702 | #define V4L2_BUF_FLAG_NO_CACHE_INVALIDATE 0x0800 |
| 695 | #define V4L2_BUF_FLAG_NO_CACHE_CLEAN 0x1000 | 703 | #define V4L2_BUF_FLAG_NO_CACHE_CLEAN 0x1000 |
| 704 | /* Timestamp type */ | ||
| 705 | #define V4L2_BUF_FLAG_TIMESTAMP_MASK 0xe000 | ||
| 706 | #define V4L2_BUF_FLAG_TIMESTAMP_UNKNOWN 0x0000 | ||
| 707 | #define V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC 0x2000 | ||
| 696 | 708 | ||
| 697 | /** | 709 | /** |
| 698 | * struct v4l2_exportbuffer - export of video buffer as DMABUF file descriptor | 710 | * struct v4l2_exportbuffer - export of video buffer as DMABUF file descriptor |
| @@ -1342,28 +1354,6 @@ struct v4l2_querymenu { | |||
| 1342 | #define V4L2_CID_PRIVATE_BASE 0x08000000 | 1354 | #define V4L2_CID_PRIVATE_BASE 0x08000000 |
| 1343 | 1355 | ||
| 1344 | 1356 | ||
| 1345 | /* DV-class control IDs defined by V4L2 */ | ||
| 1346 | #define V4L2_CID_DV_CLASS_BASE (V4L2_CTRL_CLASS_DV | 0x900) | ||
| 1347 | #define V4L2_CID_DV_CLASS (V4L2_CTRL_CLASS_DV | 1) | ||
| 1348 | |||
| 1349 | #define V4L2_CID_DV_TX_HOTPLUG (V4L2_CID_DV_CLASS_BASE + 1) | ||
| 1350 | #define V4L2_CID_DV_TX_RXSENSE (V4L2_CID_DV_CLASS_BASE + 2) | ||
| 1351 | #define V4L2_CID_DV_TX_EDID_PRESENT (V4L2_CID_DV_CLASS_BASE + 3) | ||
| 1352 | #define V4L2_CID_DV_TX_MODE (V4L2_CID_DV_CLASS_BASE + 4) | ||
| 1353 | enum v4l2_dv_tx_mode { | ||
| 1354 | V4L2_DV_TX_MODE_DVI_D = 0, | ||
| 1355 | V4L2_DV_TX_MODE_HDMI = 1, | ||
| 1356 | }; | ||
| 1357 | #define V4L2_CID_DV_TX_RGB_RANGE (V4L2_CID_DV_CLASS_BASE + 5) | ||
| 1358 | enum v4l2_dv_rgb_range { | ||
| 1359 | V4L2_DV_RGB_RANGE_AUTO = 0, | ||
| 1360 | V4L2_DV_RGB_RANGE_LIMITED = 1, | ||
| 1361 | V4L2_DV_RGB_RANGE_FULL = 2, | ||
| 1362 | }; | ||
| 1363 | |||
| 1364 | #define V4L2_CID_DV_RX_POWER_PRESENT (V4L2_CID_DV_CLASS_BASE + 100) | ||
| 1365 | #define V4L2_CID_DV_RX_RGB_RANGE (V4L2_CID_DV_CLASS_BASE + 101) | ||
| 1366 | |||
| 1367 | /* | 1357 | /* |
| 1368 | * T U N I N G | 1358 | * T U N I N G |
| 1369 | */ | 1359 | */ |
| @@ -1810,6 +1800,7 @@ struct v4l2_event_vsync { | |||
| 1810 | /* Payload for V4L2_EVENT_CTRL */ | 1800 | /* Payload for V4L2_EVENT_CTRL */ |
| 1811 | #define V4L2_EVENT_CTRL_CH_VALUE (1 << 0) | 1801 | #define V4L2_EVENT_CTRL_CH_VALUE (1 << 0) |
| 1812 | #define V4L2_EVENT_CTRL_CH_FLAGS (1 << 1) | 1802 | #define V4L2_EVENT_CTRL_CH_FLAGS (1 << 1) |
| 1803 | #define V4L2_EVENT_CTRL_CH_RANGE (1 << 2) | ||
| 1813 | 1804 | ||
| 1814 | struct v4l2_event_ctrl { | 1805 | struct v4l2_event_ctrl { |
| 1815 | __u32 changes; | 1806 | __u32 changes; |
diff --git a/include/uapi/linux/xattr.h b/include/uapi/linux/xattr.h index 26607bd965fa..e4629b93bdd6 100644 --- a/include/uapi/linux/xattr.h +++ b/include/uapi/linux/xattr.h | |||
| @@ -15,19 +15,22 @@ | |||
| 15 | 15 | ||
| 16 | /* Namespaces */ | 16 | /* Namespaces */ |
| 17 | #define XATTR_OS2_PREFIX "os2." | 17 | #define XATTR_OS2_PREFIX "os2." |
| 18 | #define XATTR_OS2_PREFIX_LEN (sizeof (XATTR_OS2_PREFIX) - 1) | 18 | #define XATTR_OS2_PREFIX_LEN (sizeof(XATTR_OS2_PREFIX) - 1) |
| 19 | |||
| 20 | #define XATTR_MAC_OSX_PREFIX "osx." | ||
| 21 | #define XATTR_MAC_OSX_PREFIX_LEN (sizeof(XATTR_MAC_OSX_PREFIX) - 1) | ||
| 19 | 22 | ||
| 20 | #define XATTR_SECURITY_PREFIX "security." | 23 | #define XATTR_SECURITY_PREFIX "security." |
| 21 | #define XATTR_SECURITY_PREFIX_LEN (sizeof (XATTR_SECURITY_PREFIX) - 1) | 24 | #define XATTR_SECURITY_PREFIX_LEN (sizeof(XATTR_SECURITY_PREFIX) - 1) |
| 22 | 25 | ||
| 23 | #define XATTR_SYSTEM_PREFIX "system." | 26 | #define XATTR_SYSTEM_PREFIX "system." |
| 24 | #define XATTR_SYSTEM_PREFIX_LEN (sizeof (XATTR_SYSTEM_PREFIX) - 1) | 27 | #define XATTR_SYSTEM_PREFIX_LEN (sizeof(XATTR_SYSTEM_PREFIX) - 1) |
| 25 | 28 | ||
| 26 | #define XATTR_TRUSTED_PREFIX "trusted." | 29 | #define XATTR_TRUSTED_PREFIX "trusted." |
| 27 | #define XATTR_TRUSTED_PREFIX_LEN (sizeof (XATTR_TRUSTED_PREFIX) - 1) | 30 | #define XATTR_TRUSTED_PREFIX_LEN (sizeof(XATTR_TRUSTED_PREFIX) - 1) |
| 28 | 31 | ||
| 29 | #define XATTR_USER_PREFIX "user." | 32 | #define XATTR_USER_PREFIX "user." |
| 30 | #define XATTR_USER_PREFIX_LEN (sizeof (XATTR_USER_PREFIX) - 1) | 33 | #define XATTR_USER_PREFIX_LEN (sizeof(XATTR_USER_PREFIX) - 1) |
| 31 | 34 | ||
| 32 | /* Security namespace */ | 35 | /* Security namespace */ |
| 33 | #define XATTR_EVM_SUFFIX "evm" | 36 | #define XATTR_EVM_SUFFIX "evm" |
