linux/drivers/gpu/drm
Christian König 7bc80a5462 dma-buf: add enum dma_resv_usage v4
This change adds the dma_resv_usage enum and allows us to specify why a
dma_resv object is queried for its containing fences.

Additional to that a dma_resv_usage_rw() helper function is added to aid
retrieving the fences for a read or write userspace submission.

This is then deployed to the different query functions of the dma_resv
object and all of their users. When the write paratermer was previously
true we now use DMA_RESV_USAGE_WRITE and DMA_RESV_USAGE_READ otherwise.

v2: add KERNEL/OTHER in separate patch
v3: some kerneldoc suggestions by Daniel
v4: some more kerneldoc suggestions by Daniel, fix missing cases lost in
    the rebase pointed out by Bas.

Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20220407085946.744568-2-christian.koenig@amd.com
2022-04-07 12:53:53 +02:00
..
amd dma-buf: add enum dma_resv_usage v4 2022-04-07 12:53:53 +02:00
arm Merge drm/drm-next into drm-misc-next 2022-04-05 11:06:58 +02:00
armada Driver core changes for 5.18-rc1 2022-03-28 12:41:28 -07:00
aspeed
ast
atmel-hlcdc
bridge drm: bridge: icn6211: Drop I2C module owner assignment 2022-04-06 11:23:46 +02:00
dp
etnaviv dma-buf: add enum dma_resv_usage v4 2022-04-07 12:53:53 +02:00
exynos Merge drm/drm-next into drm-misc-next 2022-04-05 11:06:58 +02:00
fsl-dcu
gma500 drm/gma500: fix a missing break in psb_intel_crtc_mode_set 2022-04-06 09:38:11 +02:00
gud
hisilicon Driver core changes for 5.18-rc1 2022-03-28 12:41:28 -07:00
hyperv
i2c
i810
i915 dma-buf: add enum dma_resv_usage v4 2022-04-07 12:53:53 +02:00
imx Merge drm/drm-next into drm-misc-next 2022-04-05 11:06:58 +02:00
ingenic drm/ingenic: Add ingenic_drm_bridge_atomic_enable and disable 2022-04-05 21:41:35 +01:00
kmb
lib
lima dma-buf/drivers: make reserving a shared slot mandatory v4 2022-04-06 17:38:25 +02:00
mcde Merge drm/drm-next into drm-misc-next 2022-04-05 11:06:58 +02:00
mediatek Merge drm/drm-next into drm-misc-next 2022-04-05 11:06:58 +02:00
meson Merge drm/drm-next into drm-misc-next 2022-04-05 11:06:58 +02:00
mga
mgag200 drm for 5.18-rc1 2022-03-24 16:19:43 -07:00
msm dma-buf: add enum dma_resv_usage v4 2022-04-07 12:53:53 +02:00
mxsfb
nouveau dma-buf: add enum dma_resv_usage v4 2022-04-07 12:53:53 +02:00
omapdrm Merge drm/drm-next into drm-misc-next 2022-04-05 11:06:58 +02:00
panel drm/panel: innolux-ej030na and abt-y030xx067a: add .enable and .disable 2022-04-05 21:41:36 +01:00
panfrost dma-buf: add enum dma_resv_usage v4 2022-04-07 12:53:53 +02:00
pl111
qxl dma-buf: add enum dma_resv_usage v4 2022-04-07 12:53:53 +02:00
r128
radeon dma-buf: add enum dma_resv_usage v4 2022-04-07 12:53:53 +02:00
rcar-du
rockchip Driver core changes for 5.18-rc1 2022-03-28 12:41:28 -07:00
savage
scheduler dma-buf: add enum dma_resv_usage v4 2022-04-07 12:53:53 +02:00
selftests Merge drm/drm-next into drm-misc-next 2022-04-05 11:06:58 +02:00
shmobile
sis
solomon Merge drm/drm-next into drm-misc-next 2022-04-05 11:06:58 +02:00
sprd Driver core changes for 5.18-rc1 2022-03-28 12:41:28 -07:00
sti drm/sti: fix typos in comments 2022-04-07 11:31:52 +02:00
stm stm: ltdc: fix two incorrect NULL checks on list iterator 2022-04-07 10:26:59 +02:00
sun4i Driver core changes for 5.18-rc1 2022-03-28 12:41:28 -07:00
tdfx
tegra
tidss
tilcdc tilcdc: tilcdc_external: fix an incorrect NULL check on list iterator 2022-03-29 13:58:58 +03:00
tiny Merge drm/drm-next into drm-misc-next 2022-04-05 11:06:58 +02:00
ttm dma-buf: add enum dma_resv_usage v4 2022-04-07 12:53:53 +02:00
tve200
udl
v3d dma-buf/drivers: make reserving a shared slot mandatory v4 2022-04-06 17:38:25 +02:00
vboxvideo
vc4 dma-buf/drivers: make reserving a shared slot mandatory v4 2022-04-06 17:38:25 +02:00
vgem dma-buf: add enum dma_resv_usage v4 2022-04-07 12:53:53 +02:00
via
virtio dma-buf: add enum dma_resv_usage v4 2022-04-07 12:53:53 +02:00
vkms
vmwgfx dma-buf: add enum dma_resv_usage v4 2022-04-07 12:53:53 +02:00
xen xen: branch for v5.18-rc1 2022-03-28 14:32:39 -07:00
xlnx
drm_agpsupport.c
drm_aperture.c
drm_atomic.c drm/atomic: Add atomic_print_state to private objects 2022-03-31 10:19:45 +02:00
drm_atomic_helper.c
drm_atomic_state_helper.c
drm_atomic_uapi.c Merge drm/drm-next into drm-misc-next 2022-04-05 11:06:58 +02:00
drm_auth.c
drm_blend.c
drm_bridge.c
drm_bridge_connector.c
drm_buddy.c
drm_bufs.c
drm_cache.c drm for 5.18-rc1 2022-03-24 16:19:43 -07:00
drm_client.c
drm_client_modeset.c
drm_color_mgmt.c
drm_connector.c
drm_context.c
drm_crtc.c
drm_crtc_helper.c
drm_crtc_helper_internal.h
drm_crtc_internal.h
drm_damage_helper.c
drm_debugfs.c
drm_debugfs_crc.c
drm_displayid.c
drm_dma.c
drm_drv.c
drm_dsc.c
drm_dumb_buffers.c
drm_edid.c Merge drm/drm-next into drm-misc-next 2022-04-05 11:06:58 +02:00
drm_edid_load.c
drm_encoder.c
drm_encoder_slave.c
drm_fb_cma_helper.c
drm_fb_helper.c
drm_file.c
drm_flip_work.c
drm_format_helper.c drm/format_helper: fix a kernel-doc typo 2022-04-04 18:01:28 +02:00
drm_fourcc.c
drm_framebuffer.c
drm_gem.c dma-buf: add enum dma_resv_usage v4 2022-04-07 12:53:53 +02:00
drm_gem_atomic_helper.c dma-buf: add enum dma_resv_usage v4 2022-04-07 12:53:53 +02:00
drm_gem_cma_helper.c
drm_gem_framebuffer_helper.c
drm_gem_shmem_helper.c
drm_gem_ttm_helper.c
drm_gem_vram_helper.c Merge drm/drm-next into drm-misc-next 2022-04-05 11:06:58 +02:00
drm_hashtab.c
drm_hdcp.c
drm_internal.h
drm_ioc32.c
drm_ioctl.c
drm_irq.c
drm_kms_helper_common.c
drm_lease.c
drm_legacy.h
drm_legacy_misc.c
drm_lock.c
drm_managed.c
drm_memory.c
drm_mipi_dbi.c
drm_mipi_dsi.c
drm_mm.c
drm_mode_config.c
drm_mode_object.c
drm_modes.c
drm_modeset_helper.c
drm_modeset_lock.c
drm_nomodeset.c
drm_of.c Driver core changes for 5.18-rc1 2022-03-28 12:41:28 -07:00
drm_panel.c
drm_panel_orientation_quirks.c
drm_pci.c
drm_plane.c
drm_plane_helper.c
drm_prime.c
drm_print.c
drm_privacy_screen.c
drm_privacy_screen_x86.c
drm_probe_helper.c
drm_property.c
drm_rect.c
drm_scatter.c
drm_scdc_helper.c
drm_self_refresh_helper.c
drm_simple_kms_helper.c
drm_syncobj.c
drm_sysfs.c
drm_trace.h
drm_trace_points.c
drm_vblank.c
drm_vblank_work.c
drm_vm.c
drm_vma_manager.c
drm_writeback.c
Kconfig
Makefile