Hi Linus, This is the main pull request for the drm for 4.3. Nouveau is probably the biggest amount of changes in here, since it missed 4.2. Highlights below, along with the usual bunch of fixes. There are a few minor conflicts with your tree but nothing you can't handle. All stuff outside drm should have applicable acks.
Highlights: new drivers: freescale dcu kms driver core: more atomic fixes disable some dri1 interfaces on kms drivers drop fb panic handling, this was just getting more broken, as more locking was required. new core fbdev Kconfig support - instead of each driver enable/disabling it struct_mutex cleanups panel: more new panels cleanup Kconfig i915: Skylake support enabled by default legacy modesetting using atomic infrastructure Skylake fixes GEN9 workarounds amdgpu: Fiji support CGS support for amdgpu Initial GPU scheduler - off by default Lots of bug fixes and optimisations. radeon: DP fixes misc fixes amdkfd: Add Carrizo support for amdkfd using amdgpu. nouveau: long pending cleanup to complete driver, fully bisectable which makes it larger, perfmon work more reclocking improvements maxwell displayport fixes vmwgfx: new DX device support, supports OpenGL 3.3 screen targets support mgag200: G200eW support G200e new revision support msm: dragonboard 410c support, msm8x94 support, msm8x74v1 support yuv format support dma plane support mdp5 rotation initial hdcp sti: atomic support exynos: lots of cleanups atomic modesetting/pageflipping support render node support tegra: tegra210 support (dc, dsi, dp/hdmi) dpms with atomic modesetting support atmel: support for 3 more atmel SoCs new input formats, PRIME support. dwhdmi: preparing to add audio support rockchip: yuv plane support Dave. The following changes since commit c13dcf9f2d6f5f06ef1bf79ec456df614c5e058b: Linux 4.2-rc8 (2015-08-23 20:52:59 -0700) are available in the git repository at: git://people.freedesktop.org/~airlied/linux drm-next for you to fetch changes up to 73bf1b7be7aab60d7c651402441dd0b0b4991098: Merge branch 'drm-next-4.3' of git://people.freedesktop.org/~agd5f/linux into drm-next (2015-09-05 07:46:09 +1000) ---------------------------------------------------------------- Abdiel Janulgue (4): drm/i915: Enable resource streamer bits on MI_BATCH_BUFFER_START drm/i915: Enable Resource Streamer state save/restore on MI_SET_CONTEXT drm/i915: Enable resource streamer on Execlists drm/i915: Expose I915_EXEC_RESOURCE_STREAMER flag and getparam Akash Goel (6): drm/i915/skl: Retrieve the Rpe value from Pcode drm/i915/skl: Ring frequency table programming changes drm/i915/skl: Updated the i915_ring_freq_table debugfs function drm/i915/skl: Restrict the ring frequency table programming to SKL drm/i915: Add HAS_CORE_RING_FREQ macro drm/i915: Added BXT check in HAS_CORE_RING_FREQ macro Alex Dai (1): drm/i915: Add GuC-related module parameters Alex Deucher (23): drm/radeon/dce6: assign different audio pins to each encoder drm/amdgpu: Implement irq interfaces for CGS drm/amdgpu: cleanup context structure v2 drm/amdgpu: add fence suspend/resume functions drm/amdgpu: move some atombios definitions to common folder (v2) drm/amdgpu: handle conditional support for CIK properly drm/amdgpu: add support for VCE 3.x on Fiji drm/amdgpu: remove VM workaround for Fiji drm/amdgpu: add scheduler initialization drm/amdgpu: disable GPU reset by default drm/amdgpu: Don't link train DisplayPort on HPD until we get the dpcd drm/amdgpu: fix IH ring allocation for bus addresses (v2) drm/radeon: fix HDMI quantization_range for pre-DCE5 asics drm/radeon/native: Send out the full AUX address drm/amdgpu/atom: Send out the full AUX address drm/amdgpu: be explicit about cpu vram access for driver BOs (v2) drm/amdgpu: use top down allocation for non-CPU accessible vram drm/amdgpu: fix typo in dce10 watermark setup drm/amdgpu: fix typo in dce11 watermark setup drm/amdgpu/cz: fix cz_dpm_update_low_memory_pstate logic drm/amdgpu: fix warning in scheduler drm/amdgpu: fix vce3 instance handling drm/amdgpu: rename gmc_v8_0_init_compute_vmid Alexandre Courbot (6): drm/nouveau/gr: use NVIDIA-provided external firmwares drm/nouveau/gr/gk20a: use same initialization sequence as nvgpu drm/nouveau/fifo: add GM20B fifo drm/nouveau/gr: add GM20B support drm/nouveau/device: recognize GM20B drm/nouveau/platform: recognize GM20B Ander Conselvan de Oliveira (7): drm/i915: Silence compiler warning drm/i915: Make __intel_set_mode() take only atomic state as argument drm/i915: Set mode_changed for audio in intel_modeset_pipe_config() drm/i915: Support modeset across multiple pipes drm/i915: Move cdclk and pll setup to intel_modeset_compute_config(), v2. drm/i915: Read hw state into an atomic state struct, v2. i915: Set ddi_pll_sel in DP MST path Andrzej Hajda (13): drm/exynos/hdmi: fix edid memory leak drm/exynos/mixer: fix interrupt clearing drm/exynos/mixer: correct vsync configuration sequence drm/exynos/mixer: always update INT_EN cache drm/exynos/hdmi: remove old platform data code drm/exynos/hdmi: Simplify HPD gpio handling drm/exynos/hdmi: remove private lock code drm/exynos/hdmi: add driver data pointer to private context drm/exynos/hdmi: remove redundant configuration fields drm/exynos/hdmi: remove hdmi_v13_conf struct drm/exynos/hdmi: remove hdmi_v14_conf struct drm/exynos/mixer: simplify poweron flag drm/exynos/mixer: replace MXR_INT_EN register cache with flag Animesh Manna (1): drm/i915/gen9: Removed byte swapping for csr firmware Antti Koskipaa (1): drm/i915: Per-DDI I_boost override Archit Taneja (35): drm/fb_helper: Add drm_fb_helper functions to manage fb_info creation drm/fb_helper: Create a wrapper for unlink_framebuffer drm/fb_helper: Create wrappers for fb_sys_read/write funcs drm/fb_helper: Create wrappers for blit, copyarea and fillrect funcs drm/fb_helper: Create a wrapper for fb_set_suspend drm/rockchip: Use new drm_fb_helper functions drm/armada: Use new drm_fb_helper functions drm/ast: Use new drm_fb_helper functions drm/tegra: Use new drm_fb_helper functions drm/msm: Use new drm_fb_helper functions drm/exynos: Use new drm_fb_helper functions drm/gma500: Use new drm_fb_helper functions drm/qxl: Use new drm_fb_helper functions drm/udl: Use new drm_fb_helper functions drm/fb_cma_helper: Use new drm_fb_helper functions drm/cirrus: Use new drm_fb_helper functions drm/omap: Use new drm_fb_helper functions drm/mgag200: Use new drm_fb_helper functions drm/radeon: Use new drm_fb_helper functions drm/i915: Use new drm_fb_helper functions drm/nouveau: Use new drm_fb_helper functions drm/bochs: Use new drm_fb_helper functions drm/amdgpu: Use new drm_fb_helper functions drm/virtio: Use new drm_fb_helper functions drm: Add top level Kconfig option for DRM fbdev emulation drm/msm: mdp4: Fix drm_framebuffer dereference crash drm/msm/dsi: Report PHY errors only when they really occur drm/msm: dsi host: add missing of_node_put() drm/msm: dsi host: Use device graph parsing to parse connected panel drm/msm: mdp4 lvds: get panel node via of graph parsing drm/msm/dsi: Make TE gpio optional drm/msm/dsi: Refer to connected device as 'device' instead of 'panel' drm/msm/dsi: Create a helper to check if there is a connected device drm/msm/dsi: Allow dsi to connect to an external bridge drm/msm/dsi: Modify dsi manager bridge ops to work with external bridges Arun Siluvery (15): drm/i915/gen8: Add infrastructure to initialize WA batch buffers drm/i915/gen8: Re-order init pipe_control in lrc mode drm/i915/gen8: Add WaDisableCtxRestoreArbitration workaround drm/i915/gen8: Add WaFlushCoherentL3CacheLinesAtContextSwitch workaround drm/i915: Fix warnings reported by 0-day drm/i915: Bail out early if WA batch is not available for given Gen drm/i915/gen8: Add WaClearSlmSpaceAtContextSwitch workaround drm/i915: Update WaFlushCoherentL3CacheLinesAtContextSwitch drm/i915: Update wa_ctx_emit() macro as per kernel coding guidelines drm/i915: Enable WA batch buffers for Gen9 drm/i915/gen9: Add WaDisableCtxRestoreArbitration workaround drm/i915/gen9: Add WaFlushCoherentL3CacheLinesAtContextSwitch workaround drm/i915/gen9: Add WaSetDisablePixMaskCammingAndRhwoInCommonSliceChicken drm/i915: Add provision to extend Golden context batch drm/i915:skl: Add WaEnableGapsTsvCreditFix Bas Nieuwenhuizen (1): drm/amdgpu: wait on page directory changes. v2 Ben Goz (8): drm/amdgpu: Add amdgpu <--> amdkfd gfx8 interface drm/amdkfd: add supported CZ devices PCI IDs to amdkfd drm/amdkfd: add CP HWS packet headers for VI drm/amdkfd: add support for VI in MQD manager drm/amdkfd: Add support for VI in DQM drm/amdkfd: fix runlist length calculation drm/amdkfd: Implement create_map_queues() for Carrizo drm/amdkfd: Set correct doorbell packet type for Carrizo Ben Skeggs (263): remove unnecessary include drm/nouveau/pm: swap perfmon/perfdom code to avoid forward decl in next commit drm/nouveau/pm: stack perfdom class under perfmon drm/nouveau/bios/dcb: accept "maxwell" lane count values for dcb 4.0 drm/nouveau/bios/dp: use alternate set of drvctl values where necessary drm/nouveau/disp/dp: fix some tx_pu mishandling drm/nouveau/disp/dp: gm1xx appears to have same dp lane ordering as gm2xx drm/nouveau/pmu/gk104: implement a hackish workaround for a hw bug drm/nouveau/lib: various tweaks drm/nouveau/subdev: add direct pointer to nvkm_device drm/nouveau/device: add direct pointers to subdevs from nvkm_device drm/nouveau/device: add direct pointer to struct device drm/nouveau/device: include core/device.h automatically for subdevs/engines drm/nouveau/bar: cosmetic changes drm/nouveau/bios: cosmetic changes drm/nouveau/bus: cosmetic changes drm/nouveau/clk: cosmetic changes drm/nouveau/devinit: cosmetic changes drm/nouveau/fb: cosmetic changes drm/nouveau/fuse: cosmetic changes drm/nouveau/gpio: cosmetic changes drm/nouveau/i2c: cosmetic changes drm/nouveau/ibus: cosmetic changes drm/nouveau/imem: cosmetic changes drm/nouveau/ltc: cosmetic changes drm/nouveau/mc: cosmetic changes drm/nouveau/mmu: cosmetic changes drm/nouveau/mxm: cosmetic changes drm/nouveau/pmu: cosmetic changes drm/nouveau/therm: cosmetic changes drm/nouveau/tmr: cosmetic changes drm/nouveau/volt: cosmetic changes drm/nouveau/falcon: cosmetic changes drm/nouveau/xtensa: cosmetic changes drm/nouveau/bsp: cosmetic changes drm/nouveau/ce: cosmetic changes drm/nouveau/cipher: cosmetic changes drm/nouveau/disp: cosmetic changes drm/nouveau/dma: cosmetic changes drm/nouveau/fifo: cosmetic changes drm/nouveau/gr: cosmetic changes drm/nouveau/mpeg: cosmetic changes drm/nouveau/mspdec: cosmetic changes drm/nouveau/msppp: cosmetic changes drm/nouveau/msvld: cosmetic changes drm/nouveau/pm: cosmetic changes drm/nouveau/sec: cosmetic changes drm/nouveau/sw: cosmetic changes drm/nouveau/vp: cosmetic changes drm/nouveau/device: type-safe register accessor macros drm/nouveau/core: switch to device pri macros drm/nouveau/bar: switch to device pri macros drm/nouveau/bios: switch to device pri macros drm/nouveau/bus: switch to device pri macros drm/nouveau/clk: switch to device pri macros drm/nouveau/devinit: switch to device pri macros drm/nouveau/fb: switch to device pri macros drm/nouveau/fuse: switch to device pri macros drm/nouveau/gpio: switch to device pri macros drm/nouveau/i2c: switch to device pri macros drm/nouveau/ibus: switch to device pri macros drm/nouveau/imem: switch to device pri macros drm/nouveau/ltc: switch to device pri macros drm/nouveau/mc: switch to device pri macros drm/nouveau/mmu: switch to device pri macros drm/nouveau/pmu: switch to device pri macros drm/nouveau/therm: switch to device pri macros drm/nouveau/tmr: switch to device pri macros drm/nouveau/falcon: switch to device pri macros drm/nouveau/xtensa: switch to device pri macros drm/nouveau/ce: switch to device pri macros drm/nouveau/cipher: switch to device pri macros drm/nouveau/device: switch to device pri macros drm/nouveau/disp: switch to device pri macros drm/nouveau/fifo: switch to device pri macros drm/nouveau/gr: switch to device pri macros drm/nouveau/mpeg: switch to device pri macros drm/nouveau/mspdec: switch to device pri macros drm/nouveau/msppp: switch to device pri macros drm/nouveau/msvld: switch to device pri macros drm/nouveau/pm: switch to device pri macros drm/nouveau/sec: switch to device pri macros drm/nouveau/sw: switch to device pri macros drm/nouveau/kms/nv04: fix incorrect use of register accessors drm/nouveau/tmr: type-safe PTIMER-based delay/wait macros drm/nouveau/bar: switch to new-style timer macros drm/nouveau/bus: switch to new-style timer macros drm/nouveau/clk: switch to new-style timer macros drm/nouveau/fb: switch to new-style timer macros drm/nouveau/ibus: switch to new-style timer macros drm/nouveau/ltc: switch to new-style timer macros drm/nouveau/mmu: switch to new-style timer macros drm/nouveau/pmu: switch to new-style timer macros drm/nouveau/falcon: switch to new-style timer macros drm/nouveau/disp: switch to new-style timer macros drm/nouveau/fifo: switch to new-style timer macros drm/nouveau/gr: switch to new-style timer macros drm/nouveau/mpeg: switch to new-style timer macros drm/nouveau: switch to new-style timer macros drm/nouveau/core: type-safe printk macros drm/nouveau/bar: switch to subdev printk macros drm/nouveau/bios: switch to subdev printk macros drm/nouveau/bus: switch to subdev printk macros drm/nouveau/clk: switch to subdev printk macros drm/nouveau/devinit: switch to subdev printk macros drm/nouveau/fb: switch to subdev printk macros drm/nouveau/i2c: switch to subdev printk macros drm/nouveau/ibus: switch to subdev printk macros drm/nouveau/imem: switch to subdev printk macros drm/nouveau/ltc: switch to subdev printk macros drm/nouveau/mc: switch to subdev printk macros drm/nouveau/mmu: switch to subdev printk macros drm/nouveau/mxm: switch to subdev printk macros drm/nouveau/pmu: switch to subdev printk macros drm/nouveau/therm: switch to subdev printk macros drm/nouveau/tmr: switch to subdev printk macros drm/nouveau/volt: switch to subdev printk macros drm/nouveau/falcon: switch to subdev printk macros drm/nouveau/xtensa: switch to subdev printk macros drm/nouveau/ce: switch to subdev printk macros drm/nouveau/cipher: switch to subdev printk macros drm/nouveau/device: switch to dev_printk macros drm/nouveau/disp: switch to subdev printk macros drm/nouveau/fifo: switch to subdev printk macros drm/nouveau/gr: switch to subdev printk macros drm/nouveau/mpeg: switch to subdev printk macros drm/nouveau/pm: switch to subdev printk macros drm/nouveau/sec: switch to subdev printk macros drm/nouveau: use dev_* for logging drm/nouveau/core: remove last printks drm/nouveau/bios: remove object accessor functions drm/nouveau/fuse: remove object accessor functions drm/nouveau/imem: remove object accessor functions drm/nouveau/falcon: remove object accessor functions drm/nouveau/xtensa: remove object accessor functions drm/nouveau/gpuobj: type-safe accessor macros drm/nouveau/core: switch to gpuobj accessor macros drm/nouveau/bar: switch to gpuobj accessor macros drm/nouveau/mmu: switch to gpuobj accessor macros drm/nouveau/falcon: switch to gpuobj accessor macros drm/nouveau/xtensa: switch to gpuobj accessor macros drm/nouveau/cipher: switch to gpuobj accessor macros drm/nouveau/dma: switch to gpuobj accessor macros drm/nouveau/fifo: switch to gpuobj accessor macros drm/nouveau/gr: switch to gpuobj accessor macros drm/nouveau/mpeg: switch to gpuobj accessor macros drm/nouveau/core: wrap direct use of object accessor functions drm/nouveau/imem: use object accessor function for suspend/resume drm/nouveau/vga: require nvkm_device pointer in accessor functions drm/nouveau/fb: transition nvkm_ram away from being based on nvkm_object drm/nouveau/i2c: transition pad/ports away from being based on nvkm_object drm/nouveau/disp: transition outp/conn away from being based on nvkm_object drm/nouveau/platform: remove subclassing of nvkm_device drm/nouveau/client: tidy ctor/dtor interfaces drm/nouveau/device: tidy ctor/dtor interfaces drm/nouveau/bin: punt client/device argument handling into a common helper drm/nouveau/device: simplify subdev construction drm/nouveau/device: split user device implementation out on its own drm/nouveau/device: decouple from engine machinery drm/nouveau/object: store object type data outside of handle drm/nouveau/parent: remove some (now) unnecessary special-case handling drm/nouveau/client: store default device by handle, not reference drm/nouveau/nvif: simplify and tidy library interfaces drm/nouveau/nvif: replace path-based object identification drm/nouveau/nvif: extend nop ioctl to return nvif version identifier drm/nouveau/nvif: return success from sclass even for objects without children drm/nouveau/nvif: use negative oclass identifier for internal classes drm/nouveau/nvif: assign internal class identifiers to sw classes drm/nouveau/nvif: return min/max versions for supported object classes drm/nouveau/nvif: add supported engines query to kepler gpfifo class drm/nouveau/nvif: return chipset/board names from device info method drm/nouveau/nvif: replace pushbuf with vm in fermi/kepler gpfifo class args drm/nouveau/nvif: device time mthd drm/nouveau/object: rename some functions to avoid upcoming conflicts drm/nouveau/subdev: rename some functions to avoid upcoming conflicts drm/nouveau/engine: rename some functions to avoid upcoming conflicts drm/nouveau/object: implement support for new-style nvkm_object drm/nouveau/subdev: implement support for new-style nvkm_subdev drm/nouveau/engine: implement support for new-style nvkm_engine drm/nouveau/device: separate construction of pci/tegra devices drm/nouveau/device: prepare for new-style subdevs drm/nouveau/core: prepare for new-style objects drm/nouveau/mmu: protect each vm with its own mutex drm/nouveau/imem: improve management of instance memory drm/nouveau/mmu: directly use instmem for page tables drm/nouveau/bar/gf100: directly use instmem for channel descriptors drm/nouveau/imem/nv04-nv40: directly use instmem for vbios/ramfc/ramro drm/nouveau/falcon: directly use instmem for ucode image drm/nouveau/xtensa: directly use instmem for ucode image drm/nouveau/fifo: directly use instmem for runlists and polling areas drm/nouveau/gr: directly use instmem where currently possible drm/nouveau/gpuobj: separate allocation from nvkm_object drm/nouveau/ramht: remove dependence on namedb drm/nouveau/sw/nv04: replace direct context access with GetRef method drm/nouveau/sw: turn flip completion into an event drm/nouveau/fb: remove dependence on namedb/engctx lookup drm/nouveau/falcon: remove dependence on namedb/engctx lookup drm/nouveau/cipher: remove dependence on namedb/engctx lookup drm/nouveau/fifo: remove dependence on namedb/engctx lookup drm/nouveau/gr: remove dependence on namedb/engctx lookup drm/nouveau/mpeg: remove dependence on namedb/engctx lookup drm/nouveau/sw: remove dependence on namedb/engctx lookup drm/nouveau/client: convert to new-style nvkm_object drm/nouveau/device: convert user class to new-style nvkm_object drm/nouveau/device: convert ctrl class to new-style nvkm_object drm/nouveau/dma: split user classes out from engine implementations drm/nouveau/dma: convert user classes to new-style nvkm_object drm/nouveau/disp: split user classes out from engine implementations drm/nouveau/disp: convert user classes to new-style nvkm_object drm/nouveau/fifo: split user classes out from engine implementations drm/nouveau/fifo: convert user classes to new-style nvkm_object drm/nouveau/falcon: convert user classes to new-style nvkm_object drm/nouveau/xtensa: convert user classes to new-style nvkm_object drm/nouveau/ce: convert user classes to new-style nvkm_object drm/nouveau/cipher: convert user classes to new-style nvkm_object drm/nouveau/gr: convert user classes to new-style nvkm_object drm/nouveau/mpeg: convert user classes to new-style nvkm_object drm/nouveau/pm: convert user classes to new-style nvkm_object drm/nouveau/sw: convert user classes to new-style nvkm_object drm/nouveau/core: kill some (now) dead code drm/nouveau/bar: convert to new-style nvkm_subdev drm/nouveau/bios: convert to new-style nvkm_subdev drm/nouveau/bus: convert to new-style nvkm_subdev drm/nouveau/clk: convert to new-style nvkm_subdev drm/nouveau/devinit: convert to new-style nvkm_subdev drm/nouveau/fb: convert to new-style nvkm_subdev drm/nouveau/fuse: convert to new-style nvkm_subdev drm/nouveau/gpio: convert to new-style nvkm_subdev drm/nouveau/i2c: convert to new-style nvkm_subdev drm/nouveau/ibus: convert to new-style nvkm_subdev drm/nouveau/devinit: run devinit scripts right after preinit drm/nouveau/imem: convert to new-style nvkm_subdev drm/nouveau/ltc: convert to new-style nvkm_subdev drm/nouveau/mc: convert to new-style nvkm_subdev drm/nouveau/mmu: convert to new-style nvkm_subdev drm/nouveau/mxm: convert to new-style nvkm_subdev drm/nouveau/pmu: convert to new-style nvkm_subdev drm/nouveau/therm: convert to new-style nvkm_subdev drm/nouveau/tmr: convert to new-style nvkm_subdev drm/nouveau/volt: convert to new-style nvkm_subdev drm/nouveau/falcon: convert to new-style nvkm_engine drm/nouveau/xtensa: convert to new-style nvkm_engine drm/nouveau/ce: convert to new-style nvkm_engine drm/nouveau/cipher: convert to new-style nvkm_engine drm/nouveau/dma: convert to new-style nvkm_engine drm/nouveau/disp: convert to new-style nvkm_engine drm/nouveau/fifo: convert to new-style nvkm_engine drm/nouveau/gr: convert to new-style nvkm_engine drm/nouveau/pm: convert to new-style nvkm_engine drm/nouveau/sw: convert to new-style nvkm_engine drm/nouveau/mpeg: convert to new-style nvkm_engine drm/nouveau/core: remove the remainder of the previous style drm/nouveau/object: merge with handle drm/nouveau/pci: new subdev drm/nouveau/mc: abstract interface to master intr registers drm/nouveau/mc/gf100-: handle second interrupt tree drm/nouveau/mc: move device irq handling to platform-specific code drm/nouveau/device: cleaner abstraction for device resource functions drm/nouveau/device: import pciid list and integrate quirks with it drm/nouveau/device: remove pci/platform_device from common struct drm/nouveau/pci: merge agp handling from nouveau drm drm/nouveau/tegra: merge platform setup from nouveau drm drm/nouveau: bump driver version for release Benjamin Gaignard (1): drm: sti: fix sub-components bind Bob Paauwe (2): drm/i915: Add the ddi get cdclk code for BXT (v3) drm/i915: Update rps frequencies for BXT Boris Brezillon (6): drm: atmel-hlcdc: add PRIME support drm: atmel-hlcdc: add the missing DRM_ATOMIC flag drm: atmel-hlcdc: add RGB565 and RGB444 output support drm: atmel-hlcdc: add support for at91sam9x5 SoCs drm: atmel-hlcdc: add support for at91sam9n12 SoC drm: atmel-hlcdc: add support for sama5d4 SoCs Chad Versace (1): drm/fourcc: Add formats R8, RG88, GR88 Chandra Konduru (1): drm/i915: Delete duplicate #defines added for DCx Charmaine Lee (1): drm/vmwgfx: Command parser fixes for DX Chris Wilson (9): drm/i915: Fix build without CONFIG_PM drm/i915: Report to userspace if we have a (presumed) working GPU reset drm/i915: Enforce execobject.alignment to be a power-of-two drm/i915: Ignore LVDS presence in VBT flag if the LVDS is enabled by BIOS drm/i915: Remove KMS Kconfig option drm/i915: Report an error when i915.reset prevents a reset drm/i915: Keep the mm.bound_list in rough LRU order drm/i915: Report IOMMU enabled status for GPU hangs drm/i915: Remove the failed context from the fpriv->context_idr Christian König (67): drm/amdgpu: deal with foreign fences in amdgpu_sync drm/amdgpu: add user fence context map v2 drm/amdgpu: remove amdgpu_fence_recreate drm/amdgpu: fix context memory leak drm/amdgpu: fix signed overrun in amdgpu_ctx_get_fence drm/amdgpu: no updates shouldn't cause vm flush v2 drm/amdgpu: rework vm_grab_id interface drm/amdgpu: fix UVD/VCE fence handling drm/amdgpu: fix syncing to VM updates drm/amdgpu: stop using addr to check for BO move v3 drm/amdgpu: clean up amd sched wait_ts and wait_signal drm/amdgpu: reorder the code to avoid forward declerations drm/amdgpu: fix bo list handling in CS drm/amdgpu: cleanup ctx_mgr init/fini drm/amdgpu: stop leaking the ctx id into the scheduler v2 drm/amdgpu: cleanup amdgpu_ctx inti/fini v2 drm/amdgpu: remove unused parent entity drm/amdgpu: fix coding style in a couple of places drm/amdgpu: merge amd_sched_entity and amd_context_entity v2 drm/amdgpu: cleanup and fix scheduler fence handling v2 drm/amdgpu: remove amdgpu_fence_signaled drm/amdgpu: use the reservation obj wait for the UVD msg drm/amdgpu: remove amdgpu_fence_wait drm/amdgpu: remove duplicate amdgpu_fence_process implementation drm/amdgpu: cleanup amdgpu_fence_ring_wait_seq drm/amdgpu: remove VI hw bug workaround v3 drm/amdgpu: fix scheduler fence implementation drm/amdgpu: remove unecessary scheduler fence callbacks drm/amdgpu: remove amd_sched_wait_emit v2 drm/amdgpu: remove scheduler fence list v2 drm/amdgpu: fix UVD return code checking drm/amdgpu: fix waiting for all fences before flipping drm/amdgpu: cleanup sheduler rq handling v2 drm/amdgpu: use a spinlock instead of a mutex for the rq drm/amdgpu: free the job immediately after dispatching it drm/amdgpu: fix zeroing all IB fields manually v2 drm/amdgpu: fix CS error handling v2 drm/amdgpu: remove v_seq handling from the scheduler v2 drm/amdgpu: rework scheduler submission handling. drm/amdgpu: fix fence wait in sync_fence, instead should be in sync_rings drm/amdgpu: fix user fences when scheduler is enabled drm/amdgpu: remove some more unused entity members v2 drm/amdgpu: cleanup entity picking drm/amdgpu: fix entity wakeup race condition drm/amdgpu: fix scheduler thread creation error checking drm/amdgpu: reorder scheduler functions drm/amdgpu: cleanup a scheduler function name drm/amdgpu: remove prepare_job callback drm/amdgpu: remove sched_lock drm/amdgpu: remove unused parameters to amd_sched_create drm/amdgpu: remove the context from amdgpu_job drm/amdgpu: remove amdgpu_bo_list_clone drm/amdgpu: fix and cleanup amd_sched_entity_push_job drm/amdgpu: remove entity reference from sched fence drm/amdgpu: fix postclose order drm/amdgpu: remove entity idle timeout v2 drm/amdgpu: wake up scheduler only when neccessary drm/amdgpu: remove extra parameters from scheduler callbacks drm/amdgpu: fix wait queue handling in the scheduler drm/amdgpu: let the scheduler work more with jobs v2 drm/amdgpu: add scheduler dependency callback v2 drm/amdgpu: stop trying to suspend UVD sessions v2 drm/amdgpu: partially revert "modify amdgpu_fence_wait_any() to amdgpu_fence_wait_multiple()" v2 drm/amdgpu: fix amdgpu_bo_unreserve order in GEM_OP IOCTL v2 drm/amdgpu: use PT for VM sync on unmap drm/amdgpu: fix buffer placement under memory pressure drm/amdgpu: properly enable VM fault interrupts Christoph Hellwig (1): amdkfd: use <linux/mman.h> instead of <uapi/asm-generic/mman-common.h> Chunming Zhou (57): drm/amd: Add CGS interfaces drm/amdgpu: Implement mmio callbacks for CGS drm/amdgpu: Implement the pciconfig callbacks for CGS drm/amdgpu: add atom interfaces for CGS drm/amdgpu: implement cgs gpu memory callbacks drm/amdgpu: always enable EOP interrupt v2 drm/amdgpu: add context entity init drm/amdgpu: disable hw semaphore with scheduler drm/amdgpu: add backend implementation of gpu scheduler (v2) drm/amdgpu: add bo list copy drm/amdgpu: dispatch jobs in cs drm/amdgpu: use scheduler user seq instead of previous user seq drm/amdgpu: make sure the fence is emitted before ring to get it. drm/amdgpu: prepare job before push to sw queue for pte ring drm/amdgpu: add kernel ctx support (v2) drm/amdgpu: dispatch job for vm drm/amdgpu: add sched isr to fence process drm/amdgpu: protect fence_process from multiple context drm/amdgpu: add check for callback drm/amdgpu: wait forever for wait emit drm/amdgpu: fix seq in ctx_add_fence drm/amdgpu: add helper function for kernel submission drm/amdgpu: Use gpu scheduler for gfx ring ib test drm/amdgpu: use gpu scheduler for sdma ib test drm/amdgpu: use scheduler for UVD ib test drm/amdgpu: use scheduler for VCE ib test drm/amdgpu: use kernel fence diretly in amdgpu_bo_fence drm/amdgpu: use kernel fence for last_pt_update drm/amdgpu: change uvd ib test to use kernel fence directly drm/amdgpu: use kernel fence for vce ib test drm/amdgpu: use kernel fence in amdgpu_test drm/amdgpu: use kernel fence for gfx ib test drm/amdgpu: use kernel fence for sdma ib test drm/amdgpu: add kernel fence in ib_submit_kernel_helper drm/amdgpu: fix null pointer by previous cleanup drm/amdgpu: move sched job process from isr to fence callback Revert "drm/amdgpu: return new seq_no for amd_sched_push_job" drm/amdgpu: process sched job exactly triggered by fence signal drm/amdgpu: use amd_sched_job in its backend ops drm/amdgpu: use kernel submit helper in vm drm/amd: add scheduler fence implementation (v2) drm/amdgpu: add reference for **fence drm/amdgpu: fix unnecessary wake up drm/amdgpu: move prepare work out of scheduler to cs_ioctl drm/amdgpu: abstract amdgpu_job for scheduler drm/amdgpu: prepare job should be common code path drm/amdgpu: some clean up for cs_ioctl drm/amdgpu: don't need to use bo_list_clone any more drm/amdgpu: improve sa_bo->fence by kernel fence drm/amdgpu: add owner for sched fence drm/amdgpu: add priv data to sched drm/amdgpu: fix last_vm_update fence is not effetive for sched fence drm/amdgpu: fix no sync_wait in copy_buffer drm/amdgpu: use IB for copy buffer of eviction drm/amdgpu: use IB for fill_buffer instead of direct command drm/amdgpu: re-work sync_resv drm/amdgpu: make wait_event uninterruptible in push_job Damien Lespiau (27): drm/i915/skl: Make sure to break when not finding suitable PLL dividers drm/i915/skl: Display the WRPLL frequency we couldn't accomodate when failing drm/i915/skl: Propagate the error if we fail to find a suitable DPLL divider drm/i915/skl: Use a more idomatic early return drm/i915/skl: Factor out computing the DPLL paramaters from the dividers drm/i915/skl: Remove unnecessary () used with div_u64() drm/i915/skl: Remove unnecessary () used with abs_diff() drm/i915: Correctly prefix HSW/BDW HDMI clock functions drm/i915/skl: Don't try to store the wrong central frequency drm/i915: Make broxton_set_cdclk() static drm/i915/skl: Derive the max CDCLK from DFSM drm/i915/skl: Don't warn if reading back DPLL0 is disabled drm/i915: Don't display the boot CDCLK twice drm/i915/skl: Update the cached CDCLK at the end of set_cdclk() drm/i915/bxt: Use intel_update_cdclk() to update dev_priv->cdclk_freq drm/i915: Make pc8_status report status for all runtime PM platforms drm/i915: Add runtime PM's usage_count in i915_runtime_pm_status drm/i915: Remove unnecessary () used with WARN() drm/i915/skl: Add debug messages at the start/end of DMC firmware loading drm/i915: Make sure our labels start at column 0 drm/i915/skl: Replace the HDMI DPLL divider computation algorithm drm/i915/skl: Prefer even dividers for SKL DPLLs drm/i915/skl: Skip remaining dividers when deviation is 0 drm/i915/skl: Don't expose the top most plane on gen9 display drm/i915/skl: Drop the preliminary_hw_support flag drm/i915: Extract a intel_power_well_enable() function drm/i915: Extract a intel_power_well_disable() function Daniel Vetter (82): Merge remote-tracking branch 'origin/drm-intel-next-queued' into drm-intel-next-queued Merge branch 'topic/atomic-conversion' into drm-intel-next-queued drm/i915: Remove more ilk rc6 remnants drm/i915: Update DRIVER_DATE to 20150619 drm/i915: Fix up KMS Kconfig removal patch Merge remote-tracking branch 'airlied/drm-next' into HEAD drm/i915: Clear fb_tracking.busy_bits also for synchronous flips drm/i915: Filter out no-op frontbuffer tracking flushes drm/i915: debugfs for frontbuffer tracking drm/i915: s/update/compute/ for gmch dpll register functions drm/i915/drrs: Restrict buffer tracking to the DRRS pipe drm/i915/psr: Restrict buffer tracking to the PSR pipe drm/i915/psr: Restrict single-shot updates to the PSR pipe drm/i915: Use to_i915 in intel_frontbuffer.c drm/i915: Nuke lvds downclock support drm/i915: Unconditionally do fb tracking invalidate in set_domain drm: Convert drm_legacy_ctxbitmap_init to void return type drm: Reject DRI1 hw lock ioctl functions for kms drivers drm/crtc-helper: Fixup error handling in drm_helper_crtc_mode_set drm: reset empty state in transitional helpers drm/i915: Update DRIVER_DATE to 20150703 drm: Update plane->fb also for page_flip drm/i915: Ditch SUPPORTS_INTEGRATED_HDMI|DP and use IS_G4X instead drm/i915: s/mdelay/msleep/ drm/i915: Inline SUPPORTS_DIGITAL_OUTPUTS drm/gem: rip out drm vma accounting for gem mmaps drm/i915: Remove unused compat32 code drm/i915: Use expcitly fixed type in compat32 structs Merge tag 'drm-intel-fixes-2015-07-15' into drm-intel-next-queued drm/i915: Unconditionally check gmch pfit state drm/i915: Clarify logic for initial modeset drm/i915: Invert fastboot check drm/i915: Update DRIVER_DATE to 20150717 Partially revert "drm/i915: s/mdelay/msleep/" in ilk rps code drm: Simplify drm_for_each_legacy_plane arguments drm: Add modeset object iterators drm/probe-helper: Grab mode_config.mutex in poll_init/enable drm/fbdev-helper: Grab mode_config.mutex in drm_fb_helper_single_add_all_connectors drm: Check locking in drm_for_each_connector drm/i915: Use drm_for_each_fb in i915_debugfs.c drm: Check locking in drm_for_each_fb drm/i915: Take all modeset locks for DP MST hotplug drm/radeon: Take all modeset locks for DP MST hotplug drm: Amend connector list locking rules drm: Roll out drm_for_each_connector more drm/cma-helper: Fix locking in drm_fb_cma_debugfs_show drm: Roll out drm_for_each_{plane,crtc,encoder} drm: Stop filtering according to mode_group in getresources drm: gc now dead mode_group code drm/i915: Clean up Makefile drm/i915: Extract i915_gem_fence.c drm/i915: kerneldoc for fences drm/i915: Remove bogus kerneldoc include directive drm/i915: Move low-level swizzling code to i915_gem_fence.c drm/i915: kerneldoc for tiling IOCTL and swizzle functions drm/i915: Fake AGP is dead drm/i915: Update DRIVER_DATE to 20150731 drm/omap: Fixup compile fail drm/fbdev: Return -EBUSY when oopsing drm/fb-helper: Stop using trylocks in force_restore drm: Remove __drm_modeset_lock_all drm: Fixup locking WARNINGs in drm_mode_config_reset Merge tag 'topic/drm-misc-2015-07-28' into drm-intel-next-queued drm/gem: Be more friendly with locking checks drm/ast: Don't grab dev->struct_mutex for in mmap offset ioctl drm/bochs: Don't grab dev->struct_mutex for in mmap offset ioctl drm/mga200g: Don't grab dev->struct_mutex for in mmap offset ioctl drm/mga200g: Hold a proper reference for cursor_set drm/cirrus: Don't grab dev->struct_mutex for in mmap offset ioctl drm/cma-helper: Don't grab dev->struct_mutex for in mmap offset ioctl drm/rockchip: Don't grab dev->struct_mutex for in mmap offset ioctl drm/nouveau: Don't take dev->struct_mutex in ttm_fini drm/qxl: Don't take dev->struct_mutex in bo_force_delete drm/edid: Use ARRAY_SIZE in drm_add_modes_noedid drm/atomic: Paper over locking WARN in default_state_clear drm/atomic: Call ww_acquire_done after check phase is complete drm/i915: Use CONFIG_DRM_FBDEV_EMULATION Merge tag 'drm-intel-fixes-2015-08-14' into drm-intel-next-fixes drm/radeon: Don't take dev->struct_mutex in bo_force_delete drm/radeon: Don't take dev->struct_mutex in pm functions drm/amdgpu: Don't take dev->struct_mutex in bo_force_delete drm/amdgpu: don't grab dev->struct_mutex in pm functions Dave Airlie (38): drm/fb: drop panic handling Merge tag 'drm-amdkfd-next-2015-07-20' of git://people.freedesktop.org/~gabbayo/linux into drm-next Merge tag 'topic/drm-misc-2015-07-23' of git://anongit.freedesktop.org/drm-intel into drm-next Merge tag 'drm-intel-next-2015-07-17' of git://anongit.freedesktop.org/drm-intel into drm-next Merge tag 'topic/crc-pmic-2015-07-23' of git://anongit.freedesktop.org/drm-intel into drm-next Merge tag 'topic/connector-locking-2015-07-23' of git://anongit.freedesktop.org/drm-intel into drm-next Merge tag 'topic/drm-misc-2015-07-28' of git://anongit.freedesktop.org/drm-intel into drm-next Merge tag 'topic/drm-misc-2015-08-13' of git://anongit.freedesktop.org/drm-intel into drm-next Merge branch 'drm-sti-next-atomic-2015-08-11' of http://git.linaro.org/people/benjamin.gaignard/kernel into drm-next Merge tag 'drm-amdkfd-next-fixes-2015-08-05' of git://people.freedesktop.org/~gabbayo/linux into drm-next Merge tag 'v4.2-rc7' into drm-next Merge tag 'drm-intel-next-fixes-2015-08-16' of git://anongit.freedesktop.org/drm-intel into drm-next Merge branch 'msm-next' of git://people.freedesktop.org/~robclark/linux into drm-next Merge branch 'exynos-drm-next' of git://git.kernel.org/.../daeinki/drm-exynos into drm-next Merge tag 'drm/tegra/for-4.3-rc1' of git://anongit.freedesktop.org/tegra/linux into drm-next Merge tag 'drm/panel/for-4.3-rc1' of git://anongit.freedesktop.org/tegra/linux into drm-next Merge branch 'vmwgfx-next' of git://people.freedesktop.org/~thomash/linux into drm-next Merge branch 'drm-next-4.3' of git://people.freedesktop.org/~agd5f/linux into drm-next Merge branch 'drm-atmel-hlcdc-devel' of https://github.com/bbrezillon/linux-at91 into drm-next Merge branch 'drm-next-fsl-dcu' of https://github.com/Jianwei-Wang/linux-drm-fsl-dcu into drm-next drm/dp/mst: dump branch OUI in debugfs (v2) Merge tag 'v4.2-rc8' into drm-next Revert "drm/atomic: Call ww_acquire_done after check phase is complete" Merge branch 'drm-next-4.3' of git://people.freedesktop.org/~agd5f/linux into drm-next Merge tag 'vmwgfx-next-15-08-21' of git://people.freedesktop.org/~thomash/linux into drm-next Merge branch 'drm-dwhdmi-devel' of git://ftp.arm.linux.org.uk/~rmk/linux-arm into drm-next Merge branch 'linux-4.3' of git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-next nouveau: fix powerpc build drm/nouveau/dispnv04: fix build on powerpc Merge tag 'drm-amdkfd-next-fixes-2015-08-30' of git://people.freedesktop.org/~gabbayo/linux into drm-next Merge tag 'drm-intel-next-fixes-2015-08-28' 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 branch 'drm-next-4.3' of git://people.freedesktop.org/~agd5f/linux into drm-next Merge branch 'exynos-drm-next' of git://git.kernel.org/.../daeinki/drm-exynos into drm-next Merge tag 'vmwgfx-next-15-09-01' of git://people.freedesktop.org/~thomash/linux into drm-next Merge branch 'drm-rockchip-2015-08-26' of https://github.com/markyzq/kernel-drm-rockchip into drm-next Merge tag 'drm-intel-next-fixes-2015-09-02' of git://anongit.freedesktop.org/drm-intel into drm-next Merge branch 'drm-next-4.3' of git://people.freedesktop.org/~agd5f/linux into drm-next Dave Gordon (2): drm/i915: Add i915_gem_object_create_from_data() drm/i915: Add GuC-related header files David Weinehall (3): drm/i915: add a context parameter to {en, dis}able zero address mapping drm/i915/skl: Buffer translation improvements drm/i915: Allow parsing of variable size child device entries from VBT David Zhang (10): drm/amdgpu: Add Fiji DID 0x7300 common support drm/amdgpu: Add Fiji support to the GMC 8.5 IP module drm/amdgpu: Add Fiji support to IH module drm/amdgpu: Add Fiji smu 7.1.3 headers (v2) drm/amdgpu: Add Fiji support to SMC and DPM (v2) drm/amdgpu: Add Fiji support to the DCE 10.0 IP module (v2) drm/amdgpu: Add Fiji support to the GFX 8.0 IP module (v2) drm/amdgpu: Add Fiji support to the SDMA 3.0 IP module drm/amdgpu: Add Fiji support to the UVD 6.0 IP module drm/amdgpu: Enable the Fiji DID 0x7300 support Deepak S (1): drm/i915: Update PM interrupts before updating the freq Francisco Jerez (3): drm/i915: Fix command parser to validate multiple register access with the same command. drm/i915: Extend the parser to check register writes against a mask/value pair. drm/i915: Add SCRATCH1 and ROW_CHICKEN3 to the register whitelist. Gary Bisson (2): of: Add Okaya Electric America vendor prefix drm/panel: Add display timing for Okaya RS800480T-7X0GP Gary Wang (1): drm/i915: set CDCLK if DPLL0 enabled during resuming from S3 Gaurav K Singh (2): drm/i915: Support for higher DSI clk drm/i915: Changes required to enable DSI Video Mode on CHT Geert Uytterhoeven (2): drm/fb-helper: Clarify drm_fb_helper_restore_fbdev_mode*() drm/fb-helper: Move drm_fb_helper_force_kernel_mode() inside #ifdef Gustavo Padovan (32): drm/exynos: pass the correct pipe number drm/exynos: use KMS version of DRM vblanks functions drm/exynos: remove duplicated check for suspend drm/exynos: rename win_commit/disable to atomic-like names drm/exynos: pass struct exynos_drm_plane in update/enable drm/exynos: use drm atomic state directly drm/exynos: remove unused fields from struct exynos_drm_plane drm/exynos: unify exynos_drm_plane names with drm core drm/exynos: return return value of exynos_crtc->enable_vblank drm/exynos: split display's .dpms() into .enable() and .disable() drm/exynos: remove wrappers for phy_power_{on,off} drm/exynos: remove unused .remove() and .check_mode() ops from display drm/exynos: simplify calculation of possible CRTCs drm/exynos: remove struct exynos_drm_display drm/exynos: remove extra call to hdmi_commit() drm/exynos: remove extra call to exynos_dp_commit() drm/exynos: remove exynos_encoder's .commit() op drm/exynos: remove exynos_drm_create_enc_conn() drm/exynos: fold encoder setup into exynos_drm_load() drm/exynos: remove struct exynos_drm_encoder layer drm/exynos: don't track enabled state at exynos_crtc drm/exynos: fimd: unify call to exynos_drm_crtc_finish_pageflip() drm/exynos: add prepare and cleanup phases for planes drm/exynos: fimd: move window protect code to prepare/cleanup_plane drm/exynos: check for pending fb before finish update drm/exynos: add macro to get the address of START_S reg drm/exynos: fimd: only finish update if START == START_S drm/exynos: add atomic asynchronous commit drm/exynos: wait all planes updates to finish drm/exynos: remove wait queue for pending page flip drm/exynos: Enable atomic modesetting feature drm/exynos: remove legacy ->suspend()/resume() Hai Li (14): drm/msm/dsi: Update source PLL selection in DSI PHY drm/msm/dsi: Rename *dual panel* to *dual DSI* drm/msm/dsi: Use pinctrl in DSI driver drm/msm/dsi: Add support for msm8x94 drm/msm: Set different display size limitation on each target drm/msm/mdp5: Allocate CTL for each display interface drm/msm/mdp5: Allocate CTL0/1 for dual DSI single FLUSH drm/msm/dsi: Save/Restore PLL status across PHY reset drm/msm: Enable clocks during enable/disable_vblank() callbacks drm/msm/dsi: Specify bitmask to set source PLL drm/msm/dsi: Return void from msm_dsi_phy_disable() drm/msm/dsi: Split PHY drivers to separate files drm/msm/dsi: Make each PHY type compilation independent drm/msm/dsi: Introduce DSI configuration module Hanno Böck (2): drm/i915: Properly sort MI coomand table drm/i915: Fix command parser table validator Hans de Goede (1): drm/nouveau/nv46: Change mc subdev oclass from nv44 to nv4c Heiko Schocher (1): drm/panel: Add support for LG LG4573 480x800 4.3" panel Hyungwon Hwang (3): drm/exynos: gsc: fix wrong bitwise operation for swap detection drm/exynos: gsc: Handles the combination of rotation and flip drm/exynos: implement atomic_{begin/flush} of DECON Ilia Mirkin (2): drm/nouveau/bios: add opcodes 0x73 and 0x77 drm/nouveau/fb/sddr3: add WR/CWL values seen on a GK208 Imre Deak (13): drm/i915/bxt: fix DDI PHY vswing scale value setting drm/i915/vlv: fix RC6 residency time calculation drm/i915/gen9: fix typo when setting up the crtc scaler drm/i915/bxt: add missing DDI PLL registers to the state checking drm/i915/bxt: add PLL10 to the PLL state dumper drm/i915/vlv: move the vlv PLL helper next to its platform counterparts drm/i915: calculate the port clock rate along with other PLL params drm/i915/bxt: add DDI port HW readout support drm/i915/bxt: mask off the DPLL state checker bits we don't program drm/i915: combine i9xx_get_hpd_pins and pch_get_hpd_pins drm/i915: don't use HPD_PORT_A as an alias for HPD_NONE drm/i915/bxt: add support for HPD long/short pulse detection on HPD_PORT_A pin drm/i915: apply the PCI_D0/D3 hibernation workaround everywhere on pre GEN6 Inki Dae (2): drm/atomic: fix null pointer access to mode_fixup callback drm/exynos: fix build warning to exynos_drm_gem.c Jammy Zhou (23): drm/amdgpu: fix one warning message drm/amdgpu: add cgs_get_firmware_info interface v2 drm/amdgpu: fix some typo for cgs definitions drm/amdgpu: add some common definitions to amd_shared.h drm/amdgpu: add some pptable definitions drm/amdgpu: merge amdgpu_family.h into amd_shared.h (v2) drm/amd: add basic scheduling framework drm/amdgpu: add enable_scheduler module option drm/amdgpu: silent the message for GPU scheduler creation drm/amdgpu: add amdgpu.sched_jobs option drm/amdgpu: add amdgpu.sched_hw_submission option drm/amdgpu: some code refinement v2 drm/amdgpu: return new seq_no for amd_sched_push_job drm/amdgpu: add amd_sched_commit drm/amdgpu: make last_handled_seq atomic drm/amdgpu: add amd_sched_next_queued_seq function drm/amdgpu: add count field for the SDMA NOP packet v2 drm/amdgpu: add burst_nop flag for sdma drm/amdgpu: add AMDGPU_MAX_SDMA_INSTANCES drm/amdgpu: add amdgpu_get_sdma_instance helper function drm/amdgpu: add insert_nop ring func and default implementation drm/amdgpu: implement burst NOP for SDMA drm/amdgpu: set MEC doorbell range for Fiji Jani Nikula (30): drm/i915: reduce indent in i9xx_hpd_irq_handler drm/i915: reduce duplicate conditions in i9xx_hpd_irq_handler drm/i915: reduce indent in intel_hpd_irq_handler drm/i915: group all hotplug related fields into a new struct in dev_priv drm/i915: remove useless DP and DDI encoder ->hot_plug hooks drm/i915/dsi: remove non-op hot plug callback drm/i915: add for_each_hpd_pin to iterate over hotplug pins drm/i915: simplify conditions for skipping the 2nd hpd loop iterations drm/i915: put back the indent in intel_hpd_irq_handler drm/i915: merge the two hpd loops in intel_hpd_irq_handler to one drm/i915: simplify condition for digital port drm/i915: abstract away platform specific parts from hpd handling drm/i915/bxt: clear hpd status sticky bits earlier drm/i915: abstract hpd irq storm detection Merge remote-tracking branch 'drm-upstream/drm-next' into drm-intel-next-queued drm/i915/irq: move hotplug even debug print to second connector loop drm/i915/irq: abstract irq storm hotplug disabling drm/i915/irq: clarify irq storm related function naming drm/i915: move generic hotplug code into new intel_hotplug.c file drm/i915: reduce line width in {pch, i9xx}_get_hpd_pins() drm/i915/dsi: abstract dsi bpp derivation from pixel format drm/i915/audio: clarify HD audio documentation wrt modeset drm/i915/hotplug: document the hotplug handling in the driver drm/i915/opregion: use BUILD_BUG_ON to verify mailbox struct sizes drm/i915/opregion: add new opregion stuff drm/i915/opregion: prefer DRM logging functions over pr_warn and dev_dbg drm/i915/opregion: abstract didl and did2 getter and setter drm/i915/opregion: start using extended didl drm/i915/skl: WaIgnoreDDIAStrap is forever, always init DDI A drm/i915: fix VBT parsing for SDVO child device mapping Jarkko Sakkinen (1): drm: remove redundant code form drm_ioc32.c Jeffery Miller (1): Add radeon suspend/resume quirk for HP Compaq dc5750. Jesse Barnes (1): drm/i915: disable_shared_pll doesn't work on pre-gen5 Jianwei Wang (3): drm/layerscape: Add Freescale DCU DRM driver devicetree: Add NEC to the vendor-prefix list MAINTAINERS: Add Freescale DCU DRM driver maintainer John Harrison (54): drm/i915: Reserve ring buffer space for i915_add_request() commands drm/i915: i915_add_request must not fail drm/i915: Early alloc request in execbuff drm/i915: Set context in request from creation even in legacy mode drm/i915: Merged the many do_execbuf() parameters into a structure drm/i915: Simplify i915_gem_execbuffer_retire_commands() parameters drm/i915: Update alloc_request to return the allocated request drm/i915: Add request to execbuf params and add explicit cleanup drm/i915: Update the dispatch tracepoint to use params->request drm/i915: Update move_to_gpu() to take a request structure drm/i915: Update execbuffer_move_to_active() to take a request structure drm/i915: Add flag to i915_add_request() to skip the cache flush drm/i915: Update i915_gpu_idle() to manage its own request drm/i915: Split i915_ppgtt_init_hw() in half - generic and per ring drm/i915: Moved the for_each_ring loop outside of i915_gem_context_enable() drm/i915: Don't tag kernel batches as user batches drm/i915: Add explicit request management to i915_gem_init_hw() drm/i915: Update ppgtt_init_ring() & context_enable() to take requests drm/i915: Update i915_switch_context() to take a request structure drm/i915: Update do_switch() to take a request structure drm/i915: Update deferred context creation to do explicit request management drm/i915: Update init_context() to take a request structure drm/i915: Update render_state_init() to take a request structure drm/i915: Update i915_gem_object_sync() to take a request structure drm/i915: Update overlay code to do explicit request management drm/i915: Update queue_flip() to take a request structure drm/i915: Update add_request() to take a request structure drm/i915: Update [vma|object]_move_to_active() to take request structures drm/i915: Update l3_remap to take a request structure drm/i915: Update mi_set_context() to take a request structure drm/i915: Update a bunch of execbuffer helpers to take request structures drm/i915: Update workarounds_emit() to take request structures drm/i915: Update flush_all_caches() to take request structures drm/i915: Update switch_mm() to take a request structure drm/i915: Update ring->flush() to take a requests structure drm/i915: Update some flush helpers to take request structures drm/i915: Update ring->emit_flush() to take a request structure drm/i915: Update ring->add_request() to take a request structure drm/i915: Update ring->emit_request() to take a request structure drm/i915: Update ring->dispatch_execbuffer() to take a request structure drm/i915: Update ring->emit_bb_start() to take a request structure drm/i915: Update ring->sync_to() to take a request structure drm/i915: Update ring->signal() to take a request structure drm/i915: Update cacheline_align() to take a request structure drm/i915: Update intel_ring_begin() to take a request structure drm/i915: Update intel_logical_ring_begin() to take a request structure drm/i915: Add *_ring_begin() to request allocation drm/i915: Remove the now obsolete intel_ring_get_request() drm/i915: Remove the now obsolete 'outstanding_lazy_request' drm/i915: Move the request/file and request/pid association to creation time drm/i915: Remove 'faked' request from LRC submission drm/i915: Update a bunch of LRC functions to take requests drm/i915: Remove the now obsolete 'i915_gem_check_olr()' drm/i915: Reserve space improvements Joonyoung Shim (27): drm/exynos: remove to use ifdef CONFIG_ARM_DMA_USE_IOMMU drm/exynos: remove unnecessary checking to support iommu drm/exynos: move order to register vidi kms driver drm/exynos: remove drm_iommu_attach_device_if_possible drm/exynos: clear channels only when iommu is enabled drm/exynos: stop using sgtable in page fault handler drm/exynos: remove function convert_to_vm_err_msg drm/exynos: remove mutex locking in pagefault handler drm/exynos: remove function exynos_drm_gem_map_buf drm/exynos: stop copying sg table drm/exynos: remove unused fields of struct exynos_drm_gem_buf drm/exynos: use ERR_PTR instead of NULL in exynos_drm_gem_init drm/exynos: remove function check_gem_flags drm/exynos: remove function update_vm_cache_attr drm/exynos: remove function roundup_gem_size drm/exynos: use prime helpers drm/exynos: merge exynos_drm_buf.c to exynos_drm_gem.c drm/exynos: add render node support drm/exynos: remove exynos_drm_fb_set_buf_cnt() drm/exynos: s/exynos_gem_obj/obj in exynos_drm_fbdev.c drm/exynos: cleanup exynos_drm_fbdev_update() drm/exynos: update fb_info via only one function drm/exynos: cleanup to get gem object for fb drm/exynos: update exynos_drm_framebuffer_init() for multiple buffers drm/exynos: cleanup exynos_user_fb_create() drm/exynos: remove exynos_drm_fb_get_buf_cnt() drm/exynos: remove buf_cnt from struct exynos_drm_fb Junwei Zhang (2): drm/amdgpu: modify amdgpu_fence_wait_any() to amdgpu_fence_wait_multiple() drm/amdgpu: adjust the judgement of removing fence callback Leo Liu (1): drm/amdgpu: remove ib test for the second VCE Ring Lukas Wunner (1): drm/i915: Preserve SSC earlier Maarten Lankhorst (90): drm/i915: get rid of put_shared_dpll drm/i915: get rid of intel_crtc_disable and related code, v3 drm/i915: add intel_display_suspend, v2 drm/i915: use intel_crtc_control everywhere, v3. drm/i915: Use drm_atomic_helper_update_legacy_modeset_state, v2. drm/i915: Use crtc_state->active instead of crtc_state->enable drm/i915: Make sure all planes and connectors are added on modeset. drm/i915: update plane state during init drm/i915: do not wait for vblank when crtc is off drm/i915: calculate primary visibility changes instead of calling from set_config drm/i915: Zap call to drm_plane_helper_disable, v2. drm/i915: Use global atomic state for staged pll, config, v3. drm/i915: Use drm_atomic_helper_swap_state in intel_atomic_commit. drm/i915: Swap planes on each crtc separately, v2. drm/i915: Implement intel_crtc_control using atomic state, v4 drm/i915: Make intel_display_suspend atomic, v2. drm/i915: move swap state to the right place drm/i915: Use crtc->hwmode for vblanks, v2. drm/i915: Remove use of crtc->config from i915_debugfs.c drm/i915: Calculate haswell plane workaround, v5. drm/i915: Use atomic state for calculating DVO_2X_MODE on i830. drm/i915: use calculated state for vblank evasion Revert "drm/i915: Make intel_display_suspend atomic, v2." Revert "drm/i915: Read hw state into an atomic state struct, v2." drm/i915: Do not use atomic modesets in hw readout. drm/i915: get rid of intel_plane_restore in intel_crtc_page_flip drm/i915: Set hwmode during readout. drm/i915: Only enable cursor if it can be enabled. drm/i915: Use crtc state in intel_modeset_pipe_config drm/i915: Clean up intel_atomic_setup_scalers slightly. drm/i915: Add a simple atomic crtc check function, v2. drm/i915: Move scaler setup to check crtc function, v2. drm/i915: Assign a new pll from the crtc check function, v2. drm/i915: Split skl_update_scaler, v4. drm/i915: Split plane updates of crtc->atomic into a helper, v2. drm/i915: clean up plane commit functions drm/i915: clean up atomic plane check functions, v2. drm/i915: remove force argument from disable_plane drm/i915: move detaching scalers to begin_crtc_commit, v2. drm/i915: Move crtc commit updates to separate functions. drm/i915: Do not run most checks when there's no modeset. drm/i915: Handle disabling planes better, v2. drm/i915: atomic plane updates in a nutshell drm/i915: Update less state during modeset. drm/i915: Make setting color key atomic. drm/i915: Remove transitional references from intel_plane_atomic_check. drm/i915: Make cdclk part of the atomic state. drm/atomic: Update old_fb after setting a property. drm/atomic: Cleanup on error properly in the atomic ioctl. drm/i915: Only update state on crtc's that are part of the atomic state. drm/i915: Do not update pfit state when toggling crtc enabled. drm/i915: Do not use plane_config in intel_fbdev.c drm/i915: Allow fuzzy matching in pipe_config_compare, v2. drm/i915: Update missing properties in find_initial_plane_obj drm/i915: Remove plane_config from struct intel_crtc, v2. drm/i915: Rework plane readout. drm/i915: Fix reference leak in intel_modeset_readout_hw_state. drm/i915: Zero the mode in intel_sanitize_crtc when force disabling. drm/i915: Calculate vblank timestamping constants before enabling vblank. drm/i915: Readout initial hw mode. drm/i915: Convert resume to atomic. drm/i915: Get rid of unused transitional members. drm/i915: Update power domains on readout. drm/i915: Always force a modeset in intel_crtc_restore_mode, v2. drm/i915: Make intel_display_suspend atomic, try 2. drm/i915: fill in more mode members drm/i915: Fix noatomic crtc disabling, v2. drm/i915: Use full atomic modeset. drm/i915: Call plane update functions directly from intel_atomic_commit. drm/i915: Remove use of runtime pm in atomic commit functions drm/i915: always disable irqs in intel_pipe_update_start drm/atomic: Only update crtc->x/y if it's part of the state, v2. drm/atomic: add connectors_changed to separate it from mode_changed, v2 drm/atomic: pass old crtc state to atomic_begin/flush. drm: Make the connector dpms callback return a value, v2. drm/atomic: Update legacy DPMS state during modesets, v3. drm/core: Set mode to NULL when connectors in a set drops to 0. drm/i915: Make the force_thru workaround atomic, v2. drm/i915: Validate the state after an atomic modeset only, and pass the state. drm/i915: Update atomic state when removing mst connector, v3. drm/i915: Convert connector checking to atomic, v3. drm/i915: Remove some unneeded checks from check_crtc_state. drm/i915: Remove connectors_active from state checking. drm/i915: Make crtc checking use the atomic state, v2. drm/i915: Get rid of dpms handling. drm/i915: Remove connectors_active from sanitization, v2. drm/i915: Remove connectors_active from intel_dp.c, v2. drm/i915: Remove connectors_active. drm/i915: Only update mode related state if a modeset happened. drm/i915: Handle return value in intel_pin_and_fence_fb_obj, v2. Marc Herbert (1): drm/i915/skl: revert duplicated WaBarrierPerformanceFixDisable:skl Marek Olšák (2): drm/amdgpu: allow userspace to read more debug registers drm/amdgpu: bump the DRM version for new allowed mem-mapped registers Marek Szyprowski (2): drm/exynos/fimc: fix runtime pm support drm/exynos: Properly report supported formats for each device Mark Yao (6): drm/rockchip: vop: Fix virtual stride calculation drm/rockchip: vop: Fix window dest start point drm/rockchip: vop: Add yuv plane support drm/rockchip: vop: Default enable win2/3 area0 bit drm/rockchip: vop: restore vop registers when resume drm/rockchip: vop: support plane scale Markus Elfring (3): GPU-DRM: Delete an unnecessary check before drm_property_unreference_blob() drm/msm/dsi: Delete an unnecessary check before the function call "dsi_destroy" drm/msm/dsi: One function call less in dsi_init() after error detection Masanari Iida (1): drm: Fix warning with make xmldocs caused by drm_irq.c Mathieu Larouche (2): drm/mgag200: Add support for a new G200eW3 chipset drm/mgag200: Add support for a new rev of G200e Matt Roper (2): drm/i915: Use helper to set CRTC state's mode drm/i915: Don't dereference NULL plane while setting up scalers Michel Thierry (2): drm/i915/lrc: Update PDPx registers with lri commands drm/i915/gtt: Switch gen8_free_page_tables params Mika Kahola (1): drm/i915: Limit CHV max cdclk Mika Kuoppala (35): drm/i915/gtt: Don't leak scratch page on mapping error drm/i915/gtt: Remove _single from page table allocator drm/i915: Reset request handling for gen8+ drm/i915/gtt: Mark TLBS dirty for gen8+ drm/i915/gtt: Check va range against vm size drm/i915/gtt: Allow >= 4GB sizes for vm. drm/i915/gtt: Introduce i915_page_dir_dma_addr drm/i915/gtt: Introduce struct i915_page_dma drm/i915/gtt: Rename unmap_and_free_px to free_px drm/i915/gtt: Remove superfluous free_pd with gen6/7 drm/i915/gtt: Introduce fill_page_dma() drm/i915/gtt: Introduce kmap|kunmap for dma page drm/i915/gtt: Use macros to access dma mapped pages drm/i915/gtt: Make scratch page i915_page_dma compatible drm/i915/gtt: Pin vma during virtual address allocation drm/i915/gtt: Cleanup page directory encoding drm/i915/gtt: Move scratch_pd and scratch_pt into vm struct drm/i915/gtt: Use nonatomic bitmap ops drm/i915/gtt: Reorder page alloc/free/init functions drm/i915/gtt: Return struct i915_scratch_page from alloc_scratch drm/i915/gtt: Per ppgtt scratch page drm/i915: Convert execlist_submit_contexts() for requests drm/i915: Convert execlists_update_context() for requests drm/i915: Assign request ringbuf before pin drm/i915: Convert intel_lr_context_pin() for requests drm/i915: Convert execlists_elsp_writ() for requests drm/i915: Convert execlists_ctx_descriptor() for requests drm/i915: Mark elsps submitted when they are pushed to hw drm/i915: Fix divide by zero on watermark update drm/i915: Do kunmap if renderstate parsing fails drm/i915: Spam less on dp aux send/receive problems drm/i915/skl WaDisableSbeCacheDispatchPortSharing drm/i915: Use masked write for Context Status Buffer Pointer drm/i915: Check idle to active before processing CSQ drm/i915: Contain the WA_REG macro Neha Bhende (1): drm/vmwgfx: Add command parser support for a couple of DX commands Nick Hoath (1): drm/i915/gen9: Implement WaDisableKillLogic for gen 9 Niu,Bing (1): drm/i915: Also perform gpu reset under execlist mode. Oded Gabbay (7): drm/radeon: Modify kgd_engine_type enum to match CZ drm/amdgpu: Add H/W agnostic amdgpu <--> amdkfd interface drm/amdgpu: add amdgpu <--> amdkfd gfx7 interface drm/amdkfd: Add dependency of DRM_AMDGPU to Kconfig drm/amdkfd: Use generic defines in new amd headers drm/amdgpu: fix bug when amdkfd destroys hqd drm/amdkfd: fix bug when initializing sdma vm Patrik Jakobsson (1): drm/i915: Don't forget to mark crtc as inactive after disable Paulo Zanoni (29): drm/i915: print FBC compression status on debugfs drm/i915: add FBC_ROTATION to enum no_fbc_reason drm/i915: unify no_fbc_reason message printing drm/i915: don't set the FBC plane select bits on HSW+ drm/i915: don't increment the FBC threshold at fbc_enable drm/i915: set FDI translations to NULL on SKL drm/i915: add simple wrappers for stolen node insertion/removal drm/i915: move FBC code out of i915_gem_stolen.c drm/i915: add dev_priv->mm.stolen_lock drm/i915: add the FBC mutex drm/i915: intel_frontbuffer_flip_prepare() doesn't need struct_mutex drm/i915: intel_unregister_dsm_handler() doesn't need struct_mutex drm/i915: FBC doesn't need struct_mutex anymore drm/i915: protect FBC functions with FBC checks drm/i915: move FBC vfuncs to struct i915_fbc drm/i915: use dev_priv for the FBC functions drm/i915: use intel_crtc for the FBC functions drm/i915: add FBC_IN_DBG_MASTER no_fbc_reason drm/i915: extract FBC_MULTIPLE_PIPES check drm/i915: move set_no_fbc_reason() call out of intel_fbc_find_crtc() drm/i915: fix intel_fb_obj_flush documentation drm/i915: intel_frontbuffer_flush can now be static drm/i915: fix intel_frontbuffer_flip documentation drm/i915: fix FBC frontbuffer tracking flushing code drm/i915: don't call intel_fbc_update() at intel_unpin_work_fn() drm/i915: don't disable FBC for pipe A when flipping pipe B drm/i915: special-case dirtyfb for frontbuffer tracking drm/i915/skl: send opregion_nofify_adapter(PCI_D1) instead of PCI_D3 drm/i915: fix stolen bios_reserved checks Peter Antoine (2): drm: Turn off Legacy Context Functions drm/i915: Added Programming of the MOCS Philipp Zabel (2): drm/panel: simple: Add bus format for HannStar HSD070PWW1 LVDS panel drm/panel: simple: Correct minimum hsync length of the HannStar HSD070PWW1 panel Ramalingam C (1): drm/i915: Restarting the Idleness DRRS in drrs_flush Rob Clark (4): drm/msm: fix msm_gem_prime_get_sg_table() drm/msm: update generated headers drm/msm/hdmi: standardize on lead chip for compatible names drm/msm: don't install plane properties on crtc Rodrigo Vivi (19): drm/i915: Remove unused ring argument from frontbuffer invalidate and busy functions. drm/i915: Fix IPS related flicker drm/i915: Add origin to frontbuffer tracking flush drm/i915: PSR: Flush means invalidate + flush drm/i915: dirty fb operation flushsing frontbuffer drm/i915: PSR: Remove Low Power HW tracking mask. drm/i915: PSR: Increase idle_frames drm/i915: fbdev_set_par reliably invalidating frontbuffer drm/i915: fbdev restore mode needs to invalidate frontbuffer drm: Fix DP_TEST_COUNT_MASK drm/i915: Try to stop sink crc calculation on error. drm/i915: Don't return error on sink crc stop. drm/i915: Split sink_crc function in start, stop and read. drm/i915: VLV/CHV PSR: Increase wait delay time before active PSR. drm/i915: Set power domain for DDI-E drm/i915: Set alternate aux for DDI-E drm/i915/skl: Update DDI buffer translation programming. drm/i915/skl: Enable DDI-E drm/i915: eDP can be present on DDI-E Roy Spliet (9): drm/nouveau/bios/rammap: Pull DLLoff bit out of version 0x10 struct drm/nouveau/fb/ramnv50: Make 0x100da0 per-partition drm/nouveau/fb/ramgt215: No need to cuss like that drm/nouveau/fb/ramnv50: Ressurect timing code, use proper timing/rammap handlers drm/nouveau/bios/rammap: Parse perf mode as if it's a rammap entry drm/nouveau/bios/ramcfg: Separate out RON pull value drm/nouveau/fb/ramnv50: GDDR3 script for NVA0 drm/nouveau/fb/gddr3: Add a few CL and WR entries observed on GTX260 drm/nouveau/clk/nv50: Enable user reclocking for NVA0 Russell King (18): drm/edid: add function to help find SADs drm: imx/dw_hdmi: move phy comments drm: bridge/dw_hdmi: clean up phy configuration drm: bridge/dw_hdmi: clean up hdmi_set_clk_regenerator() drm: bridge/dw_hdmi: use drm_hdmi_avi_infoframe_from_display_mode() drm: bridge/dw_hdmi: simplify hdmi_config_AVI() a little drm: bridge/dw_hdmi: remove unused 'regmap' struct member drm: bridge/dw_hdmi: use our own drm_device drm: bridge/dw_hdmi: remove mhsyncpolarity/mvsyncpolarity/minterlaced drm: bridge/dw_hdmi: introduce interface to setting sample rate drm: bridge/dw_hdmi: introduce interfaces to enable and disable audio drm: bridge/dw_hdmi: remove pixel repetition setting for all VICs drm: bridge/dw_hdmi: don't support any pixel doubled modes drm: bridge/dw_hdmi: clean up HDMI vs DVI mode handling drm: bridge/dw_hdmi: enable audio only if sink supports audio drm: bridge/dw_hdmi: avoid enabling interface in mode_set drm: bridge/dw_hdmi: rename dw_hdmi_phy_enable_power() drm: bridge/dw_hdmi: fix phy enable/disable handling Samuel Pitoiset (30): drm/nouveau/pm: remove pmu signals drm/nouveau/pm: remove unused nvkm_perfsig_wrap() function drm/nouveau/pm: reorganize the nvif interface drm/nouveau/pm: prevent creating a perfctr object when signals are not found drm/nouveau/pm: implement NVIF_PERFMON_V0_QUERY_DOMAIN method drm/nouveau/pm: allow to query signals by domain drm/nouveau/pm: change signal iter to u16 drm/nouveau/pm: use hardware signals indexes instead of user-readable names drm/nouveau/pm: allow to monitor hardware signal index 0x00 drm/nouveau/pm: add concept of sources drm/nouveau/pm: allow to query the number of sources for a signal drm/nouveau/pm: implement NVIF_PERFMON_V0_QUERY_SOURCE method drm/nouveau/pm: allow the userspace to schedule hardware counters drm/nouveau/pm: allow to configure domains instead of simple counters drm/nouveau/pm: allow the userspace to configure sources drm/nouveau/pm/nv50: add compute and graphics signals/sources drm/nouveau/pm/gf100: allow to share GPC, HUB and PART domains drm/nouveau/pm/gf100: add compute signals/sources drm/nouveau/pm: fix signals/sources for GT200+ drm/nouveau/pm: some fixes related to sources drm/nouveau/pm: expose name of domains drm/nouveau/pm/nv40: rename pcounter domains to 'pc' instead of 'pm' drm/nouveau/pm/gk104: re-use gf100_pm_ctor() drm/nouveau/pm/gk104: add compute signals/sources drm/nouveau/pm/nv50: fix wrong addr for ZCULL source on G80:GT215 drm/nouveau/pm/nv50: TPC[0x3] must be used for PGRAPH muxs on G80 drm/nouveau/pm: allow zeroed signals to enable sources drm/nouveau/pm/gf100: remove undefined TEX.PM_UNKC8 mux drm/nouveau/pm/gf100: remove multiple definitions of GPC_DOM signal 0x0e drm/nouveau/pm/gf100: only use PBFB_BROADCAST.PM_UNK100 for PBFB signals Shobhit Kumar (8): gpiolib: Add support for removing registered consumer lookup table mfd: intel_soc_pmic_core: Add lookup table for Panel Control as GPIO signal mfd: intel_soc_pmic_crc: Add PWM cell device for Crystalcove PMIC mfd: intel_soc_pmic_core: ADD PWM lookup table for CRC PMIC based PWM pwm: crc: Add Crystalcove (CRC) PWM driver drm/i915: Use the CRC gpio for panel enable/disable drm/i915: Backlight control using CRC PMIC based PWM driver mfd: Add GPIOLIB dependency if INTEL_SOC_PMIC is to be enabled Sinclair Yeh (10): drm/vmwgfx: SVGA device definition update drm/vmwgfx: Refactor vmw_gb_surface_define_ioctl() vmwgfx: Major KMS refactoring / cleanup in preparation of screen targets drm/vmwgfx: Implement screen targets drm/vmwgfx: Replace SurfaceDMA usage with SurfaceCopy in 2D VMs drm/vmwgfx: Fixed topology boundary checking for Screen Targets drm/vmwgfx: Fix crash when unloading vmwgfx v2 drm/vmwgfx: Update device includes for DX device functionality drm/vmwgfx: Add DX query support. Various fixes. drm/vmwgfx: Fix copyright headers Sonika Jindal (2): drm/i915/bxt: edp1.4 Intermediate Freq support drm/i915: Handle HPD when it has actually occurred Srinivas Kandagatla (1): drm/msm: add calls to prepare and unprepare panel Stephane Viau (3): drm/msm/hdmi: remove ->reset() from HDMI PHY drm/msm: Add support for msm8x94 drm/msm/mdp5: add more YUV formats for MDP5 Stephen Chandler Paul (1): DRM - radeon: Don't link train DisplayPort on HPD until we get the dpcd Sudip Mukherjee (4): drm/mgag200: remove unused variables drm/mgag200: remove unneeded variable drm/i915: remove unnecessary null test drm/i915: remove redundant if check Thierry Reding (66): drm: Remove useless blank line drm: Remove two-level menu in Kconfig vgaarb: Stop complaining about absent devices vgaarb: Use vgaarb: prefix consistently in messages vgaarb: Fix a few checkpatch errors and warnings vga_switcheroo: Use pr_*() instead of printk() vga_switcheroo: Cleanup header comment vga_switcheroo: Use pr_fmt() vga_switcheroo: Wrap overly long lines vga_switcheroo: Remove unnecessary checks drm/plane: Use consistent data types for format count drm/plane: Remove redundant extern drm/irq: Remove negative CRTC index special-case drm/irq: Check for valid VBLANK before dereference drm/irq: Make pipe unsigned and name consistent drm/irq: Document return values more consistently drm/atomic: Use KMS VBLANK API gpu: host1x: mipi: Parameterize to support future SoCs gpu: host1x: mipi: Fix clock lane register for DSI gpu: host1x: mipi: Clear calibration status gpu: host1x: mipi: Constify OF match table gpu: host1x: mipi: Add Tegra132 support gpu: host1x: mipi: Add Tegra210 support gpu: host1x: mipi: Power down regulators when unused drm/tegra: Allow VBLANK to be disabled drm/tegra: Use SIMPLE_DEV_PM_OPS drm/tegra: output: Support low-active hotplug detect drm/tegra: dc: Reset VBLANK to off drm/tegra: dc: Add Tegra210 support drm/tegra: dc: Implement CRC debugfs interface drm/tegra: dc: Clarify comment about cursor treatment drm/tegra: dc: Remove gratuituous blank line drm/tegra: dc: Request syncpoint earlier drm/tegra: dc: Record statistics drm/tegra: dc: Rename register for consistency drm/tegra: dc: Don't explicitly set owner module drm/tegra: dc: Rename BASE_COLOR_SIZE* fields drm/tegra: dsi: Use proper back-porch for non-sync video mode drm/tegra: dsi: Add Tegra124 support drm/tegra: dsi: Add Tegra132 support drm/tegra: dsi: Add Tegra210 support drm/tegra: dpaux: Provide error message in probe drm/tegra: dpaux: Configure pads as I2C by default drm/tegra: dpaux: Disable interrupt when detached drm/tegra: sor: Rename registers for consistency drm/tegra: sor: Provide error messages in probe drm/tegra: sor: Set minor after debugfs initialization drm/tegra: sor: Reset the correct debugfs fields drm/tegra: sor: Constify display mode drm/tegra: sor: Write correct head state registers drm/tegra: sor: Use DRM debugfs infrastructure for CRC drm/tegra: rgb: Restore DPMS drm/tegra: hdmi: Restore DPMS drm/tegra: dsi: Restore DPMS drm/tegra: sor: Restore DPMS drm/tegra: dc: Implement atomic DPMS drm/tegra: sor: Add Tegra210 eDP support drm/tegra: sor: Add HDMI support drm/exynos: Remove PTN3460 dependency drm/panel: Add Samsung prefix to panel drivers drm/bridge: Add vendor prefixes drm/panel: simple: Add support for AUO B080UAN01 drm/bridge: Put Kconfig entries in a separate menu drm/radeon: Select BACKLIGHT_LCD_SUPPORT drm/amdgpu: Select BACKLIGHT_LCD_SUPPORT drm/i915: Fix build warning on 32-bit Thomas Hellstrom (26): drm/vmwgfx: Fix an fb unlocking bug vmwgfx: Rework device initialization drm/vmwgfx: Fix OTABLE takedown vmwgfx: Update device headers for command buffers. drm/vmwgfx: Add command buffer support v3 drm/vmwgfx: Fix an overlay lockdep error drm/vmwgfx: Add an interface to pin a resource v3 drm/vmwgfx: Add "quirk" to handling command verification exceptions drm/vmwgfx: Introduce a pin count to allow for recursive pinning v2 drm/vmwgfx: Add kms helpers for dirty- and readback functions drm/vmwgfx: Convert screen objects to the new helpers drm/vmwgfx: Convert screen targets to new helpers v3 drm/vmwgfx: Avoid cmdbuf alloc sleeping if !TASK_RUNNING drm/vmwgfx: Add a kernel interface to create a framebuffer v2 drm/vmwgfx: Implement fbdev on kms v2 drm/vmwgfx: Reinstate the legacy display system dirty callback drm/vmwgfx: Fix kms preferred mode sorting drm/vmwgfx: Kill a bunch of sparse warnings drm/vmwgfx: Fix compiler warning with 32-bit dma_addr_t drm/vmwgfx: Fix an uninitialized value drm/vmwgfx: Fix framebuffer creation on older hardware drm: export the DRM permission check code drm/vmwgfx: Initial DX support drm/vmwgfx: Fix a circular locking dependency in the fbdev code drm/vmwgfx: Remove duplicate ttm_bo_device_release drm/vmwgfx: Allow dropped masters render-node like access on legacy nodes v2 Thomas Richter (1): Fix resume from suspend on IBM X30 Thulasimani,Sivakumar (4): drm/i915: storm detection documentation update drm/i915: read bpp from vbt only for older panels drm/i915: fix checksum write for automated test reply drm/i915: fix link rates reported for SKL Tobias Jakobi (2): drm/exynos: fix size check in g2d_check_buf_desc_is_valid() drm/exynos: remove superfluous checks in g2d_check_reg_offset() Tvrtko Ursulin (5): drm/i915: Only show view type for GGTT VMAs drm/i915: Remove mostly unused variable in intel_rotate_fb_obj_pages drm/i915: Move rotated geometry calculations into the fill helper drm/i915: Return correct size for rotated views drm/i915: Report correct GGTT space usage Uwe Kleine-König (1): drm/msm/dp: use flags argument of devm_gpiod_get to set direction Vandana Kannan (2): drm/i915/bxt: eDP Panel Power sequencing drm/i915/bxt: BUNs related to port PLL Ville Syrjälä (53): drm/i915: Fix i855 get_display_clock_speed drm/i915: Fix 852GM/GMV cdclk drm/i915: Add cdclk extraction for g33, g965gm and g4x drm/i915: Warn when cdclk for the platforms is not known drm/i915: Move WaBarrierPerformanceFixDisable:skl to skl code from chv code drm/i915: Set INSTPM_FORCE_ORDERING via LRI on gen8, drop it on gen9+ drm/i915: Apply WaDisableAsyncFlipPerfMode via LRIs on gen8 drm/i915: Cache current cdclk frequency in dev_priv drm/i915: Use cached cdclk value drm/i915: Store max cdclk value in dev_priv drm/i915: Don't enable IPS when pixel rate exceeds 95% drm/i915: Add IS_BDW_ULX drm/i915: BDW clock change support drm/i915: Implement WaEnableHDMI8bpcBefore12bpc:snb, ivb drm/i915: Send GCP infoframes for deep color HDMI sinks drm/i915: Enable default_phase in GCP when possible drm/i915: Fix HDMI 12bpc TRANSCONF bpc value drm/i915: Fix 12bpc HDMI enable for IBX drm/i915: Disable all infoframes when turning off the HDMI port drm/i915: Check infoframe state more diligently. drm/i915: Fix hdmi clock readout with pixel repeat drm/i915: Double the port clock when using double clocked modes with 12bpc drm/i915: Bump CHV PFI credits to 63 when cdclk>=czclk drm/i915: Actually respect DSPSURF alignment restrictions drm/i915: Align DSPSURF to 128k on VLV/CHV drm/i915: Drop the 64k linear scanout alignment on gen2/3 drm/i915: Factor out p2 divider selection for pre-ilk platforms drm/i915: Store frontbuffer_bits in the plane drm/i915: Add debug messages for pipe enable/disable drm/i915: POSTING_READ() in intel_set_memory_cxsr() drm/i915: Split atomic wm update to pre and post variants drm/i915: Read wm values from hardware at init on CHV drm/i915: CHV DDR DVFS support and another watermark rewrite drm/i915: Compute display FIFO split dynamically for CHV drm/i915: Use the memory latency based WM computation on VLV too drm/i915: Try to make sure cxsr is disabled around plane enable/disable drm/i915: Don't do PM5/DDR DVFS with multiple pipes drm/i915: Add debugfs knobs for VLVCHV memory latency values drm/i915: Zero unused WM1 watermarks on VLV/CHV drm/i915: Fix HDMI 12bpc and pixel repeat clock readout for DDI platforms drm/i915: Bump HDMI min port clock to 25 MHz drm/i915: Account for CHV/BXT DPLL clock limitations Revert "drm/i915: Disable 12bpc hdmi for now" drm/i915: Drop a spurious intel_pre_plane_update() call drm/i915: Disable LVDS port after the pipe on PCH drm/i915: Keep GMCH DPLL VGA mode always disabled drm/i915: Apply OCD to VLV/CHV DPLL defines drm/i915: Simplify CHV pipe A power well code drm/i915: Refactor VLV display power well init/deinit drm/i915: Adjust BXT HDMI port clock limits drm/i915: Check DP link status on long hpd too drm/radeon/atom: Send out the full AUX address drm/i915: Don't use link_bw for PLL setup Vincent Abriou (4): drm/sti: fix dynamic z-ordering drm/sti: code clean up drm/sti: rename files and functions drm/sti: atomic crtc/plane update Viresh Kumar (1): drivers: gpu: Drop unlikely before IS_ERR(_OR_NULL) Vladimir Zapolskiy (1): drm: bridge/dw_hdmi: fix register I2CM_ADDRESS register name Wei Ni (1): drm/nouveau/drm/nouveau/clk: fix tstate to pstate calculation Wentao Xu (4): drm/msm: change to uninterruptible wait in atomic commit drm/msm/mdp5: release SMB (shared memory blocks) in various cases drm/msm/mdp: mark if a MDP format is YUV at definition drm/msm/mdp5: use 2 memory clients for YUV formats on newer mdp5 Xiong Zhang (3): drm/i915/skl: enable DDI-E hotplug drm/i915: Enable HDMI on DDI-E drm/i915/skl: Adding DDI_E power well domain jianwei wang (1): drm/panel: simple: Add support for NEC NL4827HC19-05B 480x272 panel jilai wang (7): drm/msm/hdmi: add hdmi hdcp support (V3) drm/msm/mdp5: Add plane blending operation support for MDP5 (v2) drm/msm/mdp: Add capabilities to MDP planes (v2) drm/msm/mdp5: Add DMA pipe planes for MDP5 drm/msm/mdp5: Add support for msm8x74v1 drm/msm/mdp5: Add rotation (hflip/vflip) support to MDP5 planes (v2) drm/msm/mdp: Clear pending interrupt status before enable interrupt monk.liu (8): drm/amdgpu: optimize amdgpu_parser_init drm/amdgpu: use kernel fence interface when possible drm/amdgpu: new implement for fence_wait_any (v2) drm/amdgpu: re-implement fence_default_wait drm/amdgpu: move wait_queue_head from adev to ring (v2) drm/amdgpu: fix type mismatch error drm/amdgpu: drop bo_list_clone when no scheduler drm/amdgpu: fix duplicated mapping invoke bug rezhu (1): drm/amdgpu: add cgs_interface for pg and cg Documentation/DocBook/drm.tmpl | 24 +- Documentation/devicetree/bindings/drm/msm/dsi.txt | 41 +- Documentation/devicetree/bindings/drm/msm/hdmi.txt | 3 +- .../bindings/gpu/nvidia,tegra20-host1x.txt | 8 +- .../devicetree/bindings/gpu/st,stih4xx.txt | 72 +- .../devicetree/bindings/panel/auo,b080uan01.txt | 7 + .../devicetree/bindings/panel/lg,lg4573.txt | 19 + .../bindings/panel/nec,nl4827hc19-05b.txt | 7 + .../bindings/panel/okaya,rs800480t-7x0gp.txt | 7 + .../devicetree/bindings/vendor-prefixes.txt | 2 + .../devicetree/bindings/video/fsl,dcu.txt | 22 + MAINTAINERS | 14 + arch/arm/configs/exynos_defconfig | 6 +- arch/arm/configs/multi_v7_defconfig | 6 +- arch/x86/configs/x86_64_defconfig | 1 - drivers/char/agp/intel-gtt.c | 4 +- drivers/gpio/gpiolib.c | 13 + drivers/gpu/drm/Kconfig | 28 +- drivers/gpu/drm/Makefile | 3 +- drivers/gpu/drm/amd/amdgpu/Makefile | 22 +- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 213 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c | 269 + drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h | 65 + drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c | 670 +++ drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c | 543 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.c | 8 +- drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c | 6 +- drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c | 838 +++ drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c | 5 + drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 283 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c | 213 +- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 36 +- drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 81 +- drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 154 +- drivers/gpu/drm/amd/amdgpu/amdgpu_drv.h | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_family.h | 62 - drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c | 49 +- drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c | 580 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c | 3 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 8 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c | 40 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ih.c | 29 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ih.h | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c | 5 + drivers/gpu/drm/amd/amdgpu/amdgpu_irq.h | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 25 +- drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 26 +- drivers/gpu/drm/amd/amdgpu/amdgpu_object.h | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 6 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c | 28 +- drivers/gpu/drm/amd/amdgpu/amdgpu_sa.c | 56 +- drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c | 128 + drivers/gpu/drm/amd/amdgpu/amdgpu_semaphore.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c | 195 +- drivers/gpu/drm/amd/amdgpu/amdgpu_test.c | 51 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 76 +- drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 156 +- drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.h | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c | 187 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vce.h | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 305 +- drivers/gpu/drm/amd/amdgpu/atombios_dp.c | 3 +- drivers/gpu/drm/amd/amdgpu/atombios_encoders.c | 2 +- drivers/gpu/drm/amd/amdgpu/cik.c | 23 +- drivers/gpu/drm/amd/amdgpu/cik_sdma.c | 95 +- drivers/gpu/drm/amd/amdgpu/cikd.h | 7 + drivers/gpu/drm/amd/amdgpu/cz_dpm.c | 4 +- drivers/gpu/drm/amd/amdgpu/dce_v10_0.c | 29 +- drivers/gpu/drm/amd/amdgpu/dce_v11_0.c | 6 +- drivers/gpu/drm/amd/amdgpu/dce_v8_0.c | 4 +- drivers/gpu/drm/amd/amdgpu/fiji_dpm.c | 181 + drivers/gpu/drm/amd/amdgpu/fiji_ppsmc.h | 182 + drivers/gpu/drm/amd/amdgpu/fiji_smc.c | 857 +++ drivers/gpu/drm/amd/amdgpu/fiji_smumgr.h | 42 + drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c | 52 +- drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 155 +- drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c | 26 +- drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c | 50 +- drivers/gpu/drm/amd/amdgpu/iceland_sdma_pkt_open.h | 5 + drivers/gpu/drm/amd/amdgpu/iceland_smc.c | 4 +- drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c | 98 +- drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c | 127 +- drivers/gpu/drm/amd/amdgpu/tonga_sdma_pkt_open.h | 5 + drivers/gpu/drm/amd/amdgpu/tonga_smc.c | 8 +- drivers/gpu/drm/amd/amdgpu/uvd_v4_2.c | 7 +- drivers/gpu/drm/amd/amdgpu/uvd_v5_0.c | 7 +- drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c | 7 +- drivers/gpu/drm/amd/amdgpu/vce_v2_0.c | 1 + drivers/gpu/drm/amd/amdgpu/vce_v3_0.c | 58 +- drivers/gpu/drm/amd/amdgpu/vi.c | 120 +- drivers/gpu/drm/amd/amdgpu/vi_dpm.h | 2 +- drivers/gpu/drm/amd/amdgpu/vid.h | 5 + drivers/gpu/drm/amd/amdkfd/Kconfig | 2 +- drivers/gpu/drm/amd/amdkfd/Makefile | 3 +- drivers/gpu/drm/amd/amdkfd/cik_regs.h | 11 - drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 2 +- drivers/gpu/drm/amd/amdkfd/kfd_device.c | 7 +- .../drm/amd/amdkfd/kfd_device_queue_manager_cik.c | 12 +- .../drm/amd/amdkfd/kfd_device_queue_manager_vi.c | 103 +- drivers/gpu/drm/amd/amdkfd/kfd_flat_memory.c | 2 +- drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_cik.c | 20 +- drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_vi.c | 249 +- drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c | 99 +- drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_vi.h | 398 ++ drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 5 + drivers/gpu/drm/amd/amdkfd/kfd_topology.h | 1 + drivers/gpu/drm/amd/include/amd_shared.h | 39 + .../gpu/drm/amd/include/asic_reg/smu/smu_7_1_3_d.h | 1246 ++++ .../drm/amd/include/asic_reg/smu/smu_7_1_3_enum.h | 1282 +++++ .../amd/include/asic_reg/smu/smu_7_1_3_sh_mask.h | 6080 ++++++++++++++++++++ .../gpu/drm/amd/{amdgpu => include}/atom-bits.h | 0 .../gpu/drm/amd/{amdgpu => include}/atom-names.h | 0 .../gpu/drm/amd/{amdgpu => include}/atom-types.h | 0 drivers/gpu/drm/amd/{amdgpu => include}/atombios.h | 0 drivers/gpu/drm/amd/include/cgs_common.h | 624 ++ drivers/gpu/drm/amd/include/cgs_linux.h | 135 + drivers/gpu/drm/amd/include/kgd_kfd_interface.h | 3 +- drivers/gpu/drm/amd/{amdgpu => include}/pptable.h | 6 +- drivers/gpu/drm/amd/include/vi_structs.h | 417 ++ drivers/gpu/drm/amd/scheduler/gpu_scheduler.c | 424 ++ drivers/gpu/drm/amd/scheduler/gpu_scheduler.h | 134 + drivers/gpu/drm/amd/scheduler/sched_fence.c | 81 + drivers/gpu/drm/armada/armada_fbdev.c | 33 +- drivers/gpu/drm/ast/ast_fb.c | 48 +- drivers/gpu/drm/ast/ast_main.c | 16 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c | 6 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c | 216 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c | 4 + drivers/gpu/drm/bochs/bochs_drv.c | 4 +- drivers/gpu/drm/bochs/bochs_fbdev.c | 36 +- drivers/gpu/drm/bochs/bochs_mm.c | 16 +- drivers/gpu/drm/bridge/Kconfig | 24 +- drivers/gpu/drm/bridge/Makefile | 4 +- drivers/gpu/drm/bridge/dw_hdmi.c | 387 +- drivers/gpu/drm/bridge/dw_hdmi.h | 8 +- .../gpu/drm/bridge/{ptn3460.c => nxp-ptn3460.c} | 0 .../gpu/drm/bridge/{ps8622.c => parade-ps8622.c} | 0 drivers/gpu/drm/cirrus/cirrus_drv.c | 4 +- drivers/gpu/drm/cirrus/cirrus_fbdev.c | 41 +- drivers/gpu/drm/cirrus/cirrus_main.c | 15 +- drivers/gpu/drm/drm_atomic.c | 90 +- drivers/gpu/drm/drm_atomic_helper.c | 125 +- drivers/gpu/drm/drm_context.c | 51 +- drivers/gpu/drm/drm_crtc.c | 229 +- drivers/gpu/drm/drm_crtc_helper.c | 75 +- drivers/gpu/drm/drm_dp_mst_topology.c | 10 + drivers/gpu/drm/drm_drv.c | 19 +- drivers/gpu/drm/drm_edid.c | 4 +- drivers/gpu/drm/drm_fb_cma_helper.c | 63 +- drivers/gpu/drm/drm_fb_helper.c | 379 +- drivers/gpu/drm/drm_gem.c | 13 +- drivers/gpu/drm/drm_gem_cma_helper.c | 10 +- drivers/gpu/drm/drm_ioc32.c | 55 +- drivers/gpu/drm/drm_ioctl.c | 3 +- drivers/gpu/drm/drm_irq.c | 332 +- drivers/gpu/drm/drm_legacy.h | 2 +- drivers/gpu/drm/drm_lock.c | 6 + drivers/gpu/drm/drm_modeset_lock.c | 59 +- drivers/gpu/drm/drm_of.c | 2 +- drivers/gpu/drm/drm_plane_helper.c | 23 +- drivers/gpu/drm/drm_probe_helper.c | 45 +- drivers/gpu/drm/exynos/Kconfig | 2 +- drivers/gpu/drm/exynos/Makefile | 7 +- drivers/gpu/drm/exynos/exynos5433_drm_decon.c | 113 +- drivers/gpu/drm/exynos/exynos7_drm_decon.c | 147 +- drivers/gpu/drm/exynos/exynos_dp_core.c | 123 +- drivers/gpu/drm/exynos/exynos_dp_core.h | 3 +- drivers/gpu/drm/exynos/exynos_drm_buf.c | 186 - drivers/gpu/drm/exynos/exynos_drm_buf.h | 33 - drivers/gpu/drm/exynos/exynos_drm_core.c | 36 - drivers/gpu/drm/exynos/exynos_drm_crtc.c | 86 +- drivers/gpu/drm/exynos/exynos_drm_crtc.h | 6 +- drivers/gpu/drm/exynos/exynos_drm_dmabuf.c | 286 - drivers/gpu/drm/exynos/exynos_drm_dmabuf.h | 20 - drivers/gpu/drm/exynos/exynos_drm_dpi.c | 111 +- drivers/gpu/drm/exynos/exynos_drm_drv.c | 224 +- drivers/gpu/drm/exynos/exynos_drm_drv.h | 134 +- drivers/gpu/drm/exynos/exynos_drm_dsi.c | 138 +- drivers/gpu/drm/exynos/exynos_drm_encoder.c | 174 - drivers/gpu/drm/exynos/exynos_drm_encoder.h | 23 - drivers/gpu/drm/exynos/exynos_drm_fb.c | 164 +- drivers/gpu/drm/exynos/exynos_drm_fb.h | 16 +- drivers/gpu/drm/exynos/exynos_drm_fbdev.c | 129 +- drivers/gpu/drm/exynos/exynos_drm_fimd.c | 182 +- drivers/gpu/drm/exynos/exynos_drm_g2d.c | 65 +- drivers/gpu/drm/exynos/exynos_drm_gem.c | 348 +- drivers/gpu/drm/exynos/exynos_drm_gem.h | 58 +- drivers/gpu/drm/exynos/exynos_drm_gsc.c | 16 + drivers/gpu/drm/exynos/exynos_drm_iommu.c | 20 +- drivers/gpu/drm/exynos/exynos_drm_iommu.h | 15 - drivers/gpu/drm/exynos/exynos_drm_ipp.c | 16 +- drivers/gpu/drm/exynos/exynos_drm_plane.c | 56 +- drivers/gpu/drm/exynos/exynos_drm_plane.h | 1 + drivers/gpu/drm/exynos/exynos_drm_vidi.c | 124 +- drivers/gpu/drm/exynos/exynos_hdmi.c | 1014 ++-- drivers/gpu/drm/exynos/exynos_mixer.c | 223 +- drivers/gpu/drm/fsl-dcu/Kconfig | 18 + drivers/gpu/drm/fsl-dcu/Makefile | 7 + drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c | 210 + drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.h | 19 + drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c | 404 ++ drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.h | 197 + drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_fbdev.c | 23 + drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_kms.c | 43 + drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_output.h | 33 + drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c | 261 + drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.h | 17 + drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c | 182 + drivers/gpu/drm/gma500/accel_2d.c | 6 +- drivers/gpu/drm/gma500/framebuffer.c | 48 +- drivers/gpu/drm/i915/Kconfig | 24 - drivers/gpu/drm/i915/Makefile | 21 +- drivers/gpu/drm/i915/dvo_ivch.c | 63 +- drivers/gpu/drm/i915/i915_cmd_parser.c | 10 +- drivers/gpu/drm/i915/i915_debugfs.c | 342 +- drivers/gpu/drm/i915/i915_dma.c | 42 +- drivers/gpu/drm/i915/i915_drv.c | 89 +- drivers/gpu/drm/i915/i915_drv.h | 298 +- drivers/gpu/drm/i915/i915_gem.c | 861 +-- drivers/gpu/drm/i915/i915_gem_context.c | 94 +- drivers/gpu/drm/i915/i915_gem_execbuffer.c | 160 +- drivers/gpu/drm/i915/i915_gem_fence.c | 787 +++ drivers/gpu/drm/i915/i915_gem_gtt.c | 732 +-- drivers/gpu/drm/i915/i915_gem_gtt.h | 64 +- drivers/gpu/drm/i915/i915_gem_render_state.c | 70 +- drivers/gpu/drm/i915/i915_gem_render_state.h | 4 +- drivers/gpu/drm/i915/i915_gem_stolen.c | 306 +- drivers/gpu/drm/i915/i915_gem_tiling.c | 303 +- drivers/gpu/drm/i915/i915_gpu_error.c | 5 + drivers/gpu/drm/i915/i915_guc_reg.h | 102 + drivers/gpu/drm/i915/i915_ioc32.c | 138 +- drivers/gpu/drm/i915/i915_irq.c | 543 +- drivers/gpu/drm/i915/i915_params.c | 24 +- drivers/gpu/drm/i915/i915_reg.h | 181 +- drivers/gpu/drm/i915/i915_suspend.c | 2 +- drivers/gpu/drm/i915/i915_sysfs.c | 22 +- drivers/gpu/drm/i915/i915_trace.h | 16 +- drivers/gpu/drm/i915/intel_atomic.c | 220 +- drivers/gpu/drm/i915/intel_atomic_plane.c | 41 +- drivers/gpu/drm/i915/intel_audio.c | 3 +- drivers/gpu/drm/i915/intel_bios.c | 232 +- drivers/gpu/drm/i915/intel_bios.h | 29 +- drivers/gpu/drm/i915/intel_crt.c | 49 +- drivers/gpu/drm/i915/intel_csr.c | 22 +- drivers/gpu/drm/i915/intel_ddi.c | 1117 ++-- drivers/gpu/drm/i915/intel_display.c | 4434 +++++++------- drivers/gpu/drm/i915/intel_dp.c | 499 +- drivers/gpu/drm/i915/intel_dp_mst.c | 39 +- drivers/gpu/drm/i915/intel_drv.h | 163 +- drivers/gpu/drm/i915/intel_dsi.c | 51 +- drivers/gpu/drm/i915/intel_dsi.h | 3 + drivers/gpu/drm/i915/intel_dsi_pll.c | 97 +- drivers/gpu/drm/i915/intel_dvo.c | 46 +- drivers/gpu/drm/i915/intel_fbc.c | 540 +- drivers/gpu/drm/i915/intel_fbdev.c | 110 +- drivers/gpu/drm/i915/intel_frontbuffer.c | 117 +- drivers/gpu/drm/i915/intel_guc_fwif.h | 245 + drivers/gpu/drm/i915/intel_hdmi.c | 446 +- drivers/gpu/drm/i915/intel_hotplug.c | 508 ++ drivers/gpu/drm/i915/intel_lrc.c | 893 ++- drivers/gpu/drm/i915/intel_lrc.h | 21 +- drivers/gpu/drm/i915/intel_lvds.c | 74 +- drivers/gpu/drm/i915/intel_mocs.c | 335 ++ drivers/gpu/drm/i915/intel_mocs.h | 57 + drivers/gpu/drm/i915/intel_opregion.c | 104 +- drivers/gpu/drm/i915/intel_overlay.c | 63 +- drivers/gpu/drm/i915/intel_panel.c | 94 +- drivers/gpu/drm/i915/intel_pm.c | 827 ++- drivers/gpu/drm/i915/intel_psr.c | 81 +- drivers/gpu/drm/i915/intel_ringbuffer.c | 408 +- drivers/gpu/drm/i915/intel_ringbuffer.h | 92 +- drivers/gpu/drm/i915/intel_runtime_pm.c | 115 +- drivers/gpu/drm/i915/intel_sdvo.c | 47 +- drivers/gpu/drm/i915/intel_sprite.c | 205 +- drivers/gpu/drm/i915/intel_tv.c | 2 +- drivers/gpu/drm/i915/intel_uncore.c | 74 +- drivers/gpu/drm/imx/dw_hdmi-imx.c | 5 + drivers/gpu/drm/mgag200/mgag200_cursor.c | 22 +- drivers/gpu/drm/mgag200/mgag200_drv.c | 1 + drivers/gpu/drm/mgag200/mgag200_drv.h | 1 + drivers/gpu/drm/mgag200/mgag200_fb.c | 41 +- drivers/gpu/drm/mgag200/mgag200_i2c.c | 1 + drivers/gpu/drm/mgag200/mgag200_main.c | 25 +- drivers/gpu/drm/mgag200/mgag200_mode.c | 221 +- drivers/gpu/drm/mgag200/mgag200_ttm.c | 8 +- drivers/gpu/drm/msm/Kconfig | 15 + drivers/gpu/drm/msm/Makefile | 15 +- drivers/gpu/drm/msm/adreno/a2xx.xml.h | 18 +- drivers/gpu/drm/msm/adreno/a3xx.xml.h | 33 +- drivers/gpu/drm/msm/adreno/a4xx.xml.h | 206 +- drivers/gpu/drm/msm/adreno/adreno_common.xml.h | 18 +- drivers/gpu/drm/msm/adreno/adreno_pm4.xml.h | 18 +- drivers/gpu/drm/msm/dsi/dsi.c | 58 +- drivers/gpu/drm/msm/dsi/dsi.h | 43 +- drivers/gpu/drm/msm/dsi/dsi.xml.h | 211 +- drivers/gpu/drm/msm/dsi/dsi_cfg.c | 92 + drivers/gpu/drm/msm/dsi/dsi_cfg.h | 44 + drivers/gpu/drm/msm/dsi/dsi_host.c | 270 +- drivers/gpu/drm/msm/dsi/dsi_manager.c | 216 +- drivers/gpu/drm/msm/dsi/mmss_cc.xml.h | 26 +- drivers/gpu/drm/msm/dsi/{ => phy}/dsi_phy.c | 413 +- drivers/gpu/drm/msm/dsi/phy/dsi_phy.h | 89 + drivers/gpu/drm/msm/dsi/phy/dsi_phy_20nm.c | 150 + drivers/gpu/drm/msm/dsi/phy/dsi_phy_28nm.c | 166 + drivers/gpu/drm/msm/dsi/pll/dsi_pll.c | 42 +- drivers/gpu/drm/msm/dsi/pll/dsi_pll.h | 9 + drivers/gpu/drm/msm/dsi/pll/dsi_pll_28nm.c | 31 +- drivers/gpu/drm/msm/dsi/sfpb.xml.h | 26 +- drivers/gpu/drm/msm/edp/edp.xml.h | 22 +- drivers/gpu/drm/msm/edp/edp_ctrl.c | 17 +- drivers/gpu/drm/msm/hdmi/hdmi.c | 79 +- drivers/gpu/drm/msm/hdmi/hdmi.h | 32 +- drivers/gpu/drm/msm/hdmi/hdmi.xml.h | 28 +- drivers/gpu/drm/msm/hdmi/hdmi_audio.c | 1 - drivers/gpu/drm/msm/hdmi/hdmi_bridge.c | 16 +- drivers/gpu/drm/msm/hdmi/hdmi_connector.c | 101 +- drivers/gpu/drm/msm/hdmi/hdmi_hdcp.c | 1437 +++++ drivers/gpu/drm/msm/hdmi/hdmi_phy_8960.c | 52 - drivers/gpu/drm/msm/hdmi/hdmi_phy_8x60.c | 32 - drivers/gpu/drm/msm/hdmi/hdmi_phy_8x74.c | 57 - drivers/gpu/drm/msm/hdmi/qfprom.xml.h | 26 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4.xml.h | 22 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c | 8 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_irq.c | 19 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c | 38 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.h | 24 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_lcdc_encoder.c | 8 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_plane.c | 9 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5.xml.h | 180 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c | 180 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.h | 13 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_cmd_encoder.c | 12 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c | 139 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_ctl.c | 243 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_ctl.h | 43 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_encoder.c | 18 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_irq.c | 19 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c | 80 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.h | 57 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_plane.c | 334 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_smp.c | 26 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_smp.h | 3 +- drivers/gpu/drm/msm/mdp/mdp_common.xml.h | 28 +- drivers/gpu/drm/msm/mdp/mdp_format.c | 46 +- drivers/gpu/drm/msm/mdp/mdp_kms.c | 3 +- drivers/gpu/drm/msm/mdp/mdp_kms.h | 20 +- drivers/gpu/drm/msm/msm_drv.c | 82 +- drivers/gpu/drm/msm/msm_drv.h | 19 + drivers/gpu/drm/msm/msm_fbdev.c | 34 +- drivers/gpu/drm/nouveau/Kbuild | 1 - drivers/gpu/drm/nouveau/dispnv04/arb.c | 2 +- drivers/gpu/drm/nouveau/dispnv04/dac.c | 45 +- drivers/gpu/drm/nouveau/dispnv04/dfp.c | 23 +- drivers/gpu/drm/nouveau/dispnv04/disp.c | 8 +- drivers/gpu/drm/nouveau/dispnv04/disp.h | 2 +- drivers/gpu/drm/nouveau/dispnv04/hw.c | 29 +- drivers/gpu/drm/nouveau/dispnv04/hw.h | 26 +- drivers/gpu/drm/nouveau/dispnv04/overlay.c | 15 +- drivers/gpu/drm/nouveau/dispnv04/tvnv04.c | 16 +- drivers/gpu/drm/nouveau/dispnv04/tvnv17.c | 30 +- drivers/gpu/drm/nouveau/dispnv04/tvnv17.h | 4 +- drivers/gpu/drm/nouveau/include/nvif/class.h | 199 +- drivers/gpu/drm/nouveau/include/nvif/client.h | 27 +- drivers/gpu/drm/nouveau/include/nvif/device.h | 73 +- drivers/gpu/drm/nouveau/include/nvif/ioctl.h | 34 +- drivers/gpu/drm/nouveau/include/nvif/notify.h | 12 +- drivers/gpu/drm/nouveau/include/nvif/object.h | 70 +- drivers/gpu/drm/nouveau/include/nvif/os.h | 7 +- drivers/gpu/drm/nouveau/include/nvkm/core/client.h | 65 +- drivers/gpu/drm/nouveau/include/nvkm/core/debug.h | 9 +- drivers/gpu/drm/nouveau/include/nvkm/core/device.h | 274 +- drivers/gpu/drm/nouveau/include/nvkm/core/devidx.h | 62 - drivers/gpu/drm/nouveau/include/nvkm/core/engctx.h | 51 - drivers/gpu/drm/nouveau/include/nvkm/core/engine.h | 81 +- drivers/gpu/drm/nouveau/include/nvkm/core/enum.h | 3 +- drivers/gpu/drm/nouveau/include/nvkm/core/gpuobj.h | 62 +- drivers/gpu/drm/nouveau/include/nvkm/core/handle.h | 34 - drivers/gpu/drm/nouveau/include/nvkm/core/memory.h | 53 + drivers/gpu/drm/nouveau/include/nvkm/core/mm.h | 3 +- drivers/gpu/drm/nouveau/include/nvkm/core/namedb.h | 53 - drivers/gpu/drm/nouveau/include/nvkm/core/object.h | 261 +- drivers/gpu/drm/nouveau/include/nvkm/core/oproxy.h | 22 + drivers/gpu/drm/nouveau/include/nvkm/core/option.h | 1 + drivers/gpu/drm/nouveau/include/nvkm/core/parent.h | 58 - drivers/gpu/drm/nouveau/include/nvkm/core/pci.h | 14 + drivers/gpu/drm/nouveau/include/nvkm/core/printk.h | 29 - drivers/gpu/drm/nouveau/include/nvkm/core/ramht.h | 28 +- drivers/gpu/drm/nouveau/include/nvkm/core/subdev.h | 139 +- drivers/gpu/drm/nouveau/include/nvkm/core/tegra.h | 35 + drivers/gpu/drm/nouveau/include/nvkm/engine/bsp.h | 4 +- drivers/gpu/drm/nouveau/include/nvkm/engine/ce.h | 17 +- .../gpu/drm/nouveau/include/nvkm/engine/cipher.h | 2 +- .../gpu/drm/nouveau/include/nvkm/engine/device.h | 30 - drivers/gpu/drm/nouveau/include/nvkm/engine/disp.h | 39 +- drivers/gpu/drm/nouveau/include/nvkm/engine/dma.h | 32 + .../gpu/drm/nouveau/include/nvkm/engine/dmaobj.h | 26 - .../gpu/drm/nouveau/include/nvkm/engine/falcon.h | 75 +- drivers/gpu/drm/nouveau/include/nvkm/engine/fifo.h | 160 +- drivers/gpu/drm/nouveau/include/nvkm/engine/gr.h | 118 +- drivers/gpu/drm/nouveau/include/nvkm/engine/mpeg.h | 63 +- .../gpu/drm/nouveau/include/nvkm/engine/mspdec.h | 9 +- .../gpu/drm/nouveau/include/nvkm/engine/msppp.h | 7 +- .../gpu/drm/nouveau/include/nvkm/engine/msvld.h | 10 +- drivers/gpu/drm/nouveau/include/nvkm/engine/pm.h | 35 +- drivers/gpu/drm/nouveau/include/nvkm/engine/sec.h | 4 +- drivers/gpu/drm/nouveau/include/nvkm/engine/sw.h | 50 +- drivers/gpu/drm/nouveau/include/nvkm/engine/vp.h | 4 +- .../gpu/drm/nouveau/include/nvkm/engine/xtensa.h | 38 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/bar.h | 29 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/bios.h | 15 +- .../gpu/drm/nouveau/include/nvkm/subdev/bios/bmp.h | 10 +- .../drm/nouveau/include/nvkm/subdev/bios/init.h | 1 + .../drm/nouveau/include/nvkm/subdev/bios/ramcfg.h | 24 +- .../drm/nouveau/include/nvkm/subdev/bios/rammap.h | 4 + drivers/gpu/drm/nouveau/include/nvkm/subdev/bus.h | 44 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/clk.h | 70 +- .../gpu/drm/nouveau/include/nvkm/subdev/devinit.h | 43 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/fb.h | 139 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/fuse.h | 26 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/gpio.h | 31 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/i2c.h | 151 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/ibus.h | 30 +- .../gpu/drm/nouveau/include/nvkm/subdev/instmem.h | 54 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/ltc.h | 37 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/mc.h | 31 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/mmu.h | 78 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/mxm.h | 30 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/pci.h | 34 + drivers/gpu/drm/nouveau/include/nvkm/subdev/pmu.h | 31 +- .../gpu/drm/nouveau/include/nvkm/subdev/therm.h | 106 +- .../gpu/drm/nouveau/include/nvkm/subdev/timer.h | 83 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/vga.h | 30 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/volt.h | 48 +- drivers/gpu/drm/nouveau/nouveau_abi16.c | 221 +- drivers/gpu/drm/nouveau/nouveau_abi16.h | 4 +- drivers/gpu/drm/nouveau/nouveau_acpi.c | 4 +- drivers/gpu/drm/nouveau/nouveau_acpi.h | 4 +- drivers/gpu/drm/nouveau/nouveau_agp.c | 195 - drivers/gpu/drm/nouveau/nouveau_agp.h | 10 - drivers/gpu/drm/nouveau/nouveau_backlight.c | 22 +- drivers/gpu/drm/nouveau/nouveau_bios.c | 44 +- drivers/gpu/drm/nouveau/nouveau_bo.c | 84 +- drivers/gpu/drm/nouveau/nouveau_chan.c | 123 +- drivers/gpu/drm/nouveau/nouveau_chan.h | 2 +- drivers/gpu/drm/nouveau/nouveau_connector.c | 40 +- drivers/gpu/drm/nouveau/nouveau_display.c | 24 +- drivers/gpu/drm/nouveau/nouveau_dma.c | 10 +- drivers/gpu/drm/nouveau/nouveau_dma.h | 2 +- drivers/gpu/drm/nouveau/nouveau_dp.c | 17 +- drivers/gpu/drm/nouveau/nouveau_drm.c | 148 +- drivers/gpu/drm/nouveau/nouveau_drm.h | 33 +- drivers/gpu/drm/nouveau/nouveau_encoder.h | 4 +- drivers/gpu/drm/nouveau/nouveau_fbcon.c | 39 +- drivers/gpu/drm/nouveau/nouveau_fence.c | 15 +- drivers/gpu/drm/nouveau/nouveau_fence.h | 2 +- drivers/gpu/drm/nouveau/nouveau_gem.c | 58 +- drivers/gpu/drm/nouveau/nouveau_hwmon.c | 10 +- drivers/gpu/drm/nouveau/nouveau_nvif.c | 8 +- drivers/gpu/drm/nouveau/nouveau_platform.c | 227 +- drivers/gpu/drm/nouveau/nouveau_platform.h | 47 +- drivers/gpu/drm/nouveau/nouveau_sysfs.c | 8 +- drivers/gpu/drm/nouveau/nouveau_ttm.c | 66 +- drivers/gpu/drm/nouveau/nouveau_vga.c | 9 +- drivers/gpu/drm/nouveau/nv04_fbcon.c | 12 +- drivers/gpu/drm/nouveau/nv04_fence.c | 6 +- drivers/gpu/drm/nouveau/nv10_fence.c | 2 +- drivers/gpu/drm/nouveau/nv17_fence.c | 4 +- drivers/gpu/drm/nouveau/nv50_display.c | 197 +- drivers/gpu/drm/nouveau/nv50_fbcon.c | 2 +- drivers/gpu/drm/nouveau/nv50_fence.c | 4 +- drivers/gpu/drm/nouveau/nv84_fence.c | 6 +- drivers/gpu/drm/nouveau/nvc0_fbcon.c | 2 +- drivers/gpu/drm/nouveau/nvif/client.c | 68 +- drivers/gpu/drm/nouveau/nvif/device.c | 55 +- drivers/gpu/drm/nouveau/nvif/notify.c | 49 +- drivers/gpu/drm/nouveau/nvif/object.c | 200 +- drivers/gpu/drm/nouveau/nvkm/core/Kbuild | 7 +- drivers/gpu/drm/nouveau/nvkm/core/client.c | 188 +- drivers/gpu/drm/nouveau/nvkm/core/engctx.c | 239 - drivers/gpu/drm/nouveau/nvkm/core/engine.c | 154 +- drivers/gpu/drm/nouveau/nvkm/core/enum.c | 28 +- drivers/gpu/drm/nouveau/nvkm/core/gpuobj.c | 379 +- drivers/gpu/drm/nouveau/nvkm/core/handle.c | 221 - drivers/gpu/drm/nouveau/nvkm/core/ioctl.c | 395 +- drivers/gpu/drm/nouveau/nvkm/core/memory.c | 64 + drivers/gpu/drm/nouveau/nvkm/core/mm.c | 2 +- drivers/gpu/drm/nouveau/nvkm/core/namedb.c | 199 - drivers/gpu/drm/nouveau/nvkm/core/object.c | 400 +- drivers/gpu/drm/nouveau/nvkm/core/oproxy.c | 200 + drivers/gpu/drm/nouveau/nvkm/core/option.c | 20 +- drivers/gpu/drm/nouveau/nvkm/core/parent.c | 159 - drivers/gpu/drm/nouveau/nvkm/core/printk.c | 103 - drivers/gpu/drm/nouveau/nvkm/core/ramht.c | 144 +- drivers/gpu/drm/nouveau/nvkm/core/subdev.c | 208 +- drivers/gpu/drm/nouveau/nvkm/engine/Kbuild | 2 +- drivers/gpu/drm/nouveau/nvkm/engine/bsp/g84.c | 79 +- drivers/gpu/drm/nouveau/nvkm/engine/ce/fuc/com.fuc | 8 +- .../drm/nouveau/nvkm/engine/ce/fuc/gf100.fuc3.h | 4 +- .../drm/nouveau/nvkm/engine/ce/fuc/gt215.fuc3.h | 4 +- drivers/gpu/drm/nouveau/nvkm/engine/ce/gf100.c | 180 +- drivers/gpu/drm/nouveau/nvkm/engine/ce/gk104.c | 174 +- drivers/gpu/drm/nouveau/nvkm/engine/ce/gm204.c | 167 +- drivers/gpu/drm/nouveau/nvkm/engine/ce/gt215.c | 144 +- drivers/gpu/drm/nouveau/nvkm/engine/ce/priv.h | 7 + drivers/gpu/drm/nouveau/nvkm/engine/cipher/g84.c | 189 +- drivers/gpu/drm/nouveau/nvkm/engine/device/Kbuild | 12 +- drivers/gpu/drm/nouveau/nvkm/engine/device/acpi.c | 8 +- drivers/gpu/drm/nouveau/nvkm/engine/device/acpi.h | 4 +- drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 2923 ++++++++-- drivers/gpu/drm/nouveau/nvkm/engine/device/ctrl.c | 82 +- drivers/gpu/drm/nouveau/nvkm/engine/device/ctrl.h | 12 + drivers/gpu/drm/nouveau/nvkm/engine/device/gf100.c | 358 -- drivers/gpu/drm/nouveau/nvkm/engine/device/gk104.c | 326 -- drivers/gpu/drm/nouveau/nvkm/engine/device/gm100.c | 190 - drivers/gpu/drm/nouveau/nvkm/engine/device/nv04.c | 89 - drivers/gpu/drm/nouveau/nvkm/engine/device/nv10.c | 204 - drivers/gpu/drm/nouveau/nvkm/engine/device/nv20.c | 131 - drivers/gpu/drm/nouveau/nvkm/engine/device/nv30.c | 153 - drivers/gpu/drm/nouveau/nvkm/engine/device/nv40.c | 427 -- drivers/gpu/drm/nouveau/nvkm/engine/device/nv50.c | 478 -- drivers/gpu/drm/nouveau/nvkm/engine/device/pci.c | 1685 ++++++ drivers/gpu/drm/nouveau/nvkm/engine/device/priv.h | 54 +- drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.c | 295 + drivers/gpu/drm/nouveau/nvkm/engine/device/user.c | 371 ++ drivers/gpu/drm/nouveau/nvkm/engine/disp/Kbuild | 86 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/base.c | 325 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/baseg84.c | 80 + .../gpu/drm/nouveau/nvkm/engine/disp/basegf119.c | 114 + .../gpu/drm/nouveau/nvkm/engine/disp/basegk104.c | 38 + .../gpu/drm/nouveau/nvkm/engine/disp/basegk110.c | 38 + .../gpu/drm/nouveau/nvkm/engine/disp/basegt200.c | 38 + .../gpu/drm/nouveau/nvkm/engine/disp/basegt215.c | 38 + .../gpu/drm/nouveau/nvkm/engine/disp/basenv50.c | 123 + .../gpu/drm/nouveau/nvkm/engine/disp/changf119.c | 49 + .../gpu/drm/nouveau/nvkm/engine/disp/channv50.c | 301 + .../gpu/drm/nouveau/nvkm/engine/disp/channv50.h | 127 + drivers/gpu/drm/nouveau/nvkm/engine/disp/conn.c | 118 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/conn.h | 61 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/coreg84.c | 117 + drivers/gpu/drm/nouveau/nvkm/engine/disp/coreg94.c | 63 + .../gpu/drm/nouveau/nvkm/engine/disp/coregf119.c | 244 + .../gpu/drm/nouveau/nvkm/engine/disp/coregk104.c | 132 + .../gpu/drm/nouveau/nvkm/engine/disp/coregk110.c | 38 + .../gpu/drm/nouveau/nvkm/engine/disp/coregm107.c | 38 + .../gpu/drm/nouveau/nvkm/engine/disp/coregm204.c | 38 + .../gpu/drm/nouveau/nvkm/engine/disp/coregt200.c | 38 + .../gpu/drm/nouveau/nvkm/engine/disp/coregt215.c | 38 + .../gpu/drm/nouveau/nvkm/engine/disp/corenv50.c | 242 + drivers/gpu/drm/nouveau/nvkm/engine/disp/cursg84.c | 37 + .../{subdev/mc/g94.c => engine/disp/cursgf119.c} | 26 +- .../{subdev/mc/gf106.c => engine/disp/cursgk104.c} | 27 +- .../gpu/drm/nouveau/nvkm/engine/disp/cursgt215.c | 37 + .../gpu/drm/nouveau/nvkm/engine/disp/cursnv50.c | 68 + drivers/gpu/drm/nouveau/nvkm/engine/disp/dacnv50.c | 63 +- .../gpu/drm/nouveau/nvkm/engine/disp/dmacgf119.c | 100 + .../gpu/drm/nouveau/nvkm/engine/disp/dmacnv50.c | 247 + .../gpu/drm/nouveau/nvkm/engine/disp/dmacnv50.h | 91 + drivers/gpu/drm/nouveau/nvkm/engine/disp/dport.c | 86 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.c | 275 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/g94.c | 139 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/gf110.c | 1310 ----- drivers/gpu/drm/nouveau/nvkm/engine/disp/gf119.c | 536 ++ drivers/gpu/drm/nouveau/nvkm/engine/disp/gk104.c | 265 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/gk110.c | 100 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.c | 100 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/gm204.c | 109 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/gt200.c | 147 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/gt215.c | 105 +- .../nvkm/engine/disp/{hdagf110.c => hdagf119.c} | 34 +- .../gpu/drm/nouveau/nvkm/engine/disp/hdagt215.c | 30 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/hdmig84.c | 55 +- .../nvkm/engine/disp/{hdmigf110.c => hdmigf119.c} | 41 +- .../gpu/drm/nouveau/nvkm/engine/disp/hdmigk104.c | 41 +- .../gpu/drm/nouveau/nvkm/engine/disp/hdmigt215.c | 55 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/nv04.c | 186 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.c | 1667 +----- drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.h | 231 +- .../{subdev/mc/nv4c.c => engine/disp/oimmg84.c} | 29 +- .../gpu/drm/nouveau/nvkm/engine/disp/oimmgf119.c | 37 + .../gpu/drm/nouveau/nvkm/engine/disp/oimmgk104.c | 37 + .../gpu/drm/nouveau/nvkm/engine/disp/oimmgt215.c | 37 + .../gpu/drm/nouveau/nvkm/engine/disp/oimmnv50.c | 68 + drivers/gpu/drm/nouveau/nvkm/engine/disp/outp.c | 127 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/outp.h | 82 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/outpdp.c | 202 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/outpdp.h | 63 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/ovlyg84.c | 77 + .../gpu/drm/nouveau/nvkm/engine/disp/ovlygf119.c | 101 + .../gpu/drm/nouveau/nvkm/engine/disp/ovlygk104.c | 103 + .../gpu/drm/nouveau/nvkm/engine/disp/ovlygt200.c | 80 + .../gpu/drm/nouveau/nvkm/engine/disp/ovlygt215.c | 38 + .../gpu/drm/nouveau/nvkm/engine/disp/ovlynv50.c | 111 + .../gpu/drm/nouveau/nvkm/engine/disp/piocgf119.c | 81 + .../gpu/drm/nouveau/nvkm/engine/disp/piocnv50.c | 83 + .../gpu/drm/nouveau/nvkm/engine/disp/piornv50.c | 165 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/priv.h | 78 +- .../nvkm/engine/{pm/gk110.c => disp/rootg84.c} | 59 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/rootg94.c | 58 + .../gpu/drm/nouveau/nvkm/engine/disp/rootgf119.c | 171 + .../gpu/drm/nouveau/nvkm/engine/disp/rootgk104.c | 58 + .../gpu/drm/nouveau/nvkm/engine/disp/rootgk110.c | 58 + .../gpu/drm/nouveau/nvkm/engine/disp/rootgm107.c | 58 + .../gpu/drm/nouveau/nvkm/engine/disp/rootgm204.c | 58 + .../gpu/drm/nouveau/nvkm/engine/disp/rootgt200.c | 58 + .../gpu/drm/nouveau/nvkm/engine/disp/rootgt215.c | 58 + .../gpu/drm/nouveau/nvkm/engine/disp/rootnv04.c | 139 + .../gpu/drm/nouveau/nvkm/engine/disp/rootnv50.c | 399 ++ .../gpu/drm/nouveau/nvkm/engine/disp/rootnv50.h | 43 + drivers/gpu/drm/nouveau/nvkm/engine/disp/sorg94.c | 95 +- .../nvkm/engine/disp/{sorgf110.c => sorgf119.c} | 83 +- .../gpu/drm/nouveau/nvkm/engine/disp/sorgm204.c | 74 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/sornv50.c | 37 +- drivers/gpu/drm/nouveau/nvkm/engine/disp/vga.c | 138 +- drivers/gpu/drm/nouveau/nvkm/engine/dma/Kbuild | 11 + drivers/gpu/drm/nouveau/nvkm/engine/dma/base.c | 157 + drivers/gpu/drm/nouveau/nvkm/engine/dma/gf100.c | 36 + drivers/gpu/drm/nouveau/nvkm/engine/dma/gf119.c | 36 + drivers/gpu/drm/nouveau/nvkm/engine/dma/nv04.c | 36 + drivers/gpu/drm/nouveau/nvkm/engine/dma/nv50.c | 36 + drivers/gpu/drm/nouveau/nvkm/engine/dma/priv.h | 18 + .../nvkm/engine/{dmaobj/base.c => dma/user.c} | 96 +- drivers/gpu/drm/nouveau/nvkm/engine/dma/user.h | 18 + .../gpu/drm/nouveau/nvkm/engine/dma/usergf100.c | 149 + .../gpu/drm/nouveau/nvkm/engine/dma/usergf119.c | 131 + drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv04.c | 133 + drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv50.c | 156 + drivers/gpu/drm/nouveau/nvkm/engine/dmaobj/Kbuild | 5 - drivers/gpu/drm/nouveau/nvkm/engine/dmaobj/gf100.c | 176 - drivers/gpu/drm/nouveau/nvkm/engine/dmaobj/gf110.c | 165 - drivers/gpu/drm/nouveau/nvkm/engine/dmaobj/nv04.c | 163 - drivers/gpu/drm/nouveau/nvkm/engine/dmaobj/nv50.c | 195 - drivers/gpu/drm/nouveau/nvkm/engine/dmaobj/priv.h | 28 - drivers/gpu/drm/nouveau/nvkm/engine/falcon.c | 292 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/Kbuild | 20 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/base.c | 345 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/chan.c | 415 ++ drivers/gpu/drm/nouveau/nvkm/engine/fifo/chan.h | 33 + drivers/gpu/drm/nouveau/nvkm/engine/fifo/chang84.c | 285 + .../gpu/drm/nouveau/nvkm/engine/fifo/changf100.h | 24 + .../gpu/drm/nouveau/nvkm/engine/fifo/changk104.h | 29 + .../gpu/drm/nouveau/nvkm/engine/fifo/channv04.h | 24 + .../gpu/drm/nouveau/nvkm/engine/fifo/channv50.c | 270 + .../gpu/drm/nouveau/nvkm/engine/fifo/channv50.h | 35 + drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmag84.c | 93 + drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv04.c | 220 + drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv10.c | 96 + drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv17.c | 97 + drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv40.c | 243 + drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv50.c | 91 + drivers/gpu/drm/nouveau/nvkm/engine/fifo/g84.c | 481 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gf100.c | 924 +-- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gf100.h | 31 + drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c | 1037 ++-- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.h | 89 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk208.c | 30 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk20a.c | 30 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm204.c | 45 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm20b.c | 44 + .../gpu/drm/nouveau/nvkm/engine/fifo/gpfifog84.c | 94 + .../gpu/drm/nouveau/nvkm/engine/fifo/gpfifogf100.c | 293 + .../gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c | 323 ++ .../gpu/drm/nouveau/nvkm/engine/fifo/gpfifogm204.c | 34 + .../gpu/drm/nouveau/nvkm/engine/fifo/gpfifonv50.c | 92 + drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv04.c | 638 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv04.h | 170 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv10.c | 153 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv17.c | 208 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv40.c | 335 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv50.c | 533 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv50.h | 39 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/priv.h | 26 + .../gpu/drm/nouveau/nvkm/engine/fifo/regsnv04.h | 132 + drivers/gpu/drm/nouveau/nvkm/engine/gr/Kbuild | 48 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c | 136 + drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf100.c | 327 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf100.h | 80 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf104.c | 15 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf108.c | 52 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf110.c | 15 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf117.c | 88 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf119.c | 15 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgk104.c | 143 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgk110.c | 15 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgk110b.c | 15 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgk208.c | 15 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgk20a.c | 80 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgm107.c | 135 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgm204.c | 119 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgm206.c | 15 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgm20b.c | 103 + drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxnv40.c | 13 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxnv40.h | 9 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxnv50.c | 25 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/g84.c | 196 + drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c | 1556 ++--- drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.h | 128 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gf104.c | 32 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gf108.c | 45 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gf110.c | 47 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gf117.c | 34 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gf119.c | 34 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gk104.c | 227 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c | 43 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110b.c | 32 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gk208.c | 43 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gk20a.c | 349 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gm107.c | 215 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gm204.c | 223 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gm206.c | 32 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gm20b.c | 83 + drivers/gpu/drm/nouveau/nvkm/engine/gr/gt200.c | 47 + drivers/gpu/drm/nouveau/nvkm/engine/gr/gt215.c | 48 + drivers/gpu/drm/nouveau/nvkm/engine/gr/mcp79.c | 46 + drivers/gpu/drm/nouveau/nvkm/engine/gr/mcp89.c | 48 + drivers/gpu/drm/nouveau/nvkm/engine/gr/nv04.c | 1213 ++-- drivers/gpu/drm/nouveau/nvkm/engine/gr/nv10.c | 824 ++- drivers/gpu/drm/nouveau/nvkm/engine/gr/nv10.h | 13 + drivers/gpu/drm/nouveau/nvkm/engine/gr/nv15.c | 59 + drivers/gpu/drm/nouveau/nvkm/engine/gr/nv17.c | 59 + drivers/gpu/drm/nouveau/nvkm/engine/gr/nv20.c | 567 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/nv20.h | 37 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/nv25.c | 220 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/nv2a.c | 180 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/nv30.c | 331 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/nv34.c | 218 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/nv35.c | 218 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/nv40.c | 590 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/nv40.h | 37 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/nv44.c | 108 + drivers/gpu/drm/nouveau/nvkm/engine/gr/nv50.c | 877 ++- drivers/gpu/drm/nouveau/nvkm/engine/gr/nv50.h | 32 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/priv.h | 38 + drivers/gpu/drm/nouveau/nvkm/engine/mpeg/g84.c | 84 +- drivers/gpu/drm/nouveau/nvkm/engine/mpeg/nv31.c | 406 +- drivers/gpu/drm/nouveau/nvkm/engine/mpeg/nv31.h | 27 +- drivers/gpu/drm/nouveau/nvkm/engine/mpeg/nv40.c | 107 +- drivers/gpu/drm/nouveau/nvkm/engine/mpeg/nv44.c | 248 +- drivers/gpu/drm/nouveau/nvkm/engine/mpeg/nv50.c | 228 +- drivers/gpu/drm/nouveau/nvkm/engine/mpeg/priv.h | 16 + drivers/gpu/drm/nouveau/nvkm/engine/mspdec/Kbuild | 2 + drivers/gpu/drm/nouveau/nvkm/engine/mspdec/base.c | 32 + drivers/gpu/drm/nouveau/nvkm/engine/mspdec/g98.c | 100 +- drivers/gpu/drm/nouveau/nvkm/engine/mspdec/gf100.c | 100 +- drivers/gpu/drm/nouveau/nvkm/engine/mspdec/gk104.c | 98 +- .../{subdev/mc/nv40.c => engine/mspdec/gt215.c} | 37 +- drivers/gpu/drm/nouveau/nvkm/engine/mspdec/priv.h | 11 + drivers/gpu/drm/nouveau/nvkm/engine/msppp/Kbuild | 2 + drivers/gpu/drm/nouveau/nvkm/engine/msppp/base.c | 31 + drivers/gpu/drm/nouveau/nvkm/engine/msppp/g98.c | 100 +- drivers/gpu/drm/nouveau/nvkm/engine/msppp/gf100.c | 100 +- drivers/gpu/drm/nouveau/nvkm/engine/msppp/gt215.c | 43 + drivers/gpu/drm/nouveau/nvkm/engine/msppp/priv.h | 9 + drivers/gpu/drm/nouveau/nvkm/engine/msvld/Kbuild | 3 + drivers/gpu/drm/nouveau/nvkm/engine/msvld/base.c | 31 + drivers/gpu/drm/nouveau/nvkm/engine/msvld/g98.c | 101 +- drivers/gpu/drm/nouveau/nvkm/engine/msvld/gf100.c | 100 +- drivers/gpu/drm/nouveau/nvkm/engine/msvld/gk104.c | 98 +- drivers/gpu/drm/nouveau/nvkm/engine/msvld/gt215.c | 43 + drivers/gpu/drm/nouveau/nvkm/engine/msvld/mcp89.c | 43 + drivers/gpu/drm/nouveau/nvkm/engine/msvld/priv.h | 11 + drivers/gpu/drm/nouveau/nvkm/engine/pm/Kbuild | 5 +- drivers/gpu/drm/nouveau/nvkm/engine/pm/base.c | 911 ++- drivers/gpu/drm/nouveau/nvkm/engine/pm/daemon.c | 108 - drivers/gpu/drm/nouveau/nvkm/engine/pm/g84.c | 126 +- drivers/gpu/drm/nouveau/nvkm/engine/pm/gf100.c | 214 +- drivers/gpu/drm/nouveau/nvkm/engine/pm/gf100.h | 16 +- drivers/gpu/drm/nouveau/nvkm/engine/pm/gf108.c | 66 + drivers/gpu/drm/nouveau/nvkm/engine/pm/gf117.c | 80 + drivers/gpu/drm/nouveau/nvkm/engine/pm/gk104.c | 154 +- drivers/gpu/drm/nouveau/nvkm/engine/pm/gt200.c | 157 + drivers/gpu/drm/nouveau/nvkm/engine/pm/gt215.c | 113 +- drivers/gpu/drm/nouveau/nvkm/engine/pm/nv40.c | 97 +- drivers/gpu/drm/nouveau/nvkm/engine/pm/nv40.h | 18 +- drivers/gpu/drm/nouveau/nvkm/engine/pm/nv50.c | 152 +- drivers/gpu/drm/nouveau/nvkm/engine/pm/priv.h | 87 +- .../gpu/drm/nouveau/nvkm/engine/sec/fuc/g98.fuc0s | 6 +- .../drm/nouveau/nvkm/engine/sec/fuc/g98.fuc0s.h | 4 +- drivers/gpu/drm/nouveau/nvkm/engine/sec/g98.c | 138 +- drivers/gpu/drm/nouveau/nvkm/engine/sw/Kbuild | 5 + drivers/gpu/drm/nouveau/nvkm/engine/sw/base.c | 110 + drivers/gpu/drm/nouveau/nvkm/engine/sw/chan.c | 111 + drivers/gpu/drm/nouveau/nvkm/engine/sw/chan.h | 26 + drivers/gpu/drm/nouveau/nvkm/engine/sw/gf100.c | 188 +- drivers/gpu/drm/nouveau/nvkm/engine/sw/nv04.c | 151 +- drivers/gpu/drm/nouveau/nvkm/engine/sw/nv10.c | 106 +- drivers/gpu/drm/nouveau/nvkm/engine/sw/nv50.c | 224 +- drivers/gpu/drm/nouveau/nvkm/engine/sw/nv50.h | 35 +- drivers/gpu/drm/nouveau/nvkm/engine/sw/nvsw.c | 85 + drivers/gpu/drm/nouveau/nvkm/engine/sw/nvsw.h | 21 + drivers/gpu/drm/nouveau/nvkm/engine/sw/priv.h | 21 + drivers/gpu/drm/nouveau/nvkm/engine/vp/g84.c | 79 +- drivers/gpu/drm/nouveau/nvkm/engine/xtensa.c | 192 +- drivers/gpu/drm/nouveau/nvkm/subdev/Kbuild | 1 + drivers/gpu/drm/nouveau/nvkm/subdev/bar/Kbuild | 1 + drivers/gpu/drm/nouveau/nvkm/subdev/bar/base.c | 133 +- drivers/gpu/drm/nouveau/nvkm/subdev/bar/g84.c | 56 + drivers/gpu/drm/nouveau/nvkm/subdev/bar/gf100.c | 205 +- drivers/gpu/drm/nouveau/nvkm/subdev/bar/gf100.h | 23 + drivers/gpu/drm/nouveau/nvkm/subdev/bar/gk20a.c | 40 +- drivers/gpu/drm/nouveau/nvkm/subdev/bar/nv50.c | 287 +- drivers/gpu/drm/nouveau/nvkm/subdev/bar/nv50.h | 26 + drivers/gpu/drm/nouveau/nvkm/subdev/bar/priv.h | 33 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/M0203.c | 25 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/M0205.c | 20 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/M0209.c | 26 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/P0260.c | 14 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/base.c | 147 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/bit.c | 14 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/boost.c | 28 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/conn.c | 30 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/cstep.c | 26 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/dcb.c | 72 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/disp.c | 36 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/dp.c | 81 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/extdev.c | 16 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c | 18 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/gpio.c | 30 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/i2c.c | 57 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/image.c | 7 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/init.c | 592 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/mxm.c | 33 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/npde.c | 11 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/pcir.c | 31 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/perf.c | 92 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/pll.c | 174 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/pmu.c | 34 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/priv.h | 1 + drivers/gpu/drm/nouveau/nvkm/subdev/bios/ramcfg.c | 14 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/rammap.c | 187 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadow.c | 116 +- .../gpu/drm/nouveau/nvkm/subdev/bios/shadowacpi.c | 8 +- .../gpu/drm/nouveau/nvkm/subdev/bios/shadowof.c | 5 +- .../gpu/drm/nouveau/nvkm/subdev/bios/shadowpci.c | 18 +- .../gpu/drm/nouveau/nvkm/subdev/bios/shadowramin.c | 36 +- .../gpu/drm/nouveau/nvkm/subdev/bios/shadowrom.c | 26 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c | 38 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/timing.c | 98 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/vmap.c | 40 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/volt.c | 52 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/xpio.c | 26 +- drivers/gpu/drm/nouveau/nvkm/subdev/bus/Kbuild | 1 + drivers/gpu/drm/nouveau/nvkm/subdev/bus/base.c | 64 + drivers/gpu/drm/nouveau/nvkm/subdev/bus/g94.c | 46 +- drivers/gpu/drm/nouveau/nvkm/subdev/bus/gf100.c | 71 +- drivers/gpu/drm/nouveau/nvkm/subdev/bus/hwsq.c | 32 +- drivers/gpu/drm/nouveau/nvkm/subdev/bus/hwsq.h | 6 +- drivers/gpu/drm/nouveau/nvkm/subdev/bus/nv04.c | 78 +- drivers/gpu/drm/nouveau/nvkm/subdev/bus/nv04.h | 21 - drivers/gpu/drm/nouveau/nvkm/subdev/bus/nv31.c | 81 +- drivers/gpu/drm/nouveau/nvkm/subdev/bus/nv50.c | 93 +- drivers/gpu/drm/nouveau/nvkm/subdev/bus/priv.h | 18 + drivers/gpu/drm/nouveau/nvkm/subdev/clk/Kbuild | 1 + drivers/gpu/drm/nouveau/nvkm/subdev/clk/base.c | 176 +- drivers/gpu/drm/nouveau/nvkm/subdev/clk/g84.c | 41 +- drivers/gpu/drm/nouveau/nvkm/subdev/clk/gf100.c | 318 +- drivers/gpu/drm/nouveau/nvkm/subdev/clk/gk104.c | 326 +- drivers/gpu/drm/nouveau/nvkm/subdev/clk/gk20a.c | 356 +- drivers/gpu/drm/nouveau/nvkm/subdev/clk/gt215.c | 344 +- drivers/gpu/drm/nouveau/nvkm/subdev/clk/gt215.h | 6 +- drivers/gpu/drm/nouveau/nvkm/subdev/clk/mcp77.c | 282 +- drivers/gpu/drm/nouveau/nvkm/subdev/clk/nv04.c | 56 +- drivers/gpu/drm/nouveau/nvkm/subdev/clk/nv40.c | 173 +- drivers/gpu/drm/nouveau/nvkm/subdev/clk/nv50.c | 294 +- drivers/gpu/drm/nouveau/nvkm/subdev/clk/nv50.h | 24 +- drivers/gpu/drm/nouveau/nvkm/subdev/clk/pllgt215.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/clk/pllnv04.c | 6 +- drivers/gpu/drm/nouveau/nvkm/subdev/clk/priv.h | 26 + drivers/gpu/drm/nouveau/nvkm/subdev/devinit/base.c | 128 +- .../gpu/drm/nouveau/nvkm/subdev/devinit/fbmem.h | 5 +- drivers/gpu/drm/nouveau/nvkm/subdev/devinit/g84.c | 46 +- drivers/gpu/drm/nouveau/nvkm/subdev/devinit/g98.c | 44 +- .../gpu/drm/nouveau/nvkm/subdev/devinit/gf100.c | 82 +- .../gpu/drm/nouveau/nvkm/subdev/devinit/gm107.c | 38 +- .../gpu/drm/nouveau/nvkm/subdev/devinit/gm204.c | 125 +- .../gpu/drm/nouveau/nvkm/subdev/devinit/gt215.c | 77 +- .../gpu/drm/nouveau/nvkm/subdev/devinit/mcp89.c | 44 +- drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv04.c | 242 +- drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv04.h | 18 +- drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv05.c | 71 +- drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv10.c | 44 +- drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv1a.c | 24 +- drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv20.c | 44 +- drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv50.c | 151 +- drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv50.h | 15 +- drivers/gpu/drm/nouveau/nvkm/subdev/devinit/priv.h | 33 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/Kbuild | 2 + drivers/gpu/drm/nouveau/nvkm/subdev/fb/base.c | 197 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/g84.c | 23 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/gddr3.c | 18 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/gddr5.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf100.c | 121 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf100.h | 25 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk104.c | 27 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk20a.c | 55 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm107.c | 27 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/gt215.c | 23 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/mcp77.c | 23 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/mcp89.c | 23 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv04.c | 60 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv04.h | 53 - drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv10.c | 41 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv1a.c | 26 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv20.c | 53 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv25.c | 32 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv30.c | 77 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv35.c | 33 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv36.c | 33 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv40.c | 47 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv40.h | 14 - drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv41.c | 54 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv44.c | 57 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv46.c | 29 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv47.c | 27 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv49.c | 27 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv4e.c | 27 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv50.c | 351 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv50.h | 24 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/priv.h | 107 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ram.c | 100 + drivers/gpu/drm/nouveau/nvkm/subdev/fb/ram.h | 50 + drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramfuc.h | 25 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf100.c | 342 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgk104.c | 263 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgm107.c | 37 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgt215.c | 304 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/rammcp77.c | 104 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv04.c | 54 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv10.c | 39 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv1a.c | 38 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv20.c | 47 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv40.c | 176 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv40.h | 14 + drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv41.c | 51 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv44.c | 50 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv49.c | 51 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv4e.c | 35 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv50.c | 507 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/sddr2.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/sddr3.c | 6 +- drivers/gpu/drm/nouveau/nvkm/subdev/fuse/base.c | 37 +- drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gf100.c | 57 +- drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gm107.c | 40 +- drivers/gpu/drm/nouveau/nvkm/subdev/fuse/nv50.c | 53 +- drivers/gpu/drm/nouveau/nvkm/subdev/fuse/priv.h | 9 +- drivers/gpu/drm/nouveau/nvkm/subdev/gpio/Kbuild | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/gpio/base.c | 147 +- drivers/gpu/drm/nouveau/nvkm/subdev/gpio/g94.c | 41 +- .../nouveau/nvkm/subdev/gpio/{gf110.c => gf119.c} | 50 +- drivers/gpu/drm/nouveau/nvkm/subdev/gpio/gk104.c | 47 +- drivers/gpu/drm/nouveau/nvkm/subdev/gpio/nv10.c | 41 +- drivers/gpu/drm/nouveau/nvkm/subdev/gpio/nv50.c | 46 +- drivers/gpu/drm/nouveau/nvkm/subdev/gpio/priv.h | 37 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/Kbuild | 30 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/anx9805.c | 374 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c | 151 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.h | 30 + drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxg94.c | 181 + drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxgm204.c | 181 + drivers/gpu/drm/nouveau/nvkm/subdev/i2c/base.c | 742 +-- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/bit.c | 149 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/bus.c | 245 + drivers/gpu/drm/nouveau/nvkm/subdev/i2c/bus.h | 37 + drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busgf119.c | 95 + drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busnv04.c | 96 + drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busnv4e.c | 86 + drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busnv50.c | 113 + drivers/gpu/drm/nouveau/nvkm/subdev/i2c/g94.c | 241 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gf110.c | 106 - drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gf117.c | 26 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gf119.c | 40 + drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gk104.c | 39 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gm204.c | 199 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/nv04.c | 104 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/nv4e.c | 96 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/nv50.c | 109 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/nv50.h | 32 - drivers/gpu/drm/nouveau/nvkm/subdev/i2c/pad.c | 119 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/pad.h | 107 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padg94.c | 87 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padgf119.c | 51 + drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padgm204.c | 87 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padnv04.c | 18 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padnv4e.c | 36 + drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padnv50.c | 36 + drivers/gpu/drm/nouveau/nvkm/subdev/i2c/port.h | 13 - drivers/gpu/drm/nouveau/nvkm/subdev/i2c/priv.h | 67 +- drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gf100.c | 99 +- drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gk104.c | 124 +- drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gk20a.c | 93 +- drivers/gpu/drm/nouveau/nvkm/subdev/instmem/base.c | 301 +- .../gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.c | 394 +- drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv04.c | 240 +- drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv04.h | 36 - drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv40.c | 247 +- drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c | 266 +- drivers/gpu/drm/nouveau/nvkm/subdev/instmem/priv.h | 60 +- drivers/gpu/drm/nouveau/nvkm/subdev/ltc/base.c | 124 +- drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gf100.c | 202 +- drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gk104.c | 43 +- drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gm107.c | 146 +- drivers/gpu/drm/nouveau/nvkm/subdev/ltc/priv.h | 76 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/Kbuild | 4 - drivers/gpu/drm/nouveau/nvkm/subdev/mc/base.c | 178 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/g98.c | 58 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/gf100.c | 97 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/gk20a.c | 26 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv04.c | 85 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv04.h | 20 - drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv44.c | 46 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv50.c | 66 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/priv.h | 46 +- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/base.c | 234 +- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gf100.c | 138 +- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv04.c | 128 +- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv04.h | 15 +- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv41.c | 136 +- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv44.c | 195 +- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv50.c | 174 +- drivers/gpu/drm/nouveau/nvkm/subdev/mmu/priv.h | 39 + drivers/gpu/drm/nouveau/nvkm/subdev/mxm/base.c | 80 +- drivers/gpu/drm/nouveau/nvkm/subdev/mxm/mxms.c | 28 +- drivers/gpu/drm/nouveau/nvkm/subdev/mxm/mxms.h | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/mxm/nv50.c | 47 +- drivers/gpu/drm/nouveau/nvkm/subdev/mxm/priv.h | 15 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/Kbuild | 7 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/agp.c | 171 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/agp.h | 18 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/base.c | 182 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/gf100.c | 44 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv04.c | 58 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv40.c | 65 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv4c.c | 37 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv50.c | 51 + drivers/gpu/drm/nouveau/nvkm/subdev/pci/priv.h | 19 + drivers/gpu/drm/nouveau/nvkm/subdev/pmu/Kbuild | 3 +- drivers/gpu/drm/nouveau/nvkm/subdev/pmu/base.c | 230 +- .../nvkm/subdev/pmu/fuc/{gf110.fuc4 => gf119.fuc4} | 4 +- .../subdev/pmu/fuc/{gf110.fuc4.h => gf119.fuc4.h} | 4 +- drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gf100.c | 19 +- .../nouveau/nvkm/subdev/pmu/{gf110.c => gf119.c} | 29 +- drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gk104.c | 102 +- drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gk110.c | 59 +- drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gk208.c | 19 +- drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gk20a.c | 149 +- drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gm107.c | 41 + drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gt215.c | 31 +- drivers/gpu/drm/nouveau/nvkm/subdev/pmu/memx.c | 69 +- drivers/gpu/drm/nouveau/nvkm/subdev/pmu/priv.h | 30 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/Kbuild | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c | 305 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c | 117 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/fannil.c | 3 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c | 67 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c | 80 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/g84.c | 190 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/gf110.c | 174 - drivers/gpu/drm/nouveau/nvkm/subdev/therm/gf119.c | 153 + drivers/gpu/drm/nouveau/nvkm/subdev/therm/gm107.c | 66 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/gt215.c | 85 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/ic.c | 51 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/nv40.c | 129 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/nv50.c | 106 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/priv.h | 86 +- drivers/gpu/drm/nouveau/nvkm/subdev/therm/temp.c | 122 +- drivers/gpu/drm/nouveau/nvkm/subdev/timer/Kbuild | 2 + drivers/gpu/drm/nouveau/nvkm/subdev/timer/base.c | 158 +- drivers/gpu/drm/nouveau/nvkm/subdev/timer/gk20a.c | 43 +- drivers/gpu/drm/nouveau/nvkm/subdev/timer/nv04.c | 253 +- drivers/gpu/drm/nouveau/nvkm/subdev/timer/nv04.h | 25 - drivers/gpu/drm/nouveau/nvkm/subdev/timer/nv40.c | 88 + drivers/gpu/drm/nouveau/nvkm/subdev/timer/nv41.c | 85 + drivers/gpu/drm/nouveau/nvkm/subdev/timer/priv.h | 22 + .../gpu/drm/nouveau/nvkm/subdev/timer/regsnv04.h | 7 + drivers/gpu/drm/nouveau/nvkm/subdev/volt/base.c | 128 +- drivers/gpu/drm/nouveau/nvkm/subdev/volt/gk20a.c | 123 +- drivers/gpu/drm/nouveau/nvkm/subdev/volt/gpio.c | 15 +- drivers/gpu/drm/nouveau/nvkm/subdev/volt/nv40.c | 33 +- drivers/gpu/drm/nouveau/nvkm/subdev/volt/priv.h | 20 + drivers/gpu/drm/omapdrm/omap_crtc.c | 6 +- drivers/gpu/drm/omapdrm/omap_fbdev.c | 38 +- drivers/gpu/drm/panel/Kconfig | 16 +- drivers/gpu/drm/panel/Makefile | 5 +- drivers/gpu/drm/panel/panel-lg-lg4573.c | 298 + .../{panel-ld9040.c => panel-samsung-ld9040.c} | 2 +- .../{panel-s6e8aa0.c => panel-samsung-s6e8aa0.c} | 2 +- drivers/gpu/drm/panel/panel-simple.c | 99 +- drivers/gpu/drm/qxl/qxl_fb.c | 40 +- drivers/gpu/drm/qxl/qxl_object.c | 4 +- drivers/gpu/drm/radeon/atombios_dp.c | 5 +- drivers/gpu/drm/radeon/dce6_afmt.c | 29 +- drivers/gpu/drm/radeon/radeon_audio.c | 16 +- drivers/gpu/drm/radeon/radeon_combios.c | 8 + drivers/gpu/drm/radeon/radeon_connectors.c | 5 + drivers/gpu/drm/radeon/radeon_dp_auxch.c | 4 +- drivers/gpu/drm/radeon/radeon_dp_mst.c | 14 +- drivers/gpu/drm/radeon/radeon_fb.c | 42 +- drivers/gpu/drm/radeon/radeon_kfd.c | 3 +- drivers/gpu/drm/radeon/radeon_object.c | 4 +- drivers/gpu/drm/radeon/radeon_pm.c | 5 - drivers/gpu/drm/rcar-du/rcar_du_crtc.c | 6 +- drivers/gpu/drm/rockchip/rockchip_drm_fbdev.c | 47 +- drivers/gpu/drm/rockchip/rockchip_drm_gem.c | 12 +- drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 269 +- drivers/gpu/drm/rockchip/rockchip_drm_vop.h | 88 + drivers/gpu/drm/shmobile/shmob_drm_crtc.c | 2 +- drivers/gpu/drm/sti/Makefile | 7 +- drivers/gpu/drm/sti/sti_compositor.c | 141 +- drivers/gpu/drm/sti/sti_compositor.h | 12 +- drivers/gpu/drm/sti/{sti_drm_crtc.c => sti_crtc.c} | 211 +- drivers/gpu/drm/sti/sti_crtc.h | 22 + drivers/gpu/drm/sti/sti_cursor.c | 243 +- drivers/gpu/drm/sti/sti_cursor.h | 5 +- drivers/gpu/drm/sti/sti_drm_crtc.h | 22 - drivers/gpu/drm/sti/sti_drm_plane.c | 251 - drivers/gpu/drm/sti/sti_drm_plane.h | 18 - drivers/gpu/drm/sti/{sti_drm_drv.c => sti_drv.c} | 147 +- drivers/gpu/drm/sti/{sti_drm_drv.h => sti_drv.h} | 6 +- drivers/gpu/drm/sti/sti_gdp.c | 536 +- drivers/gpu/drm/sti/sti_gdp.h | 7 +- drivers/gpu/drm/sti/sti_hdmi.c | 27 +- drivers/gpu/drm/sti/sti_hqvdp.c | 482 +- drivers/gpu/drm/sti/sti_hqvdp.h | 12 - drivers/gpu/drm/sti/sti_layer.c | 213 - drivers/gpu/drm/sti/sti_layer.h | 131 - drivers/gpu/drm/sti/sti_mixer.c | 72 +- drivers/gpu/drm/sti/sti_mixer.h | 27 +- drivers/gpu/drm/sti/sti_plane.c | 122 + drivers/gpu/drm/sti/sti_plane.h | 71 + drivers/gpu/drm/sti/sti_tvout.c | 54 +- drivers/gpu/drm/sti/sti_vid.c | 72 +- drivers/gpu/drm/sti/sti_vid.h | 19 +- drivers/gpu/drm/tegra/dc.c | 300 +- drivers/gpu/drm/tegra/dc.h | 24 +- drivers/gpu/drm/tegra/dpaux.c | 63 +- drivers/gpu/drm/tegra/dpaux.h | 2 + drivers/gpu/drm/tegra/drm.c | 16 +- drivers/gpu/drm/tegra/drm.h | 10 + drivers/gpu/drm/tegra/dsi.c | 126 +- drivers/gpu/drm/tegra/dsi.h | 4 + drivers/gpu/drm/tegra/fb.c | 35 +- drivers/gpu/drm/tegra/hdmi.c | 78 +- drivers/gpu/drm/tegra/output.c | 20 +- drivers/gpu/drm/tegra/rgb.c | 49 +- drivers/gpu/drm/tegra/sor.c | 1664 ++++-- drivers/gpu/drm/tegra/sor.h | 298 +- drivers/gpu/drm/ttm/ttm_tt.c | 4 +- drivers/gpu/drm/udl/udl_fb.c | 41 +- drivers/gpu/drm/virtio/virtgpu_fb.c | 32 +- drivers/gpu/drm/vmwgfx/Makefile | 3 +- .../gpu/drm/vmwgfx/device_include/includeCheck.h | 3 + .../gpu/drm/vmwgfx/device_include/svga3d_caps.h | 110 + drivers/gpu/drm/vmwgfx/device_include/svga3d_cmd.h | 2071 +++++++ .../gpu/drm/vmwgfx/device_include/svga3d_devcaps.h | 457 ++ drivers/gpu/drm/vmwgfx/device_include/svga3d_dx.h | 1487 +++++ .../gpu/drm/vmwgfx/device_include/svga3d_limits.h | 99 + drivers/gpu/drm/vmwgfx/device_include/svga3d_reg.h | 50 + .../drm/vmwgfx/device_include/svga3d_surfacedefs.h | 1204 ++++ .../gpu/drm/vmwgfx/device_include/svga3d_types.h | 1633 ++++++ .../drm/vmwgfx/{ => device_include}/svga_escape.h | 2 +- .../drm/vmwgfx/{ => device_include}/svga_overlay.h | 10 +- .../gpu/drm/vmwgfx/{ => device_include}/svga_reg.h | 664 ++- drivers/gpu/drm/vmwgfx/device_include/svga_types.h | 46 + .../gpu/drm/vmwgfx/device_include/vm_basic_types.h | 21 + .../drm/vmwgfx/device_include/vmware_pack_begin.h | 25 + .../drm/vmwgfx/device_include/vmware_pack_end.h | 25 + drivers/gpu/drm/vmwgfx/svga3d_reg.h | 2627 --------- drivers/gpu/drm/vmwgfx/svga3d_surfacedefs.h | 912 --- drivers/gpu/drm/vmwgfx/svga_types.h | 45 - drivers/gpu/drm/vmwgfx/vmwgfx_binding.c | 1294 +++++ drivers/gpu/drm/vmwgfx/vmwgfx_binding.h | 209 + drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c | 24 +- drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c | 1303 +++++ drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf_res.c | 26 +- drivers/gpu/drm/vmwgfx/vmwgfx_context.c | 786 +-- drivers/gpu/drm/vmwgfx/vmwgfx_cotable.c | 662 +++ drivers/gpu/drm/vmwgfx/vmwgfx_dmabuf.c | 184 +- drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 508 +- drivers/gpu/drm/vmwgfx/vmwgfx_drv.h | 335 +- drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c | 2053 ++++++- drivers/gpu/drm/vmwgfx/vmwgfx_fb.c | 575 +- drivers/gpu/drm/vmwgfx/vmwgfx_fence.c | 10 +- drivers/gpu/drm/vmwgfx/vmwgfx_fence.h | 2 +- drivers/gpu/drm/vmwgfx/vmwgfx_fifo.c | 145 +- drivers/gpu/drm/vmwgfx/vmwgfx_gmr.c | 2 +- drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c | 18 +- drivers/gpu/drm/vmwgfx/vmwgfx_irq.c | 47 +- drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 1700 +++--- drivers/gpu/drm/vmwgfx/vmwgfx_kms.h | 194 +- drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c | 49 +- drivers/gpu/drm/vmwgfx/vmwgfx_mob.c | 212 +- drivers/gpu/drm/vmwgfx/vmwgfx_overlay.c | 16 +- drivers/gpu/drm/vmwgfx/vmwgfx_reg.h | 12 +- drivers/gpu/drm/vmwgfx/vmwgfx_resource.c | 277 +- drivers/gpu/drm/vmwgfx/vmwgfx_resource_priv.h | 14 +- drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c | 556 +- drivers/gpu/drm/vmwgfx/vmwgfx_shader.c | 500 +- drivers/gpu/drm/vmwgfx/vmwgfx_so.c | 555 ++ drivers/gpu/drm/vmwgfx/vmwgfx_so.h | 160 + drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c | 1266 ++++ drivers/gpu/drm/vmwgfx/vmwgfx_surface.c | 315 +- drivers/gpu/drm/vmwgfx/vmwgfx_ttm_glue.c | 2 +- drivers/gpu/host1x/mipi.c | 253 +- drivers/gpu/vga/vga_switcheroo.c | 95 +- drivers/gpu/vga/vgaarb.c | 142 +- drivers/mfd/Kconfig | 1 + drivers/mfd/intel_soc_pmic_core.c | 29 + drivers/mfd/intel_soc_pmic_crc.c | 3 + drivers/pwm/Kconfig | 7 + drivers/pwm/Makefile | 1 + drivers/pwm/pwm-crc.c | 143 + drivers/video/Kconfig | 2 - include/drm/bridge/dw_hdmi.h | 7 + include/drm/drmP.h | 57 +- include/drm/drm_atomic.h | 3 +- include/drm/drm_atomic_helper.h | 4 +- include/drm/drm_crtc.h | 83 +- include/drm/drm_crtc_helper.h | 8 +- include/drm/drm_dp_helper.h | 3 +- include/drm/drm_fb_helper.h | 212 + include/drm/drm_modeset_lock.h | 1 - include/drm/drm_plane_helper.h | 45 +- include/drm/intel-gtt.h | 4 +- include/linux/gpio/machine.h | 1 + include/uapi/drm/drm_fourcc.h | 7 + include/uapi/drm/i915_drm.h | 16 +- include/uapi/drm/vmwgfx_drm.h | 38 +- include/video/samsung_fimd.h | 1 + 1228 files changed, 104955 insertions(+), 60987 deletions(-) create mode 100644 Documentation/devicetree/bindings/panel/auo,b080uan01.txt create mode 100644 Documentation/devicetree/bindings/panel/lg,lg4573.txt create mode 100644 Documentation/devicetree/bindings/panel/nec,nl4827hc19-05b.txt create mode 100644 Documentation/devicetree/bindings/panel/okaya,rs800480t-7x0gp.txt create mode 100644 Documentation/devicetree/bindings/video/fsl,dcu.txt create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c delete mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_family.h create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c create mode 100644 drivers/gpu/drm/amd/amdgpu/fiji_dpm.c create mode 100644 drivers/gpu/drm/amd/amdgpu/fiji_ppsmc.h create mode 100644 drivers/gpu/drm/amd/amdgpu/fiji_smc.c create mode 100644 drivers/gpu/drm/amd/amdgpu/fiji_smumgr.h create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_vi.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/smu/smu_7_1_3_d.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/smu/smu_7_1_3_enum.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/smu/smu_7_1_3_sh_mask.h rename drivers/gpu/drm/amd/{amdgpu => include}/atom-bits.h (100%) rename drivers/gpu/drm/amd/{amdgpu => include}/atom-names.h (100%) rename drivers/gpu/drm/amd/{amdgpu => include}/atom-types.h (100%) rename drivers/gpu/drm/amd/{amdgpu => include}/atombios.h (100%) create mode 100644 drivers/gpu/drm/amd/include/cgs_common.h create mode 100644 drivers/gpu/drm/amd/include/cgs_linux.h rename drivers/gpu/drm/amd/{amdgpu => include}/pptable.h (98%) create mode 100644 drivers/gpu/drm/amd/include/vi_structs.h create mode 100644 drivers/gpu/drm/amd/scheduler/gpu_scheduler.c create mode 100644 drivers/gpu/drm/amd/scheduler/gpu_scheduler.h create mode 100644 drivers/gpu/drm/amd/scheduler/sched_fence.c rename drivers/gpu/drm/bridge/{ptn3460.c => nxp-ptn3460.c} (100%) rename drivers/gpu/drm/bridge/{ps8622.c => parade-ps8622.c} (100%) delete mode 100644 drivers/gpu/drm/exynos/exynos_drm_buf.c delete mode 100644 drivers/gpu/drm/exynos/exynos_drm_buf.h delete mode 100644 drivers/gpu/drm/exynos/exynos_drm_dmabuf.c delete mode 100644 drivers/gpu/drm/exynos/exynos_drm_dmabuf.h delete mode 100644 drivers/gpu/drm/exynos/exynos_drm_encoder.c delete mode 100644 drivers/gpu/drm/exynos/exynos_drm_encoder.h create mode 100644 drivers/gpu/drm/fsl-dcu/Kconfig create mode 100644 drivers/gpu/drm/fsl-dcu/Makefile create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.h create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.h create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_fbdev.c create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_kms.c create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_output.h create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.h create mode 100644 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c create mode 100644 drivers/gpu/drm/i915/i915_gem_fence.c create mode 100644 drivers/gpu/drm/i915/i915_guc_reg.h create mode 100644 drivers/gpu/drm/i915/intel_guc_fwif.h create mode 100644 drivers/gpu/drm/i915/intel_hotplug.c create mode 100644 drivers/gpu/drm/i915/intel_mocs.c create mode 100644 drivers/gpu/drm/i915/intel_mocs.h create mode 100644 drivers/gpu/drm/msm/dsi/dsi_cfg.c create mode 100644 drivers/gpu/drm/msm/dsi/dsi_cfg.h rename drivers/gpu/drm/msm/dsi/{ => phy}/dsi_phy.c (54%) create mode 100644 drivers/gpu/drm/msm/dsi/phy/dsi_phy.h create mode 100644 drivers/gpu/drm/msm/dsi/phy/dsi_phy_20nm.c create mode 100644 drivers/gpu/drm/msm/dsi/phy/dsi_phy_28nm.c create mode 100644 drivers/gpu/drm/msm/hdmi/hdmi_hdcp.c delete mode 100644 drivers/gpu/drm/nouveau/include/nvkm/core/devidx.h delete mode 100644 drivers/gpu/drm/nouveau/include/nvkm/core/engctx.h delete mode 100644 drivers/gpu/drm/nouveau/include/nvkm/core/handle.h create mode 100644 drivers/gpu/drm/nouveau/include/nvkm/core/memory.h delete mode 100644 drivers/gpu/drm/nouveau/include/nvkm/core/namedb.h create mode 100644 drivers/gpu/drm/nouveau/include/nvkm/core/oproxy.h delete mode 100644 drivers/gpu/drm/nouveau/include/nvkm/core/parent.h create mode 100644 drivers/gpu/drm/nouveau/include/nvkm/core/pci.h delete mode 100644 drivers/gpu/drm/nouveau/include/nvkm/core/printk.h create mode 100644 drivers/gpu/drm/nouveau/include/nvkm/core/tegra.h delete mode 100644 drivers/gpu/drm/nouveau/include/nvkm/engine/device.h create mode 100644 drivers/gpu/drm/nouveau/include/nvkm/engine/dma.h delete mode 100644 drivers/gpu/drm/nouveau/include/nvkm/engine/dmaobj.h create mode 100644 drivers/gpu/drm/nouveau/include/nvkm/subdev/pci.h delete mode 100644 drivers/gpu/drm/nouveau/nouveau_agp.c delete mode 100644 drivers/gpu/drm/nouveau/nouveau_agp.h delete mode 100644 drivers/gpu/drm/nouveau/nvkm/core/engctx.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/core/handle.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/core/memory.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/core/namedb.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/core/oproxy.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/core/parent.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/core/printk.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/ce/priv.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/device/ctrl.h delete mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/device/gf100.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/device/gk104.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/device/gm100.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/device/nv04.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/device/nv10.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/device/nv20.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/device/nv30.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/device/nv40.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/device/nv50.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/device/pci.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/device/user.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/baseg84.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/basegf119.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/basegk104.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/basegk110.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/basegt200.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/basegt215.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/basenv50.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/changf119.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/channv50.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/channv50.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/coreg84.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/coreg94.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/coregf119.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/coregk104.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/coregk110.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/coregm107.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/coregm204.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/coregt200.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/coregt215.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/corenv50.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/cursg84.c rename drivers/gpu/drm/nouveau/nvkm/{subdev/mc/g94.c => engine/disp/cursgf119.c} (77%) rename drivers/gpu/drm/nouveau/nvkm/{subdev/mc/gf106.c => engine/disp/cursgk104.c} (76%) create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/cursgt215.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/cursnv50.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/dmacgf119.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/dmacnv50.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/dmacnv50.h delete mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/gf110.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/gf119.c rename drivers/gpu/drm/nouveau/nvkm/engine/disp/{hdagf110.c => hdagf119.c} (66%) rename drivers/gpu/drm/nouveau/nvkm/engine/disp/{hdmigf110.c => hdmigf119.c} (60%) rename drivers/gpu/drm/nouveau/nvkm/{subdev/mc/nv4c.c => engine/disp/oimmg84.c} (75%) create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/oimmgf119.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/oimmgk104.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/oimmgt215.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/oimmnv50.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/ovlyg84.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/ovlygf119.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/ovlygk104.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/ovlygt200.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/ovlygt215.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/ovlynv50.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/piocgf119.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/piocnv50.c rename drivers/gpu/drm/nouveau/nvkm/engine/{pm/gk110.c => disp/rootg84.c} (59%) create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/rootg94.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/rootgf119.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/rootgk104.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/rootgk110.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/rootgm107.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/rootgm204.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/rootgt200.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/rootgt215.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/rootnv04.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/rootnv50.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/disp/rootnv50.h rename drivers/gpu/drm/nouveau/nvkm/engine/disp/{sorgf110.c => sorgf119.c} (51%) create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dma/Kbuild create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dma/base.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dma/gf100.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dma/gf119.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dma/nv04.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dma/nv50.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dma/priv.h rename drivers/gpu/drm/nouveau/nvkm/engine/{dmaobj/base.c => dma/user.c} (58%) create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dma/user.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dma/usergf100.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dma/usergf119.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv04.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv50.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dmaobj/Kbuild delete mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dmaobj/gf100.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dmaobj/gf110.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dmaobj/nv04.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dmaobj/nv50.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/dmaobj/priv.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/chan.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/chan.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/chang84.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/changf100.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/changk104.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/channv04.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/channv50.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/channv50.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmag84.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv04.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv10.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv17.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv40.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv50.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gf100.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm20b.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifog84.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogf100.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogm204.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifonv50.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/priv.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/regsnv04.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/base.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgm20b.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/g84.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/gm20b.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/gt200.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/gt215.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/mcp79.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/mcp89.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/nv10.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/nv15.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/nv17.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/nv44.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/priv.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/mpeg/priv.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/mspdec/base.c rename drivers/gpu/drm/nouveau/nvkm/{subdev/mc/nv40.c => engine/mspdec/gt215.c} (70%) create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/mspdec/priv.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/msppp/base.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/msppp/gt215.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/msppp/priv.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/msvld/base.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/msvld/gt215.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/msvld/mcp89.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/msvld/priv.h delete mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/pm/daemon.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/pm/gf108.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/pm/gf117.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/pm/gt200.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/sw/base.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/sw/chan.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/sw/chan.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/sw/nvsw.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/sw/nvsw.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/sw/priv.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/bar/g84.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/bar/gf100.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/bar/nv50.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/bus/base.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/bus/nv04.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/bus/priv.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/clk/priv.h delete mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv04.h delete mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv40.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ram.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ram.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv40.h rename drivers/gpu/drm/nouveau/nvkm/subdev/gpio/{gf110.c => gf119.c} (62%) create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxg94.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxgm204.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/i2c/bus.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/i2c/bus.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busgf119.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busnv04.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busnv4e.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busnv50.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gf110.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gf119.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/i2c/nv50.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padgf119.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padnv4e.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padnv50.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/i2c/port.h delete mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv04.h delete mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv04.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/priv.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mxm/priv.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/pci/Kbuild create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/pci/agp.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/pci/agp.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/pci/base.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/pci/gf100.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv04.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv40.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv4c.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv50.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/pci/priv.h rename drivers/gpu/drm/nouveau/nvkm/subdev/pmu/fuc/{gf110.fuc4 => gf119.fuc4} (97%) rename drivers/gpu/drm/nouveau/nvkm/subdev/pmu/fuc/{gf110.fuc4.h => gf119.fuc4.h} (99%) rename drivers/gpu/drm/nouveau/nvkm/subdev/pmu/{gf110.c => gf119.c} (73%) create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gm107.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/therm/gf110.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/therm/gf119.c delete mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/timer/nv04.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/timer/nv40.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/timer/nv41.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/timer/regsnv04.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/volt/priv.h create mode 100644 drivers/gpu/drm/panel/panel-lg-lg4573.c rename drivers/gpu/drm/panel/{panel-ld9040.c => panel-samsung-ld9040.c} (99%) rename drivers/gpu/drm/panel/{panel-s6e8aa0.c => panel-samsung-s6e8aa0.c} (99%) rename drivers/gpu/drm/sti/{sti_drm_crtc.c => sti_crtc.c} (56%) create mode 100644 drivers/gpu/drm/sti/sti_crtc.h delete mode 100644 drivers/gpu/drm/sti/sti_drm_crtc.h delete mode 100644 drivers/gpu/drm/sti/sti_drm_plane.c delete mode 100644 drivers/gpu/drm/sti/sti_drm_plane.h rename drivers/gpu/drm/sti/{sti_drm_drv.c => sti_drv.c} (61%) rename drivers/gpu/drm/sti/{sti_drm_drv.h => sti_drv.h} (90%) delete mode 100644 drivers/gpu/drm/sti/sti_hqvdp.h delete mode 100644 drivers/gpu/drm/sti/sti_layer.c delete mode 100644 drivers/gpu/drm/sti/sti_layer.h create mode 100644 drivers/gpu/drm/sti/sti_plane.c create mode 100644 drivers/gpu/drm/sti/sti_plane.h create mode 100644 drivers/gpu/drm/vmwgfx/device_include/includeCheck.h create mode 100644 drivers/gpu/drm/vmwgfx/device_include/svga3d_caps.h create mode 100644 drivers/gpu/drm/vmwgfx/device_include/svga3d_cmd.h create mode 100644 drivers/gpu/drm/vmwgfx/device_include/svga3d_devcaps.h create mode 100644 drivers/gpu/drm/vmwgfx/device_include/svga3d_dx.h create mode 100644 drivers/gpu/drm/vmwgfx/device_include/svga3d_limits.h create mode 100644 drivers/gpu/drm/vmwgfx/device_include/svga3d_reg.h create mode 100644 drivers/gpu/drm/vmwgfx/device_include/svga3d_surfacedefs.h create mode 100644 drivers/gpu/drm/vmwgfx/device_include/svga3d_types.h rename drivers/gpu/drm/vmwgfx/{ => device_include}/svga_escape.h (97%) rename drivers/gpu/drm/vmwgfx/{ => device_include}/svga_overlay.h (96%) rename drivers/gpu/drm/vmwgfx/{ => device_include}/svga_reg.h (74%) create mode 100644 drivers/gpu/drm/vmwgfx/device_include/svga_types.h create mode 100644 drivers/gpu/drm/vmwgfx/device_include/vm_basic_types.h create mode 100644 drivers/gpu/drm/vmwgfx/device_include/vmware_pack_begin.h create mode 100644 drivers/gpu/drm/vmwgfx/device_include/vmware_pack_end.h delete mode 100644 drivers/gpu/drm/vmwgfx/svga3d_reg.h delete mode 100644 drivers/gpu/drm/vmwgfx/svga3d_surfacedefs.h delete mode 100644 drivers/gpu/drm/vmwgfx/svga_types.h create mode 100644 drivers/gpu/drm/vmwgfx/vmwgfx_binding.c create mode 100644 drivers/gpu/drm/vmwgfx/vmwgfx_binding.h create mode 100644 drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c create mode 100644 drivers/gpu/drm/vmwgfx/vmwgfx_cotable.c create mode 100644 drivers/gpu/drm/vmwgfx/vmwgfx_so.c create mode 100644 drivers/gpu/drm/vmwgfx/vmwgfx_so.h create mode 100644 drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c create mode 100644 drivers/pwm/pwm-crc.c