1. 20 Oct, 2011 2 commits
  2. 12 Oct, 2011 2 commits
  3. 06 Oct, 2011 10 commits
  4. 30 Sep, 2011 7 commits
  5. 28 Sep, 2011 4 commits
  6. 27 Sep, 2011 6 commits
  7. 21 Sep, 2011 7 commits
    • Keith Packard's avatar
      drm/i915: FBC off for ironlake and older, otherwise on by default · cd0de039
      Keith Packard authored
      Make the default FBC behaviour chipset specific, allowing us to turn
      it on by default for Ironlake and older where it has been seen to
      cause trouble with screen updates.
      Signed-off-by: default avatarKeith Packard <keithp@keithp.com>
      Tested-by: default avatarFrancis Moreau <francis.moro@gmail.com>
      cd0de039
    • Simon Farnsworth's avatar
      drm/i915: Enable SDVO hotplug interrupts for HDMI and DVI · cc68c81a
      Simon Farnsworth authored
      I was seeing a nasty 5 frame glitch every 10 seconds, caused by the
      poll for connection on DVI attached by SDVO.
      
      As my SDVO DVI supports hotplug detect interrupts, the fix is to
      enable them, and hook them in to the various bits of driver
      infrastructure so that they work reliably.
      
      Note that this is only tested on single-function DVI-D SDVOs, on two
      platforms (965GME and 945GSE), and has not been checked against a
      specification document.
      
      With lots of help from Adam Jackson <ajax@redhat.com> on IRC.
      Signed-off-by: default avatarSimon Farnsworth <simon.farnsworth@onelan.co.uk>
      Reviewed-by: default avatarKeith Packard <keithp@keithp.com>
      Signed-off-by: default avatarKeith Packard <keithp@keithp.com>
      cc68c81a
    • Keith Packard's avatar
      64a742fa
    • Ben Widawsky's avatar
      drm/i915: Dumb down the semaphore logic · c8c99b0f
      Ben Widawsky authored
      While I think the previous code is correct, it was hard to follow and
      hard to debug. Since we already have a ring abstraction, might as well
      use it to handle the semaphore updates and compares.
      
      I don't expect this code to make semaphores better or worse, but you
      never know...
      
      v2:
      Remove magic per Keith's suggestions.
      Ran Daniel's gem_ring_sync_loop test on this.
      
      v3:
      Ignored one of Keith's suggestions.
      
      v4:
      Removed some bloat per Daniel's recommendation.
      
      Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
      Cc: Keith Packard <keithp@keithp.com>
      Signed-off-by: default avatarBen Widawsky <ben@bwidawsk.net>
      Signed-off-by: default avatarKeith Packard <keithp@keithp.com>
      c8c99b0f
    • Wu Fengguang's avatar
      drm/i915: pass ELD to HDMI/DP audio driver · e0dac65e
      Wu Fengguang authored
      Add ELD support for Intel Eaglelake, IbexPeak/Ironlake,
      SandyBridge/CougarPoint and IvyBridge/PantherPoint chips.
      
      ELD (EDID-Like Data) describes to the HDMI/DP audio driver the audio
      capabilities of the plugged monitor. It's built and passed to audio
      driver in 2 steps:
      
      (1) at get_modes time, parse EDID and save ELD to drm_connector.eld[]
      
      (2) at mode_set time, write drm_connector.eld[] to the Transcoder's hw
          ELD buffer and set the ELD_valid bit to inform HDMI/DP audio driver
      
      This patch is tested OK on G45/HDMI, IbexPeak/HDMI and IvyBridge/HDMI+DP.
      Test scheme: plug in the HDMI/DP monitor, and run
      
              cat /proc/asound/card0/eld*
      
      to check if the monitor name, HDMI/DP type, etc. show up correctly.
      
      Minor imperfection: the GEN5_AUD_CNTL_ST/DIP_Port_Select field always
      reads 0 (reserved). Without knowing the port number, I worked it around
      by setting the ELD_valid bit for ALL the three ports. It's tested to not
      be a problem, because the audio driver will find invalid ELD data and
      hence rightfully abort, even when it sees the ELD_valid indicator.
      
      Thanks to Zhenyu and Pierre-Louis for a lot of valuable help and testing.
      
      CC: Zhao Yakui <yakui.zhao@intel.com>
      CC: Wang Zhenyu <zhenyu.z.wang@intel.com>
      CC: Jeremy Bush <contractfrombelow@gmail.com>
      CC: Christopher White <c.white@pulseforce.com>
      CC: Pierre-Louis Bossart <pierre-louis.bossart@intel.com>
      CC: Paul Menzel <paulepanter@users.sourceforge.net>
      Signed-off-by: default avatarWu Fengguang <fengguang.wu@intel.com>
      Signed-off-by: default avatarKeith Packard <keithp@keithp.com>
      e0dac65e
    • Wu Fengguang's avatar
      drm: support routines for HDMI/DP ELD · 76adaa34
      Wu Fengguang authored
      ELD (EDID-Like Data) describes to the HDMI/DP audio driver the audio
      capabilities of the plugged monitor.
      
      This adds drm_edid_to_eld() for converting EDID to ELD. The converted
      ELD will be saved in a new drm_connector.eld[128] data field. This is
      necessary because the graphics driver will need to fixup some of the
      data fields (eg. HDMI/DP connection type, AV sync delay) before writing
      to the hardware ELD buffer. drm_av_sync_delay() will help the graphics
      drivers dynamically compute the AV sync delay for fixing-up the ELD.
      
      ELD selection policy: it's possible for one encoder to be associated
      with multiple connectors (ie. monitors), in which case the first found
      ELD will be returned by drm_select_eld(). This policy may not be
      suitable for all users, but let's start it simple first.
      
      The impact of ELD selection policy: assume there are two monitors, one
      supports stereo playback and the other has 8-channel output; cloned
      display mode is used, so that the two monitors are associated with the
      same internal encoder. If only the stereo playback capability is reported,
      the user won't be able to start 8-channel playback; if the 8-channel ELD
      is reported, then user space applications may send 8-channel samples
      down, however the user may actually be listening to the 2-channel
      monitor and not connecting speakers to the 8-channel monitor.
      
      According to James, many TVs will either refuse the display anything or
      pop-up an OSD warning whenever they receive hdmi audio which they cannot
      handle. Eventually we will require configurability and/or per-monitor
      audio control even when the video is cloned.
      
      CC: Zhao Yakui <yakui.zhao@intel.com>
      CC: Wang Zhenyu <zhenyu.z.wang@intel.com>
      CC: Jeremy Bush <contractfrombelow@gmail.com>
      CC: Christopher White <c.white@pulseforce.com>
      CC: Pierre-Louis Bossart <pierre-louis.bossart@intel.com>
      CC: Paul Menzel <paulepanter@users.sourceforge.net>
      CC: James Cloos <cloos@jhcloos.com>
      CC: Chris Wilson <chris@chris-wilson.co.uk>
      Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
      Signed-off-by: default avatarWu Fengguang <fengguang.wu@intel.com>
      Signed-off-by: default avatarKeith Packard <keithp@keithp.com>
      76adaa34
    • Keith Packard's avatar
      drm/i915: Enable dither whenever display bpc < frame buffer bpc · 578393cd
      Keith Packard authored
      We want to enable dithering on any pipe where the frame buffer has
      more color resolution than the output device.
      
      The previous code was incorrectly clamping the frame buffer bpc to the
      display bpc, effectively disabling dithering all of the time as the
      computed frame buffer bpc would never be larger than the display bpc.
      Signed-off-by: default avatarKeith Packard <keithp@keithp.com>
      Reported-by: default avatarOliver Hartkopp <socketcan@hartkopp.net>
      Tested-by: default avatarOliver Hartkopp <socketcan@hartkopp.net>
      578393cd
  8. 20 Sep, 2011 2 commits
    • Dave Airlie's avatar
      Merge branch 'drm-intel-next' of git://people.freedesktop.org/~keithp/linux into drm-next · 88ef4e3f
      Dave Airlie authored
      * 'drm-intel-next' of git://people.freedesktop.org/~keithp/linux:
        Drivers: i915: Fix all space related issues.
      88ef4e3f
    • Dave Airlie's avatar
      Merge branch 'drm-nouveau-next' of git://git.freedesktop.org/git/nouveau/linux-2.6 into drm-next · b2d108ba
      Dave Airlie authored
      * 'drm-nouveau-next' of git://git.freedesktop.org/git/nouveau/linux-2.6: (353 commits)
        drm/nouveau: remove allocations from gart populate() hook
        drm/nvc0/fb: slightly improve PMFB intr handling, move out of nvc0_graph.c
        drm/nvc0/fifo: avoid touching missing subfifos
        drm/nvd9/disp: bail out of mode_set_base if no fb bound to crtc
        drm/nvd9/disp: stub some more api hooks so we don't oops on resume
        drm/nouveau: fix printk typo in ioremap failure path
        drm/nvc0/pm: minor clock readback fixes
        drm/nv40/pm: execute memory reset script from vbios
        drm/nv50/gr: refactor initialisation
        drm/nouveau: if requested, try harder at disabling sysmem pushbufs
        drm/nv50/gr: enable ctxprog xfer only when we need it to save power
        drm/nouveau/dp: add support for displayport table 0x30
        drm/nouveau/dp: return master dp table pointer too when looking up encoder
        drm/nouveau/bios: simplify U/d table hash matching func to just match
        drm/nouveau/dp: preserve non-pattern bits in DP_TRAINING_PATTERN_SET
        drm/nvc0/gr: remove MODULE_FIRMWARE() lines
        drm/nouveau/dp: use alternate lane mask for nvaf
        drm/nouveau/dp: link rate scripts are selected with a comparison table
        drm/nv40/pm: write nv40-specific reclocking routines
        drm/nv40/pm: parse geometric delta clock from vbios
        ...
      b2d108ba