- Fix documentation build issues (Randy, Markus) - Fix timestamp frequency calculation for perf on CNL (Lionel) - New DMC firmware for Skylake (Anusha) - GTT flush fixes and other GGTT write track and refactors (Chris) - Taint kernel when GPU reset fails (Chris) - Display workarounds organization (Lucas) - GuC and HuC initialization clean-up and fixes (Michal) - Other fixes around GuC submission (Michal) - Execlist clean-ups like caching ELSP reg offset and improving log readability (Chri\ s) - Many other improvements on our logs and dumps (Chris) - Restore GT performance in headless mode with DMC loaded (Tvrtko) - Stop updating legacy fb parameters since FBC is not using anymore (Daniel) - More selftest improvements (Chris) - Preemption fixes and improvements (Chris) - x86/early-quirks improvements for Intel graphics stolen memory. (Joonas, Matthew) - Other improvements on Stolen Memory code to be resource centric. (Matthew) - Improvements and fixes on fence allocation/release (Chris). GVT: - fixes for two coverity scan errors (Colin) - mmio switch code refine (Changbin) - more virtual display dmabuf fixes (Tina/Gustavo) - misc cleanups (Pei) - VFIO mdev display dmabuf interface and gvt support (Tina) - VFIO mdev opregion support/fixes (Tina/Xiong/Chris) - workload scheduling optimization (Changbin) - preemption fix and temporal workaround (Zhenyu) - and misc fixes after refactor (Chris) * tag 'drm-intel-next-2017-12-14' of git://anongit.freedesktop.org/drm/drm-intel: (87 commits) drm/i915: Update DRIVER_DATE to 20171214 drm/i915: properly init lockdep class drm/i915: Show engine state when hangcheck detects a stall drm/i915: make CS frequency read support missing more obvious drm/i915/guc: Extract doorbell verification into a function drm/i915/guc: Extract clients allocation to submission_init drm/i915/guc: Extract doorbell creation from client allocation drm/i915/guc: Call invalidate after changing the vfunc drm/i915/guc: Extract guc_init from guc_init_hw drm/i915/guc: Move GuC workqueue allocations outside of the mutex drm/i915/guc: Move shared data allocation away from submission path drm/i915: Unwind i915_gem_init() failure drm/i915: Ratelimit request allocation under oom drm/i915: Allow fence allocations to fail drm/i915: Mark up potential allocation paths within i915_sw_fence as might_sleep drm/i915: Don't check #active_requests from i915_gem_wait_for_idle() drm/i915/fence: Use rcu to defer freeing of irq_work drm/i915: Dump the engine state before declaring wedged from wait_for_engines() drm/i915: Bump timeout for wait_for_engines() drm/i915: Downgrade misleading "Memory usable" message ...
Showing the changes to include/uapi/linux (1 of 85 files). Show all
Unified · Split
| @@ -503,6 +503,68 @@ struct vfio_pci_hot_reset { · 502 unmodified lines | |||
| 503 | 503 | ||
| 504 | #define VFIO_DEVICE_PCI_HOT_RESET _IO(VFIO_TYPE, VFIO_BASE + 13) | 504 | #define VFIO_DEVICE_PCI_HOT_RESET _IO(VFIO_TYPE, VFIO_BASE + 13) |
| 505 | 505 | ||
| 506 | /** | ||
| 507 | * VFIO_DEVICE_QUERY_GFX_PLANE - _IOW(VFIO_TYPE, VFIO_BASE + 14, | ||
| 508 | * struct vfio_device_query_gfx_plane) | ||
| 509 | * | ||
| 510 | * Set the drm_plane_type and flags, then retrieve the gfx plane info. | ||
| 511 | * | ||
| 512 | * flags supported: | ||
| 513 | * - VFIO_GFX_PLANE_TYPE_PROBE and VFIO_GFX_PLANE_TYPE_DMABUF are set | ||
| 514 | * to ask if the mdev supports dma-buf. 0 on support, -EINVAL on no | ||
| 515 | * support for dma-buf. | ||
| 516 | * - VFIO_GFX_PLANE_TYPE_PROBE and VFIO_GFX_PLANE_TYPE_REGION are set | ||
| 517 | * to ask if the mdev supports region. 0 on support, -EINVAL on no | ||
| 518 | * support for region. | ||
| 519 | * - VFIO_GFX_PLANE_TYPE_DMABUF or VFIO_GFX_PLANE_TYPE_REGION is set | ||
| 520 | * with each call to query the plane info. | ||
| 521 | * - Others are invalid and return -EINVAL. | ||
| 522 | * | ||
| 523 | * Note: | ||
| 524 | * 1. Plane could be disabled by guest. In that case, success will be | ||
| 525 | * returned with zero-initialized drm_format, size, width and height | ||
| 526 | * fields. | ||
| 527 | * 2. x_hot/y_hot is set to 0xFFFFFFFF if no hotspot information available | ||
| 528 | * | ||
| 529 | * Return: 0 on success, -errno on other failure. | ||
| 530 | */ | ||
| 531 | struct vfio_device_gfx_plane_info { | ||
| 532 | __u32 argsz; | ||
| 533 | __u32 flags; | ||
| 534 | #define VFIO_GFX_PLANE_TYPE_PROBE (1 << 0) | ||
| 535 | #define VFIO_GFX_PLANE_TYPE_DMABUF (1 << 1) | ||
| 536 | #define VFIO_GFX_PLANE_TYPE_REGION (1 << 2) | ||
| 537 | /* in */ | ||
| 538 | __u32 drm_plane_type; /* type of plane: DRM_PLANE_TYPE_* */ | ||
| 539 | /* out */ | ||
| 540 | __u32 drm_format; /* drm format of plane */ | ||
| 541 | __u64 drm_format_mod; /* tiled mode */ | ||
| 542 | __u32 width; /* width of plane */ | ||
| 543 | __u32 height; /* height of plane */ | ||
| 544 | __u32 stride; /* stride of plane */ | ||
| 545 | __u32 size; /* size of plane in bytes, align on page*/ | ||
| 546 | __u32 x_pos; /* horizontal position of cursor plane */ | ||
| 547 | __u32 y_pos; /* vertical position of cursor plane*/ | ||
| 548 | __u32 x_hot; /* horizontal position of cursor hotspot */ | ||
| 549 | __u32 y_hot; /* vertical position of cursor hotspot */ | ||
| 550 | union { | ||
| 551 | __u32 region_index; /* region index */ | ||
| 552 | __u32 dmabuf_id; /* dma-buf id */ | ||
| 553 | }; | ||
| 554 | }; | ||
| 555 | |||
| 556 | #define VFIO_DEVICE_QUERY_GFX_PLANE _IO(VFIO_TYPE, VFIO_BASE + 14) | ||
| 557 | |||
| 558 | /** | ||
| 559 | * VFIO_DEVICE_GET_GFX_DMABUF - _IOW(VFIO_TYPE, VFIO_BASE + 15, __u32) | ||
| 560 | * | ||
| 561 | * Return a new dma-buf file descriptor for an exposed guest framebuffer | ||
| 562 | * described by the provided dmabuf_id. The dmabuf_id is returned from VFIO_ | ||
| 563 | * DEVICE_QUERY_GFX_PLANE as a token of the exposed guest framebuffer. | ||
| 564 | */ | ||
| 565 | |||
| 566 | #define VFIO_DEVICE_GET_GFX_DMABUF _IO(VFIO_TYPE, VFIO_BASE + 15) | ||
| 567 | |||
| 506 | /* -------- API for Type1 VFIO IOMMU -------- */ | 568 | /* -------- API for Type1 VFIO IOMMU -------- */ |
| 507 | 569 | ||
| 508 | /** | 570 | /** |