Intel-GFX Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [pull] drm-intel-next for 3.9
@ 2013-02-05 10:49 Daniel Vetter
  0 siblings, 0 replies; 2+ messages in thread
From: Daniel Vetter @ 2013-02-05 10:49 UTC (permalink / raw)
  To: Dave Airlie; +Cc: Intel Graphics Development, DRI Development, LKML

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

^ permalink raw reply	[flat|nested] 2+ messages in thread
* [pull] drm-intel-next for 3.9
@ 2013-01-10 19:42 Daniel Vetter
  0 siblings, 0 replies; 2+ messages in thread
From: Daniel Vetter @ 2013-01-10 19:42 UTC (permalink / raw)
  To: Dave Airlie; +Cc: Intel Graphics Development, DRI Development

Hi Dave,

We're already at -rc3, so imo time to annoy you with a -next pull request.
Highlights:
- seqno wrap fixes and debug infrastructure from Mika Kuoppala and Chris
  Wilson
- some leftover kill-agp on gen6+ patches from Ben
- hotplug improvements from Damien
- clear fb when allocated from stolen, avoids dirt on the fbcon (Chris)
- Stolen mem support from Chris Wilson, one of the many steps to get to
  real fastboot support.
- Some DDI code cleanups from Paulo.
- Some refactorings around lvds and dp code.
- some random little bits&pieces

Note that this -next pull has a bunch of conflicts with -fixes already in
3.8, but nothing really nefarious. You can peak at the merges in my
-nigthly branch for the git rerere solution I have stored.

I'll also pester you with a patchbomb for the modeset locking rework soon,
after some tiny changes since the last round (drm DocBook updated!) I
think that stuff is ready, too.

Cheers, Daniel

The following changes since commit 2ff4aeac39dbdcac934694413767f09a27965e11:

  drm/i915: Fix pte updates in ggtt clear range (2012-11-29 11:14:44 +0100)

are available in the git repository at:

  git://people.freedesktop.org/~danvet/drm-intel tags/drm-intel-next-2012-12-21

for you to fetch changes up to c0c36b941b6f0be6ac74f340040cbb29d6a0b06c:

  drm/i915: Return the real error code from intel_set_mode() (2012-12-20 21:09:55 +0100)

----------------------------------------------------------------
Ben Widawsky (6):
      drm/i915: BUG() if fences are used on unsupported platform
      drm/i915: Bug on unsupported swizzled platforms
      drm/i915: Missed conversion to gtt_pte_t
      drm/i915: Move even more gtt code to i915_gem_gtt
      drm/i915: Move GSM mapping into dev_priv
      drm/i915: Make GSM void

Chris Wilson (26):
      drm/i915: Increase the response time for slow SDVO devices
      drm/i915: Wait upon the last request seqno, rather than a future seqno
      drm/i915: Preallocate next seqno before touching the ring
      drm/i915: Simplify flushing activity on the ring
      drm/i915: Rearrange code to only have a single method for waiting upon the ring
      drm/i915: Include the last semaphore sync point in the error-state
      drm/i915/debugfs: Prune a couple of superfluous leading zeros from bo domains
      drm: Introduce drm_mm_create_block()
      drm: Introduce an iterator over holes in the drm_mm range manager
      drm/i915: Fix detection of base of stolen memory
      drm/i915: Avoid clearing preallocated regions from the GTT
      drm/i915: Delay allocation of stolen space for FBC
      drm/i915: Allow objects to be created with no backing pages, but stolen space
      drm/i915: Support readback of stolen objects upon error
      drm/i915: Introduce i915_gem_object_create_stolen()
      drm/i915: Allocate fbcon from stolen memory
      drm/i915: Allocate ringbuffers from stolen memory
      drm/i915: Allocate overlay registers from stolen memory
      drm/i915: Use a slab for object allocation
      drm/i915: Tighten the checks for invalid relocation domains
      drm/i915: Remove check for conflicting relocation write-domains
      drm/i915: Reduce memory pressure during shrinker by preallocating swizzle pages
      drm/i915: Open-code i915_gpu_idle() for handling seqno wrapping
      drm/i915: Access to snooped system memory through the GTT is incoherent
      drm/i915: Clear the stolen fb before enabling
      drm/i915: Return the real error code from intel_set_mode()

Damien Lespiau (7):
      drm/i915: Fix dieing -> dying typo
      drm/i915: Cleanup SHOTPLUG_CTL status bits definitions
      drm/i915/hdmi: Read the HPD status before trying to read the EDID
      drm/i915/dp: Read the HPD status before trying to read the DPCD
      drm/i915/dp: Log the DPCD only if we have successfully retrieved one
      drm/i915: Implement ibx_digital_port_connected() for IBX
      drm/i915: Remove stale comment about intel_dp_detect()

Daniel Vetter (35):
      drm/i915: force restore on lid open
      drm/i915: remove duplicate register #defines
      drm/i915: add encoder->pre_pll_enable callback
      drm/i915: replace ad-hoc dual-link lvds checks
      drm/i915: move is_dual_link_lvds to intel_lvds.c
      drm/i915: track is_dual_link in intel_lvds
      drm/i915: add intel_lvds->reg
      drm/i915: move intel_update_lvds to intel_lvds->pre_pll_enable
      drm/i915: enable intel_lvds->pre_pll_enable for ilk+, too
      drm/i915: simplify shmem pwrite/pread slowpath handling
      drm/i915: optimize the shmem_pwrite slowpath handling
      drm/i915: optimize ilk/snb irq handler
      drm/i915: fixup sparse warnings
      drm/i915: haswell has the same irq handlers as ivb
      drm/i915: don't handle PIPE_LEGACY_BLC_EVENT_STATUS on vlv
      drm/i915: setup the hangcheck timer early
      drm/i915: reorder setup sequence to have irqs for output setup
      drm/i915: extract gmbus_wait_hw_status
      drm/i915: wire up gmbus irq handler
      drm/i915: use the gmbus irq for waits
      drm/i915: use gmbus irq to wait for gmbus idle
      drm/i915: wire up do aux channel done interrupt
      drm/i915: irq-drive the dp aux communication
      drm/i915: use _NOTRACE for gmbus/dp aux wait loops
      drm/i915: rip out pre-DDI stuff from haswell_crtc_mode_set
      drm/i915: move set_pll_edp to intel_dp.c
      drm/i915: rip out pre-production ilk cpu edp w/a
      drm/i915: use wait_for_vblank instead of msleep(17)
      drm/i915: WARN on !crtc in intel_dp_link_down
      drm/i915: drop unnecessary clearing of pch dp transcoder timings
      drm/i915: extract common link_m_n helpers
      drm/i915: Fixup hpd irq register setup ordering
      drm/i915: rework locking for intel_dpio|sbi_read|write
      drm/i915: clean up PIPECONF bpc #defines
      drm/i915: fixup overlay stolen memory leak

Dexuan Cui (1):
      drm/i915: Remove duplicate and unused register #defines in i915_reg.h

Luis R. Rodriguez (1):
      i915: convert struct spinlock to spinlock_t

Mika Kuoppala (13):
      drm/i915: fix possible NULL dereference of dev_priv
      drm/i915: Set sync_seqno properly after seqno wrap
      drm/i915: Add debugfs entry to read/write next_seqno
      drm/i915: Fix debugfs seqno info print to use uint
      drm/i915: Split intel_ring_begin
      drm/i915: Add intel_ring_handle_seqno wrap
      drm/i915: Don't emit semaphore wait if wrap happened
      drm/i915: Set initial seqno value close to wrap boundary
      drm/i915: Introduce ring set_seqno
      drm/i915: Initialize hardware semaphore state on ring init
      drm/i915: Always clear semaphore mboxes on seqno wrap
      drm/i915: Introduce i915_gem_set_seqno()
      drm/i915: Make next_seqno debugs entry to use i915_gem_set_seqno

Paulo Zanoni (11):
      drm: add drm_mode_cea_vic
      drm/i915: set the VIC of the mode on the AVI InfoFrame
      drm/i915: intel_prepare_ddi_buffers should be static
      drm/i915: remove Haswell code from ironlake_fdi_pll_enable
      drm/i915: add HAS_DDI check
      drm/i915: invert the log inside intel_prepare_ddi
      drm/i915: kill intel_dp_link_clock()
      drm/i915: be less verbose when handling gmbus/aux irqs
      drm/i915: check for the PCH when setting pch_transcoder
      drm/i915: remove leftover display.update_wm assignment
      drm/i915: add intel_dp_set_signal_levels

Sachin Kamat (1):
      drm/i915: Remove duplicate inclusion of drm/drm_edid.h

Tim Gardner (1):
      i915: intel_set_mode: Reduce stack allocation from 500 bytes to 2 pointers

Tomas Janousek (1):
      drm/i915: don't prevent CPU idle states

Ville Syrjälä (1):
      drm/i915: Kill i915_gem_execbuffer_wait_for_flips()

 drivers/char/agp/intel-gtt.c               |    1 -
 drivers/gpu/drm/drm_edid.c                 |   19 +
 drivers/gpu/drm/drm_mm.c                   |   96 ++--
 drivers/gpu/drm/i915/i915_debugfs.c        |  105 ++++-
 drivers/gpu/drm/i915/i915_dma.c            |   57 ++-
 drivers/gpu/drm/i915/i915_drv.c            |    4 +-
 drivers/gpu/drm/i915/i915_drv.h            |   89 +++-
 drivers/gpu/drm/i915/i915_gem.c            |  239 +++++-----
 drivers/gpu/drm/i915/i915_gem_context.c    |    3 +-
 drivers/gpu/drm/i915/i915_gem_dmabuf.c     |    5 +-
 drivers/gpu/drm/i915/i915_gem_execbuffer.c |   83 +---
 drivers/gpu/drm/i915/i915_gem_gtt.c        |  108 ++++-
 drivers/gpu/drm/i915/i915_gem_stolen.c     |  305 +++++++++----
 drivers/gpu/drm/i915/i915_gem_tiling.c     |   12 +
 drivers/gpu/drm/i915/i915_irq.c            |  164 +++++--
 drivers/gpu/drm/i915/i915_reg.h            |   58 +--
 drivers/gpu/drm/i915/intel_crt.c           |    2 +-
 drivers/gpu/drm/i915/intel_ddi.c           |   24 +-
 drivers/gpu/drm/i915/intel_display.c       |  650 ++++++++--------------------
 drivers/gpu/drm/i915/intel_dp.c            |  295 +++++++------
 drivers/gpu/drm/i915/intel_drv.h           |   11 +-
 drivers/gpu/drm/i915/intel_fb.c            |   21 +-
 drivers/gpu/drm/i915/intel_hdmi.c          |   22 +-
 drivers/gpu/drm/i915/intel_i2c.c           |  101 +++--
 drivers/gpu/drm/i915/intel_lvds.c          |  167 ++++++-
 drivers/gpu/drm/i915/intel_modes.c         |    1 -
 drivers/gpu/drm/i915/intel_overlay.c       |    6 +-
 drivers/gpu/drm/i915/intel_pm.c            |   23 +-
 drivers/gpu/drm/i915/intel_ringbuffer.c    |  217 +++++++---
 drivers/gpu/drm/i915/intel_ringbuffer.h    |   30 +-
 drivers/gpu/drm/i915/intel_sdvo.c          |   38 +-
 drivers/gpu/drm/i915/intel_tv.c            |    3 +-
 include/drm/drm_crtc.h                     |    1 +
 include/drm/drm_mm.h                       |   40 ++
 include/drm/intel-gtt.h                    |    2 -
 35 files changed, 1763 insertions(+), 1239 deletions(-)
-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2013-02-05 10:49 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-02-05 10:49 [pull] drm-intel-next for 3.9 Daniel Vetter
  -- strict thread matches above, loose matches on Subject: below --
2013-01-10 19:42 Daniel Vetter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox