linux_dsm_epyc7002/drivers/gpu/drm/vmwgfx
Daniel Vetter dac35663ce drm: only take the crtc lock for ->cursor_move
->cursor_move uses mostly the same facilities in drivers as
->cursor_set, so pretty much nothing to fix up:

- ast/gma500/i915: They all use per-crtc registers to update the
  cursor position. ast again touches the global cursor cache, but
  that's ok since there's only one crtc.

- nouveau: nv50+ is again special, updates happen through the per-crtc
  channel (without pushbufs), so it's not protected by the new evo
  lock introduced earlier. But since this channel is per-crtc, we
  should be fine anyway.

- radeon: A bit a mess: avivo asics need a workaround when both output
  pipes are enabled, which means it'll access the crtc list. Just
  reading that flag is ok though as long as radeon _always_ grabs all
  locks when changing the crtc configuration. Which means with the
  current scheme it cannot do an optimized modeset which only locks
  the relevant crtcs. This can be fixed though by introducing a bit of
  global state with separate locks and ensure in the modeset code that
  the cursor will be updated appropriately when enabling the 2nd pipe
  (on affected asics).

- vmwgfx: I still don't understand what it's doing exactly, so apply
  the same trick for now.

v2: Fixup unlocking for the error cases, spotted by Richard Wilbur.

v3: Another error-case fixup.

Reviewed-by: Rob Clark <rob@ti.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2013-01-20 22:16:57 +01:00
..
Kconfig drm/vmwgfx: allow a kconfig option to choose if fbcon is enabled 2012-09-07 13:24:34 +10:00
Makefile drm/vmwgfx: Break out surface and context management to separate files 2012-11-21 07:47:08 +10:00
svga3d_reg.h vmwgfx: Update register files to latest from vmware-sdk 2011-10-05 10:17:08 +01:00
svga3d_surfacedefs.h drm/vmwgfx: Add and make use of a header for surface size calculation. 2012-11-21 07:47:09 +10:00
svga_escape.h vmwgfx: Update register files to latest from vmware-sdk 2011-10-05 10:17:08 +01:00
svga_overlay.h vmwgfx: Update register files to latest from vmware-sdk 2011-10-05 10:17:08 +01:00
svga_reg.h vmwgfx: Update register files to latest from vmware-sdk 2011-10-05 10:17:08 +01:00
svga_types.h
vmwgfx_buffer.c drm/vmwgfx: Tighten the security around buffer maps 2012-11-28 20:09:08 +10:00
vmwgfx_context.c drm/vmwgfx: Break out surface and context management to separate files 2012-11-21 07:47:08 +10:00
vmwgfx_dmabuf.c drm/ttm: remove no_wait_reserve, v3 2012-12-10 20:21:30 +10:00
vmwgfx_drv.c drm: encapsulate crtc->set_config calls 2013-01-20 15:57:58 +01:00
vmwgfx_drv.h drm/vmwgfx: Tighten the security around buffer maps 2012-11-28 20:09:08 +10:00
vmwgfx_execbuf.c drm/ttm: remove no_wait_reserve, v3 2012-12-10 20:21:30 +10:00
vmwgfx_fb.c Prepared for main script 2012-10-03 13:45:43 -07:00
vmwgfx_fence.c drm/vmwgfx: Free user-space fence objects correctly 2012-11-28 18:36:12 +10:00
vmwgfx_fence.h vmwgfx: Move function declaration to correct header 2012-02-13 12:01:36 +00:00
vmwgfx_fifo.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
vmwgfx_gmr.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
vmwgfx_gmrid_manager.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
vmwgfx_ioctl.c drm/vmwgfx: use drm_modeset_lock_all 2013-01-20 22:16:52 +01:00
vmwgfx_irq.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
vmwgfx_kms.c drm: only take the crtc lock for ->cursor_move 2013-01-20 22:16:57 +01:00
vmwgfx_kms.h UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00
vmwgfx_ldu.c drm/vmwgfx: drm_connector_property -> drm_object_property 2012-11-30 10:20:11 -06:00
vmwgfx_marker.c vmwgfx: Fix confusion caused by using "fence" in various places 2011-09-06 11:48:40 +01:00
vmwgfx_overlay.c drm/vmwgfx: Make overlay code not require fifo at init time 2012-11-20 16:19:50 +10:00
vmwgfx_reg.h drm/vmwgfx: Add DRM driver for VMware Virtual GPU 2009-12-15 08:38:43 +10:00
vmwgfx_resource_priv.h drm/vmwgfx: Break out surface and context management to separate files 2012-11-21 07:47:08 +10:00
vmwgfx_resource.c drm/ttm: remove no_wait_reserve, v3 2012-12-10 20:21:30 +10:00
vmwgfx_scrn.c drm/vmwgfx: drm_connector_property -> drm_object_property 2012-11-30 10:20:11 -06:00
vmwgfx_surface.c drm/vmwgfx: Add and make use of a header for surface size calculation. 2012-11-21 07:47:09 +10:00
vmwgfx_ttm_glue.c UAPI: (Scripted) Convert #include "..." to #include <path/...> in drivers/gpu/ 2012-10-02 18:01:07 +01:00