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 ...
Showing the changes to include/uapi/linux (2 of 1976 files). Show all
Unified · Split
| @@ -48,9 +48,10 @@ · 47 unmodified lines | |||
| 48 | * - 1.20 - Trap handler support for expert scheduling mode available | 48 | * - 1.20 - Trap handler support for expert scheduling mode available |
| 49 | * - 1.21 - Debugger support to subscribe to LDS out-of-address exceptions | 49 | * - 1.21 - Debugger support to subscribe to LDS out-of-address exceptions |
| 50 | * - 1.22 - Add queue creation with metadata ring base address | 50 | * - 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 1 | 53 | #define KFD_IOCTL_MAJOR_VERSION 1 |
| 53 | #define KFD_IOCTL_MINOR_VERSION 22 | 54 | #define KFD_IOCTL_MINOR_VERSION 23 |
| 54 | 55 | ||
| 55 | struct kfd_ioctl_get_version_args { | 56 | struct 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 | ||
| 1563 | enum 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 | */ | ||
| 1572 | struct 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 | |||
| 1578 | struct 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 | |||
| 1583 | struct 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 0x01 | 1718 | #define AMDKFD_COMMAND_START 0x01 |
| 1685 | #define AMDKFD_COMMAND_END 0x28 | 1719 | #define AMDKFD_COMMAND_END 0x29 |
| 1686 | 1720 | ||
| 1687 | #endif | 1721 | #endif |
| @@ -64,6 +64,14 @@ · 63 unmodified lines | |||
| 64 | * context_init and multiple timelines | 64 | * context_init and multiple timelines |
| 65 | */ | 65 | */ |
| 66 | #define VIRTIO_GPU_F_CONTEXT_INIT 4 | 66 | #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 | ||
| 68 | enum virtio_gpu_ctrl_type { | 76 | enum 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 */ |