From: Linus Torvalds Date: Wed, 25 May 2022 23:18:27 +0000 (-0700) Subject: Merge tag 'drm-next-2022-05-25' of git://anongit.freedesktop.org/drm/drm X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=2518f226c60d8e04d18ba4295500a5b0b8ac7659;p=linux.git Merge tag 'drm-next-2022-05-25' of git://anongit.freedesktop.org/drm/drm Pull drm updates from Dave Airlie: "Intel have enabled DG2 on certain SKUs for laptops, AMD has started some new GPU support, msm has user allocated VA controls dma-buf: - add dma_resv_replace_fences - add dma_resv_get_singleton - make dma_excl_fence private core: - EDID parser refactorings - switch drivers to drm_mode_copy/duplicate - DRM managed mutex initialization display-helper: - put HDMI, SCDC, HDCP, DSC and DP into new module gem: - rework fence handling ttm: - rework bulk move handling - add common debugfs for resource managers - convert to kvcalloc format helpers: - support monochrome formats - RGB888, RGB565 to XRGB8888 conversions fbdev: - cfb/sys_imageblit fixes - pagelist corruption fix - create offb platform device - deferred io improvements sysfb: - Kconfig rework - support for VESA mode selection bridge: - conversions to devm_drm_of_get_bridge - conversions to panel_bridge - analogix_dp - autosuspend support - it66121 - audio support - tc358767 - DSI to DPI support - icn6211 - PLL/I2C fixes, DT property - adv7611 - enable DRM_BRIDGE_OP_HPD - anx7625 - fill ELD if no monitor - dw_hdmi - add audio support - lontium LT9211 support, i.MXMP LDB - it6505: Kconfig fix, DPCD set power fix - adv7511 - CEC support for ADV7535 panel: - ltk035c5444t, B133UAN01, NV3052C panel support - DataImage FG040346DSSWBG04 support - st7735r - DT bindings fix - ssd130x - fixes i915: - DG2 laptop PCI-IDs ("motherboard down") - Initial RPL-P PCI IDs - compute engine ABI - DG2 Tile4 support - DG2 CCS clear color compression support - DG2 render/media compression formats support - ATS-M platform info - RPL-S PCI IDs added - Bump ADL-P DMC version to v2.16 - Support static DRRS - Support multiple eDP/LVDS native mode refresh rates - DP HDR support for HSW+ - Lots of display refactoring + fixes - GuC hwconfig support and query - sysfs support for multi-tile - fdinfo per-client gpu utilisation - add geometry subslices query - fix prime mmap with LMEM - fix vm open count and remove vma refcounts - contiguous allocation fixes - steered register write support - small PCI BAR enablement - GuC error capture support - sunset igpu legacy mmap support for newer devices - GuC version 70.1.1 support amdgpu: - Initial SoC21 support - SMU 13.x enablement - SMU 13.0.4 support - ttm_eu cleanups - USB-C, GPUVM updates - TMZ fixes for RV - RAS support for VCN - PM sysfs code cleanup - DC FP rework - extend CG/PG flags to 64-bit - SI dpm lockdep fix - runtime PM fixes amdkfd: - RAS/SVM fixes - TLB flush fixes - CRIU GWS support - ignore bogus MEC signals more efficiently msm: - Fourcc modifier for tiled but not compressed layouts - Support for userspace allocated IOVA (GPU virtual address) - DPU: DSC (Display Stream Compression) support - DP: eDP support - DP: conversion to use drm_bridge and drm_bridge_connector - Merge DPU1 and MDP5 MDSS driver - DPU: writeback support nouveau: - make some structures static - make some variables static - switch to drm_gem_plane_helper_prepare_fb radeon: - misc fixes/cleanups mxsfb: - rework crtc mode setting - LCDIF CRC support etnaviv: - fencing improvements - fix address space collisions - cleanup MMU reference handling gma500: - GEM/GTT improvements - connector handling fixes komeda: - switch to plane reset helper mediatek: - MIPI DSI improvements omapdrm: - GEM improvements qxl: - aarch64 support vc4: - add a CL submission tracepoint - HDMI YUV support - HDMI/clock improvements - drop is_hdmi caching virtio: - remove restriction of non-zero blob types vmwgfx: - support for cursormob and cursorbypass 4 - fence improvements tidss: - reset DISPC on startup solomon: - SPI support - DT improvements sun4i: - allwinner D1 support - drop is_hdmi caching imx: - use swap() instead of open-coding - use devm_platform_ioremap_resource - remove redunant initializations ast: - Displayport support rockchip: - Refactor IOMMU initialisation - make some structures static - replace drm_detect_hdmi_monitor with drm_display_info.is_hdmi - support swapped YUV formats, - clock improvements - rk3568 support - VOP2 support mediatek: - MT8186 support tegra: - debugabillity improvements" * tag 'drm-next-2022-05-25' of git://anongit.freedesktop.org/drm/drm: (1740 commits) drm/i915/dsi: fix VBT send packet port selection for ICL+ drm/i915/uc: Fix undefined behavior due to shift overflowing the constant drm/i915/reg: fix undefined behavior due to shift overflowing the constant drm/i915/gt: Fix use of static in macro mismatch drm/i915/audio: fix audio code enable/disable pipe logging drm/i915: Fix CFI violation with show_dynamic_id() drm/i915: Fix 'mixing different enum types' warnings in intel_display_power.c drm/i915/gt: Fix build error without CONFIG_PM drm/msm/dpu: handle pm_runtime_get_sync() errors in bind path drm/msm/dpu: add DRM_MODE_ROTATE_180 back to supported rotations drm/msm: don't free the IRQ if it was not requested drm/msm/dpu: limit writeback modes according to max_linewidth drm/amd: Don't reset dGPUs if the system is going to s2idle drm/amdgpu: Unmap legacy queue when MES is enabled drm: msm: fix possible memory leak in mdp5_crtc_cursor_set() drm/msm: Fix fb plane offset calculation drm/msm/a6xx: Fix refcount leak in a6xx_gpu_init drm/msm/dsi: don't powerup at modeset time for parade-ps8640 drm/rockchip: Change register space names in vop2 dt-bindings: display: rockchip: make reg-names mandatory for VOP2 ... --- 2518f226c60d8e04d18ba4295500a5b0b8ac7659 diff --cc drivers/gpu/drm/bridge/Kconfig index 2145b08f9534,da3441830d46..307b135da2f6 --- a/drivers/gpu/drm/bridge/Kconfig +++ b/drivers/gpu/drm/bridge/Kconfig @@@ -77,8 -86,11 +86,12 @@@ config DRM_FSL_LD config DRM_ITE_IT6505 tristate "ITE IT6505 DisplayPort bridge" depends on OF + select DRM_DISPLAY_DP_HELPER + select DRM_DISPLAY_HDCP_HELPER + select DRM_DISPLAY_HELPER + select DRM_DP_AUX_BUS select DRM_KMS_HELPER + select DRM_DP_HELPER select EXTCON help ITE IT6505 DisplayPort bridge chip driver. diff --cc drivers/gpu/drm/i915/display/intel_dmc_regs.h index 000000000000,d65e698832eb..7853827988d4 mode 000000,100644..100644 --- a/drivers/gpu/drm/i915/display/intel_dmc_regs.h +++ b/drivers/gpu/drm/i915/display/intel_dmc_regs.h @@@ -1,0 -1,30 +1,46 @@@ + /* SPDX-License-Identifier: MIT */ + /* + * Copyright © 2022 Intel Corporation + */ + + #ifndef __INTEL_DMC_REGS_H__ + #define __INTEL_DMC_REGS_H__ + + #include "i915_reg_defs.h" + + #define DMC_PROGRAM(addr, i) _MMIO((addr) + (i) * 4) + #define DMC_SSP_BASE_ADDR_GEN9 0x00002FC0 + #define DMC_HTP_ADDR_SKL 0x00500034 + #define DMC_SSP_BASE _MMIO(0x8F074) + #define DMC_HTP_SKL _MMIO(0x8F004) + #define DMC_LAST_WRITE _MMIO(0x8F034) + #define DMC_LAST_WRITE_VALUE 0xc003b400 + #define DMC_MMIO_START_RANGE 0x80000 + #define DMC_MMIO_END_RANGE 0x8FFFF ++#define DMC_V1_MMIO_START_RANGE 0x80000 ++#define TGL_MAIN_MMIO_START 0x8F000 ++#define TGL_MAIN_MMIO_END 0x8FFFF ++#define _TGL_PIPEA_MMIO_START 0x92000 ++#define _TGL_PIPEA_MMIO_END 0x93FFF ++#define _TGL_PIPEB_MMIO_START 0x96000 ++#define _TGL_PIPEB_MMIO_END 0x97FFF ++#define ADLP_PIPE_MMIO_START 0x5F000 ++#define ADLP_PIPE_MMIO_END 0x5FFFF ++ ++#define TGL_PIPE_MMIO_START(dmc_id) _PICK_EVEN(((dmc_id) - 1), _TGL_PIPEA_MMIO_START,\ ++ _TGL_PIPEB_MMIO_START) ++ ++#define TGL_PIPE_MMIO_END(dmc_id) _PICK_EVEN(((dmc_id) - 1), _TGL_PIPEA_MMIO_END,\ ++ _TGL_PIPEB_MMIO_END) ++ + #define SKL_DMC_DC3_DC5_COUNT _MMIO(0x80030) + #define SKL_DMC_DC5_DC6_COUNT _MMIO(0x8002C) + #define BXT_DMC_DC3_DC5_COUNT _MMIO(0x80038) + #define TGL_DMC_DEBUG_DC5_COUNT _MMIO(0x101084) + #define TGL_DMC_DEBUG_DC6_COUNT _MMIO(0x101088) + #define DG1_DMC_DEBUG_DC5_COUNT _MMIO(0x134154) + + #define TGL_DMC_DEBUG3 _MMIO(0x101090) + #define DG1_DMC_DEBUG3 _MMIO(0x13415c) + + #endif /* __INTEL_DMC_REGS_H__ */ diff --cc drivers/gpu/drm/vc4/vc4_hdmi.c index 98b78ec6b37d,6aadb65eb640..823d812f4982 --- a/drivers/gpu/drm/vc4/vc4_hdmi.c +++ b/drivers/gpu/drm/vc4/vc4_hdmi.c @@@ -31,14 -31,13 +31,14 @@@ * encoder block has CEC support. */ + #include + #include #include - #include #include #include - #include #include #include +#include #include #include #include diff --cc drivers/of/platform.c index 241bd4f0afd8,176ed71d20c0..3507095a69f6 --- a/drivers/of/platform.c +++ b/drivers/of/platform.c @@@ -503,9 -507,7 +503,8 @@@ int of_platform_default_populate(struc } EXPORT_SYMBOL_GPL(of_platform_default_populate); - #ifndef CONFIG_PPC static const struct of_device_id reserved_mem_matches[] = { + { .compatible = "phram" }, { .compatible = "qcom,rmtfs-mem" }, { .compatible = "qcom,cmd-db" }, { .compatible = "qcom,smem" }, diff --cc include/linux/efi.h index db424f3dc3f2,0cbbc4103632..7d9b0bb47eb3 --- a/include/linux/efi.h +++ b/include/linux/efi.h @@@ -1349,18 -1329,6 +1349,14 @@@ static inline struct efi_mokvar_table_e } #endif - #ifdef CONFIG_SYSFB extern void efifb_setup_from_dmi(struct screen_info *si, const char *opt); - #else - static inline void efifb_setup_from_dmi(struct screen_info *si, const char *opt) { } - #endif +struct linux_efi_coco_secret_area { + u64 base_pa; + u64 size; +}; + +/* Header of a populated EFI secret area */ +#define EFI_SECRET_TABLE_HEADER_GUID EFI_GUID(0x1e74f542, 0x71dd, 0x4d66, 0x96, 0x3e, 0xef, 0x42, 0x87, 0xff, 0x17, 0x3b) + #endif /* _LINUX_EFI_H */