diff --git a/arch/arm64/configs/bcm2711_defconfig b/arch/arm64/configs/bcm2711_defconfig index 7ff3838b59975a..5d968cafb8ac81 100644 --- a/arch/arm64/configs/bcm2711_defconfig +++ b/arch/arm64/configs/bcm2711_defconfig @@ -1064,6 +1064,12 @@ CONFIG_AUXDISPLAY=y CONFIG_HD44780=m CONFIG_DRM=m CONFIG_DRM_LOAD_EDID_FIRMWARE=y +CONFIG_DRM_RADEON=m +CONFIG_DRM_AMDGPU=m +CONFIG_DRM_AMDGPU_SI=y +CONFIG_DRM_AMDGPU_CIK=y +CONFIG_DRM_XE=m +CONFIG_DRM_XE_FORCE_PROBE="*" CONFIG_DRM_UDL=m CONFIG_DRM_PANEL_LVDS=m CONFIG_DRM_PANEL_ILITEK_ILI9806E=m @@ -1126,6 +1132,9 @@ CONFIG_SND_SERIAL_U16550=m CONFIG_SND_MPU401=m CONFIG_SND_PIMIDI=m CONFIG_SND_PISOUND_MICRO=m +CONFIG_SND_HDA_INTEL=m +CONFIG_SND_HDA_GENERIC=m +CONFIG_SND_HDA_CODEC_HDMI=m CONFIG_SND_USB_AUDIO=m CONFIG_SND_USB_UA101=m CONFIG_SND_USB_CAIAQ=m diff --git a/arch/arm64/configs/bcm2712_defconfig b/arch/arm64/configs/bcm2712_defconfig index 593a1af178e9c8..193849c2a8f04f 100644 --- a/arch/arm64/configs/bcm2712_defconfig +++ b/arch/arm64/configs/bcm2712_defconfig @@ -1066,6 +1066,12 @@ CONFIG_AUXDISPLAY=y CONFIG_HD44780=m CONFIG_DRM=m CONFIG_DRM_LOAD_EDID_FIRMWARE=y +CONFIG_DRM_RADEON=m +CONFIG_DRM_AMDGPU=m +CONFIG_DRM_AMDGPU_SI=y +CONFIG_DRM_AMDGPU_CIK=y +CONFIG_DRM_XE=m +CONFIG_DRM_XE_FORCE_PROBE="*" CONFIG_DRM_UDL=m CONFIG_DRM_PANEL_LVDS=m CONFIG_DRM_PANEL_ILITEK_ILI9806E=m @@ -1128,6 +1134,9 @@ CONFIG_SND_SERIAL_U16550=m CONFIG_SND_MPU401=m CONFIG_SND_PIMIDI=m CONFIG_SND_PISOUND_MICRO=m +CONFIG_SND_HDA_INTEL=m +CONFIG_SND_HDA_GENERIC=m +CONFIG_SND_HDA_CODEC_HDMI=m CONFIG_SND_USB_AUDIO=m CONFIG_SND_USB_UA101=m CONFIG_SND_USB_CAIAQ=m diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c index 56781819f9143b..3296dd412dca52 100644 --- a/drivers/gpu/drm/i915/display/intel_display.c +++ b/drivers/gpu/drm/i915/display/intel_display.c @@ -7653,6 +7653,7 @@ int intel_atomic_commit(struct drm_device *dev, struct drm_atomic_state *_state, * FIXME: Cut over to (async) commit helpers instead of hand-rolling * everything. */ +#if defined(CONFIG_VGA_CONSOLE) if (state->base.legacy_cursor_update) { struct intel_crtc_state *new_crtc_state; struct intel_crtc *crtc; @@ -7661,7 +7662,7 @@ int intel_atomic_commit(struct drm_device *dev, struct drm_atomic_state *_state, for_each_new_intel_crtc_in_state(state, crtc, new_crtc_state, i) complete_all(&new_crtc_state->uapi.commit->flip_done); } - +#endif ret = intel_atomic_prepare_commit(state); if (ret) { drm_dbg_atomic(display->drm, diff --git a/drivers/gpu/drm/i915/display/intel_vga.c b/drivers/gpu/drm/i915/display/intel_vga.c index 6e125564db34c9..31d3f1f504d26f 100644 --- a/drivers/gpu/drm/i915/display/intel_vga.c +++ b/drivers/gpu/drm/i915/display/intel_vga.c @@ -78,6 +78,7 @@ void intel_vga_disable(struct intel_display *display) void intel_vga_reset_io_mem(struct intel_display *display) { +#if defined(CONFIG_VGA_CONSOLE) struct pci_dev *pdev = to_pci_dev(display->drm->dev); /* @@ -93,6 +94,7 @@ void intel_vga_reset_io_mem(struct intel_display *display) vga_get_uninterruptible(pdev, VGA_RSRC_LEGACY_IO); outb(inb(VGA_MIS_R), VGA_MIS_W); vga_put(pdev, VGA_RSRC_LEGACY_IO); +#endif } int intel_vga_register(struct intel_display *display) diff --git a/drivers/gpu/drm/ttm/ttm_bo_util.c b/drivers/gpu/drm/ttm/ttm_bo_util.c index acbbca9d5c92f0..7c694b887df652 100644 --- a/drivers/gpu/drm/ttm/ttm_bo_util.c +++ b/drivers/gpu/drm/ttm/ttm_bo_util.c @@ -359,7 +359,8 @@ static int ttm_bo_kmap_ttm(struct ttm_buffer_object *bo, if (ret) return ret; - if (num_pages == 1 && ttm->caching == ttm_cached && + if (!IS_ENABLED(CONFIG_ARM64) && + num_pages == 1 && ttm->caching == ttm_cached && !(man->use_tt && (ttm->page_flags & TTM_TT_FLAG_DECRYPTED))) { /* * We're mapping a single page, and the desired diff --git a/drivers/gpu/drm/ttm/ttm_module.c b/drivers/gpu/drm/ttm/ttm_module.c index b3fffe7b5062a9..6966495bdd499b 100644 --- a/drivers/gpu/drm/ttm/ttm_module.c +++ b/drivers/gpu/drm/ttm/ttm_module.c @@ -63,7 +63,11 @@ pgprot_t ttm_prot_from_caching(enum ttm_caching caching, pgprot_t tmp) { /* Cached mappings need no adjustment */ if (caching == ttm_cached) +#ifdef CONFIG_ARM64 + return pgprot_dmacoherent(tmp); +#else return tmp; +#endif #if defined(__i386__) || defined(__x86_64__) if (caching == ttm_write_combined)