History

Merge tag 'drm-intel-next-2017-12-14' of git://anongit.freedesktop.org/drm/drm-intel into drm-next

- 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 ...

Dave Airlie committed 8 years ago

Commit 6a9991b2 parents 6b7dcb5 ee5b5bf85 files · +3099 −1305Browse files

Showing the changes to include/uapi/linux (1 of 85 files). Show all

Unified · Split

include/uapi/linux/vfio.h+62−0
@@ -503,6 +503,68 @@ struct vfio_pci_hot_reset { · 502 unmodified lines
503503
504504 #define VFIO_DEVICE_PCI_HOT_RESET _IO(VFIO_TYPE, VFIO_BASE + 13)
505505
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+
506568 /* -------- API for Type1 VFIO IOMMU -------- */
507569
508570 /**

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t