1. 05 8月, 2010 2 次提交
    • A
      drm: kill BKL from common code · 58374713
      Arnd Bergmann 提交于
      This restricts the use of the big kernel lock to the i830 and i810
      device drivers. The three remaining users in common code (open, ioctl
      and release) get converted to a new mutex, the drm_global_mutex,
      making the locking stricter than the big kernel lock.
      
      This may have a performance impact, but only in those cases that
      currently don't use DRM_UNLOCKED flag in the ioctl list and would
      benefit from that anyway.
      
      The reason why i810 and i830 cannot use drm_global_mutex in their
      mmap functions is a lock-order inversion problem between the current
      use of the BKL and mmap_sem in these drivers. Since the BKL has
      release-on-sleep semantics, it's harmless but it would cause trouble
      if we replace the BKL with a mutex.
      
      Instead, these drivers get their own ioctl wrappers that take the
      BKL around every ioctl call and then set their own handlers as
      DRM_UNLOCKED.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Cc: David Airlie <airlied@linux.ie>
      Cc: dri-devel@lists.freedesktop.org
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      58374713
    • A
      drm/radeon: add new pci ids · 1297c05a
      Alex Deucher 提交于
      New evergreen and r7xx ids.
      Signed-off-by: NAlex Deucher <alexdeucher@gmail.com>
      Cc: stable@kernel.org
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      1297c05a
  2. 04 8月, 2010 1 次提交
  3. 02 8月, 2010 3 次提交
  4. 21 7月, 2010 1 次提交
    • B
      drm: add "auto" dithering method · 92897b5c
      Ben Skeggs 提交于
      There's no convenient/reliable way for drivers to both obey the dithering
      mode property, and to be able to attempt to provide a good default in all
      cases.
      
      This commit adds an "auto" method to the property which drivers can default
      to if they wish, whilst still allowing the user to override the choice as
      they do now.
      Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      92897b5c
  5. 07 7月, 2010 5 次提交
  6. 02 7月, 2010 1 次提交
  7. 08 6月, 2010 1 次提交
  8. 03 6月, 2010 1 次提交
  9. 02 6月, 2010 1 次提交
  10. 01 6月, 2010 3 次提交
  11. 28 5月, 2010 1 次提交
  12. 27 5月, 2010 1 次提交
  13. 18 5月, 2010 6 次提交
  14. 07 5月, 2010 1 次提交
  15. 20 4月, 2010 4 次提交
  16. 19 4月, 2010 1 次提交
  17. 08 4月, 2010 1 次提交
  18. 07 4月, 2010 5 次提交
    • D
      drm/kms/fb: use slow work mechanism for normal hotplug also. · 4abe3520
      Dave Airlie 提交于
      a) slow work is always used now for any fbcon hotplug, as its not
         a fast task and is more suited to being ran under slow work.
      
      b) attempt to not do any fbdev changes when X is running as we'll
         just mess it up. This hooks set_par to hopefully do the changes
         once X hands control to fbdev.
      
      This also adds the nouveau/intel hotplug support.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      4abe3520
    • D
      drm/kms/fb: add polling support for when nothing is connected. · 5c4426a7
      Dave Airlie 提交于
      When we are running in a headless environment we have no idea what
      output the user might plug in later, we only have hotplug detect
      from the digital outputs. So if we detect no connected outputs at
      initialisation, start a slow work operation to poll every 5 seconds
      for an output.
      
      this is only hooked up for radeon so far, on hw where we have full
      hotplug detection there is no need for this.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      5c4426a7
    • D
      drm/kms/fb: separate fbdev connector list from core drm connectors · 0b4c0f3f
      Dave Airlie 提交于
      This breaks the connection between the core drm connector list
      and the fbdev connector usage, and allows them to become disjoint
      in the future. It also removes the untype void* that was in the
      connector struct to support this.
      
      All connectors are added to the fbdev now but this could be
      changed in the future.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      0b4c0f3f
    • D
      drm/kms/fb: move to using fb helper crtc grouping instead of core crtc list · 8be48d92
      Dave Airlie 提交于
      This move to using the list of crtcs in the fb helper and cleans up the
      whole picking code, now we store the crtc/connectors we want directly
      into the modeset and we use the modeset directly to set the mode.
      
      Fixes from James Simmons and Ben Skeggs.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      8be48d92
    • D
      drm/fb: fix fbdev object model + cleanup properly. · 38651674
      Dave Airlie 提交于
      The fbdev layer in the kms code should act like a consumer of the kms services and avoid having relying on information being store in the kms core structures in order for it to work.
      
      This patch
      
      a) removes the info pointer/psuedo palette from the core drm_framebuffer structure and moves it to the fbdev helper layer, it also removes the core drm keeping a list of kernel kms fbdevs.
      b) migrated all the fb helper functions out of the crtc helper file into the fb helper file.
      c) pushed the fb probing/hotplug control into the driver
      d) makes the surface sizes into a structure for ease of passing
      This changes the intel/radeon/nouveau drivers to use the new helper.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      38651674
  19. 06 4月, 2010 1 次提交