1. 21 1月, 2015 1 次提交
  2. 24 9月, 2014 1 次提交
  3. 08 7月, 2014 2 次提交
  4. 06 2月, 2014 1 次提交
  5. 29 1月, 2014 1 次提交
    • D
      drm: ast,cirrus,mgag200: use drm_can_sleep · f4b4718b
      Dave Airlie 提交于
      these 3 were checking in_interrupt but we have situations where
      calling vunmap under this could cause a BUG to be hit in
      smp_call_function_many. Use the drm_can_sleep macro instead,
      which should stop this path from been taken in this case.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      f4b4718b
  6. 23 1月, 2014 1 次提交
  7. 28 6月, 2013 1 次提交
  8. 02 5月, 2013 1 次提交
    • D
      drm/mgag200: deal with bo reserve fail in dirty update path · 64171959
      Dave Airlie 提交于
      On F19 testing, it was noticed we get a lot of errors in dmesg
      about being unable to reserve the buffer when plymouth starts,
      this is due to the buffer being in the process of migrating,
      so it makes sense we can't reserve it.
      
      In order to deal with it, this adds delayed updates for the dirty
      updates, when the bo is unreservable, in the normal console case
      this shouldn't ever happen, its just when plymouth or X is
      pushing the console bo to system memory.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      64171959
  9. 30 4月, 2013 1 次提交
  10. 12 4月, 2013 1 次提交
  11. 14 2月, 2013 2 次提交
  12. 21 1月, 2013 1 次提交
    • D
      drm: revamp framebuffer cleanup interfaces · 36206361
      Daniel Vetter 提交于
      We have two classes of framebuffer
      - Created by the driver (atm only for fbdev), and the driver holds
        onto the last reference count until destruction.
      - Created by userspace and associated with a given fd. These
        framebuffers will be reaped when their assoiciated fb is closed.
      
      Now these two cases are set up differently, the framebuffers are on
      different lists and hence destruction needs to clean up different
      things. Also, for userspace framebuffers we remove them from any
      current usage, whereas for internal framebuffers it is assumed that
      the driver has done this already.
      
      Long story short, we need two different ways to cleanup such drivers.
      Three functions are involved in total:
      - drm_framebuffer_remove: Convenience function which removes the fb
        from all active usage and then drops the passed-in reference.
      - drm_framebuffer_unregister_private: Will remove driver-private
        framebuffers from relevant lists and drop the corresponding
        references. Should be called for driver-private framebuffers before
        dropping the last reference (or like for a lot of the drivers where
        the fbdev is embedded someplace else, before doing the cleanup
        manually).
      - drm_framebuffer_cleanup: Final cleanup for both classes of fbs,
        should be called by the driver's ->destroy callback once the last
        reference is gone.
      
      This patch just rolls out the new interfaces and updates all drivers
      (by adding calls to drm_framebuffer_unregister_private at all the
      right places)- no functional changes yet. Follow-on patches will move
      drm core code around and update the lifetime management for
      framebuffers, so that we are no longer required to keep framebuffers
      alive by locking mode_config.mutex.
      
      I've also updated the kerneldoc already.
      
      vmwgfx seems to again be a bit special, at least I haven't figured out
      how the fbdev support in that driver works. It smells like it's
      external though.
      
      v2: The i915 driver creates another private framebuffer in the
      load-detect code. Adjust its cleanup code, too.
      Reviewed-by: NRob Clark <rob@ti.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      36206361
  13. 03 10月, 2012 2 次提交
  14. 17 5月, 2012 1 次提交
    • D
      mgag200: initial g200se driver (v2) · 414c4531
      Dave Airlie 提交于
      This is a driver for the G200 server engines chips,
      it doesn't driver any of the Matrix G series desktop cards.
      
      It will bind to G200 SE A,B, G200EV, G200WB, G200EH and G200ER cards.
      
      Its based on previous work done my Matthew Garrett but remodelled
      to follow the same style and flow as the AST server driver. It also
      works along the same lines as the AST server driver wrt memory management.
      
      There is no userspace driver planned, xf86-video-modesetting should be used.
      It also appears these GPUs have no ARGB hw cursors.
      
      v2: add missing tagfifo reset + G200 SE memory bw setup pieces.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      414c4531