[pull] drm-intel-next for 3.9

From: Daniel Vetter
Date: Tue Feb 05 2013 - 05:46:57 EST


Hi Dave,

Probably the last feature pull for 3.9, there's some fixes outstanding
thought that I'd like to sneak in. And maybe 3.8 takes a bit longer ...
Anyway, highlights of this pull:
- Kill the horrible IS_DISPLAYREG hack to handle the mmio offset movements
on vlv, big thanks to Ville.
- Dynamic power well support for Haswell, shaves away a bit when only
using the eDP port on pipe A (Paulo). Plus unclaimed register fixes
uncovered by this.
- Clarifications of the gpu hang/reset state transitions, hopefully fixing
a few spurious -EIO deaths in userspace.
- Haswell ELD fixes.
- Some more (pp)gtt cleanups from Ben.
- A few smaller things all over.

Plus all the stuff from the previous rather small pull request:
- Broadcast RBG improvements and reduced color range fixes from Ville.
- Ben is on a "kill legacy gtt code for good" spree, first pile of patches
included.
- No-relocs and bo lut improvements for faster execbuf from Chris.
- Some refactorings from Imre.

QA filed tons of bugs this cycle, all due to us finally enabling all the
really anal timestamp and vblank counter checks in kms_flip, now that the
locking is fixed and EDID reads don't cause stalls any more. In short, our
vblank code seems to be ridiculously racy and broken :( Otoh that's not
really news.

Cheers, Daniel


The following changes since commit b5cc6c0387b2f8d269c1df1e68c97c958dd22fed:

Merge tag 'drm-intel-next-2012-12-21' of git://people.freedesktop.org/~danvet/drm-intel into drm-next (2013-01-17 20:34:08 +1000)

are available in the git repository at:


git://people.freedesktop.org/~danvet/drm-intel tags/drm-intel-next-2013-02-01

for you to fetch changes up to 7d37beaaf3dbc6ff16f4d32a4dd6f8c557c6ab50:

GPU/i915: Fix acpi_bus_get_device() check in drivers/gpu/drm/i915/intel_opregion.c (2013-02-01 11:01:50 +0100)

----------------------------------------------------------------
Ben Widawsky (16):
drm/i915: Kill gtt_end
drm/i915: Mappable_end can't ever be > end
drm/i915: Remove gtt_mappable_total
drm/i915: Create a gtt structure
drm/i915: Remove use on gma_bus_addr on gen6+
drm/i915: Remove use of gtt_mappable_entries
drm/i915: Cut out the infamous ILK w/a from AGP layer
drm/i915: Remove scratch page from shared
drm/i915: Needs_dmar, not
agp/intel: Add gma_bus_addr
drm/i915: Implement WaVSRefCountFullforceMissDisable
drm/i915: Error state should print /sys/kernel/debug
drm/i915: Add probe and remove to the gtt ops
drm/i915: remove intel_gtt structure
drm/i915: Reclaim GTT space for failed PPGTT
drm/i915: Fix CAGF for HSW

Changlong Xie (1):
drm/i915: gen6_gmch_remove can be static

Chris Wilson (9):
drm/i915: Add a debug interface to forcibly evict and shrink our object caches
drm/i915: Bail if we attempt to allocate pages for a purged object
drm/i915: Mark a temporary allocation for copy-from-user as such
drm/i915: Take the handle idr spinlock once for looking up the exec objects
drm/i915: Move the execbuffer objects list from the stack into the tracker
drm/i915: Use the reloc.handle as an index into the execbuffer array
drm/i915: Only insert the mb() before updating the fence parameter
drm/i915: Only apply the mb() when flushing the GTT domain during a finish
drm/i915: Only run idle processing from i915_gem_retire_requests_worker

Daniel Vetter (21):
drm/i915: wake up all pageflip waiters
drm/i915: Allow userspace to hint that the relocations were known
drm/i915: move dev_priv->mm out of line
drm/i915: extract hangcheck/reset/error_state state into substruct
drm/i915: move wedged to the other gpu error handling stuff
drm/i915: fix reset handling in the throttle ioctl
drm/i915: clear up wedged transitions
drm/i915: create a race-free reset detection
drm/i915: clarify concurrent hang detect/gpu reset consistency
drm/i915: fixup sbi_read/write locking
drm/i915: move modeset checks out of save/restore_modeset_reg
drm/i915: extract ums suspend/resume into i915_ums.c
drm/i915: dont save/restore VGA state for kms
drm/i915: move DP save/restore into i915_ums.c
drm/i915: vfuncs for gtt_clear_range/insert_entries
drm/i915: vfuncs for ppgtt
drm/i915: pte_encode is gen6+
drm/i915: extract hw ppgtt setup/cleanup code
drm/i915: kill cargo-culted locking from power well code
drm/i915: don't run hsw power well code on !hsw
drm/i915: dynamic Haswell display power well support

Egbert Eich (1):
drm/i915: Remove pch_rq_mask from struct drm_i915_private.

Imre Deak (3):
drm/i915: merge get_gtt_alignment/get_unfenced_gtt_alignment()
drm/i915: merge {i965, sandybridge}_write_fence_reg()
drm/i915: use gtt_get_size() instead of open coding it

Jani Nikula (3):
drm/i915: add quirk to invert brightness on eMachines G725
drm/i915: add quirk to invert brightness on eMachines e725
drm/i915: add quirk to invert brightness on Packard Bell NCL20

Mika Kuoppala (1):
drm/i915: use gem_set_seqno() on hardware init

Paulo Zanoni (7):
drm/i915: don't save/restore DSPARB on gen5+
drm/i915: fix intel_init_power_wells
drm/i915: only disable enabled planes on intel_fb_restore_mode
drm/i915: set TRANSCODER_EDP even earlier
drm/i915: turn on the power well before suspending
drm/i915: don't send DP "idle" pattern before "normal" on HSW PORT_A
drm/i915: check the power down well on assert_pipe()

Ville Syrjälä (37):
drm/i915: Fix SPRITE0_FLIP_DONE_INT_EN_VLV and SPRITE0_FLIPDONE_INT_STATUS_VLV
drm/i915: Fix RGB color range property for PCH platforms
drm/i915: Add "Automatic" mode for the "Broadcast RGB" property
drm/edid: Add drm_rgb_quant_range_selectable()
drm/i915: Provide the quantization range in the AVI infoframe
drm/i915: Convert intel_hdmi to enum port
drm/i915: Convert intel_dp to enum port
drm/i915: Add display_display_mmio_offset to intel_device_info
drm/i915: AUD_VID_DID needs an offset on VLV
drm/i915: Per-pipe PP registers are for VLV only
drm/i915: VLV_VIDEO_DIP_CTL is for VLV only
drm/i915: PIPE M/N registers need an offset on VLV
drm/i915: Primary plane registers need an offset on VLV
drm/i915: Pipe registers need an offset on VLV
drm/i915: Cursor registers need an offset on VLV
drm/i915: VLV_DDL is VLV only and needs an offset
drm/i915: DSPFW registers need an offset on VLV
drm/i915: DPFLIPSTAT and DPINVGTT registers are VLV only and need an offset
drm/i915: Panel fitter registers need an offset on VLV
drm/i915: PORT_HOTPLUG registers need an offset on VLV
drm/i915: Pipe timing registers need an offset on VLV
drm/i915: Pipe palette registers need an offset on VLV
drm/i915: FB_BLC_SELF_VLV is VLV only and needs an offset
drm/i915: Make VLV_GUNIT_CLOCK_GATE register value more readable
drm/i915: Spell out VLV_DISPLAY_BASE for interrupt registers
drm/i915: DPIO registers are VLV only and need an offset
drm/i915: GPIO/GMBUS registers need an offset on VLV
drm/i915: Set display_mmio_offset for VLV
drm/i915: PLL registers need an offset on VLV
drm/i915: Always use adpa_reg
drm/i915: VLV doesn't have SDVO
drm/i915: Pass VLV_DISPLAY_BASE + reg to intel_{hdmi, dp}_init on VLV
drm/i915: Include display_mmio_offset in sequencer index/data registers
drm/i915: SWF screatch registers need an offset on VLV
drm/i915: Introduce i915_vgacntrl_reg()
drm/i915: Kill IS_DISPLAYREG()
drm/i915: Set the SR01 "screen off" bit in i915_redisable_vga() too

Wang Xingchao (1):
drm/i915: HDMI/DP - ELD info refresh support for Haswell

Yasuaki Ishimatsu (1):
GPU/i915: Fix acpi_bus_get_device() check in drivers/gpu/drm/i915/intel_opregion.c

drivers/char/agp/intel-gtt.c | 87 ++--
drivers/gpu/drm/drm_edid.c | 33 ++
drivers/gpu/drm/i915/Makefile | 1 +
drivers/gpu/drm/i915/i915_debugfs.c | 131 +++++-
drivers/gpu/drm/i915/i915_dma.c | 43 +-
drivers/gpu/drm/i915/i915_drv.c | 116 +-----
drivers/gpu/drm/i915/i915_drv.h | 381 +++++++++++-------
drivers/gpu/drm/i915/i915_gem.c | 285 +++++++-------
drivers/gpu/drm/i915/i915_gem_evict.c | 2 +-
drivers/gpu/drm/i915/i915_gem_execbuffer.c | 280 +++++++------
drivers/gpu/drm/i915/i915_gem_gtt.c | 590 +++++++++++++++-------------
drivers/gpu/drm/i915/i915_gem_stolen.c | 8 +-
drivers/gpu/drm/i915/i915_gem_tiling.c | 21 +-
drivers/gpu/drm/i915/i915_irq.c | 130 ++++--
drivers/gpu/drm/i915/i915_reg.h | 286 +++++++-------
drivers/gpu/drm/i915/i915_suspend.c | 540 ++-----------------------
drivers/gpu/drm/i915/i915_ums.c | 503 ++++++++++++++++++++++++
drivers/gpu/drm/i915/intel_crt.c | 29 +-
drivers/gpu/drm/i915/intel_ddi.c | 29 +-
drivers/gpu/drm/i915/intel_display.c | 144 ++++---
drivers/gpu/drm/i915/intel_dp.c | 64 ++-
drivers/gpu/drm/i915/intel_drv.h | 18 +-
drivers/gpu/drm/i915/intel_fb.c | 8 +-
drivers/gpu/drm/i915/intel_hdmi.c | 72 +++-
drivers/gpu/drm/i915/intel_i2c.c | 2 +
drivers/gpu/drm/i915/intel_modes.c | 5 +-
drivers/gpu/drm/i915/intel_opregion.c | 2 +-
drivers/gpu/drm/i915/intel_overlay.c | 4 +-
drivers/gpu/drm/i915/intel_pm.c | 62 ++-
drivers/gpu/drm/i915/intel_ringbuffer.c | 12 +-
drivers/gpu/drm/i915/intel_sdvo.c | 59 ++-
include/drm/drm_crtc.h | 1 +
include/drm/intel-gtt.h | 19 +-
include/uapi/drm/i915_drm.h | 20 +
34 files changed, 2255 insertions(+), 1732 deletions(-)
create mode 100644 drivers/gpu/drm/i915/i915_ums.c

--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/