Hi Linus,
This is the main drm pull request for 4.5. I don't think I've missed anything too major, I'm mostly back at work now but I'll probably get some sleep in 5 years time. I think it should fix the i915 warning from the audio tree, if not let me know. summary below, Dave. New drivers: etnaviv: GPU driver for the 3D core on the Vivante core used in numerous ARM boards. Highlights: core: Atomic suspend/resume helpers Move the headers to using userspace friendlier types. Documentation updates Lots of struct_mutex removal. Bunch of DP MST fixes from AMD. panel: More DSI helpers Support for some new basic panels i915: Basic Kabylake support. DP link training and detect code refactoring fbc/psr fixes FIFO underrun fixes SDE interrupt handling fixes dma-buf/fence support in pageflip path. GPU side for MST audio support radeon/amdgpu: Drop UMS support. GPUVM/Scheduler optimisations Initial Powerplay support for Tonga/Fiji/CZ/ST ACP audio prerequisites. nouveau: GK20a instmem improvements PCIE link speed change support msm: DSI support for msm8960/apq8064 tegra: Host1X support for Tegra210 SoC vc4: 3D acceleration support armada: Get rid of struct mutex tda998x: Atomic modesetting support TMDS clock limitations. omapdrm: Atomic modesetting support improved TILER performance rockchip: RK3036 VOP support Atomic modesetting support Synopsys DW MIPI DSI support exynos: Runtime PM support of_graph binding for DP panels Cleanup of IPP code Configurable plane support Kernel panic fixes at release time. The following changes since commit 5b726e06d6e8309e5c9ef4109a32caf27c71dfc8: Merge tag 'drm-intel-fixes-2015-12-23' of git://anongit.freedesktop.org/drm-intel (2015-12-23 10:22:16 -0800) are available in the git repository at: git://people.freedesktop.org/~airlied/linux drm-next for you to fetch changes up to 1df59b8497f47495e873c23abd6d3d290c730505: Merge tag 'drm-intel-next-fixes-2016-01-14' of git://anongit.freedesktop.org/drm-intel into drm-next (2016-01-18 07:02:19 +1000) ---------------------------------------------------------------- Akshay Bhat (1): drm/panel: simple: Add support for Innolux G121X1-L03 Alex Dai (2): drm/i915/guc: Add GuC css header parser drm/i915/guc: Clean up locks in GuC Alex Deucher (39): drm/radeon: remove UMS support drm/amdgpu: call hpd_irq_event on resume drm/radeon: call hpd_irq_event on resume drm/amdgpu: add a callback for reading the bios from the rom directly drm/amdgpu: add read_bios_from_rom callback for CI parts drm/amdgpu: add read_bios_from_rom callback for VI parts drm/amd: add new gfx8 register definitions for EDC drm/amdgpu: add EDC support for CZ (v3) drm/amdgpu: add more debugging output for driver failures drm/amdgpu: limit visible vram if it's smaller than the BAR drm/amdgpu: fix dp link rate selection (v2) drm/radeon: fix dp link rate selection (v2) drm/radeon: clean up fujitsu quirks drm/amd/powerplay: add basic powerplay framework drm/amd/powerplay/tonga: enable pcie and mclk forcing for low drm/amd/powerplay/fiji: enable pcie and mclk forcing for low drm/amdgpu: extract pcie helpers to common header drm: add drm_pcie_get_max_link_width helper (v2) drm/amdgpu: store pcie gen mask and link width drm/amdgpu/cgs: add sys info query for pcie gen and link width drm/amdgpu/powerplay/tonga: query supported pcie info from cgs (v2) drm/amdgpu/powerplay/fiji: query supported pcie info from cgs (v2) drm/amd/powerplay/tonga: Add UVD DPM init drm/amd/powerplay: add atomctrl function to calculate CZ sclk dividers drm/amd/powerplay: implement smc state upload for CZ drm/amdgpu/powerplay: enable sysfs and debugfs interfaces late drm/powerplay: add debugging output to tonga_processpptables.c drm/powerplay: add debugging output to processpptables.c drm/powerplay/hwmgr: log errors in tonga_hwmgr_backend_init drm/amd/powerplay: Don't return an error if fan table is missing amd/powerplay: don't enable ucode fan control if vbios has no fan table amd/powerplay: disable powerplay by default initially amd/powerplay: fix copy paste typo in hardwaremanager.c drm/amdgpu/cgs: add an interface to access PCI resources drm/amdgpu: add irq domain support drm/amdgpu/cz: add code to enable forcing UVD clocks drm/amdgpu/cz: add code to enable forcing VCE clocks drm/amdgpu/cz: force uvd clocks when sclks are forced drm/amdgpu/cz: force vce clocks when sclks are forced Alex Goins (2): i915: wait for fence in mmio_flip_work_func i915: wait for fence in prepare_plane_fb Alexandre Belloni (1): of: Add vendor prefix for QiaoDian Xianshi Alexandre Courbot (3): drm/nouveau/core: fix return in error path of device probe drm/nouveau/instmem/gk20a: fix race conditions drm/nouveau/instmem/gk20a: use DMA API CPU mapping Alexandre Demers (1): drm/radeon: fix trivial typo in warning message Ander Conselvan de Oliveira (10): drm/i915: Don't pass *DP around to link training functions drm/i915: Split write of pattern to DP reg from intel_dp_set_link_train drm/i915 Call get_adjust_train() from clock recovery and channel eq drm/i915: Move register write into intel_dp_set_signal_levels() drm/i915: Move generic link training code to a separate file drm/i915: Create intel_dp->prepare_link_retrain() hook drm/i915: Make intel_dp_source_supports_hbr2() take an intel_dp pointer drm/i915: Fix SKL i_boost level drm/i915: Don't do edp panel detection in g4x_dp_detect() drm/i915: Remove platform specific *_dp_detect() functions Andrzej Hajda (1): drm/exynos: simplify sleep PM ops Andy Gross (1): drm/omap: Use bitmaps for TILER placement Animesh Manna (4): drm/i915/skl: Making DC6 entry is the last call in suspend flow. drm/i915/gen9: csr_init after runtime pm enable drm/i915/gen9: Use flush_work to synchronize with dmc loader drm/i915/skl: Removed assert for csr-fw-loading check during disabling dc6 Archit Taneja (25): drm/imx: Remove local fbdev emulation Kconfig option drm/tegra: Remove local fbdev emulation Kconfig option drm/msm/mdp5: high precision vblank timestamp support drm/msm: Remove non-DT code in msm_drv drm/msm: Update compatible strings for mdp dt-bindings: drm/msm: Update MDP bindings drm/msm/mdp: Remove CONFIG_OF checks from MDP drivers drm/msm/hdmi: remove CONFIG_OF checks drm/msm/adreno: Remove CONFIG_OF checks drm/msm/mdp4: Clean up modeset_init drm/msm/mdp4: Initialize LCDC encoder even if panel driver isn't available drm/msm/mdp4: Call custom round_pixclk helper only if the encoder type is TMDS drm/msm/mdp4: Initialize DSI encoders drm/msm/dsi: Don't get byte/pixel source clocks from DT drm/msm/dsi: Add support for 28nm PHY on 8960 drm/msm/dsi: Add DSI PLL for 28nm 8960 PHY drm/msm/dsi: Use a better way to figure out DSI version drm/msm/dsi: Delay dsi_clk_init drm/msm/dsi: Parse bus clocks from a list drm/msm/dsi: Set up link clocks for DSIv2 drm/msm/dsi: Add dsi_cfg for APQ8064 drm/msm/dsi: Don't use iommu for command TX buffer for DSIv2 drm/msm/dsi: Enable MMSS SPFB port via syscon dt-bindings: msm/dsi: Fix the order in which clocks are listed dt-bindings: msm/dsi: Add DSIv2 documentation Arnd Bergmann (2): drm: powerplay: use div64_s64 instead of do_div drm: nouveau: fix nouveau_debugfs_init prototype Arun Siluvery (1): Revert "drm/i915: Initialize HWS page address after GPU reset" Ben Skeggs (25): drm/nouveau/fifo/gk104: fix race condition when updating engine runlists drm/nouveau/fifo/gf100: fix race condition when updating engine runlists drm/nouveau/ce/gk104: attempt at better handling of LAUNCHERR drm/nouveau/gr/gm107-: make use of gpc_addr() macro for tpc ramchain setup drm/nouveau/nvif: move internal class identifiers to class.h drm/nouveau/nvif: split out fermi interface definitions drm/nouveau/nvif: split out nvsw interface definitons drm/nouveau/nvif: split out display interface definitions drm/nouveau/nvif: split out fifo interface definitions drm/nouveau/nvif: split out device control interface definitions drm/nouveau/nvif: split out perfmon interface definitions drm/nouveau/nvif: split out ctxdma interface definitions drm/nouveau/nvif: split out device interface definitions drm/nouveau/nvif: split out client interface definitions drm/nouveau/nvif: modify nvif_unvers/nvif_unpack macros to be more obvious drm/nouveau/gr/gf100-: subclass nvkm_object to store channel pointer drm/nouveau/ibus/gm204: split implementation from gk104 drm/nouveau/ltc/gm107: use nvkm_mask to set cbc_ctrl1 drm/nouveau/ltc/gm204: split implementation from gm107 drm/nouveau/bios: parse 8.1 Gbps DP link rate drm/nouveau/clk: remove references to "daemon" drm/nouveau/fb/nv50: remove references to "daemon" drm/nouveau/fifo/gf100: remove references to "daemon" drm/nouveau/kms: take mode_config mutex in connector hotplug path drm/nouveau/pmu: prevent falcon from acking interrupts routed to the host Chris Wilson (21): drm/i915: Map the ringbuffer using WB on LLC machines drm/i915: Report context GTT size drm/i915: Add soft-pinning API for execbuffer drm/i915: Recover all available ringbuffer space following reset drm/i915: Serialise updates to GGTT with access through GGTT on Braswell drm: Drop dev->event_lock spinlock around faulting copy_to_user() drm: Serialise multiple event readers drm/i915: Fix RPS pointer passed from wait_ioctl to i915_wait_request drm/i915: Add soft-pinning API for execbuffer drm/i915: Set the map-and-fenceable flag for preallocated objects drm/i915: Pin the ifbdev for the info->system_base GGTT mmapping drm/i915: Break busywaiting for requests on pending signals drm/i915: Limit the busy wait on requests to 5us not 10ms! drm/i915: Only spin whilst waiting on the current request drm/i915: Move Braswell stop_machine GGTT insertion workaround drm: Balance error path for GEM handle allocation drm: Only bump object-reference count when adding first handle drm: Use a normal idr allocation for the obj->name drm: Do not set outparam on error during GEM handle allocation drm: Remove opencoded drm_gem_object_release_handle() drm/i915: Restore inhibiting the load of the default context Chris Zhong (6): of: Add vendor prefix for BOE Technology Group dt-bindings: Add BOE TV080WUM-NL0 panel binding drm/panel: simple: Add support for BOE TV080WUM-NL0 drm/rockchip: return a true clock rate to adjusted_mode Documentation: dt-bindings: Add bindings for rk3288 DW MIPI DSI driver drm: rockchip: Support Synopsys DW MIPI DSI Christian König (9): drm/amdgpu: put VM page tables directly into duplicates list drm/amdgpu: split VM PD and PT handling during CS drm/amdgpu: keep the PTs validation list in the VM v2 drm/amdgpu: add warning to amdgpu_bo_gpu_offset() v2 drm/ttm: fix adding foreign BOs to the LRU during init v2 drm/ttm: fix adding foreign BOs to the swap LRU drm/ttm: add ttm_bo_move_to_lru_tail function v2 drm/amdgpu: move VM page tables to the LRU end on CS v2 drm/amdgpu: validate duplicates first Chunming Zhou (9): drm/amd: abstract kernel rq and normal rq to priority of run queue drm/amdgpu: add err check for pin userptr drm/amdgpu: add entity only when first job come drm/amdgpu: handle error case for ctx drm/amdgpu: unify AMDGPU_CTX_MAX_CS_PENDING and amdgpu_sched_jobs drm/amdgpu: change default sched jobs to 32 drm/amdgpu: restrict the sched jobs number to power of two drm/amdgpu: fix NULL in vm_grab_id while S3 back drm/amdgpu: fix lost sync_to if scheduler is enabled. Damien Lespiau (4): drm/i915/skl: Store and print the DMC firmware version we load drm/i915/skl: Print the DMC firmware status in debugfs drm/i915/skl: Expose DC5/DC6 entry counts drm/i915: Make turning on/off PW1 and Misc I/O part of the init/fini sequences Dan Carpenter (9): drm/tegra: checking for IS_ERR() instead of NULL drm/vc4: copy_to_user() returns the number of bytes remaining drm/vc4: allocate enough memory in vc4_save_hang_state() drm/vc4: fix an error code drm/amd/powerplay: fix a reversed condition drm/amdgpu/cgs: cleanup some indenting drm/amd/powerplay: precedence bug in init_non_clock_fields() drm/etnaviv: unlock on error in etnaviv_gem_get_iova() drm: move MODULE_PARM_DESC to other file Daniel Stone (2): drm/i915/pm: Unstatic power_domain_str drm/i915/pm: Print offending domain in refcount failure Daniel Vetter (82): drm/i915: Fix formatting for gen8_cs_irq_handler drm/i915: shut up gen8+ SDE irq dmesg noise drm/i915: Update DRIVER_DATE to 20151023 Revert "drm/i915: Add soft-pinning API for execbuffer" drm/i915: Shut up GuC errors when it's disabled drm/i915: Don't complain about lack of ACPI video bios drm/i915: use correct power domain for csr loading drm/i915/gen9: move assert_csr_loaded into intel_rpm.c drm/i915/gen9: Remove csr.state, csr_lock and related code. drm/i915/gen9: Align line continuations in intel_csr.c. drm/i915/gen9: Simplify csr loading failure printing. drm/i915/gen9: Don't try to load garbage dmc firmware on resume drm/i915/gen9: Use dev_priv in csr functions drm/i915/gen9: extract parse_csr_fw drm/i915: Use request_firmware and our own async work drm/i915: Drop return value from intel_fill_fb_ggtt_view drm/i915: Stuff rotation params into view union drm/i915: Fix i915_ggtt_view_equal to handle rotation correctly drm/i915: Update DRIVER_DATE to 20151120 Merge tag 'v4.4-rc2' into drm-intel-next-queued drm: Update GEM refcounting docs drm/gem: Update/Polish docs drm/sysfs: Grab lock for edid/modes_show drm/sysfs: Send out uevent when connector->force changes drm/i915: fix fdi related fifo underruns on hsw drm/gma500: Use correct unref in the gem bo create function drm/gma500: Drop dev->struct_mutex from modeset code drm/gma500: Drop dev->struct_mutex from fbdev init/teardown code drm/gma500: Drop dev->struct_mutex from mmap offset function drm/gma500: Add driver private mutex for the fault handler drm/amdgpu: Use unlocked gem unreferencing drm/radeon: Use unlocked gem unreferencing drm/atomic-helper: Reject attempts at re-stealing encoders drm/armada: use unlocked gem unreferencing drm/armada: plug leak in dumb_map_offset drm/armada: don't grab dev->struct_mutex for in mmap offset ioctl Revert "drm/i915: Remove superfluous NULL check" drm/i915: Restore skl_gt3 device info Revert "drm/i915: Extend LRC pinning to cover GPU context writeback" drm/i915: Update DRIVER_DATE to 20151204 drm/armada: drop struct_mutex from cursor paths drm/armada: use a private mutex to protect priv->linear drm: Polish fbdev helper struct docs drm: Move LEAVE/ENTER_ATOMIC_MODESET to fbdev helpers drm: Reorganize helper vtables and their docs drm: Make helper vtable pointers type-safe drm: Merge helper docbook into kerneldoc comments drm/bridge: Improve kerneldoc drm: Update drm_plane_funcs kerneldoc drm/nouveau: Ditch NULL save/restore hook assignments drm/qxl: Drop dummy save/restore hooks drm/virtio: Drop dummy save/restore functions drm/vmwgfx: Drop dummy save/restore hooks drm/gma500: Move to private save/restore hooks drm/nouveau: Use private save/restore hooks for CRTCs drm: Remove crtc/connector->save/restore hooks drm: Move encoder->save/restore into nouveau drm: Document drm_atomic_*_get_property drm: Document drm_connector_funcs drm: connector->dpms is not optional drm: document drm_crtc_funcs drm: Add kerneldoc for drm_framebuffer_funcs drm: Kerneldoc for drm_mode_config_funcs drm: Document drm_plane_helper_funcs drm: Document drm_connector_helper_funcs drm/atomic-helper: Mention the new system/resume helpers the docs drm: Move drm_display_mode an related docs into kerneldoc drm: Document drm_encoder/crtc_helper_funcs drm: Documentation style guide Merge tag 'drm-i915-get-eld' of tiwai/sound into drm-intel-next-queued drm/tegra: Use unlocked gem unreferencing drm/tegra: Don't take dev->struct_mutex in mmap offset ioctl drm/tegra: Use drm_gem_object_unreference_unlocked() drm/msm: Use unlocked gem unreferencing drm/atomic-helper: Drop unneeded argument from check_pending_encoder drm: Move more framebuffer doc from docbook to kerneldoc drm/i915: mdelay(10) considered harmful drm/i915: Update DRIVER_DATE to 20151218 drm/atomic-helper: Reject legacy flips on a disabled pipe drm/docs: more leftovers from the big vtable documentation pile drm/i915: Tune down rpm wakelock debug checks drm/i915: Init power domains early in driver load Danilo Cesar Lemes de Paula (1): drm/doc: Convert to markdown Dave Airlie (31): Merge tag 'topic/drm-misc-2015-11-26' of git://anongit.freedesktop.org/drm-intel into drm-next Merge tag 'drm-intel-next-2015-11-20-merged' of git://anongit.freedesktop.org/drm-intel into drm-next Merge tag 'topic/drm-misc-2015-12-04' of git://anongit.freedesktop.org/drm-intel into drm-next Back merge tag 'v4.4-rc4' into drm-next Merge branch 'drm-header-fixes' of https://github.com/GabrielL/linux into drm-next Merge branch 'msm-next' of git://people.freedesktop.org/~robclark/linux into drm-next Merge tag 'topic/drm-misc-2015-12-14' of git://anongit.freedesktop.org/drm-intel into drm-next Merge branch 'exynos-drm-next' of git://git.kernel.org:/.../daeinki/drm-exynos into drm-next Merge tag 'drm-vc4-next-2015-12-11' of http://github.com/anholt/linux into drm-next Merge tag 'drm-intel-next-2015-12-04-1' of git://anongit.freedesktop.org/drm-intel into drm-next Merge tag 'drm/panel/for-4.5-rc1' of git://anongit.freedesktop.org/tegra/linux into drm-next Merge tag 'drm/tegra/for-4.5-rc1' of git://anongit.freedesktop.org/tegra/linux into drm-next Merge tag 'topic/drm-misc-2015-12-18' of git://anongit.freedesktop.org/drm-intel into drm-next Merge branch 'drm-etnaviv-next' of git://git.pengutronix.de/git/lst/linux into drm-next Merge tag 'drm-vc4-next-2015-12-21' of http://github.com/anholt/linux into drm-next Merge branch 'drm-armada-devel' of git://ftp.arm.linux.org.uk/~rmk/linux-arm into drm-next Merge branch 'drm-tda998x-devel' of git://ftp.arm.linux.org.uk/~rmk/linux-arm into drm-next Merge branch 'drm-next-4.5' of git://people.freedesktop.org/~agd5f/linux into drm-next Merge tag 'drm-intel-next-2015-12-18' of git://anongit.freedesktop.org/drm-intel into drm-next Backmerge drm-fixes merge into Linus's tree into drm-next. Merge branch 'drm-rockchip-next-2015-12-28' of https://github.com/markyzq/kernel-drm-rockchip into drm-next Merge tag 'omapdrm-4.5-resolved' of git://git.kernel.org/.../tomba/linux into drm-next Merge branch 'drm-next-4.5' of git://people.freedesktop.org/~agd5f/linux into drm-next Merge branch 'linux-4.5' of git://github.com/skeggsb/linux into drm-next Merge branch 'drm-next-4.5' of git://people.freedesktop.org/~agd5f/linux into drm-next Merge branch 'drm-rockchip-next-2016-01-06' of https://github.com/markyzq/kernel-drm-rockchip into drm-next Merge branch 'drm-etnaviv-fixes' 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 drm/amdgpu: add missing irq.h include Merge tag 'topic/drm-misc-2016-01-17' of git://anongit.freedesktop.org/drm-intel into drm-next Merge tag 'drm-intel-next-fixes-2016-01-14' of git://anongit.freedesktop.org/drm-intel into drm-next Dave Gordon (4): drm/i915: eliminate 'temp' in gen8_for_each_{pdd, pdpe, pml4e} macros drm/i915: intel_ring_initialized() must be simple and inline drm/i915: mark GEM object pages dirty when mapped & written by the CPU drm/i915: mark a newly-created GEM object dirty when filled with data David Henningsson (1): drm/i915: Improve kernel-doc for i915_audio_component struct David Rokhvarg (2): drm/amd/powerplay: Add PPLib debug print macro. drm/amdgpu/powerplay: Program a calculated value as Deep Sleep clock. Deepak M (4): drm/i915: Correct the Ref clock value for BXT drm/i915: add VBT address and size fields to ASLE mailbox struct drm/i915: dual link pipe selection for bxt drm/i915: Add Intel opregion mailbox 5 structure Deepak S (3): drm/i915/kbl: Add Kabylake PCI ID drm/i915/kbl: Add Kabylake GT4 PCI ID drm/i915/kbl: Kabylake uses the same GMS values as Skylake Eric Anholt (10): drm: Create a driver hook for allocating GEM object structs. drm/vc4: Add a BO cache. drm/vc4: Add create and map BO ioctls. drm/vc4: Add an API for creating GPU shaders in GEM BOs. drm/vc4: Fix a typo in a V3D debug register. drm/vc4: Bind and initialize the V3D engine. drm/vc4: Add support for drawing 3D frames. drm/vc4: Add support for async pageflips. drm/vc4: Add an interface for capturing the GPU state after a hang. drm: Use the driver's gem_object_free function from CMA helpers. Eric Huang (19): drm/amd/powerplay: add/update headers for Fiji SMU and DPM drm/amd/powerplay: update atomctrl for fiji drm/amd/powerplay: add Fiji SMU support. drm/amd/powerplay: add Fiji DPM support. drm/amd/amdgpu: enable powerplay and smc firmware loading for Fiji. drm/amd/amdgpu: add gfx clock gating support for Fiji. drm/amd/amdgpu: add gmc clock gating support for Fiji. drm/amdgpu: add sdma clock gating support for Fiji. drm/amd/powerplay: add parts of system clock gating support for Fiji. (v2) drm/amd/powerplay: enable clock gating for Fiji. drm/amd/powerplay: add multimedia power gating support for Fiji. drm/amd/amdgpu: add uvd6.0 clock gating support. (v2) drm/amd/amdgpu: add vce3.0 clock gating support. (v2) drm/amd/amdgpu: enable uvd&vce clock gating for Fiji. drm/amd/powerplay: add display configeration changed function in hwmgr for Fiji. drm/amd/powerplay: Add thermal protection support for Fiji. drm/amd/powerplay: Fix a bug in fan control setting default mode for Tonga and Fiji. drm/amd/powerplay: add functions set/get_fan_control_mode in hwmgr for Tonga. drm/amd/powerplay: add functions set/get_fan_control_mode in hwmgr for Fiji. Eric Yang (1): amd/powerplay: Add structures required to report configuration change Felix Kuehling (2): drm/radeon: Fix off-by-one errors in radeon_vm_bo_set_addr drm/amdgpu: Fix off-by-one errors in amdgpu_vm_bo_map Flora Cui (3): drm/amdgpu/gfx8: Enable interrupt on ME1_PIPE3 drm/amdgpu/gfx8: update PA_SC_RASTER_CONFIG:PKR_MAP only drm/amdgpu: update rev id register for VI Frediano Ziglio (1): drm/qxl: use to_qxl_bo macro Gabriel Laskar (19): drm: use __u{32,64} instead of uint{32,64}_t in virtgpu_drm.h drm: Kbuild: add admgpu_drm.h to the installed headers drm: include drm.h in armada_drm.h drm: drm_fourcc.h fix includes drm: drm_mode.h fix includes drm: fix inclusion of drm.h in drm_sarea.h drm: fix inclusion of drm.h in exynos_sarea.h drm: fix inclusion of drm.h in i810_drm.h drm: fix inclusion of drm.h in exynos_sarea.h drm: fix inclusion of drm.h in mga_drm.h drm: fix inclusion of drm.h in msm_drm.h drm: fix inclusion of drm.h in omap_drm.h drm: fix inclusion of drm.h in qxl_drm.h drm: fix inclusion of drm.h in r128_drm.h drm: fix inclusion of drm.h in savage_drm.h drm: fix inclusion of drm.h in tegra_drm.h drm: fix inclusion of drm.h in virtgpu_drm.h drm: fix inclusion of drm.h in vmwgfx_drm.h drm: fix inclusion of drm.h in via_drm.h Geliang Tang (7): drm/mm: rewrite drm_mm_for_each_hole drm/mm: use list_next_entry drm/msm/mdp: fix a problematic usage of WARN_ON() drm/gma500: use to_pci_dev() drm/sysfs: use kobj_to_dev() drm/amdgpu: use kobj_to_dev() drm/radeon: use kobj_to_dev() Gerd Hoffmann (1): drm/i915: more virtual south bridge detection Gustavo Padovan (7): drm/exynos: do not start enabling DP at bind() phase drm/exynos: add pm_runtime to DP drm/exynos: add pm_runtime to HDMI drm/exynos: add pm_runtime to Mixer drm/exynos: add pm_runtime to FIMD drm/exynos: add pm_runtime to DECON 5433 drm/exynos: add pm_runtime to DECON 7 Harry Wentland (1): drm/dp/mst: save vcpi with payloads Hauke Mehrtens (1): drm/nouveau/disp: activate dual link TMDS links only when possible Ilia Mirkin (4): drm/nouveau/kms: allow 225/297MHz pixel clocks for HDMI on Fermi/Kepler drm/nouveau/kms: no need to check for empty edid before drm_detect_hdmi_monitor drm/nouveau/nvkm: add/remove 0's to make 7 (or 9)-nibble constants use 8 nibbles drm/nouveau/gr/gf100: provide a bit more info for various errors Imre Deak (31): drm/i915/gen9: flush DMC fw loading work during system suspend drm/i915: get runtime PM reference around GEM set_tiling IOCTL drm/i915: fix the power well ID for always on wells drm/i915: fix lookup_power_well for power wells without any domain drm/i915: rename intel_power_domains_resume to *_sync_hw drm/i915/skl: init/uninit display core as part of the HW power domain state drm/i915/skl: don't toggle PW1 and MISC power wells on-demand drm/i915/gen9: simplify DC toggling code drm/i915/skl: disable DC states before display core init/uninit drm/i915/skl: make sure LCPLL is disabled when uniniting CDCLK drm/i915/skl: remove redundant DDI/IRQ reinitialization during PW1 enabling drm/i915: fix handling of the disable_power_well module option drm/i915/ddi: fix intel_display_port_aux_power_domain() after HDMI detect drm/i915: add MISSING_CASE to a few port/aux power domain helpers drm/i915: take a power domain ref only when needed during HDMI detect drm/i915: take a power domain reference while checking the HDMI live status drm/i915/skl: enable PC9/10 power states during suspend-to-idle drm/i915/skl: re-enable power well support drm/i915/bxt: backlight clock gating workaround drm/i915: vlv: clamp minimum RPS frequency to what Punit allows drm/i915: clarify comment about mandatory RPM put/get during driver load/unload drm/i915: refactor RPM disabling due to RC6 being disabled drm/i915: get a permanent RPM reference on platforms w/o RPM support drm/i915: remove HAS_RUNTIME_PM check from RPM get/put/assert helpers drm/i915: add assert_rpm_wakelock_held helper drm/i915: use assert_rpm_wakelock_held instead of opencoding it drm/i915: add support for checking if we hold an RPM reference drm/i915: check that we hold an RPM wakelock ref before we put it drm/i915: add support for checking RPM atomic sections drm/i915: check that we are in an RPM atomic section in GGTT PTE updaters drm/i915: don't enable autosuspend on platforms without RPM support Inki Dae (7): drm/exynos: dsi: add runtime pm support drm/exynos: dsi: modify a error type when getting a node failed drm/exynos: decon: remove unused variables drm/exynos: dp: add of_graph dt binding support for panel dt-bindings: exynos-dp: update ports node binding for panel drm/exynos: crtc: do not wait for the scanout completion drm/exynos: fix kernel panic issue at drm releasing Ioan-Adrian Ratiu (1): drm/i915/dma: enforce pr_<loglevel> consistency Jammy Zhou (10): drm/amdgpu: use $(src) in Makefile (v2) drm/amd/powerplay: add SMU manager sub-component drm/amd/powerplay: add hardware manager sub-component drm/amd/powerplay: add Carrizo smu support drm/amd/powerplay: add Carrizo dpm support drm/amd/powerplay: Add Tonga SMU support drm/amdgpu: add amdgpu.powerplay module option drm/amdgpu: support per device powerplay enablement (v2) drm/amdgpu: rename tonga_smumgr.h to tonga_smum.h drm/amdgpu: rename fiji_smumgr.h to fiji_smum.h Jani Nikula (39): drm/i915: remove parens around revision ids drm/i915/bxt: add revision id for A1 stepping and use it drm/i915: add helpers for platform specific revision id range checks drm/i915: remove an extra level of indirection in PCI ID list drm/i915: fix indentation on skl stepping info drm/i915: constify bxt stepping info drm/i915: refactor stepping info retrieval drm/dp: add eDP DPCD backlight control bit definitions drm/i915: remove duplicate definition of for_each_power_domain drm: fix potential dangling else problems in for_each_ macros drm/i915: fix potential dangling else problems in for_each_ macros drm/i915: fix the SDE irq dmesg warnings properly Revert "drm/i915: shut up gen8+ SDE irq dmesg noise" drm/i915/dsi: merge pre_pll_enable hook to pre_enable drm/i915: remove pre_pll_enable hook from DDI/gen9+ crtc enable drm/i915: add has_dsi_encoder to crtc state drm/i915/bxt: add support for setting backlight freq from vbt drm/i915: use default 200 Hz backlight frequency drm/i915: simplify gmbus xfer error checks drm/i915: abstract i2c bit banging fallback in gmbus xfer drm: keep connector status change logging human readable drm/i915: move "no VBT in opregion" quirk to intel_opregion_setup() drm/i915/bios: have functions return vbt, not bdb, header pointer drm/i915/bios: move debug logging about VBT source to intel_parse_bios() drm/i915/bios: rename intel_parse_bios to intel_bios_init drm/i915: refactor VBT validation drm/i915/opregion: make VBT size limit more strict drm/i915/opregion: make VBT pointer a const drm/i915: don't use a temp buffer for opregion debugfs file drm/i915/debugfs: add a separate debugfs file for VBT drm/i915: prefer for_each_intel_* macros for iteration drm/i915: move drmP.h include to i915_drv.h drm/i915/bios: fix format string of the VBT signature logging drm/i915/bios: prefer using dev_priv over dev pointer drm/i915/bios: reduce indent in parse_general_features drm/i915/opregion: handle VBT sizes bigger than 6 KB drm/i915/backlight: prefer dev_priv over dev pointer drm/edid: index CEA/HDMI mode tables using the VIC drm/i915: shut up gen8+ SDE irq dmesg noise, again Javier Martinez Canillas (1): ARM: dts: Use OF graph for DP to panel connection in exynos5800-peach-pi Joonas Lahtinen (1): drm/i915: Cancel hangcheck before GPU is suspended Josh Wu (1): drm/panel: simple: Add QiaoDian qd43003c0-40 Julia Lawall (4): drm/radeon: constify radeon_asic_ring structures drm/i915: constify intel_dvo_dev_ops structures drm/tegra: dc: Add missing of_node_put() drm/dp/mst: constify drm_dp_mst_topology_cbs structures Jyri Sarha (1): drm/atomic_helper: Add drm_atomic_helper_disable_planes_on_crtc() Karol Herbst (16): drm/nouveau/debugfs: add infrastructure to add files with other fops than only read drm/nouveau/debugfs: rename functions to indicate they are used inside drm drm/nouveau/debugfs: we need a ctrl object for debugfs drm/nouveau/debugfs: add copy of sysfs pstate interface ported to debugfs drm/nouveau/sysfs: remove pstate interface drm/nouveau/nouveau/perfmon: add interface files for current core voltage drm/nouveau/pci: add gf106 variant drm/nouveau/pci: add gk104 variant drm/nouveau/pci: implement generic code for pcie speed change drm/nouveau/pci: implement pcie speed change for tesla drm/nouveau/pci: implement pcie speed change for Fermi drm/nouveau/pci: implement pcie speed change for kepler+ drm/nouveau/bios/perf: parse the pci speed from the bios for tesla and newer cards drm/nouveau/perf: add fields for pci speed and width and use it for the pstates drm/nouveau/perf: change pcie speed on pstate change drm/nouveau/pci: fix check in nvkm_pcie_set_link Kumar, Mahesh (1): drm/i915/skl: Correct other-pipe watermark update condition check (v2) LABBE Corentin (2): drm: modes: replace simple_strtoul by kstrtouint drm: modes: Revert cc344980c767 "replace simple_strtoul by kstrtouint" Laurent Pinchart (12): drm: omapdrm: Fix plane state free in plane reset handler drm: omapdrm: Make fbdev emulation optional drm: omapdrm: gem: Remove unused function prototypes drm: omapdrm: gem: Remove forward declarations drm: omapdrm: gem: Group functions by purpose drm: omapdrm: gem: Move global usergart variable to omap_drm_private drm: omapdrm: gem: Mask out private flags passed from userspace drm: omapdrm: gem: Free the correct memory object drm: omapdrm: gem: Fix GEM object destroy in error path drm: omapdrm: gem: Don't free mmap offset twice drm: omapdrm: gem: Simplify error handling when creating GEM object drm: omapdrm: gem: Remove check for impossible condition Libin Yang (2): dp/mst: add SDP stream support drm/i915: start adding dp mst audio Liu Ying (1): drm/dsi: Add a helper to get bits per pixel of MIPI DSI pixel format Liviu Dudau (ARM) (3): drm/i2c: tda998x: unregister the connector in the unbind function drm/i2c: tda998x: increase the supported dotclock frequency to 165MHz for TDA19988 drm/i2c: tda998x: Add support for atomic modesetting Lucas Stach (5): drm/etnaviv: add devicetree bindings MAINTAINERS: add maintainer and reviewers for the etnaviv DRM driver devicetree: add vendor prefix for Kyocera Corporation drm/panel: simple: Add support for Kyocera TCG121XGLP panel drm/etnaviv: fix workaround for GC500 Luis de Bethencourt (2): drm: atmel-hlcdc: Fix module autoload for OF platform driver drm: omapdrm: tiler: Remove unneded module alias for tiler Lukas Wunner (9): drm/i915: On fb alloc failure, unref gem object where it gets refed drm/i915: Fix double unref in intelfb_alloc failure path drm/i915: Clean up LVDS register handling harder drm/i915: Fix oops caused by fbdev initialization failure async: export current_is_async() drm/i915: Tear down fbdev if initialization fails drm: Remove unused fbdev_list members vga_switcheroo: Prettify documentation apple-gmux: Add initial documentation Lyude (1): drm/i915: intel_hpd_init(): Fix suspend/resume reprobing Maarten Lankhorst (24): drm/i915: Make plane fb tracking work correctly, v2. drm/i915: Make prepare_plane_fb fully interruptible. drm/i915: Update legacy primary state outside the commit hook, v2. drm/i915: Only commit active planes when updating planes during reset. drm/i915: Only run commit when crtc is active, v2. drm/i915: Only call commit_planes when there are things to commit. drm/i915: Do not wait for flips in intel_crtc_disable_noatomic. drm/i915: Make wait_for_flips interruptible. drm/i915: Change locking for struct_mutex, v3. drm/i915: Wait for object idle without locks in atomic_commit, v2. drm/atomic: Small documentation fix. drm/i915: Handle cdclk limits on broadwell. drm/i915: Move disable_cxsr to the crtc_state. drm/i915: Calculate watermark related members in the crtc_state, v4. drm/i915/skl: Update watermarks before the crtc is disabled. drm/i915: Remove double wait_for_vblank on broadwell. drm/i915: Do a better job at disabling primary plane in the noatomic case. drm/i915: Set connector_state->connector using the helper. drm/atomic: Add __drm_atomic_helper_connector_reset, v2. drm/tegra: Use __drm_atomic_helper_reset_connector for subclassing connector state, v2. drm/atomic: add connector mask to drm_crtc_state. drm/i915: Update connector_mask during readout, v2. drm/atomic: Remove drm_atomic_connectors_for_crtc. drm/i915: Widen return value for reservation_object_wait_timeout_rcu to long. Marek Szyprowski (19): drm/exynos: rotator: convert to common clock framework drm/exynos: exynos7-decon: remove excessive check drm/exynos: move dma_addr attribute from exynos plane to exynos fb drm/exynos: introduce exynos_drm_plane_state structure drm/exynos: mixer: use crtc->state->adjusted_mode instead of crtc->mode drm/exynos: mixer: enable video overlay plane only when VP is available drm/exynos: introduce exynos_drm_plane_config structure drm/exynos: add generic check for plane state drm/exynos: mixer: use ratio precalculated in exynos_state drm/exynos: fix clipping when scaling is enabled drm/exynos: fimd: fix dma burst size setting for small plane size drm/exynos: gem: remove old unused prototypes drm/exynos: rename zpos to index drm/exynos: make zpos property configurable drm/exynos: mixer: set window priority based on zpos drm/exynos: mixer: refactor layer setup drm/exynos: mixer: unify a check for video-processor window drm/exynos: crtc: rework atomic_{begin,flush} drm/exynos: mixer: properly update all planes on the same vblank event Mario Kleiner (1): drm/radeon: Fixup hw vblank counter/ts for new drm_update_vblank_count() (v2) Mark Yao (14): drm/rockchip: Use new vblank api drm_crtc_vblank_* drm/rockchip: vop: replace dpms with enable/disable drm/rockchip: Convert to support atomic API drm/rockchip: Optimization vop mode set drm/rockchip: support atomic asynchronous commit drm/rockchip: direct config connecter gate and out_mode drm: bridge/dw_hdmi: add atomic API support drm/rockchip: dw_hdmi: use encoder enable function drm/rockchip: vop: merge vop cfg_done into vop_data drm/rockchip: vop: move interrupt registers into vop_data drm/rockchip: vop: spilt register related into rockchip_reg_vop.c drm/rockchip: vop: spilt scale regsters drm/rockchip: vop: add rk3036 vop support dt-bindings: add document for rk3036-vop Markus Elfring (1): GPU-DRM: Delete unnecessary checks before drm_property_unreference_blob() Matt Roper (12): drm/i915/skl: Eliminate usage of pipe_wm_parameters from SKL-style WM (v4) drm/i915/ivb: Move WaCxSRDisabledForSpriteScaling w/a to atomic check drm/i915: Drop intel_update_sprite_watermarks drm/i915: Calculate pipe watermarks into CRTC state (v3) drm/i915: Calculate ILK-style watermarks during atomic check (v3) drm/i915: Don't set plane visible during HW readout if CRTC is off drm/i915: Calculate watermark configuration during atomic check (v2) drm/i915/bxt: Fix eDP panel fitting (v2) drm/i915/bxt: Force port A DDI to use 4 lanes drm/i915/bxt: Disable power well support drm/i915: Disable primary plane if we fail to reconstruct BIOS fb (v2) drm/fb-helper: Use proper plane mask for fb cleanup Maxime Ripard (1): drm/fb_cma_helper: Remove implicit call to disable_unused_functions MichaÅ Winiarski (1): drm/i915: Avoid writing relocs with addresses in non-canonical form Michel Thierry (2): drm/i915/gen8: Flip the 48b switch drm/i915/gen9: Set PIN_ZONE_4G end to 4GB - 1 page Mika Kuoppala (9): drm/i915/skl: Refuse to load outdated dmc firmware drm/i915/bxt: Expose DC5 entry count drm/i915: Add csr programming registers to dmc debugfs entry drm/i915: Add dmc firmware load state and version to error state drm/i915: Avoid pointer arithmetic in calculating plane surface offset drm/i915/skl: Add SKL GT4 PCI IDs drm/i915/skl: Disable coarse power gating up until F0 drm/i915/skl: Double RC6 WRL always on drm/i915/skl: Default to noncoherent access up to F0 Mikko Rapeli (11): drm.h: use __kernel_size_t instead of size_t drm_mode.h: use __u32 and __u64 from linux/types.h exynos_drm.h: use __u64 from linux/types.h nouveau_drm.h: use __u32 and __u64 from linux/types.h radeon_drm.h: use __u32 and __u64 from linux/types.h via_drm.h: don't include non-existing via_drmclient.h include/uapi/drm/vmwgfx_drm.h: use __s32, __u32 and __u64 from linux/types.h include/uapi/drm/qxl_drm.h: use __s32, __u32 and __u64 from linux/types.h include/uapi/linux/virtio_gpu.h: use __u8 from <linux/types.h> include/uapi/linux/agpgart.h: include stdlib.h in userspace include/uapi/drm/amdgpu_drm.h: use __u32 and __u64 from <linux/types.h> Mykola Lysenko (5): drm/dp/mst: reply with ACK for UP reqs drm/dp/mst: process broadcast messages correctly drm/dp/mst: always send reply for UP request drm/dp/mst: fix in MSTB RAD initialization drm/dp/mst: fix in RAD element access Namrta Salonie (2): drm/i915 : Fix to remove unnecsessary checks in postclose function. drm/i915: Fix possible null dereference in framebuffer_info debugfs function Nick Hoath (3): drm/i195: Rename gt_irq_handler variable drm/i915: Break out common code from gen8_gt_irq_handler drm/i915: Extend LRC pinning to cover GPU context writeback Nicolai Hähnle (5): drm/amdgpu: fix race condition in amd_sched_entity_push_job drm/ttm: fix documentation of ttm_bo_reserve drm/ttm: fix documentation of ttm_bo_reserve drm/radeon: fix typo in cik_ring_ib_execute documentation (v2) drm/radeon: only increment sync_seq when a fence is really emitted Nicolas Chauvet (1): drm/nouveau/gk20a: Add MODULE_FIRMWARE for gk20a Nicolas Ferre (1): drm: atmel-hlcdc: add support for sama5d2 SoCs Nicolas Iooss (2): drm: make drm_dev_set_unique() not use a format string drm: use dev_name as default unique name in drm_dev_alloc() Patrik Jakobsson (9): drm/i915: Don't trust CSR program memory contents drm/i915/gen9: Always set mask memory up when enabling DC5 or DC6 drm/i915: Remove distinction between DDI 2 vs 4 lanes drm/i915: Add a modeset power domain drm/i915: Do not warn on PG2 enabled in gen9_disable_dc5() drm/i915: Explain usage of power well IDs vs bit groups drm/i915/gen9: Turn DC handling into a power well drm/i915/gen9: Add boot parameter for disabling DC6 drm/i915/skl: Remove unused suspend and resume callbacks Paulo Zanoni (24): drm/i915: change no_fbc_reason from enum to string drm/i915: remove newline from a no_fbc_reason message drm/i915: rename intel_fbc_nuke to intel_fbc_recompress drm/i915: extract fbc_on_pipe_a_only() drm/i915: remove unnecessary check for crtc->primary->fb drm/i915: extract crtc_is_valid() on the FBC code drm/i915: use struct intel_crtc *crtc at __intel_fbc_update() drm/i915: fix the __intel_fbc_update() comments drm/i915: don't disable_fbc() if FBC is already disabled drm/i915: refactor FBC deactivation at init drm/i915: remove too-frequent FBC debug message drm/i915: clarify that checking the FB stride for CFB is intentional drm/i915: remove in_dbg_master check from intel_fbc.c drm/i915: fix the CFB size check drm/i915: set dev_priv->fbc.crtc before scheduling the enable work drm/i915: pass the crtc as an argument to intel_fbc_update() drm/i915: introduce is_active/activate/deactivate to the FBC terminology drm/i915: introduce intel_fbc_{enable,disable} drm/i915: alloc/free the FBC CFB during enable/disable drm/i915: check for FBC planes in the same place as the pipes drm/i915: use a single intel_fbc_work struct drm/i915: kill fbc.uncompressed_size drm/i915: get rid of FBC {,de}activation messages drm/i915: only recompress FBC after flushing a drawing operation Philipp Zabel (1): devicetree: add vendor prefix for Vivante Corporation Qiang Yu (1): drm/amdgpu: Prepare DKMS build for powerplay module. Rasmus Villemoes (3): drm/omap: use kzalloc in sita_init() drm/vmwgfx: use kzalloc in vmw_surface_define_ioctl() drm/vmwgfx: check kmalloc return value Rex Zhu (57): drm/amdgpu: share struct amdgpu_pm_state_type with powerplay module drm/amdgpu: mv some definition from amdgpu_acpi.c to amdgpu_acpi.h drm/amdgpu: mv amdgpu_acpi.h to amd/include/amd_acpi.h drm/amdgpu: implement new cgs interface for acpi function drm/amdgpu: implement cgs interface to query system info drm/amdgpu: add new cgs interface to get display info (v2) drm/amdgpu: disable legacy path of firmware check if powerplay is enabled drm/amdgpu: export amd_powerplay_func to amdgpu and other ip block drm/amd/powerplay: add CG and PG support for carrizo drm/amd/powerplay: add event manager sub-component drm/amd/powerplay: implement functions of amd_powerplay_func drm/amdgpu/powerplay: add function point in hwmgr_funcs for program display gap drm/amdgpu/poweprlay: export program display gap function to eventmgr drm/amdgpu/powerplay: implement pem_task for display_configuration_change drm/amdgpu/powerplay: program display gap for tonga. drm/amdgpu: enable powerplay module by default for tonga. drm/amdgpu: enable powerplay module by default for fiji. drm/amdgpu/powerplay: add some definition for other ip block to update cg pg. drm/amd/powerplay: add new function point in hwmgr_func for CG/PG. drm/amd/powerplay: Add CG and PG support for tonga drm/amdgpu/powerplay: add new function point in hwmgr_funcs for thermal control drm/amdgpu/powerplay: mv ppinterrupt.h to inc folder to share with other submodule. drm/amdgpu/powerplay: add thermal control interface in hwmgr. drm/amdgpu/powerplay: enable thermal interrupt task in eventmgr. drm/amdgpu/powerplay: implement thermal control for tonga. drm/amdgpu/powerplay: implement fan control interface in amd_powerplay_funcs drm/amdgpu: export fan control functions to amdgpu drm/amdgpu: enable sysfs interface for powerplay drm/amd/powerplay: add and export hwmgr interface to eventmgr to check hw states. drm/amd/powerplay: implement new funcs to check current states for tonga. drm/amd/powerplay: refine the logic of whether need to update power state. drm/amd/powerplay: fix warning of cast to pointer from integer of different size. drm/amd/powerplay: add new function point in hwmgr. drm/amd/powerplay: add smc msg for NB P-State switch drm/amd/powerplay: export interface to DAL to init/change display configuration. drm/amd/powerplay: enable set_cpu_power_state task. (v2) drm/amd/powerplay: enable/disable NB pstate feature for Carrizo. drm/amd/powerplay: fix bug that dpm funcs in debugfs/sysfs missing. drm/amd/powerplay: check whether enable dpm in powerplay. drm/amd/powerplay: move shared function of vi to hwmgr. (v2) drm/amd/powerplay: display gpu load when print performance for tonga. drm/amd/powerplay: add point check to avoid NULL point hang. drm/amd/powerplay: check whether need to enable thermal control. (v2) drm/amd/powerplay: show gpu load when print gpu performance for Cz. (v2) drm/amd/powerplay: fix bug that NULL checks are reversed. drm/amd/powerplay: fix Smatch static checker warnings with indenting (v2) drm/amd/powerplay: fix Smatch static checker warnings drm/amd/powerplay: add powerplay valid check to avoid null point. (v2) drm/amd/powerplay: Reload and initialize the smc firmware on powerplay resume. drm/amdgpu: Show gpu load when display gpu performance for Ci. drm/amdgpu: Show gpu load when display gpu performance for Fiji of VI. drm/amdgpu: fix hex/decimal bug when show gpu load. drm/amd/powerplay: add thermal control task when resume. drm/amd/powerplay: enable set boot state task drm/amd/powerplay: enable power down asic task. (v2) drm/amd/powerplay: implement power down asic task for CZ drm/amd/powerplay: fix static checker warning for return meaningless value. Rob Clark (2): drm/msm: trivial whitespace fix drm/msm: ratelimit error irq msgs Robert Fekete (2): drm/i915: Add extra plane information in debugfs. drm: Describe the Rotation property bits. Rodrigo Vivi (22): drm/i915: Define IS_BROXTON properly. drm/i915/kbl: Introduce Kabylake platform defition. drm/i915: Allow 1 vblank to let Sink CRC calculation to start or stop. drm/i915: Make Sink crc calculation waiting for counter to reset. drm/i915: Stop tracking last calculated Sink CRC. drm/i915: Rely on TEST_SINK_START instead of tracking Sink CRC state on dev_priv. drm/i915: Delay first PSR activation. drm/i915: Reduce PSR re-activation time for VLV/CHV. drm/i915: PSR: Don't Skip aux handshake on DP_PSR_NO_TRAIN_ON_EXIT. drm/i915: Send TP1 TP2/3 even when panel claims no NO_TRAIN_ON_EXIT. drm/i915: Remove duplicated dpcd write on hsw_psr_enable_sink. drm/i915: PSR: Let's rely more on frontbuffer tracking. drm/i915: PSR: Mask LPSP hw tracking back again. drm/i915: Remove PSR Perf Counter for SKL+ drm/i915: Also disable PSR on Sink when disabling it on Source. drm/i915: Fix idle_frames counter. drm/i2c/tda998x: Remove unused save/restore drm encoder helpers. drm/i915/kbl: Use propper ddi buffer translation table for Kabylake ULT and ULX. drm/i915/kbl: drm/i915: Avoid GuC loading for now on Kabylake. drm/i915/kbl: Fix DMC load on Kabylake. drm/i915: Fix random aux transactions failures. drm/i915: PSR also doesn't have link_entry_time on SKL. Seung-Woo Kim (3): drm/exynos: gsc: prepare and unprepare gsc clock drm/exynos: gsc: fix wrong pm_runtime state drm/exynos: gsc: add device tree support and remove usage of static mappings Shobhit Kumar (2): drm/i915/skl: If needed sanitize bios programmed cdclk drm/i915/skl: While sanitizing cdclock check the SWF18 as well Shubhangi Shrivastava (2): drm/i915: Cleanup test data during long/short hotplug drm/i915: force link training when requested by Sink Slava Grigorev (1): drm/radeon: Fix "slow" audio over DP on DCE8+ Stephen Rothwell (2): drm/rockchip: vop: export vop_component_ops to modules drm/amdgpu/powerplay: include asm/div64.h for do_div() Sudip Mukherjee (1): drm/i915: check for return value Takashi Iwai (3): drm/i915: Remove superfluous NULL check drm/i915: Add get_eld audio component drm/i915: Add reverse mapping between port and intel_encoder The etnaviv authors (1): drm/etnaviv: add initial etnaviv DRM driver Thierry Reding (22): drm/bridge: dw-hdmi: Use dashes in filenames drm/bridge: Remove gratuitous blank line drm: Implement drm_modeset_lock_all_ctx() drm/atomic-helper: Implement subsystem-level suspend/resume gpu: host1x: Use platform_register/unregister_drivers() gpu: host1x: Remove core driver on unregister gpu: host1x: Add Tegra210 support drm/tegra: Use new multi-driver module helpers drm/tegra: sor: Operate on struct drm_dp_aux * drm/tegra: sor: Remove unnecessary conditional drm/tegra: Implement subsystem-level suspend/resume drm/tegra: Use DRIVER level for IOMMU aperture message drm/tegra: Advertise DRIVER_ATOMIC drm/gma500: Sanity-check pipe index drm/bochs: Store correct CRTC index in events drm/imx: Make pipe number unsigned drm/imx: Drop pipe field from struct imx_drm_crtc drm/radeon: Update radeon_get_vblank_counter_kms() dt-bindings: Move panel bindings to correct location drm/omap: Use platform_register/unregister_drivers() drm/radeon: Drop unnecessary unsigned int < 0 check drm: Do not set connector->encoder in drivers Thomas Hellstrom (2): drm/vmwgfx: Fix an incorrect lock check drm/vmwgfx: Fix a width / pitch mismatch on framebuffer updates Tim Gardner (1): radeon: r100: Silence 'may be used uninitialized' warnings Tim Gore (1): drm/i915: make A0 wa's applied to A1 Tobias Jakobi (2): drm/exynos: mixer: remove all static blending setup drm/exynos: mixer: also allow ARGB1555 and ARGB4444 Tom St Denis (14): amdgpu/gfxv8: Add missing break to switch statement from states init code amdgpu/gfxv8: Cleanup of gfx_v8_0_tiling_mode_table_init() (v2) amdgpu/gfxv8: Simplification of gfx_v8_0_create_bitmask() amdgpu/gfxv8: Simplification in gfx_v8_0_enable_gui_idle_interrupt() amdgpu/gfxv8: Remove magic numbers from function gfx_v8_0_tiling_mode_table_init() amdgpu/powerplay: Add Stoney to list of early init cases amdgpu/vce3: Cleanup harvest config function. amdgpu/vce3: Simplify idle and wait for idle code amdgpu/vce3: Simplify vce_v3_0_soft_reset() amdgpu/vce3: Simplify vce_v3_0_process_interrupt() amdgpu/vce3: Remove magic constants from harvest register masks. amdgpu/vce3: Simplify vce_v3_0_hw_init and ensure both rings default to not ready. amdgpu/dce11: Remove division from dce_v11_0_vblank_wait() amdgpu/dce11: Add test for crtc < 0 to various DCEv11 functions Tomas Elf (3): drm/i915: Grab execlist spinlock to avoid post-reset concurrency issues. drm/i915: Cope with request list state change during error state capture drm/i915: Update to post-reset execlist queue clean-up Tomi Valkeinen (4): drm: omapdrm: move omap_plane_reset() drm/omap: remove unused plugin defines drm/omap: set DRIVER_ATOMIC for omapdrm drm/omap: remove obsolete manager assignment Tvrtko Ursulin (5): drm/i915/skl: Assume no scaling is available when things are not as expected drm/i915/skl: Consider plane rotation when calculating stride in skl_do_mmio_flip drm/i915: Fix failure paths around initial fbdev allocation drm/i915: Remove redundant check in i915_gem_obj_to_vma drm/i915: Remove incorrect warning in context cleanup Ulrich Ãlmann (1): drm/panel: add kernel doc for size attributes in panel_desc Ville Syrjälä (123): drm/i915: Refactor ilk_update_wm (v3) drm/i915: Turn __raw_i915_read8() & co. in to inline functions drm/i915: Read FORCEWAKE registers with I915_READ_FW() drm/i915: Minor style nits in intel_uncore.c drm/i915: Respin vlv/chv reagister access to look more like SKL drm/i915: Add NEEDS_FORCEWAKE() checks for vlv/chv drm/i915: Use paramtrized WRPLL_CTL() drm/i915: Print a debug message when exceeding dotclock limit on pre-gen4 drm/i915: Don't use intel_pipe_to_cpu_transcoder() when there's a pipe config around drm/i915: Set sync polarity from adjusted mode for TRANS_DP_CTL drm/i915: Enable PCH FIFO underruns later on ILK/SNB/IVB drm/i915: Enable PCH FIFO underruns later on HSW+ drm/i915: Re-enable PCH FIO underrun reporting after pipe has been disabled drm/i915: Check for FIFO underruns after modeset on IVB/HSW and CPT/PPT drm/i915: Check for CPT and not !IBX in ironlake_disable_pch_transcoder() drm/i915: Disable FIFO underrun reporting around IBX transcoder B workaround drm/i915: Hide underruns from eDP PLL and port enable on ILK drm/i915: s/DP_PLL_FREQ_160MHZ/DP_PLL_FREQ_162MHZ/ drm/i915: Remove ILK-A eDP PLL workaround notes drm/i915: Clean up eDP PLL state asserts drm/i915: Use intel_dp->DP in eDP PLL setup drm/i915: Configure eDP PLL freq from ironlake_edp_pll_on() drm/i915: Setup DDI clk for MST on SKL drm/i915: Kill intel_runtime_pm_disable() drm/i915: Do fbdev fini first during unload drm/i915: Move the fbdev async_schedule() into intel_fbdev.c drm/i915: Replace aux_ch_ctl_reg check with port check drm/i915: Replace the aux ddc name switch statement with kasprintf() drm/i915: Parametrize AUX registers drm/i915: Remove the magic AUX_CTL is at DP + foo tricks drm/i915: Store aux data reg offsets in intel_dp->aux_ch_data_reg[] drm/i915: Add dev_priv->psr_mmio_base drm/i915: Model PSR AUX register selection more like the normal AUX code drm/i915: Clean up AUX power domain handling drm/i915: Introduce a gmbus power domain drm/i915: Remove DDI power domain exclusion SKL_DISPLAY_ALWAYS_ON_POWER_DOMAINS pci: Decouple quirks.c from i915_reg.h drm/i915: s/PCH_DP_/PORT_/ in intel_trans_dp_port_sel() and move it next to its only user drm/i915: s/is_sdvob/enum port/ drm/i915: Store DVO SRCDIM register offset under intel_dvo_device drm/i915: Streamline gpio_mmio_base deduction drm/i915: Prefix raw register defines with underscore drm/i915: Parametrize L3 error registers drm/i915: Parametrize MOCS registers drm/i915: s/0x50/RING_PSMI_CTL/ drm/i915: Make the high dword offset more explicit in i915_reg_read_ioctl drm/i915: Make the cmd parser 64bit regs explicit drm/i915: Add functions to emit register offsets to the ring drm/i915: Add wa_ctx_emit_reg() drm/i915: Wrap ASSIGN_CTX_{PDP,PM4L} in do {} while(0) drm/i915: Give names to more ring registers drm/i915: Wrap context LRI init in a macro drm/i915: Turn vgpu pdps into an array drm/i915: Pull the vgpu uncore funcs apart from the rest of gen6+ drm/i915: Add 'offset' to uncore funcs drm/i915: Add missing ')' to SKL_PS_ECC_STAT define drm/i915: Type safe register read/write drm: Pass the user drm_mode_fb_cmd2 as const to .fb_create() drm: Keep coordinates in the typical x, y, w, h order instead of x, y, h, w drm: Add "prefix" parameter to drm_rect_debug_print() drm: Print the src/dst/clip rectangles in error in drm_plane_helper drm/i915: Suppress spurious CPU FIFO underruns on ILK-IVB drm/i915: Disable CPU underruns around eDP port and vdd enable on ILK-IVB drm/i915: Check for underruns after crtc disable drm/i915: Don't register CRT connector when it's fused off drm/i915: Make ibx_{enable,disable}_display_interrupt() static inlines drm/i915: Make ironlake_{enable,disable}_display_irq() static inlines drm/i915: Introduce bdw_{update,enable,disable}_pipe_irq() drm/i915: Fix kerneldoc indent fails drm/edid: Make the detailed timing CEA/HDMI mode fixup accept up to 5kHz clock difference drm/i915: Don't use crtc->config when reading out infoframe state drm/i915: Use intel_pipe_will_have_type() in ironlake_crtc_compute_clock() drm/i915: Fix VBT backlight Hz to PWM conversion for PNV drm/i915: Fix vbt PWM max setup for CTG drm/i915: Add HAS_PCH_LPT_H() drm/i915: Kill duplicated PNV .get_display_clock_speed() assignment drm/i915: Round the AUX clock divider to closest on all platforms drm/i915: Use cached cdclk_freq for PWM calculations drm/i915: Don't register the CRT connector when it's fused off on LPT-H drm/i915: Don't register CRT connector when DDI E can't be used drm/i915: Check VBT for CRT port presence on HSW/BDW drm/i915: Add "missing" break to haswell_get_ddi_pll() drm/i915: Disable CLKOUT_DP bending on LPT/WPT as needed drm/i915: Round to closest when computing the VGA dotclock for LPT-H drm/i915: Disable FDI after the CRT port on LPT-H drm/i915: Refactor LPT-H VGA dotclock disabling drm/i915: Disable LPT-H VGA dotclock during crtc disable drm/i915: Leave FDI running after failed link training on LPT-H drm: Pass 'name' to drm_crtc_init_with_planes() drm: Pass 'name' to drm_universal_plane_init() drm: Pass 'name' to drm_encoder_init() drm: Use driver specified encoder name drm: Add crtc->name and use it in debug messages drm: Add plane->name and use it in debug prints drm: Don't overwrite UNVERFIED mode status to OK drm: Rename MODE_UNVERIFIED to MODE_STALE drm: Flatten drm_mode_connector_list_update() a bit drm: Only merge mode type bits between new probed modes drm: Drop drm_helper_probe_single_connector_modes_nomerge() drm/sti: Drop bogus drm_mode_sort() call drm: Allow override_edid to override the firmware EDID drm: Expand the drm_helper_probe_single_connector_modes() docs drm/i915: Kill intel_crtc->cursor_bo drm/i915: Drop the broken cursor base==0 special casing drm: Constify drm_encoder_slave_funcs drm/armada: Constify function pointer structs drm/atmel-hlcdc: Constify function pointer structs drm/bochs: Constify function pointer structs drm/bridge/dw_hdmi: Constify function pointer structs drm/bridge/nxp-ptn3460: Constify function pointer structs drm/i2c/ch7006: Constify function pointer structs drm/cirrus: Constify function pointer structs drm/exynos: Constify function pointer structs drm/i2c/adv7511: Constify function pointer structs drm/i2c/sil164: Constify function pointer structs drm/imx: Constify function pointer structs drm/mgag200: Constify function pointer structs drm/nouveau: Constify function pointer structs drm/rockchip: Constify function pointer structs drm/tegra: Constify function pointer structs drm/udl: Constify function pointer structs drm/vmwgfx: Constify function pointer structs drm/i915: Fix AVI/HDMI/SPD infoframes on HSW+ Vinay Simha BN (1): drm/msm/dsi: Add a mdp4 encoder for DSI Vince Hsu (1): drm/nouveau/fifo/gk104: fix engine status register offset Vitaly Prosyak (2): amd\powerplay Implement get dal power level amd/powerplay: Fix get dal power level Wayne Boyer (6): drm/i915: Clean up device info structure definitions drm/i915: Separate cherryview from valleyview drm/i915: Use HAS_PCH_SPLIT to determine correct devices drm/i915: Remove VLV A0 hack drm/i915: Only set gem object L3 cache level for IVB devices drm/i915: Remove BUG_ON call in vlv_enable_pll Werner Johansson (5): dt-bindings: Add Panasonic VVX10F034N00 panel binding drm/panel: Add Panasonic VVX10F034N00 MIPI DSI panel drm/dsi: Add Turn On/Shutdown Peripheral command helpers dt-bindings: Add Sharp LS043T1LE01 panel binding drm/panel: Add Sharp LS043T1LE01 MIPI DSI panel Zeng Zhaoxiu (1): i915: Replace "hweight8(dev_priv->info.subslice_7eu[i]) != 1" with "!is_power_of_2(dev_priv->info.subslice_7eu[i])" jim.bride at linux.intel.com (1): drm/i915/skl: Update DDI translation tables for SKL jimqu (1): drm/amdgpu: add spin lock to protect freed list in vm (v2) kbuild test robot (2): drm/amd/powerplay: fix boolreturn.cocci warnings drm/amd/powerplay: fix boolreturn.cocci warnings monk.liu (1): drm/amdgpu: Use new read bios from rom callback rezhu (1): drm/amd/powerplay: fix warning of cast to pointer from integer of different size. saurabh (1): drm/msm/dsi: Added missing mutex_unlock yanyang1 (4): drm/amd/powerplay: Add ixSWRST_COMMAND_1 in bif_5_0_d.h drm/amd/powerplay: Move smu7*.h from amdgpu to powerplay. drm/amd/powerplay: add header file for tonga smu and dpm drm/amd/powerplay: add Tonga dpm support (v3) Documentation/DocBook/gpu.tmpl | 1003 +- .../bindings/display/etnaviv/etnaviv-drm.txt | 54 + .../bindings/display/exynos/exynos_dp.txt | 41 +- .../devicetree/bindings/display/msm/dsi.txt | 12 +- .../devicetree/bindings/display/msm/mdp.txt | 26 +- .../bindings/display/panel/boe,tv080wum-nl0.txt | 7 + .../bindings/display/panel/innolux,g121x1-l03.txt | 7 + .../bindings/display/panel/kyo,tcg121xglp.txt | 7 + .../display/panel/panasonic,vvx10f034n00.txt | 20 + .../display/panel/qiaodian,qd43003c0-40.txt | 7 + .../bindings/display/panel/sharp,ls043t1le01.txt | 22 + .../display/rockchip/dw_mipi_dsi_rockchip.txt | 60 + .../bindings/display/rockchip/rockchip-vop.txt | 1 + .../devicetree/bindings/media/exynos5-gsc.txt | 4 + .../devicetree/bindings/vendor-prefixes.txt | 4 + MAINTAINERS | 9 + arch/arm/boot/dts/exynos5800-peach-pi.dts | 15 +- arch/x86/kernel/early-quirks.c | 1 + drivers/gpu/drm/Kconfig | 3 + drivers/gpu/drm/Makefile | 1 + drivers/gpu/drm/amd/amdgpu/Makefile | 20 +- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 140 +- drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c | 58 +- drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c | 58 +- drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c | 328 +- drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 19 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c | 41 +- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 163 +- drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 10 +- drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 13 +- drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c | 109 +- drivers/gpu/drm/amd/amdgpu/amdgpu_irq.h | 9 + drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_object.h | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 235 +- drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.c | 317 + drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.h | 33 + drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c | 5 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 116 +- drivers/gpu/drm/amd/amdgpu/atombios_dp.c | 96 +- drivers/gpu/drm/amd/amdgpu/ci_dpm.c | 14 +- drivers/gpu/drm/amd/amdgpu/cik.c | 67 +- drivers/gpu/drm/amd/amdgpu/cik_ih.c | 6 + drivers/gpu/drm/amd/amdgpu/cz_dpm.c | 273 +- drivers/gpu/drm/amd/amdgpu/cz_dpm.h | 2 + drivers/gpu/drm/amd/amdgpu/cz_ih.c | 7 + drivers/gpu/drm/amd/amdgpu/dce_v10_0.c | 14 +- drivers/gpu/drm/amd/amdgpu/dce_v11_0.c | 30 +- drivers/gpu/drm/amd/amdgpu/dce_v8_0.c | 14 +- drivers/gpu/drm/amd/amdgpu/fiji_dpm.c | 2 +- drivers/gpu/drm/amd/amdgpu/fiji_ppsmc.h | 182 - drivers/gpu/drm/amd/amdgpu/fiji_smc.c | 2 +- .../drm/amd/amdgpu/{fiji_smumgr.h => fiji_smum.h} | 0 drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 2987 +++--- drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c | 5 +- drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c | 177 +- drivers/gpu/drm/amd/amdgpu/iceland_ih.c | 7 + drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c | 129 +- drivers/gpu/drm/amd/amdgpu/tonga_dpm.c | 2 +- drivers/gpu/drm/amd/amdgpu/tonga_ih.c | 7 + drivers/gpu/drm/amd/amdgpu/tonga_ppsmc.h | 198 - drivers/gpu/drm/amd/amdgpu/tonga_smc.c | 2 +- .../amd/amdgpu/{tonga_smumgr.h => tonga_smum.h} | 0 drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c | 261 +- drivers/gpu/drm/amd/amdgpu/vce_v3_0.c | 238 +- drivers/gpu/drm/amd/amdgpu/vi.c | 153 +- .../{amdgpu/amdgpu_acpi.h => include/amd_acpi.h} | 61 +- drivers/gpu/drm/amd/include/amd_pcie.h | 50 + drivers/gpu/drm/amd/include/amd_pcie_helpers.h | 141 + drivers/gpu/drm/amd/include/amd_shared.h | 21 + .../gpu/drm/amd/include/asic_reg/bif/bif_5_0_d.h | 1 + .../gpu/drm/amd/include/asic_reg/gca/gfx_8_0_d.h | 13 + drivers/gpu/drm/amd/include/atombios.h | 79 + drivers/gpu/drm/amd/include/cgs_common.h | 124 +- drivers/gpu/drm/amd/powerplay/Kconfig | 6 + drivers/gpu/drm/amd/powerplay/Makefile | 22 + drivers/gpu/drm/amd/powerplay/amd_powerplay.c | 660 ++ drivers/gpu/drm/amd/powerplay/eventmgr/Makefile | 11 + .../drm/amd/powerplay/eventmgr/eventactionchains.c | 289 + .../drm/amd/powerplay/eventmgr/eventactionchains.h | 62 + drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.c | 195 + drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.h | 34 + .../drm/amd/powerplay/eventmgr/eventmanagement.c | 215 + .../drm/amd/powerplay/eventmgr/eventmanagement.h | 59 + drivers/gpu/drm/amd/powerplay/eventmgr/eventmgr.c | 114 + .../drm/amd/powerplay/eventmgr/eventsubchains.c | 410 + .../drm/amd/powerplay/eventmgr/eventsubchains.h | 100 + .../gpu/drm/amd/powerplay/eventmgr/eventtasks.c | 438 + .../gpu/drm/amd/powerplay/eventmgr/eventtasks.h | 88 + drivers/gpu/drm/amd/powerplay/eventmgr/psm.c | 117 + drivers/gpu/drm/amd/powerplay/eventmgr/psm.h | 38 + drivers/gpu/drm/amd/powerplay/hwmgr/Makefile | 15 + .../drm/amd/powerplay/hwmgr/cz_clockpowergating.c | 252 + .../drm/amd/powerplay/hwmgr/cz_clockpowergating.h | 37 + drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c | 1737 ++++ drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.h | 326 + .../amd/powerplay/hwmgr/fiji_clockpowergating.c | 114 + .../amd/powerplay/hwmgr/fiji_clockpowergating.h | 35 + .../drm/amd/powerplay/hwmgr/fiji_dyn_defaults.h | 105 + drivers/gpu/drm/amd/powerplay/hwmgr/fiji_hwmgr.c | 5127 +++++++++ drivers/gpu/drm/amd/powerplay/hwmgr/fiji_hwmgr.h | 361 + .../gpu/drm/amd/powerplay/hwmgr/fiji_powertune.c | 553 + .../gpu/drm/amd/powerplay/hwmgr/fiji_powertune.h | 66 + drivers/gpu/drm/amd/powerplay/hwmgr/fiji_thermal.c | 687 ++ drivers/gpu/drm/amd/powerplay/hwmgr/fiji_thermal.h | 62 + .../gpu/drm/amd/powerplay/hwmgr/functiontables.c | 155 + .../gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c | 334 + drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c | 563 + drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr_ppt.h | 105 + drivers/gpu/drm/amd/powerplay/hwmgr/pp_acpi.c | 76 + drivers/gpu/drm/amd/powerplay/hwmgr/ppatomctrl.c | 1207 +++ drivers/gpu/drm/amd/powerplay/hwmgr/ppatomctrl.h | 246 + drivers/gpu/drm/amd/powerplay/hwmgr/ppevvmath.h | 612 ++ drivers/gpu/drm/amd/powerplay/hwmgr/pppcielanes.c | 64 + drivers/gpu/drm/amd/powerplay/hwmgr/pppcielanes.h | 31 + .../gpu/drm/amd/powerplay/hwmgr/processpptables.c | 1688 +++ .../gpu/drm/amd/powerplay/hwmgr/processpptables.h | 47 + .../amd/powerplay/hwmgr/tonga_clockpowergating.c | 350 + .../amd/powerplay/hwmgr/tonga_clockpowergating.h | 36 + .../drm/amd/powerplay/hwmgr/tonga_dyn_defaults.h | 107 + drivers/gpu/drm/amd/powerplay/hwmgr/tonga_hwmgr.c | 6075 +++++++++++ drivers/gpu/drm/amd/powerplay/hwmgr/tonga_hwmgr.h | 408 + .../gpu/drm/amd/powerplay/hwmgr/tonga_powertune.h | 66 + .../gpu/drm/amd/powerplay/hwmgr/tonga_pptable.h | 406 + .../amd/powerplay/hwmgr/tonga_processpptables.c | 1142 ++ .../amd/powerplay/hwmgr/tonga_processpptables.h | 35 + .../gpu/drm/amd/powerplay/hwmgr/tonga_thermal.c | 590 ++ .../gpu/drm/amd/powerplay/hwmgr/tonga_thermal.h | 61 + drivers/gpu/drm/amd/powerplay/inc/amd_powerplay.h | 299 + .../drm/amd/{amdgpu => powerplay/inc}/cz_ppsmc.h | 1 + drivers/gpu/drm/amd/powerplay/inc/eventmanager.h | 109 + drivers/gpu/drm/amd/powerplay/inc/eventmgr.h | 125 + drivers/gpu/drm/amd/powerplay/inc/fiji_ppsmc.h | 412 + drivers/gpu/drm/amd/powerplay/inc/fiji_pwrvirus.h | 10299 +++++++++++++++++++ .../gpu/drm/amd/powerplay/inc/hardwaremanager.h | 385 + drivers/gpu/drm/amd/powerplay/inc/hwmgr.h | 801 ++ drivers/gpu/drm/amd/powerplay/inc/power_state.h | 200 + drivers/gpu/drm/amd/powerplay/inc/pp_acpi.h | 28 + drivers/gpu/drm/amd/powerplay/inc/pp_asicblocks.h | 47 + drivers/gpu/drm/amd/powerplay/inc/pp_debug.h | 47 + drivers/gpu/drm/amd/powerplay/inc/pp_feature.h | 67 + drivers/gpu/drm/amd/powerplay/inc/pp_instance.h | 39 + .../gpu/drm/amd/powerplay/inc/pp_power_source.h | 36 + drivers/gpu/drm/amd/powerplay/inc/ppinterrupt.h | 46 + .../gpu/drm/amd/{amdgpu => powerplay/inc}/smu7.h | 0 drivers/gpu/drm/amd/powerplay/inc/smu72.h | 664 ++ drivers/gpu/drm/amd/powerplay/inc/smu72_discrete.h | 760 ++ drivers/gpu/drm/amd/powerplay/inc/smu73.h | 720 ++ drivers/gpu/drm/amd/powerplay/inc/smu73_discrete.h | 799 ++ .../amd/{amdgpu => powerplay/inc}/smu7_discrete.h | 0 .../amd/{amdgpu => powerplay/inc}/smu7_fusion.h | 0 .../gpu/drm/amd/{amdgpu => powerplay/inc}/smu8.h | 0 .../amd/{amdgpu => powerplay/inc}/smu8_fusion.h | 8 + .../{amdgpu => powerplay/inc}/smu_ucode_xfer_cz.h | 0 .../gpu/drm/amd/powerplay/inc/smu_ucode_xfer_vi.h | 100 + drivers/gpu/drm/amd/powerplay/inc/smumgr.h | 182 + drivers/gpu/drm/amd/powerplay/inc/tonga_ppsmc.h | 420 + drivers/gpu/drm/amd/powerplay/smumgr/Makefile | 9 + drivers/gpu/drm/amd/powerplay/smumgr/cz_smumgr.c | 858 ++ drivers/gpu/drm/amd/powerplay/smumgr/cz_smumgr.h | 102 + drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c | 1042 ++ drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.h | 77 + drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c | 263 + .../gpu/drm/amd/powerplay/smumgr/tonga_smumgr.c | 819 ++ .../gpu/drm/amd/powerplay/smumgr/tonga_smumgr.h | 53 + drivers/gpu/drm/amd/scheduler/gpu_scheduler.c | 27 +- drivers/gpu/drm/amd/scheduler/gpu_scheduler.h | 9 +- drivers/gpu/drm/armada/armada_crtc.c | 15 +- drivers/gpu/drm/armada/armada_debugfs.c | 4 +- drivers/gpu/drm/armada/armada_drm.h | 3 +- drivers/gpu/drm/armada/armada_drv.c | 1 + drivers/gpu/drm/armada/armada_fb.c | 4 +- drivers/gpu/drm/armada/armada_fb.h | 2 +- drivers/gpu/drm/armada/armada_gem.c | 29 +- drivers/gpu/drm/armada/armada_overlay.c | 2 +- drivers/gpu/drm/ast/ast_drv.h | 3 +- drivers/gpu/drm/ast/ast_fb.c | 2 +- drivers/gpu/drm/ast/ast_main.c | 4 +- drivers/gpu/drm/ast/ast_mode.c | 2 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c | 2 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c | 11 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c | 6 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c | 2 +- drivers/gpu/drm/bochs/bochs.h | 2 +- drivers/gpu/drm/bochs/bochs_fbdev.c | 2 +- drivers/gpu/drm/bochs/bochs_kms.c | 10 +- drivers/gpu/drm/bochs/bochs_mm.c | 4 +- drivers/gpu/drm/bridge/Kconfig | 1 - drivers/gpu/drm/bridge/Makefile | 4 +- .../{dw_hdmi-ahb-audio.c => dw-hdmi-ahb-audio.c} | 2 +- .../bridge/{dw_hdmi-audio.h => dw-hdmi-audio.h} | 0 drivers/gpu/drm/bridge/{dw_hdmi.c => dw-hdmi.c} | 33 +- drivers/gpu/drm/bridge/{dw_hdmi.h => dw-hdmi.h} | 0 drivers/gpu/drm/bridge/nxp-ptn3460.c | 6 +- drivers/gpu/drm/cirrus/cirrus_drv.h | 3 +- drivers/gpu/drm/cirrus/cirrus_fbdev.c | 2 +- drivers/gpu/drm/cirrus/cirrus_main.c | 4 +- drivers/gpu/drm/cirrus/cirrus_mode.c | 6 +- drivers/gpu/drm/drm_atomic.c | 153 +- drivers/gpu/drm/drm_atomic_helper.c | 372 +- drivers/gpu/drm/drm_bridge.c | 69 +- drivers/gpu/drm/drm_crtc.c | 113 +- drivers/gpu/drm/drm_crtc_helper.c | 101 +- drivers/gpu/drm/drm_dp_mst_topology.c | 183 +- drivers/gpu/drm/drm_drv.c | 30 +- drivers/gpu/drm/drm_edid.c | 136 +- drivers/gpu/drm/drm_encoder_slave.c | 2 +- drivers/gpu/drm/drm_fb_cma_helper.c | 13 +- drivers/gpu/drm/drm_fb_helper.c | 2 +- drivers/gpu/drm/drm_fops.c | 58 +- drivers/gpu/drm/drm_gem.c | 144 +- drivers/gpu/drm/drm_gem_cma_helper.c | 14 +- drivers/gpu/drm/drm_irq.c | 3 + drivers/gpu/drm/drm_mipi_dsi.c | 38 + drivers/gpu/drm/drm_modes.c | 90 +- drivers/gpu/drm/drm_modeset_lock.c | 103 +- drivers/gpu/drm/drm_pci.c | 20 + drivers/gpu/drm/drm_plane_helper.c | 13 +- drivers/gpu/drm/drm_prime.c | 16 +- drivers/gpu/drm/drm_probe_helper.c | 174 +- drivers/gpu/drm/drm_rect.c | 7 +- drivers/gpu/drm/drm_sysfs.c | 56 +- drivers/gpu/drm/etnaviv/Kconfig | 20 + drivers/gpu/drm/etnaviv/Makefile | 14 + drivers/gpu/drm/etnaviv/cmdstream.xml.h | 218 + drivers/gpu/drm/etnaviv/common.xml.h | 249 + drivers/gpu/drm/etnaviv/etnaviv_buffer.c | 268 + drivers/gpu/drm/etnaviv/etnaviv_cmd_parser.c | 209 + drivers/gpu/drm/etnaviv/etnaviv_drv.c | 707 ++ drivers/gpu/drm/etnaviv/etnaviv_drv.h | 161 + drivers/gpu/drm/etnaviv/etnaviv_dump.c | 227 + drivers/gpu/drm/etnaviv/etnaviv_dump.h | 54 + drivers/gpu/drm/etnaviv/etnaviv_gem.c | 899 ++ drivers/gpu/drm/etnaviv/etnaviv_gem.h | 117 + drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c | 122 + drivers/gpu/drm/etnaviv/etnaviv_gem_submit.c | 443 + drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 1647 +++ drivers/gpu/drm/etnaviv/etnaviv_gpu.h | 209 + drivers/gpu/drm/etnaviv/etnaviv_iommu.c | 240 + drivers/gpu/drm/etnaviv/etnaviv_iommu.h | 28 + drivers/gpu/drm/etnaviv/etnaviv_iommu_v2.c | 33 + drivers/gpu/drm/etnaviv/etnaviv_iommu_v2.h | 25 + drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 299 + drivers/gpu/drm/etnaviv/etnaviv_mmu.h | 71 + drivers/gpu/drm/etnaviv/state.xml.h | 351 + drivers/gpu/drm/etnaviv/state_hi.xml.h | 407 + drivers/gpu/drm/exynos/Kconfig | 2 +- drivers/gpu/drm/exynos/exynos5433_drm_decon.c | 124 +- drivers/gpu/drm/exynos/exynos7_drm_decon.c | 179 +- drivers/gpu/drm/exynos/exynos_dp_core.c | 189 +- drivers/gpu/drm/exynos/exynos_dp_core.h | 1 + drivers/gpu/drm/exynos/exynos_drm_crtc.c | 75 +- drivers/gpu/drm/exynos/exynos_drm_crtc.h | 5 +- drivers/gpu/drm/exynos/exynos_drm_dpi.c | 10 +- drivers/gpu/drm/exynos/exynos_drm_drv.c | 81 +- drivers/gpu/drm/exynos/exynos_drm_drv.h | 97 +- drivers/gpu/drm/exynos/exynos_drm_dsi.c | 161 +- drivers/gpu/drm/exynos/exynos_drm_fb.c | 25 +- drivers/gpu/drm/exynos/exynos_drm_fb.h | 5 +- drivers/gpu/drm/exynos/exynos_drm_fimd.c | 160 +- drivers/gpu/drm/exynos/exynos_drm_gem.h | 28 - drivers/gpu/drm/exynos/exynos_drm_gsc.c | 35 +- drivers/gpu/drm/exynos/exynos_drm_mic.c | 2 +- drivers/gpu/drm/exynos/exynos_drm_plane.c | 259 +- drivers/gpu/drm/exynos/exynos_drm_plane.h | 9 +- drivers/gpu/drm/exynos/exynos_drm_rotator.c | 4 +- drivers/gpu/drm/exynos/exynos_drm_vidi.c | 41 +- drivers/gpu/drm/exynos/exynos_hdmi.c | 59 +- drivers/gpu/drm/exynos/exynos_mixer.c | 384 +- drivers/gpu/drm/exynos/regs-gsc.h | 4 +- drivers/gpu/drm/exynos/regs-mixer.h | 4 + drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c | 2 +- drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c | 1 - drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c | 2 +- drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c | 2 +- drivers/gpu/drm/gma500/cdv_device.c | 2 + drivers/gpu/drm/gma500/cdv_intel_crt.c | 2 +- drivers/gpu/drm/gma500/cdv_intel_display.c | 2 - drivers/gpu/drm/gma500/cdv_intel_dp.c | 3 +- drivers/gpu/drm/gma500/cdv_intel_hdmi.c | 7 +- drivers/gpu/drm/gma500/cdv_intel_lvds.c | 6 +- drivers/gpu/drm/gma500/framebuffer.c | 18 +- drivers/gpu/drm/gma500/gem.c | 19 +- drivers/gpu/drm/gma500/gma_display.c | 13 +- drivers/gpu/drm/gma500/gtt.c | 1 + drivers/gpu/drm/gma500/mdfld_device.c | 2 + drivers/gpu/drm/gma500/mdfld_dsi_dpi.c | 12 +- drivers/gpu/drm/gma500/mdfld_dsi_output.c | 5 +- drivers/gpu/drm/gma500/oaktrail_device.c | 2 + drivers/gpu/drm/gma500/oaktrail_hdmi.c | 2 +- drivers/gpu/drm/gma500/oaktrail_lvds.c | 2 +- drivers/gpu/drm/gma500/power.c | 4 +- drivers/gpu/drm/gma500/psb_device.c | 22 +- drivers/gpu/drm/gma500/psb_drv.h | 4 + drivers/gpu/drm/gma500/psb_intel_display.c | 2 - drivers/gpu/drm/gma500/psb_intel_drv.h | 3 + drivers/gpu/drm/gma500/psb_intel_lvds.c | 7 +- drivers/gpu/drm/gma500/psb_intel_sdvo.c | 8 +- drivers/gpu/drm/i2c/adv7511.c | 2 +- drivers/gpu/drm/i2c/ch7006_drv.c | 2 +- drivers/gpu/drm/i2c/sil164_drv.c | 2 +- drivers/gpu/drm/i2c/tda998x_drv.c | 29 +- drivers/gpu/drm/i915/Kconfig | 1 + drivers/gpu/drm/i915/Makefile | 1 + drivers/gpu/drm/i915/dvo.h | 15 +- drivers/gpu/drm/i915/dvo_ch7017.c | 2 +- drivers/gpu/drm/i915/dvo_ch7xxx.c | 2 +- drivers/gpu/drm/i915/dvo_ivch.c | 2 +- drivers/gpu/drm/i915/dvo_ns2501.c | 2 +- drivers/gpu/drm/i915/dvo_sil164.c | 2 +- drivers/gpu/drm/i915/dvo_tfp410.c | 2 +- drivers/gpu/drm/i915/i915_cmd_parser.c | 37 +- drivers/gpu/drm/i915/i915_debugfs.c | 427 +- drivers/gpu/drm/i915/i915_dma.c | 55 +- drivers/gpu/drm/i915/i915_drv.c | 379 +- drivers/gpu/drm/i915/i915_drv.h | 300 +- drivers/gpu/drm/i915/i915_gem.c | 164 +- drivers/gpu/drm/i915/i915_gem_context.c | 27 +- drivers/gpu/drm/i915/i915_gem_evict.c | 39 + drivers/gpu/drm/i915/i915_gem_execbuffer.c | 80 +- drivers/gpu/drm/i915/i915_gem_fence.c | 2 +- drivers/gpu/drm/i915/i915_gem_gtt.c | 139 +- drivers/gpu/drm/i915/i915_gem_gtt.h | 56 +- drivers/gpu/drm/i915/i915_gem_render_state.c | 2 +- drivers/gpu/drm/i915/i915_gem_stolen.c | 3 +- drivers/gpu/drm/i915/i915_gem_tiling.c | 4 + drivers/gpu/drm/i915/i915_gpu_error.c | 40 +- drivers/gpu/drm/i915/i915_guc_reg.h | 53 +- drivers/gpu/drm/i915/i915_guc_submission.c | 51 +- drivers/gpu/drm/i915/i915_irq.c | 307 +- drivers/gpu/drm/i915/i915_params.c | 10 +- drivers/gpu/drm/i915/i915_reg.h | 2806 ++--- drivers/gpu/drm/i915/i915_suspend.c | 4 +- drivers/gpu/drm/i915/i915_sysfs.c | 13 +- drivers/gpu/drm/i915/i915_trace.h | 4 +- drivers/gpu/drm/i915/i915_vgpu.c | 6 +- drivers/gpu/drm/i915/i915_vgpu.h | 14 +- drivers/gpu/drm/i915/intel_atomic.c | 5 +- drivers/gpu/drm/i915/intel_atomic_plane.c | 2 + drivers/gpu/drm/i915/intel_audio.c | 118 +- drivers/gpu/drm/i915/intel_bios.c | 168 +- drivers/gpu/drm/i915/intel_bios.h | 4 - drivers/gpu/drm/i915/intel_crt.c | 51 +- drivers/gpu/drm/i915/intel_csr.c | 295 +- drivers/gpu/drm/i915/intel_ddi.c | 200 +- drivers/gpu/drm/i915/intel_display.c | 1225 ++- drivers/gpu/drm/i915/intel_dp.c | 1137 +- drivers/gpu/drm/i915/intel_dp_link_training.c | 323 + drivers/gpu/drm/i915/intel_dp_mst.c | 44 +- drivers/gpu/drm/i915/intel_drv.h | 264 +- drivers/gpu/drm/i915/intel_dsi.c | 101 +- drivers/gpu/drm/i915/intel_dsi.h | 2 +- drivers/gpu/drm/i915/intel_dsi_pll.c | 6 +- drivers/gpu/drm/i915/intel_dvo.c | 29 +- drivers/gpu/drm/i915/intel_fbc.c | 742 +- drivers/gpu/drm/i915/intel_fbdev.c | 62 +- drivers/gpu/drm/i915/intel_fifo_underrun.c | 143 +- drivers/gpu/drm/i915/intel_guc.h | 12 +- drivers/gpu/drm/i915/intel_guc_fwif.h | 72 + drivers/gpu/drm/i915/intel_guc_loader.c | 105 +- drivers/gpu/drm/i915/intel_hdmi.c | 130 +- drivers/gpu/drm/i915/intel_hotplug.c | 11 +- drivers/gpu/drm/i915/intel_i2c.c | 82 +- drivers/gpu/drm/i915/intel_lrc.c | 176 +- drivers/gpu/drm/i915/intel_lrc.h | 19 +- drivers/gpu/drm/i915/intel_lvds.c | 13 +- drivers/gpu/drm/i915/intel_mocs.c | 61 +- drivers/gpu/drm/i915/intel_opregion.c | 79 +- drivers/gpu/drm/i915/intel_overlay.c | 2 +- drivers/gpu/drm/i915/intel_panel.c | 201 +- drivers/gpu/drm/i915/intel_pm.c | 682 +- drivers/gpu/drm/i915/intel_psr.c | 146 +- drivers/gpu/drm/i915/intel_ringbuffer.c | 206 +- drivers/gpu/drm/i915/intel_ringbuffer.h | 15 +- drivers/gpu/drm/i915/intel_runtime_pm.c | 637 +- drivers/gpu/drm/i915/intel_sdvo.c | 64 +- drivers/gpu/drm/i915/intel_sprite.c | 34 +- drivers/gpu/drm/i915/intel_tv.c | 2 +- drivers/gpu/drm/i915/intel_uncore.c | 284 +- drivers/gpu/drm/imx/Kconfig | 9 - drivers/gpu/drm/imx/dw_hdmi-imx.c | 6 +- drivers/gpu/drm/imx/imx-drm-core.c | 38 +- drivers/gpu/drm/imx/imx-drm.h | 2 +- drivers/gpu/drm/imx/imx-ldb.c | 10 +- drivers/gpu/drm/imx/imx-tve.c | 10 +- drivers/gpu/drm/imx/ipuv3-crtc.c | 2 +- drivers/gpu/drm/imx/ipuv3-plane.c | 3 +- drivers/gpu/drm/imx/parallel-display.c | 12 +- drivers/gpu/drm/mgag200/mgag200_drv.h | 2 +- drivers/gpu/drm/mgag200/mgag200_fb.c | 2 +- drivers/gpu/drm/mgag200/mgag200_main.c | 4 +- drivers/gpu/drm/mgag200/mgag200_mode.c | 6 +- drivers/gpu/drm/msm/Kconfig | 8 + drivers/gpu/drm/msm/Makefile | 3 + drivers/gpu/drm/msm/adreno/adreno_device.c | 52 - drivers/gpu/drm/msm/dsi/dsi.h | 6 +- drivers/gpu/drm/msm/dsi/dsi_cfg.c | 35 +- drivers/gpu/drm/msm/dsi/dsi_cfg.h | 4 + drivers/gpu/drm/msm/dsi/dsi_host.c | 508 +- drivers/gpu/drm/msm/dsi/dsi_manager.c | 6 +- drivers/gpu/drm/msm/dsi/phy/dsi_phy.c | 4 + drivers/gpu/drm/msm/dsi/phy/dsi_phy.h | 1 + drivers/gpu/drm/msm/dsi/phy/dsi_phy_28nm_8960.c | 195 + drivers/gpu/drm/msm/dsi/pll/dsi_pll.c | 3 + drivers/gpu/drm/msm/dsi/pll/dsi_pll.h | 10 + drivers/gpu/drm/msm/dsi/pll/dsi_pll_28nm_8960.c | 533 + drivers/gpu/drm/msm/hdmi/hdmi.c | 87 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c | 3 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_dsi_encoder.c | 198 + drivers/gpu/drm/msm/mdp/mdp4/mdp4_dtv_encoder.c | 2 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_irq.c | 2 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c | 278 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.h | 15 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_lcdc_encoder.c | 13 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_lvds_connector.c | 23 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_plane.c | 3 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c | 4 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_cmd_encoder.c | 2 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c | 3 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_encoder.c | 20 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_irq.c | 2 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c | 129 + drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.h | 2 + drivers/gpu/drm/msm/mdp/mdp5/mdp5_plane.c | 2 +- drivers/gpu/drm/msm/msm_drv.c | 76 +- drivers/gpu/drm/msm/msm_drv.h | 11 +- drivers/gpu/drm/msm/msm_fb.c | 4 +- drivers/gpu/drm/msm/msm_fbdev.c | 2 +- drivers/gpu/drm/nouveau/Kbuild | 1 - drivers/gpu/drm/nouveau/dispnv04/crtc.c | 5 +- drivers/gpu/drm/nouveau/dispnv04/dac.c | 10 +- drivers/gpu/drm/nouveau/dispnv04/dfp.c | 9 +- drivers/gpu/drm/nouveau/dispnv04/disp.c | 43 +- drivers/gpu/drm/nouveau/dispnv04/tvnv04.c | 8 +- drivers/gpu/drm/nouveau/dispnv04/tvnv17.c | 14 +- drivers/gpu/drm/nouveau/include/nvif/cl0002.h | 66 + drivers/gpu/drm/nouveau/include/nvif/cl0046.h | 28 + drivers/gpu/drm/nouveau/include/nvif/cl006b.h | 11 + drivers/gpu/drm/nouveau/include/nvif/cl0080.h | 45 + drivers/gpu/drm/nouveau/include/nvif/cl506e.h | 12 + drivers/gpu/drm/nouveau/include/nvif/cl506f.h | 13 + drivers/gpu/drm/nouveau/include/nvif/cl5070.h | 99 + drivers/gpu/drm/nouveau/include/nvif/cl507a.h | 11 + drivers/gpu/drm/nouveau/include/nvif/cl507b.h | 11 + drivers/gpu/drm/nouveau/include/nvif/cl507c.h | 12 + drivers/gpu/drm/nouveau/include/nvif/cl507d.h | 11 + drivers/gpu/drm/nouveau/include/nvif/cl507e.h | 12 + drivers/gpu/drm/nouveau/include/nvif/cl826e.h | 14 + drivers/gpu/drm/nouveau/include/nvif/cl826f.h | 15 + drivers/gpu/drm/nouveau/include/nvif/cl906f.h | 14 + drivers/gpu/drm/nouveau/include/nvif/cl9097.h | 44 + drivers/gpu/drm/nouveau/include/nvif/cla06f.h | 21 + drivers/gpu/drm/nouveau/include/nvif/class.h | 701 +- drivers/gpu/drm/nouveau/include/nvif/device.h | 3 +- drivers/gpu/drm/nouveau/include/nvif/if0000.h | 12 + drivers/gpu/drm/nouveau/include/nvif/if0001.h | 46 + drivers/gpu/drm/nouveau/include/nvif/if0002.h | 38 + drivers/gpu/drm/nouveau/include/nvif/if0003.h | 33 + drivers/gpu/drm/nouveau/include/nvif/if0004.h | 13 + drivers/gpu/drm/nouveau/include/nvif/if0005.h | 4 + drivers/gpu/drm/nouveau/include/nvif/ioctl.h | 8 - drivers/gpu/drm/nouveau/include/nvif/unpack.h | 34 +- .../drm/nouveau/include/nvkm/subdev/bios/perf.h | 2 + drivers/gpu/drm/nouveau/include/nvkm/subdev/clk.h | 5 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/ibus.h | 1 + drivers/gpu/drm/nouveau/include/nvkm/subdev/ltc.h | 1 + drivers/gpu/drm/nouveau/include/nvkm/subdev/pci.h | 16 + drivers/gpu/drm/nouveau/nouveau_abi16.c | 22 +- drivers/gpu/drm/nouveau/nouveau_chan.c | 7 +- drivers/gpu/drm/nouveau/nouveau_connector.c | 35 +- drivers/gpu/drm/nouveau/nouveau_crtc.h | 3 + drivers/gpu/drm/nouveau/nouveau_debugfs.c | 224 +- drivers/gpu/drm/nouveau/nouveau_debugfs.h | 35 +- drivers/gpu/drm/nouveau/nouveau_display.c | 5 +- drivers/gpu/drm/nouveau/nouveau_display.h | 2 +- drivers/gpu/drm/nouveau/nouveau_drm.c | 23 +- drivers/gpu/drm/nouveau/nouveau_drm.h | 2 +- drivers/gpu/drm/nouveau/nouveau_encoder.h | 5 +- drivers/gpu/drm/nouveau/nouveau_fbcon.h | 1 - drivers/gpu/drm/nouveau/nouveau_fence.c | 1 + drivers/gpu/drm/nouveau/nouveau_hwmon.c | 50 + drivers/gpu/drm/nouveau/nouveau_platform.c | 11 + drivers/gpu/drm/nouveau/nouveau_sysfs.c | 197 - drivers/gpu/drm/nouveau/nouveau_sysfs.h | 21 - drivers/gpu/drm/nouveau/nouveau_usif.c | 25 +- drivers/gpu/drm/nouveau/nv04_fence.c | 2 + drivers/gpu/drm/nouveau/nv17_fence.c | 1 + drivers/gpu/drm/nouveau/nv50_display.c | 30 +- drivers/gpu/drm/nouveau/nv50_fence.c | 1 + drivers/gpu/drm/nouveau/nvkm/core/client.c | 9 +- drivers/gpu/drm/nouveau/nvkm/core/ioctl.c | 56 +- drivers/gpu/drm/nouveau/nvkm/engine/ce/gk104.c | 54 +- drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 43 +- drivers/gpu/drm/nouveau/nvkm/engine/device/ctrl.c | 15 +- drivers/gpu/drm/nouveau/nvkm/engine/device/user.c | 17 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/base.c | 9 +- .../gpu/drm/nouveau/nvkm/engine/disp/basenv50.c | 5 +- .../gpu/drm/nouveau/nvkm/engine/disp/channv50.c | 6 +- .../gpu/drm/nouveau/nvkm/engine/disp/corenv50.c | 5 +- .../gpu/drm/nouveau/nvkm/engine/disp/cursnv50.c | 5 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/dacnv50.c | 10 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/gf119.c | 2 +- .../gpu/drm/nouveau/nvkm/engine/disp/hdagf119.c | 6 +- .../gpu/drm/nouveau/nvkm/engine/disp/hdagt215.c | 6 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/hdmig84.c | 6 +- .../gpu/drm/nouveau/nvkm/engine/disp/hdmigf119.c | 6 +- .../gpu/drm/nouveau/nvkm/engine/disp/hdmigk104.c | 6 +- .../gpu/drm/nouveau/nvkm/engine/disp/hdmigt215.c | 6 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c | 2 +- .../gpu/drm/nouveau/nvkm/engine/disp/oimmnv50.c | 5 +- .../gpu/drm/nouveau/nvkm/engine/disp/ovlynv50.c | 5 +- .../gpu/drm/nouveau/nvkm/engine/disp/piornv50.c | 6 +- .../gpu/drm/nouveau/nvkm/engine/disp/rootgf119.c | 7 +- .../gpu/drm/nouveau/nvkm/engine/disp/rootnv04.c | 9 +- .../gpu/drm/nouveau/nvkm/engine/disp/rootnv50.c | 19 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/sornv50.c | 6 +- drivers/gpu/drm/nouveau/nvkm/engine/dma/user.c | 6 +- .../gpu/drm/nouveau/nvkm/engine/dma/usergf100.c | 5 +- .../gpu/drm/nouveau/nvkm/engine/dma/usergf119.c | 5 +- drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv50.c | 5 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/base.c | 4 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/chang84.c | 2 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmag84.c | 7 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv04.c | 5 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv10.c | 5 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv17.c | 5 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv40.c | 5 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv50.c | 5 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gf100.c | 24 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gf100.h | 5 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c | 22 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.h | 5 +- .../gpu/drm/nouveau/nvkm/engine/fifo/gpfifog84.c | 7 +- .../gpu/drm/nouveau/nvkm/engine/fifo/gpfifogf100.c | 13 +- .../gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c | 13 +- .../gpu/drm/nouveau/nvkm/engine/fifo/gpfifonv50.c | 5 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgk20a.c | 2 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/fuc/gpc.fuc | 5 +- .../drm/nouveau/nvkm/engine/gr/fuc/gpcgm107.fuc5.h | 332 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c | 116 +- drivers/gpu/drm/nouveau/nvkm/engine/pm/base.c | 34 +- drivers/gpu/drm/nouveau/nvkm/engine/sw/chan.c | 4 +- drivers/gpu/drm/nouveau/nvkm/engine/sw/gf100.c | 4 +- drivers/gpu/drm/nouveau/nvkm/engine/sw/nv04.c | 7 +- drivers/gpu/drm/nouveau/nvkm/engine/sw/nv10.c | 4 +- drivers/gpu/drm/nouveau/nvkm/engine/sw/nv50.c | 4 +- drivers/gpu/drm/nouveau/nvkm/engine/sw/nvsw.c | 4 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/dcb.c | 11 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/perf.c | 16 + drivers/gpu/drm/nouveau/nvkm/subdev/clk/base.c | 5 + drivers/gpu/drm/nouveau/nvkm/subdev/clk/gf100.c | 6 +- drivers/gpu/drm/nouveau/nvkm/subdev/clk/gk104.c | 6 +- drivers/gpu/drm/nouveau/nvkm/subdev/clk/gt215.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv50.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgk104.c | 8 +- drivers/gpu/drm/nouveau/nvkm/subdev/ibus/Kbuild | 1 + drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gk104.c | 4 +- drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gm204.c | 40 + drivers/gpu/drm/nouveau/nvkm/subdev/ibus/priv.h | 1 + .../gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.c | 192 +- drivers/gpu/drm/nouveau/nvkm/subdev/ltc/Kbuild | 1 + drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gm107.c | 12 +- drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gm204.c | 63 + drivers/gpu/drm/nouveau/nvkm/subdev/ltc/priv.h | 6 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/Kbuild | 3 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/base.c | 14 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/g84.c | 92 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/g94.c | 18 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/gf100.c | 57 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/gf106.c | 49 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/gk104.c | 228 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/pcie.c | 165 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/priv.h | 33 + .../drm/nouveau/nvkm/subdev/pmu/fuc/gf100.fuc3.h | 1366 ++- .../drm/nouveau/nvkm/subdev/pmu/fuc/gf119.fuc4.h | 1284 ++- .../drm/nouveau/nvkm/subdev/pmu/fuc/gk208.fuc5.h | 338 +- .../drm/nouveau/nvkm/subdev/pmu/fuc/gt215.fuc3.h | 1516 ++- .../gpu/drm/nouveau/nvkm/subdev/pmu/fuc/kernel.fuc | 14 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/nv40.c | 2 +- drivers/gpu/drm/omapdrm/Makefile | 3 +- drivers/gpu/drm/omapdrm/omap_crtc.c | 2 +- drivers/gpu/drm/omapdrm/omap_debugfs.c | 4 + drivers/gpu/drm/omapdrm/omap_dmm_tiler.c | 15 +- drivers/gpu/drm/omapdrm/omap_drv.c | 44 +- drivers/gpu/drm/omapdrm/omap_drv.h | 23 +- drivers/gpu/drm/omapdrm/omap_encoder.c | 4 +- drivers/gpu/drm/omapdrm/omap_fb.c | 4 +- drivers/gpu/drm/omapdrm/omap_fbdev.c | 4 + drivers/gpu/drm/omapdrm/omap_gem.c | 304 +- drivers/gpu/drm/omapdrm/omap_plane.c | 55 +- drivers/gpu/drm/omapdrm/tcm-sita.c | 804 +- drivers/gpu/drm/omapdrm/tcm.h | 26 +- drivers/gpu/drm/panel/Kconfig | 19 + drivers/gpu/drm/panel/Makefile | 2 + .../gpu/drm/panel/panel-panasonic-vvx10f034n00.c | 334 + drivers/gpu/drm/panel/panel-sharp-ls043t1le01.c | 387 + drivers/gpu/drm/panel/panel-simple.c | 123 + drivers/gpu/drm/qxl/qxl_display.c | 20 +- drivers/gpu/drm/qxl/qxl_drv.h | 2 +- drivers/gpu/drm/qxl/qxl_fb.c | 3 +- drivers/gpu/drm/qxl/qxl_object.c | 2 +- drivers/gpu/drm/qxl/qxl_ttm.c | 4 +- drivers/gpu/drm/radeon/Kconfig | 9 - drivers/gpu/drm/radeon/Makefile | 4 - drivers/gpu/drm/radeon/atombios_crtc.c | 1 + drivers/gpu/drm/radeon/atombios_dp.c | 108 +- drivers/gpu/drm/radeon/atombios_encoders.c | 30 +- drivers/gpu/drm/radeon/cik.c | 4 +- drivers/gpu/drm/radeon/dce6_afmt.c | 16 + drivers/gpu/drm/radeon/drm_buffer.c | 177 - drivers/gpu/drm/radeon/drm_buffer.h | 148 - drivers/gpu/drm/radeon/r100.c | 5 +- drivers/gpu/drm/radeon/r300_cmdbuf.c | 1186 --- drivers/gpu/drm/radeon/r600_blit.c | 874 -- drivers/gpu/drm/radeon/r600_cp.c | 2660 ----- drivers/gpu/drm/radeon/r600_cs.c | 95 - drivers/gpu/drm/radeon/radeon.h | 3 +- drivers/gpu/drm/radeon/radeon_asic.c | 38 +- drivers/gpu/drm/radeon/radeon_atombios.c | 19 +- drivers/gpu/drm/radeon/radeon_cp.c | 2243 ---- drivers/gpu/drm/radeon/radeon_device.c | 3 +- drivers/gpu/drm/radeon/radeon_display.c | 4 +- drivers/gpu/drm/radeon/radeon_dp_mst.c | 16 +- drivers/gpu/drm/radeon/radeon_drv.c | 97 - drivers/gpu/drm/radeon/radeon_drv.h | 2048 ---- drivers/gpu/drm/radeon/radeon_fb.c | 3 +- drivers/gpu/drm/radeon/radeon_fence.c | 4 +- drivers/gpu/drm/radeon/radeon_irq.c | 402 - drivers/gpu/drm/radeon/radeon_kms.c | 24 +- drivers/gpu/drm/radeon/radeon_legacy_crtc.c | 1 + drivers/gpu/drm/radeon/radeon_legacy_encoders.c | 15 +- drivers/gpu/drm/radeon/radeon_mem.c | 302 - drivers/gpu/drm/radeon/radeon_mode.h | 8 +- drivers/gpu/drm/radeon/radeon_pm.c | 2 +- drivers/gpu/drm/radeon/radeon_state.c | 3261 ------ drivers/gpu/drm/radeon/radeon_vm.c | 12 +- drivers/gpu/drm/radeon/sid.h | 5 + drivers/gpu/drm/rcar-du/rcar_du_crtc.c | 2 +- drivers/gpu/drm/rcar-du/rcar_du_encoder.c | 2 +- drivers/gpu/drm/rcar-du/rcar_du_hdmicon.c | 6 +- drivers/gpu/drm/rcar-du/rcar_du_hdmienc.c | 10 +- drivers/gpu/drm/rcar-du/rcar_du_kms.c | 2 +- drivers/gpu/drm/rcar-du/rcar_du_plane.c | 3 +- drivers/gpu/drm/rockchip/Kconfig | 10 + drivers/gpu/drm/rockchip/Makefile | 4 +- drivers/gpu/drm/rockchip/dw-mipi-dsi.c | 1194 +++ drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | 20 +- drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 25 +- drivers/gpu/drm/rockchip/rockchip_drm_drv.h | 20 +- drivers/gpu/drm/rockchip/rockchip_drm_fb.c | 131 +- drivers/gpu/drm/rockchip/rockchip_drm_fb.h | 2 +- drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 1208 +-- drivers/gpu/drm/rockchip/rockchip_drm_vop.h | 230 +- drivers/gpu/drm/rockchip/rockchip_vop_reg.c | 316 + drivers/gpu/drm/rockchip/rockchip_vop_reg.h | 169 + drivers/gpu/drm/shmobile/shmob_drm_crtc.c | 4 +- drivers/gpu/drm/shmobile/shmob_drm_kms.c | 2 +- drivers/gpu/drm/sti/sti_crtc.c | 2 +- drivers/gpu/drm/sti/sti_cursor.c | 2 +- drivers/gpu/drm/sti/sti_drv.c | 1 + drivers/gpu/drm/sti/sti_gdp.c | 2 +- drivers/gpu/drm/sti/sti_hda.c | 2 - drivers/gpu/drm/sti/sti_hqvdp.c | 2 +- drivers/gpu/drm/sti/sti_tvout.c | 7 +- drivers/gpu/drm/tegra/Kconfig | 12 - drivers/gpu/drm/tegra/dc.c | 15 +- drivers/gpu/drm/tegra/dpaux.c | 41 +- drivers/gpu/drm/tegra/drm.c | 94 +- drivers/gpu/drm/tegra/drm.h | 35 +- drivers/gpu/drm/tegra/dsi.c | 15 +- drivers/gpu/drm/tegra/fb.c | 42 +- drivers/gpu/drm/tegra/gem.c | 15 +- drivers/gpu/drm/tegra/hdmi.c | 2 +- drivers/gpu/drm/tegra/rgb.c | 2 +- drivers/gpu/drm/tegra/sor.c | 147 +- drivers/gpu/drm/tilcdc/tilcdc_drv.c | 3 +- drivers/gpu/drm/tilcdc/tilcdc_panel.c | 2 +- drivers/gpu/drm/tilcdc/tilcdc_tfp410.c | 2 +- drivers/gpu/drm/ttm/ttm_bo.c | 31 +- drivers/gpu/drm/udl/udl_connector.c | 4 +- drivers/gpu/drm/udl/udl_drv.h | 2 +- drivers/gpu/drm/udl/udl_encoder.c | 3 +- drivers/gpu/drm/udl/udl_fb.c | 5 +- drivers/gpu/drm/udl/udl_modeset.c | 2 +- drivers/gpu/drm/vc4/Makefile | 11 +- drivers/gpu/drm/vc4/vc4_bo.c | 517 +- drivers/gpu/drm/vc4/vc4_crtc.c | 103 +- drivers/gpu/drm/vc4/vc4_debugfs.c | 3 + drivers/gpu/drm/vc4/vc4_drv.c | 36 +- drivers/gpu/drm/vc4/vc4_drv.h | 318 +- drivers/gpu/drm/vc4/vc4_gem.c | 866 ++ drivers/gpu/drm/vc4/vc4_hdmi.c | 2 +- drivers/gpu/drm/vc4/vc4_irq.c | 210 + drivers/gpu/drm/vc4/vc4_kms.c | 149 +- drivers/gpu/drm/vc4/vc4_packet.h | 399 + drivers/gpu/drm/vc4/vc4_plane.c | 42 +- drivers/gpu/drm/vc4/vc4_qpu_defines.h | 264 + drivers/gpu/drm/vc4/vc4_regs.h | 2 +- drivers/gpu/drm/vc4/vc4_render_cl.c | 634 ++ drivers/gpu/drm/vc4/vc4_trace.h | 63 + drivers/gpu/drm/vc4/vc4_trace_points.c | 14 + drivers/gpu/drm/vc4/vc4_v3d.c | 262 + drivers/gpu/drm/vc4/vc4_validate.c | 900 ++ drivers/gpu/drm/vc4/vc4_validate_shaders.c | 513 + drivers/gpu/drm/virtio/virtgpu_display.c | 22 +- drivers/gpu/drm/virtio/virtgpu_drv.h | 2 +- drivers/gpu/drm/virtio/virtgpu_fb.c | 1 - drivers/gpu/drm/virtio/virtgpu_plane.c | 2 +- drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c | 2 +- drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 30 +- drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c | 12 +- drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c | 14 +- drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c | 12 +- drivers/gpu/drm/vmwgfx/vmwgfx_surface.c | 9 +- drivers/gpu/host1x/Makefile | 3 +- drivers/gpu/host1x/bus.c | 2 + drivers/gpu/host1x/dev.c | 33 +- drivers/gpu/host1x/hw/host1x05.c | 42 + drivers/gpu/host1x/hw/host1x05.h | 26 + drivers/gpu/host1x/hw/host1x05_hardware.h | 142 + drivers/gpu/host1x/hw/hw_host1x05_channel.h | 121 + drivers/gpu/host1x/hw/hw_host1x05_sync.h | 243 + drivers/gpu/host1x/hw/hw_host1x05_uclass.h | 181 + drivers/gpu/vga/vga_switcheroo.c | 2 +- drivers/pci/quirks.c | 4 +- drivers/platform/x86/apple-gmux.c | 113 + include/drm/drmP.h | 15 +- include/drm/drm_atomic.h | 10 +- include/drm/drm_atomic_helper.h | 10 + include/drm/drm_crtc.h | 1242 ++- include/drm/drm_crtc_helper.h | 167 +- include/drm/drm_dp_helper.h | 36 + include/drm/drm_dp_mst_helper.h | 11 +- include/drm/drm_encoder_slave.h | 2 +- include/drm/drm_fb_cma_helper.h | 2 +- include/drm/drm_fb_helper.h | 101 +- include/drm/drm_gem.h | 106 +- include/drm/drm_mipi_dsi.h | 27 + include/drm/drm_mm.h | 26 +- include/drm/drm_modes.h | 347 +- include/drm/drm_modeset_helper_vtables.h | 928 ++ include/drm/drm_modeset_lock.h | 4 +- include/drm/drm_plane_helper.h | 38 +- include/drm/drm_rect.h | 3 +- include/drm/i915_component.h | 83 +- include/drm/i915_pciids.h | 49 +- include/drm/ttm/ttm_bo_api.h | 10 + include/drm/ttm/ttm_bo_driver.h | 4 +- include/uapi/drm/Kbuild | 2 + include/uapi/drm/amdgpu_drm.h | 290 +- include/uapi/drm/armada_drm.h | 2 + include/uapi/drm/drm.h | 9 +- include/uapi/drm/drm_fourcc.h | 2 +- include/uapi/drm/drm_mode.h | 18 +- include/uapi/drm/drm_sarea.h | 2 +- include/uapi/drm/etnaviv_drm.h | 222 + include/uapi/drm/exynos_drm.h | 8 +- include/uapi/drm/i810_drm.h | 2 +- include/uapi/drm/i915_drm.h | 25 +- include/uapi/drm/mga_drm.h | 2 +- include/uapi/drm/msm_drm.h | 5 +- include/uapi/drm/nouveau_drm.h | 86 +- include/uapi/drm/omap_drm.h | 8 +- include/uapi/drm/qxl_drm.h | 77 +- include/uapi/drm/r128_drm.h | 2 +- include/uapi/drm/radeon_drm.h | 128 +- include/uapi/drm/savage_drm.h | 2 +- include/uapi/drm/tegra_drm.h | 2 +- include/uapi/drm/vc4_drm.h | 279 + include/uapi/drm/via_drm.h | 5 +- include/uapi/drm/virtgpu_drm.h | 101 +- include/uapi/drm/vmwgfx_drm.h | 268 +- include/uapi/linux/agpgart.h | 1 + include/uapi/linux/virtio_gpu.h | 2 +- kernel/async.c | 1 + 778 files changed, 89618 insertions(+), 31591 deletions(-) create mode 100644 Documentation/devicetree/bindings/display/etnaviv/etnaviv-drm.txt create mode 100644 Documentation/devicetree/bindings/display/panel/boe,tv080wum-nl0.txt create mode 100644 Documentation/devicetree/bindings/display/panel/innolux,g121x1-l03.txt create mode 100644 Documentation/devicetree/bindings/display/panel/kyo,tcg121xglp.txt create mode 100644 Documentation/devicetree/bindings/display/panel/panasonic,vvx10f034n00.txt create mode 100644 Documentation/devicetree/bindings/display/panel/qiaodian,qd43003c0-40.txt create mode 100644 Documentation/devicetree/bindings/display/panel/sharp,ls043t1le01.txt create mode 100644 Documentation/devicetree/bindings/display/rockchip/dw_mipi_dsi_rockchip.txt create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.c create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.h delete mode 100644 drivers/gpu/drm/amd/amdgpu/fiji_ppsmc.h rename drivers/gpu/drm/amd/amdgpu/{fiji_smumgr.h => fiji_smum.h} (100%) delete mode 100644 drivers/gpu/drm/amd/amdgpu/tonga_ppsmc.h rename drivers/gpu/drm/amd/amdgpu/{tonga_smumgr.h => tonga_smum.h} (100%) rename drivers/gpu/drm/amd/{amdgpu/amdgpu_acpi.h => include/amd_acpi.h} (91%) create mode 100644 drivers/gpu/drm/amd/include/amd_pcie.h create mode 100644 drivers/gpu/drm/amd/include/amd_pcie_helpers.h create mode 100644 drivers/gpu/drm/amd/powerplay/Kconfig create mode 100644 drivers/gpu/drm/amd/powerplay/Makefile create mode 100644 drivers/gpu/drm/amd/powerplay/amd_powerplay.c create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/Makefile create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventactionchains.c create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventactionchains.h create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.c create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.h create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventmanagement.c create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventmanagement.h create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventmgr.c create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventsubchains.c create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventsubchains.h create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventtasks.c create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventtasks.h create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/psm.c create mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/psm.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/Makefile create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/cz_clockpowergating.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/cz_clockpowergating.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/fiji_clockpowergating.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/fiji_clockpowergating.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/fiji_dyn_defaults.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/fiji_hwmgr.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/fiji_hwmgr.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/fiji_powertune.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/fiji_powertune.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/fiji_thermal.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/fiji_thermal.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/functiontables.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr_ppt.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/pp_acpi.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/ppatomctrl.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/ppatomctrl.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/ppevvmath.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/pppcielanes.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/pppcielanes.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/processpptables.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/processpptables.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_clockpowergating.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_clockpowergating.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_dyn_defaults.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_hwmgr.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_hwmgr.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_powertune.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_pptable.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_processpptables.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_processpptables.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_thermal.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/tonga_thermal.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/amd_powerplay.h rename drivers/gpu/drm/amd/{amdgpu => powerplay/inc}/cz_ppsmc.h (99%) create mode 100644 drivers/gpu/drm/amd/powerplay/inc/eventmanager.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/eventmgr.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/fiji_ppsmc.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/fiji_pwrvirus.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/hardwaremanager.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/hwmgr.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/power_state.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/pp_acpi.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/pp_asicblocks.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/pp_debug.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/pp_feature.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/pp_instance.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/pp_power_source.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/ppinterrupt.h rename drivers/gpu/drm/amd/{amdgpu => powerplay/inc}/smu7.h (100%) create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu72.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu72_discrete.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu73.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu73_discrete.h rename drivers/gpu/drm/amd/{amdgpu => powerplay/inc}/smu7_discrete.h (100%) rename drivers/gpu/drm/amd/{amdgpu => powerplay/inc}/smu7_fusion.h (100%) rename drivers/gpu/drm/amd/{amdgpu => powerplay/inc}/smu8.h (100%) rename drivers/gpu/drm/amd/{amdgpu => powerplay/inc}/smu8_fusion.h (91%) rename drivers/gpu/drm/amd/{amdgpu => powerplay/inc}/smu_ucode_xfer_cz.h (100%) create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu_ucode_xfer_vi.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smumgr.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/tonga_ppsmc.h create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/Makefile create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/cz_smumgr.c create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/cz_smumgr.h create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.h create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/tonga_smumgr.c create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/tonga_smumgr.h rename drivers/gpu/drm/bridge/{dw_hdmi-ahb-audio.c => dw-hdmi-ahb-audio.c} (99%) rename drivers/gpu/drm/bridge/{dw_hdmi-audio.h => dw-hdmi-audio.h} (100%) rename drivers/gpu/drm/bridge/{dw_hdmi.c => dw-hdmi.c} (98%) rename drivers/gpu/drm/bridge/{dw_hdmi.h => dw-hdmi.h} (100%) create mode 100644 drivers/gpu/drm/etnaviv/Kconfig create mode 100644 drivers/gpu/drm/etnaviv/Makefile create mode 100644 drivers/gpu/drm/etnaviv/cmdstream.xml.h create mode 100644 drivers/gpu/drm/etnaviv/common.xml.h create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_buffer.c create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_cmd_parser.c create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_drv.c create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_drv.h create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_dump.c create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_dump.h create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_gem.c create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_gem.h create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_gem_submit.c create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_gpu.c create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_gpu.h create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_iommu.c create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_iommu.h create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_iommu_v2.c create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_iommu_v2.h create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_mmu.c create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_mmu.h create mode 100644 drivers/gpu/drm/etnaviv/state.xml.h create mode 100644 drivers/gpu/drm/etnaviv/state_hi.xml.h create mode 100644 drivers/gpu/drm/i915/intel_dp_link_training.c create mode 100644 drivers/gpu/drm/msm/dsi/phy/dsi_phy_28nm_8960.c create mode 100644 drivers/gpu/drm/msm/dsi/pll/dsi_pll_28nm_8960.c create mode 100644 drivers/gpu/drm/msm/mdp/mdp4/mdp4_dsi_encoder.c create mode 100644 drivers/gpu/drm/nouveau/include/nvif/cl0002.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/cl0046.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/cl006b.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/cl0080.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/cl506e.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/cl506f.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/cl5070.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/cl507a.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/cl507b.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/cl507c.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/cl507d.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/cl507e.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/cl826e.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/cl826f.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/cl906f.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/cl9097.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/cla06f.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if0000.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if0001.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if0002.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if0003.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if0004.h create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if0005.h delete mode 100644 drivers/gpu/drm/nouveau/nouveau_sysfs.c delete mode 100644 drivers/gpu/drm/nouveau/nouveau_sysfs.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gm204.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gm204.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/pci/gf106.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/pci/gk104.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/pci/pcie.c create mode 100644 drivers/gpu/drm/panel/panel-panasonic-vvx10f034n00.c create mode 100644 drivers/gpu/drm/panel/panel-sharp-ls043t1le01.c delete mode 100644 drivers/gpu/drm/radeon/drm_buffer.c delete mode 100644 drivers/gpu/drm/radeon/drm_buffer.h delete mode 100644 drivers/gpu/drm/radeon/r300_cmdbuf.c delete mode 100644 drivers/gpu/drm/radeon/r600_blit.c delete mode 100644 drivers/gpu/drm/radeon/r600_cp.c delete mode 100644 drivers/gpu/drm/radeon/radeon_cp.c delete mode 100644 drivers/gpu/drm/radeon/radeon_irq.c delete mode 100644 drivers/gpu/drm/radeon/radeon_mem.c delete mode 100644 drivers/gpu/drm/radeon/radeon_state.c create mode 100644 drivers/gpu/drm/rockchip/dw-mipi-dsi.c create mode 100644 drivers/gpu/drm/rockchip/rockchip_vop_reg.c create mode 100644 drivers/gpu/drm/rockchip/rockchip_vop_reg.h create mode 100644 drivers/gpu/drm/vc4/vc4_gem.c create mode 100644 drivers/gpu/drm/vc4/vc4_irq.c create mode 100644 drivers/gpu/drm/vc4/vc4_packet.h create mode 100644 drivers/gpu/drm/vc4/vc4_qpu_defines.h create mode 100644 drivers/gpu/drm/vc4/vc4_render_cl.c create mode 100644 drivers/gpu/drm/vc4/vc4_trace.h create mode 100644 drivers/gpu/drm/vc4/vc4_trace_points.c create mode 100644 drivers/gpu/drm/vc4/vc4_v3d.c create mode 100644 drivers/gpu/drm/vc4/vc4_validate.c create mode 100644 drivers/gpu/drm/vc4/vc4_validate_shaders.c create mode 100644 drivers/gpu/host1x/hw/host1x05.c create mode 100644 drivers/gpu/host1x/hw/host1x05.h create mode 100644 drivers/gpu/host1x/hw/host1x05_hardware.h create mode 100644 drivers/gpu/host1x/hw/hw_host1x05_channel.h create mode 100644 drivers/gpu/host1x/hw/hw_host1x05_sync.h create mode 100644 drivers/gpu/host1x/hw/hw_host1x05_uclass.h create mode 100644 include/drm/drm_modeset_helper_vtables.h create mode 100644 include/uapi/drm/etnaviv_drm.h create mode 100644 include/uapi/drm/vc4_drm.h