1. 20 9月, 2012 21 次提交
  2. 19 9月, 2012 3 次提交
    • D
      Merge branch 'for-airlied' of git://people.freedesktop.org/~danvet/drm-intel into drm-next · 7facf166
      Dave Airlie 提交于
      Daniel writes:
      "The big ticket item here is the new i915 modeset infrastructure.
      Shockingly it didn't not blow up all over the place (i.e. I've managed to
      fix the ugly issues before merging). 1-2 smaller corner cases broke, but
      we have patches. Also, there's tons of patches on top of this that clean
      out cruft and fix a few bugs that couldn't be fixed with the crtc helper
      based stuff. So more stuff to come ;-)
      
      Also a few other things:
      - Tiny fix in the fb helper to go through the official dpms interface
        instead of calling the crtc helper code.
      - forcewake code frobbery from Ben, code should be more in-line with
        what Windows does now.
      - fixes for the render ring flush on hsw (Paulo)
      - gpu frequency tracepoint
      - vlv forcewake changes to better align it with our understanding of the
        forcewake magic.
      - a few smaller cleanups"
      
      + 2 fixes.
      
      * 'for-airlied' of git://people.freedesktop.org/~danvet/drm-intel: (78 commits)
        drm/i915: fix OOPS in lid_notify
        drm/i915: correctly update crtc->x/y in set_base
        drm/fb helper: don't call drm_helper_connector_dpms directly
        drm/i915: improve modeset state checking after dpms calls
        drm/i915: add tons of modeset state checks
        drm/i915: no longer call drm_helper_resume_force_mode
        drm/i915: disable all crtcs at suspend time
        drm/i915: push commit_output_state past the crtc/encoder preparing
        drm/i915: switch the load detect code to the staged modeset config
        drm/i915: WARN if the pipe won't turn off
        drm/i915: s/intel_encoder_disable/intel_encoder_noop
        drm/i915: push commit_output_state past crtc disabling
        drm/i915: implement new set_mode code flow
        drm/i915: compute masks of crtcs affected in set_mode
        drm/i915: use staged outuput config in lvds->mode_fixup
        drm/i915: use staged outuput config in tv->mode_fixup
        drm/i915: extract adjusted mode computation
        drm/i915: move output commit and crtc disabling into set_mode
        drm/i915: remove crtc disabling special case
        drm/i915: push crtc->fb update into pipe_set_base
        ...
      7facf166
    • D
      drm: micro optimise cache flushing · 87229ad9
      Dave Airlie 提交于
      We hit this a lot with i915 and although we'd like to engineer things to hit
      it a lot less, this commit at least makes it consume a few less cycles.
      
      from something containing
      movzwl 0x0(%rip),%r10d
      to
      add    %r8,%rdx
      
      I only noticed it while using perf to profile something else.
      Reviewed-by: NChris Wilson <chris@chris-wilson.co.uk>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      87229ad9
    • D
      Merge branch 'drm-lcdc' of git://linuxtv.org/pinchartl/fbdev into drm-next · f2032d41
      Dave Airlie 提交于
      Laurent writes:
      
      The SH Mobile DRM driver is now (in my opinion) ready for mainline. It
      requires GEM and KMS/FB helpers that have been reviewed on the list and
      tested. Sascha is waiting for them to reach your tree to send a pull request
      for another new driver.
      
      * 'drm-lcdc' of git://linuxtv.org/pinchartl/fbdev:
        drm: Renesas SH Mobile DRM driver
        drm: Add NV24 and NV42 pixel formats
        DRM: Add DRM KMS/FB CMA helper
        DRM: Add DRM GEM CMA helper
        drm/edid: limit printk when facing bad edid
      f2032d41
  3. 18 9月, 2012 6 次提交
    • L
      drm: Renesas SH Mobile DRM driver · 51c13278
      Laurent Pinchart 提交于
      The SH Mobile LCD controller (LCDC) DRM driver supports the main
      graphics plane in RGB and YUV formats, as well as the overlay planes (in
      alpha-blending mode only).
      
      Only flat panel outputs using the parallel interface are supported.
      Support for SYS panels, HDMI and DSI is currently not implemented.
      Signed-off-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Reviewed-by: NSascha Hauer <s.hauer@pengutronix.de>
      51c13278
    • L
      ba623f6a
    • L
      DRM: Add DRM KMS/FB CMA helper · 2e3b3c42
      Lars-Peter Clausen 提交于
      This patchset introduces a set of helper function for implementing the KMS
      framebuffer layer for drivers which use the DRM GEM CMA helper function.
      Signed-off-by: NLars-Peter Clausen <lars@metafoo.de>
      Tested-by: NSascha Hauer <s.hauer@pengutronix.de>
      Acked-by: NSascha Hauer <s.hauer@pengutronix.de>
      [Make DRM_KMS_CMA_HELPER a boolean Kconfig option]
      Signed-off-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      2e3b3c42
    • S
      DRM: Add DRM GEM CMA helper · b9d47450
      Sascha Hauer 提交于
      Many embedded drm devices do not have a IOMMU and no dedicated
      memory for graphics. These devices use CMA (Contiguous Memory
      Allocator) backed graphics memory. This patch provides helper
      functions to be able to share the code. The code technically does
      not depend on CMA as the backend allocator, the name has been chosen
      because CMA makes for a nice, short but still descriptive function
      prefix.
      Signed-off-by: NSascha Hauer <s.hauer@pengutronix.de>
      Tested-by: NLars-Peter Clausen <lars@metafoo.de>
      [Make DRM_GEM_CMA_HELPER a boolean Kconfig option]
      Signed-off-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      b9d47450
    • D
      drm/i915: fix OOPS in lid_notify · 3b7a89fc
      Daniel Vetter 提交于
      This goes back to
      
      commit c1c7af60
      Author: Jesse Barnes <jbarnes@virtuousgeek.org>
      Date:   Thu Sep 10 15:28:03 2009 -0700
      
          drm/i915: force mode set at lid open time
      
      It was used to fix an issue on a i915GM based Thinkpad X41, which
      somehow clobbered the modeset state at lid close time. Since then
      massive amounts of things changed: Tons of fixes to the modeset
      sequence, OpRegion support, better integration with the acpi code.
      Especially OpRegion /should/ allow us to control the display hw
      cooperatively with the firmware, without the firmware clobbering the
      hw state behind our backs.
      
      So it's dubious whether we still need this.
      
      The second issue is that it's unclear who's responsibility it actually
      is to restore the mode - Chris Wilson suggests to just emit a hotplug
      event and let userspace figure things out.
      
      The real reason I've stumbled over this is that the new modeset code
      breaks drm_helper_resume_force_mode - it OOPSes derefing a NULL vfunc
      pointer. The reason this wasn't caught in testing earlier is that in
      
      commit c9354c85
      Author: Linus Torvalds <torvalds@linux-foundation.org>
      Date:   Mon Nov 2 09:29:55 2009 -0800
      
          i915: fix intel graphics suspend breakage due to resume/lid event
          confusion
      
      logic was added to _not_ restore the modeset state after a resume. And
      since most machines are configured to auto-suspend on lid-close, this
      neatly papered over the issue.
      
      Summarizing, this shouldn't be required on any platform supporting
      OpRegion. And none of the really old machines I have here seem to
      require it either. Hence I'm inclined to just rip it out.
      
      But in case that there are really firmwares out there that clobber the
      hw state, replace it with a call to intel_modset_check_state. This
      will ensure that we catch any issues as soon as they happen.
      
      Cc: Chris Wilson <chris@chris-wilson.co.uk>
      Acked-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      3b7a89fc
    • D
      drm/i915: correctly update crtc->x/y in set_base · 6c4c86f5
      Daniel Vetter 提交于
      While reworking the modeset sequence, this got lost in
      
      commit 25c5b266
      Author: Daniel Vetter <daniel.vetter@ffwll.ch>
      Date:   Sun Jul 8 22:08:04 2012 +0200
      
          drm/i915: implement new set_mode code flow
      
      I've noticed this because some Xorg versions seem to set up a new mode
      with every crtc at (0,0) and then pan to the right multi-monitor
      setup. And since some hacks of mine added more calls to mode_set using
      the stored crtc->x/y my multi-screen setup blew up.
      Reviewed-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      Signed-Off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      6c4c86f5
  4. 17 9月, 2012 1 次提交
  5. 13 9月, 2012 9 次提交