[git pull] drm main pull for 3.4-rc1

Dave Airlie airlied at linux.ie
Wed Mar 21 03:47:14 PDT 2012


Hi Linus,

This is the main drm pull request, I'm probably going to send two more 
smaller ones, will explain below.

This contains a patch that is also in the fbdev tree, but it should be the 
same patch, it added an API for hot unplugging framebuffer devices, and I 
need that API for a new driver. 

It also contains some changes to the i2c tree which Jean has acked, and 
one change to moorestown platform stuff in x86. 

Highlights:
new drivers: UDL driver for USB displaylink devices, kms only, should 
support correct hotplug operations. 
core: i2c speedups + better hotplug support, EDID overriding via firmware 
interface - allows user to load a firmware for a broken monitor/kvm from 
userspace, it even has documentation for it.
exynos: new HDMI audio + hdmi 1.4 + virtual output driver
gma500: code cleanup
radeon: cleanups, CS optimisations, streamout support and pageflip fix
nouveau: NVD9 displayport support + more reclocking work
i915: re-enabling GMBUS, finish gpu patch (might help hibernation who 
knows), missed irq fixes, stencil tiling fixes, interlaced support, 
aliasesd PPGTT support for SNB/IVB, swizzling for SNB/IVB, semaphore fixes

As well as the usual bunch of cleanups and fixes all over the place.

I've got two things I'd like to merge a bit later:

a) AMD support for all their new radeonhd 7000 series GPU and APUs. AMD 
dropped this a bit late due to insane internal review processes, (please 
AMD just follow Intel and let open source guys ship stuff early) however I 
don't want to penalise people who own this hardware (since its been on 
sale for 3-4 months and GPU hw doesn't exactly have a lifetime in years) 
and consign them to using closed drivers for longer than necessary. The 
changes are well contained and just plug into the driver new gpu 
functionality so they should be fairly regression proof. I just want to 
give them a bit of a run on the hw AMD kindly sent me.

b) drm prime/dma-buf interface code. This is just infrastructure code to 
expose the dma-buf stuff to drm drivers and to userspace. I'm not planning 
on pushing any driver support in this cycle (except maybe exynos), but I'd 
like to get the infrastructure code in so for the next cycle I can start 
getting the driver support into the individual drivers. We have started 
driver support for i915, nouveau and udl along with I think exynos and 
omap in staging. However this code relies on the dma-buf tree being pulled 
into your tree first since it needs the latest interfaces from that tree. 
I'll push to get that tree sent asap.

(oh and any warnings you see in i915 are gcc's fault from what anyone can 
see).

Regards,
Dave.

The following changes since commit fde7d9049e55ab85a390be7f415d74c9f62dd0f9:

  Linux 3.3-rc7 (2012-03-10 13:49:52 -0800)

are available in the git repository at:
  git://people.freedesktop.org/~airlied/linux drm-next

Adam Jackson (7):
      drm/i915: Silence _DSM errors
      drm/i915: Implement plane-disabled assertion for PCH too
      drm/i915: Fix assert_pch_hdmi_disabled to mention HDMI (not DP)
      drm/i915: Remove a comment about PCH from the non-PCH path
      drm/i915/dp: Tweak auxch clock divider for PCH
      drm/i915/dp: Use auxch precharge value of 5 everywhere
      drm/i915/dp: Check for AUXCH error before checking for success

Alan Cox (8):
      gma500: plug in more of the gamma functionality
      gma500: clean up some of the struct fields we no longer use
      gma500: now move the Oaktrail save state into its own structure
      gma500: Kconfig documentation tweak
      gma500: re-order calling on the fix setup so we set up after the DRM layer
      gma500: rework register stuff sanely
      gma500: Fix resume paths
      gma500: suspend/resume support for Cedartrail

Alex Deucher (19):
      drm/radeon/kms/dce3+: add support for hw i2c using atom
      drm/radeon/kms: add r1xx/r2xx support for CS_KEEP_TILING_FLAGS
      drm/radeon/kms: add r1xx/r2xx CS support for tiled textures
      drm/radeon/kms: add wait_for_vblank asic callback
      drm/radeon/kms: add a radeon asic callback for mc idle
      drm/radeon/kms: reorganize hpd callbacks
      drm/radeon/kms: reorganize page flip callbacks
      drm/radeon/kms: reorganize pm callbacks
      drm/radeon/kms: reorganize copy callbacks
      drm/radeon/kms: reorganize irq callbacks
      drm/radeon/kms: remove unused cp callbacks from radeon_asic
      drm/radeon/kms: make ring_start, ring_test, and ib_test per ring
      drm/radeon/kms: reorganize gart callbacks
      drm/radeon/kms: reorganize display callbacks
      drm/radeon/kms: move clock/pcie setting callbacks into pm struct
      drm/radeon/kms: reorganize surface callbacks
      drm/radeon/kms: clean up radeon_asic struct (v2)
      drm/radeon/kms: fix analog load detection on DVI-I connectors
      drm/radeon/kms: add connector quirk for Fujitsu D3003-S2 board

Axel Lin (1):
      drm: Fix kcalloc parameters swapped

Ben Skeggs (45):
      drm/nouveau: move vram detection funcs to chipset-specific fb code
      drm/nouveau: memory type detection for the really old chipsets
      drm/nv20: split PFB code out of nv10_fb.c
      drm/nv20-nv40: add memory type detection
      drm/nv50: add memory type detection
      drm/nv50: hopefully handle the DDR2/DDR3 memtype detection somewhat better
      drm/nvc0: add initial memory type detection
      drm/nouveau: rework the init/takedown ordering
      drm/nouveau/pm: avoid potential divide-by-zero
      drm/nouveau/pm: restructure bios table parsing
      drm/nouveau/pm: readback boot perflvl *before* parsing vbios
      drm/nouveau/pm: calculate memory timings at perflvl creation time
      drm/nouveau/pm: embed timings into perflvl structs
      drm/nouveau/pm: introduce ram reclocking helper
      drm/nv50/pm: initial work towards proper memory reclocking, with timings
      drm/nv50/disp: more accurate function to determine active crtcs
      drm/nv50/pm: use hwsq for engine reclocking too
      drm/nouveau/pm: track mr2 for gddr3
      drm/nv50: fix detection of second vram rank
      drm/nouveau/pm: detect when we need dll disabled for gddr3
      drm/nouveau/pm: fix dll off -> dll on transitions
      drm/nouveau/pm: rework to allow selecting separate profiles for ac/battery
      drm/nouveau/pm: extend profile interface for destroy/init/fini
      drm/nouveau/mem: handle dll_off for ddr2/ddr3
      drm/nouveau: recognise DCB connector type for DP+DVI+VGA DMS-59
      drm/nv50-nvc0/vm: support unsnooped system memory
      drm/nvc0/fb: detect presense of second rank
      drm/nouveau/pm: init only after display subsystem has been created
      drm/nouveau/mxm: call mxmi to determine revision before calling mxms
      drm/nvc0/pm: restrict pll mode to clocks that can actually use it
      drm/nv40/pm: fix fanspeed regression
      drm/nvc0/vram: get part count from PUNITS
      drm/nvd0/disp: attempt to handle more than 2 crtcs if possible
      drm/nouveau/bios: attempt acpi rom fetch before pcirom
      drm/nouveau/bios: rework vbios shadowing
      drm/nouveau/pm: fix oops if chipset has no pm support at all
      drm/nouveau/dp: make functions for executing various bios tables
      drm/nouveau/dp: move all nv50/sor-specific code out of nouveau_dp.c
      drm/nouveau/dp: make dp dpms function common, call from sor code instead
      drm/nvd0/disp: initial implementation of displayport
      drm/nvd0/disp: fix dcb sor link matching in supervisor handler
      drm/nouveau/dp: account for channel coding overhead in link training
      drm/nvd0/disp: move syncs/magic setup to or mode_set
      drm/nvd0/disp: disconnect encoders before reprogramming them
      drm/nouveau: map first page of mmio early and determine chipset earlier

Ben Widawsky (7):
      agp/intel: Add pci id for hostbridge from has/qemu
      drm/i915: argument to control retiring behavior
      drm/i915: drm/i915: Fix recursive calls to unmap
      drm/i915: correct lock type in destroy
      drm/i915: use gtfifodbg
      drm/i915: catch gtfifo errors on forcewake_put
      drm/i915: check gtfifodbg after possibly failed writes

Benson Leung (1):
      drm/i915: Fix single msg gmbus_xfers writes

Carsten Emde (1):
      drm: allow loading an EDID as firmware to override broken monitor

Chris Wilson (13):
      drm/i915: Check that plane/pipe is disabled before removing the fb
      drm/i915: Separate fence pin counting from normal bind pin counting
      drm/i915: Remove the upper limit on the bo size for mapping into the CPU domain
      drm/i915: Handle unmappable buffers during error state capture
      drm/i915: Record the tail at each request and use it to estimate the head
      drm/i915: Record the in-flight requests at the time of a hang
      drm/i915: Record the position of the request upon error
      drm/i915/lvds: Always use the presence pin for LVDS on PCH
      drm/i915/bios: Downgrade the "signature missing" DRM_ERROR to debug
      drm/i915: Only bump refcnt on objects scheduled for eviction
      drm/i915: No need to search again after retiring requests
      drm/i915: Silence the error message from i915_wait_request()
      drm/i915: Only clear the GPU domains upon a successful finish

Christian König (4):
      drm/radeon: move ring syncing after bo validation
      drm/radeon/kms: no need to align IB like this
      drm/radeon: also make the cs_parse function per ring
      drm/radeon: fix IB debugfs files for multiple cards

Christoph Bumiller (1):
      drm/nv50/display: expose color vibrance control

Dan Carpenter (1):
      drm/radeon/evergreen: make texdw[] array larger

Daniel Vetter (54):
      drm/i915: kill i915_mem.c
      drm/i915: clarify gen2 pageflip cmd
      drm/i915: fixup assert_pipe to take the pipe A quirk into account
      drm/i915: switch ring->id to be a real id
      drm/i915: refactor ring error state capture to use arrays
      drm/i915: collect more per ring error state
      drm/i915/ringbuffer: kill snb blt workaround
      drm/i915: don't trash the gtt when running out of fences
      drm/i915: refactor debugfs open function
      drm/i915: refactor debugfs create functions
      drm/i915: capture error_state also for stuck rings
      drm/i915: remove the i915_batchbuffer_info debugfs file
      drm/i915: reject GTT domain in relocations
      drm/i915: add per-ring fault reg to error_state
      drm/i915: fix swizzle detection for gen3
      drm/i915: add debugfs file for swizzling information
      drm/i915: fall through pwrite_gtt_slow to the shmem slow path
      drm/i915: rewrite shmem_pwrite_slow to use copy_from_user
      drm/i915: rewrite shmem_pread_slow to use copy_to_user
      drm/i915: swizzling support for snb/ivb
      drm/i915: consolidate swizzling control bit frobbing
      drm/i915: add gen6+ registers to i915_swizzle_info
      drm/i915: s/DRM_ERROR/DRM_DEBUG in i915_gem_execbuffer.c
      drm/i915: dump even more into the error_state
      agp/intel-gtt: export the scratch page dma address
      agp/intel-gtt: export the gtt pagetable iomapping
      drm/i915: initialization/teardown for the aliasing ppgtt
      drm/i915: ppgtt binding/unbinding support
      drm/i915: ppgtt register definitions
      drm/i915: ppgtt debugfs info
      drm/i915: enable ppgtt
      Merge remote-tracking branch 'airlied/drm-fixes' into drm-intel-next-queued
      drm/i915: clean up interlaced pipeconf bit definitions
      drm/i915: fixup interlaced vertical timings confusion, part 1
      drm/i915: fixup interlaced vertical timings confusion, part 2
      drm/i915: fixup interlaced support on ilk+
      drm/i915: don't allow interlaced pipeconf on gen2
      drm/i915: correctly program the VSYNCSHIFT register
      drm/i915: fixup overlay checks for interlaced modes
      drm/i915: outstanding_lazy_request is a u32
      drm/i915: fixup seqno allocation logic for lazy_request
      drm/i915: enable forcewake voodoo also for gen6
      drm/i915: fix up locking inconsistency around gem_do_init
      drm/modes: do not enforce an odd vtotal for interlaced modes
      Merge remote-tracking branch 'airlied/drm-next' into for-airlied
      drm/i915: use the new hdmi_force_audio enum more
      drm/i915: error_buffer->ring should be signed
      drm/i915: add dev_priv to intel_gmbus
      drm/nouveau: do a better job at hiding the NIH i2c bit-banging algo
      i2c: export bit-banging algo functions
      drm/i915: merge struct intel_gpio into struct intel_gmbus
      drm/i915: merge gmbus and gpio i2c adpater into one
      drm/i915: i2c: unconditionally set up gpio fallback
      drm/i915: reenable gmbus on gen3+ again

Danny Kukawka (1):
      Revert "drivers/gpu/drm/i915/intel_overlay.c needs seq_file.h"

Dave Airlie (19):
      Merge branch 'for-airlied' of git://people.freedesktop.org/~danvet/drm-intel into drm-core-next
      Merge branch 'drm-vmware-next' into drm-core-next
      Merge tag 'drm-intel-next-2012-02-07' of git://people.freedesktop.org/~danvet/drm-intel into drm-core-next
      drm: move pci bus master enable into driver.
      drm: add some caps for userspace to discover more info for dumb KMS driver (v2)
      Merge tag 'drm-intel-next-2012-02-16-merge-resolved' of git://people.freedesktop.org/~danvet/drm-intel into drm-core-next
      drm: drop setting vm_file to filp
      Merge branch 'drm-gma500-alanc' into drm-core-next
      Merge branch 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-core-next
      drm/nouveau: add userspace fallback hints.
      drm: Merge tag 'v3.3-rc7' into drm-core-next
      drm/sysfs: protect sysfs removal code against being run twice.
      drm/modeset: add helper to unplug all connectors from sysfs
      drm: add core support for unplugging a device (v2)
      drm/udl: initial UDL driver (v4)
      drm: fix build with UDL if USB is a module
      drm/usb: move usb support into a separate module
      drm/radeon: dp only enable enhanced framing if sink supports.
      Merge tag 'drm-intel-next-2012-03-01' of git://people.freedesktop.org/~danvet/drm-intel into drm-next

Eric Anholt (2):
      drm/i915: Remove the MI_FLUSH_ENABLE setting.
      drm/i915: Correct the bit number for the MI_FLUSH_ENABLE.

Eugeni Dodonov (5):
      drm/i915: there is no pipe CxSR on ironlake
      drm/i915: fix typo in function name
      drm/i915: add a LLC feature flag in device description
      drm/i915: print out which pixel format we do not support
      drm: give up on edid retries when i2c bus is not responding

Eunchul Kim (1):
      drm/exynos: add default pixel format for plane

Felix Kuehling (1):
      drm/radeon: fix deferred page-flip detection logic on Avivo-based ASICs

Ilija Hadzic (2):
      drm/radeon/kms: common definitions for blit copy code
      drm/radeon/kms: remove benchmarks shorter than one page

Inki Dae (4):
      drm/exynos: added mode_fixup feature and code clean.
      drm/exynos: update gem and buffer framework.
      drm/exynos: added new funtion to get/put dma address.
      drm/exynos: added virtual display driver.

Jakob Bornecrantz (5):
      vmwgfx: Rework fence event action
      vmwgfx: Make it possible to get fence from execbuf
      vmwgfx: Pipe fence out of screen object dirty functions
      vmwgfx: Add page flip support
      vmwgfx: Pick up the initial size from the width and height regs

Jean Delvare (3):
      drm/kms: Make i2c buses faster
      drm/radeon/kms: Use the standard VESA timeout for DDC channels
      drm/nouveau: Fix module parameter description formats

Jerome Glisse (1):
      drm/radeon: add support for evergreen/ni tiling informations v11

Jesper Juhl (1):
      intel, gma500, lvds: Fix use after free and mem leak in psb_intel_lvds_init()

Jesse Barnes (3):
      drm/i915: split 9xx refclk & sdvo tv code out
      drm/i915: split out pll divider code
      drm/i915: properly mask and or watermark values for sprites

Joe Perches (1):
      drm/ttm: Use pr_fmt and pr_<level>

Joonyoung Shim (7):
      drm/exynos: remove exynos_mixer.h
      drm/exynos: add HDMI version 1.4 support
      drm/exynos: release pending pageflip events when closed
      drm/exynos: remove module of exynos drm subdrv
      drm/exynos: add subdrv open/close functions
      drm/exynos: add is_local member in exynos_drm_subdrv struct
      drm/exynos: cleanup exynos_hdmi.h

Julia Lawall (2):
      drivers/gpu/drm/radeon/radeon_cs.c: eliminate possible double free
      drivers/gpu/drm/savage/savage_state.c: add missing kfree

Kay Sievers (1):
      udlfb: remove sysfs framebuffer device with USB .disconnect()

Kirill A. Shutemov (40):
      gma500: make init_pm callback in struct psb_op optional
      gma500: initial medfield merge
      gma500: psbfb_create(): move depth initialization out of loop
      gma500: mdfld_dsi_output_init() drop unused parameter
      gma500: medfield: drop a bit of dead code
      gma500: gem_glue: add missing include
      gma500: drop unused psbfb_suspend()/psbfb_resume()
      gma500: mark psb_fbdev_destroy() and psb_fbdev_fini() as static
      gma500: gtt: mark psb_gtt_entry() and psb_gtt_alloc() as static
      gma500: mmu: drop unused psb_get_default_pd_addr()
      gma500: mmu: mark psb_mmu_free_pt() and psb_mmu_pt_alloc_map_lock() as static
      gma500: use DRM_IOCTL_DEF_DRV instead of custom PSB_IOCTL_DEF
      gma500: fix ioctl confict
      gma500: psb_driver_load(): drop unused variables
      gma500: mark psb_driver_device_is_agp() and psb_driver_preclose() as static
      gma500: fix two -Wmissing-field-initializers warnings
      gma500: fix cdv_intel_wait_for_vblank() prototype
      gma500: cdv_intel_crt: add missing include
      gma500: cdv_intel_crt: drop dead code
      gma500: cdv_intel_crt: drop unused variables
      gma500: cdv_intel_crt: mark few functions as static
      gma500: cdv_intel_hdmi: add missing include
      gma500: cdv_intel_lvds: mark few functions as static
      gma500: cdv_intel_lvds: #if 0 currently unused functions
      gma500: mdfld_device: mark few functions as static
      gma500: mdfld_dsi_dpi: drop unused variables
      gma500: mdfld_dsi_pkg_sender: fix -Wtype-limits warning
      gma500: mdfld_intel_display: drop unused variables
      gma500: oaktrail_crtc: mark few functions as static
      gma500: oaktrail_crtc: drop unused variables
      gma500: oaktrail_hdmi: drop dead code
      gma500: oaktrail_hdmi: fix -Wmissing-field-initializers warning
      gma500: mark oaktrail_backlight_init() as static
      gma500: oaktrail_hdmi_i2c_access() drop unused variable
      gma500: oaktrail_lvds_init() drop unused variable
      gma500: drop unused psb_intel_modeset_cleanup()
      gma500: mark psb_intel_pipe_set_base() as static
      gma500: psb_intel_display: drop unused variables
      gma500: mark psb_intel_sdvo_hdmi_sink_detect() as static
      gma500: psb_irq: mark mid_{enable, disable}_pipe_event() as static

Mandeep Singh Baines (1):
      drm: remove master fd restriction on mode setting getters

Marc Gariepy (1):
      drm/i915: Ignore LVDS on hp t5745 and hp st5747 thin client

Marek Olšák (9):
      drm/radeon/kms: add support for streamout v7
      drm/radeon/kms: skip cb/db checking if SX_MISC is 1 on r600+
      drm/radeon/kms: make some DRM errors more informative
      drm/radeon/kms: compute GPU addresses correctly on evergreen
      drm/radeon/kms: optimize streamout checking for evergreen
      drm/radeon/kms: skip db/cb/streamout checking when possible on evergreen
      drm/radeon/kms: remove some unused variables in evergreen_cs_track
      drm/radeon/kms: compute GPU addresses correctly on r600
      drm/radeon/kms: skip db/cb/streamout checking when possible on r600

Martin Peres (6):
      drm/nouveau/pm: style fixes
      drm/nouveau/pm: restore fan speed after suspend
      drm/nouveau: move pwm_divisor to the nouveau_pm_fan struct
      drm/nouveau/pm: improve the reclocking logs' readability
      drm/nv50/pm: wait for all fifo-connected engines to idle before reclocking
      drm/nv50/hwsq: some nv92 fixes

Matt Turner (3):
      drm: remove unneeded redefinition of DDC_ADDR
      drm/radeon: use DDC_ADDR instead of hard-coding it
      drm/i915: use DDC_ADDR instead of hard-coding it

Michel Dänzer (3):
      drm/radeon: Restrict offset for legacy hardware cursor.
      drm/radeon: Restrict offset for legacy display engine.
      drm/radeon: Drop radeon_gem_object_(un)pin.

Paulo Zanoni (2):
      drm/i915: set interlaced bits for TRANSCONF
      drm/i915: add missing SDVO bits for interlaced modes on ILK

Peter Ross (2):
      drm/i915: allow interlaced mode output on the SDVO connector
      drm/i915: allow interlaced mode output on the HDMI connector

Philipp Grete (1):
      drm/i915: Fixes distorted external screen image on HP 2730p

Rob Clark (1):
      drm: cope with platformdev->id == -1

Roy Spliet (3):
      drm/nouveau/pm: improve memory timing generation
      drm/nouveau/pm: implement DDR2/DDR3/GDDR3/GDDR5 MR generation and validation
      drm/nouveau/pm: several fixes for nvc0 memory timings

Sascha Hauer (15):
      drm crtc: add forgotten idr cleanup functions
      drm/edid: drm modes have to be free with drm_mode_destroy
      drm crtc: use drm_mode_destroy instead of kfree in drm_mode_remove
      drm drm_fb_helper: destroy modes
      drm: add proper return value for drm_mode_crtc_set_gamma_size
      drm fb helper: use drm_helper_connector_dpms to do dpms
      drm fb helper: remove unused variable conn_limit
      drm fb helper: remove unused variable crtc_id
      drm crtc: Fix locking comments
      drm crtc_helper: use list_for_each_entry
      drm exynos: use drm_fb_helper_set_par directly
      drm: add convenience function to create an enum property
      drm: add convenience function to create an range property
      drm: do not set fb_info->pixmap fields
      drm: remove unused code

Sean Paul (2):
      drm/i915: Only look for matching clocks for LVDS downclock
      drm/i915: Don't lock panel registers when downclocking

Seung-Woo Kim (1):
      drm/exynos: enable hdmi audio feature

Simon Que (1):
      drivers: i915: Fix BLC PWM register setup

Thomas Hellstrom (4):
      vmwgfx: Clean up pending event references to struct drm_file objects on close
      drm/vmwgfx: Treat out-of-range initial width and height as host errors
      vmwgfx: Move function declaration to correct header
      drm/vmwgfx: Bump driver minor

Thomas Meyer (1):
      drm/i915: Use kcalloc instead of kzalloc to allocate array

Tvrtko Ursulin (1):
      drm/radeon/kms: reduce probe latency on digital connectors

Ville Syrjälä (13):
      drm: Reject mode set with current fb if no current fb is bound
      drm: Change drm_display_mode::type to unsigned
      drm: Warn if mode to umode conversion overflows the destination types
      drm: Check crtc x and y coordinates
      drm: Make drm_mode_attachmode() void
      drm: Fix memory leak in drm_mode_setcrtc()
      drm: Check user mode against overflows
      drm: Check CRTC viewport against framebuffer size
      drm: Fix drm_mode_attachmode_crtc()
      drm: Make drm_crtc_convert_{umode, to_umode} static and constify their params
      drm: Handle drm_object_get() failures
      drm: Use a flexible array member for blob property data
      drm: Add drm_mode_copy()

Wu Fengguang (2):
      drm/i915: set AUD_CONFIG N_value_index for DisplayPort
      drm/i915: add a "force-dvi" HDMI audio mode

Xi Wang (1):
      drm/nouveau/dp: fix bad comparison in dp_link_train_commit()

Yoichi Yuasa (1):
      gma500: Fix mmap frambuffer

Yufeng Shen (1):
      drm/i915: Fix race condition in accessing GMBUS

 Documentation/EDID/1024x768.S                 |   44 +
 Documentation/EDID/1280x1024.S                |   44 +
 Documentation/EDID/1680x1050.S                |   44 +
 Documentation/EDID/1920x1080.S                |   44 +
 Documentation/EDID/HOWTO.txt                  |   39 +
 Documentation/EDID/Makefile                   |   26 +
 Documentation/EDID/edid.S                     |  261 ++++
 Documentation/EDID/hex                        |    1 +
 Documentation/kernel-parameters.txt           |   15 +
 arch/x86/platform/mrst/mrst.c                 |   16 +
 drivers/char/agp/intel-agp.c                  |    1 +
 drivers/char/agp/intel-gtt.c                  |   10 +-
 drivers/gpu/drm/Kconfig                       |   18 +
 drivers/gpu/drm/Makefile                      |    7 +-
 drivers/gpu/drm/drm_crtc.c                    |  448 +++++---
 drivers/gpu/drm/drm_crtc_helper.c             |   22 +-
 drivers/gpu/drm/drm_drv.c                     |   16 +-
 drivers/gpu/drm/drm_edid.c                    |   12 +-
 drivers/gpu/drm/drm_edid_load.c               |  250 ++++
 drivers/gpu/drm/drm_fb_helper.c               |   88 +--
 drivers/gpu/drm/drm_fops.c                    |    8 +
 drivers/gpu/drm/drm_gem.c                     |    4 +-
 drivers/gpu/drm/drm_ioctl.c                   |    8 +
 drivers/gpu/drm/drm_irq.c                     |    4 +-
 drivers/gpu/drm/drm_memory.c                  |   19 -
 drivers/gpu/drm/drm_modes.c                   |   30 +-
 drivers/gpu/drm/drm_pci.c                     |    2 -
 drivers/gpu/drm/drm_platform.c                |   12 +-
 drivers/gpu/drm/drm_stub.c                    |   26 +
 drivers/gpu/drm/drm_sysfs.c                   |    7 +-
 drivers/gpu/drm/drm_usb.c                     |    2 -
 drivers/gpu/drm/drm_vm.c                      |    5 +-
 drivers/gpu/drm/exynos/Kconfig                |   14 +-
 drivers/gpu/drm/exynos/Makefile               |   11 +-
 drivers/gpu/drm/exynos/exynos_ddc.c           |    1 -
 drivers/gpu/drm/exynos/exynos_drm_buf.c       |  191 +++-
 drivers/gpu/drm/exynos/exynos_drm_buf.h       |   22 +-
 drivers/gpu/drm/exynos/exynos_drm_connector.c |   35 +-
 drivers/gpu/drm/exynos/exynos_drm_core.c      |  140 +--
 drivers/gpu/drm/exynos/exynos_drm_crtc.c      |   12 +-
 drivers/gpu/drm/exynos/exynos_drm_drv.c       |   94 ++-
 drivers/gpu/drm/exynos/exynos_drm_drv.h       |   38 +-
 drivers/gpu/drm/exynos/exynos_drm_encoder.c   |   24 +-
 drivers/gpu/drm/exynos/exynos_drm_fb.c        |    6 -
 drivers/gpu/drm/exynos/exynos_drm_fbdev.c     |  118 +--
 drivers/gpu/drm/exynos/exynos_drm_fimd.c      |   20 +-
 drivers/gpu/drm/exynos/exynos_drm_gem.c       |  364 ++++++-
 drivers/gpu/drm/exynos/exynos_drm_gem.h       |   29 +-
 drivers/gpu/drm/exynos/exynos_drm_hdmi.c      |  115 +--
 drivers/gpu/drm/exynos/exynos_drm_hdmi.h      |    5 +
 drivers/gpu/drm/exynos/exynos_drm_plane.c     |    8 +-
 drivers/gpu/drm/exynos/exynos_drm_vidi.c      |  676 +++++++++++
 drivers/gpu/drm/exynos/exynos_drm_vidi.h      |   36 +
 drivers/gpu/drm/exynos/exynos_hdmi.c          | 1437 +++++++++++++++++++++--
 drivers/gpu/drm/exynos/exynos_hdmi.h          |   50 -
 drivers/gpu/drm/exynos/exynos_mixer.c         |   57 +-
 drivers/gpu/drm/exynos/exynos_mixer.h         |   92 --
 drivers/gpu/drm/exynos/regs-hdmi.h            |  488 +++++++-
 drivers/gpu/drm/gma500/Kconfig                |   10 +-
 drivers/gpu/drm/gma500/Makefile               |   10 +
 drivers/gpu/drm/gma500/cdv_device.c           |  169 +++-
 drivers/gpu/drm/gma500/cdv_device.h           |    2 +-
 drivers/gpu/drm/gma500/cdv_intel_crt.c        |    1 +
 drivers/gpu/drm/gma500/cdv_intel_display.c    |   91 +--
 drivers/gpu/drm/gma500/cdv_intel_hdmi.c       |    1 +
 drivers/gpu/drm/gma500/cdv_intel_lvds.c       |   16 +-
 drivers/gpu/drm/gma500/framebuffer.c          |   64 +-
 drivers/gpu/drm/gma500/gem_glue.c             |    1 +
 drivers/gpu/drm/gma500/gtt.c                  |    4 +-
 drivers/gpu/drm/gma500/intel_gmbus.c          |    2 +-
 drivers/gpu/drm/gma500/mdfld_device.c         |  691 +++++++++++
 drivers/gpu/drm/gma500/mdfld_dsi_dpi.c        | 1017 ++++++++++++++++
 drivers/gpu/drm/gma500/mdfld_dsi_dpi.h        |   79 ++
 drivers/gpu/drm/gma500/mdfld_dsi_output.c     |  618 ++++++++++
 drivers/gpu/drm/gma500/mdfld_dsi_output.h     |  378 ++++++
 drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c |  694 +++++++++++
 drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.h |   92 ++
 drivers/gpu/drm/gma500/mdfld_intel_display.c  | 1180 ++++++++++++++++++
 drivers/gpu/drm/gma500/mdfld_output.c         |   74 ++
 drivers/gpu/drm/gma500/mdfld_output.h         |   77 ++
 drivers/gpu/drm/gma500/mdfld_tmd_vid.c        |  201 ++++
 drivers/gpu/drm/gma500/mdfld_tpo_vid.c        |  124 ++
 drivers/gpu/drm/gma500/mmu.c                  |   13 +-
 drivers/gpu/drm/gma500/oaktrail_crtc.c        |   18 +-
 drivers/gpu/drm/gma500/oaktrail_device.c      |  211 ++--
 drivers/gpu/drm/gma500/oaktrail_hdmi.c        |  401 +------
 drivers/gpu/drm/gma500/oaktrail_hdmi_i2c.c    |    6 +-
 drivers/gpu/drm/gma500/oaktrail_lvds.c        |    5 +-
 drivers/gpu/drm/gma500/power.c                |   17 +-
 drivers/gpu/drm/gma500/psb_device.c           |   34 +-
 drivers/gpu/drm/gma500/psb_drv.c              |   65 +-
 drivers/gpu/drm/gma500/psb_drv.h              |  435 ++++----
 drivers/gpu/drm/gma500/psb_intel_display.c    |   50 +-
 drivers/gpu/drm/gma500/psb_intel_lvds.c       |   21 +-
 drivers/gpu/drm/gma500/psb_intel_reg.h        |    9 +
 drivers/gpu/drm/gma500/psb_intel_sdvo.c       |   30 +-
 drivers/gpu/drm/gma500/psb_irq.c              |   62 +-
 drivers/gpu/drm/gma500/psb_irq.h              |    2 +
 drivers/gpu/drm/gma500/tc35876x-dsi-lvds.c    |  829 +++++++++++++
 drivers/gpu/drm/gma500/tc35876x-dsi-lvds.h    |   38 +
 drivers/gpu/drm/i2c/ch7006_drv.c              |    5 +-
 drivers/gpu/drm/i810/i810_dma.c               |    3 +-
 drivers/gpu/drm/i915/Makefile                 |    2 +-
 drivers/gpu/drm/i915/i915_debugfs.c           |  324 +++---
 drivers/gpu/drm/i915/i915_dma.c               |   66 +-
 drivers/gpu/drm/i915/i915_drv.c               |   49 +-
 drivers/gpu/drm/i915/i915_drv.h               |  164 ++-
 drivers/gpu/drm/i915/i915_gem.c               |  528 +++++----
 drivers/gpu/drm/i915/i915_gem_evict.c         |   21 +-
 drivers/gpu/drm/i915/i915_gem_execbuffer.c    |  205 ++--
 drivers/gpu/drm/i915/i915_gem_gtt.c           |  275 +++++-
 drivers/gpu/drm/i915/i915_gem_tiling.c        |   23 +-
 drivers/gpu/drm/i915/i915_irq.c               |  197 ++--
 drivers/gpu/drm/i915/i915_mem.c               |  387 ------
 drivers/gpu/drm/i915/i915_reg.h               |  132 ++-
 drivers/gpu/drm/i915/intel_acpi.c             |    2 +-
 drivers/gpu/drm/i915/intel_bios.c             |    4 +-
 drivers/gpu/drm/i915/intel_crt.c              |    5 +-
 drivers/gpu/drm/i915/intel_display.c          |  388 ++++---
 drivers/gpu/drm/i915/intel_dp.c               |   23 +-
 drivers/gpu/drm/i915/intel_drv.h              |    1 +
 drivers/gpu/drm/i915/intel_dvo.c              |    1 -
 drivers/gpu/drm/i915/intel_fb.c               |    6 +-
 drivers/gpu/drm/i915/intel_hdmi.c             |   23 +-
 drivers/gpu/drm/i915/intel_i2c.c              |  210 ++--
 drivers/gpu/drm/i915/intel_lvds.c             |   31 +
 drivers/gpu/drm/i915/intel_modes.c            |   34 +-
 drivers/gpu/drm/i915/intel_overlay.c          |   18 +-
 drivers/gpu/drm/i915/intel_panel.c            |    6 +-
 drivers/gpu/drm/i915/intel_ringbuffer.c       |  210 ++--
 drivers/gpu/drm/i915/intel_ringbuffer.h       |   35 +-
 drivers/gpu/drm/i915/intel_sdvo.c             |   43 +-
 drivers/gpu/drm/i915/intel_sprite.c           |    4 +-
 drivers/gpu/drm/i915/intel_tv.c               |    2 +-
 drivers/gpu/drm/mga/mga_dma.c                 |    2 +
 drivers/gpu/drm/nouveau/Makefile              |    3 +-
 drivers/gpu/drm/nouveau/nouveau_bios.c        |  275 +++--
 drivers/gpu/drm/nouveau/nouveau_bios.h        |    6 +-
 drivers/gpu/drm/nouveau/nouveau_connector.c   |   29 +-
 drivers/gpu/drm/nouveau/nouveau_crtc.h        |    3 +
 drivers/gpu/drm/nouveau/nouveau_display.c     |   37 +-
 drivers/gpu/drm/nouveau/nouveau_dp.c          |  314 ++----
 drivers/gpu/drm/nouveau/nouveau_drv.c         |   18 +-
 drivers/gpu/drm/nouveau/nouveau_drv.h         |  150 ++-
 drivers/gpu/drm/nouveau/nouveau_encoder.h     |   18 +
 drivers/gpu/drm/nouveau/nouveau_fbcon.c       |    6 +-
 drivers/gpu/drm/nouveau/nouveau_i2c.c         |    8 +-
 drivers/gpu/drm/nouveau/nouveau_mem.c         |  809 +++++++++----
 drivers/gpu/drm/nouveau/nouveau_mxm.c         |   39 +-
 drivers/gpu/drm/nouveau/nouveau_perf.c        |  409 ++++---
 drivers/gpu/drm/nouveau/nouveau_pm.c          |  235 +++-
 drivers/gpu/drm/nouveau/nouveau_pm.h          |   22 +
 drivers/gpu/drm/nouveau/nouveau_state.c       |  232 ++--
 drivers/gpu/drm/nouveau/nv04_fb.c             |   34 +
 drivers/gpu/drm/nouveau/nv10_fb.c             |  126 +--
 drivers/gpu/drm/nouveau/nv20_fb.c             |  148 +++
 drivers/gpu/drm/nouveau/nv40_fb.c             |   45 +
 drivers/gpu/drm/nouveau/nv50_crtc.c           |   42 +-
 drivers/gpu/drm/nouveau/nv50_dac.c            |    7 +-
 drivers/gpu/drm/nouveau/nv50_display.c        |   27 +-
 drivers/gpu/drm/nouveau/nv50_display.h        |    2 +
 drivers/gpu/drm/nouveau/nv50_evo.h            |    3 +-
 drivers/gpu/drm/nouveau/nv50_pm.c             |  397 ++++---
 drivers/gpu/drm/nouveau/nv50_sor.c            |  213 +++-
 drivers/gpu/drm/nouveau/nv50_vm.c             |   29 +-
 drivers/gpu/drm/nouveau/nv50_vram.c           |   17 +
 drivers/gpu/drm/nouveau/nvc0_pm.c             |    2 +-
 drivers/gpu/drm/nouveau/nvc0_vm.c             |    4 +-
 drivers/gpu/drm/nouveau/nvc0_vram.c           |   33 +-
 drivers/gpu/drm/nouveau/nvd0_display.c        |  336 ++++--
 drivers/gpu/drm/r128/r128_drv.c               |    1 +
 drivers/gpu/drm/radeon/Makefile               |    2 +-
 drivers/gpu/drm/radeon/atombios_crtc.c        |   20 +-
 drivers/gpu/drm/radeon/atombios_dp.c          |    3 +-
 drivers/gpu/drm/radeon/atombios_i2c.c         |  139 +++
 drivers/gpu/drm/radeon/evergreen.c            |   56 +-
 drivers/gpu/drm/radeon/evergreen_blit_kms.c   |   12 +-
 drivers/gpu/drm/radeon/evergreen_cs.c         | 1178 +++++++++++++++++--
 drivers/gpu/drm/radeon/evergreen_reg.h        |    1 +
 drivers/gpu/drm/radeon/evergreend.h           |  377 ++++++
 drivers/gpu/drm/radeon/ni.c                   |    6 +-
 drivers/gpu/drm/radeon/r100.c                 |  109 ++-
 drivers/gpu/drm/radeon/r200.c                 |   29 +-
 drivers/gpu/drm/radeon/r300.c                 |    9 +-
 drivers/gpu/drm/radeon/r420.c                 |    2 +-
 drivers/gpu/drm/radeon/r500_reg.h             |    2 +
 drivers/gpu/drm/radeon/r520.c                 |    4 +-
 drivers/gpu/drm/radeon/r600.c                 |   26 +-
 drivers/gpu/drm/radeon/r600_blit_kms.c        |   15 +-
 drivers/gpu/drm/radeon/r600_cs.c              |  629 +++++++---
 drivers/gpu/drm/radeon/r600d.h                |   20 +
 drivers/gpu/drm/radeon/radeon.h               |  241 +++--
 drivers/gpu/drm/radeon/radeon_asic.c          | 1579 +++++++++++++++----------
 drivers/gpu/drm/radeon/radeon_asic.h          |   24 +-
 drivers/gpu/drm/radeon/radeon_atombios.c      |   14 +
 drivers/gpu/drm/radeon/radeon_benchmark.c     |   24 +-
 drivers/gpu/drm/radeon/radeon_blit_common.h   |   44 +
 drivers/gpu/drm/radeon/radeon_clocks.c        |    2 +-
 drivers/gpu/drm/radeon/radeon_connectors.c    |   31 +
 drivers/gpu/drm/radeon/radeon_cp.c            |    2 +
 drivers/gpu/drm/radeon/radeon_cs.c            |   39 +-
 drivers/gpu/drm/radeon/radeon_cursor.c        |   20 +-
 drivers/gpu/drm/radeon/radeon_display.c       |   90 +-
 drivers/gpu/drm/radeon/radeon_drv.c           |    5 +-
 drivers/gpu/drm/radeon/radeon_fb.c            |   11 +-
 drivers/gpu/drm/radeon/radeon_gem.c           |   26 -
 drivers/gpu/drm/radeon/radeon_i2c.c           |   32 +-
 drivers/gpu/drm/radeon/radeon_kms.c           |    2 +
 drivers/gpu/drm/radeon/radeon_legacy_crtc.c   |    4 +-
 drivers/gpu/drm/radeon/radeon_object.c        |   64 +-
 drivers/gpu/drm/radeon/radeon_object.h        |    2 +
 drivers/gpu/drm/radeon/radeon_pm.c            |    6 +-
 drivers/gpu/drm/radeon/radeon_reg.h           |    2 +
 drivers/gpu/drm/radeon/radeon_ring.c          |    8 +-
 drivers/gpu/drm/radeon/radeon_ttm.c           |   15 +-
 drivers/gpu/drm/radeon/reg_srcs/cayman        |   24 +-
 drivers/gpu/drm/radeon/reg_srcs/evergreen     |   24 +-
 drivers/gpu/drm/radeon/reg_srcs/r600          |   20 +-
 drivers/gpu/drm/radeon/rs400.c                |    2 +-
 drivers/gpu/drm/radeon/rs600.c                |   23 +-
 drivers/gpu/drm/radeon/rs690.c                |    4 +-
 drivers/gpu/drm/radeon/rv515.c                |    5 +-
 drivers/gpu/drm/radeon/rv770.c                |    4 +-
 drivers/gpu/drm/savage/savage_state.c         |    5 +-
 drivers/gpu/drm/sis/sis_drv.c                 |    2 +
 drivers/gpu/drm/ttm/ttm_agp_backend.c         |    4 +-
 drivers/gpu/drm/ttm/ttm_bo.c                  |   72 +-
 drivers/gpu/drm/ttm/ttm_bo_vm.c               |    5 +-
 drivers/gpu/drm/ttm/ttm_memory.c              |   12 +-
 drivers/gpu/drm/ttm/ttm_object.c              |    5 +-
 drivers/gpu/drm/ttm/ttm_page_alloc.c          |   55 +-
 drivers/gpu/drm/ttm/ttm_page_alloc_dma.c      |   60 +-
 drivers/gpu/drm/ttm/ttm_tt.c                  |    8 +-
 drivers/gpu/drm/udl/Kconfig                   |   12 +
 drivers/gpu/drm/udl/Makefile                  |    6 +
 drivers/gpu/drm/udl/udl_connector.c           |  141 +++
 drivers/gpu/drm/udl/udl_drv.c                 |   99 ++
 drivers/gpu/drm/udl/udl_drv.h                 |  141 +++
 drivers/gpu/drm/udl/udl_encoder.c             |   80 ++
 drivers/gpu/drm/udl/udl_fb.c                  |  611 ++++++++++
 drivers/gpu/drm/udl/udl_gem.c                 |  227 ++++
 drivers/gpu/drm/udl/udl_main.c                |  338 ++++++
 drivers/gpu/drm/udl/udl_modeset.c             |  414 +++++++
 drivers/gpu/drm/udl/udl_transfer.c            |  253 ++++
 drivers/gpu/drm/via/via_map.c                 |    2 +
 drivers/gpu/drm/vmwgfx/vmwgfx_drv.c           |   55 +
 drivers/gpu/drm/vmwgfx/vmwgfx_drv.h           |   10 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c       |   15 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_fb.c            |   22 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_fence.c         |  252 +++--
 drivers/gpu/drm/vmwgfx/vmwgfx_fence.h         |    9 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_kms.c           |   91 ++-
 drivers/gpu/drm/vmwgfx/vmwgfx_kms.h           |    8 +
 drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c           |    4 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c          |   38 +-
 drivers/i2c/algos/i2c-algo-bit.c              |    3 +-
 drivers/video/fbmem.c                         |   18 +-
 drivers/video/udlfb.c                         |    2 +-
 include/drm/drm.h                             |    2 +
 include/drm/drmP.h                            |   25 +-
 include/drm/drm_crtc.h                        |   48 +-
 include/drm/drm_edid.h                        |    1 +
 include/drm/drm_fb_helper.h                   |    2 -
 include/drm/exynos_drm.h                      |   26 +
 include/drm/gma_drm.h                         |    2 +-
 include/drm/i915_drm.h                        |    1 +
 include/drm/intel-gtt.h                       |    4 +
 include/drm/radeon_drm.h                      |   24 +-
 include/linux/fb.h                            |    1 +
 include/linux/i2c-algo-bit.h                  |    1 +
 include/linux/i2c/tc35876x.h                  |   11 +
 271 files changed, 22737 insertions(+), 6488 deletions(-)
 create mode 100644 Documentation/EDID/1024x768.S
 create mode 100644 Documentation/EDID/1280x1024.S
 create mode 100644 Documentation/EDID/1680x1050.S
 create mode 100644 Documentation/EDID/1920x1080.S
 create mode 100644 Documentation/EDID/HOWTO.txt
 create mode 100644 Documentation/EDID/Makefile
 create mode 100644 Documentation/EDID/edid.S
 create mode 100644 Documentation/EDID/hex
 create mode 100644 drivers/gpu/drm/drm_edid_load.c
 create mode 100644 drivers/gpu/drm/exynos/exynos_drm_vidi.c
 create mode 100644 drivers/gpu/drm/exynos/exynos_drm_vidi.h
 delete mode 100644 drivers/gpu/drm/exynos/exynos_mixer.h
 create mode 100644 drivers/gpu/drm/gma500/mdfld_device.c
 create mode 100644 drivers/gpu/drm/gma500/mdfld_dsi_dpi.c
 create mode 100644 drivers/gpu/drm/gma500/mdfld_dsi_dpi.h
 create mode 100644 drivers/gpu/drm/gma500/mdfld_dsi_output.c
 create mode 100644 drivers/gpu/drm/gma500/mdfld_dsi_output.h
 create mode 100644 drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c
 create mode 100644 drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.h
 create mode 100644 drivers/gpu/drm/gma500/mdfld_intel_display.c
 create mode 100644 drivers/gpu/drm/gma500/mdfld_output.c
 create mode 100644 drivers/gpu/drm/gma500/mdfld_output.h
 create mode 100644 drivers/gpu/drm/gma500/mdfld_tmd_vid.c
 create mode 100644 drivers/gpu/drm/gma500/mdfld_tpo_vid.c
 create mode 100644 drivers/gpu/drm/gma500/tc35876x-dsi-lvds.c
 create mode 100644 drivers/gpu/drm/gma500/tc35876x-dsi-lvds.h
 delete mode 100644 drivers/gpu/drm/i915/i915_mem.c
 create mode 100644 drivers/gpu/drm/nouveau/nv20_fb.c
 create mode 100644 drivers/gpu/drm/radeon/atombios_i2c.c
 create mode 100644 drivers/gpu/drm/radeon/radeon_blit_common.h
 create mode 100644 drivers/gpu/drm/udl/Kconfig
 create mode 100644 drivers/gpu/drm/udl/Makefile
 create mode 100644 drivers/gpu/drm/udl/udl_connector.c
 create mode 100644 drivers/gpu/drm/udl/udl_drv.c
 create mode 100644 drivers/gpu/drm/udl/udl_drv.h
 create mode 100644 drivers/gpu/drm/udl/udl_encoder.c
 create mode 100644 drivers/gpu/drm/udl/udl_fb.c
 create mode 100644 drivers/gpu/drm/udl/udl_gem.c
 create mode 100644 drivers/gpu/drm/udl/udl_main.c
 create mode 100644 drivers/gpu/drm/udl/udl_modeset.c
 create mode 100644 drivers/gpu/drm/udl/udl_transfer.c
 create mode 100644 include/linux/i2c/tc35876x.h


More information about the dri-devel mailing list