History

Merge tag 'drm-next-2026-06-17' of https://gitlab.freedesktop.org/drm/kernel

Pull drm updates from Dave Airlie: "Highlights: - xe: add initial CRI platform support - amdgpu: initial HDMI 2.1 FRL support - rust: add some new type concepts for device lifetimes - scheduler: moves to a fair algorithm and lots of cleanups But it's mostly the usual mountain of changes across the board. core: - add docbook for DRM_IOCTL_SYNCOBJ_EVENTFD - change signature of drm_connector_attach_hdr_output_metadata_property - dedup counter and timestamp retrieval in vblank code - parse AMD VSDB v3 in CTA extension blocks - add P230, Y7, XYYY2101010, T430, XVUY210101010 formats - don't call drop master on file close if not master - use drm_printf_indent in atomic / bridge - fix 32b format descriptions - docs: fix toctree - hdmi: add common TMDS character rates - fix drm_syncobj_find_fence leak rust: - introduce Higher-Ranked lifetime types - replace drvdata with scoped registration data - add GPUVM immediate mode abstraction for rust GPU drivers - introduce DeviceContext type state for drm::Device bridge: - clarify drm_bridge_get/put - create drm_get_bridge_by_endpoint and use it - analogix_dp: add panel probing - ite-it6211 - use drm audio hdmi helpers buddy: - add lockdep annotations dp: - add PR and VRR updates - mst: fix buffer overflows - add Adaptive Sync SDP decoding support - fix OOB reads in dp-mst ttm: - bump fpfn/lpfn to 64-bit scheduler: - change default to fair scheduler - map runqueue 1:1 with scheduler dma-buf: - port selftests to kunit - convert dma-buf system/heap allocators to module - add separate DMABUF_HEAPS_SYSTEM_CC_SHARED Kconfig udmabuf: - revert hugetlb support - fix error with CONFIG_DMA_API_DEBUG dma-fence: - fix tracepoints lifetime - remove unused signal on any support ras: - add clear error counter netlink command to drm ras gpusvm: - reject VMAs with VM_IO or VM_PFNMAP when creating SVM ranges - use IOVA allocations pagemap: - use IOVA allocations panels: - update to use ref counts - add support for CSW PNB601LS1-2, LGD LP116WHA-SPB1 - add support for waveshare panels - CMN N116BCN-EA1, CMN N140HCA-EEK, IVO M140NWFQ R5, - IVO, R140NWFW R0, BOE NT140*, BOE NV133FHM-N4F, - AUO B140*, AUO B133HAN06.6 and AUO B116XTN02.3 eDP panels - Surface Pro 12 Panel xe: - add CRI PCI-IDs - debugfs add multi-lrc info - engine init cleanup - PF fair scheduling auto provisioning - system controller support for CRI/Xe3p - PXP state machine fixes - Reset/wedge/unload corner case fixes - Wedge path memory allocation fixes - PAT type cleanups - Reject unsafe PAT for CPU cached memory - OA improvements for CRI device memory - kernel doc syntax in xe headers - xe_drm.h documentation fixes - include guard cleanups - VF CCS memory pool - i915/xe step unification - Xe3p GT tuning fixes - forcewake cleanup in GT and GuC - admin-only PF mode - enable hwmon energy attributes for CRI - enable GT_MI_USER_INTERRUPT - refactor emit functions - oa workarounds - multi_queue: allow QUEUE_TIMESTAMP register - convert stolen memory to ttm range manager - use xe2 style blitter as a feature flag - make drm_driver const - add/use IRQ page to HW engine definition - fix oops when display disabled i915: - enable PIPEDMC_ERROR interrupt - more common display code refactoring - restructure DP/HDMI sink format handling - eliminate FB usage from lowlevel pinning code - panel replay bw optimization - integrate sharpness filter into the scaler - new fb_pin abstraction for xe/i915 fb transparent handling - skip inactive MST connectors on HDCP - start switching to display specific registers - use polling when irq unavailable - Adaptive-sync SDP prep amdgpu: - use drm_display_info for AMD VSDB data - Initial HDMI 2.1 FRL support - Initial DCN 4.2.1 support - GART fixes for non-4k pages - GC 11.5.6/SDMA 6.4.0/and other new IPs - GFX9/DCE6/Hawaii/SDMA4/GART/Userq fixes - Finish support for using multiple SDMA queues for TTM operations - SWSMU updates - GC 12.1 updates - SMU 15.0.8 updates - DCN 4.2 updates - DC type conversion fixes - Enable DC power module - Replay/PSR updates - SMU 13.x updates - Compute queue quantum MQD updates - ASPM fix - Align VKMS with common implementation - DC analog support fixes - UVD 3 fixes - TCC harvesting fixes for SI - GC 11 APU module reload fix - NBIO 6.3.2 support - IH 7.1 updates - DC cursor fixes - VCN/JPEG user fence fixes - DC support for connectors without DDC - Prefer ROM BAR for default VGA device - DC bandwidth fixes - Add PTL support for profiler - Introduce dc_plane_cm and migrate surface update color path - Add FRL registers for HDMI 2.1 - Restructure VM state machine - Auxless ALPM support - GEM_OP locking/warning fixes - switch to system_dfl_wq amdkfd: - GPUVM TLB flush fix - Hotplug fix - Boundary check fixes - SVM fixes - CRIU fixes - add profiler API - MES 12.1 updates msm: - core: - fix shrinker documentation - IFPC enabled for gen8 - PERFCNTR_CONFIG ioctl support - GPU: - reworked UBWC handling - a810 support - MDSS: - add support for Milos platform - reworked UBWC handling - DisplayPort: - reworked HPD handling as prep for MST - DPU: - Milos platform support - reworked UBWC handling - DSI: - Milos platform support nova: - Hopper/Blackwell enablement (GH100/GB100/GB202) - FSP support - 32-bit firmware support - HAL functions - refactor GSP boot/unload - GA100 support - VBIOS hardening/refactoring - Adopt higher order lifetime types tyr: - define register blocks - add shmem backed GEM objects - adopt higher order lifetime types - move clock cleanup into Drop radeon: - Hawaii SMU fixes - CS parser fix - use struct drm_edid instead of edid amdxdna: - export per-client BO memory via fdinfo - AIE4 device support - support medium/lower power modes - expandable device heap support - revert read-only user-pointer BO mappings ivpu: - support frequency limiting panthor: - enable GEM shrinker support - add eviction and reclaim info to fdinfo v3d: - enable runtime PM mgag200: - support XRGB1555 + C8 ast: - support XRGB1555 + C8 - use constants for lots of registers - fix register handling imagination: - fence handling refactoring nouveau: - fix sched double call - expose VBIOS on GSP-RM systems - add GA100 support virtio: - add VIRTIO_GPU_F_BLOB_ALIGNMENT flag - add deferred mapping support gud: - add RCade Display Adapter hibmc: - fix no connectors usage mediatek: - hdmi: convert error handling - simplify mtk_crtc allocation exynos: - move fbdev emulation to drm client buffers - use drm format helpers for geometry/size - adopt core DMA tracking - fix framebuffer offset handling renesas: - add RZ/T2H SOC support versilicon: - add cursor plane support tegra: - use drm client for framebuffer" * tag 'drm-next-2026-06-17' of https://gitlab.freedesktop.org/drm/kernel: (1731 commits) dma-buf: move system_cc_shared heap under separate Kconfig accel/amdxdna: Clear sva pointer after unbind agp/amd64: Fix broken error propagation in agp_amd64_probe() accel/amdxdna: Require carveout when PASID and force_iova are disabled drm/amdkfd: always resume_all after suspend_all drm/amdgpu/gfx: move fault and EOP IRQ get/put to hw_init/hw_fini drm/amd/display: Consult MCCS FreeSync cap only if requested & supported drm/amd/pm: Use strscpy in profile mode parsing drm/amdkfd: Fix infinite loop parsing CRAT with zero subtype length drm/amdkfd: fix sysfs topology prop length on buffer truncation drm/amdgpu: drop retry loop in amdgpu_hmm_range_get_pages drm/amd/pm: bound OD parameter parsing to stack array size drm/amd/pm: Stop pp_od_clk_voltage emit at PAGE_SIZE drm/amdkfd: Unwind debug trap enable on copy_to_user failure drm/amdgpu: validate the mes firmware version for gfx12.1 drm/amdgpu: validate the mes firmware version for gfx12 drm/amdgpu: compare MES firmware version ucode for gfx11 drm/amdkfd: Add bounds check for AMDKFD_IOC_WAIT_EVENTS drm/amdgpu: restart the CS if some parts of the VM are still invalidated drm/amd/display: use unsigned types for local pipe and REG_GET counters ...

Linus Torvalds committed 4 months ago

Commit 4b999902 parents 9c87e61 52d4ab11976 files · +245268 −30143Browse files

Showing the changes to include/uapi/linux (2 of 1976 files). Show all

Unified · Split

2 files
  1. include/uapi/linux/kfd_ioctl.h +36 −2
  2. include/uapi/linux/virtio_gpu.h +9 −0
include/uapi/linux/kfd_ioctl.h+36−2
@@ -48,9 +48,10 @@ · 47 unmodified lines
48 * - 1.20 - Trap handler support for expert scheduling mode available48 * - 1.20 - Trap handler support for expert scheduling mode available
49 * - 1.21 - Debugger support to subscribe to LDS out-of-address exceptions49 * - 1.21 - Debugger support to subscribe to LDS out-of-address exceptions
50 * - 1.22 - Add queue creation with metadata ring base address50 * - 1.22 - Add queue creation with metadata ring base address
51 * - 1.23 - Add profiler control ioctl to enable/disable profiler on a process
51 */52 */
52#define KFD_IOCTL_MAJOR_VERSION 153#define KFD_IOCTL_MAJOR_VERSION 1
53#define KFD_IOCTL_MINOR_VERSION 2254#define KFD_IOCTL_MINOR_VERSION 23
54 55
55struct kfd_ioctl_get_version_args {56struct kfd_ioctl_get_version_args {
56 __u32 major_version; /* from KFD */57 __u32 major_version; /* from KFD */
@@ -1558,6 +1559,36 @@ struct kfd_ioctl_dbg_trap_args { · 1501 unmodified lines
1558 };1559 };
1559};1560};
1560 1561
1562#define KFD_IOC_PROFILER_VERSION_NUM 1
1563enum kfd_profiler_ops {
1564 KFD_IOC_PROFILER_PMC = 0,
1565 KFD_IOC_PROFILER_VERSION = 2,
1566 KFD_IOC_PROFILER_PTL_CONTROL = 3,
1567};
1568
1569/**
1570 * Enables/Disables GPU Specific profiler settings
1571 */
1572struct kfd_ioctl_pmc_settings {
1573 __u32 gpu_id; /* This is the user_gpu_id */
1574 __u32 lock; /* Lock GPU for Profiling */
1575 __u32 perfcount_enable; /* Force Perfcount Enable for queues on GPU */
1576};
1577
1578struct kfd_ioctl_ptl_control {
1579 __u32 gpu_id; /* user_gpu_id */
1580 __u32 enable; /* set 1 to enable PTL, set 0 to disable PTL */
1581};
1582
1583struct kfd_ioctl_profiler_args {
1584 __u32 op; /* kfd_profiler_op */
1585 union {
1586 struct kfd_ioctl_pmc_settings pmc;
1587 struct kfd_ioctl_ptl_control ptl;
1588 __u32 version; /* KFD_IOC_PROFILER_VERSION_NUM */
1589 };
1590};
1591
1561#define AMDKFD_IOCTL_BASE 'K'1592#define AMDKFD_IOCTL_BASE 'K'
1562#define AMDKFD_IO(nr) _IO(AMDKFD_IOCTL_BASE, nr)1593#define AMDKFD_IO(nr) _IO(AMDKFD_IOCTL_BASE, nr)
1563#define AMDKFD_IOR(nr, type) _IOR(AMDKFD_IOCTL_BASE, nr, type)1594#define AMDKFD_IOR(nr, type) _IOR(AMDKFD_IOCTL_BASE, nr, type)
@@ -1681,7 +1712,10 @@ struct kfd_ioctl_dbg_trap_args { · 117 unmodified lines
1681#define AMDKFD_IOC_CREATE_PROCESS \1712#define AMDKFD_IOC_CREATE_PROCESS \
1682 AMDKFD_IO(0x27)1713 AMDKFD_IO(0x27)
1683 1714
1715#define AMDKFD_IOC_PROFILER \
1716 AMDKFD_IOWR(0x28, struct kfd_ioctl_profiler_args)
1717
1684#define AMDKFD_COMMAND_START 0x011718#define AMDKFD_COMMAND_START 0x01
1685#define AMDKFD_COMMAND_END 0x281719#define AMDKFD_COMMAND_END 0x29
1686 1720
1687#endif1721#endif
include/uapi/linux/virtio_gpu.h+9−0
@@ -64,6 +64,14 @@ · 63 unmodified lines
64 * context_init and multiple timelines64 * context_init and multiple timelines
65 */65 */
66#define VIRTIO_GPU_F_CONTEXT_INIT 466#define VIRTIO_GPU_F_CONTEXT_INIT 4
67/*
68 * The device provides a valid blob_alignment
69 * field in its configuration and both
70 * VIRTIO_GPU_CMD_RESOURCE_CREATE_BLOB and
71 * VIRTIO_GPU_CMD_RESOURCE_MAP_BLOB requests
72 * must be aligned to that value.
73 */
74#define VIRTIO_GPU_F_BLOB_ALIGNMENT 5
67 75
68enum virtio_gpu_ctrl_type {76enum virtio_gpu_ctrl_type {
69 VIRTIO_GPU_UNDEFINED = 0,77 VIRTIO_GPU_UNDEFINED = 0,
@@ -365,6 +373,7 @@ struct virtio_gpu_config { · 295 unmodified lines
365 __le32 events_clear;373 __le32 events_clear;
366 __le32 num_scanouts;374 __le32 num_scanouts;
367 __le32 num_capsets;375 __le32 num_capsets;
376 __le32 blob_alignment;
368};377};
369 378
370/* simple formats for fbcon/X use */379/* simple formats for fbcon/X use */