Hi Linus, Here's the main drm pull request for 4.7, it's been a busy one, and I've been a bit more distracted in real life this merge window. Lots more ARM drivers, not sure if it'll ever end. I think I've at least one more coming the next merge window.
But changes are all over the place, support for AMD Polaris GPUs is in here, some missing GM108 support for nouveau (found in some Lenovos), a bunch of MST and skylake fixes. I've also noticed a few fixes from Arnd in my inbox, that I'll try and get in asap, but I didn't think they should hold this up. Dave. New drivers: Hisilicon kirin display driver Mediatek MT8173 display driver ARC PGU - bitstreamer on Synopsys ARC SDP boards Allwinner A13 initial RGB output driver Analogix driver for DisplayPort IP found in exynos and rockchip. DRM Core: UAPI headers fixes and C++ safety DRM connector reference counting DisplayID mode parsing for Dell 5K monitors Removal of struct_mutex from drivers Connector registration cleanups MST robustness fixes MAINTAINERS updates Lockless GEM object freeing Generic fbdev deferred IO support panel: Support for a bunch of new panels. i915: VBT refactoring PLL computation cleanups DSI support for BXT Color manager support More atomic patches GEM improvements GuC fw loading fixes DP detection fixes SKL GPU hang fixes Lots of BXT fixes radeon/amdgpu: Initial Polaris support GPUVM/Scheduler/Clock/Power improvements ASYNC pageflip support New mesa feature support nouveau: GM108 support Power sensor support improvements GR init + ucode fixes. Use GPU provided topology information. vmwgfx: Add host messaging support. gma500: Some cleanups and fixes. atmel: Bridge support Async atomic commit support fsl-dcu: Timing controller for LCD support Pixel clock polarity support rcar-du: Misc fixes exynos: Pipeline clock support Exynoss4533 SoC support HW trigger mode support export HDMI_PHY clock DECON5433 fixes Use generic prime functions use DMA mapping APIs rockchip: Lots of little fixes. vc4: Render node support Gamma ramp support DPI output support msm: Mostly cleanups and fixes. Conversion to generic struct fence. etnaviv: Fix for prime buffer handling Allow hangcheck to be coalesced with other wakeups. tegra: Gamme table size fix The following changes since commit 44549e8f5eea4e0a41b487b63e616cb089922b99: Linux 4.6-rc7 (2016-05-08 14:38:32 -0700) are available in the git repository at: git://people.freedesktop.org/~airlied/linux drm-next for you to fetch changes up to fcee59065e58498682c60069cc6fb90694bab27e: drm: Nuke ->vblank_disable_allowed (2016-05-21 07:03:31 +1000) ---------------------------------------------------------------- Akash Goel (4): drm/i915: Fixup the free space logic in ring_prepare drm/i915: Macros to convert PM time interval values to microseconds drm/i915: Correct the i915_frequency_info debugfs output drm/i915/bxt: Explicitly clear the Turbo control register Alan (1): drm/gma500/mdfld_dsi: remove bogus if check Alex Dai (2): drm/i915/guc: Support GuC SKL v6.1 drm/i915/guc: drop cached copy of 'wq_head' Alex Deucher (42): drm/amd/powerplay: fix stutter setup in mclk level init drm/amdgpu: add new CG flag for ROM clockgating drm/amdgpu/gfx: add proper CG flags for fiji drm/amdgpu/sdma: add proper CG flags for fiji drm/amdgpu/common: add proper CG flags for fiji drm/amdgpu/gmc: add proper CG flags for fiji drm/amdgpu/gfx8: rename send_serdes_cmd drm/amdgpu/gfx: adjust gfx_v8_0_send_serdes_cmd for ST drm/amdgpu: add a new set of rlc function pointers drm/amdgpu/gfx: rework fiji cg functions so they can be shared drm/amdgpu: enable gfx clockgating for CZ drm/amdgpu: enable gfx clockgating for ST (v2) drm/amdgpu/vi: rename fiji cg functions drm/amdgpu: enable gmc clockgating for CZ drm/amdgpu: enable gmc clockgating for ST drm/amdgpu/sdma: rename fiji cg functions drm/amdgpu: enable sdma clockgating on CZ drm/amdgpu: enable sdma clockgating on ST drm/amd: add DCE 11.2 register headers drm/amdgpu: add ELM/BAF asic types drm/amdgpu: add ELM/BAF DCE11 configs (v2) drm/amdgpu: use defines for CRTCs and AMFT blocks drm/amdgpu: bump the afmt limit for CZ, ST, Polaris drm/amdgpu: update atombios.h (v2) drm/amdgpu/atom: add SetDCEClock helper drm/amdgpu/atom: add support for new SetPixelClock table drm/amdgpu/atom: add support for new DIGxEncoderControl cmd table drm/amdgpu/atom: add support for new UNIPHYTransmitterContol cmd table drm/amdgpu: add ELM/BAF support to dce_v11_0_pick_pll (v2) drm/amdgpu/dce11: update pll programming for ELM/BAF drm/amdgpu/dce11: add dce clock setting for ELM/BAF drm/amdgpu: add an interface to get gfx constants from atombios drm/amd/powerplay: fix copy paste error in error message drm/powerplay: add missing clockgating callback for tonga drm/amdgpu/fiji: set UVD CG state when enabling UVD DPM (v2) drm/amdgpu/uvd6: add bypass support for fiji (v3) drm/amdgpu: use drm_mode_vrefresh() rather than mode->vrefresh drm/amdgpu: fetch cu_info once at init drm/amdgpu: add missing licenses on a couple of files drm/amdgpu/dce11: don't share PLLs on Polaris drm/amdgpu: Support DRM_MODE_PAGE_FLIP_ASYNC (v2) drm/amdgpu/dce11: fix audio offset for asics with >7 audio pins Alexandre Courbot (1): drm/nouveau/devinit/gf100: make devinit on resume safer Alexey Brodkin (9): drm: Rename drm_connector_unplug_all() to drm_connector_unregister_all() drm: Introduce drm_connector_register_all() helper drm: atmel_hldc: Use generic drm_connector_register_all() helper drm: rcar-du: Use generic drm_connector_register_all() helper drm: Add DT bindings documentation for ARC PGU display controller MAINTAINERS: Add maintainer for ARC PGU display controller arc: axs10x - add support of ARC PGU drm/arcpgu: use dedicated memory area for frame buffer ARC: [axs10x] Specify reserved memory for frame buffer Ander Conselvan de Oliveira (29): drm/i915: Move shared dpll code to a new file drm/i915: Move ddi shared dpll code to intel_dpll_mgr.c drm/i915: Split intel_get_shared_dpll() into smaller functions drm/i915: Store a direct pointer to shared dpll in intel_crtc_state drm/i915: Move shared dpll struct definitions to separate header file drm/i915: Move shared dpll function prototypes to intel_dpll_mgr.h drm/i915: Use a table to initilize shared dplls drm/i915: Refactor platform specifics out of intel_get_shared_dpll() drm/i915: Move HSW/BDW pll selection logic to intel_dpll_mgr.c drm/i915: Move SKL/KLB pll selection logic to intel_dpll_mgr.c drm/i915: Move BXT pll configuration logic to intel_dpll_mgr.c drm/i915: Manage HSW/BDW LCPLLs with the shared dpll interface drm/i915: Make SKL/KBL DPLL0 managed by the shared dpll code drm/i915: Wait for vblank in i9xx_disable_crtc() for gen 2 only drm/i915: Remove checks for cloned config with LVDS in dpll code drm/i915: Merge ironlake_get_refclk() into its only caller drm/i915: Fold intel_ironlake_limit() into clock computation function drm/i915: Call g4x_find_best_dpll() directly from ILK+ code drm/i915: Simplify ironlake reduced clock logic a bit drm/i915: Don't calculate a new clock in ILK+ code if it is already set drm/i915: Remove PCH type checks from ironlake_crtc_compute_clock() drm/i915: Simplify ironlake_crtc_compute_clock() CPU eDP case drm/i915: Pass crtc_state->dpll directly to ->find_dpll() drm/i915: Move fp divisor calculation into ironlake_compute_dpll() drm/i915: Merge ironlake_compute_clocks() and ironlake_crtc_compute_clock() drm/i915: Split CHV and VLV specific crtc_compute_clock() hooks drm/i915: Split i8xx_crtc_compute_clock() drm/i915: Split g4x_crtc_compute_clock() drm/i915: Split PNV version of crtc_compute_clock() Andrey Grodzovsky (1): drm/amdgpu: Set PFLIP_SUBMITTED for crtc after address update Andrzej Hajda (28): drm/exynos: fix adjusted_mode pointer in exynos_plane_mode_set drm/exynos: build fbdev code conditionally drm/exynos/hdmi: clock code re-factoring drm/exynos/hdmi: constify global variables drm/exynos/hdmi: use array specifier for HDMI-PHY configurations drm/exynos/hdmi: code cleanup drm/exynos/hdmi: stop programming registers with default values dt-bindings: exynos_hdmi: add bindings for Exynos5433 variant drm/exynos/hdmi: add Exynos5433 support dt-bindings: video: add PCLK clock entry to exynos5433-decon dt-bindings: video: exynos5433-decon: add bindings for DECON-TV drm/exynos/hdmi: fix PHY configuration sequence drm/exynos/hdmi: add PHY power off signal handling drm/exynos/hdmi: add core reset code drm/exynos/hdmi: remove registry dump drm/exynos/decon5433: fix DECON standalone update drm/exynos/decon5433: reset decon on start drm/exynos/decon5433: do not protect window in plane disable drm/exynos: add helper to get crtc from pipe drm/exynos: add support for pipeline clock to the framework drm/exynos/decon5433: enable HDMI-PHY before configuring DECON drm/exynos/mixer: enable HDMI-PHY before configuring MIXER drm/exynos: convert clock_enable crtc callback to pipeline clock drm/exynos/hdmi: expose HDMI-PHY clock as pipeline clock drm/exynos/decon5433: handle vblank in vblank interrupt drm/exynos/decon5433: do not use unnecessary software trigger drm/exynos: fix cancel page flip code drm/exynos/decon5433: fix trigger configuration Archit Taneja (7): drm: bridge/dw-hdmi: Remove pre_enable/post_disable dummy funcs drm/msm/dsi: Fix regulator API abuse drm/msm/edp: Drop regulator_set_voltage call drm/msm/mdp4: Don't manage DSI PLL regulators in MDP driver drm/msm/hdmi: Prevent gpio_free related kernel warnings drm/msm: Centralize connector registration/unregistration drm/msm: Drop load/unload drm_driver ops Arindam Nath (3): drm/radeon: add support for loading new UVD fw drm/radeon: handle more than 10 UVD sessions drm/amdgpu: handle more than 10 UVD sessions (v2) Arnd Bergmann (8): drm: rcar-du: Clarify vsp dependency drm/layerscape: reduce excessive stack usage drm/exynos: fix error handling in exynos_drm_subdrv_open drm/fsl-dcu: add COMMON_CLK dependency drm: msm: remove unused variable drm/sti: include linux/seq_file.h where needed drm: mediatek: fixup drm_gem_object_lookup API change drm: remove unused dev variables Arun Siluvery (1): drm/i915/guc: reset GuC and retry on firmware load failure Bas Nieuwenhuizen (1): drm/radeon: Allow setting shader registers using DMA/COPY packet3 on SI. Ben Skeggs (44): drm/nouveau: rename nouveau_drm.h to nouveau_drv.h drm/nouveau/core: add top plumbing drm/nouveau/top: initial implementation drm/nouveau/top/gk104: initial implementation drm/nouveau/mc: rename struct nvkm_mc_intr to nvkm_mc_map drm/nouveau/mc: add helper function to handle device reset drm/nouveau/mc: allow for local definition of reset bits drm/nouveau/mc: implement support for PTOP reset info drm/nouveau/mc: implement support for PTOP interrupt routing drm/nouveau/mc/gk104: define reset masks + intr cleanup drm/nouveau/mc/gf100: define reset masks + intr cleanup drm/nouveau/mc/gt215: define reset masks + intr cleanup drm/nouveau/mc/g98: define reset masks + intr cleanup drm/nouveau/mc/g84: define reset masks + intr cleanup drm/nouveau/mc/nv50: define reset masks + intr cleanup drm/nouveau/mc/nv17: define reset masks + intr cleanup drm/nouveau/mc/nv11: define reset masks + intr cleanup drm/nouveau/mc/nv04: define reset masks + intr cleanup drm/nouveau/core: remove pmc_enable argument from subdev ctor drm/nouveau/fifo/gk104-: use device info from top subdev drm/nouveau/fifo/gk104-: subclass func drm/nouveau/fifo/gk104-: abstract mmu fault data structures drm/nouveau/fifo/gk104-: implement support for PTOP fault info drm/nouveau/fifo/gk104-: identify mmu engine ids for host faults drm/nouveau/fifo/gm107-: remove engines from mmu engine mapping array drm/nouveau/gr/gf100-: remove hardcoded idle_timeout values drm/nouveau/gr/gf100-: rename magic_not_rop_nr to screen_tile_row_offset drm/nouveau/gr/gf100-: abstract fetching rop count drm/nouveau/gr/gm200: make generate_main() static drm/nouveau/gr/gm200: move some code into init_gpc_mmu() hook drm/nouveau/gr/gm200: modify the mask when copying mmu settings from fb drm/nouveau/gr/gm200-: rop count == ltc count drm/nouveau/gr/gm200-: fix bad hardcoding of a max-tpcs-per-gpc value drm/nouveau/fb: allow chipset-specific actions for oneinit() drm/nouveau/fb/gf100-: allocate mmu debug buffers drm/nouveau/fb/gk20a,gm20b: setup mmu debug buffer registers at init() drm/nouveau/fb/gm200: setup mmu debug buffer registers at init() drm/nouveau/bios/pll: prevent oops when limits table can't be parsed drm/nouveau/bios/pll: check BIT table version before trying to parse it drm/nouveau/gr/gk104-: move rop_active_fbps init to nonctx drm/nouveau/gr/gk104-: share implementation of ppc exception init drm/nouveau/gr/gm107-: fix touching non-existent ppcs in attrib cb setup drm/nouveau/core: recognise GM108 chipsets drm/nouveau/gr/gf100-: fix race condition in fecs/gpccs ucode Bhuvanchandra DV (1): drm/panel: simple: Add support for TPK U.S.A. LLC Fusion 7" and 10.1" panels Bjørn Mork (1): drm/i915: fix deadlock on lid open Boris Brezillon (11): drm: atmel-hlcdc: add a ->cleanup_fb() operation drm: atmel-hlcdc: support asynchronous atomic commit operations drm: atmel-hlcdc: fix connector and encoder types drm: atmel-hlcdc: remove leftovers from atomic mode setting migration drm: atmel-hlcdc: support extended timing ranges on sama5d4 and sama5d2 drm: atmel-hlcdc: move output mode selection in CRTC implementation drm: atmel-hlcdc: rework the output code to support drm bridges drm: atmel-hlcdc: check display mode validity in crtc->mode_fixup() drm: atmel-hlcdc: route DMA accesses through AHB interfaces drm/panel: simple: Set appropriate mode type drm/panel: simple: Remove useless drm_mode_set_name() CK Hu (3): dt-bindings: drm/mediatek: Add Mediatek display subsystem dts binding drm/mediatek: Add DRM Driver for Mediatek SoC MT8173. drm/mediatek: Add DSI sub driver Carlos Palminha (1): drm: Add support of ARC PGU display controller Chris Wilson (58): drm/i915/csr: Allow matching unknown HW steppings with generic firmware drm/i915: Codify our assumption that the Global GTT is <= 4GiB drm/i915: Tidy aliasing_gtt_bind_vma() drm/i915: Rename __force_wake_get to __force_wake_auto drm/i915: Exit cherryview_irq_handler() after one pass drm/i915: Add struct_mutex locking for debugs/i915_gem_framebuffer drm/i915: Show PCI power state under debugfs/i915_runtime_pm_status drm/i915/ddi: Silence compiler warning for unknown output type drm/i915/shrinker: Account for unshrinkable unbound pages mm/vmap: Add a notifier for when we run out of vmap address space drm/i915/shrinker: Hook up vmap allocation failure notifier drm/i915/shrinker: Refactor common uninterruptible locking drm/i915: Include engine->last_submitted_seqno in GPU error state drm/i915: On GPU reset, set the HWS breadcrumb to the last seqno drm/i915: Remove unneeded drm_device pointer from intel_ring_init_seqno() drm/i915: Move the hw semaphore initialisation from GEM to the engine drm/i915: Refactor gen8 semaphore offset calculation drm/i915: Reset semaphore page for gen8 drm/i915: Reset engine->last_submitted_seqno drm/i915: Apply a mb between emitting the request and hangcheck drm/i915: Simplify check for idleness in hangcheck drm/i915: Remove forcewake dance from seqno/irq barrier on legacy gen6+ drm/i915: Separate out the seqno-barrier from engine->get_seqno drm/i915: Harden detection of missed interrupts drm/i915: Use simplest form for flushing the single cacheline in the HWS drm/i915: Replace manual barrier() with READ_ONCE() in HWS accessor drm/i915/dmabuf: Tighten struct_mutex for unmap_dma_buf drm/i915: Consolidate common error handling in intel_pin_and_map_ringbuffer_obj drm/i915: Refactor duplicate object vmap functions drm/i915/shrinker: Restrict vmap purge to objects with vmaps drm,i915: Introduce drm_malloc_gfp() drm/i915: Avoid allocating a vmap arena for a single page drm/i915/userptr: Flush cancellations before mmu-notifier invalidate returns drm/i915/userptr: Hold mmref whilst calling get-user-pages drm/i915/userptr: Store i915 backpointer for i915_mm_struct drm/i915: Force clean compilation with -Werror drm/i915: Disentangle i915_drv.h includes drm/i915: Add GEM debugging Kconfig option drm/i915: Hide the atomic_read(reset_counter) behind a helper drm/i915: Simplify checking of GPU reset_counter in display pageflips drm/i915: Tighten reset_counter for reset status drm/i915: Store the reset counter when constructing a request drm/i915: Simplify reset_counter handling during atomic modesetting drm/i915: Prevent leaking of -EIO from i915_wait_request() drm/i915: Suppress error message when GPU resets are disabled drm/i915: Prevent machine death on Ivybridge context switching drm/i915: Force ringbuffers to not be at offset 0 drm/i915: Move the mb() following release-mmap into release-mmap drm/i915: Split out !RCS legacy context switching drm/i915: Reorganise legacy context switch to cope with late failure drm/i915: Late request cancellations are harmful drm: Release driver references to handle before making it available again drm/i915: Avoid stalling on pending flips for legacy cursor updates drm/i915/shrinker: Only report objects with extra pinned pages as pinned drm/i915/shrinker: Report "unevictable" pages drm/i915/shrinker: Only shmemfs objects are backed by swap drm: Remove unused drm_device from drm_gem_object_lookup() drm: Avoid connector reference imbalance on error path Christian König (33): drm/amdgpu: drop the GTT power of two limit drm/amdgpu: change parameter passing in the VM code drm/amdgpu: use BO pages instead of GART array drm/amdgpu: remove GART page addr array drm/amdgpu: optionally enable GART debugfs file drm/amdgpu: merge VM manager and VM context ID structure drm/amdgpu: use a sync object for VMID fences v2 drm/amdgpu: add a fence after the VM flush drm/amdgpu: reuse VMIDs already assigned to a process drm/amdgpu: use max_dw in ring_init drm/amdgpu: reduce the ring size for GFX drm/amdgpu: reduce the ring size for SDMA drm/amdgpu: use the ring name for debugfs (v2) drm/amdgpu: fix the coding style in amdgpu_ring.c drm/ttm: don't wait for BO on initial allocation drm/ttm: remove use_ticket parameter from ttm_bo_reserve drm/ttm: remove lazy parameter from ttm_bo_wait drm/ttm: remove unused validation sequence drm/ttm: add optional LRU removal callback v2 drm/ttm: implement LRU add callbacks v2 drm/amdgpu: group BOs by log2 of the size on the LRU v2 drm/amdgpu: remove sorting of CS BOs drm/amdgpu: two minor 80 char fixes drm/amdgpu: make the VMID owner always 64bit drm/amdgpu: remove owner cleanup v2 drm/amdgpu: remove define for reserved client ID drm/amd: cleanup remaining spaces and tabs v2 drm/amdgpu: use fence_context to judge ctx switch v2 drm/amdgpu: move preamble IB handling into common code drm/amdgpu: move context switch handling into common code v2 drm/amdgpu: move the context from the IBs into the job drm/amdgpu: move VM fields into job drm/amdgpu: fix and cleanup user fence handling v2 Chunming Zhou (9): drm/amdgpu: improve vmid assigment V2 drm/amdgpu: double fence slot drm/amdgpu: only update last_flush when vmid doesn't have other new owner drm/amdgpu: fix error checking when reuse vmid on same ring drm/amdgpu: fix wrong release of vmid owner drm/amdgpu: add client id for every vm drm/amdgpu: make vmid owner be client_id drm/amdgpu: add pipeline sync for compute job drm/amdgpu/gfx7: fix pipeline sync Dan Carpenter (4): drm/exynos: mic: fix an error code drm/exynos: fix a warning message drm/rockchip: inno_hdmi: fix an error code drm/exynos/hdmi: add a missing tab Daniel Vetter (63): drm/i915: Update DRIVER_DATE to 20160314 Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued drm/atmel: Fixup drm_connector_/unplug/unregister/_all Revert "drm: Don't pass negative delta to ktime_sub_ns()" drm/i915: Update DRIVER_DATE to 20160330 drm/ttm: Remove TTM_HAS_AGP drm/sysfs: Nuke TV/DVI property files vgacon: dummy implementation for vgacon_text_force drm/i915: Remove PIPE_CONF_CHECK_I_ALT drm: Make drm.h uapi header safe for C++ drm: align #include directives with libdrm in uapi headers drm: Move DRM_MODE_OBJECT_* to uapi headers drm: Untangle __KERNEL__ guards drm: Make uapi headers C89 pendantic compliant drm/tegra: Don't set a gamma table size Merge tag 'v4.6-rc3' into drm-intel-next-queued drm/i915: Update DRIVER_DATE to 20160411 drm/bochs: Drop fake gamma support drm/virtio: Drop dummy gamma table support drm/nouveau: Use unlocked gem unreferencing drm/omapdrm: Use unlocked gem unreferencing drm/qxl: Use unlocked gem unreferencing drm/nouveau: Drop dev->struct_mutex from fbdev init drm/exynos: Drop dev->struct_mutex from mmap offset function drm/exynos: drop struct_mutex from exynos_gem_map_sgt_with_dma drm/exynos: drop struct_mutex from exynos_drm_gem_get_ioctl drm/exynos: drop struct_mutex from fbdev setup drm/vgem: Simplify dumb_map drm/vgem: Move get_pages to gem_create drm/vgem: Drop dev->struct_mutex drm/vma_manage: Drop has_offset drm/i915: Update DRIVER_DATE to 20160425 drm/sysfs: Annote lockless show functions with READ_ONCE drm: Improve kerneldoc for new mode object refcounting drm: Fix fb leaks and WARN spew in get/set_prop ioctls drm/atomic-helpers: Don't duplicate code in destroy helpers drm: Switch blobs to the new generic modeset obj refcounting drm: Give drm_agp_clear drm_legacy_ prefix drm: Put legacy lastclose work into drm_legacy_dev_reinit drm: Move drm_getmap into drm_bufs.c and give it a legacy prefix drm: Push struct_mutex into ->master_destroy drm: Forbid legacy MAP functions for DRIVER_MODESET drm: Hide master MAP cleanup in drm_bufs.c drm: Make drm_vm_open/close_locked private to drm_vm.c drm: Protect dev->filelist with its own mutex drm/gem: support BO freeing without dev->struct_mutex drm/amdgpu: Use lockless gem BO free callback drm/radeon: Use lockless gem BO free callback drm/imx: Use lockless gem BO free callback drm/etnaviv: Use lockless gem BO free callback drm: Fixup locking WARN_ON mistake around gem_object_free_unlocked drm: Fix up markup fumble drm: Add gpu.tmpl docbook to MAINTAINERS entry drm/i915: Correctly refcount connectors in hw state readou drm/exynos: Use lockless gem BO free callback drm/exynos: Nuke dummy fb->dirty callback drm/tegra: Use lockless gem BO free callback drm/hisilicon: Use drm_connector_register_all drm: Drop crtc argument from __drm_atomic_helper_crtc_destroy_state drm: Drop plane argument from __drm_atomic_helper_plane_destroy_state drm: Drop connector argument from __drm_atomic_helper_connector_destroy_state drm: Fix error handling in drm_connector_register drm: Nuke ->vblank_disable_allowed Dave Airlie (61): Merge tag 'topic/drm-misc-2016-04-01' of git://anongit.freedesktop.org/drm-intel into drm-next Merge tag 'drm-intel-next-2016-03-30' of git://anongit.freedesktop.org/drm-intel into drm-next Merge branch 'drm-next-analogix-dp-v2' of github.com:yakir-Yang/linux into drm-next Merge branch 'gma500-next' of git://github.com/patjak/drm-gma500 into drm-next Merge tag 'topic/struct_mutex-2016-04-21' of git://anongit.freedesktop.org/drm-intel into drm-next Merge tag 'topic/drm-misc-2016-04-21' of git://anongit.freedesktop.org/drm-intel into drm-next Merge tag 'v4.6-rc3' into drm-next Merge tag 'drm-intel-next-2016-04-11' of git://anongit.freedesktop.org/drm-intel into drm-next Merge branch 'drm-atmel-hlcdc-devel' of https://github.com/bbrezillon/linux-at91 into drm-next drm/mode: rework drm_mode_object_put to drm_mode_object_unregister. drm/mode: move framebuffer_free up above framebuffer_init drm/modes: drop __drm_framebuffer_unregister. drm/mode: introduce wrapper to read framebuffer refcount. drm/mode: move framebuffer reference into object. drm/mode: use _object_find to find framebuffers. drm/mode: reduce scope of fb_lock in framebuffer init drm/mode: reduce lock hold in addfb2 drm/modes: move reference taking into object lookup. drm/modes: reduce fb_lock to just protecting lists drm/modes: stop handling framebuffer special Merge branch 'drm/next/du' of git://linuxtv.org/pinchartl/fbdev into drm-next Merge branch 'topic-arcpgu-v6' of https://github.com/foss-for-synopsys-dwc-arc-processors/linux into drm-next Merge tag 'sun4i-drm-for-4.7' of https://git.kernel.org/.../mripard/linux into drm-next Merge branch 'for-next' of http://git.agner.ch/git/linux-drm-fsl-dcu into drm-next Merge tag 'drm-intel-next-2016-04-25' of git://anongit.freedesktop.org/drm-intel into drm-next Merge tag 'topic/drm-misc-2016-04-29' of git://anongit.freedesktop.org/drm-intel into drm-next Merge tag 'drm-vc4-next-2016-05-02' of https://github.com/anholt/linux into drm-next Merge branch 'exynos-drm-next' of git://git.kernel.org/.../daeinki/drm-exynos into drm-next Merge branch 'drm-rockchip-next-fixes-05-03' of https://github.com/markyzq/kernel-drm-rockchip into drm-next Merge tag 'drm-amdkfd-next-2016-05-04' of git://people.freedesktop.org/~gabbayo/linux into drm-next Merge tag 'drm-hisilicon-next-2016-04-29' of github.com:xin3liang/linux into drm-next Merge tag 'topic/drm-misc-2016-05-04' of git://anongit.freedesktop.org/drm-intel into drm-next drm/radeon: add support for SET_APPEND_CNT packet3 (v2) drm/amd: make a type-safe cgs_device struct. (v2) drm/amdgpu: drop apply quirks for now. drm/radeon: add cayman VM support for append packet. drm/fb: fix missing /** in kerneldoc comment. drm/modes: add connector reference counting. (v2) drm/fb_helper: add connector reference counting. (v2) drm/crtc: take references to connectors used in a modeset. (v2) drm/atomic: use connector references (v3) drm/i915/mst: use reference counted connectors. (v3) Merge branch 'drm-next-4.7' of git://people.freedesktop.org/~agd5f/linux into drm-next Merge branch 'for-next' of http://git.agner.ch/git/linux-drm-fsl-dcu into drm-next Merge tag 'topic/drm-misc-2016-05-08' of git://anongit.freedesktop.org/drm-intel into drm-next Merge branch 'msm-next' of git://people.freedesktop.org/~robclark/linux into drm-next drm/amdgpu: fix build on aarch64. Merge tag 'v4.6-rc7' into drm-next Merge tag 'mediatek-drm-2016-05-09' of git://git.pengutronix.de/git/pza/linux into drm-next Merge branch 'drm-etnaviv-next' of git://git.pengutronix.de:/git/lst/linux into drm-next Merge branch 'exynos-drm-next' of git://git.kernel.org/.../daeinki/drm-exynos into drm-next Merge branch 'drm-hisilicon-next' of github.com:xin3liang/linux into drm-next Merge tag 'drm/tegra/for-4.7-rc1' of git://anongit.freedesktop.org/tegra/linux into drm-next Merge branch 'drm-next-4.7' of git://people.freedesktop.org/~agd5f/linux into drm-next Merge tag 'drm/panel/for-4.7-rc1' of git://anongit.freedesktop.org/tegra/linux into drm-next Merge branch 'topic-arcpgu-updates' of https://github.com/foss-for-synopsys-dwc-arc-processors/linux into drm-next Merge tag 'topic/drm-misc-2016-05-13' of git://anongit.freedesktop.org/drm-intel into drm-next Merge branch 'drm-uapi-extern-c-fixes' of https://github.com/evelikov/linux into drm-next Merge tag 'topic/drm-misc-2016-05-18' of git://anongit.freedesktop.org/drm-intel into drm-next Merge branch 'linux-4.7' of git://github.com/skeggsb/linux into drm-next Merge tag 'vmwgfx-next-160520' of git://people.freedesktop.org/~thomash/linux into drm-next Dave Gordon (6): drm/i915: introduce for_each_engine_id() drm/i915: replace for_each_engine() drm/i915/guc: always reset GuC before loading firmware drm/i915/guc: keep GuC doorbell & process descriptor mapped in kernel drm/i915/guc: local optimisations and updating comments drm/i915: check for ERR_PTR from i915_gem_object_pin_map() Deepak M (2): drm/i915/bxt: Additional MIPI clock divider form B0 stepping onwards drm: Add new DCS commands in the enum list Dongwon Kim (2): drm/i915/bxt: Reversed polarity of PORT_PLL_REF_SEL bit drm/i915/bxt: PORT_PLL_REF_SEL bit should be set for all BXT variations Edward O'Callaghan (3): amdkfd: Use the canonical form in branch predicates amdkfd: Trim off unnescessary semicolon from kfd_packet_manager.c amdkfd: Trim unnescessary intermediate err var in kfd_chardev.c Emil Velikov (38): MAINTAINERS: Update the files list for the GMA500 DRM driver drm/qxl: remove XXX comment from the UAPI header drm/sis: add missing include drm.h for the UAPI header MAINTAINERS: Remove unneded wildcard for the i915 DRM driver MAINTAINERS: Update the files list for the Etnaviv DRM driver MAINTAINERS: Add maintainer entry for the Nouveau DRM driver MAINTAINERS: Add maintainer entry for the MSM DRM driver MAINTAINERS: Add maintainer entry for the VMWGFX DRM driver MAINTAINERS: Update the files list for the Exynos DRM driver MAINTAINERS: Update the files list for the Rockchip DRM driver MAINTAINERS: Update the files list for the Armada DRM driver MAINTAINERS: Update the files list for the Renesas DRM drivers MAINTAINERS: List the correct git repo for the Renesas DRM drivers MAINTAINERS: Add a few DRM drivers by Dave Airlie MAINTAINERS: Add a bunch of legacy (UMS) DRM drivers MAINTAINERS: Remove unneded wildcard for the Radeon/AMDGPU drivers drm/amdgpu: add extern C guard for the UAPI header drm/armada: add extern C guard for the UAPI header drm: add extern C guard for the UAPI headers drm/etnaviv: add extern C guard for the UAPI header drm/exynos: add extern C guard for the UAPI header drm/i810: add extern C guard for the UAPI header drm/i915: add extern C guard for the UAPI header drm/mga: add extern C guard for the UAPI header drm/msm: add extern C guard for the UAPI header drm/nouveau: add extern C guard for the UAPI header drm/nouveau: drop drm/ prefix from include drm/omap: add extern C guard for the UAPI header drm/qxl: add extern C guard for the UAPI header drm/r128: add extern C guard for the UAPI header drm/radeon: add extern C guard for the UAPI header drm/savage: add extern C guard for the UAPI header drm/sis: add extern C guard for the UAPI header drm/tegra: add extern C guard for the UAPI header drm/vc4: add extern C guard for the UAPI header drm/via: add extern C guard for the UAPI header drm/virgl: add extern C guard for the UAPI header drm/vmwgfx: add extern C guard for the UAPI header Enric Balletbo i Serra (4): drm/dp: Add define to set 0.5% down-spread in MAX_DOWNSPREAD register of: Add vendor prefix for Analogix Semiconductor devicetree: Add ANX7814 SlimPort transmitter binding drm/bridge: Add Analogix anx78xx support Eric Anholt (8): drm: Add an encoder and connector type enum for DPI. drm/vc4: Add DPI driver drm/vc4: Fix NULL deref in HDMI init error path drm/vc4: Add support for gamma ramps. drm/vc4: Add missing render node support MAINTAINERS: Add myself for the new VC4 (RPi GPU) graphics driver. of: Add vendor prefix for On Tat Industrial Company. drm/panel: simple: Add the 7" DPI panel from Adafruit Eric Engestrom (2): drm/i915: remove left over dead code drm/i915: remove dead code Eric Huang (21): drm/amd/powerplay: add deep sleep divider id into DPM table on Tonga drm/amd/powerplay: fix fan speed percent setting error on Tonga drm/amd/powerplay: fix fan speed percent setting error on Fiji drm/amd/powerplay: add thermal control for elm/baf drm/amd/powerplay: add UVD&VCE DPM and powergating support for elm/baf drm/amd/powerplay: add all blocks clockgating support through SMU/powerplay drm/amd/powerplay: add GFX/SYS clockgating support for ELM/BAF drm/amd/amdgpu: add query GFX cu info in CGS query system info drm/amd/powerplay: add GFX per cu powergating support through SMU/powerplay drm/amd/powerplay: add GFX per cu powergating for Baffin drm/amd/amdgpu: add medium grain powergating support for Baffin drm/amd/amdgpu: add power gating initialization support for GFX8.0 drm/amd/amdgpu: add power gating init for Baffin drm/amd/powerplay: Fix a bug for enabling ACDC gpio interrupt drm/amd/powerplay: fix bug dpm can't work when resume back on Polaris drm/amd/powerplay: fix fan speed percent setting error on Polaris10 drm/amd/powerplay: add dpm force multiple levels on cz/tonga/fiji/polaris (v2) drm/amd/powerplay: revise caching the soft pptable and add it's size drm/amd/powerplay: revise reading/writing pptable on Fiji drm/amd/powerplay: revise reading/writing pptable on Tonga drm/amd/powerplay: revise reading/writing pptable on Polaris10 Ezequiel Garcia (2): drm: probe_helper: Hide ugly ifdef drm: Make drm.debug parameter description more helpful Felix Kuehling (1): drm/ttm: Fix TTM BO accounting Flora Cui (11): drm/amdgpu: add GMC support for ELM/BAF drm/amdgpu: add DCE golden setting for ELM/BAF drm/amdgpu: add SDMA support for ELM/BAF drm/amdgpu: add mmRLC_CGCG_CGLS_CTRL_3D & mmRLC_CGCG_RAMP_CTRL_3D drm/amdgpu: add GFX support for ELM/BAF drm/amd/powerplay: add default clockgating handling drm/amdgpu: ungate SMC clockgating first before suspend drm/amdgpu: update the core VI support for ELM/BAF drm/amdgpu: add ELM/BAF pci ids drm/amdgpu: change ELM/BAF to Polaris10/Polaris11 drm/amdgpu: add polaris10/11 smc fw declaration Gerd Hoffmann (1): qxl: catch qxlfb_create_pinned_object failures Gustavo Padovan (7): drm/i915: use drm_crtc_send_vblank_event() drm/amdgpu: use drm_crtc_send_vblank_event() drm/radeon: use drm_crtc_send_vblank_event() drm/msm: use drm_crtc_send_vblank_event() drm/rcar-du: use drm_crtc_send_vblank_event() drm/shmobile: use drm_crtc_send_vblank_event() drm/tilcdc: use drm_crtc_send_vblank_event() Heiko Stuebner (2): drm/exynos: dp: rename implementation specific driver part drm: bridge: analogix/dp: rename register constants Huang Rui (1): drm/amd/powerplay: rewrite pp_sw_init to make code readable Imre Deak (58): drm/i915: Add missing NULL check before calling initial_watermarks drm/i915/skl: Fix power domain suspend sequence drm/i915/gen9: Sanitize handling of allowed DC states drm/i915/gen9: Disable DC states if power well support is disabled drm/i915/gen9: Remove state asserts when disabling DC states drm/i915/gen9: Fix DMC firmware initialization drm/i915/bxt: Fix off-by-one error in Broxton PLL IDs Fix MCHBAR cleanup on the driver init error path drm/i915: Move load time PCH detect, DPIO, power domain SW init earlier drm/i915: Move load time IRQ SW init earlier drm/i915: Move load time init of display/audio hooks earlier drm/i915: Move load time init of clock gating hooks earlier drm/i915: Move load time runtime device info init earlier drm/i915: Move load time gem_load_init earlier drm/i915: Move load time runtime PM get later drm/i915: Move load time shrinker registration later drm/i915: Move load time audio component registration earlier drm/i915: Move unload time display power domain uninit later drm/i915: Move unload time GTT, MSI IRQ cleanup later drm/i915: Move unload time opregion unregistration earlier drm/i915: Split out load time early initialization drm/i915: Split out load time MMIO initialization drm/i915: Split out load time HW initialization drm/i915: Split out load time interface registration drm/i915: Fix power domain HW state cleanup on error path drm/i915: Add fault injection support drm/i915: Tune down init error message due to failure injection drm/i915: Make __i915_printk debug output behave the same as DRM_DEBUG_DRIVER drm/i915/bxt: Fix DSI HW state readout drm/i915/bxt: Reject DMC firmware versions with known bugs drm/i915/bxt: Fix GRC code register field definitions drm/i915/bxt: Add a note about BXT_PORT_CL1CM_DW30 being read-only drm/i915/gen9: Reset secondary power well requests left on by DMC/KVMR drm/i915/gen9: Make power well disabling synchronous drm/i915/gen9: Fix DMC/DC state asserts drm/i915/bxt: Suspend power domains during suspend-to-idle drm/i915/skl: Unexport skl_pw1_misc_io_init drm/i915/bxt: Pass drm_i915_private to DDI PHY, CDCLK helpers drm/i915/bxt: Power down DDI PHYs separately during the per PHY uninit drm/i915/bxt: Don't toggle power well 1 on-demand drm/i915/bxt: Sanitize the DBUF HW state together with CDCLK drm/i915/bxt: Don't reprogram an already enabled DDI PHY drm/i915/bxt: Add HW state verification for DDI PHY and CDCLK Revert "drm/i915/bxt: Disable power well support" drm/i915/bxt: Enable runtime PM drm/i915/kbl: Reset secondary power well requests left on by DMC/KVMR drm/i915: Fix error path in i915_drm_resume_early drm/i915: Fix system resume if PCI device remained enabled drm/i915/ddi: Fix eDP VDD handling during booting and suspend/resume drm/i915/gen9: Fix runtime PM refcounting in case DMC firmware isn't loaded drm/i915/kbl: Don't WARN for expected secondary MISC IO power well request drm/i915: Inline intel_suspend_complete drm/i915/bxt: Don't uninit/init display core twice during system suspend/resume drm/i915/bxt: Sanitize DC state tracking during system resume drm/i915/bxt: Enable DC5 during runtime resume drm/i915/bxt: Use PHY0 GRC value for HW state verification drm/i915/bxt: Wait for PHY1 GRC done if PHY0 was already enabled drm/i915/bxt: Force reprogramming a PHY with invalid HW state Inki Dae (4): drm/exynos: clean up wait_for_vblank drm/exynos: fimd: add HW trigger support drm/exynos: decon: clean up interface type drm/exynos: clean up register definions for fimd and decon Itai Handler (1): drm/gma500: Fix possible out of bounds read Jani Nikula (35): drm/i915/bxt: add missing DSI power domain to power well 1 drm/i915/dsi: lose the loose 666 format name in favor of packed drm/i915/dsi: start using enum mipi_dsi_pixel_format drm/i915: add for_each_port_masked macro drm/i915: make transcoder_name return a string drm/i915/dsi: refactor dsi get hw state readout drm/i915/bxt: fix dsi hw state pipe readout drm/i915: move VBT based TV presence check to intel_bios.c drm/i915: move VBT based LVDS presence check to intel_bios.c drm/i915: move VBT based eDP port check to intel_bios.c drm/i915: move VBT based DSI presence check to intel_bios.c drm/i915/panel: setup pwm backlight based on connector type drm/i915/bios: drop has_mipi in favor of intel_bios_is_dsi_present drm/i915: fix sparse warning for using false as NULL drm/i915: hide away VBT private data in a separate header drm/i915: split get/set pipe timings to timings and src size drm/i915: split set pipeconf to pipeconf, pipemisc, pipe_gamma drm/i915: abstract get config for cpu transcoder drm/i915/bxt: add dsi transcoders drm/i915/dsi: use the BIT macro for clarity drm/i915/bxt: allow dsi on any pipe drm/i915: use a substruct in vbt data for edp drm/i915: move edp low vswing config to vbt data drm/i915: move sdvo mappings to vbt data drm/i915: remove unused dev_priv->render_reclock_avail drm/i915: use for_each_port_masked in bxt phy init for clarity drm/i915/dsi: refer to gpio index instead of gpio to avoid confusion drm/i915/dsi: add support for DSI sequence block v2 gpio element drm/i915/chv: add more IOSF port definitions drm/i915/dsi: clean up vlv gpio table and definitions drm/i915/dsi: abstract VLV gpio element execution to a separate function drm/i915/dsi: use a temp variable for referencing the gpio table drm/i915: add INTEL_GEN() helper shorthand for INTEL_INFO()->gen drm/i915/opregion: remove unnecessary ifdefs on CONFIG_ACPI drm/i915/dsi: fix CHV dsi encoder hardware state readout on port C Javier Martinez Canillas (2): drm/exynos: Use VIDEO_SAMSUNG_S5P_G2D=n as G2D Kconfig dependency drm/exynos/hdmi: Don't print error on deferral due to regulators Jesse Barnes (1): drm/i915: add another virtual PCH bridge for passthrough support Jie Qiu (1): drm/mediatek: Add DPI sub driver Jim Bride (3): drm/edid: Add drm_edid_get_monitor_name() drm/dp/mst: Enhance DP MST debugfs output drm/i915/dp/mst: Add source port info to debugfs output John Keeping (2): drm/rockchip: remove redundant statement drm/rockchip: don't leak iommu mapping Jon Hunter (1): drm/tegra: Fix crash caused by reference count imbalance Joonas Lahtinen (10): drm/i915/gtt: Reference mappable_end variable from pointer drm/i915: Rename dev_priv->gtt to dev_priv->ggtt drm/i915/gtt: Clean up GGTT probing code drm/i915: Rename GGTT init functions drm/i915: Refer to GGTT {,VM} consistently Revert "drm/i915: Fix races on fbdev" drm/i915: Use i915_vm_to_ppgtt instead of manual container_of drm/i915: Do not WARN_ON in i915_vm_to_ppgtt drm/i915: Do not use {HAS_*, IS_*, INTEL_INFO}(dev_priv->dev) drm/i915: Clean up PCI config register handling Joonyoung Shim (3): drm/exynos: support gem_prime_mmap drm/exynos: fix imported dma-buf to be mapped drm/exynos: use directly DMA mapping APIs on g2d Jordan Justen (5): drm/i915: Add TIMESTAMP to register whitelist drm/i915: Use an array of register tables in command parser drm/i915: Move Haswell registers to separate whitelist table drm/i915: Add Haswell CS GPR registers to whitelist drm/i915: Bump command parser version for new whitelisted registers Jérome Glisse (14): drm/radeon: consolidate r600 uvd initialization and startup code. drm/radeon: consolidate rv770 uvd initialization and startup code. drm/radeon: consolidate evergreen uvd initialization and startup code. drm/radeon: consolidate ni uvd initialization and startup code. drm/radeon: consolidate si uvd initialization and startup code. drm/radeon: consolidate cik uvd initialization and startup code. drm/radeon: add a vce flag to know if need to initialize vce or not. drm/radeon: consolidate ni vce initialization and startup code. drm/radeon: consolidate si vce initialization and startup code. drm/radeon: consolidate cik vce initialization and startup code. drm/radeon: add driver option to disable uvd block. drm/radeon: add driver option to disable vce block. drm/radeon: allow to force hard GPU reset. drm/radeon: hard reset r600 and newer GPU when hibernating. Karol Herbst (6): drm/nouveau/pmu: be more strict about locking drm/nouveau/iccsense: remove read function drm/nouveau/iccsense: convert to linked list drm/nouveau/iccsense: split sensor into own struct drm/nouveau/iccsense: configure sensors like nvidia does drm/nouveau/volt/gk104: round up in gk104_volt_set Kumar, Mahesh (1): drm/i915/skl+: Use plane size for relative data rate calculation Laurent Pinchart (4): drm: bridge: Make (pre/post) enable/disable callbacks optional drm: Remove warning from drm_connector_unregister_all() drm: rcar-du: Fix compilation warning drm: rcar-du: Fix compilation warning Lionel Landwerlin (5): drm/i915: Extract out gamma table and CSC to their own file drm/i915: Do not read GAMMA_MODE register drm/i915: Implement color management on bdw/skl/bxt/kbl drm/i915: Implement color management on chv drm: fix lut value extraction function Liu Ying (1): drm/crtc_helper: Reset empty plane state in drm_helper_crtc_mode_set_base() Lucas Stach (4): timer: add setup_deferrable_timer macro drm/etnaviv: use deferrable timer for hangcheck handler drm/etnaviv: take etnaviv_gem_obj in etnaviv_gem_mmap_obj drm/etnaviv: fix mmap operations for userptr and dma-buf objects Lukas Wunner (1): drm/i915: Fix races on fbdev Lyude (10): drm/i915: Fix race condition in intel_dp_destroy_mst_connector() drm/i915: Call intel_dp_mst_resume() before resuming displays drm/dp/mst: Restore primary hub guid on resume drm/dp_helper: Always wait before retrying native aux transactions drm/dp_helper: Retry aux transactions on all errors drm/dp_helper: Perform throw-away read before actual read in drm_dp_dpcd_read() drm/i915: Get rid of intel_dp_dpcd_read_wake() drm/fb_helper: Fix a few typos drm/i915/fbdev: Fix num_connector references in intel_fb_initial_config() drm/fb_helper: Fix references to dev->mode_config.num_connector Maarten Lankhorst (35): drm/i915: Handle -EDEADLK in drm_atomic_commit from load-detect. drm/i915: Do not return unknown status when load detection is tested. drm/i915: Handle invalid ilk pipe watermarks correctly. drm/i915: Allow preservation of watermarks, v2. drm/i915: Only recalculate wm's for planes part of the state, v2. drm/i915: Only use sanitized values for ILK watermarks drm/i915: Update state before setting watermarks, v2. drm/i915: Remove some post-commit members from intel_crtc->atomic, v3. drm/i915: Nuke fbc members from intel_crtc->atomic, v4. drm/i915: Use a crtc mask instead of a refcount for dpll functions, v2. drm/i915: Perform dpll commit first, v2. drm/i915: Move pll power state to crtc power domains. drm/i915: Remove vblank wait from hsw_enable_ips, v2. drm/i915: Add locking to pll updates, v3. drm/i915: Pass crtc_state to color management functions. drm/i915: Do not check crtc_state->active in intel_color_load_luts. drm/i915: Update color management during vblank evasion. drm/i915: Make modeset state verifier take crtc as argument. drm/i915: Move modeset state verifier calls. drm/i915: Rename hw state checker to hw state verifier. drm/core: Fix ordering in drm_mode_config_cleanup. drm/atomic: Rename async parameter to nonblocking. drm/atomic: Rename drm_atomic_async_commit to nonblocking. drm/arm/hdlcd: Rename async to nonblock. drm/exynos: Rename async to nonblock. drm/msm: Rename async to nonblock. drm/omapdrm: Rename async to nonblock. drm/rcar-du: Rename async to nonblock. drm/sti: Rename async to nonblock. drm/tegra: Rename async to nonblock. drm/rockchip: Rename async to nonblock. drm/vc4: Rename async to nonblock. drm/i915: Rename async to nonblock. drm/atomic: Add WARN_ON when state->acquire_ctx is not set. drm/core: Do not preserve framebuffer on rmfb, v4. Marek Szyprowski (8): drm/exynos: fimd: fix broken dp_clock control drm/exynos: exynos5433_decon: use generic of_device_get_match_data helper drm/exynos: dsi: use generic of_device_get_match_data helper drm/exynos: fimd: use generic of_device_get_match_data helper drm/exynos: rotator: use generic of_device_get_match_data helper drm/exynos: hdmi: use generic of_device_get_match_data helper drm/exynos: mixer: remove support for non-dt platforms drm/exynos: mixer: use generic of_device_get_match_data helper Mark Yao (4): drm/rockchip: get rid of rockchip_drm_crtc_mode_config drm/rockchip: support non-iommu buffer path drm/rockchip: vop: fix iommu crash with async atomic drm/rockchip: vop: Initialize vskiplines to zero Matt Roper (3): drm/i915: Add two-stage ILK-style watermark programming (v11) drm/i915: Wait until after wm optimization to drop runtime PM reference drm/i915/bxt: Set max cdclk frequency properly Matthew Auld (3): drm/i915: BUG_ON when ggtt_view is NULL drm/i915: call kunmap_px on pt_vaddr drm/i915: use dev_priv directly in gen8_ppgtt_notify_vgt Maxime Ripard (9): drm: fb: Add seq_file definition drm: sun4i: Add DT bindings documentation drm: Add Allwinner A10 Display Engine support drm: sun4i: Add RGB output drm: sun4i: Add composite output drm: sun4i: tv: Add PAL output standard drm: sun4i: tv: Add NTSC output standard MAINTAINERS: Add a maintainer for the Allwinner DRM driver drm/panel: simple: Add timings for the Olimex LCD-OLinuXino-4.3TS MichaŠWiniarski (1): drm/i915: Adjust size of PIPE_CONTROL used for gen8 render seqno write Michel Dänzer (1): drm/radeon: Support DRM_MODE_PAGE_FLIP_ASYNC Mika Kahola (1): drm/i915: Fix eDP low vswing for Broadwell Mika Kuoppala (8): drm/i915/hangcheck: Prevent long walks across full-ppgtt drm/i915: Modify reset func to handle per engine resets drm/i915: Fix use after free when printing load failure drm/i915/skl: Fix rc6 based gpu/system hang drm/i915/skl: Fix spurious gpu hang with gt3/gt4 revs drm/i915: Don't program eLLC IDI hash mask for gen9+ drm/i915: Store and use edram capabilities drm/i915: Calculate edram size Monk Liu (10): drm/amdgpu: support cond exec drm/amdgpu: patch cond exec for SDMA drm/amdgpu: use sched_job_init to initialize sched_job drm/amdgpu: delay job free to when it's finished (v2) drm/amdgpu: put job to list before done drm/amdgpu: get rid of incorrect TDR drm/amdgpu: rework TDR in scheduler (v2) drm/amdgpu: use ref to keep job alive drm/amdgpu: keep vm in job instead of ib (v2) drm/amdgpu: hdp flush&inval should always do Moritz Kühner (2): drm/amd/powerplay/hwmgr: prevent VDDC from exceeding 2V drm/amd/powerplay/hwmgr: don't add invalid voltage Muhammad Falak R Wani (1): drm/amdgpu: Replace rcu_assign_pointer() with RCU_INIT_POINTER() Mykola Lysenko (1): drm/amdgpu: fix memory leak in CGS (FW info) Nathan Schulte (1): drm/i915: add module param "enable_dp_mst" Nicolai Stange (1): drm/radeon: don't include RADEON_HPD_NONE in HPD IRQ enable bitsets Nils Wallménius (16): drm/amdgpu: delete unused struct member suspend from amdgpu_device drm/radeon: delete unused struct member suspend from radeon_device drm/amdgpu: do not store bios_header_start in amdgpu_device drm/amdgpu: mark amdgpu_allowed_register_entry tables as 'const' drm/amd: Mark some tables as const drm/amd/scheduler: Mark amdgpu_sched_ops const drm/amdgpu: Mark all instances of struct drm_info_list as const drm/amd/powerplay: Mark pem_event_action chains as const drm/amd/powerplay: mark phm_master_table_* structs as const drm/amd: make some function-local tables static const drm/amd/powerplay: Delete dead struct declaration drm/amdgpu: Constify some tables drm/amd/powerplay: Use defined constants for minium engine clock drm/amdgpu: Use max macro in *get_sleep_divider_id_from_clock drm/amdgpu: Simplify calculation in *get_sleep_divider_id_from_clock drm/amdgpu: Drop unused parameter for *get_sleep_divider_id_from_clock Noralf Trønnes (14): drm/udl: Change drm_fb_helper_sys_*() calls to sys_*() drm/qxl: Change drm_fb_helper_sys_*() calls to sys_*() drm/fb-helper: Add fb_deferred_io support fbdev: fb_defio: Export fb_deferred_io_mmap drm/fb-cma-helper: Add fb_deferred_io support drm/qxl: Use drm_fb_helper deferred_io support drm/udl: Use drm_fb_helper deferred_io support drm: Make drm_encoder_helper_funcs optional drm/fb-helper: Remove mention of CONFIG_FB_DEFERRED_IO in docs drm/fb-cma-helper: Hook up to DocBook and fix some docs drm/atomic: Don't skip drm_bridge_*() calls if !drm_encoder_helper_funcs drm/atomic: Add drm_atomic_helper_best_encoder() drm/fb-cma-helper: Use const for drm_framebuffer_funcs argument drm/fb-cma-helper: Add function drm_fb_cma_create_with_funcs() Peter Antoine (1): drm/i915/mocs: Program MOCS for all engines on init Philipp Zabel (6): memory: mtk-smi: export mtk_smi_larb_get/put clk: mediatek: make dpi0_sel propagate rate changes clk: mediatek: Add hdmi_ref HDMI PHY PLL reference clock output clk: mediatek: remove hdmitx_dig_cts from TOP clocks drm/exynos/dpi: use of_graph_get_endpoint_by_regs helper drm/exynos/dsi: use of_graph_get_endpoint_by_regs helper Ramalingam C (2): drm/i915: Sharing the pixel_format_from_vbt to whole i915 drm/i915/BXT: Get pipe conf from the port registers Rex Zhu (20): drm/amdgpu: fix issue that can't set vce clock gate. drm/amdgpu: No need to stop hw init although vce's state was not true. drm/amdgpu: refine code for code style. drm/amd/powerplay: use min_clock_in_sr for deep sleep feature. drm/amd/powerplay: enable dpm for baffin. drm/amd/powerplay: init hwmgr for ELM/BAF drm/amd/powerplay: enable powerplay for baffin. drm/amd/powerplay: print gpu loading and uvd/vce power gate enablement for polaris10/11. drm/amd/powerplay: fix mclk in high clock for baffin drm/amd/powrplay: fix issue that get wrong enable flag. drm/amd/powerplay: enable set lowest mclk clock on baffin. drm/amd/powerplay: Disable Spread Spectrum on DPM 0 on baffin as SPLL Shut Down feature is enabled. drm/amdgpu: code style refine. drm/amd/powerplay: enable some feature for baffin/ellesmere. (v2) drm/amd/powerplay: add fan control mode interface for baffin drm/amd/powerplay: parameter updates according to SMC. drm/amd/powerplay: fix issue that get wrong reference clock value. drm/amd/powerplay: update vce power gate state for baffin. drm/amd/powerplay: return 0 when interface not implement on some asic. drm/amd/powerplay: fix some initialize error on polaris10. Riccardo Bortolato (1): drm/panel: simple: Add support for Innolux AT070TN92 Rob Clark (17): drm/atomic: export drm_atomic_helper_wait_for_fences() drm/msm: make HDCP support optional reservation: add reservation_object_get_excl_rcu() drm/msm: move debugfs code to it's own file drm/msm: move fence code to it's own file drm/msm: use imported dmabuf's reservation object drm/msm: split out timeout_to_jiffies helper drm/msm/gpu: simplify tracking in-flight bo's drm/msm: split locking and pinning BO's drm/msm: introduce msm_fence_context drm/msm: remove fence_cbs drm/msm: 'struct fence' conversion drm/msm: fix ->last_fence() after recover drm/msm: drop return from gpu->submit() drm/msm: de-indent submit_create() drm/msm: fix leak in failed submit path drm/msm: print offender task name on hangcheck recovery Rob Herring (1): drm/msm/mdp: Add support for more RGBX formats Robert Foss (2): include/drm: Reword debug categories comment. drm/docs: Move "scaling mode" property. Rodrigo Vivi (1): drm/i915/kbl: Remove preliminary_hw_support protection from KBL. Sagar Arun Kamble (1): drm/i915: Hold RPM reference while setting freq limits through sysfs Shashank Sharma (2): drm/i915/bxt: Initialize MIPI DSI for BXT drm/i915: Fake HDMI live status Shubhangi Shrivastava (8): drm/i915: Splitting intel_dp_detect drm/i915: Cleaning up intel_dp_hpd_pulse drm/i915: Reorganizing intel_dp_check_link_status drm/i915: Read sink_count dpcd always drm/i915: force full detect on sink count change drm/i915: Update VBT fields for child devices drm/i915: Set invert bit for hpd based on VBT drm/i915: Fixing eDP detection on certain platforms Simon Horman (1): drm: rcar-du: Use ARCH_RENESAS Sinclair Yeh (2): drm/vmwgfx: Add VMWare host messaging capability drm/vmwgfx: Report vmwgfx version to vmware.log Slava Grigorev (1): drm/amd/amdgpu: fix 64-bit division Sonny Jiang (3): drm/amdgpu: add UVD support for ELM/BAF drm/amdgpu: add VCE support to ELM/BAF amdgpu/uvd: separate context buffer from DPB Stefan Agner (13): drm/fsl-dcu: disable clock on initialization failure and remove drm/fsl-dcu: add extra clock for pixel clock drm/fsl-dcu: use common clock framework for pixel clock divider drm/fsl-dcu: add TCON driver drm/fsl-dcu: detach panel on destroy drm/fsl-dcu: handle missing panel gracefully drm/fsl-dcu: use variable name dev for struct drm_device drm/fsl-dcu: deallocate fbdev CMA on unload drm/fsl-dcu: disable output polling on driver unload drm/fsl-dcu: implement lastclose callback drm/fsl-dcu: increment version and date drm: introduce bus_flags in drm_display_info drm/fsl-dcu: use bus_flags for pixel clock polarity Sudip Mukherjee (1): drm/gma500: fix double freeing Takashi Iwai (1): drm/i915: Fix bogus dig_port_map[] assignment for pre-HSW Thierry Reding (3): drm/atomic: Add missing drm_crtc_internal.h include MAINTAINERS: Remove Terje Bergström as Tegra DRM maintainer drm/panel: Flesh out kerneldoc Thomas Hellstrom (1): drm/vmwgfx: Kill some lockdep warnings Tim Gore (3): drm/i915/gen9: add WaClearFlowControlGpgpuContextSave drm/i915: implement WaClearTdlStateAckDirtyBits drm/i915/gen9: implement WaEnableSamplerGPGPUPreemptionSupport Tobias Jakobi (1): drm/exynos: fimd: harden fimd_calc_clkdiv() Tom St Denis (8): drm/amd/amdgpu: Add SW clock gating support to UVD 5 and 6 drm/amd/amdgpu: Enable clockgating for UVD5 on Tonga drm/amd/amdgpu: Enable clockgating in UVD6 for Stoney drm/amd/amdgpu: Drop print_status callbacks. drm/amd/amdgpu: Add debugfs entries for smc/didt/pcie drm/amd/amdgpu: Enable CG for UVD6 on Carrizo drm/amd/amdgpu: Add name field to amd_ip_funcs (v2) drm/amd/amdgpu: Added more named DRM info messages for debugging Tomas Elf (2): drm/i915: Generalise common GPU engine reset request/unrequest code drm/i915/tdr: Initialize hangcheck struct for each engine Tvrtko Ursulin (30): drm/i915: Execlists small cleanups and micro-optimisations drm/i915: Avoid snooping with userptr where not supported drm/i915: Add wait_for_us drm/i915/lrc: Do not wait atomically when stopping engines drm/i915: Kconfig for extra driver debugging drm/i915: Do not lie about atomic timeout granularity drm/i915: Do not wait atomically for display clocks drm/i915: Rename local struct intel_engine_cs variables drm/i915: Rename intel_engine_cs function parameters drm/i915: Rename intel_engine_cs struct members drm/i915: More intel_engine_cs renaming drm/i915: More renaming of rings to engines drm/i915: Remove unused variable in i915_gem_request_add_to_client drm/i915: Use shorter route to dev_private where possible drm/i915: Move CSB MMIO reads out of the execlists lock drm/i915: Move execlists irq handler to a bottom half drm/i915: Use consistent forcewake auto-release timeout across kernel configs drm/i915: Simplify for_each_fw_domain iterators drm/i915: Do not serialize forcewake acquire across domains drm/i915: Extract knowledge of register forcewake domains drm/i915: Remove forcewake request registers from the shadowed table drm/i915: Only grab correct forcewake for the engine with execlists drm/i915: Split execlists hardware status page initialisation from setup drm/i915: Use new i915_gem_object_pin_map for LRC drm/i915: Show pin mapped status in describe_obj drm/i915: Show pin mapped counts and sizes in debugfs drm/i915/gen8+: Do not enable DPF interrupt since the handler does not exist drm/i915: Remove a couple pointless WARN_ONs drm: Quiet down drm_mode_getconnector drm: Quiet down drm_mode_getresources Vaishali Thakkar (1): drm/msm: Move call to PTR_ERR_OR_ZERO after reassignment Vandana Kannan (1): drm/i915: BXT DDI PHY sequence BUN Ville Syrjälä (89): drm/i915: Account for the size of the chroma plane for the rotated gtt view drm/i915: s/tile_width/tile_width_bytes/ drm/i915: Pass 90/270 vs. 0/180 rotation info for intel_gen4_compute_page_offset() drm/i915: Support for extra alignment for tiled surfaces drm/i915: Don't pass plane+plane_state to intel_pin_and_fence_fb_obj() drm/i915: Pass drm_frambuffer to intel_compute_page_offset() drm/i915: Reorganize intel_rotation_info drm/i915: Move the NULL sg handling out from rotate_pages() drm/i915: Embed rotation_info under intel_framebuffer drm/i915: Dump ddi_pll_sel in hex instead of decimal on HSW/BDW drm/i915: Move the encoder vs. FDI dotclock check out from encoder .get_config() drm/i915: Remove the SPLL==270Mhz assumption from intel_fdi_link_freq() drm/i915: Make the LPT iclkip 20MHz case more generic drm/i915: Read out VGA dotclock properly on LPT drm/i915: Try to fix CRT port clock limits drm/i915: Store rawclk_freq in dev_priv drm/i915: Rename s/i9xx/g4x/ in DP code drm/i915: Use g4x_get_aux_clock_divider() for VLV/CHV drm/i915: Read out hrawclk from CCK on vlv/chv drm/i915: Clean up .get_aux_clock_divider() functions drm/i915: Use DIV_ROUND_CLOSEST for PWM calculations drm/i915: Actually retry with bit-banging after GMBUS timeout Revert "drm/i915: Enable PSR by default on Valleyview and Cherryview." drm/i915: Pass the correct crtc state to .update_plane() drm/i915: Fix watermarks for VLV/CHV drm/i915: Wait for vblank after cxsr disable in pre_plane_update drm/i915: s/crtc_state/old_crtc_state/ in intel_atomic_commit() drm/i915: Disable FDI RX before DDI_BUF_CTL drm/i915: Throw out BUGs from DPLL/PCH functions drm/i915: Make {vlv,chv}_{disable,update}_pll() more similar drm/i915: Implement WaPixelRepeatModeFixForC0:chv drm/i915: Add a local pipe variable to vlv_enable_pll() drm/i915: assert_panel_unlocked() in chv_enable_pll() drm/i915: Remove the "three times for luck" trick from vlv_enable_pll() drm/i915: Fix plane init failure paths drm/i915: Use GPLL ref clock to calculate GPU freqs on VLV/CHV drm/i915: Set GPU freq to idle_freq initially drm/i915: Protect force_bit with gmbus_mutex drm/i915: Restore GMBUS operation after a failed bit-banging fallback drm/i915: Make GMBUS timeout message DRM_DEBUG_KMS drm/i915: Reject panel_type > 0xf from VBT drm/i915: Replace the static panel_type variable with dev_priv->vbt.panel_type drm/i915: Get panel_type from OpRegion panel details drm/i915: Try to shut up more ILK underruns drm/i915: Make sure LP1+ watermarks levels are preserved when going from 1 to 2 pipes drm/i915: Replace ILK eDP underrun suppression with something better drm/i915: Remove "VLV magic" from irq setup drm/i915: Fix up vlv/chv display irq setup drm/i915: Skip display irq setup if display irqs aren't flagged as enabled drm/i915: Move vlv/chv display irq code to a more logical place drm/i915: Clear display interrupt before enabling when turning on the power well drm/i915: Use GEN5_IRQ_INIT() in vlv_display_irq_postinstall() drm/i915: Warn if irq_mask isn't ~0 during vlv/cvh display irq postinstall drm/i915: Move vlv_init_display_clock_gating() to the display power well drm/i915: Move DPINVGTT setup to vlv_display_irq_reset() Revert "drm/i915: Limit the auto arming of mmio debugs on vlv/chv" drm/i915: Change lfsr_converts[] to u16 drm/i915: Power down the DSI PLL before reconfiguring it drm/i915: Fix CHV DSI PLL refclk during state readout drm/i915: Dump pfit PGM_RATIOS as hex drm/i915: Don't read out port_clock on CHV when DPLL is disabled drm/i915: Ignore GTFIFODBG FIFO free entry fields on CHV drm/i915: Use GEN8_MASTER_IRQ_CONTROL consistently drm/i915: Set up VLV_MASTER_IER consistently drm/i915: Clear VLV_IIR after PIPESTAT drm/i915: Clear VLV_MASTER_IER around irq processing drm/i915: Clear VLV_IER around irq processing drm/i915: Eliminate loop from VLV irq handler drm/i915: Move variables to narrower scope in VLV/CHV irq handlers drm/i915: Split PORT_HOTPLUG_STAT ack out from i9xx_hpd_irq_handler() drm/i915: Split VLV/CVH PIPESTAT handling into ack+handler drm/i915: Move gt/pm irq handling out from irq disabled section on VLV drm/i915: Eliminate passing dev+dev_priv to {snb,ilk}_gt_irq_handler() drm/i915: Split gen8_gt_irq_handler into ack+handle drm/i915: Use fw_domains_put_with_fifo() on HSW drm/i915: Setup DPLL/DPLLMD for DSI too on VLV/CHV drm/i915: Compute DSI PLL parameters during .compute_config() drm/i915: Eliminate {vlv,bxt}_configure_dsi_pll() drm/i915: Hook up pfit for DSI drm/i915: Reject 'Center' scaling mode for eDP/DSI on GMCH platforms drm/atomic-helper: Print an error if vblank wait times out drm/i915: Replace nondescript 'WARN_ON(!lret)' with a sensible error message drm/i915: Fix oops in vlv_force_pll_on() drm/i915: Set .domains=POWER_DOMAIN_MASK for the always-on well drm/i915: Define VLV/CHV display power well domains properly drm/i915: Define HSW/BDW display power domains the right way up drm/i915: Wait for power cycle delay after turning off DSI panel power drm/i915: Make RPS EI/thresholds multiple of 25 on SNB-BDW drm/dp: Allow signals to interrupt drm_aux-dev reads/writes Vitaly Prosyak (1): drm/amdgpu/dce11: fix vertical bars appear on monitor Xinliang Liu (12): drm/hisilicon: Add device tree binding for hi6220 display subsystem drm/hisilicon: Add hisilicon kirin drm master driver drm/hisilicon: Add crtc driver for ADE drm/hisilicon: Add plane driver for ADE drm/hisilicon: Add vblank driver for ADE drm/hisilicon: Add cma fbdev and hotplug drm/hisilicon: Add designware dsi encoder driver drm/hisilicon: Add designware dsi host driver drm/hisilicon: Add support for external bridge MAINTAINERS: Add maintainer for hisilicon DRM driver drm/hisilicon: Make kirin_drm_unbind sufficient drm/hisilicon: Fix DRM_INFO printed issue Yakir Yang (15): drm: bridge: analogix/dp: split exynos dp driver to bridge directory drm: bridge: analogix/dp: fix some obvious code style drm: bridge: analogix/dp: remove duplicate configuration of link rate and link count drm: bridge: analogix/dp: dynamic parse sync_pol & interlace & dynamic_range dt-bindings: add document for analogix display port driver ARM: dts: exynos/dp: remove some properties that deprecated by analogix_dp driver drm: rockchip: dp: add rockchip platform dp driver dt-bindings: add document for rockchip variant of analogix_dp drm: bridge: analogix/dp: add some rk3288 special registers setting drm: bridge: analogix/dp: add max link rate and lane count limit for RK3288 drm: bridge: analogix/dp: try force hpd after plug in lookup failed drm: bridge: analogix/dp: move hpd detect to connector detect function drm: bridge: analogix/dp: add edid modes parse in get_modes method drm: bridge: analogix/dp: add panel prepare/unprepare in suspend/resume time drm: bridge: analogix/dp: Fix the possible dead lock in bridge disable time arun.siluvery at linux.intel.com (2): drm/i915/error: Capture WA ctx batch in error state drm/i915/tdr: Prepare error handler to accept mask of hung engines jim.bride at linux.intel.com (1): drm/i915/dp/mst: Fix MST logic in intel_dp_long_pulse() rezhu (2): drm/amd/powerplay: add header files for ellesmere smu manager. drm/amd/powerplay: add smu support for ellesmere/baffin yanyang1 (3): drm/amd/amdgpu: Add smc_sk firmware in baffin & ellesmere. drm/amd/powerplay: Add smc_sk firmware to baffin & ellesmere. drm/amd/powerplay: update baffin & ellesmere smc_sk firmware. Documentation/DocBook/gpu.tmpl | 47 +- .../devicetree/bindings/display/brcm,bcm-vc4.txt | 36 + .../bindings/display/bridge/analogix_dp.txt | 52 + .../bindings/display/exynos/exynos5433-decon.txt | 5 +- .../bindings/display/exynos/exynos_dp.txt | 93 +- .../bindings/display/exynos/exynos_hdmi.txt | 27 +- .../devicetree/bindings/display/fsl,dcu.txt | 15 +- .../devicetree/bindings/display/fsl,tcon.txt | 18 + .../bindings/display/hisilicon/dw-dsi.txt | 72 + .../bindings/display/hisilicon/hisi-ade.txt | 64 + .../bindings/display/mediatek/mediatek,disp.txt | 203 + .../bindings/display/mediatek/mediatek,dpi.txt | 35 + .../bindings/display/mediatek/mediatek,dsi.txt | 60 + .../bindings/display/panel/innolux,at070tn92.txt | 7 + .../display/panel/olimex,lcd-olinuxino-43-ts.txt | 7 + .../bindings/display/panel/ontat,yx700wv03.txt | 7 + .../bindings/display/panel/tpk,f07a-0102.txt | 8 + .../bindings/display/panel/tpk,f10a-0102.txt | 8 + .../display/rockchip/analogix_dp-rockchip.txt | 92 + .../devicetree/bindings/display/snps,arcpgu.txt | 35 + .../bindings/display/sunxi/sun4i-drm.txt | 258 + .../devicetree/bindings/vendor-prefixes.txt | 3 + .../devicetree/bindings/video/bridge/anx7814.txt | 40 + MAINTAINERS | 150 +- arch/arc/boot/dts/axc001.dtsi | 22 +- arch/arc/boot/dts/axc003.dtsi | 14 + arch/arc/boot/dts/axc003_idu.dtsi | 14 + arch/arc/boot/dts/axs10x_mb.dtsi | 61 + arch/arm/boot/dts/exynos5250-arndale.dts | 2 - arch/arm/boot/dts/exynos5250-smdk5250.dts | 2 - arch/arm/boot/dts/exynos5250-snow-common.dtsi | 4 +- arch/arm/boot/dts/exynos5250-spring.dts | 4 +- arch/arm/boot/dts/exynos5420-peach-pit.dts | 4 +- arch/arm/boot/dts/exynos5420-smdk5420.dts | 2 - arch/arm/boot/dts/exynos5800-peach-pi.dts | 2 - drivers/clk/mediatek/clk-mt8173.c | 12 +- drivers/clk/mediatek/clk-mtk.h | 15 +- drivers/gpu/drm/Kconfig | 9 + drivers/gpu/drm/Makefile | 6 +- drivers/gpu/drm/amd/acp/acp_hw.c | 2 +- drivers/gpu/drm/amd/acp/include/acp_gfx_if.h | 2 +- drivers/gpu/drm/amd/amdgpu/Kconfig | 10 + drivers/gpu/drm/amd/amdgpu/amdgpu.h | 209 +- drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c | 9 +- drivers/gpu/drm/amd/amdgpu/amdgpu_acp.h | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c | 45 +- drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.h | 2 + drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c | 8 +- drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c | 8 +- drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c | 160 +- drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 145 +- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 281 +- drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 23 +- drivers/gpu/drm/amd/amdgpu/amdgpu_dpm.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 16 +- drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c | 8 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c | 53 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gds.h | 6 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 22 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c | 95 +- drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_job.c | 71 +- drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 11 +- drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_object.h | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 53 +- drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.c | 15 +- drivers/gpu/drm/amd/amdgpu/amdgpu_prime.c | 7 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c | 84 +- drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c | 105 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 70 +- drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 110 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c | 23 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vce.h | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 342 +- drivers/gpu/drm/amd/amdgpu/atom.h | 2 +- drivers/gpu/drm/amd/amdgpu/atombios_crtc.c | 98 +- drivers/gpu/drm/amd/amdgpu/atombios_crtc.h | 2 + drivers/gpu/drm/amd/amdgpu/atombios_encoders.c | 93 +- drivers/gpu/drm/amd/amdgpu/ci_dpm.c | 224 +- drivers/gpu/drm/amd/amdgpu/cik.c | 10 +- drivers/gpu/drm/amd/amdgpu/cik_ih.c | 37 +- drivers/gpu/drm/amd/amdgpu/cik_sdma.c | 66 +- drivers/gpu/drm/amd/amdgpu/cikd.h | 4 +- drivers/gpu/drm/amd/amdgpu/cz_dpm.c | 2 +- drivers/gpu/drm/amd/amdgpu/cz_ih.c | 37 +- drivers/gpu/drm/amd/amdgpu/cz_smumgr.h | 2 +- drivers/gpu/drm/amd/amdgpu/dce_v10_0.c | 42 +- drivers/gpu/drm/amd/amdgpu/dce_v11_0.c | 235 +- drivers/gpu/drm/amd/amdgpu/dce_v8_0.c | 37 +- drivers/gpu/drm/amd/amdgpu/fiji_dpm.c | 2 +- drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c | 329 +- drivers/gpu/drm/amd/amdgpu/gfx_v7_0.h | 1 - drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 1624 +- drivers/gpu/drm/amd/amdgpu/gfx_v8_0.h | 1 - drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c | 114 +- drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c | 154 +- drivers/gpu/drm/amd/amdgpu/iceland_dpm.c | 2 +- drivers/gpu/drm/amd/amdgpu/iceland_ih.c | 35 +- drivers/gpu/drm/amd/amdgpu/kv_dpm.c | 68 +- drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c | 64 +- drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c | 246 +- drivers/gpu/drm/amd/amdgpu/smu_ucode_xfer_vi.h | 1 + drivers/gpu/drm/amd/amdgpu/tonga_dpm.c | 2 +- drivers/gpu/drm/amd/amdgpu/tonga_ih.c | 35 +- drivers/gpu/drm/amd/amdgpu/uvd_v4_2.c | 123 +- drivers/gpu/drm/amd/amdgpu/uvd_v5_0.c | 241 +- drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c | 420 +- drivers/gpu/drm/amd/amdgpu/vce_v2_0.c | 98 +- drivers/gpu/drm/amd/amdgpu/vce_v3_0.c | 85 +- drivers/gpu/drm/amd/amdgpu/vi.c | 199 +- drivers/gpu/drm/amd/amdgpu/vid.h | 5 +- drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 5 +- .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 10 +- drivers/gpu/drm/amd/amdkfd/kfd_events.c | 4 +- drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c | 2 +- drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c | 12 +- drivers/gpu/drm/amd/include/amd_shared.h | 7 +- .../gpu/drm/amd/include/asic_reg/dce/dce_11_2_d.h | 10075 ++++++++++ .../drm/amd/include/asic_reg/dce/dce_11_2_enum.h | 6813 +++++++ .../amd/include/asic_reg/dce/dce_11_2_sh_mask.h | 18687 +++++++++++++++++++ .../gpu/drm/amd/include/asic_reg/gca/gfx_8_0_d.h | 2 + .../gpu/drm/amd/include/asic_reg/uvd/uvd_6_0_d.h | 1 + drivers/gpu/drm/amd/include/atombios.h | 663 +- drivers/gpu/drm/amd/include/cgs_common.h | 78 +- drivers/gpu/drm/amd/include/cgs_linux.h | 6 +- drivers/gpu/drm/amd/powerplay/amd_powerplay.c | 276 +- .../drm/amd/powerplay/eventmgr/eventactionchains.c | 34 +- .../drm/amd/powerplay/eventmgr/eventmanagement.c | 2 +- drivers/gpu/drm/amd/powerplay/hwmgr/Makefile | 4 +- .../drm/amd/powerplay/hwmgr/cz_clockpowergating.c | 4 +- .../drm/amd/powerplay/hwmgr/cz_clockpowergating.h | 3 +- drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c | 26 +- .../amd/powerplay/hwmgr/fiji_clockpowergating.c | 11 +- drivers/gpu/drm/amd/powerplay/hwmgr/fiji_hwmgr.c | 128 +- drivers/gpu/drm/amd/powerplay/hwmgr/fiji_hwmgr.h | 6 +- .../gpu/drm/amd/powerplay/hwmgr/fiji_powertune.c | 10 +- drivers/gpu/drm/amd/powerplay/hwmgr/fiji_thermal.c | 12 +- .../gpu/drm/amd/powerplay/hwmgr/functiontables.c | 2 +- drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c | 5 + drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr_ppt.h | 2 + .../powerplay/hwmgr/polaris10_clockpowergating.c | 430 + .../powerplay/hwmgr/polaris10_clockpowergating.h | 40 + .../amd/powerplay/hwmgr/polaris10_dyn_defaults.h | 62 + .../gpu/drm/amd/powerplay/hwmgr/polaris10_hwmgr.c | 4995 +++++ .../gpu/drm/amd/powerplay/hwmgr/polaris10_hwmgr.h | 357 + .../drm/amd/powerplay/hwmgr/polaris10_powertune.c | 398 + .../drm/amd/powerplay/hwmgr/polaris10_powertune.h | 70 + .../drm/amd/powerplay/hwmgr/polaris10_thermal.c | 712 + .../drm/amd/powerplay/hwmgr/polaris10_thermal.h | 62 + drivers/gpu/drm/amd/powerplay/hwmgr/pp_acpi.c | 23 + drivers/gpu/drm/amd/powerplay/hwmgr/ppatomctrl.c | 115 +- drivers/gpu/drm/amd/powerplay/hwmgr/ppatomctrl.h | 40 +- drivers/gpu/drm/amd/powerplay/hwmgr/ppevvmath.h | 8 +- drivers/gpu/drm/amd/powerplay/hwmgr/tonga_hwmgr.c | 171 +- drivers/gpu/drm/amd/powerplay/hwmgr/tonga_hwmgr.h | 20 +- .../gpu/drm/amd/powerplay/hwmgr/tonga_pptable.h | 14 + .../amd/powerplay/hwmgr/tonga_processpptables.c | 116 +- .../gpu/drm/amd/powerplay/hwmgr/tonga_thermal.c | 12 +- drivers/gpu/drm/amd/powerplay/inc/amd_powerplay.h | 5 +- drivers/gpu/drm/amd/powerplay/inc/eventmgr.h | 2 +- drivers/gpu/drm/amd/powerplay/inc/fiji_pwrvirus.h | 2 +- .../gpu/drm/amd/powerplay/inc/hardwaremanager.h | 1 + drivers/gpu/drm/amd/powerplay/inc/hwmgr.h | 10 +- .../gpu/drm/amd/powerplay/inc/polaris10_ppsmc.h | 409 + .../gpu/drm/amd/powerplay/inc/polaris10_pwrvirus.h | 10088 ++++++++++ drivers/gpu/drm/amd/powerplay/inc/smu74.h | 774 + drivers/gpu/drm/amd/powerplay/inc/smu74_discrete.h | 828 + .../gpu/drm/amd/powerplay/inc/smu_ucode_xfer_cz.h | 22 + .../gpu/drm/amd/powerplay/inc/smu_ucode_xfer_vi.h | 1 + drivers/gpu/drm/amd/powerplay/smumgr/Makefile | 2 +- drivers/gpu/drm/amd/powerplay/smumgr/cz_smumgr.c | 2 +- drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c | 6 +- .../drm/amd/powerplay/smumgr/polaris10_smumgr.c | 984 + .../drm/amd/powerplay/smumgr/polaris10_smumgr.h | 68 + drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c | 5 + .../gpu/drm/amd/powerplay/smumgr/tonga_smumgr.c | 2 +- drivers/gpu/drm/amd/scheduler/gpu_scheduler.c | 121 +- drivers/gpu/drm/amd/scheduler/gpu_scheduler.h | 42 +- drivers/gpu/drm/amd/scheduler/sched_fence.c | 10 + drivers/gpu/drm/arc/Kconfig | 10 + drivers/gpu/drm/arc/Makefile | 2 + drivers/gpu/drm/arc/arcpgu.h | 50 + drivers/gpu/drm/arc/arcpgu_crtc.c | 257 + drivers/gpu/drm/arc/arcpgu_drv.c | 288 + drivers/gpu/drm/arc/arcpgu_hdmi.c | 201 + drivers/gpu/drm/arc/arcpgu_regs.h | 40 + drivers/gpu/drm/arm/hdlcd_drv.c | 3 +- drivers/gpu/drm/armada/armada_crtc.c | 3 +- drivers/gpu/drm/armada/armada_drv.c | 1 - drivers/gpu/drm/armada/armada_fb.c | 2 +- drivers/gpu/drm/armada/armada_gem.c | 6 +- drivers/gpu/drm/armada/armada_gem.h | 4 +- drivers/gpu/drm/ast/ast_drv.c | 2 - drivers/gpu/drm/ast/ast_drv.h | 2 +- drivers/gpu/drm/ast/ast_main.c | 4 +- drivers/gpu/drm/ast/ast_mode.c | 2 +- drivers/gpu/drm/ast/ast_ttm.c | 2 + drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c | 158 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c | 155 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.h | 15 + drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c | 249 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c | 95 +- drivers/gpu/drm/bochs/bochs_fbdev.c | 17 +- drivers/gpu/drm/bochs/bochs_kms.c | 11 +- drivers/gpu/drm/bochs/bochs_mm.c | 6 +- drivers/gpu/drm/bridge/Kconfig | 12 + drivers/gpu/drm/bridge/Makefile | 2 + drivers/gpu/drm/bridge/analogix-anx78xx.c | 1514 ++ drivers/gpu/drm/bridge/analogix-anx78xx.h | 719 + drivers/gpu/drm/bridge/analogix/Kconfig | 3 + drivers/gpu/drm/bridge/analogix/Makefile | 2 + drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 1430 ++ drivers/gpu/drm/bridge/analogix/analogix_dp_core.h | 281 + drivers/gpu/drm/bridge/analogix/analogix_dp_reg.c | 1320 ++ .../analogix/analogix_dp_reg.h} | 270 +- drivers/gpu/drm/bridge/dw-hdmi.c | 7 - drivers/gpu/drm/cirrus/cirrus_drv.c | 2 - drivers/gpu/drm/cirrus/cirrus_drv.h | 2 +- drivers/gpu/drm/cirrus/cirrus_main.c | 4 +- drivers/gpu/drm/cirrus/cirrus_ttm.c | 2 + drivers/gpu/drm/drm_agpsupport.c | 4 +- drivers/gpu/drm/drm_atomic.c | 63 +- drivers/gpu/drm/drm_atomic_helper.c | 138 +- drivers/gpu/drm/drm_bufs.c | 91 +- drivers/gpu/drm/drm_crtc.c | 609 +- drivers/gpu/drm/drm_crtc_helper.c | 68 +- drivers/gpu/drm/drm_crtc_internal.h | 4 +- drivers/gpu/drm/drm_dp_aux_dev.c | 12 + drivers/gpu/drm/drm_dp_helper.c | 66 +- drivers/gpu/drm/drm_dp_mst_topology.c | 29 +- drivers/gpu/drm/drm_drv.c | 31 +- drivers/gpu/drm/drm_edid.c | 51 +- drivers/gpu/drm/drm_fb_cma_helper.c | 207 +- drivers/gpu/drm/drm_fb_helper.c | 152 +- drivers/gpu/drm/drm_fops.c | 51 +- drivers/gpu/drm/drm_gem.c | 104 +- drivers/gpu/drm/drm_gem_cma_helper.c | 2 +- drivers/gpu/drm/drm_info.c | 4 +- drivers/gpu/drm/drm_internal.h | 4 +- drivers/gpu/drm/drm_ioctl.c | 54 +- drivers/gpu/drm/drm_irq.c | 11 +- drivers/gpu/drm/drm_legacy.h | 2 + drivers/gpu/drm/drm_modes.c | 2 +- drivers/gpu/drm/drm_panel.c | 61 + drivers/gpu/drm/drm_pci.c | 2 +- drivers/gpu/drm/drm_prime.c | 2 +- drivers/gpu/drm/drm_probe_helper.c | 2 - drivers/gpu/drm/drm_sysfs.c | 167 +- drivers/gpu/drm/drm_vm.c | 16 +- drivers/gpu/drm/etnaviv/etnaviv_drv.c | 10 +- drivers/gpu/drm/etnaviv/etnaviv_gem.c | 17 +- drivers/gpu/drm/etnaviv/etnaviv_gem.h | 1 + drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c | 7 + drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 4 +- drivers/gpu/drm/exynos/Kconfig | 3 +- drivers/gpu/drm/exynos/Makefile | 2 +- drivers/gpu/drm/exynos/exynos5433_drm_decon.c | 92 +- drivers/gpu/drm/exynos/exynos7_drm_decon.c | 1 - drivers/gpu/drm/exynos/exynos_dp.c | 311 + drivers/gpu/drm/exynos/exynos_dp_core.c | 1499 -- drivers/gpu/drm/exynos/exynos_dp_core.h | 282 - drivers/gpu/drm/exynos/exynos_dp_reg.c | 1263 -- drivers/gpu/drm/exynos/exynos_drm_crtc.c | 25 +- drivers/gpu/drm/exynos/exynos_drm_dpi.c | 69 +- drivers/gpu/drm/exynos/exynos_drm_drv.c | 14 +- drivers/gpu/drm/exynos/exynos_drm_drv.h | 30 +- drivers/gpu/drm/exynos/exynos_drm_dsi.c | 84 +- drivers/gpu/drm/exynos/exynos_drm_fb.c | 14 +- drivers/gpu/drm/exynos/exynos_drm_fbdev.c | 22 +- drivers/gpu/drm/exynos/exynos_drm_fimd.c | 109 +- drivers/gpu/drm/exynos/exynos_drm_g2d.c | 10 +- drivers/gpu/drm/exynos/exynos_drm_gem.c | 99 +- drivers/gpu/drm/exynos/exynos_drm_gem.h | 12 +- drivers/gpu/drm/exynos/exynos_drm_plane.c | 2 +- drivers/gpu/drm/exynos/exynos_drm_rotator.c | 11 +- drivers/gpu/drm/exynos/exynos_hdmi.c | 801 +- drivers/gpu/drm/exynos/exynos_mixer.c | 69 +- drivers/gpu/drm/exynos/regs-hdmi.h | 9 +- drivers/gpu/drm/fsl-dcu/Kconfig | 2 +- drivers/gpu/drm/fsl-dcu/Makefile | 3 +- drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c | 12 +- drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c | 126 +- drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.h | 6 +- drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c | 38 +- drivers/gpu/drm/fsl-dcu/fsl_tcon.c | 111 + drivers/gpu/drm/fsl-dcu/fsl_tcon.h | 33 + drivers/gpu/drm/gma500/framebuffer.c | 15 +- drivers/gpu/drm/gma500/gem.c | 2 +- drivers/gpu/drm/gma500/gma_display.c | 2 +- drivers/gpu/drm/gma500/mdfld_dsi_dpi.c | 6 +- drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c | 2 +- drivers/gpu/drm/gma500/psb_drv.c | 1 - drivers/gpu/drm/hisilicon/Kconfig | 5 + drivers/gpu/drm/hisilicon/Makefile | 5 + drivers/gpu/drm/hisilicon/kirin/Kconfig | 18 + drivers/gpu/drm/hisilicon/kirin/Makefile | 6 + drivers/gpu/drm/hisilicon/kirin/dw_drm_dsi.c | 858 + drivers/gpu/drm/hisilicon/kirin/dw_dsi_reg.h | 103 + drivers/gpu/drm/hisilicon/kirin/kirin_ade_reg.h | 230 + drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c | 1057 ++ drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c | 343 + drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.h | 31 + drivers/gpu/drm/i915/Kconfig | 6 + drivers/gpu/drm/i915/Kconfig.debug | 41 + drivers/gpu/drm/i915/Makefile | 4 + drivers/gpu/drm/i915/i915_cmd_parser.c | 211 +- drivers/gpu/drm/i915/i915_debugfs.c | 454 +- drivers/gpu/drm/i915/i915_dma.c | 518 +- drivers/gpu/drm/i915/i915_drv.c | 199 +- drivers/gpu/drm/i915/i915_drv.h | 502 +- drivers/gpu/drm/i915/i915_gem.c | 751 +- drivers/gpu/drm/i915/i915_gem.h | 34 + drivers/gpu/drm/i915/i915_gem_context.c | 340 +- drivers/gpu/drm/i915/i915_gem_debug.c | 16 +- drivers/gpu/drm/i915/i915_gem_dmabuf.c | 53 +- drivers/gpu/drm/i915/i915_gem_execbuffer.c | 159 +- drivers/gpu/drm/i915/i915_gem_gtt.c | 568 +- drivers/gpu/drm/i915/i915_gem_gtt.h | 28 +- drivers/gpu/drm/i915/i915_gem_render_state.c | 12 +- drivers/gpu/drm/i915/i915_gem_render_state.h | 2 +- drivers/gpu/drm/i915/i915_gem_shrinker.c | 125 +- drivers/gpu/drm/i915/i915_gem_stolen.c | 112 +- drivers/gpu/drm/i915/i915_gem_tiling.c | 4 +- drivers/gpu/drm/i915/i915_gem_userptr.c | 84 +- drivers/gpu/drm/i915/i915_gpu_error.c | 210 +- drivers/gpu/drm/i915/i915_guc_reg.h | 11 +- drivers/gpu/drm/i915/i915_guc_submission.c | 165 +- drivers/gpu/drm/i915/i915_irq.c | 851 +- drivers/gpu/drm/i915/i915_params.c | 9 + drivers/gpu/drm/i915/i915_params.h | 2 + drivers/gpu/drm/i915/i915_reg.h | 267 +- drivers/gpu/drm/i915/i915_sysfs.c | 10 + drivers/gpu/drm/i915/i915_trace.h | 52 +- drivers/gpu/drm/i915/i915_vgpu.c | 36 +- drivers/gpu/drm/i915/intel_atomic.c | 5 +- drivers/gpu/drm/i915/intel_atomic_plane.c | 4 +- drivers/gpu/drm/i915/intel_audio.c | 18 +- drivers/gpu/drm/i915/intel_bios.c | 315 +- drivers/gpu/drm/i915/intel_bios.h | 861 +- drivers/gpu/drm/i915/intel_color.c | 553 + drivers/gpu/drm/i915/intel_crt.c | 40 +- drivers/gpu/drm/i915/intel_csr.c | 148 +- drivers/gpu/drm/i915/intel_ddi.c | 1381 +- drivers/gpu/drm/i915/intel_display.c | 3428 ++-- drivers/gpu/drm/i915/intel_dp.c | 569 +- drivers/gpu/drm/i915/intel_dp_mst.c | 47 +- drivers/gpu/drm/i915/intel_dpll_mgr.c | 1783 ++ drivers/gpu/drm/i915/intel_dpll_mgr.h | 164 + drivers/gpu/drm/i915/intel_drv.h | 200 +- drivers/gpu/drm/i915/intel_dsi.c | 327 +- drivers/gpu/drm/i915/intel_dsi.h | 30 +- drivers/gpu/drm/i915/intel_dsi_panel_vbt.c | 177 +- drivers/gpu/drm/i915/intel_dsi_pll.c | 282 +- drivers/gpu/drm/i915/intel_fbc.c | 5 +- drivers/gpu/drm/i915/intel_fbdev.c | 26 +- drivers/gpu/drm/i915/intel_fifo_underrun.c | 10 +- drivers/gpu/drm/i915/intel_guc.h | 29 +- drivers/gpu/drm/i915/intel_guc_loader.c | 73 +- drivers/gpu/drm/i915/intel_hdmi.c | 5 +- drivers/gpu/drm/i915/intel_i2c.c | 25 +- drivers/gpu/drm/i915/intel_lrc.c | 1156 +- drivers/gpu/drm/i915/intel_lrc.h | 25 +- drivers/gpu/drm/i915/intel_lvds.c | 65 +- drivers/gpu/drm/i915/intel_mocs.c | 157 +- drivers/gpu/drm/i915/intel_mocs.h | 2 + drivers/gpu/drm/i915/intel_opregion.c | 58 +- drivers/gpu/drm/i915/intel_overlay.c | 80 +- drivers/gpu/drm/i915/intel_panel.c | 56 +- drivers/gpu/drm/i915/intel_pm.c | 556 +- drivers/gpu/drm/i915/intel_psr.c | 8 +- drivers/gpu/drm/i915/intel_ringbuffer.c | 1566 +- drivers/gpu/drm/i915/intel_ringbuffer.h | 128 +- drivers/gpu/drm/i915/intel_runtime_pm.c | 519 +- drivers/gpu/drm/i915/intel_sdvo.c | 20 +- drivers/gpu/drm/i915/intel_sprite.c | 61 +- drivers/gpu/drm/i915/intel_tv.c | 58 +- drivers/gpu/drm/i915/intel_uncore.c | 672 +- drivers/gpu/drm/i915/intel_vbt_defs.h | 832 + drivers/gpu/drm/imx/imx-drm-core.c | 9 +- drivers/gpu/drm/mediatek/Kconfig | 16 + drivers/gpu/drm/mediatek/Makefile | 14 + drivers/gpu/drm/mediatek/mtk_disp_ovl.c | 302 + drivers/gpu/drm/mediatek/mtk_disp_rdma.c | 240 + drivers/gpu/drm/mediatek/mtk_dpi.c | 769 + drivers/gpu/drm/mediatek/mtk_dpi_regs.h | 228 + drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 582 + drivers/gpu/drm/mediatek/mtk_drm_crtc.h | 32 + drivers/gpu/drm/mediatek/mtk_drm_ddp.c | 353 + drivers/gpu/drm/mediatek/mtk_drm_ddp.h | 41 + drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c | 225 + drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h | 150 + drivers/gpu/drm/mediatek/mtk_drm_drv.c | 567 + drivers/gpu/drm/mediatek/mtk_drm_drv.h | 60 + drivers/gpu/drm/mediatek/mtk_drm_fb.c | 165 + drivers/gpu/drm/mediatek/mtk_drm_fb.h | 23 + drivers/gpu/drm/mediatek/mtk_drm_gem.c | 269 + drivers/gpu/drm/mediatek/mtk_drm_gem.h | 59 + drivers/gpu/drm/mediatek/mtk_drm_plane.c | 240 + drivers/gpu/drm/mediatek/mtk_drm_plane.h | 59 + drivers/gpu/drm/mediatek/mtk_dsi.c | 913 + drivers/gpu/drm/mediatek/mtk_mipi_tx.c | 463 + drivers/gpu/drm/mgag200/mgag200_cursor.c | 2 +- drivers/gpu/drm/mgag200/mgag200_drv.c | 2 - drivers/gpu/drm/mgag200/mgag200_drv.h | 2 +- drivers/gpu/drm/mgag200/mgag200_main.c | 4 +- drivers/gpu/drm/mgag200/mgag200_ttm.c | 2 + drivers/gpu/drm/msm/Kconfig | 7 + drivers/gpu/drm/msm/Makefile | 5 +- drivers/gpu/drm/msm/adreno/adreno_gpu.c | 16 +- drivers/gpu/drm/msm/adreno/adreno_gpu.h | 2 +- drivers/gpu/drm/msm/dsi/dsi.h | 2 - drivers/gpu/drm/msm/dsi/dsi_cfg.c | 34 +- drivers/gpu/drm/msm/dsi/dsi_host.c | 12 - drivers/gpu/drm/msm/dsi/dsi_manager.c | 27 +- drivers/gpu/drm/msm/dsi/phy/dsi_phy.c | 13 - drivers/gpu/drm/msm/dsi/phy/dsi_phy_20nm.c | 4 +- drivers/gpu/drm/msm/dsi/phy/dsi_phy_28nm.c | 4 +- drivers/gpu/drm/msm/dsi/phy/dsi_phy_28nm_8960.c | 2 +- drivers/gpu/drm/msm/edp/edp_connector.c | 20 +- drivers/gpu/drm/msm/edp/edp_ctrl.c | 29 +- drivers/gpu/drm/msm/hdmi/hdmi.h | 11 + drivers/gpu/drm/msm/hdmi/hdmi_connector.c | 26 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c | 4 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c | 34 - drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.h | 2 - drivers/gpu/drm/msm/mdp/mdp4/mdp4_lvds_connector.c | 16 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c | 4 +- drivers/gpu/drm/msm/mdp/mdp_format.c | 6 + drivers/gpu/drm/msm/msm_atomic.c | 56 +- drivers/gpu/drm/msm/msm_debugfs.c | 168 + drivers/gpu/drm/msm/msm_debugfs.h | 26 + drivers/gpu/drm/msm/msm_drv.c | 407 +- drivers/gpu/drm/msm/msm_drv.h | 64 +- drivers/gpu/drm/msm/msm_fb.c | 5 +- drivers/gpu/drm/msm/msm_fence.c | 163 + drivers/gpu/drm/msm/msm_fence.h | 46 + drivers/gpu/drm/msm/msm_gem.c | 138 +- drivers/gpu/drm/msm/msm_gem.h | 19 +- drivers/gpu/drm/msm/msm_gem_prime.c | 2 +- drivers/gpu/drm/msm/msm_gem_submit.c | 125 +- drivers/gpu/drm/msm/msm_gpu.c | 123 +- drivers/gpu/drm/msm/msm_gpu.h | 9 +- drivers/gpu/drm/msm/msm_rd.c | 2 +- drivers/gpu/drm/nouveau/dispnv04/arb.c | 2 +- drivers/gpu/drm/nouveau/dispnv04/crtc.c | 5 +- drivers/gpu/drm/nouveau/dispnv04/cursor.c | 2 +- drivers/gpu/drm/nouveau/dispnv04/dac.c | 2 +- drivers/gpu/drm/nouveau/dispnv04/dfp.c | 2 +- drivers/gpu/drm/nouveau/dispnv04/disp.c | 2 +- drivers/gpu/drm/nouveau/dispnv04/disp.h | 2 +- drivers/gpu/drm/nouveau/dispnv04/hw.c | 2 +- drivers/gpu/drm/nouveau/dispnv04/overlay.c | 2 +- drivers/gpu/drm/nouveau/dispnv04/tvmodesnv17.c | 2 +- drivers/gpu/drm/nouveau/dispnv04/tvnv04.c | 2 +- drivers/gpu/drm/nouveau/dispnv04/tvnv17.c | 2 +- drivers/gpu/drm/nouveau/include/nvkm/core/device.h | 3 + drivers/gpu/drm/nouveau/include/nvkm/core/engine.h | 6 +- drivers/gpu/drm/nouveau/include/nvkm/core/subdev.h | 3 +- .../gpu/drm/nouveau/include/nvkm/engine/falcon.h | 1 - .../gpu/drm/nouveau/include/nvkm/engine/xtensa.h | 1 - .../gpu/drm/nouveau/include/nvkm/subdev/devinit.h | 1 + drivers/gpu/drm/nouveau/include/nvkm/subdev/fb.h | 4 + .../gpu/drm/nouveau/include/nvkm/subdev/iccsense.h | 6 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/mc.h | 6 + drivers/gpu/drm/nouveau/include/nvkm/subdev/top.h | 17 + drivers/gpu/drm/nouveau/nouveau_abi16.c | 2 +- drivers/gpu/drm/nouveau/nouveau_acpi.c | 2 +- drivers/gpu/drm/nouveau/nouveau_backlight.c | 2 +- drivers/gpu/drm/nouveau/nouveau_bios.c | 2 +- drivers/gpu/drm/nouveau/nouveau_bo.c | 12 +- drivers/gpu/drm/nouveau/nouveau_chan.c | 2 +- drivers/gpu/drm/nouveau/nouveau_connector.c | 2 +- drivers/gpu/drm/nouveau/nouveau_debugfs.c | 2 +- drivers/gpu/drm/nouveau/nouveau_debugfs.h | 2 +- drivers/gpu/drm/nouveau/nouveau_display.c | 10 +- drivers/gpu/drm/nouveau/nouveau_display.h | 2 +- drivers/gpu/drm/nouveau/nouveau_dma.c | 2 +- drivers/gpu/drm/nouveau/nouveau_dp.c | 2 +- drivers/gpu/drm/nouveau/nouveau_drm.c | 4 +- .../drm/nouveau/{nouveau_drm.h => nouveau_drv.h} | 4 +- drivers/gpu/drm/nouveau/nouveau_fbcon.c | 7 +- drivers/gpu/drm/nouveau/nouveau_fence.c | 2 +- drivers/gpu/drm/nouveau/nouveau_gem.c | 21 +- drivers/gpu/drm/nouveau/nouveau_gem.h | 2 +- drivers/gpu/drm/nouveau/nouveau_hwmon.c | 4 +- drivers/gpu/drm/nouveau/nouveau_nvif.c | 2 +- drivers/gpu/drm/nouveau/nouveau_platform.h | 2 +- drivers/gpu/drm/nouveau/nouveau_prime.c | 2 +- drivers/gpu/drm/nouveau/nouveau_sgdma.c | 2 +- drivers/gpu/drm/nouveau/nouveau_ttm.c | 2 +- drivers/gpu/drm/nouveau/nouveau_usif.c | 2 +- drivers/gpu/drm/nouveau/nouveau_vga.c | 2 +- drivers/gpu/drm/nouveau/nv04_fbcon.c | 2 +- drivers/gpu/drm/nouveau/nv04_fence.c | 2 +- drivers/gpu/drm/nouveau/nv10_fence.c | 2 +- drivers/gpu/drm/nouveau/nv17_fence.c | 2 +- drivers/gpu/drm/nouveau/nv50_display.c | 5 +- drivers/gpu/drm/nouveau/nv50_fbcon.c | 2 +- drivers/gpu/drm/nouveau/nv50_fence.c | 2 +- drivers/gpu/drm/nouveau/nv84_fence.c | 2 +- drivers/gpu/drm/nouveau/nvc0_fbcon.c | 2 +- drivers/gpu/drm/nouveau/nvc0_fence.c | 2 +- drivers/gpu/drm/nouveau/nvkm/core/engine.c | 14 +- drivers/gpu/drm/nouveau/nvkm/core/subdev.c | 12 +- drivers/gpu/drm/nouveau/nvkm/engine/bsp/g84.c | 1 - drivers/gpu/drm/nouveau/nvkm/engine/ce/gf100.c | 2 - drivers/gpu/drm/nouveau/nvkm/engine/ce/gk104.c | 14 +- drivers/gpu/drm/nouveau/nvkm/engine/ce/gm107.c | 14 +- drivers/gpu/drm/nouveau/nvkm/engine/ce/gm200.c | 14 +- drivers/gpu/drm/nouveau/nvkm/engine/ce/gt215.c | 1 - drivers/gpu/drm/nouveau/nvkm/engine/cipher/g84.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 128 +- drivers/gpu/drm/nouveau/nvkm/engine/device/priv.h | 1 + drivers/gpu/drm/nouveau/nvkm/engine/disp/base.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/dma/base.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/falcon.c | 2 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/base.c | 14 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c | 395 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.h | 29 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk110.c | 13 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk208.c | 13 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk20a.c | 13 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm107.c | 36 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm200.c | 13 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm20b.c | 13 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/priv.h | 3 + drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c | 5 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf100.c | 11 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf100.h | 3 - drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf117.c | 5 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgk104.c | 21 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgk20a.c | 9 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgm107.c | 11 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgm200.c | 21 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgm20b.c | 8 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/fuc/gpc.fuc | 7 +- .../drm/nouveau/nvkm/engine/gr/fuc/gpcgf100.fuc3.h | 9 +- .../drm/nouveau/nvkm/engine/gr/fuc/gpcgf117.fuc3.h | 11 +- .../drm/nouveau/nvkm/engine/gr/fuc/gpcgk104.fuc3.h | 11 +- .../drm/nouveau/nvkm/engine/gr/fuc/gpcgk110.fuc3.h | 11 +- .../drm/nouveau/nvkm/engine/gr/fuc/gpcgk208.fuc5.h | 11 +- .../drm/nouveau/nvkm/engine/gr/fuc/gpcgm107.fuc5.h | 11 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/fuc/hub.fuc | 7 +- .../drm/nouveau/nvkm/engine/gr/fuc/hubgf100.fuc3.h | 13 +- .../drm/nouveau/nvkm/engine/gr/fuc/hubgf117.fuc3.h | 13 +- .../drm/nouveau/nvkm/engine/gr/fuc/hubgk104.fuc3.h | 13 +- .../drm/nouveau/nvkm/engine/gr/fuc/hubgk110.fuc3.h | 13 +- .../drm/nouveau/nvkm/engine/gr/fuc/hubgk208.fuc5.h | 13 +- .../drm/nouveau/nvkm/engine/gr/fuc/hubgm107.fuc5.h | 13 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c | 67 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.h | 15 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gf104.c | 1 + drivers/gpu/drm/nouveau/nvkm/engine/gr/gf108.c | 1 + drivers/gpu/drm/nouveau/nvkm/engine/gr/gf110.c | 1 + drivers/gpu/drm/nouveau/nvkm/engine/gr/gf117.c | 1 + drivers/gpu/drm/nouveau/nvkm/engine/gr/gf119.c | 1 + drivers/gpu/drm/nouveau/nvkm/engine/gr/gk104.c | 43 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c | 3 + drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110b.c | 3 + drivers/gpu/drm/nouveau/nvkm/engine/gr/gk208.c | 3 + drivers/gpu/drm/nouveau/nvkm/engine/gr/gk20a.c | 9 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gm107.c | 21 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gm200.c | 60 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gm20b.c | 4 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/nv04.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/nv10.c | 2 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/nv20.c | 2 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/nv40.c | 2 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/nv50.c | 2 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/priv.h | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/mpeg/g84.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/mpeg/nv31.c | 2 +- drivers/gpu/drm/nouveau/nvkm/engine/mpeg/nv44.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/mpeg/nv50.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/mspdec/g98.c | 1 - drivers/gpu/drm/nouveau/nvkm/engine/mspdec/gf100.c | 1 - drivers/gpu/drm/nouveau/nvkm/engine/mspdec/gk104.c | 1 - drivers/gpu/drm/nouveau/nvkm/engine/mspdec/gt215.c | 1 - drivers/gpu/drm/nouveau/nvkm/engine/msppp/g98.c | 1 - drivers/gpu/drm/nouveau/nvkm/engine/msppp/gf100.c | 1 - drivers/gpu/drm/nouveau/nvkm/engine/msppp/gt215.c | 1 - drivers/gpu/drm/nouveau/nvkm/engine/msvld/g98.c | 1 - drivers/gpu/drm/nouveau/nvkm/engine/msvld/gf100.c | 1 - drivers/gpu/drm/nouveau/nvkm/engine/msvld/gk104.c | 1 - drivers/gpu/drm/nouveau/nvkm/engine/msvld/gt215.c | 1 - drivers/gpu/drm/nouveau/nvkm/engine/msvld/mcp89.c | 1 - drivers/gpu/drm/nouveau/nvkm/engine/pm/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/engine/sec/g98.c | 1 - drivers/gpu/drm/nouveau/nvkm/engine/sw/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/engine/vp/g84.c | 1 - drivers/gpu/drm/nouveau/nvkm/engine/xtensa.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/Kbuild | 1 + drivers/gpu/drm/nouveau/nvkm/subdev/bar/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/pll.c | 14 +- drivers/gpu/drm/nouveau/nvkm/subdev/bus/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/clk/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/devinit/base.c | 10 +- .../gpu/drm/nouveau/nvkm/subdev/devinit/gf100.c | 8 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/Kbuild | 1 + drivers/gpu/drm/nouveau/nvkm/subdev/fb/base.c | 14 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf100.c | 26 + drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk104.c | 1 + drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk20a.c | 5 + drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm107.c | 1 + drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm200.c | 60 + drivers/gpu/drm/nouveau/nvkm/subdev/fb/priv.h | 2 + drivers/gpu/drm/nouveau/nvkm/subdev/fuse/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/gpio/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gf100.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gf117.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gk104.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gk20a.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gm200.c | 2 +- .../gpu/drm/nouveau/nvkm/subdev/iccsense/base.c | 251 +- .../gpu/drm/nouveau/nvkm/subdev/iccsense/priv.h | 16 +- drivers/gpu/drm/nouveau/nvkm/subdev/instmem/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/ltc/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/Kbuild | 5 + drivers/gpu/drm/nouveau/nvkm/subdev/mc/base.c | 48 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/g84.c | 68 + drivers/gpu/drm/nouveau/nvkm/subdev/mc/g98.c | 38 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/gf100.c | 49 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/gk104.c | 64 + drivers/gpu/drm/nouveau/nvkm/subdev/mc/gk20a.c | 3 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/gt215.c | 70 + drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv04.c | 21 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv11.c | 50 + drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv17.c | 59 + drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv44.c | 3 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv50.c | 21 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/priv.h | 15 +- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/mxm/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/pci/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/pmu/base.c | 10 +- drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gk20a.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/secboot/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/timer/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/top/Kbuild | 2 + drivers/gpu/drm/nouveau/nvkm/subdev/top/base.c | 148 + drivers/gpu/drm/nouveau/nvkm/subdev/top/gk104.c | 110 + drivers/gpu/drm/nouveau/nvkm/subdev/top/priv.h | 25 + drivers/gpu/drm/nouveau/nvkm/subdev/volt/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/volt/gk104.c | 2 +- drivers/gpu/drm/omapdrm/omap_drv.c | 10 +- drivers/gpu/drm/omapdrm/omap_drv.h | 4 +- drivers/gpu/drm/omapdrm/omap_fb.c | 2 +- drivers/gpu/drm/omapdrm/omap_fbdev.c | 2 +- drivers/gpu/drm/omapdrm/omap_gem.c | 2 +- drivers/gpu/drm/omapdrm/omap_plane.c | 2 +- drivers/gpu/drm/panel/panel-simple.c | 156 +- drivers/gpu/drm/qxl/qxl_cmd.c | 2 +- drivers/gpu/drm/qxl/qxl_display.c | 15 +- drivers/gpu/drm/qxl/qxl_drv.c | 2 - drivers/gpu/drm/qxl/qxl_drv.h | 7 +- drivers/gpu/drm/qxl/qxl_dumb.c | 2 +- drivers/gpu/drm/qxl/qxl_fb.c | 230 +- drivers/gpu/drm/qxl/qxl_ioctl.c | 11 +- drivers/gpu/drm/qxl/qxl_kms.c | 4 - drivers/gpu/drm/qxl/qxl_object.h | 6 +- drivers/gpu/drm/qxl/qxl_ttm.c | 2 + drivers/gpu/drm/radeon/atombios_crtc.c | 24 +- drivers/gpu/drm/radeon/cik.c | 252 +- drivers/gpu/drm/radeon/cikd.h | 1 + drivers/gpu/drm/radeon/evergreen.c | 120 +- drivers/gpu/drm/radeon/evergreen_cs.c | 66 + drivers/gpu/drm/radeon/evergreend.h | 43 + drivers/gpu/drm/radeon/ni.c | 246 +- drivers/gpu/drm/radeon/r100.c | 10 +- drivers/gpu/drm/radeon/r300.c | 2 +- drivers/gpu/drm/radeon/r600.c | 112 +- drivers/gpu/drm/radeon/radeon.h | 26 +- drivers/gpu/drm/radeon/radeon_asic.c | 16 +- drivers/gpu/drm/radeon/radeon_asic.h | 25 +- drivers/gpu/drm/radeon/radeon_cs.c | 3 +- drivers/gpu/drm/radeon/radeon_cursor.c | 2 +- drivers/gpu/drm/radeon/radeon_device.c | 10 +- drivers/gpu/drm/radeon/radeon_display.c | 10 +- drivers/gpu/drm/radeon/radeon_drv.c | 25 +- drivers/gpu/drm/radeon/radeon_gem.c | 16 +- drivers/gpu/drm/radeon/radeon_irq_kms.c | 1 - drivers/gpu/drm/radeon/radeon_object.c | 4 +- drivers/gpu/drm/radeon/radeon_object.h | 2 +- drivers/gpu/drm/radeon/radeon_ttm.c | 2 + drivers/gpu/drm/radeon/radeon_uvd.c | 88 +- drivers/gpu/drm/radeon/rs600.c | 12 +- drivers/gpu/drm/radeon/rv770.c | 106 +- drivers/gpu/drm/radeon/si.c | 250 +- drivers/gpu/drm/radeon/uvd_v1_0.c | 5 +- drivers/gpu/drm/radeon/uvd_v2_2.c | 5 +- drivers/gpu/drm/radeon/uvd_v4_2.c | 16 +- drivers/gpu/drm/rcar-du/Kconfig | 4 +- drivers/gpu/drm/rcar-du/rcar_du_crtc.c | 2 +- drivers/gpu/drm/rcar-du/rcar_du_drv.c | 15 +- drivers/gpu/drm/rcar-du/rcar_du_kms.c | 5 +- drivers/gpu/drm/rcar-du/rcar_du_plane.c | 2 +- drivers/gpu/drm/rcar-du/rcar_du_vsp.c | 2 +- drivers/gpu/drm/rockchip/Kconfig | 9 + drivers/gpu/drm/rockchip/Makefile | 1 + drivers/gpu/drm/rockchip/analogix_dp-rockchip.c | 390 + drivers/gpu/drm/rockchip/dw-mipi-dsi.c | 38 +- drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | 17 +- drivers/gpu/drm/rockchip/inno_hdmi.c | 20 +- drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 73 +- drivers/gpu/drm/rockchip/rockchip_drm_drv.h | 10 +- drivers/gpu/drm/rockchip/rockchip_drm_fb.c | 9 +- drivers/gpu/drm/rockchip/rockchip_drm_gem.c | 2 +- drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 97 +- drivers/gpu/drm/shmobile/shmob_drm_crtc.c | 2 +- drivers/gpu/drm/sti/sti_cursor.c | 2 + drivers/gpu/drm/sti/sti_drv.c | 6 +- drivers/gpu/drm/sti/sti_gdp.c | 1 + drivers/gpu/drm/sti/sti_hda.c | 1 + drivers/gpu/drm/sti/sti_hqvdp.c | 1 + drivers/gpu/drm/sti/sti_mixer.c | 1 + drivers/gpu/drm/sti/sti_tvout.c | 1 + drivers/gpu/drm/sti/sti_vid.c | 1 + drivers/gpu/drm/sun4i/Kconfig | 14 + drivers/gpu/drm/sun4i/Makefile | 13 + drivers/gpu/drm/sun4i/sun4i_backend.c | 364 + drivers/gpu/drm/sun4i/sun4i_backend.h | 165 + drivers/gpu/drm/sun4i/sun4i_crtc.c | 120 + drivers/gpu/drm/sun4i/sun4i_crtc.h | 30 + drivers/gpu/drm/sun4i/sun4i_dotclock.c | 160 + drivers/gpu/drm/sun4i/sun4i_dotclock.h | 21 + drivers/gpu/drm/sun4i/sun4i_drv.c | 358 + drivers/gpu/drm/sun4i/sun4i_drv.h | 30 + drivers/gpu/drm/sun4i/sun4i_framebuffer.c | 54 + drivers/gpu/drm/sun4i/sun4i_framebuffer.h | 19 + drivers/gpu/drm/sun4i/sun4i_layer.c | 161 + drivers/gpu/drm/sun4i/sun4i_layer.h | 30 + drivers/gpu/drm/sun4i/sun4i_rgb.c | 250 + drivers/gpu/drm/sun4i/sun4i_rgb.h | 18 + drivers/gpu/drm/sun4i/sun4i_tcon.c | 561 + drivers/gpu/drm/sun4i/sun4i_tcon.h | 186 + drivers/gpu/drm/sun4i/sun4i_tv.c | 708 + drivers/gpu/drm/tegra/dc.c | 9 +- drivers/gpu/drm/tegra/drm.c | 31 +- drivers/gpu/drm/tegra/dsi.c | 15 +- drivers/gpu/drm/tegra/fb.c | 2 +- drivers/gpu/drm/tegra/gem.c | 2 +- drivers/gpu/drm/tilcdc/tilcdc_crtc.c | 2 +- drivers/gpu/drm/ttm/Makefile | 3 +- drivers/gpu/drm/ttm/ttm_agp_backend.c | 3 - drivers/gpu/drm/ttm/ttm_bo.c | 86 +- drivers/gpu/drm/ttm/ttm_bo_util.c | 2 +- drivers/gpu/drm/ttm/ttm_bo_vm.c | 8 +- drivers/gpu/drm/ttm/ttm_execbuf_util.c | 3 +- drivers/gpu/drm/ttm/ttm_page_alloc.c | 8 +- drivers/gpu/drm/ttm/ttm_page_alloc_dma.c | 8 +- drivers/gpu/drm/udl/udl_drv.c | 2 +- drivers/gpu/drm/udl/udl_drv.h | 2 - drivers/gpu/drm/udl/udl_fb.c | 142 +- drivers/gpu/drm/udl/udl_gem.c | 2 +- drivers/gpu/drm/vc4/Kconfig | 1 + drivers/gpu/drm/vc4/Makefile | 1 + drivers/gpu/drm/vc4/vc4_bo.c | 2 +- drivers/gpu/drm/vc4/vc4_crtc.c | 60 +- drivers/gpu/drm/vc4/vc4_debugfs.c | 1 + drivers/gpu/drm/vc4/vc4_dpi.c | 520 + drivers/gpu/drm/vc4/vc4_drv.c | 2 + drivers/gpu/drm/vc4/vc4_drv.h | 5 + drivers/gpu/drm/vc4/vc4_gem.c | 2 +- drivers/gpu/drm/vc4/vc4_hdmi.c | 2 +- drivers/gpu/drm/vc4/vc4_kms.c | 8 +- drivers/gpu/drm/vc4/vc4_plane.c | 2 +- drivers/gpu/drm/vc4/vc4_regs.h | 6 + drivers/gpu/drm/vgem/vgem_drv.c | 39 +- drivers/gpu/drm/virtio/virtgpu_display.c | 13 +- drivers/gpu/drm/virtio/virtgpu_drv.c | 2 - drivers/gpu/drm/virtio/virtgpu_drv.h | 2 +- drivers/gpu/drm/virtio/virtgpu_gem.c | 2 +- drivers/gpu/drm/virtio/virtgpu_ioctl.c | 11 +- drivers/gpu/drm/virtio/virtgpu_object.c | 4 +- drivers/gpu/drm/virtio/virtgpu_ttm.c | 2 + drivers/gpu/drm/vmwgfx/Makefile | 2 +- drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c | 4 +- drivers/gpu/drm/vmwgfx/vmwgfx_cotable.c | 4 +- drivers/gpu/drm/vmwgfx/vmwgfx_dmabuf.c | 8 +- drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 24 +- drivers/gpu/drm/vmwgfx/vmwgfx_drv.h | 7 + drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 33 +- drivers/gpu/drm/vmwgfx/vmwgfx_mob.c | 12 +- drivers/gpu/drm/vmwgfx/vmwgfx_msg.c | 416 + drivers/gpu/drm/vmwgfx/vmwgfx_msg.h | 191 + drivers/gpu/drm/vmwgfx/vmwgfx_resource.c | 11 +- drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c | 3 + drivers/gpu/drm/vmwgfx/vmwgfx_shader.c | 2 +- drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c | 3 + drivers/memory/mtk-smi.c | 2 + drivers/video/fbdev/core/fb_defio.c | 3 +- include/drm/bridge/analogix_dp.h | 41 + include/drm/drmP.h | 26 +- include/drm/drm_agpsupport.h | 4 +- include/drm/drm_atomic.h | 2 +- include/drm/drm_atomic_helper.h | 15 +- include/drm/drm_crtc.h | 116 +- include/drm/drm_dp_helper.h | 1 + include/drm/drm_edid.h | 8 + include/drm/drm_fb_cma_helper.h | 19 + include/drm/drm_fb_helper.h | 15 + include/drm/drm_gem.h | 52 +- include/drm/drm_legacy.h | 4 +- include/drm/drm_mem_util.h | 19 + include/drm/drm_modeset_helper_vtables.h | 2 +- include/drm/drm_panel.h | 59 + include/drm/drm_vma_manager.h | 15 +- include/drm/ttm/ttm_bo_api.h | 2 +- include/drm/ttm/ttm_bo_driver.h | 34 +- include/dt-bindings/clock/mt8173-clk.h | 3 +- include/linux/console.h | 2 + include/linux/fb.h | 1 + include/linux/reservation.h | 18 + include/linux/timer.h | 2 + include/linux/vmalloc.h | 4 + include/uapi/drm/amdgpu_drm.h | 8 + include/uapi/drm/armada_drm.h | 8 + include/uapi/drm/drm.h | 34 +- include/uapi/drm/drm_fourcc.h | 8 + include/uapi/drm/drm_mode.h | 20 + include/uapi/drm/drm_sarea.h | 8 + include/uapi/drm/etnaviv_drm.h | 8 + include/uapi/drm/exynos_drm.h | 8 + include/uapi/drm/i810_drm.h | 8 + include/uapi/drm/i915_drm.h | 8 + include/uapi/drm/mga_drm.h | 8 + include/uapi/drm/msm_drm.h | 8 + include/uapi/drm/nouveau_drm.h | 10 +- include/uapi/drm/omap_drm.h | 8 + include/uapi/drm/qxl_drm.h | 9 +- include/uapi/drm/r128_drm.h | 8 + include/uapi/drm/radeon_drm.h | 8 + include/uapi/drm/savage_drm.h | 8 + include/uapi/drm/sis_drm.h | 10 + include/uapi/drm/tegra_drm.h | 8 + include/uapi/drm/vc4_drm.h | 8 + include/uapi/drm/via_drm.h | 8 + include/uapi/drm/virtgpu_drm.h | 8 + include/uapi/drm/vmwgfx_drm.h | 9 + include/video/exynos5433_decon.h | 6 +- include/video/mipi_display.h | 8 + mm/vmalloc.c | 27 + 848 files changed, 103237 insertions(+), 20950 deletions(-) create mode 100644 Documentation/devicetree/bindings/display/bridge/analogix_dp.txt create mode 100644 Documentation/devicetree/bindings/display/fsl,tcon.txt create mode 100644 Documentation/devicetree/bindings/display/hisilicon/dw-dsi.txt create mode 100644 Documentation/devicetree/bindings/display/hisilicon/hisi-ade.txt create mode 100644 Documentation/devicetree/bindings/display/mediatek/mediatek,disp.txt create mode 100644 Documentation/devicetree/bindings/display/mediatek/mediatek,dpi.txt create mode 100644 Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.txt create mode 100644 Documentation/devicetree/bindings/display/panel/innolux,at070tn92.txt create mode 100644 Documentation/devicetree/bindings/display/panel/olimex,lcd-olinuxino-43-ts.txt create mode 100644 Documentation/devicetree/bindings/display/panel/ontat,yx700wv03.txt create mode 100644 Documentation/devicetree/bindings/display/panel/tpk,f07a-0102.txt create mode 100644 Documentation/devicetree/bindings/display/panel/tpk,f10a-0102.txt create mode 100644 Documentation/devicetree/bindings/display/rockchip/analogix_dp-rockchip.txt create mode 100644 Documentation/devicetree/bindings/display/snps,arcpgu.txt create mode 100644 Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txt create mode 100644 Documentation/devicetree/bindings/video/bridge/anx7814.txt create mode 100755 drivers/gpu/drm/amd/include/asic_reg/dce/dce_11_2_d.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/dce/dce_11_2_enum.h create mode 100755 drivers/gpu/drm/amd/include/asic_reg/dce/dce_11_2_sh_mask.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/polaris10_clockpowergating.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/polaris10_clockpowergating.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/polaris10_dyn_defaults.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/polaris10_hwmgr.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/polaris10_hwmgr.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/polaris10_powertune.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/polaris10_powertune.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/polaris10_thermal.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/polaris10_thermal.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/polaris10_ppsmc.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/polaris10_pwrvirus.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu74.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu74_discrete.h create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smumgr.c create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smumgr.h create mode 100644 drivers/gpu/drm/arc/Kconfig create mode 100644 drivers/gpu/drm/arc/Makefile create mode 100644 drivers/gpu/drm/arc/arcpgu.h create mode 100644 drivers/gpu/drm/arc/arcpgu_crtc.c create mode 100644 drivers/gpu/drm/arc/arcpgu_drv.c create mode 100644 drivers/gpu/drm/arc/arcpgu_hdmi.c create mode 100644 drivers/gpu/drm/arc/arcpgu_regs.h create mode 100644 drivers/gpu/drm/bridge/analogix-anx78xx.c create mode 100644 drivers/gpu/drm/bridge/analogix-anx78xx.h create mode 100644 drivers/gpu/drm/bridge/analogix/Kconfig create mode 100644 drivers/gpu/drm/bridge/analogix/Makefile create mode 100644 drivers/gpu/drm/bridge/analogix/analogix_dp_core.c create mode 100644 drivers/gpu/drm/bridge/analogix/analogix_dp_core.h create mode 100644 drivers/gpu/drm/bridge/analogix/analogix_dp_reg.c rename drivers/gpu/drm/{exynos/exynos_dp_reg.h => bridge/analogix/analogix_dp_reg.h} (62%) create mode 100644 drivers/gpu/drm/exynos/exynos_dp.c delete mode 100644 drivers/gpu/drm/exynos/exynos_dp_core.c delete mode 100644 drivers/gpu/drm/exynos/exynos_dp_core.h delete mode 100644 drivers/gpu/drm/exynos/exynos_dp_reg.c create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_tcon.c create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_tcon.h create mode 100644 drivers/gpu/drm/hisilicon/Kconfig create mode 100644 drivers/gpu/drm/hisilicon/Makefile create mode 100644 drivers/gpu/drm/hisilicon/kirin/Kconfig create mode 100644 drivers/gpu/drm/hisilicon/kirin/Makefile create mode 100644 drivers/gpu/drm/hisilicon/kirin/dw_drm_dsi.c create mode 100644 drivers/gpu/drm/hisilicon/kirin/dw_dsi_reg.h create mode 100644 drivers/gpu/drm/hisilicon/kirin/kirin_ade_reg.h create mode 100644 drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c create mode 100644 drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c create mode 100644 drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.h create mode 100644 drivers/gpu/drm/i915/Kconfig.debug create mode 100644 drivers/gpu/drm/i915/i915_gem.h create mode 100644 drivers/gpu/drm/i915/intel_color.c create mode 100644 drivers/gpu/drm/i915/intel_dpll_mgr.c create mode 100644 drivers/gpu/drm/i915/intel_dpll_mgr.h create mode 100644 drivers/gpu/drm/i915/intel_vbt_defs.h create mode 100644 drivers/gpu/drm/mediatek/Kconfig create mode 100644 drivers/gpu/drm/mediatek/Makefile create mode 100644 drivers/gpu/drm/mediatek/mtk_disp_ovl.c create mode 100644 drivers/gpu/drm/mediatek/mtk_disp_rdma.c create mode 100644 drivers/gpu/drm/mediatek/mtk_dpi.c create mode 100644 drivers/gpu/drm/mediatek/mtk_dpi_regs.h create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_crtc.c create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_crtc.h create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_ddp.c create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_ddp.h create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_drv.c create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_drv.h create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_fb.c create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_fb.h create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_gem.c create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_gem.h create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_plane.c create mode 100644 drivers/gpu/drm/mediatek/mtk_drm_plane.h create mode 100644 drivers/gpu/drm/mediatek/mtk_dsi.c create mode 100644 drivers/gpu/drm/mediatek/mtk_mipi_tx.c create mode 100644 drivers/gpu/drm/msm/msm_debugfs.c create mode 100644 drivers/gpu/drm/msm/msm_debugfs.h create mode 100644 drivers/gpu/drm/msm/msm_fence.c create mode 100644 drivers/gpu/drm/msm/msm_fence.h create mode 100644 drivers/gpu/drm/nouveau/include/nvkm/subdev/top.h rename drivers/gpu/drm/nouveau/{nouveau_drm.h => nouveau_drv.h} (98%) create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm200.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mc/g84.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mc/gk104.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mc/gt215.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv11.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv17.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/top/Kbuild create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/top/base.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/top/gk104.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/top/priv.h create mode 100644 drivers/gpu/drm/rockchip/analogix_dp-rockchip.c create mode 100644 drivers/gpu/drm/sun4i/Kconfig create mode 100644 drivers/gpu/drm/sun4i/Makefile create mode 100644 drivers/gpu/drm/sun4i/sun4i_backend.c create mode 100644 drivers/gpu/drm/sun4i/sun4i_backend.h create mode 100644 drivers/gpu/drm/sun4i/sun4i_crtc.c create mode 100644 drivers/gpu/drm/sun4i/sun4i_crtc.h create mode 100644 drivers/gpu/drm/sun4i/sun4i_dotclock.c create mode 100644 drivers/gpu/drm/sun4i/sun4i_dotclock.h create mode 100644 drivers/gpu/drm/sun4i/sun4i_drv.c create mode 100644 drivers/gpu/drm/sun4i/sun4i_drv.h create mode 100644 drivers/gpu/drm/sun4i/sun4i_framebuffer.c create mode 100644 drivers/gpu/drm/sun4i/sun4i_framebuffer.h create mode 100644 drivers/gpu/drm/sun4i/sun4i_layer.c create mode 100644 drivers/gpu/drm/sun4i/sun4i_layer.h create mode 100644 drivers/gpu/drm/sun4i/sun4i_rgb.c create mode 100644 drivers/gpu/drm/sun4i/sun4i_rgb.h create mode 100644 drivers/gpu/drm/sun4i/sun4i_tcon.c create mode 100644 drivers/gpu/drm/sun4i/sun4i_tcon.h create mode 100644 drivers/gpu/drm/sun4i/sun4i_tv.c create mode 100644 drivers/gpu/drm/vc4/vc4_dpi.c create mode 100644 drivers/gpu/drm/vmwgfx/vmwgfx_msg.c create mode 100644 drivers/gpu/drm/vmwgfx/vmwgfx_msg.h create mode 100644 include/drm/bridge/analogix_dp.h