linux-xiaomi-chiron/drivers/gpu/drm
Linus Torvalds 1d239c1eb8 IOMMU Updates for Linux v5.20/v6.0:
Including:
 
 	- Most intrusive patch is small and changes the default
 	  allocation policy for DMA addresses. Before the change the
 	  allocator tried its best to find an address in the first 4GB.
 	  But that lead to performance problems when that space gets
 	  exhaused, and since most devices are capable of 64-bit DMA
 	  these days, we changed it to search in the full DMA-mask
 	  range from the beginning.  This change has the potential to
 	  uncover bugs elsewhere, in the kernel or the hardware. There
 	  is a Kconfig option and a command line option to restore the
 	  old behavior, but none of them is enabled by default.
 
 	- Add Robin Murphy as reviewer of IOMMU code and maintainer for
 	  the dma-iommu and iova code
 
 	- Chaning IOVA magazine size from 1032 to 1024 bytes to save
 	  memory
 
 	- Some core code cleanups and dead-code removal
 
 	- Support for ACPI IORT RMR node
 
 	- Support for multiple PCI domains in the AMD-Vi driver
 
 	- ARM SMMU changes from Will Deacon:
 
 	  - Add even more Qualcomm device-tree compatible strings
 
 	  - Support dumping of IMP DEF Qualcomm registers on TLB sync
 	    timeout
 
 	  - Fix reference count leak on device tree node in Qualcomm
 	    driver
 
 	- Intel VT-d driver updates from Lu Baolu:
 
 	  - Make intel-iommu.h private
 
 	  - Optimize the use of two locks
 
 	  - Extend the driver to support large-scale platforms
 
 	  - Cleanup some dead code
 
 	- MediaTek IOMMU refactoring and support for TTBR up to 35bit
 
 	- Basic support for Exynos SysMMU v7
 
 	- VirtIO IOMMU driver gets a map/unmap_pages() implementation
 
 	- Other smaller cleanups and fixes
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEr9jSbILcajRFYWYyK/BELZcBGuMFAmLs3DIACgkQK/BELZcB
 GuMizhAAguAnLLOkOLlR9/MhrTZfNXCUX+bfrEIevjFXMw4iPNfCCr4ydQ7EdVK6
 ZA/3Z89huYl0d0x/FELolnQi+HOeqYrfTDe4rB7TgNgwZnWa+fdHcyYkgBGyfPaV
 ilgjNcx8o//9o4NasyB6kU395jVmFxb735gMTTb+tcO9fr+/qIB6hxrHuCklxrNr
 C7wK6kkoDPi5n0QuXCSjXEx2Hk245pAWKPLwqxsUYzHGlLfl7ULOxw65BUBGvn/H
 uCsTfJFu7u+ErwQYf0qPuOwRBnRdsx9g5EAnfab8p074SoKWvbNnftIxgIRp8ZEM
 YgCbhYa1GOFI4r+XzqRzEbc0/vPSttims4Jqz0KxYs7pr5EoVifrWLJFjJdCdc2h
 Tio1gTvOq8HbH63kwYNKJhg4iSC6zVd37ihEhvfFO6LcgFl4iCfd2o9zK7oY40J4
 XoOxofVnJ2e3tzdhZ/n5quCXiudHixm6WuVa7QYKscF7Ud0tY1wWKuibdlMQTeNM
 68MvtlteKcfs1BrWzZyrFMrFeAfIY8LI82y6jdJuoNMU5LE9+5yelXBdJhnVygZ+
 Jglv1TIt6W/z1H5JgXtNVZ1wWgBm7rurOqNyfN8XCd8eP1z321CLfX8ujkhKrIWP
 ApG15cwvpnh1JX630+UFiEikTGU0fb2orMdPwYmwuu8DAsoLVHE=
 =hI2K
 -----END PGP SIGNATURE-----

Merge tag 'iommu-updates-v5.20-or-v6.0' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu

Pull iommu updates from Joerg Roedel:

 - The most intrusive patch is small and changes the default allocation
   policy for DMA addresses.

   Before the change the allocator tried its best to find an address in
   the first 4GB. But that lead to performance problems when that space
   gets exhaused, and since most devices are capable of 64-bit DMA these
   days, we changed it to search in the full DMA-mask range from the
   beginning.

   This change has the potential to uncover bugs elsewhere, in the
   kernel or the hardware. There is a Kconfig option and a command line
   option to restore the old behavior, but none of them is enabled by
   default.

 - Add Robin Murphy as reviewer of IOMMU code and maintainer for the
   dma-iommu and iova code

 - Chaning IOVA magazine size from 1032 to 1024 bytes to save memory

 - Some core code cleanups and dead-code removal

 - Support for ACPI IORT RMR node

 - Support for multiple PCI domains in the AMD-Vi driver

 - ARM SMMU changes from Will Deacon:
      - Add even more Qualcomm device-tree compatible strings
      - Support dumping of IMP DEF Qualcomm registers on TLB sync
        timeout
      - Fix reference count leak on device tree node in Qualcomm driver

 - Intel VT-d driver updates from Lu Baolu:
      - Make intel-iommu.h private
      - Optimize the use of two locks
      - Extend the driver to support large-scale platforms
      - Cleanup some dead code

 - MediaTek IOMMU refactoring and support for TTBR up to 35bit

 - Basic support for Exynos SysMMU v7

 - VirtIO IOMMU driver gets a map/unmap_pages() implementation

 - Other smaller cleanups and fixes

* tag 'iommu-updates-v5.20-or-v6.0' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (116 commits)
  iommu/amd: Fix compile warning in init code
  iommu/amd: Add support for AVIC when SNP is enabled
  iommu/amd: Simplify and Consolidate Virtual APIC (AVIC) Enablement
  ACPI/IORT: Fix build error implicit-function-declaration
  drivers: iommu: fix clang -wformat warning
  iommu/arm-smmu: qcom_iommu: Add of_node_put() when breaking out of loop
  iommu/arm-smmu-qcom: Add SM6375 SMMU compatible
  dt-bindings: arm-smmu: Add compatible for Qualcomm SM6375
  MAINTAINERS: Add Robin Murphy as IOMMU SUBSYTEM reviewer
  iommu/amd: Do not support IOMMUv2 APIs when SNP is enabled
  iommu/amd: Do not support IOMMU_DOMAIN_IDENTITY after SNP is enabled
  iommu/amd: Set translation valid bit only when IO page tables are in use
  iommu/amd: Introduce function to check and enable SNP
  iommu/amd: Globally detect SNP support
  iommu/amd: Process all IVHDs before enabling IOMMU features
  iommu/amd: Introduce global variable for storing common EFR and EFR2
  iommu/amd: Introduce Support for Extended Feature 2 Register
  iommu/amd: Change macro for IOMMU control register bit shift to decimal value
  iommu/exynos: Enable default VM instance on SysMMU v7
  iommu/exynos: Add SysMMU v7 register set
  ...
2022-08-06 10:42:38 -07:00
..
amd - The usual batches of cleanups from Baoquan He, Muchun Song, Miaohe 2022-08-05 16:32:45 -07:00
arm drm: Remove linux/fb.h from drm_crtc.h 2022-07-05 21:14:02 +03:00
armada drm: Remove linux/fb.h from drm_crtc.h 2022-07-05 21:14:02 +03:00
aspeed drm: Drop drm_framebuffer.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
ast drm/ast: Enable primary plane with CRTC 2022-06-27 11:10:43 +02:00
atmel-hlcdc drm: Remove linux/media-bus-format.h from drm_crtc.h 2022-07-05 21:15:13 +03:00
bridge sound updates for 6.0-rc1 2022-08-06 10:19:51 -07:00
display drm: Remove linux/fb.h from drm_crtc.h 2022-07-05 21:14:02 +03:00
etnaviv Merge branch 'etnaviv/next' of https://git.pengutronix.de/git/lst/linux into drm-next 2022-05-17 12:20:04 +10:00
exynos sound updates for 6.0-rc1 2022-08-06 10:19:51 -07:00
fsl-dcu drm: Drop drm_framebuffer.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
gma500 drm: Drop drm_framebuffer.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
gud drm: Drop drm_blend.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
hisilicon drm: Remove linux/fb.h from drm_crtc.h 2022-07-05 21:14:02 +03:00
hyperv drm/hyperv-drm: Include framebuffer and EDID headers 2022-06-22 16:07:38 +02:00
i2c sound updates for 6.0-rc1 2022-08-06 10:19:51 -07:00
i810
i915 IOMMU Updates for Linux v5.20/v6.0: 2022-08-06 10:42:38 -07:00
imx drm for 5.20/6.0 2022-08-03 19:52:08 -07:00
ingenic drm: Remove linux/media-bus-format.h from drm_crtc.h 2022-07-05 21:15:13 +03:00
kmb drm: Remove linux/fb.h from drm_crtc.h 2022-07-05 21:14:02 +03:00
lib drm/selftests: add drm buddy alloc range testcase 2022-02-23 10:44:43 +01:00
lima dma-buf: specify usage while adding fences to dma_resv obj v7 2022-04-07 12:53:53 +02:00
logicvc drm/logicvc: add missing of_node_put() in logicvc_layers_init() 2022-06-24 17:23:38 +02:00
mcde drm: Remove linux/i2c.h from drm_crtc.h 2022-07-05 21:15:23 +03:00
mediatek Mediatek DRM Next for Linux 5.20 2022-07-12 17:01:42 +10:00
meson asm-generic: updates for 6.0 2022-08-05 10:07:23 -07:00
mga
mgag200 drm/mgag200: Don't read-back PCI option register before writing 2022-07-14 15:14:45 +02:00
msm - The usual batches of cleanups from Baoquan He, Muchun Song, Miaohe 2022-08-05 16:32:45 -07:00
mxsfb drm: Remove linux/media-bus-format.h from drm_crtc.h 2022-07-05 21:15:13 +03:00
nouveau drm for 5.20/6.0 2022-08-03 19:52:08 -07:00
omapdrm drm: Remove linux/fb.h from drm_crtc.h 2022-07-05 21:14:02 +03:00
panel drm for 5.20/6.0 2022-08-03 19:52:08 -07:00
panfrost - The usual batches of cleanups from Baoquan He, Muchun Song, Miaohe 2022-08-05 16:32:45 -07:00
pl111 drm: Remove linux/media-bus-format.h from drm_crtc.h 2022-07-05 21:15:13 +03:00
qxl drm: Drop drm_framebuffer.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
r128 drm/r128: Fix undefined behavior due to shift overflowing the constant 2022-05-21 18:02:47 +02:00
radeon drm/radeon: Fix comment typo 2022-07-25 09:31:02 -04:00
rcar-du Miscellaneous R-Car DU fixes and enhancements 2022-07-22 13:43:32 +10:00
rockchip drm for 5.20/6.0 2022-08-03 19:52:08 -07:00
savage
scheduler drm/scheduler: Don't kill jobs in interrupt context 2022-07-15 10:09:15 -04:00
selftests drm/display/selftests: drop extra word 'for' in comments for MST selftests 2022-06-28 18:53:20 -04:00
shmobile drm: shmobile: Use backlight helper 2022-06-24 21:45:28 +02:00
sis
solomon drm for 5.20/6.0 2022-08-03 19:52:08 -07:00
sprd drm: Drop drm_blend.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
sti sound updates for 6.0-rc1 2022-08-06 10:19:51 -07:00
stm drm: Remove linux/media-bus-format.h from drm_crtc.h 2022-07-05 21:15:13 +03:00
sun4i Linux 5.19-rc6 2022-07-13 10:54:56 +10:00
tdfx
tegra drm/tegra: Changes for v5.20-rc1 2022-07-12 16:50:05 +10:00
tests drm/format-helper: Add KUnit tests for drm_fb_xrgb8888_to_rgb332() 2022-06-27 13:45:53 +02:00
tidss drm: Remove linux/media-bus-format.h from drm_crtc.h 2022-07-05 21:15:13 +03:00
tilcdc drm: Remove linux/fb.h from drm_crtc.h 2022-07-05 21:14:02 +03:00
tiny drm for 5.20/6.0 2022-08-03 19:52:08 -07:00
ttm - The usual batches of cleanups from Baoquan He, Muchun Song, Miaohe 2022-08-05 16:32:45 -07:00
tve200 drm: Drop drm_framebuffer.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
udl drm: Drop drm_edid.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
v3d drm/v3d: Add support for bcm2711 2022-06-12 22:10:50 -01:00
vboxvideo drm: Drop drm_framebuffer.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
vc4 sound updates for 6.0-rc1 2022-08-06 10:19:51 -07:00
vgem dma-buf: specify usage while adding fences to dma_resv obj v7 2022-04-07 12:53:53 +02:00
via
virtio drm: Drop drm_framebuffer.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
vkms drm: Drop drm_framebuffer.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
vmwgfx drm: Remove linux/fb.h from drm_crtc.h 2022-07-05 21:14:02 +03:00
xen Linux 5.19-rc6 2022-07-13 10:54:56 +10:00
xlnx drm: xlnx: add <linux/io.h> for readl/writel 2022-07-06 22:54:51 +03:00
drm_agpsupport.c
drm_aperture.c drm/aperture: Run fbdev removal before internal helpers 2022-07-09 11:12:05 -07:00
drm_atomic.c drm: Drop drm_blend.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
drm_atomic_helper.c drm/atomic-helper: Add helper drm_atomic_helper_check_crtc_state() 2022-06-27 11:10:43 +02:00
drm_atomic_state_helper.c drm: Drop drm_blend.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
drm_atomic_uapi.c drm: Drop drm_framebuffer.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
drm_auth.c
drm_blend.c drm/doc: Fix comment typo 2022-06-28 07:56:32 +02:00
drm_bridge.c drm: Remove linux/media-bus-format.h from drm_crtc.h 2022-07-05 21:15:13 +03:00
drm_bridge_connector.c drm: Config orientation property if panel provides it 2022-06-21 08:52:59 -07:00
drm_buddy.c drm: add a check to verify the size alignment 2022-04-11 15:35:47 +02:00
drm_bufs.c
drm_cache.c drm for 5.18-rc1 2022-03-24 16:19:43 -07:00
drm_client.c dma-buf-map: Rename to iosys-map 2022-02-07 16:35:35 -08:00
drm_client_modeset.c drm: Drop drm_edid.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
drm_color_mgmt.c drm: fix typo in comment 2022-05-04 14:09:34 +02:00
drm_connector.c drm: Remove linux/fb.h from drm_crtc.h 2022-07-05 21:14:02 +03:00
drm_context.c
drm_crtc.c drm: Drop drm_blend.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
drm_crtc_helper.c drm: Drop drm_framebuffer.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
drm_crtc_helper_internal.h
drm_crtc_internal.h drm/edid: abstract debugfs override EDID set/reset 2022-06-30 10:50:59 +03:00
drm_damage_helper.c drm: Drop drm_framebuffer.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
drm_debugfs.c drm/edid: abstract debugfs override EDID set/reset 2022-06-30 10:50:59 +03:00
drm_debugfs_crc.c
drm_displayid.c drm/displayid: convert to drm_edid 2022-05-13 18:55:13 +03:00
drm_dma.c
drm_drv.c
drm_dumb_buffers.c
drm_edid.c drm/edid: take HF-EEODB extension count into account 2022-06-30 10:51:12 +03:00
drm_edid_load.c
drm_encoder.c drm: use ENOMEM for drmm_kzalloc allocation failures 2022-05-25 17:39:49 +02:00
drm_encoder_slave.c
drm_fb_cma_helper.c
drm_fb_helper.c drm/fb-helper: Fix out-of-bounds access 2022-06-27 11:10:43 +02:00
drm_file.c fs: remove no_llseek 2022-07-16 09:19:47 -04:00
drm_flip_work.c
drm_format_helper.c drm/format-helper: Share implementation among conversion helpers 2022-05-05 08:54:09 +02:00
drm_fourcc.c
drm_framebuffer.c drm: introduce fb_modifiers_not_supported flag in mode_config 2022-01-31 21:45:23 +01:00
drm_gem.c dma-buf: add enum dma_resv_usage v4 2022-04-07 12:53:53 +02:00
drm_gem_atomic_helper.c drm: Drop drm_framebuffer.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
drm_gem_cma_helper.c drm/cma-helper: Describe what a "contiguous chunk" actually means 2022-06-08 17:36:15 +02:00
drm_gem_framebuffer_helper.c drm/gem: Warn on trying to use a non-existing framebuffer plane 2022-05-19 19:25:23 +02:00
drm_gem_shmem_helper.c drm-misc-next for v5.18: 2022-02-25 05:50:18 +10:00
drm_gem_ttm_helper.c drm/ttm: fix locking in vmap/vunmap TTM GEM helpers 2022-07-18 09:18:53 +02:00
drm_gem_vram_helper.c drm/gem-vram: Ignore planes that are unused by framebuffer format 2022-05-19 19:25:19 +02:00
drm_hashtab.c
drm_internal.h dma-buf-map: Rename to iosys-map 2022-02-07 16:35:35 -08:00
drm_ioc32.c
drm_ioctl.c GPU: drm: drop unexpected word "the" in the comments 2022-06-22 09:23:08 +02:00
drm_irq.c
drm_kms_helper_common.c drm: Drop drm_edid.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
drm_lease.c
drm_legacy.h
drm_legacy_misc.c
drm_lock.c
drm_managed.c drm: Add DRM-managed mutex_init() 2022-05-05 09:04:10 +02:00
drm_memory.c
drm_mipi_dbi.c drm: Remove linux/fb.h from drm_crtc.h 2022-07-05 21:14:02 +03:00
drm_mipi_dsi.c drm/display: Move DSC header and helpers into display-helper module 2022-04-25 11:19:36 +02:00
drm_mm.c
drm_mode_config.c drm: Drop drm_framebuffer.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
drm_mode_object.c drm/object: Add drm_object_property_get_default_value() function 2022-02-25 17:55:42 +01:00
drm_modes.c drm: Remove linux/fb.h from drm_crtc.h 2022-07-05 21:14:02 +03:00
drm_modeset_helper.c drm: Drop drm_framebuffer.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
drm_modeset_lock.c
drm_nomodeset.c
drm_of.c drm: Remove linux/media-bus-format.h from drm_crtc.h 2022-07-05 21:15:13 +03:00
drm_panel.c
drm_panel_orientation_quirks.c drm for 5.20/6.0 2022-08-03 19:52:08 -07:00
drm_pci.c
drm_plane.c drm/plane: Move range check for format_count earlier 2022-04-28 16:13:04 +01:00
drm_plane_helper.c
drm_prime.c drm/prime: drop unexpected word "the" in the comments 2022-06-22 09:22:05 +02:00
drm_print.c
drm_privacy_screen.c drm-misc-next for v5.18: 2022-02-25 05:50:18 +10:00
drm_privacy_screen_x86.c drm-misc-next for v5.18: 2022-02-01 19:02:41 +10:00
drm_probe_helper.c drm/probe-helper: add drm_connector_helper_get_modes() 2022-06-30 10:51:03 +03:00
drm_property.c
drm_rect.c
drm_scatter.c
drm_self_refresh_helper.c
drm_simple_kms_helper.c drm/simple-kms: Use drm_atomic_helper_check_crtc_state() 2022-06-27 11:10:43 +02:00
drm_syncobj.c drm/syncobj: add missing error return code in drm_syncobj_transfer_to_timeline() 2022-06-13 08:54:16 +02:00
drm_sysfs.c
drm_trace.h
drm_trace_points.c
drm_vblank.c drm: Use drm_mode_copy() 2022-04-12 09:27:20 +03:00
drm_vblank_work.c
drm_vm.c LoongArch: Add writecombine support for drm 2022-06-03 20:09:27 +08:00
drm_vma_manager.c
drm_writeback.c drm: Drop drm_framebuffer.h from drm_crtc.h 2022-06-20 23:53:55 +03:00
Kconfig Revert "drm/amdgpu: add drm buddy support to amdgpu" 2022-07-08 14:24:30 +02:00
Makefile drm: lcdif: Add support for i.MX8MP LCDIF variant 2022-06-29 01:44:48 +02:00