linux/include/drm
Daniel Vetter 30d23f220c drm/atomic: better doc for implicit vs explicit fencing
Note that a pile of drivers don't seem to take implicit fencing into
account, or at least don't call drm_atoimc_set_fence_for_plane().
Cc'ing relevant people, or at least some. Some drivers also look like
they don't disable implicit fencing (e.g. amdgpu) because the explicit
fences and implicit fences are handled by entirely independent code
paths.

I also wonder whether we shouldn't just make the recommended helpers
the default ones, since a lot of drivers don't bother to handle the
implicit fences at all it seems. The helpers won't blow up even for
non-GEM drivers or GEM drivers which don't fill out the gem bo
pointers in struct drm_framebuffer.

v2: Comments from Eric.

Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Alex Deucher <alexander.deucher@amd.com>
Cc: Harry Wentland <harry.wentland@amd.com>
Cc: Sinclair Yeh <syeh@vmware.com>
Cc: Thomas Hellstrom <thellstrom@vmware.com>
Cc: Gustavo Padovan <gustavo@padovan.org>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Sean Paul <seanpaul@chromium.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180405154449.23038-7-daniel.vetter@ffwll.ch
2018-04-24 14:01:15 +02:00
..
bridge drm/bridge: analogix_dp: Split the platform-specific poweron in two parts 2018-04-24 08:34:49 +02:00
i2c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
tinydrm drm: Move simple_display_pipe prepare_fb helper into gem fb helpers 2018-04-24 13:57:22 +02:00
ttm drm/ttm: Export the ttm_k[un]map_atomic_prot API. 2018-03-22 11:10:06 +01:00
amd_asic_type.h drm/amdgpu: add vega12 to asic_type enum 2018-03-21 14:23:39 -05:00
ati_pcigart.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
drm_agpsupport.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
drm_atomic_helper.h drm: Don't pass clip to drm_atomic_helper_check_plane_state() 2018-03-05 20:48:25 +02:00
drm_atomic.h drm-misc-next for 4.17: 2018-03-14 10:59:16 +10:00
drm_auth.h drm: Add drm_object lease infrastructure [v5] 2017-10-25 16:31:29 +10:00
drm_blend.h drm/blend: Add a generic alpha property 2018-04-16 21:17:29 +02:00
drm_bridge.h drm/bridge: Rename argument from crtc to bridge 2018-02-07 09:06:37 +01:00
drm_cache.h drm: add func to get max iomem address v2 2018-02-13 11:57:59 -05:00
drm_color_mgmt.h drm: Introduce drm_color_lut_size() 2018-03-16 15:44:01 +02:00
drm_connector.h drm: add documentation for tv connector state margins 2018-02-20 16:04:43 +02:00
drm_crtc_helper.h drm: Allow determining if current task is output poll worker 2018-02-16 22:30:06 +01:00
drm_crtc.h drm/mode_object: fix documentation for object lookups. 2017-11-10 13:50:47 +10:00
drm_debugfs_crc.h
drm_debugfs.h
drm_device.h drm: Use srcu to protect drm_device.unplugged 2018-03-29 13:19:20 +03:00
drm_displayid.h
drm_dp_dual_mode_helper.h
drm_dp_helper.h drm: Add PSR version 3 macro 2018-03-19 09:53:57 +02:00
drm_dp_mst_helper.h drm/dp/mst: Sideband message transaction to power up/down nodes 2017-09-11 16:03:57 +03:00
drm_drv.h Merge airlied/drm-next into drm-misc-next 2018-03-30 12:35:45 -04:00
drm_edid.h drm: Update edid-derived drm_display_info fields at edid property set [v2] 2017-12-13 14:51:37 +01:00
drm_encoder_slave.h
drm_encoder.h Merge airlied/drm-next into drm-misc-next 2017-11-21 14:17:56 +01:00
drm_fb_cma_helper.h drm/cma-helper: Add drm_fb_cma_fbdev_init/fini() 2017-12-08 14:27:47 +01:00
drm_fb_helper.h drm/fb-helper: Add drm_fb_helper_defio_init() 2017-12-20 14:52:22 +01:00
drm_file.h the rest of drivers/*: annotate ->poll() instances 2017-11-28 11:06:58 -05:00
drm_fixed.h
drm_flip_work.h
drm_fourcc.h drm/fourcc: Add a alpha field to drm_format_info 2018-01-29 12:07:47 +01:00
drm_framebuffer.h drm/framebuffer: Print task that allocated the fb in debug info. 2017-12-20 15:30:17 +01:00
drm_gem_cma_helper.h Merge tag 'drm-misc-next-2017-11-30' of git://anongit.freedesktop.org/drm/drm-misc into drm-next 2017-12-04 05:42:49 +10:00
drm_gem_framebuffer_helper.h drm: Move simple_display_pipe prepare_fb helper into gem fb helpers 2018-04-24 13:57:22 +02:00
drm_gem.h drm: move read_domains and write_domain into i915 2018-02-16 14:12:48 +00:00
drm_global.h
drm_hashtab.h
drm_hdcp.h drm/i915: Check for downstream topology errors 2018-01-18 17:56:02 -05:00
drm_ioctl.h
drm_irq.h
drm_lease.h drm: Add four ioctls for managing drm mode object leases [v7] 2017-10-25 16:31:30 +10:00
drm_legacy.h drm: prefer inline over __inline__ 2018-03-28 09:34:12 +03:00
drm_mipi_dsi.h
drm_mm.h drm/drm_mm.h: Fix the name of the referenced function in comment 2017-11-02 11:10:47 -02:00
drm_mode_config.h drm: Add drm_mode_config->normalize_zpos boolean 2018-03-28 09:45:43 +03:00
drm_mode_object.h drm: remove drm_mode_object_{un/reference} aliases 2018-03-19 09:09:46 -04:00
drm_modes.h drm/modes: Provide global mode_valid hook 2018-01-29 21:51:51 +02:00
drm_modeset_helper_vtables.h drm/atomic: better doc for implicit vs explicit fencing 2018-04-24 14:01:15 +02:00
drm_modeset_helper.h drm/modeset-helper: Add simple modeset suspend/resume helpers 2017-11-30 18:18:08 +01:00
drm_modeset_lock.h drm/atomic: Prepare drm_modeset_lock infrastructure for interruptible waiting, v2. 2017-09-13 09:50:52 +02:00
drm_of.h main drm pull request for v4.15 2017-11-15 20:42:10 -08:00
drm_os_linux.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
drm_panel.h
drm_pci.h
drm_pciids.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
drm_plane_helper.h drm: Don't pass clip to drm_atomic_helper_check_plane_state() 2018-03-05 20:48:25 +02:00
drm_plane.h drm/atomic: better doc for implicit vs explicit fencing 2018-04-24 14:01:15 +02:00
drm_prime.h drm: export gem dmabuf_ops for drivers to reuse 2018-01-09 12:07:07 -05:00
drm_print.h drm: Reduce object size of DRM_DEV_<LEVEL> uses 2018-03-19 15:15:42 +01:00
drm_property.h drm: Remove drm_property_{un/reference}_blob aliases 2018-03-22 09:21:53 -04:00
drm_rect.h
drm_scdc_helper.h drm: Fix warning when building docs for scdc_helper 2017-07-31 14:24:14 +02:00
drm_simple_kms_helper.h drm: Move simple_display_pipe prepare_fb helper into gem fb helpers 2018-04-24 13:57:22 +02:00
drm_syncobj.h drm/syncobj: some kerneldoc polish 2017-12-15 11:26:52 +01:00
drm_sysfs.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
drm_utils.h drm: Add panel orientation quirks, v6. 2017-12-04 23:03:21 +01:00
drm_vblank.h Merge tag 'drm-intel-next-2018-02-21' of git://anongit.freedesktop.org/drm/drm-intel into drm-next 2018-03-01 14:07:22 +10:00
drm_vma_manager.h drm/vma-manager: drm_vma_node_start() constify argument 2017-11-11 11:19:37 +01:00
drmP.h drm: make drm_core_check_feature() bool that it is 2018-03-28 09:35:20 +03:00
gma_drm.h
gpu_scheduler_trace.h drm: move amd_gpu_scheduler into common location 2017-12-07 11:51:56 -05:00
gpu_scheduler.h drm/sched: move fence slab handling to module init/exit 2017-12-07 11:52:14 -05:00
i915_component.h drm/i915/cnl: Add Port F definition. 2018-01-19 17:51:35 -02:00
i915_drm.h x86/early-quirks: export the stolen region as a resource 2017-12-12 12:30:18 +02:00
i915_pciids.h drm/i915/icl: Add the ICL PCI IDs 2018-02-22 11:33:20 +02:00
intel_lpe_audio.h
intel-gtt.h drm/i915: prefer resource_size_t for everything stolen 2017-12-12 12:30:22 +02:00
spsc_queue.h drm: move amd_gpu_scheduler into common location 2017-12-07 11:51:56 -05:00