1. 02 Apr, 2014 5 commits
    • Daniel Vetter's avatar
      drm/crtc-helper: don't disable disconnected outputs · e3d6ddb3
      Daniel Vetter authored
      This is the equivalent change in the crtc helpers as done to the i915
      modeset infrastructure in
      
      commit b0a2658a
      Author: Daniel Vetter <daniel.vetter@ffwll.ch>
      Date:   Tue Dec 18 09:37:54 2012 +0100
      
          drm/i915: don't disable disconnected outputs
      
      This was originally introduced to make encoder sharing on radone
      easier for userspace, but:
      
      - It is policy and as such belongs into userspace. E.g. personally I'm
        fairly annoyed that a flaky cable results in permanent changes of
        the desktop layout, so I'll kick out DEs which do this. Worse if the
        kernel also tries to be clever.
      
      - It's inconsistent: We only kill disconnected outputs on setCrtc
        (which userspace might also call when just changing the
        framebuffer), but not when e.g. we receive a hpd event or in the
        output poll worker.
      
      - It's unexpected behaviour for the userspace driver, at least in the
        intel ddx we've had tons of bugs where the driver fell over and
        killed the X session becuase pageflips/vblanks suddenly stopped
        working. We've had to fix this by wrapping every single setCrtc int
        a big "recover kms state from the kernel again" operation.
      
      - It's suprising for the kernel, too: It took a few mails between Rob,
        Matt and me for them to notice that little dragon wreaking havoc
        with the universal plane framebuffer refcounting.
      
      - Userspace can cope with it and e.g. Gnome already kills disconnected
        outputs and reconfigures the desktop automatically. And since there
        have been no regression reports for the i915 change from over 1 year
        ago I think all other DEs are also ready.
      
      Note that the lines removed in this patch go back to
      
      commit a3a0544b
      Author: Dave Airlie <airlied@redhat.com>
      Date:   Mon Aug 31 15:16:30 2009 +1000
      
          drm/kms: add explicit encoder disable function and detach harder.
      
      Unfortunately the patch itself doesn't explain a hole lot about why it
      was added ...
      
      Cc: Matt Roper <matthew.d.roper@intel.com>
      Cc: Rob Clark <robdclark@gmail.com>
      Cc: Dave Airlie <airlied@redhat.com>
      Cc: Alex Deucher <alexdeucher@gmail.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      e3d6ddb3
    • Daniel Vetter's avatar
      drm/crtc-helpers: fix dpms on logic · 177cf92d
      Daniel Vetter authored
      This was introduced in
      
      commit 25f397a4
      Author: Daniel Vetter <daniel.vetter@ffwll.ch>
      Date:   Fri Jul 19 18:57:11 2013 +0200
      
          drm/crtc-helper: explicit DPMS on after modeset
      
      but due to a bit of rebase fail on my side the patch actually merged
      put one hunk on the wrong side of a break statement. Fix this up.
      Reported-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
      Cc: Dan Carpenter <dan.carpenter@oracle.com>
      Cc: Dave Airlie <airlied@redhat.com>
      Cc: Alex Deucher <alexdeucher@gmail.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      177cf92d
    • Maarten Lankhorst's avatar
      drm/qxl: unset a pointer in sync_obj_unref · 41ccec35
      Maarten Lankhorst authored
      This fixes a BUG_ON(bo->sync_obj != NULL); in ttm_bo_release_list.
      
      Cc: stable@vger.kernel.org #v3.10+
      Signed-off-by: default avatarMaarten Lankhorst <maarten.lankhorst@canonical.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      41ccec35
    • Lespiau, Damien's avatar
      drm: Specify a bit more the DRM_CAP_CURSOR_{WIDTH, HEIGHT} caps · bfe8b573
      Lespiau, Damien authored
      Earlier this week, there was a bit of confusion about those new
      capabilities, to the point I think it's better to document the intention
      and API contract.
      
      The comment documents the current situation:
       - the radeon driver returns the only valid size for the hw
       - i915 returns the maximun cursor size
       - other drivers fall back to returning 64x64
      
      The common contract is to return a valid cursor size.
      
      Cc: Sagar Kamble <sagar.a.kamble@intel.com>
      Cc: Chris Wilson <chris@chris-wilson.co.uk>
      Cc: Alex Deucher <alexander.deucher@amd.com>
      Cc: Imre Deak <imre.deak@intel.com>
      Signed-off-by: default avatarDamien Lespiau <damien.lespiau@intel.com>
      Reviewed-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Reviewed-by: default avatarAlex Deucher <alexander.deucher@amd.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      bfe8b573
    • Dave Airlie's avatar
      drm/nouveau: don't suspend/resume display on runtime s/r · 05c63c2f
      Dave Airlie authored
      This should ensure we don't hit a locking problem when someone
      wakes us up via a connector, we should never go into suspend
      while the display is on anyways.
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      05c63c2f
  2. 31 Mar, 2014 1 commit
    • Dave Airlie's avatar
      Merge tag 'vmwgfx-next-2014-03-28' of git://people.freedesktop.org/~thomash/linux into drm-next · c32fc9c8
      Dave Airlie authored
      vmwgfx render-node support and drm + ttm changes it depends upon.
      
      Pull request of 2014-03-28
      
      * tag 'vmwgfx-next-2014-03-28' of git://people.freedesktop.org/~thomash/linux:
        drm/vmwgfx: Bump driver minor and date
        drm/vmwgfx: Enable render nodes
        drm/vmwgfx: Tighten the security around buffer maps
        drm/ttm: Add a ttm_ref_object_exists function
        drm/vmwgfx: Tighten security around surface sharing v2
        drm/vmwgfx: Allow prime fds in the surface reference ioctls
        drm/vmwgfx: Drop authentication requirement on UNREF ioctls
        drm/vmwgfx: Reinstate and tighten security around legacy master model
        drm/vmwgfx: Use a per-device semaphore for reservation protection
        drm: Add a function to get the ioctl flags
        drm: Protect the master management with a drm_device::master_mutex v3
        drm: Remove the minor master list
        drm: Improve on minor type helpers v3
        drm: Make control nodes master-less v3
        drm: Break out ioctl permission check to a separate function v2
        drm: Have the crtc code only reference master from legacy nodes v2
      c32fc9c8
  3. 28 Mar, 2014 28 commits
  4. 27 Mar, 2014 1 commit
    • Arnd Bergmann's avatar
      drm/bridge: PTN3460 needs DRM_KMS_HELPER · 90bde571
      Arnd Bergmann authored
      The recently added PTN3460 device driver uses interfaces that
      are provided by the KMS helper infrastructure, so we should
      explicitly select that to avoid this linker error:
      
      ERROR: "drm_helper_probe_single_connector_modes" [drivers/gpu/drm/bridge/ptn3460.ko] undefined!
      ERROR: "drm_helper_connector_dpms" [drivers/gpu/drm/bridge/ptn3460.ko] undefined!
      
      We have to drop the I2C dependency to avoid a circular dependency
      chain, but that's ok because DRM already selects I2C.
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      90bde571
  5. 26 Mar, 2014 5 commits