Hi Dave,
This series enables atomic mode set for vmwgfx. A number of features and larger fixes are also included.
The following changes since commit 8cd3ac52963f2e99f4c21d1c9ce89531ce66c2d6:
Merge branch 'drm-next-4.12' of git://people.freedesktop.org/~agd5f/linux into drm-next (2017-03-31 11:47:18 +1000)
are available in the git repository at:
git://people.freedesktop.org/~syeh/repos_linux drm-vmwgfx-next
for you to fetch changes up to 28c954299cd2b5cb5411816c9eeaf3f51ed4638e:
drm/vmwgfx: Properly check display/scanout surface size (2017-03-31 15:21:20 -0700)
---------------------------------------------------------------- Sinclair Yeh (18): drm/vmwgfx: Removed unused snooper.crtc field drm/vmwgfx: Add universal plane support drm/vmwgfx: CRTC atomic state drm/vmwgfx: Plane atomic state drm/vmwgfx: Connector atomic state drm/vmwgfx: Add and connect CRTC helper functions drm/vmwgfx: Add and connect plane helper functions drm/vmwgfx: Add and connect connector helper function drm/vmwgfx: Add and connect atomic state object check/commit drm/vmwgfx: Fixes to vmwgfx_fb drm/vmwgfx: Switch over to internal atomic API for STDU drm/vmwgfx: Switch over to internal atomic API for SOU and LDU drm/vmwgfx: Turn on DRIVER_ATOMIC flag drm/vmwgfx: Explicityly track screen target width and height drm/vmwgfx: Skipping fbdev fb pinning for ldu drm/vmwgfx: Fix LDU X blank screen until mode change issue drm/vmwgfx: Support topology greater than texture size drm/vmwgfx: Properly check display/scanout surface size
Thomas Hellstrom (3): drm/vmwgfx: Introduce a simple resource type drm/vmwgfx: Re-implement the stream resource as a simple resource. drm/vmwgfx: Define an overlaid handle_close ioctl.
Øyvind A. Holm (1): drm/vmwgfx: Revert "drm/vmwgfx: Replace numeric parameter like 0444 with macro"
drivers/gpu/drm/vmwgfx/Makefile | 3 +- drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 13 +- drivers/gpu/drm/vmwgfx/vmwgfx_drv.h | 2 +- drivers/gpu/drm/vmwgfx/vmwgfx_fb.c | 27 ++- drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 1111 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------ drivers/gpu/drm/vmwgfx/vmwgfx_kms.h | 143 ++++++++++++-- drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c | 373 ++++++++++++++++++++++++----------- drivers/gpu/drm/vmwgfx/vmwgfx_resource.c | 254 ------------------------ drivers/gpu/drm/vmwgfx/vmwgfx_resource_priv.h | 40 ++++ drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c | 510 +++++++++++++++++++++++++++++++----------------- drivers/gpu/drm/vmwgfx/vmwgfx_simple_resource.c | 256 ++++++++++++++++++++++++ drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c | 937 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------ drivers/gpu/drm/vmwgfx/vmwgfx_surface.c | 15 +- drivers/gpu/drm/vmwgfx/vmwgfx_va.c | 168 ++++++++++++++++ include/uapi/drm/vmwgfx_drm.h | 24 +++ 15 files changed, 2856 insertions(+), 1020 deletions(-) create mode 100644 drivers/gpu/drm/vmwgfx/vmwgfx_simple_resource.c create mode 100644 drivers/gpu/drm/vmwgfx/vmwgfx_va.c
On Fri, Mar 31, 2017 at 04:32:55PM -0700, Sinclair Yeh wrote:
Quite a pile of conflicts of this against the drm-misc-next pull. Nothing too hairy, but just more reasons to remove all the vmwgfx special cases again :-)
Also noticed that you've forgotten to garabge collect the legacy cursor functions. Probably a good reason for having vfunc implementations in the same file as the vtable so that they can all be static and the compiler will tell you when you forget to remove stuff. vmwgfx and radeon/amdgpu are anti-pattern drivers in this regard imo. On top it's annoying when you always have to change a prototype in 2 places when doing a subsystem-wide change :-)
Cheers, Daniel
dri-devel@lists.freedesktop.org