Hi Linus, This is the main drm pull request for v4.12. Apart from two fixes pulls, everything should have been in drm-next for at least 2 weeks. The biggest thing in here is AMD released the public headers for their upcoming VEGA GPUs. These as always are quite a sizeable chunk of header files. They've also added initial non-display support for those GPUs, though they aren't available in production yet. There is also a conflict with the incoming tee subsystem, but hopefully that will be resolved before it gets sent to you. Otherwise it's pretty much normal. New drivers: bridges: megachips-stdpxxxx-ge-b850v3-fw LVDS->DP++ generic LVDS bridge support. Core: Displayport link train failure reporting to userspace debugfs interface cleaned up subsystem TODO in kerneldoc now Extended fbdev support (flipping and vblank wait) drm_platform removed EDP CRC support in helper HF-VSDB SCDC support in EDID parser Lots of code cleanups and header extraction Thunderbolt external GPU awareness Atomic helper improvements Documentation improvements panel: Sitronix and Samsung new panel support amdgpu: Preliminary vega10 support Multi-level page table support GPU sensor support for userspace PRT support for sparse buffers SR-IOV improvements Non-contig VRAM CPU mapping i915: Atomic modesetting enabled by default on Gen5+ LSPCON improvements Atomic state handling for cdclk GPU reset improvements In-kernel unit tests Geminilake improvements and color manager support Designware i2c fixes vblank evasion improvements Hotplug safe connector iterators GVT scheduler QoS support GVT Kabylake support nouveau: Acceleration support for Pascal (GP10x). Rearchitecture of code handling proprietary signed firmware Fix GTX 970 with odd MMU configuration GP10B support GP107 acceleration support vmwgfx: Atomic modesetting support for vmwgfx omapdrm: Support for render nodes Refactor omapdss code Fix some probe ordering issues Fix too dark RGB565 rendering sunxi: prelim rework for multiple pipes. mali-dp: Color management support Plane scaling Power management improvements imx-drm: Prefetch Resolve Engine/Gasket on i.MX6QP Deferred plane disabling Separate alpha support mediatek: Mediatek SoC MT2701 support rcar-du: Gen3 HDMI support msm: 4k support for newer chips OPP bindings for gpu prep work for per-process pagetables vc4: HDMI audio support fixes qxl: minor fixes. dw-hdmi: PHY improvements CSC fixes Amlogic GX SoC support The following changes since commit 4f7d029b9bf009fbee76bb10c0c4351a1870d2f3: Linux 4.11-rc7 (2017-04-16 13:00:18 -0700) are available in the git repository at: git://people.freedesktop.org/~airlied/linux tags/drm-for-v4.12 for you to fetch changes up to 8b03d1ed2c43a2ba5ef3381322ee4515b97381bf: Merge branch 'linux-4.12' of git://github.com/skeggsb/linux into drm-next (2017-05-02 04:46:01 +1000) ---------------------------------------------------------------- main drm pull request for 4.12 kernel ---------------------------------------------------------------- Adam Borowski (1): drm/nouveau/gpio: enable interrupts on cards with 32 gpio lines Alex Deucher (71): drm/amdgpu: expose GPU sensor related information drm/amdgpu: bump driver version for new lds buffer query drm/amdgpu/powerplay: enable LEDs on Fiji boards drm/amdgpu/vce2: fix vce bar programming drm/amdgpu: put gtt at 0 in the internal address space drm/amdgpu: add polaris12 to virtual dce handling drm/amdgpu: switch ih handling to two levels (v3) drm/amdgpu/ih: store the full context id drm/amdgpu: add asic callback to get memsize register drm/amdgpu: add new ATIF ACPI method drm/radeon: add new ATIF ACPI method drm/amdgpu/gfx6: drop gds unrefs drm/amdgpu: don't init GDS pool if GDS size is 0 (v2) drm/amdgpu/vi: remove duplicate CG flags drm/amdgpu/vi: add missing error handling when setting uvd dclk drm/amdgpu: bump version for PRT support drm/amdgpu/gfx8: whitespace cleanup drm/amdgpu/gfx8: rename some functions drm/amdgpu/gfx8: reserve mqd objects before mapping them drm/amdgpu/gfx8: test KIQ before compute rings drm/amdgpu/gfx8: fold loops in kiq_resume() drm/amdgpu/gfx8: reserve kiq eop object before unmapping it drm/amdgpu/gfx8: reduce the functon params for mpq setup drm/amdgpu/gfx8: store the eop gpu addr in the ring structure drm/amdgpu/gfx8: further KIQ parameter cleanup drm/amdgpu: add the new atomfirmware interface header amdgpu: detect if we are using atomfirmware or atombios for vbios (v2) drm/amdgpu: move atom scratch setup into amdgpu_atombios.c drm/amdgpu: add basic support for atomfirmware.h (v3) drm/amdgpu: add soc15ip.h drm/amdgpu: add vega10_enum.h drm/amdgpu: Add ATHUB 1.0 register headers drm/amdgpu: Add the DCE 12.0 register headers drm/amdgpu: add the GC 9.0 register headers drm/amdgpu: add the HDP 4.0 register headers drm/amdgpu: add the MMHUB 1.0 register headers drm/amdgpu: add MP 9.0 register headers drm/amdgpu: add NBIF 6.1 register headers drm/amdgpu: add NBIO 6.1 register headers drm/amdgpu: add OSSSYS 4.0 register headers drm/amdgpu: add SDMA 4.0 register headers drm/amdgpu: add SMUIO 9.0 register headers drm/amdgpu: add THM 9.0 register headers drm/amdgpu: add the UVD 7.0 register headers drm/amdgpu: add the VCE 4.0 register headers drm/amdgpu: add gfx9 clearstate header drm/amdgpu: add SDMA 4.0 packet header drm/amdgpu: use atomfirmware interfaces for scratch reg save/restore drm/amdgpu: update IH IV ring entry for soc-15 drm/amdgpu: add PTE defines for MTYPE drm/amdgpu: add NGG parameters drm/amdgpu: Add asic family for vega10 drm/amdgpu: add tiling flags for GFX9 (v2) drm/amdgpu: gart fixes for vega10 drm/amdgpu:vega10: enable virtual display if set via module option drm/amdgpu/gfx9: whitespace cleanup drm/amdgpu/gfx9: rename some functions drm/amdgpu/gfx9: reserve mqd objects before mapping them drm/amdgpu/gfx9: reserve kiq eop object before unmapping it drm/amdgpu/gfx9: reduce the functon params for mpq setup drm/amdgpu/gfx9: store the eop gpu addr in the ring structure drm/amdgpu/gfx9: further KIQ parameter cleanup drm/amdgpu: refine the logic in amdgpu_need_post() drm/amdgpu/gfx9: use hweight for calculating num_rbs drm/amdgpu/soc15: return cached values for some registers (v2) drm/amdgpu/soc15: drop support for reading some registers drm/amdgpu/powerplay: fix locking typo drm/amdgpu/soc15: Fix static checker warnings drm/amdgpu/vi: add defines for KIQ packets drm/amdgpu/gfx8: KIQ is also disabled when MEC is disabled drm/radeon: fix typo in bandwidth calculation Alex Xie (11): drm/amdgpu: change pte definitions to 64 bit drm/amdgpu: set GART PTE asic specific flags drm/amdgpu: add a callback to set vm mapping flags drm/amdgpu: Add MTYPE flags to GPU VM IOCTL interface drm/amdgpu: handle PTE EXEC in amdgpu_vm_bo_split_mapping drm/amdgpu: handle PTE MTYPE in amdgpu_vm_bo_split_mapping drm/amdgpu: Add GMC 9.0 support (v2) drm/amdgpu: Fix 32bit x86 compilation warning drm/amdgpu: Move function amdgpu_has_atpx near other similar functions drm/amdgpu: Avoid using signed integer to store pointer value drm/amdgpu: use uintptr_t instead of unsigned long to store pointer Alexandre Courbot (68): drm/nouveau/secboot: make nvkm_secboot_falcon_name visible drm/nouveau/pmu: make sure the reset hook exists before running it drm/nouveau/falcon: add missing context binding memory target drm/nouveau/falcon: protect against concurrent DMEM accesses drm/nouveau/falcon: fix port offset for DMEM register drm/nouveau/falcon: fix IMEM port access drm/nouveau/secboot: remove unused hook drm/nouveau/secboot: make sure requested falcons are supported drm/nouveau/secboot: fix WPR address to be 64-bit drm/nouveau/secboot: fix WPR region alignment drm/nouveau/secboot: prevent address trimming drm/nouveau/secboot: fix usage of hsf_load_header drm/nouveau/secboot: store ucode offset in base image structure drm/nouveau/secboot: make specialized ls_ucode_img struct private drm/nouveau/secboot: abstract fixup_hs_desc function drm/nouveau/secboot: add LS firmware post-run hooks drm/nouveau/falcon: add msgqueue interface drm/nouveau/falcon: support for gm20b msgqueue drm/nouveau/pmu: add msgqueue member drm/nouveau/secboot: support for loading LS PMU firmware drm/nouveau/secboot: base support for PMU falcon drm/nouveau/secboot: support PMU LS firmware drm/nouveau/secboot: support optional falcons drm/nouveau/secboot: check that WPR region is properly set drm/nouveau/pmu/gm20b: add msgqueue support drm/nouveau/secboot/gm20b: enable PMU firmware drm/nouveau/falcon: use NXTCTX register instead of NEW_INSTBLK drm/nouveau/falcon: delay construction of falcons to oneinit() drm/nouveau/nvdec: add gp102 support drm/nouveau/core: add SEC2 engine drm/nouveau/falcon: better detection of debug register drm/nouveau/falcon: fix base address of FBIF registers drm/nouveau/falcon: support for EMEM drm/nouveau/falcon/msgqueue: add SEC2 support drm/nouveau/secboot: add shadow blob argument drm/nouveau/secboot: get start address of blob from ACR drm/nouveau/secboot: support running ACR on SEC drm/nouveau/secboot: add support for SEC LS firmware drm/nouveau/secboot: share r361 BL structures and functions drm/nouveau/secboot: support for different load and unload falcons drm/nouveau/secboot: let callers interpret return value of blobs drm/nouveau/secboot: support for unload blob bootloader drm/nouveau/secboot: support standard NVIDIA HS binaries drm/nouveau/secboot: workaround bug when starting SEC2 firmware drm/nouveau/secboot: support for r364 ACR drm/nouveau/secboot: support for r367 ACR drm/nouveau/secboot: support for r375 ACR drm/nouveau/secboot: put HS code loading code into own file drm/nouveau/secboot: add gp102/gp104/gp106/gp107 support drm/nouveau/falcon: support for gp10x msgqueue drm/nouveau/gp10x: enable secboot and GR drm/nouveau/secboot: fix inconsistent pointer checking drm/nouveau/secboot: fix NULL pointer dereference drm/nouveau/secboot: allow to boot multiple falcons drm/nouveau/secboot: pass instance to LS firmware loaders drm/nouveau/secboot: let LS post_run hooks return error drm/nouveau/secboot: start LS firmware in post-run hook drm/nouveau/secboot/gm20b: specify MC base address as argument drm/nouveau/secboot: add GP10B support drm/nouveau/msgqueue: support for GP10B PMU firmware drm/nouveau/fifo: add GP10B support drm/nouveau/fb: add GP10B support drm/nouveau/mc: add GP10B support drm/nouveau/ibus: add GP10B support drm/nouveau/gr: support for GP10B drm/nouveau/platform: make VDD regulator optional drm/nouveau/platform: support for probing GP10B drm/nouveau/core: recognise GP10B chipset Ander Conselvan de Oliveira (39): drm/i915: Don't leak edid in intel_crt_detect_ddc() drm/i915: Don't init hpd polling for vlv and chv from runtime_suspend() drm/i915: Fix calculation of rotated x and y offsets for planar formats drm/i915: Check for NULL atomic state in intel_crtc_disable_noatomic() drm/i915/glk: Turn on workarounds that apply to Geminilake too drm/i915: Disable plane gamma in SKL+ sprite planes drm/i915/glk: Plane color correction register changes drm/i915: Split broadwell_load_luts() into smaller functions drm/i915/glk: Program pipe gamma and degamma tables drm/i915: Remove WA for swapped HPD pins in broxton A stepping drm/i915/dp: Move initialization of hpd_pin to a new function drm/i915: Make power domain masks 64 bit long drm/i915: Remove unused function intel_ddi_get_link_dpll() drm/i915: Convert remaining users of 32bit power domain masks drm/i915/glk: Load the degamma LUT even in legacy gamma mode drm/i915/glk: Enable pipe CSC drm/i915/glk: Fix watermark computations for third sprite plane drm/i915/glk: Fix maximum scaling factor for Geminilake scalers drm/i915/glk: Pass dev_priv to intel_atomic_setup_scalers() drm/i915/glk: Fix Geminilake scalers mode programming drm: Add name for DRM_DP_DUAL_MODE_LSPCON drm/i915: Store aux power domain in intel_dp drm/i915: Store encoder power domain in struct intel_encoder drm/i915: Check encoder type in enc_to_dig_port() drm/i915/glk: Implement WaDDIIOTimeout drm/i915/glk: Don't enable DDI IO power domains during init drm/i915: Only enable DDI IO power domains after enabling DPLL drm/i915: Enable DDI IO power domains in the DP MST path drm/i915: Pass intel_crtc to fdi_link_train() hooks drm/i915: Pass intel_crtc to intel_lpt_pch_enable() drm/i915: Pass pipe_config to pch_enable() functions drm/i915: Pass pipe_config to fdi_link_train() functions drm/i915: Pass intel_crtc to DDI functions called from crtc en/disable drm/i915: Remove direct usages of intel_crtc->config from DDI code drm/i915: Remove duplicate DDI enabling logic from MST path drm/i915/glk: Remove MODULE_FIRMWARE() tag from Geminilake's DMC drm/i915/glk: Improve rounding caused by pre-CSC gamma tables drm/i915/glk: Enable pooled EUs for Geminilake drm: Pass CRTC ID in userspace vblank events Andres Rodriguez (8): drm/amdgpu: make trace format uniform csv name=value drm/amdgpu: trace fence details in amdgpu_sched_run_job drm/amd/sched: add a unique job id to amd_sched_job drm/amdgpu: more ftrace formatting consistency fixes drm/amdgpu: use sched_job id instead of pointer for tracing drm/amdgpu: remove useless pointers from traces drm/amdgpu: replace fence pointer with fence data in traces drm/amdgpu: add macro to retrieve timeline name v2 Andrew F. Davis (2): drm/amdgpu: remove unneeded conversions to bool drm/amd/powerplay: remove unneeded conversions to bool Andrew Morton (1): drivers/gpu/drm/i915/selftests/i915_selftest.c: fix build with gcc-4.4.4 Andrey Grodzovsky (4): drm/atomic: Save flip flags in drm_crtc_state drm/nouveau/kms/nv50: Switch to using atomic helper for flip. drm/amdgpu: gb_addr_config struct drm/amdgpu: Add interrupt entries for CRTC_VERTICAL_INTERRUPT0. Andrey Ryabinin (1): drm/i915: fix use-after-free in page_flip_completed() Andrzej Hajda (1): drm/bridge/sii8620: add missing error handling in probe Andy Shevchenko (1): drm/radeon: remove useless and potentially wrong message Anusha Srivatsa (2): i915/HuC: Add an extra check for platforms that do not have HUC drm/i915/: DMC 1.04 for Geminilake Archit Taneja (27): drm/doc: Fix up some kms function names drm/msm/dsi: Fix bug in dsi_mgr_phy_enable drm/msm/mdp5: Update SSPP_MAX value drm/msm/mdp5: Bring back pipe_lock to mdp5_plane struct drm/msm/mdp5: describe LM instances in mdp5_cfg drm/msm/mdp5: Add structs for hw Layer Mixers drm/msm/mdp5: Start using mdp5_hw_mixer drm/msm/mdp5: Simplify LM <-> PP mapping drm/msm/mdp5: Clean up interface assignment drm/msm/mdp5: Remove the pipeline stuff in mdp5_ctl drm/msm/mdp5: subclass CRTC state drm/msm/mdp5: Prepare for dynamic assignment of mixers drm/msm/mdp5: Assign INTF and CTL in encoder's atomic_check() drm/msm/mdp5: Add more stuff to CRTC state drm/msm/mdp5: Start using parameters from CRTC state drm/msm/mdp5: Remove mixer/intf pointers from mdp5_ctl drm/msm/mdp5: Add a CAP for Source Split drm/msm/mdp5: Add optional 'right' Layer Mixer in CRTC state drm/msm/mdp5: Create mdp5_hwpipe_mode_set drm/msm/mdp5: Assign a 'right hwpipe' to plane state drm/msm/mdp5: Configure 'right' hwpipe drm/msm/mdp5: Prepare Layer Mixers for source split drm/msm/mdp5: Stage right side hwpipes on Right-side Layer Mixer drm/msm/mdp5: Stage border out on base stage if CRTC has 2 LMs drm/msm/mdp5: Assign 'right' mixer to CRTC state drm/msm/mdp5: Reset CTL blend registers before configuring them drm/msm/mdp5: Enable 3D mux in mdp5_ctl Arkadiusz Hiler (11): drm/i915/uc: Drop superfluous externs in intel_uc.h drm/i915/huc: Add huc_to_i915 drm/i915/uc: Rename intel_?uc_{setup, load}() to _init_hw() drm/i915/uc: Move intel_uc_fw_fetch() to intel_uc.c drm/i915/uc: Introduce intel_uc_init_fw() drm/i915/guc: Extract param logic form guc_init_fw() drm/i915/guc: Simplify intel_guc_init_hw() drm/i915/uc: Simplify firmware path handling drm/i915/uc: Separate firmware selection and preparation drm/i915/uc: Add params for specifying firmware drm/i915/uc: Rename intel_uc_fw.fw to .type Arnd Bergmann (5): drm/msm: add stubs for msm_{perf,rd}_debugfs_cleanup drm/i915: split out check for noncontiguous pfn range drm/msm: adreno: fix build error without debugfs drm: mali-dp: remove unused variable drm: mali-dp: use div_u64 for expensive 64-bit divisions Arthur Heymans (1): drm/i915: Get correct display clock on 945gm Ben Skeggs (14): drm/nouveau/priv: punt messages to debug level drm/nouveau/gr/gp102: initial support drm/nouveau/i2c: modify aux interface to return length actually transferred drm/nouveau/i2c/g94-: return REPLY_M value on reads drm/nouveau/kms/nv50: use drm core i2c-over-aux algorithm drm/nouveau/fb/gf100-: modify constructors to allow more customisation drm/nouveau/fb/gf108: split implementation from gf100 drm/nouveau/fb/gm200: split ram implementation from gm107 drm/nouveau/fb/gf100-: rework ram detection drm/nouveau/kms/nv50: fix setting of HeadSetRasterVertBlankDmi method drm/nouveau/kms/nv50: fix double dma_fence_put() when destroying plane state drm/nouveau: initial support (display-only) for GP107 drm/nouveau/gr/gp107: initial support drm/nouveau/bios/bitP: check that table is long enough for optional pointers Ben Widawsky (1): drm/i915: Use LINEAR modifier instead of NONE Benjamin Gaignard (2): of: add devm_ functions for populate and depopulate drm: sti: make driver use devm_of_platform_populate() Bing Niu (1): drm/i915: suppress atomic commit error message under gvt-g env Boris Brezillon (3): drm/atmel-hlcdc: Simplify the HLCDC layer logic drm/atmel-hlcdc: Fix suspend/resume implementation dt-bindings: Document the dmas and dma-names properties for VC4 HDMI Changbin Du (5): drm/i915: make context status notifier head be per engine drm/i915/gvt: Align render mmio list to cacheline drm/i915/gvt: remove redundant platform check for mocs load/restore drm/i915/gvt: remove redundant ring id check which cause significant CPU misprediction drm/i915/gvt: use directly assignment for structure copying Chen-Yu Tsai (24): drm/sun4i: Move drm_mode_config_cleanup call to main driver drm/sun4i: Fix up error path cleanup for master bind function drm/sun4i: Check return value of drm_vblank_init drm/sun4i: Fix kcalloc element size in sun4i_layers_init drm/sun4i: Drop useless assignment in sun4i_layers_init drm/sun4i: Save newly created layer in layers array in sun4i_layers_init drm/sun4i: Make sun4i_crtc_init return ERR_PTR style error codes drm/sun4i: Make sunxi_rgb2yuv_coef constant drm/sun4i: Set drm_crtc.port to the underlying TCON's output port node drm/sun4i: Add end of list element for sun4i_layers_init's returned list drm/sun4i: Move layers from sun4i_drv to sun4i_crtc drm/sun4i: Initialize crtc from tcon bind function drm/sun4i: Drop primary layer pointer from sun4i_drv drm/sun4i: Drop hardcoded .possible_crtcs values from layers drm/sun4i: tv: Switch to drm_of_find_possible_crtcs drm/sun4i: rgb: Pass tcon pointer when initializing RGB encoder drm/sun4i: Add backend pointer to sun4i_layer drm/sun4i: Add backend and tcon pointers to sun4i_crtc drm/sun4i: Fix TCON clock and regmap initialization sequence drm/sun4i: Fix tcon channel 0 comment about backporch = backporch + hsync drm/sun4i: Use embedded tcon pointer to get the tcon's output port node drm/sun4i: tv: Get tcon and backend pointers from associated crtc drm/sun4i: Pass pointers for associated backend and tcon into crtc init drm/sun4i: Pass pointer for underlying backend into layer init Chris Wilson (353): agp/intel: Move intel_fake_agp_sizes into #ifdef block drm/i915: Fix W=1 warning for csr_load_work_fn() drm/i915: Queue hangcheck when irqs are disabled drm/i915: Assert that the kernel_context is hw-id 0 drm/i915: Assert that the context-switch completion matches our context drm/i915: Pevent copying uninitialised garbage into vma->ggtt_view drm/i915: Remove disable_lite_restore_wa drm/i915: Remove BXT incoherent seqno write workaround drm/i915: Remove BXT restore arbitration around ctx switch drm/i915: Remove BXT disable pixel mask clamping w/a drm/i915: Remove BXT TDL state w/a drm/i915: Split intel_engine allocation and initialisation drm/i915: Reset the gpu on takeover drm/i915: Assert that we don't submit to execlists whilst a preempt is pending drm/i915: Only disable execlist preemption for the duration of the request drm/i915: Move breadcrumbs irq_posted up a level to engine drm/i915: Only run execlist context-switch handler after an interrupt drm/i915: Skip the execlists CSB scan and rewrite if the ring is untouched drm/i915: Only attempt to pass the first request to execlists drm/i915: Dequeue execlists on a new request if any port is available drm/i915: Emit dma-fence (and execlists submit) first from signaler drm/i915: Move atomic state free from out of fence release drm/i915: Remove early pre-production RPS workarounds for BXT drm/i915: Report the failure to write to the punit drm/i915: Also clear the punit's PDATA sideband register drm/i915: Enable userspace to opt-out of implicit fencing drm/i915: Support explicit fencing for execbuf drm/i915: Make intel_detect_preproduction_hw easier to extend drm/i915: Mark the kernel as tainted if we fail the preproduction check drm/i915: Add early BXT sdv to the list of preproduction machines drm/i915: Record more information about the hanging contexts drm/i915: Be defensive when cleaning up i915_gem_internal pages drm/i915: Treat stolen memory as DMA addresses drm/i915: Sanity check the computed size and base of stolen memory drm/i915: Flush untouched framebuffers before display on !llc drm/i915/execlists: Skip resetting RING_CONTEXT_STATUS_PTR drm/i915/execlists: Add interrupt-pending check to intel_execlists_idle() drm/i915: Build DRM range manager selftests for CI drm/i915: Recreate internal objects with single page segments if dmar fails drm/i915: Reject set-tiling-ioctl with stride==0 and a tiling mode drm/i915: Tidy the tail of i915_tiling_ok() drm/i915: Allow large objects to be tiled on gen2/3 drm/i915: Drain the freed state from the tail of the next commit drm/i915: Print execlists restart after reset drm/i915: Manipulate the Global GTT size using I915_GTT_PAGE_SIZE drm/i915: Assign I915_COLOR_UNEVICTABLE to the address space head_node drm/i915: Use page coloring to provide the guard page at the end of the GTT drm: Micro-optimise drm_mm_for_each_node_in_range() drm/i915: Mark the end of intel_ring_begin() and check in intel_ring_advance() drm/i915: Avoid unguarded reads from the request pointer drm/i915: Generate i915_params {} using a macro drm/i915: Use bool i915_param.alpha_support drm/i915: Capture module parameters for the GPU error state drm/i915: Show the current i915_params in debugfs/i915_capabilites drm/i915: Remove overzealous fence warn on runtime suspend drm/i915: Restore context and pd for ringbuffer submission after reset drm/i915: i915_gem_shrink_all() needs an awake device drm/i915: Move calling engine->init_hw() to its own function drm/i915: Split GEM resetting into 3 phases drm/i915: Disable engine->irq_tasklet around resets drm/i915: Check for timeout completion when waiting for the rq to submitted drm/i915: Assert that we never create a vma for the aliasing_ppgtt drm/i915: Use the size/type of address space to make decisions drm/i915: Always pin contexts into the high GGTT drm/i915/byt: Take powerwell for reading PIPESTAT in debugfs drm/i915: Split device release from unload drm/i915: Unbind any residual objects/vma from the Global GTT on shutdown drm/i915: Flush the freed object queue on device release drm/i915: Move the irq_barrier for reset earlier into reset_prepare drm/i915: Rename conditional GEM execution macros drm/i915: Assert that the active request hasn't been signaled drm/i915: Always call i915_gem_reset_finish() following i915_gem_reset_prepare() drm/i915: Kill the tasklet then disable drm/i915: Park the breadcrumbs signaler across a GPU reset drm/i915: Clear the last_retired_context following a hang/reset drm/i915: Provide a hook for selftests drm/i915: Add some selftests for sg_table manipulation drm/i915: Add unit tests for the breadcrumb rbtree, insert/remove drm/i915: Add unit tests for the breadcrumb rbtree, completion drm/i915: Add unit tests for the breadcrumb rbtree, wakeups drm/i915: Mock the GEM device for self-testing drm/i915: Mock a GGTT for self-testing drm/i915: Mock infrastructure for request emission drm/i915: Create a fake object for testing huge allocations drm/i915: Add selftests for i915_gem_request drm/i915: Add a simple request selftest for waiting drm/i915: Add a simple fence selftest to i915_gem_request drm/i915: Simple selftest to exercise live requests drm/i915: Test simultaneously submitting requests to all engines drm/i915: Test request ordering between engines drm/i915: Live testing of empty requests drm/i915: Add selftests for object allocation, phys drm/i915: Add a live seftest for GEM objects drm/i915: Test partial mappings drm/i915: Test exhaustion of the mmap space drm/i915: Test coherency of and barriers between cache domains drm/i915: Move uncore selfchecks to live selftest infrastructure drm/i915: Test all fw tables during mock selftests drm/i915: Sanity check all registers for matching fw domains drm/i915: Add some mock tests for dmabuf interop drm/i915: Add a live dmabuf selftest drm/i915: Add initial selftests for i915_gem_gtt drm/i915: Exercise filling the top/bottom portions of the ppgtt drm/i915: Exercise filling the top/bottom portions of the global GTT drm/i915: Fill different pages of the GTT drm/i915: Exercise filling and removing random ranges from the live GTT drm/i915: Live testing of lowlevel GTT operations drm/i915: Use fault-injection to force the shrinker to run in live GTT tests drm/i915: Test creation of VMA drm/i915: Exercise i915_vma_pin/i915_vma_insert drm/i915: Verify page layout for rotated VMA drm/i915: Test creation of partial VMA drm/i915: Live testing for context execution drm/i915: Extract aliasing ppgtt setup drm/i915: Force an aliasing_ppgtt test for context execution drm/i915: Initial selftests for exercising eviction drm/i915: Add mock exercise for i915_gem_gtt_reserve drm/i915: Add mock exercise for i915_gem_gtt_insert drm/i915: Add mock tests for GTT/VMA handling drm/i915: Exercise manipulate of single pages in the GGTT drm/i915: Exercise crossing pot boundaries in the GTT drm/i915: Add initial selftests for hang detection and resets drm/i915/gvt: Disable access to stolen memory as a guest drm/i915: Pass timeout==0 on to i915_gem_object_wait_fence() drm: Reduce EDID warnings from DRM_ERROR to DRM_NOTE drm/i915: Avoid overflow in computing pot_hole loop termination drm/i915: Silence compiler for GTT selftests drm/i915: Silence compiler warning for seltests/i915_gem_coherency drm/i915/guc: Don't take struct_mutex for object unreference drm/i915: The return of i915_gpu_info to debugfs drm/i915: Enable fine-tuned RPS for cherryview drm/i915: Don't accidentally increase the frequency in handling DOWN rps drm/i915: Only apply the jump to the "efficient RPS" frequency on startup drm/i915: Micro-optimise i915_get_ggtt_vma_pages() drm/i915: Micro-optimise gen6_ppgtt_insert_entries() drm/i915: Micro-optimise gen8_ppgtt_insert_entries() drm/i915: Don't special case teardown of aliasing_ppgtt drm/i915: Split ggtt/alasing_gtt unbind_vma drm/i915: Convert clflushed pagetables over to WC maps drm/i915: Remove kmap/kunmap wrappers drm/i915: Move allocate_va_range to GTT drm/i915: Always preallocate gen6/7 ppgtt drm/i915: Remove redundant clear of appgtt drm/i915: Tidy gen6_write_pde() drm/i915: Remove bitmap tracking for used-ptes drm/i915: Remove bitmap tracking for used-pdes drm/i915: Remove bitmap tracking for used-pdpes drm/i915: Remove bitmap tracking for used-pml4 drm/i915: Remove superfluous posting reads after clear GGTT drm/i915: Always mark the PDP as dirty when altered drm/i915: Remove defunct GTT tracepoints drm/i915: Remove unused ppgtt->enable() drm/i915: Remove i915_address_space.start drm/i915: Only preallocate the aliasing GTT to the extents of the global GTT drm/i915: Differentiate the aliasing_ppgtt with an invalid filp drm/i915: Use preferred kernel types in i915_gem_gtt.c drm/i915: Only enable hotplug interrupts if the display interrupts are enabled drm/i915: Squelch any ktime/jiffie rounding errors for wait-ioctl drm/i915: Unwind conversion to i915_gem_phys_ops on failure drm/i915: Remove struct_mutex for destroying framebuffers drm/i915: struct_mutex is not required for allocating the framebuffer drm/i915: Drop struct_mutex around frontbuffer flushes drm/i915: Postpone fake breadcrumb interrupt until real interrupts cease drm/i915: Break i915_spin_request() if we see an interrupt drm/i915: Defer declaration of missed-interrupt until the waiter is asleep drm/i915: Only start with the fake-irq timer if interrupts are dead drm/i915: Remove completed fences after a wait drm/i915: Only apply legacy PDE overflow detection to 3lvl machines drm/i915: Remove unneeded struct_mutex around rpm drm/i915: Prevent divide-by-zero in debugfs/i915_rps_boost_info drm/i915: Move the common RPS warnings to intel_set_rps() drm/i915: Store the requested frequency whilst RPS is disabled drm/i915: Remove unrequired POSTING_READ from gen6_set_rps() drm/i915: Assert that the request->tail is always qword aligned drm/i915: Use reservation_object_lock() drm/i915: Add i915_param charp macro magic drm/i915: Remove change_domain tracepoint drm/i915: Move cpu_cache_is_coherent() to header drm/i915: Amalgamate flushing of display objects drm/i915: Skip clflushes for all non-page backed objects drm/i915: Perform object clflushing asynchronously drm/i915: Remove 'retire' parameter from intel_fb_obj_flush drm/i915: Remove Braswell GGTT update w/a Revert "drm/i915/dp: Ratelimit DP aux timeout messages" drm/i915: Check against the signaled bit for fences/requests drm/i915: Keep a global seqno per-engine drm/i915: Move reserve_seqno() next to unreserve_seqno() drm/i915: Use a local to shorten req->i915->gpu_error.wait_queue drm/i915: Add ourselves to the gpu error waitqueue for the entire wait drm/i915: Inline __i915_gem_request_wait_for_execute() drm/i915: Deconstruct execute fence drm/i915: Protect the request->global_seqno with the engine->timeline lock drm/i915: Take a reference whilst processing the signaler request drm/i915: Allow a request to be cancelled drm/i915: Remove the preempted request from the execution queue drm/i915: Exercise request cancellation using a mock selftest drm/i915: Replace reset_wait_queue with default_wake_function drm/i915: Refactor direct GPU reset from request waiters drm/i915: Immediately process a reset before starting waiting drm/i915: Remove one level of indention from wait-for-execute drm/i915: Suppress fbc suggestion to increase stolen if disabled drm/i915/fbdev: Stop repeating tile configuration on stagnation drm/i915/execlists: Detect an out-of-order context switch drm/i915: Timeout lowlevel_hole GTT selftest early drm/i915: Assert all sg are initialised in fake_dma_object for selftests drm/i915: Assert we do not overflow 4lvl page directories drm/i915: Sanity check the vma->node prior to binding into the GTT drm/i915: Advance start address on crossing PML (48b ppgtt) boundary dma-buf/reservation: Wrap ww_mutex_trylock drm/i915: Only unwind the local pgtable layer if empty drm/i915: Unwind vma->pages allocation upon failure drm/i915: Remove the vma from the drm_mm if binding fails drm/i915: Remove redundant TLB invalidate on switching contexts drm/i915: Remove redundant TLB invalidate on switching ppgtt drm/i915: Reduce context alignment drm/i915: Distinguish between timeout and error in sideband transactions drm/i915: Report both waiters and success from intel_engine_wakeup() drm/i915: Signal first fence from irq handler if complete drm/i915: Defer enabling hangcheck to the first fake breadcrumb interrupt drm/i915: Delay disabling the user interrupt for breadcrumbs drm/i915: Consolidate reporting of "missed breadcrumbs" drm/i915/guc: Make wq_lock irq-safe drm/i915/guc: Reorder __i915_guc_submit to reduce spinlock holdtime drm/i915: Tighten mmio arrays for MIPI_PORT drm/i915: Fix all intel_framebuffer_init failures to take the error path drm/i915: Prevent concurrent tiling/framebuffer modifications drm/i915: Move w/a LRI debug message from context-init to driver load drm/i915: Hold rpm during GEM suspend in driver unload/suspend drm/i915: Restore the invalid access without RPM warning drm/i915: Assert that fence->lock is held in an irq-safe manner drm/i915: s/assert_spin_locked/lockdep_assert_held/ drm/i915/guc: Disable irq for __i915_guc_submit wq_lock drm/i915: Include GT/seqno activity in engine/hangcheck debugfs drm/i915: Include power-management state in gpu error dump drm/i915: Drop spinlocks around adding to the client request list drm/i915: Differentiate between hangcheck waiting for timer or scheduler drm/i915: Ensure the engine is idle before manually changing HWS drm/i915: Generalise wait for execlists to be idle drm/i915: Take reference for signaling the request from hardirq drm/i915: Refactor wakeup of the next breadcrumb waiter drm/i915: Split breadcrumbs spinlock into two drm/i915: Wake up all waiters before idling drm/i915: Take rpm wakelock for releasing the fence on unbind drm/i915: Avoid clearing the base drm_crtc_state drm/i915: Flush idle work when changing missed-irq fault injection drm/i915: Store a permanent error in obj->mm.pages drm/i915: Use pagecache write to prepopulate shmemfs from pwrite-ioctl drm/i915: Avoiding recursing on ww_mutex inside shrinker drm/i915: Purge i915_gem_object_is_dead() drm/i915: Check for an invalid seqno before __i915_gem_request_started drm/i915/userptr: Deactivate a failed userptr if the worker reports an EFAULT drm/i915/userptr: Only flush the workqueue if required drm/i915/userptr: Disallow wrapping GTT into a userptr drm/i915: Ignore skl+ for debugfs/i915_sr_status drm/i915/cmdparser: Limit clflush to active cachelines drm/i915: Extend debugfs/i915_drop_caches to call i915_gem_shrink_all() drm/i915: Stop using RP_DOWN_EI on Baytrail drm/i915: Use max(render, media) for Baytrail busyness calculation drm/i915: Defer unmasking RPS interrupts until after making adjustments drm/i915: Rename REDIRECT_TO_GUC bit drm/i915: Move whole object to CPU domain for coherent shmem access drm/i915/selftests: Fix error path for ggtt walk_hole() drm/i915/selftests: Catch error from mock_file() drm/i915: Inline gen6_sanitize_rps_pm_mask() drm/i915: Extend rpm wakelock for debugfs/i915_drpc_info drm/i915: Avoid rcu_barrier() from reclaim paths (shrinker) drm/i915: Extend rpm wakelock during i915_handle_error() drm/i915/breadcrumbs: Use booleans for intel_breadcrumbs_busy() drm/i915/breadcrumbs: Update bottom-half before marking as complete drm/i915/breadcrumbs: Disable interrupt bottom-half first on idling drm/i915/breadcrumbs: Assert that we do not shortcut the current bottom-half drm/i915: Only attempt to signal the request once from the interrupt handler drm/i915/breadcrumbs: Tweak commentary drm: Defer disabling the vblank IRQ until the next interrupt (for instant-off) drm: Skip the waitqueue setup for vblank queries drm/i915/userptr: Reinvent GGTT self-faulting protection drm/i915: Replace irq_seqno_barrier on hws write with a clflush drm/i915/scheduler: emulate a scheduler for guc drm/i915: Split I915_RESET_IN_PROGRESS into two flags drm/i915: Move engine->submit_request selection to a vfunc drm/i915: Restore engine->submit_request before unwedging drm/i915: Wait for reset to complete before returning from debugfs/i915_wedged drm/i915: Assert that the context pin_counts do not overflow drm/i915: Avoid use-after-free of ctx in request tracepoints drm/i915: Remove superfluous i915_add_request_no_flush() helper drm/i915: Squelch WARN for VLV_COUNTER_CONTROL drm/i915: Stop using obj->obj_exec_link outside of execbuf drm/i915: Skip execlists_dequeue() early if the list is empty drm/i915: Add i810/i815 pci-ids for completeness drm/i915: Retire an active batch pool object rather than allocate new drm/i915: i915_gem_object_create_from_data() doesn't require struct_mutex drm/i915: Correct error handling for i915_gem_object_create_from_data() drm/i915: Initialise i915_gem_object_create_from_data() directly drm/i915: Reset tasklet back to execlists after disabling guc drm/i915: Skip force-wake for uncached mmio flush of GGTT writes drm/i915: Protect intel_engine_wakeup() for call from irq context drm/i915: intel_engine_init_global_seqno() requires atomic kmap drm/i915/execlists: Split the atomic test_and_clear_bit for irq handler drm/i915: Remove intel_ring.last_retired_head drm/i915: Prefer to report ENOMEM rather than incur the oom for gfx allocations drm/i915: Actually pass the reclaim gfp_t along to shmemfs! drm/i915: Remove superfluous hw_flags from mi_set_context() drm/i915: Restore marking context objects as dirty on pinning drm/i915: Eliminate per-fw_domain i915 backpointer drm/i915: Use correct fw_domains during initialisation drm/i915: Use correct fw_domains during reset drm/i915: Skip unused fw_domains drm/i915: Remove posting-read for forcewake put drm/i915: All fw_domains share the same set/clear/reset values drm/i915: Drop uncore spinlock for reading debugfs forcewake counters drm/i915: Wait for all fences before installing an exclusive clflush fence drm/i915/execlists: Relax the locked clear_bit(IRQ_EXECLIST) drm/i915/guc: Refactor the retrieval of guc_process_desc drm/i915: Disable MI_SET_CONTEXT psmi w/a for bdw drm/i915: Fix semaphore emission for BDW+ RCS ringbuffer emission drm/i915/execlists: Trim irq handler drm/i915: Check we have an wake device before flushing GTT writes drm/i915: Limit number of reads to stabilize rc6 counter reads drm/i915: Align "unfenced" tiled access on gen2, early gen3 drm/i915: Fixup intel_write_status_page() for old CPUs without clflush drm/i915: Remove unused intel_flush_status_page() drm/i915: Use BIT() for computing the engine's flag drm/i915/execlists: Wrap tail pointer after reset tweaking drm/i915: Assert that the request->tail fits within the ring drm/i915: Refactor tests for validity of RING_TAIL drm/i915: Mark manually wedged engines as guilty drm/i915: Take rpm wakelock around debugfs/i915_gpu_info drm/i915: Avoid lock dropping between rescheduling drm: Make the decision to keep vblank irq enabled earlier drm: Mark up accesses of vblank->enabled outside of its spinlock drm: vblank cannot be enabled if dev->irq_enabled is false drm: Refactor vblank sequence number comparison drm: Peek at the current counter/timestamp for vblank queries Revert "drm/i915: Skip execlists_dequeue() early if the list is empty" drm/i915: Ironlake do_idle_maps w/a may be called w/o struct_mutex drm/i915: Use a dummy timeline name for a signaled fence drm: Convert cmpxchg(bool) back to a two step operation drm/i915: Drop verbose and archaic "ring" from our internal engine names drm/i915: Do request retirement before marking engines as wedged drm/i915: Suppress busy status for engines if wedged drm/i915: Move retire-requests into i915_gem_wait_for_idle() drm/i915: Wait for all engines to be idle as part of i915_gem_wait_for_idle() drm/i915: Remove redudant wait for each engine to idle from seqno wrap drm/i915: Combine reset_all_global_seqno() loops into one drm/i915: Clear gt.active_requests before checking idle status drm: Don't allow interruptions when opening debugfs/crc drm/i915: Park the signaler before sleeping drm/i915: Apply a cond_resched() to the saturated signaler drm/i915: Use the right mapping_gfp_mask for final shmem allocation drm/i915: Fix use after free in lpe_audio_platdev_destroy() drm/i915/selftests: Allocate inode/file dynamically drm/i915: Avoid busy-spinning on VLV_GLTC_PW_STATUS mmio drm/i915: Confirm the request is still active before adding it to the await Chris Zhong (14): dt-bindings: add rk3399 support for dw-mipi-rockchip drm/rockchip/dsi: dw-mipi: support RK3399 mipi dsi drm/rockchip/dsi: dw-mipi: correct the coding style drm/rockchip/dsi: remove mode_valid function dt-bindings: add power domain node for dw-mipi-rockchip drm/rockchip/dsi: fix insufficient bandwidth of some panel drm/rockchip/dsi: add dw-mipi power domain support drm/rockchip: cdn-dp: return error code when clk_get_rate failed drm/rockchip: cdn-dp: Correct PHY register address drm/rockchip: cdn-dp: add more log for video config drm/rockchip/dsi: check phy_cfg_clk only for RK3399 dt-bindings: add the grf clock for dw-mipi-dsi drm/rockchip/dsi: enable the grf clk before writing grf registers drm/rockchip/dsi: correct the grf_switch_reg name Christian König (47): drm/amdgpu: add support for BO_VAs without BO v2 drm/amdgpu: add basic PRT support (v2) drm/amdgpu: implement PRT for GFX6 v2 drm/amdgpu: implement PRT for GFX7 v2 drm/amdgpu: implement PRT for GFX8 v2 drm/amdgpu: fix PTE defines drm/amdgpu: minor PRT turnoff fix (v2) drm/amdgpu: add OOM fallback on PRT teardown (v2) drm/amdgpu: fix PRT teardown on VM fini v3 drm/amdgpu: disable HDP flushes on APUs drm/amdgpu: remove unused sync testing drm/amdgpu: make set_prt callback optional and fix error handling drm/amdgpu: separate page table allocation from mapping drm/amdgpu: implement AMDGPU_VA_OP_CLEAR v2 drm/amdgpu: add a VM mapping replace operation v2 drm/amdgpu: add IV trace point drm/amdgpu: rename page_directory_fence to last_dir_update drm/amdgpu: add the VM pointer to the amdgpu_pte_update_params as well drm/amdgpu: add num_level to the VM manager drm/amdgpu: generalize page table level drm/amdgpu: handle multi level PD size calculation (v2) drm/amdgpu: handle multi level PD during validation drm/amdgpu: handle multi level PD in the LRU drm/amdgpu: handle multi level PD updates V2 drm/amdgpu: handle multi level PD during PT updates drm/amdgpu: add alloc/free for multi level PDs V2 drm/amdgpu: drop GB_GPU_ID from the golden settings drm/amdgpu: remove duplicate allowed reg CP_CPF_BUSY_STAT drm/amdgpu: just disallow reading untouched registers drm/amdgpu: use a 64bit interval tree for VM management v2 drm/ttm: cleanup and optimize ttm_bo_mem_compat v2 drm/ttm: add io_mem_pfn callback drm/ttm: add TTM_PL_FLAG_CONTIGUOUS v2 drm/amdgpu: drop alpha support drm/amdgpu: fix VMHUB order to match the hardware drm/amdgpu: move VM related defines into amdgpu_vm.h drm/amdgpu: remove VMID first tracking drm/amdgpu: coding style of amdgpu_vm_is_gpu_reset drm/amdgpu: cleanup coding style in amdgpu_vm_flush drm/amdgpu: cleanup logic in amdgpu_vm_flush drm/amdgpu: move adjust_mc_addr into amdgpu_gart_funcs drm/amdgpu: use TTM_PL_FLAG_CONTIGUOUS v2 drm/amdgpu: handle CPU access for split VRAM buffers (v2) drm/amdgpu: cleanup VMHUB bit definitions v2 drm/amdgpu: cleanup get_invalidate_req v2 drm/amdgpu: fix over allocating of IRQ sources drm/amdgpu: fix "fix 64bit division" Christopher James Halse Rogers (5): drm/radeon: Fail fb creation from imported dma-bufs. drm/amdgpu: Fail fb creation from imported dma-bufs. (v2) drm/amdgpu: Refuse to pin or change acceptable domains of prime BOs to VRAM. (v2) drm/radeon: Maintain prime import/export refcount for BOs drm/radeon: Refuse to migrate a prime BO to VRAM. (v2) Christopher Spinrath (1): drm/bridge: ti-tfp410: support hpd via gpio Chuanxiao Dong (1): drm/i915/gvt: set ring buffer size to default for guc submission Chunming Zhou (9): drm/amdgpu: expand pte flags to uint64_t drm/amd/sched: revise priority number drm/amdgpu: fix duplicated code drm/amdgpu: abstract block size to one function drm/amdgpu: limit block size to one page drm/amdgpu: adapt vm size for multi vmpt drm/amdgpu: set page table depth by num_level drm/amdgpu: enable four level VMPT for gmc9 drm/amdgpu: fix fence memory leak in wait_all_fence V2 Colin Ian King (4): drm/vc4: simplify exit path of a failed allocation of dsi_connector drm: kselftest: fix spelling mistake: "misalinged" -> "misaligned" drm: vc4: remove redundant check of plane being non-null drm/amdgpu: remove redundant outer loop and remove commented out code Dan Carpenter (8): drm: qxl: add missing return check drm/amd/powerplay: fix pp_dpm_get_current_power_state() (v2) drm/amd/powerplay: fix a couple locking issues drm/amdgpu: Fix a NULL deref in amdgpu_vm_add_prt_cb() drm: bridge: dw-hdmi: Add a missing break statement drm/i915/gvt: fix a bounds check in ring_id_to_context_switch_event() drm: atmel-hlcdc: Uninitialized return in atmel_hlcdc_create_outputs() drm/i915: checking for NULL instead of IS_ERR() in mock selftests Daniel Vetter (106): Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued drm/i915: Update DRIVER_DATE to 20170206 drm/fb-helper: Explain unload sequence a bit better drm/fb-helper: Automatically clean up fb_info Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued Merge airlied/drm-next into drm-misc-next Merge airlied/drm-next into drm-misc-next drm/docs: Record TODO about plane clipping drm/doc: Capture TODO for deferred fbdev setup MAINTAINERS: Update git entries for drivers in drm-misc Revert "drm/i915: Implement Link Rate fallback on Link training failure" drm/i915: Update DRIVER_DATE to 20170306 Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued drm/i915: Use drm_connector_list_iter in debugfs drm/i915: use drm_connector_list_iter in intel_hotplug.c drm/i915: use drm_connector_list_iter in intel_opregion.c drm/i915: Make intel_get_pipe_from_connector atomic drm/i915: use for_each_intel_connector_iter in intel_display.c drm/i915: Fix up verify_encoder_state drm/doc: Add todo about connector_list_iter drm: Extract drm_prime.h drm: Move drm_lock_data out of drmP.h drm: Extract drm_pci.h drm: Remove drmP.h include from drm_kms_helper_common.c drm/doc: document fallback behaviour for atomic events drm: rename drm_fops.c to drm_file.c drm: Remove DRM_MINOR_CNT drm: Extract drm_file.h Merge branch 'drm/next/platform' of git://linuxtv.org/pinchartl/media into drm-misc-next Merge tag 'topic/designware-baytrail-2017-03-02' of git://anongit.freedesktop.org/git/drm-intel into drm-intel-next-queued drm/i915: annote drop_caches debugfs interface with lockdep drm/i915: Merge pre/postclose hooks drm: Remove drm_pending_event->pid drm/doc: Document drm_file.[hc] drm/vgem: switch to postclose drm: Create DEFINE_DRM_GEM_CMA_FOPS and roll it out to drivers drm/gem: Add DEFINE_DRM_GEM_FOPS Merge tag 'doc-4.11-images' of git://git.lwn.net/linux into drm-misc-next drm/doc: Add KMS overview graphs drm/doc: Consistent kerneldoc include order drm/doc: diagram for mode objects and properties drm/doc: atomic overview, with graph drm/i915: Update DRIVER_DATE to 20170320 drm/doc: Document feature merge deadlines Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux into drm-misc-next drm: drop extern from function decls drm: Extract drm_debugfs.h drm: document driver interface for CRC capturing drm/debugfs: Add kerneldoc drm/tilcdc: Drop calls to modeset_lock_crtc drm: Extract drm_ioctl.h drm/todo: Add tinydrm refactoring ideas drm/vblank: Remove DRM_VBLANKTIME_IN_VBLANK drm/atomic: Introduce drm_atomic_helper_shutdown drm/tegra: Don't use modeset_lock_crtc Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued drm/doc: remove standard connector props from the csv file drm: Document kms locking a bit better drm: document the all the atomic iterators drm: Wire up proper acquire ctx for plane functions drm: Add acquire ctx parameter to ->update_plane drm: drm_plane_force_disable is not for atomic drivers drm: Add acquire ctx parameter to ->plane_disable drm/atomic-helper: remove backoff hack from disable/update_plane Merge remote-tracking branch 'airlied/drm-next' into drm-intel-next-queued drm: Roll out acquire context for the page_flip ioctl drm: Add acquire ctx parameter to ->page_flip(_target) drm/atomic-helper: remove backoff hack from page_flip drm: simplify the locking in the GETCRTC ioctl drm: Restrict drm_mode_set_config_internal to non-atomic drivers drm: Add explicit acquire ctx handling around ->set_config drm: Add acquire ctx parameter to ->set_config drm/atomic-helper: Remove the backoff hack from set_config drm/etnaviv: switch to postclose drm/radeon: Merge pre/postclose hooks drm/amdgpu: Merge pre/postclose hooks drm: Fixup failure paths in drm_atomic_helper_set_config Merge tag 'gvt-next-2017-03-30' of https://github.com/01org/gvt-linux into drm-intel-next-queued drm: Clear e after kfree in drm_mode_page_flip_ioctl drm: Fix locking gotcha in page_flip ioctl drm/i915: Update DRIVER_DATE to 20170403 drm: update todo.rst drm: Consolidate and document sysfs support drm: document drm_ioctl.[hc] drm/doc: Small markup fixup drm: Make drm_modeset_lock_crtc internal drm: Remove drm_modeset_(un)lock_crtc drm: Remove drm_modeset_legacy_acquire_ctx and crtc->acquire_ctx drm/atomic-helper: remove modeset_lock_all from helper_resume drm: drop modeset_lock_all from drm_state_info drm: Drop modeset_lock_all from the getproperty ioctl drm: Only take crtc lock in get_gamma ioctl drm/i915: Nuke intel_atomic_legacy_gamma_set drm/fb-helper: Give up on kgdb for atomic drivers drm: Add explicit acquire ctx handling around ->gamma_set drm: Add acquire ctx to ->gamma_set hook drm/atomic-helper: Remove legacy backoff hack from gamma_set drm: extract legacy framebuffer remove drm/fb-helper: Extract _legacy kms functions drm: Take mode_config.mutex in setcrtc ioctl drm/vmwgfx: Fix fbdev emulation using legacy functions drm: Only take cursor locks when the cursor plane exists drm/msm: switch to postclose drm/msm: Simplify vblank event delivery drm: Fix get_property logic fumble Daniele Ceraolo Spurio (3): drm/i915: fix pm refcounting on fence error in execbuf drm/i915: refactor register fw read/write macros for recent GENs drm/i915/guc: limit forcewake to blitter domain in guc_send Dave Airlie (33): Merge tag 'drm-misc-next-2017-03-06' of git://anongit.freedesktop.org/git/drm-misc into drm-next Merge tag 'drm-intel-next-2017-03-06' of git://anongit.freedesktop.org/git/drm-intel into drm-next Merge branch 'linux-4.12' of git://github.com/skeggsb/linux into drm-next Merge tag 'drm-misc-next-2017-03-12' of git://anongit.freedesktop.org/git/drm-misc into drm-next Merge tag 'imx-drm-next-2017-03-17' of git://git.pengutronix.de/git/pza/linux into drm-next Merge tag 'drm-intel-next-2017-03-20' of git://anongit.freedesktop.org/git/drm-intel into drm-next Merge tag 'drm-misc-next-2017-03-21' of git://anongit.freedesktop.org/git/drm-misc into drm-next BackMerge tag 'v4.11-rc3' into drm-next Backmerge tag 'v4.11-rc4' into drm-next Merge branch 'drm-next-4.12' of git://people.freedesktop.org/~agd5f/linux into drm-next Merge branch 'drm-vmwgfx-next' of git://people.freedesktop.org/~syeh/repos_linux into drm-next Merge tag 'drm-misc-next-2017-03-31' of git://anongit.freedesktop.org/git/drm-misc into drm-next Merge tag 'omapdrm-4.12' of git://git.kernel.org/.../tomba/linux into drm-next Merge branch 'drm/next/du' of git://linuxtv.org/pinchartl/media into drm-next Merge branch 'linux-4.12' of git://github.com/skeggsb/linux into drm-next Merge tag 'imx-drm-next-2017-04-04' of git://git.pengutronix.de/git/pza/linux into drm-next Merge branch 'etnaviv/next' of https://git.pengutronix.de/git/lst/linux into drm-next Merge branch 'drm-next-4.12' of git://people.freedesktop.org/~agd5f/linux into drm-next Merge branch 'drm-next-4.12' of https://github.com/ckhu-mediatek/linux.git-tags into drm-next Merge tag 'drm-intel-testing-2017-04-03' of git://anongit.freedesktop.org/git/drm-intel into drm-next Merge branch 'drm-next-4.12' of git://people.freedesktop.org/~agd5f/linux into drm-next Backmerge tag 'v4.11-rc6' into drm-next Merge tag 'drm-misc-next-2017-04-07' of git://anongit.freedesktop.org/git/drm-misc into drm-next Merge branch 'msm-next' of git://people.freedesktop.org/~robclark/linux into drm-next Merge tag 'drm/panel/for-4.12-rc1' of git://anongit.freedesktop.org/tegra/linux into drm-next Merge tag 'drm-misc-next-fixes-2017-04-12' of git://anongit.freedesktop.org/git/drm-misc into drm-next Merge tag 'v4.11-rc7' into drm-next Merge tag 'sunxi-drm-for-4.12' of https://git.kernel.org/.../mripard/linux into drm-next Merge tag 'drm-misc-next-fixes-2017-04-20' of git://anongit.freedesktop.org/git/drm-misc into drm-next Merge branch 'for-upstream/mali-dp' of git://linux-arm.org/linux-ld into drm-next Merge branch 'drm-vmwgfx-next' of git://people.freedesktop.org/~syeh/repos_linux into drm-next Merge tag 'drm-intel-next-fixes-2017-04-27' of git://anongit.freedesktop.org/git/drm-intel into drm-next Merge branch 'linux-4.12' of git://github.com/skeggsb/linux into drm-next Deepak M (7): drm/i915: Set the Z inversion overlap field drm/i915/glk: Program dphy param reg for GLK drm/i915/glk: Program new MIPI DSI PHY registers for GLK drm/i915/glk: Add DSI PLL divider range for glk drm/i915i/glk: Program MIPI_CLOCK_CTRL only for BXT drm/i915/glk: Program txesc clock divider for GLK drm/i915/glk: Add MIPIIO Enable/disable sequence Deepak S (1): drm/i915/chv: Set min freq to RPn on CHV. Eric Anholt (9): drm/vc4: Drop debug print at boot with DPI enabled. drm/vc4: Convert existing documentation to actual kerneldoc. drm/vc4: Add RST to bring together vc4 kerneldoc. drm/vc4: Extend and edit documentation for output from the RST drm/vc4: Add a paragraph at the top of vc4 docs introducing what it is. drm/vc4: Fulfill user BO creation requests from the kernel BO cache. drm/vc4: Fix OOPSes from trying to cache a partially constructed BO. drm/vc4: Add HDMI audio support drm: Clarify the role of plane_state argument to drm_simple update(). Eric Huang (22): drm/amd/amdgpu: add power profile sysfs entry drm/amd/powerplay: reapply power profile when force dpm level to auto drm/amd/powerplay: add power profile support for SMU7 drm/amd/powerplay: add power profile support for tonga drm/amd/powerplay: add power profile support for Fiji drm/amd/powerplay: add power profile support for Polaris drm/amd/amdgpu: add power profile support for CI drm/amd/powerplay: change parameter type pointer from int32_t to void in read sensor drm/amd/powerplay: add power consumption display support in debugfs drm/amd/powerplay: implement gpu power display for smu7_hwmgr drm/amd/powerplay: add voltage change support through pp_table drm/amd/powerplay: add function avfs control in smu7 drm/amd/powerplay: simplify avfs control code in smu7 drm/amdgpu: enable GFX/UVD/VCE PG for Bristol drm/amd/powerplay: restore disabling power containment on Fiji (v2) drm/amd/powerplay: add smu9 header files for Vega10 drm/amd/powerplay: add new Vega10's ppsmc header file drm/amdgpu: add new atomfirmware based helpers for powerplay drm/amd/powerplay: add some new structures for Vega10 drm/amd: add structures for display/powerplay interface drm/amd/powerplay: add some display/powerplay interfaces drm/amd/powerplay: add Vega10 powerplay support (v5) Evan Quan (1): drm/amdgpu/smu9: update to latest driver interface Felix Kuehling (6): drm/amd: Add MQD structs for GFX V9 drm/amdgpu: Register UTCL2 as a source of VM faults drm/amdgpu: Clean up GFX 9 VM fault messages drm/amdgpu: Make max_pfn 64-bit drm/amdgpu: Fix Vega10 VM initialization drm/amdgpu: Fix multi-level page table bugs for large BOs v3 Gabriel Krisman Bertazi (19): drm: Always prepare null framebuffer in transitional helper drm: qxl: Drop device flags attribute drm: qxl: Consolidate bo reservation when pinning drm: qxl: Don't initialize vblank support drm: qxl: Expose creation of universal primary plane drm: qxl: Atomic phase 1: convert cursor to universal plane drm: qxl: Atomic phase 1: Use drm_plane_helpers for primary plane drm: qxl: Atomic phase 1: Implement mode_set_nofb drm: qxl: Atomic phase 1: Don't unpin primary when disabling crtc drm: qxl: Atomic phase 2: Wire up state object handlers drm: qxl: Atomic phase 2: Use drm_atomic_set_fb_for_plane helper drm: qxl: Atomic phase 3: Use atomic handlers for planes drm: qxl: Atomic phase 3: Wire up atomic set_config helper drm: qxl: Atomic phase 3: Wire up atomic page_flip helper drm: qxl: Enable atomic modesetting ioctl drm: Update drm_fbdev_cma_init documentation drm: qxl: Don't alloc fbdev if emulation is not supported drm: bochs: Don't remove uninitialized fbdev framebuffer drm: bochs: Prevent double-free of fb helper Geert Uytterhoeven (1): drm/amd: Spelling s/SDMA_WRTIE_SUB_OPCODE_TILED/SDMA_WRITE_SUB_OPCODE_TILED/ Geliang Tang (1): drm/i915/error: use rb_entry() Gerd Hoffmann (9): qxl: drop mode_info.modes & related code. qxl: limit monitor config read retries qxl: read monitors config at boot qxl: fix qxl_conn_get_modes drm: virtio: use kmem_cache drm: virtio: fix kmem_cache_alloc error check drm: virtio: add virtio_gpu_translate_format drm: virtio: fix virtio_gpu_mode_dumb_create drm/virtio: don't leak bo on drm_gem_object_init failure Gustavo Padovan (2): dma-buf/dma-fence: improve doc for dma_fence_add_callback() drm/virtio: call drm_plane_cleanup() at destroy phase Hans de Goede (29): drm/i915: Fix not finding the VBT when it overlaps with OPREGION_ASLE_EXT x86/platform/intel/iosf_mbi: Add a mutex for P-Unit access drm/i915/dsi: Move calling of wait_for_dsi_fifo_empty to mipi_exec_send_packet drm/i915/dsi: Merge intel_dsi_disable/enable into their respective callers drm/i915/dsi: Add intel_dsi_unprepare() helper drm/i915/dsi: Move intel_dsi_clear_device_ready() drm/i915/dsi: Make intel_dsi_enable/disable directly exec VBT sequences drm/i915/dsi: VLV/CHT Only wait for LP00 on MIPI PORT A drm/i915/dsi: Document the panel enable / disable sequences from the spec drm/i915/dsi: Drop bogus MIPI_SEQ_ASSERT_RESET before POWER_ON drm/i915/dsi: Move MIPI_SEQ_POWER_ON/OFF calls together with pmic gpio calls drm/i915/dsi: Group DPOunit clock gate workaround with PLL enable drm/i915/dsi: Execute MIPI_SEQ_DEASSERT_RESET before calling device_ready() drm/i915/dsi: Group MIPI_SEQ_BACKLIGHT_ON/OFF with panel_[en|dis]able_backlight drm/i915/dsi: Document always using v3 SHUTDOWN / MIPI_SEQ_DISPLAY_OFF order drm/i915/dsi: Execute MIPI_SEQ_TEAR_OFF from intel_dsi_post_disable drm/i915/dsi: Call MIPI_SEQ_TEAR_ON and DISPLAY_ON for cmd-mode (untested) drm/i915/dsi: Skip delays for v3 VBTs in vid-mode x86/platform/intel/iosf_mbi: Add a PMIC bus access notifier i2c: designware: Rename accessor_flags to flags i2c: designware-baytrail: Pass dw_i2c_dev into helper functions i2c: designware-baytrail: Only check iosf_mbi_available() for shared hosts i2c: designware-baytrail: Disallow the CPU to enter C6 or C7 while holding the punit semaphore i2c: designware-baytrail: Fix race when resetting the semaphore i2c: designware-baytrail: Add support for cherrytrail i2c: designware-baytrail: Acquire P-Unit access on bus acquire i2c: designware-baytrail: Call pmic_bus_access_notifier_chain drm/i915: Add intel_uncore_suspend / resume functions drm/i915: Listen for PMIC bus access notifications Harry Wentland (3): drm/amd/amdgpu: Fix some warnings in vce4 drm/amdgpu: Couple small warning fixes drm/amdgpu: Read vram width from integrated system info table Hemant Hariyani (1): drm/omap: Add support for render nodes Hoegeun Kwon (2): dt-bindings: Add support for Samsung s6e3ha2 panel binding drm/panel: Add support for S6E3HA2 panel driver on TM2 board Huang Rui (14): drm/amdgpu: add a ucode size member into firmware info drm/amdgpu: add DRM MGCG header drm/amdgpu: add DF MGCG flag drm/amdgpu: use new flag to handle different firmware loading method drm/amdgpu: rework common ucode handling for vega10 drm/amdgpu: add psp firmware header info drm/amdgpu: add PSP driver for vega10 (v2) drm/amdgpu: add psp firmware info into info query and debugfs drm/amdgpu: add SMC firmware into global ucode list for psp loading drm/amdgpu: add get_clockgating callback for gfx v9 drm/amdgpu: add get_clockgating callback for nbio v6.1 drm/amdgpu: add get_clockgating callback for soc15 (v3) drm/amdgpu: add get_clockgating for sdma v4 drm/amdgpu: add get_clockgating callback for mmhub v1 Ilia Mirkin (3): drm/nouveau/mpeg: mthd returns true on success now drm/nouveau/mmu/nv4a: use nv04 mmu rather than the nv44 one drm/nouveau/fifo/nv40: no ctxsw for pre-nv44 mpeg engine Imre Deak (12): drm/i915/gen9+: Enable hotplug detection early drm/i915/lspcon: Fix resume time initialization due to unasserted HPD drm/i915/lspcon: Remove DPCD compare based resume time workaround drm/i915/gen5+, pch: Enable hotplug detection early drm/i915: Remove redundant toggling from the power well sync_hw hooks drm/i915: Call the sync_hw hook for power wells without a domain drm/i915/gen9: Fix clearing of the BIOS power well request register drm/i915: Preserve the state of power wells not explicitly enabled drm/i915: Add power well SW/HW state verification drm/i915/lspcon: Switch back to PCON mode after output replug drm/i915/gen9: Increase PCODE request timeout to 50ms drm/i915: WARN if the core runtime PM get helpers fail Jacopo Mondi (1): drm: rcar-du: Make sure the VSP is initialized on platforms that need it Jani Nikula (29): drm/i915/dp: do not proceed with autotests if we don't ACK them drm/color: un-inline drm_color_lut_extract() Revert "drm/color: un-inline drm_color_lut_extract()" drm/i915: use variadic macros and arrays to choose port/pipe based registers drm/i915: don't warn about Skylake CPU - KabyPoint PCH combo drm/i915/bxt: apply clock gating workaround to all revisions drm/i915/bxt: remove snooping workaround on old A revisions drm/i915/bxt: remove WaRsDisableCoarsePowerGating for early BXT drm: move edid property update and add modes out of edid firmware loader drm: do not debug log about missing CEA extensions on NULL edid drm/edid: respect connector force for drm_get_edid ddc probe drm: add drm_get_connector_force_name drm/i915: use BUILD_BUG_ON to ensure platform name has been set up drm/i915/dsi: remove support for more than one panel driver drm/i915/dsi: call vbt_panel_get_modes directly instead of via drm_panel drm/i915/dsi: stop using the drm_panel framework completely drm/i915/dsi: rename intel_dsi_exec_vbt_sequence to intel_dsi_vbt_exec_sequence drm/i915/dsi: rename intel_dsi_pre_disable to intel_dsi_disable drm/i915/dsi: rename intel_dsi_panel_vbt.c to intel_dsi_vbt.c drm/i915/dsi: arrange intel_dsi.h according to relevant files drm/i915/vbt: don't propagate errors from intel_bios_init() drm/i915/vbt: split out defaults that are set when there is no VBT drm/scdc: declare drm_scdc_get_scrambling_status drm/i915: update the firmware download URL drm/i915/dp: reduce link M/N parameters drm/i915/opregion: bail out early for systems with no opregion VBT drm/i915/opregion: try to validate RVDA VBT only if it's there drm/i915/opregion: debug log about invalid ACPI OpRegion VBT Merge tag 'gvt-next-fixes-2017-04-20' of https://github.com/01org/gvt-linux into drm-intel-next-fixes Javi Merino (1): drm: use .hword to represent 16-bit numbers Jeffy Chen (12): drm/rockchip: Refactor the component match logic. drm: bridge: analogix: Detach panel when unbinding analogix dp drm: bridge: analogix: Unregister dp aux when unbinding drm: bridge: analogix: Disable clock when unbinding drm: bridge: analogix: Destroy connector & encoder when unbinding drm/rockchip: cdn-dp: Don't try to release firmware when not loaded drm/rockchip: cdn-dp: Don't unregister audio dev when unbinding drm/rockchip: vop: Enable pm domain before vop_initial drm/rockchip: vop: Unprepare clocks when unbinding drm/rockchip: analogix_dp: Disable clock when unbinding drm/rockchip: Reorder drm bind/unbind sequence drm/rockchip: Shutdown all crtcs when unbinding drm Jim Qu (1): drm/amd/amdgpu: fix Tonga S3 resume hang on rhel6.8 Joan Jani (1): drivers:gpu: vga :vga_switcheroo.c : Fixed some coding style issues Joe Perches (6): drm: drm_printer: add __printf validation gpu: drm: core: Convert printk(KERN_<LEVEL> to pr_<level> gpu: drm: drivers: Convert printk(KERN_<LEVEL> to pr_<level> drivers/gpu: Convert remaining uses of pr_warning to pr_warn drm: Use pr_cont where appropriate gpu: drm: amd/radeon: Convert printk(KERN_<LEVEL> to pr_<level> John Keeping (24): drm/rockchip: dw-mipi-dsi: don't configure hardware in mode_set for MIPI drm/rockchip: dw-mipi-dsi: pass mode in where needed drm/rockchip: dw-mipi-dsi: remove mode_set hook drm/rockchip: dw-mipi-dsi: fix command header writes drm/rockchip: dw-mipi-dsi: fix generic packet status check drm/rockchip: dw-mipi-dsi: avoid out-of-bounds read on tx_buf drm/rockchip: dw-mipi-dsi: include bad value in error message drm/rockchip: dw-mipi-dsi: respect message flags drm/rockchip: dw-mipi-dsi: only request HS clock when required drm/rockchip: dw-mipi-dsi: don't assume buffer is aligned drm/rockchip: dw-mipi-dsi: prepare panel after phy init drm/rockchip: dw-mipi-dsi: allow commands in panel_disable drm/rockchip: dw-mipi-dsi: fix escape clock rate drm/rockchip: dw-mipi-dsi: ensure PHY is reset drm/rockchip: dw-mipi-dsi: configure PHY before enabling drm/rockchip: dw-mipi-dsi: properly configure PHY timing drm/rockchip: dw-mipi-dsi: improve PLL configuration drm/rockchip: dw-mipi-dsi: use specific poll helper drm/rockchip: dw-mipi-dsi: use positive check for N{H, V}SYNC drm/rockchip: vop: test for P{H,V}SYNC drm/rockchip: dw-mipi-dsi: defer probe if panel is not loaded drm/rockchip: dw-mipi-dsi: support non-burst modes drm/rockchip: dw-mipi-dsi: add reset control dt-bindings: display: rk3288-mipi-dsi: add reset property Joonas Lahtinen (4): drm/i915: Avoid BIT(max) - 1 and use GENMASK(max - 1, 0) drm/i915: Use for_each_power_domain() in i915_power_domain_info() drm/i915: Add __destroy_hw_context drm/i915/guc: Sanitize GuC client initialization Jordan Crouse (11): drm/msm: Fix wrong pointer check in a5xx_destroy drm/msm: Don't increase priv->num_aspaces until we know that it fits drm/msm: Pass interrupt status to a5xx_rbbm_err_irq() drm/msm: Support 64 bit iova in RD_CMDSTREAM_ADDR drm/msm: Don't allow zero sized buffer objects drm/msm: Make sure to detach the MMU during GPU cleanup drm/msm: Reference count address spaces drm/msm: Add MSM_PARAM_GMEM_BASE drm/msm: Hard code the GPU "slow frequency" drm/msm: gpu: Use OPP tables if we can msm/drm: gpu: Dynamically locate the clocks from the device tree Juergen Gross (1): drm/i915: fix i915 running as dom0 under Xen Junshan Fang (1): drm/amd/amdgpu: add DID for Polaris10 Junwei Zhang (9): drm/amdgpu: IOCTL interface for PRT support v4 drm/amdgpu: export gfx config double offchip LDS buffers (v3) drm/amdgpu: rename amdgpu_gca_config to amdgpu_gfx_config drm/amdgpu: init aperture definitions (v2) drm/amdgpu: fix before and after mapping judgement for replace mapping drm/amdgpu: add NBIO 6.1 driver drm/amdgpu: add Vega10 Device IDs (v2) drm/amdgpu: fix vm pte pde flags to 64-bit for sdma (v3) drm/amdgpu: set vm size and block size by individual gmc by default (v3) Jyri Sarha (5): drm/omap: Get rid of DRM_OMAP_NUM_CRTCS config option drm/omap: Rename enum omap_plane to enum omap_plane_id drm/omap: Fix one ugly indentation style break left by coccinelle drm/omap: Remove the obsolete #define omap_plane _omap_plane hack drm/omap: Major omap_modeset_init() cleanup Kelvin Gardiner (1): drm/i915/bdw: Do not write the replay bit of the ring mode register Ken Wang (11): drm/amdgpu: change wptr to 64 bits (v2) drm/amdgpu: add 64bit wb functions drm/amdgpu: add 64bit doorbell functions (v2) drm/amdgpu: add common soc15 headers drm/amdgpu: add vega10 chip name drm/amdgpu: add 64bit doorbell assignments drm/amdgpu: add SDMA v4.0 implementation (v2) drm/amdgpu: implement GFX 9.0 support (v2) drm/amdgpu: add vega10 interrupt handler drm/amdgpu: soc15 enable (v3) drm/amdgpu: Set the IP blocks for vega10 Ken Xue (1): drm/amdgpu:Refine handshake of mailbox Kenneth Graunke (1): drm/i915: Drop support for I915_EXEC_CONSTANTS_* execbuf parameters. Kieran Bingham (2): drm: bridge: dw-hdmi: Add support for custom PHY configuration drm: bridge: dw-hdmi: Remove device type from platform data Koji Matsuoka (3): drm: rcar-du: Add Gen3 HDMI encoder support drm: rcar-du: Add DPLL support drm: rcar-du: Add HDMI outputs to R8A7795 device description Laurent Pinchart (33): drm: Constify drm_mode_config atomic helper private pointer drm: shmobile: Perform initialization/cleanup at probe/remove time drm: exynos: Perform initialization/cleanup at probe/remove time drm: Remove unused drm_platform midlayer drm: Remove the struct drm_device platformdev field devicetree/bindings: display: bridge: Add LVDS encoder DT bindings drm: bridge: Add LVDS encoder driver drm: bridge: vga-dac: Add adi,adv7123 compatible string drm: bridge: lvds-encoder: Add thine,thc63lvdm83d compatible string drm: bridge: dw-hdmi: Remove unused functions drm: bridge: dw-hdmi: Move CSC configuration out of PHY code drm: bridge: dw-hdmi: Fix the PHY power down sequence drm: bridge: dw-hdmi: Fix the PHY power up sequence drm: bridge: dw-hdmi: Create PHY operations drm: bridge: dw-hdmi: Move the driver to a separate directory. devicetree/bindings: display: Document common panel properties devicetree/bindings: display: Add bindings for LVDS panels devicetree/bindings: display: Add bindings for two Mitsubishi panels drm: Add data transmission order bus flag drm: panels: Add LVDS panel driver drm: rcar-du: Switch to encoder .atomic_mode_set() helper function drm: rcar-du: Handle event when disabling CRTCs drm: rcar-du: Clear handled event pointer in CRTC state drm: rcar-du: Use DRM core's atomic commit helper drm: rcar-du: Remove wait field from rcar_du_device structure drm: rcar-du: Document the vsps property in the DT bindings drm: rcar-du: Use the DRM panel API drm: rcar-du: Add support for LVDS mode selection drm: rcar-du: Replace manual bridge implementation with DRM bridge drm: rcar-du: Hardcode encoders types to DRM_MODE_ENCODER_NONE dt-bindings: display: renesas: Add R-Car Gen3 HDMI TX DT bindings drm: rcar-du: Skip disabled outputs drm: bridge: dw-hdmi: Extract PHY interrupt setup to a function Laurent Vivier (1): drm: virtio: fix virtio_gpu_cursor_formats Lee, Shawn C (1): drm/i915/bxt: Add MST support when do DPLL calculation Leo Liu (11): drm/amdgpu: add a ring func for end command drm/amdgpu: move amdgpu_uvd structure to uvd header drm/amdgpu: move amdgpu_vce structure to vce header drm/amdgpu: add uvd enc rings drm/amdgpu: add uvd enc run queue drm/amdgpu: add uvd enc ring type and functions uapi/drm: add AMDGPU_HW_IP_UVD_ENC drm/amdgpu: add AMDGPU_HW_IP_UVD_ENC to info query drm/amdgpu: get cs support of AMDGPU_HW_IP_UVD_ENC drm/amdgpu: add initial uvd 7.0 support for vega10 drm/amdgpu: add initial vce 4.0 support for vega10 Liu Ying (1): drm/imx: Remove unneeded definition for structure imx_drm_component Liviu Dudau (3): drm: mali-dp: Update the state of all planes before re-enabling active CRTCs. drm: mali-dp: Enable power management for the device. drm/mali-dp: Add core_id file to the sysfs interface Logan Gunthorpe (1): dma-buf: Rename dma-ops to prevent conflict with kunmap_atomic macro Lorenzo Stoakes (1): drm/via: use get_user_pages_unlocked() Lucas Stach (14): gpu: ipu-v3: remove IRQ dance on DC channel disable gpu: ipu-v3: add DT binding for the Prefetch Resolve Engine gpu: ipu-v3: add driver for Prefetch Resolve Engine gpu: ipu-v3: add DT binding for the Prefetch Resolve Gasket gpu: ipu-v3: add driver for Prefetch Resolve Gasket gpu: ipu-v3: document valid IPUv3 compatibles and extend for i.MX6 QuadPlus gpu: ipu-v3: hook up PRG unit gpu: ipu-v3: only set non-zero AXI ID for IC when PRG is absent drm/imx: enable/disable PRG on CRTC enable/disable drm/imx: use PRG/PRE when possible drm/etnaviv: add lockdep assert to fence allocation drm/etnaviv: return GPU fence through the submit structure gpu: ipu-v3: don't depend on DRM being enabled drm/imx: merge imx-drm-core and ipuv3-crtc in one module Lukas Wunner (6): MAINTAINERS: Add Lukas Wunner as reviewer for vga_switcheroo PCI: Recognize Thunderbolt devices drm/radeon: Don't register Thunderbolt eGPU with vga_switcheroo drm/amdgpu: Don't register Thunderbolt eGPU with vga_switcheroo drm/nouveau: Don't register Thunderbolt eGPU with vga_switcheroo apple-gmux: Don't switch external DP port on 2011+ MacBook Pros Lyude (3): drm/i915/debugfs: Add i915_hpd_storm_ctl drm/i915/dp: Ratelimit DP aux timeout messages drm/radeon/dp_auxch: Ratelimit aux transfer debug messages Maarten Lankhorst (28): drm/i915: Use atomic page flip for intel again. drm/i915: Disable all crtcs during driver unload, v2. drm/i915: Fix POWER_DOMAIN_AUDIO refcounting. drm/i915: Enable atomic support by default on supported platforms. drm/atomic: Add new iterators over all state, v3. drm/atomic: Make add_affected_connectors look at crtc_state. drm/atomic: Use new atomic iterator macros. drm/atomic: Make disable_all helper fully disable the crtc. drm: Convert drm_framebuffer_remove to atomic, v4. drm/atomic: Fix atomic helpers to use the new iterator macros, v3. drm/atomic: Make drm_atomic_plane_disabling easier to understand. drm/atomic: Add macros to access existing old/new state, v2. drm/atomic: Convert get_existing_state callers to get_old/new_state, v4. drm/blend: Use new atomic iterator macros. drm/i915: Move updating color management to before vblank evasion drm/i915: Complain if we take too long under vblank evasion. drm/i915: Nuke skl_update_plane debug message from the pipe update critical section drm/i915: Use new atomic iterator macros in ddi drm/i915: Use new atomic iterator macros in fbc drm/i915: Use new atomic iterator macros in wm code drm/i915: Use new atomic iterator macros in display code drm/i915: Use new atomic iterator macros in cdclk Revert unrelated part of "drm: simplify the locking in the GETCRTC ioctl" drm/atomic: Acquire connection_mutex lock in drm_helper_probe_single_connector_modes, v4. drm/atomic: Unify conflicting encoder handling. drm/atomic: Set all the changed flags in one place. drm/atomic: Move enable/connector check up in check_modeset() drm/atomic: Add connector atomic_check function, v2. Madhav Chauhan (2): drm/i915/glk: Validate only DSI PORT A PLL divider drm/i915/glk: Fix DSI enable I/O sequence Manasi Navare (8): drm/i915: Add support for DP link training compliance drm/i915: Fixes to support DP Compliance EDID tests drm: Add definitions for DP compliance Video pattern tests drm/i915: Add support for DP Video pattern compliance tests drm/i915/dp: Reset the link params on HPD/connected boot/resume drm: Add a new connector atomic property for link status drm: Fix the kernel doc warning for drm_link_status drm/i915: Implement Link Rate fallback on Link training failure Marek Olšák (2): drm/radeon: allow unaligned shader loads on CIK drm/amdgpu: don't validate TILE_SPLIT on GFX9 Mario Kleiner (4): drm/amdgpu: Make display watermark calculations more accurate drm/amdgpu: Avoid overflows/divide-by-zero in latency_watermark calculations. drm/nouveau/kms: Increase max retries in scanout position queries. drm/nouveau/fb/gf100-: Fix 32 bit wraparound in new ram detection Matthew Auld (6): drm/i915: remove 512GB allocation warning drm/i915/selftests: don't leak the gem object drm/i915: use correct node for handling cache domain eviction drm/i915/selftests: exercise cache domain eviction drm/i915/perf: destroy stream on sample_flags mismatch drm/i915/perf: remove user triggerable warn Maxime Ripard (5): drm/fb-helper: implement ioctl FBIO_WAITFORVSYNC drm/sun4i: Grab reserved memory region MAINTAINERS: Add sun4i-drm git repo dt-bindings: display: panel: Add bindings for the Sitronix ST7789V panel drm/panel: Add driver for sitronix ST7789V LCD controller Michael Zoran (1): drm/vc4: Don't wait for vblank when updating the cursor Michal Wajdeczko (11): drm/i915: Don't use enums for hardware engine id drm/i915/guc: Use formalized struct definition for ads object drm/i915: Make intel_uc_sanitize_options() more robust drm/i915/uc: Make intel_uc_prepare_fw() static drm/i915: Move WARN_ON/MISSING_CASE macros to i915_utils.h drm/i915/uc: Move intel_uc_fw_status_repr() to intel_uc.h drm/i915/uc: Add intel_uc_fw_type_repr() drm/i915/uc: Add intel_uc_fw_fini() drm/i915/huc: Remove unused intel_huc_fini() drm/i915/uc: Move fw path check to fetch_uc_fw() drm/i915/uc: Drop use of MISSING_CASE on trivial enums Michał Winiarski (2): drm/i915: Always convert incoming exec offsets to non-canonical drm/i915/skl: Add missing SKL ID Mihail Atanassov (8): drm: mali-dp: add atomic_print_state for planes drm: mali-dp: add custom reset hook for planes drm: mali-dp: add malidp_crtc_state struct drm: mali-dp: enable gamma support drm: mali-dp: Add CTM support drm: mali-dp: Add plane upscaling support drm: mali-dp: Enable image enhancement when scaling drm: mali-dp: Check the mclk rate and allow up/down scaling Mika Kuoppala (14): drm/i915: Create context desc template when context is created drm/i915: Avoid tweaking evaluation thresholds on Baytrail v3 drm/i915/gtt: Make I915_PDPES_PER_PDP inline function drm/i915: Don't mark pdps clear if pdps are not submitted drm/i915/gtt: Prefer i915_vm_is_48bit() over macro drm/i915: Avoid using word legacy with ppgtt drm/i915/gtt: Setup vm callbacks late drm/i915: Move residency calculation into intel_pm.c drm/i915: Return residency as microseconds drm/i915: Extend vlv/chv residency resolution drm/i915: Convert debugfs to use generic residency calculator drm/i915: Use ktime to calculate rc0 residency drm/i915: Use coarse grained residency counter with byt drm/i915: Fix system hang with EI UP masked on Haswell Monk Liu (54): drm/amdgpu:fix typo drm/amdgpu:fix powerplay logic drm/amdgpu:fix amdgpu_sa_bo_new error(v2) drm/amdgpu:cg & pg shouldn't active on VF device drm/damdgpu:add new mqd member in ring drm/amdgpu:imple mqd soft ini/fini drm/amdgpu:bo_free_kernel will set ptr to NULL if freed drm/amdgpu:no need use sriov vf checks drm/amdgpu:minor cleanup drm/amdgpu:divide KCQ mqd init to sw and hw drm/amdgpu:implement SRIOV gpu_reset (v2) drm/amdgpu:change kiq lock name drm/amdgpu:add lock_reset for SRIOV drm/amdgpu:don't return error for debugfs failed drm/amdgpu:cleanup no needed braces drm/amdgpu:use hw_init for sriov_gpu_reset drm/amdgpu:use MACRO like other places drm/amdgpu:impl RREG32 no kiq version drm/amdgpu:no kiq for mailbox registers access drm/amdgpu:use work instead of delay-work drm/amdgpu:RUNTIME flag should clr later drm/amdgpu:new field in_reset introduced for gfx drm/amdgpu:alloc mqd backup drm/amdgpu:imple ring clear drm/amdgpu:use clear_ring to clr RB drm/amdgpu:fix kiq_resume routine (V2) drm/amdgpu/gfx9: programing wptr_poll_addr register drm/amdgpu:impl gfx9 cond_exec (v2) drm/amdgpu:bypass RLC init for SRIOV drm/amdgpu/sdma4:re-org SDMA initial steps for sriov drm/amdgpu/vega10:fix DOORBELL64 scheme drm/amdgpu:fix cs_ib_fill drm/amdgpu:protect cs submit drm/amdgpu:fix the check in cs_ib_fill for SRIOV drm/amdgpu:implement cond_exec for gfx8 drm/amdgpu:enable mcbp for gfx9(v2) drm/amdgpu:enable MCBP for SR-IOV (v2) uapi/drm:change Preamble Description uapi/drm:add new flag for Preemption drm/amdgpu:virt_init_setting invoke is missed! drm/amdgpu:fix ring init sequence drm/amdgpu:change sequence of SDMA v4 init drm/amdgpu:two fixings for sdma v4 for SRIOV drm/amdgpu:no cg for soc15 of SRIOV drm/amdgpu:fix gmc_v9 vm fault process for SRIOV drm/amdgpu:fix ring_write_multiple drm/amdgpu:fix missing programing critical registers drm/amdgpu:changes in gfx DMAframe scheme (v2) drm/amdgpu:add PSP block only load_type=PSP (v2) drm/amdgpu:no need to involv HDP in KIQ drm/amdgpu:fix typo for mxgpu_ai drm/amdgpu:implement the reset MB func for vega10 drm/amdgpu/vega10:timeout set to equal with VI drm/amdgpu:invoke new implemented AI MB func Neil Armstrong (22): MAINTAINERS: drm-meson: Update git entries drm: bridge: dw-hdmi: Enable CSC even for DVI drm: bridge: dw-hdmi: Switch to regmap for register access media: uapi: Add RGB and YUV bus formats for Synopsys HDMI TX Controller documentation: media: Add documentation for new RGB and YUV bus formats MAINTAINERS: meson-drm: remove useless git repository drm: bridge: dw-hdmi: Switch to V4L bus format and encodings drm: bridge: dw-hdmi: Add Documentation on supported input formats drm: bridge: dw-hdmi: Move HPD handling to PHY operations drm/meson: Use crtc_state for hdisplay and fix atomic flush/enable sync for vsync commit drm/meson: Add missing HDMI register drm/meson: Add support for components drm/meson: venc_cvbs: no more return -ENODEV if CVBS is not available drm/meson: add support for HDMI clock support drm/meson: Add support for HDMI venc modes and settings drm/meson: Add support for HDMI encoder and DW-HDMI bridge + PHY dt-bindings: Add bindings for the Amlogic Meson dw-hdmi extension drm/meson: Convert existing documentation to actual kerneldoc drm/meson: Add RST to bring together kerneldoc MAINTAINERS: update files for Amlogic DRM Driver drm: bridge: dw-hdmi: remove unused hdmi_bus_fmt_is_yuv420 drm: bridge: dw-hdmi: fix input format/encoding from plat_data Nickey Yang (2): drm/bridge: dw_hdmi: support i2c extended read mode drm: bridge: dw-hdmi: add HDMI vendor specific infoframe config Nicolai Hähnle (7): drm/ttm: never add BO that failed to validate to the LRU list Revert "drm/amdgpu: fix a potential deadlock in amdgpu_bo_create_restricted()" drm/ttm: fix the documentation of ttm_bo_init drm/ttm: add ttm_bo_init_reserved drm/amdgpu: simplify reservation handling during buffer creation drm/amdgpu: add optional fence out-parameter to amdgpu_vm_clear_freed drm/amdgpu: clear freed mappings immediately when BO may be freed Noralf Trønnes (10): drm/armada: Remove armada_drm_debugfs_cleanup() drm/nouveau: Remove nouveau_drm_debugfs_cleanup() drm/virtio: Remove virtio_gpu_debugfs_takedown() drm/qxl: Remove qxl_debugfs_takedown() drm/i915: Remove i915_debugfs_unregister() drm/msm: Remove drm_debugfs_remove_files() calls drm/msm: Remove msm_debugfs_cleanup() drm/debugfs: Remove the drm_driver.debugfs_cleanup callback drm/qxl: Remove qxl_debugfs_remove_files() drm/tinydrm: Fix drm_driver.fops.owner Oscar Mateo (12): drm/i915/guc: Keep the ctx_pool_vaddr mapped, for easy access drm/i915/guc: Add onion teardown to the GuC setup drm/i915/guc: The Additional Data Struct (ADS) should get enabled together with GuC submission drm/i915/guc: Break out the GuC log extras into their own "runtime" struct drm/i915/guc: Make intel_guc_send a function pointer drm/i915/guc: Improve the GuC documentation & comments about proxy submissions drm/i915/guc: Wait for doorbell to be inactive before deallocating drm/i915/guc: A little bit more of doorbell sanitization drm/i915/guc: Refactor the concept "GuC context descriptor" into "GuC stage descriptor" drm/i915/guc: Split out the mmio_white_list struct drm/i915/guc: Move guc_interrupts_release next to guc_interrupts_capture drm/i915/guc: Take enable_guc_loading check out of GEM core code Pandiyan, Dhinakaran (5): drm/i915/glk: Apply cdclk workaround for DP audio drm/i915: Implement cdclk restrictions based on Azalia BCLK drm/dp: Kill total_pbn and total_slots in struct drm_dp_mst_topology_mgr drm/dp: Kill unused MST vcpi slot availability tracking drm/dp: Split drm_dp_mst_allocate_vcpi Paulo Zanoni (7): x86/gpu: GLK uses the same GMS values as SKL drm/i915: make i915_stolen_to_physical() return phys_addr_t drm/i915: remove potentially confusing IS_G4X checks drm/i915: move the {skl, bxt}_{i, uni}nit_cdclk declarations drm/i915: simplify intel_ddi_pll_select() drm/i915: kill intel_ddi_pll_select() drm/i915: make a few DDI functions static Pei Zhang (2): drm/i915/gvt: make dpcd_fix_data supports DP1.2 drm/i915/gvt: add mmio init for virtual display Peter Senna Tschudin (4): dt-bindings: display: megachips-stdpxxxx-ge-b850v3-fw MAINTAINERS: Add entry for megachips-stdpxxxx-ge-b850v3-fw drm/bridge: Drivers for megachips-stdpxxxx-ge-b850v3-fw (LVDS-DP++) drm/bridge: megachips-stdpxxxx-ge-b850v3-fw: Fix bridge initialization Peter Ujfalusi (6): drm/omap: dss: Functions to check components in the display/output list drm/omap: dss: Support for detecting display stack readiness drm/omap: Use omapdss_stack_is_ready() to check that the display stack is up drm/omap: display: Add displays in sorted order to the panel_list drm/omap: poll only connectors where the connect/disconnect can be checked drm/omap: displays: panel-dpi: Support for handling backlight devices Philipp Zabel (15): drm/imx: ipuv3-plane: use drm_plane_helper_check_state, clipped coordinates drm/imx: ipuv3-plane: update overlay plane position also without modeset gpu: ipu-cpmem: set image base address even for incorrect formats gpu: ipu-cpmem: add bayer formats to ipu_cpmem_set_image gpu: ipu-v3: add unsynchronised DP channel disabling drm/imx: don't wait for vblank and stop calling cleanup_planes in commit_tail drm/imx: add deferred plane disabling drm: add RGB formats with separate alpha plane gpu: ipu-v3: add support for separate alpha channels drm/imx: extend drm_plane_state_to_eba for separate channel support drm/imx: ipuv3-plane: add support for separate alpha planes dma-fence: add dma_fence_match_context helper drm/vc4: use platform_register_drivers drm/etnaviv: submit support for in-fences drm/etnaviv: submit support for out-fences Ping Gao (7): drm/i915/gvt: use hrtimer replace delayed_work in scheduler drm/i915/gvt: add some statistic routine for scheduler drm/i915/gvt: factor out the scheduler drm/i915/gvt: define weight according to vGPU type drm/i915/gvt: add basic function for weight control drm/i915/gvt: create an idle vGPU drm/i915/gvt: control the scheduler by timeslice usage Pixel Ding (3): drm/amdgpu/virt: increase mailbox timeout to 5000ms drm/amdgpu/virt: skip VM fault handler for VF drm/amdgpu: clean framebuffer with GPU Rex Zhu (13): drm/amdgpu: print full bios version in dmesg. drm/amdgpu: check function points valid before use. (v3) drm/amdgpu: refine vce2.0 dpm sequence drm/amdgpu: refine vce_3.0 code. drm/amd/powerplay: add a new register define for APU in VI. drm/amdgpu: enable gfx/system/vce clockgating on Polars12. drm/amdgpu: load mc firware in driver for Polaris. drm/amd/powerplay: add global PowerPlay mutex. drm/amd/powerplay: reduce sample period time drm/amdgpu: when resume failed, return error to avoid system hang. drm/amdgpu: various cleanups for uvd/vce. drm/amd/powerplay: port newest process pptable code for vega10. drm/amd/powerplay: add fan controller table v11 support. Richard Genoud (2): devicetree: add vendor prefix for Winstar Display Corp. drm/panel: simple: Add support for Winstar WF35LTIACD Rob Clark (6): drm/msm/gpu: move suspend/resume into debugfs->show drm/msm/gpu: use pm-runtime drm/msm/adreno: reset ringbuffer in hw_init drm/msm: convert to iommu_map_sg drm/msm: pm runtime support for iommu drm/msm: move submit fence wait out of struct_mutex Rob Herring (5): drm: make of_drm_find_panel also depend on CONFIG_DRM_PANEL drm: of: introduce drm_of_find_panel_or_bridge drm: convert drivers to use of_graph_get_remote_node drm: convert drivers to use drm_of_find_panel_or_bridge drm: omap: use common OF graph helpers Robert Bragg (1): drm/i915: fix for WaDisableDopClockGating:bdw Rodrigo Vivi (3): drm/i915/kbl: Apply WaIncreaseDefaultTLBEntries on KBL. drm/i915: Introduce IS_GEN9_BC for Skylake and Kabylake. drm/i915: DMC 1.03 for Geminilake Roger.He (3): drm/amdgpu: increase IH ring buffer size to avoid overflow drm/amd/amdgpu: fix performance drop when VRAM pressure drm/ttm: decrease ttm bo priority number Romain Perier (2): drm: dw_hdmi: Don't rely on the status of the bridge for updating HPD drm: dw-hdmi: Implement the mode_fixup drm helper Russell King (4): drm: ensure atomic messages consistently include the name of the component drm/etnaviv: add etnaviv cooling device dma-buf: fence debugging dma-buf: align debugfs output Sagar Arun Kamble (4): drm/i915: Initialize pm_intr_keep during intel_irq_init for GuC drm/i915/guc: Release GuC interrupts in i915_guc_submission_disable drm/i915: s/pm_intr_keep/pm_intrmsk_mbz drm/i915/guc: Update rps.pm_intrmsk_mbz in guc_interrupts_capture/release Samuel Pitoiset (2): drm/amdgpu: implement read_sensor() for pre-powerplay chips drm/amdgpu: expose amdgpu_sensors on pre-powerplay chips Sean Paul (5): drm: Fix compilation error when CONFIG_DEBUG_FS is undefined drm/rockchip: Fix link error when CONFIG_DRM_ANALOGIX_DP undefined Merge airlied/drm-next into drm-misc-next Merge tag 'topic/synopsys-media-formats-2017-04-03' of git://anongit.freedesktop.org/git/drm-misc into drm-misc-next Revert "drm: Don't allow interruptions when opening debugfs/crc" Shashank Sharma (6): drm/i915: Remove intel_ prefix from encoder variables in intel_ddi.c drm/edid: detect SCDC support in HF-VSDB drm/edid: detect SCDC support in HF-VSDB drm/i915: enable scrambling drm/i915: allow HDMI 2.0 clock rates drm: Add description for scdc variable Shawn Guo (24): drm: add vblank hooks to struct drm_crtc_funcs drm: remove drm_vblank_no_hw_counter assignment from driver code drm: unexport function drm_vblank_no_hw_counter() drm: hdlcd: use vblank hooks in struct drm_crtc_funcs drm: malidp: use vblank hooks in struct drm_crtc_funcs drm: armada: use vblank hooks in struct drm_crtc_funcs drm: atmel: use vblank hooks in struct drm_crtc_funcs drm: exynos: use vblank hooks in struct drm_crtc_funcs drm: fsl-dcu: use vblank hooks in struct drm_crtc_funcs drm: hibmc: use vblank hooks in struct drm_crtc_funcs drm: imx: remove struct imx_drm_crtc and imx_drm_crtc_helper_funcs drm: meson: use vblank hooks in struct drm_crtc_funcs drm: rcar-du: use vblank hooks in struct drm_crtc_funcs drm: rockchip: remove struct rockchip_crtc_funcs drm: shmobile: use vblank hooks in struct drm_crtc_funcs drm: sun4i: use vblank hooks in struct drm_crtc_funcs drm: tegra: use vblank hooks in struct drm_crtc_funcs drm: tilcdc: use vblank hooks in struct drm_crtc_funcs drm: vc4: use vblank hooks in struct drm_crtc_funcs drm: zte: use vblank hooks in struct drm_crtc_funcs drm: kirin: use vblank hooks in struct drm_crtc_funcs drm: mediatek: use vblank hooks in struct drm_crtc_funcs drm: qxl: use vblank hooks in struct drm_crtc_funcs drm: zte: remove leftover 'inf' from struct zx_hdmi Sinclair Yeh (18): drm/vmwgfx: Removed unused snooper.crtc field drm/vmwgfx: Add universal plane support drm/vmwgfx: CRTC atomic state drm/vmwgfx: Plane atomic state drm/vmwgfx: Connector atomic state drm/vmwgfx: Add and connect CRTC helper functions drm/vmwgfx: Add and connect plane helper functions drm/vmwgfx: Add and connect connector helper function drm/vmwgfx: Add and connect atomic state object check/commit drm/vmwgfx: Fixes to vmwgfx_fb drm/vmwgfx: Switch over to internal atomic API for STDU drm/vmwgfx: Switch over to internal atomic API for SOU and LDU drm/vmwgfx: Turn on DRIVER_ATOMIC flag drm/vmwgfx: Explicityly track screen target width and height drm/vmwgfx: Skipping fbdev fb pinning for ldu drm/vmwgfx: Fix LDU X blank screen until mode change issue drm/vmwgfx: Support topology greater than texture size drm/vmwgfx: Properly check display/scanout surface size Tamara Diaconita (1): drivers: gpu: drm: i915L intel_lpe_audio: Fix kerneldoc comments Thierry Reding (14): drm/doc: Add TODO list drm: Rename drm_mode_object_get() drm: Introduce drm_mode_object_{get,put}() drm: Introduce drm_connector_{get,put}() drm: Introduce drm_framebuffer_{get,put}() drm: Introduce drm_gem_object_{get,put}() drm: Introduce drm_property_blob_{get,put}() drm: Rename connector list iterator API drm: Add SCDC helpers drm/edid: check for HF-VSDB block drm/fb-helper: Cleanup checkpatch warnings drm/fb-helper: Reshuffle code for subsequent patches drm/fb-helper: Improve code readability drm/nouveau/imem/gk20a: Turn instmem lock into mutex Thomas Hellstrom (3): drm/vmwgfx: Introduce a simple resource type drm/vmwgfx: Re-implement the stream resource as a simple resource. drm/vmwgfx: Define an overlaid handle_close ioctl. Tina Zhang (2): drm/i915/gvt: remove workload from intel_shadow_wa_ctx structure drm/i915/gvt: remove the redundant info NULL check Tom St Denis (21): drm/amd/amdgpu: Update read_sensor calls to have size parameter (v3) drm/amd/amdgpu: Set VCE/UVD off during late init drm/amd/amdgpu: Correct ring wptr address in debugfs (v2) drm/amd/amdgpu: Clean up gfx_v8_0_kiq_set_interrupt_state() drm/amd/amdgpu: Clean up gfx_v8_0_inactive_hqd() drm/amd/amdgpu: clean up gfx_v8_0_kiq_init_register() drm/amd/amdgpu: de-numberify HQD_ACTIVE check. drm/amd/amdgpu: Clean up gfx_v8_0_mqd_init() drm/amd/amdgpu: Fix srbm_indexing in init/inactive hqd code drm/amd/amdgpu: Fix psp_v3_1 compare sram drm/amd/amdgpu: Clean up psp reload_quirk() drm/amd/amdgpu: cleanup gfx_v9_0_init_queue() drm/amd/amdgpu: cleanup gfx_v9_0_set_priv_inst_fault_state() drm/amd/amdgpu: cleanup gfx_v9_0_set_priv_reg_fault_state() drm/amd/amdgpu: cleanup gfx_v9_0_set_gfx_eop_interrupt_state() drm/amd/amdgpu: Drop gfx_v9_0_print_status() drm/amd/amdgpu: cleanup gfx_v9_0_kiq_init_register() drm/amd/amdgpu: simplify gfx_v9_0_cp_gfx_enable() drm/amd/amdgpu: cleanup gfx_v9_0_rlc_start() drm/amd/amdgpu: cleanup gfx_v9_0_rlc_reset() drm/amd/amdgpu: cleanup gfx_v9_0_gpu_init() Tomeu Vizoso (6): drm/edid: Don't print an error if the checksum of a CEA block is wrong drm/dp: add crtc backpointer to drm_dp_aux drm/dp: add helpers for capture of frame CRCs drm/bridge: analogix_dp: add helpers for capture of frame CRCs drm/rockchip: Implement CRC debugfs API drm/dp: Add missing description to parameter Tomi Valkeinen (23): drm/omap: use vblank hooks in struct drm_crtc_funcs drm/omap: work-around for errata i886 drm/omap: refactor CRTC HW property setup drm/omap: remove divider constraint from hsdiv drm/omap: decrease min width & height drm/omap: improve DPI clock selection on DRA7xx drm/omap: fix HDMI sync polarities drm/omap: add omapdss-base.ko drm/omap: move dss_initialized to omapdss-base drm/omap: output: use dev_err instead of DSSERR drm/omap: display: don't use dsi_get_pixel_size() drm/omap: move display, dss-of, output to omapdss-base drm/omap: move dispc related dss-feat funcs to dispc drm/omap: add dispc_ops drm/omap: fill dispc_ops drm/omap: use dispc_ops drm/omap: remove all EXPORT_SYMBOLs from dispc.c drm/omap: remove unused dispc_wb_enable & dispc_wb_is_enabled drm/omap: fix replication logic drm/omap: dispc: improve debug print of display flags drm/omap: fix display SYNC/DE flags drm/omap: use drm_atomic_helper_shutdown() drm/omap: fix crash on module unload Trigger Huang (1): drm/amdgpu: Fix module unload hang by KIQ IRQ set Tvrtko Ursulin (27): drm/i915/guc: Log significant events at the info level drm/i915: Emit to ringbuffer directly drm/i915: Fix uninitialized return from mi_set_context drm/i915: Remove duplicate intel_logical_ring_workarounds_emit drm/i915: Make int __intel_ring_space static drm/i915: Simplify cleanup path in intel_engines_init drm/i915: Move common workaround code to intel_engine_cs drm/i915: Tidy workaround batch buffer emission drm/i915: Consolidate gen8_emit_pipe_control drm/i915: Fix typo in semaphore debug message drm/i915: Tidy execlists_init_reg_state drm/i915/tracepoints: Tidy request event class drm/i915/tracepoints: Adjust i915_gem_ring_dispatch drm/i915/tracepoints: Tidy i915_gem_request_wait_begin drm/i915/tracepoints: Remove unused i915_gem_request_complete drm/i915/tracepoints: Add request submit and execute tracepoints drm/i915/tracepoints: Rename i915_gem_request_notify drm/i915/tracepoints: Add backend level request in and out tracepoints drm/i915/tracepoints: Add hw_id to context tracepoints drm/i915: No need to save/restore irq status in __i915_request_irq_complete drm/i915: No need to save/restore irq status in intel_breadcrumbs_fake_irq drm/i915: No need to save/restore irq status in intel_engine_wakeup drm/i915/guc: Fix request re-submission after reset drm/i915: Fix forcewake active domain tracking drm/i915/vgpu: Neuter forcewakes for VGPU more thoroughly drm/i915/guc: Correct the request_in tracepoint position drm/i915: Spinlocks in tasklets can use spin_(un)lock_irq Uma Shankar (5): drm/i915: Add MIPI_IO WA and program DSI regulators drm/i915: Check for platform specific GPIO config drm/i915: Fix PLL 8x/3 divider for MIPI video mode drm/i915/bxt: Fix BXT DSI ULPS sequence drm/i915/bxt: Disable device ready before shutdown command Ville Syrjälä (72): drm/i915: Store the pipe pixel rate in the crtc state drm/i915: Nuke intel_mode_max_pixclk() drm/i915: s/get_display_clock_speed/get_cdclk/ drm/i915: Clean up the .get_cdclk() assignment if ladder drm/i915: Move most cdclk/rawclk related code to intel_cdclk.c drm/i915: Pass computed vco to bxt_set_cdclk() drm/i915: Start moving the cdclk stuff into a distinct state structure drm/i915: Track full cdclk state for the logical and actual cdclk frequencies drm/i915: Pass dev_priv to remainder of the cdclk functions drm/i915: Pass the cdclk state to the set_cdclk() functions drm/i915: Move PFI credit reprogramming into vlv/chv_set_cdclk() drm/i915: Nuke the VLV/CHV PFI programming power domain workaround drm/i915: Replace the .modeset_commit_cdclk() hook with a more direct .set_cdclk() hook drm/i915: Move ilk_pipe_pixel_rate() to intel_display.c drm/i915: Avoid spurious WARNs about the wrong pipe in the PPS code drm/i915: Simplify platform checks in intel_fb_pitch_limit() drm/i915: Dump more configuration information for DSI drm/i915: Refactor code to select the DDI buf translation table drm/i915: Refactor translate_signal_level() drm/i915: Introduce intel_ddi_dp_voltage_max() drm/i915: Fix legacy cursor vs. watermarks for ILK-BDW drm/i915: Do .init_clock_gating() earlier to avoid it clobbering watermarks drm/i915: Track visible planes in a bitmask drm/i915: Track plane fifo sizes under intel_crtc drm/i915: Move vlv wms from crtc->wm_state to crtc->wm.active.vlv drm/i915: Plop vlv wm state into crtc_state drm/i915: Plop vlv/chv fifo sizes into crtc state drm/i915: Compute VLV/CHV FIFO sizes based on the PM2 watermarks drm/i915: Compute vlv/chv wms the atomic way drm/i915: Skip useless watermark/FIFO related work on VLV/CHV when not needed drm/i915: Compute proper intermediate wms for vlv/cvh drm/i915: Nuke crtc->wm.cxsr_allowed drm/i915: Only use update_wm_{pre,post} for pre-ilk platforms drm/i915: Sanitize VLV/CHV watermarks properly drm/i915: Workaround VLV/CHV sprite1->sprite0 enable underrun drm/i915: Kill level 0 wm hack for VLV/CHV drm/i915: Add plane update/disable tracepoints drm/i915: Add VLV/CHV watermark/FIFO programming tracepoints drm/i915: Add cxsr toggle tracepoint drm/i915: Add FIFO underrun tracepoints drm/i915: Nuke debug messages from the pipe update critical section drm/i915: Plumb drm_framebuffer into more places drm/i915: Move nv12 chroma plane handling into intel_surf_alignment() drm/i915: Avoid div-by-zero when computing aux_stride w/o an aux plane drm/i915: Pass the correct plane index to _intel_compute_tile_offset() drm/i915: Use DRM_DEBUG_KMS() for framebuffer failure debug messages drm/i915: Reject HDMI 12bpc if the sink doesn't indicate support drm/i915: Use I915_READ_FW in i915_get_vblank_counter() drm/i915: s/__raw_i915_read32/I915_READ_FW/ in the SKL+ scanline read w/a drm/i915: Organize plane register writes into tighter bunches drm/i915: Use I915_READ_FW for plane updates drm/i915: Optimize VLV/CHV display FIFO updates Revert "drm/i915: Ignore panel type from OpRegion on SKL" drm: Share the code to compute color plane dimesions drm: Remove fb hsub/vsub alignment requirement drm: Add mode_config .get_format_info() hook drm/i915: Extract intel_wm_plane_visible() drm/i915: Fix SKL cursor watermarks drm/i915: Extract skl_plane_ctl() drm/i915: Use skl_plane_ctl() for the SKL "sprite" planes drm/i915: Extract vlv_sprite_ctl() drm/i915: Extract ivb_sprite_ctl() drm/i915: Extract ilk_sprite_ctl() drm/i915: Extract i845_cursor_ctl() and i9xx_cursor_ctl() drm/i915: Extract i9xx_plane_ctl() and ironlake_plane_ctl() drm/i915: Nuke ironlake_plane_ctl() drm/i915: Pre-compute plane control register value drm/i915: Introduce i9xx_check_plane_surface() drm/i915: Eliminate ironlake_update_primary_plane() drm/i915: Use i9xx_check_plane_surface() for sprite planes as well drm/i915: Make legacy cursor updates more unsynced drm/i915: Perform link quality check unconditionally during long pulse Vinay Simha BN (1): drm/msm/hdmi: redefinitions of macros not required Vincent Abriou (2): MAINTAINERS: add drm/sti driver into drm-misc drm/sti: fix GDP size to support up to UHD resolution Wei Yongjun (5): drm: mxsfb: fix error return code in mxsfb_load() drm: mxsfb: Make local symbol mxsfb_funcs static drm/bridge/tfp410: Make symbol tfp410_platform_driver static drm/msm/dsi: fix error return code in msm_dsi_host_init() drm/nouveau/secboot/gm20b: fix the error return code in gm20b_secboot_tegra_read_wpr() Weinan Li (3): drm/i915: noop forcewake get/put when vgpu activated drm/i915: clean up unused vgpu_read/write drm/i915/gvt: emulate SKL_FUSE_STATUS and LCPLL_CTL for virtual monitor detection Wolfram Sang (1): drm: rcar-du: Don't open code of_device_get_match_data() Xiangliang Yu (27): drm/amdgpu: change pointer of mqd_ptr & mqd_backup to void drm/amdgpu/virt: fix typo drm/amdgpu/gfx: free memory of mqd backup drm/amdgpu/gfx8: move CE&DE meta data structure to vi_structs.h drm/amdgpu: impl sriov detection for vega10 drm/amdgpu: add kiq ring for gfx9 drm/amdgpu/gfx9: fullfill kiq funcs (v2) drm/amdgpu/gfx9: fullfill kiq irq funcs (v2) drm/amdgpu: init kiq and kcq for vega10 drm/amdgpu/gfx9: impl gfx9 meta data emit drm/amdgpu/soc15: bypass PSP for VF drm/amdgpu/gmc9: no need use kiq in vega10 tlb flush drm/amdgpu/dce_virtual: bypass DPM for vf drm/amdgpu/virt: impl mailbox for ai drm/amdgpu/soc15: init virt ops for vf drm/amdgpu/soc15: enable virtual dce for vf drm/amdgpu: Don't touch PG&CG for SRIOV MM drm/amdgpu/vce4: enable doorbell for SRIOV drm/amdgpu: disable uvd for sriov drm/amdgpu/virt: add structure for MM table drm/amdgpu/vce4: alloc mm table for MM sriov drm/amdgpu/vce4: Ignore vce ring/ib test temporarily drm/amdgpu: add mmsch structures drm/amdgpu/vce4: impl vce & mmsch sriov start drm/amdgpu/psp: add check sOS sign drm/amdgpu/soc15: bypass pp block for vf drm/amdgpu/soc15: enable psp block for SRIOV Xinliang Liu (1): drm/fb-helper: Add multi buffer support for cma fbdev Xu Han (5): drm/i915/gvt: Add KBL platform definition. drm/i915/gvt: Update MMIO handle policy to compatible KBL platform. drm/i915/gvt: Update save/restore list to compatible KBL platform. drm/i915/gvt: Add KBL dispatch logic in each function. drm/i915/gvt: Turn on KBL platform support. Yannick Fertre (2): dt-bindings: Add Ampire AM-480272H3TMQW-T01H panel drm/panel: simple: Add support for Ampire AM-480272H3TMQW-T01H Zhang, Jerry (2): drm/amdgpu: create a func to check vm size drm/amdgpu: fix vm size and block size for VMPT (v5) Zhenyu Wang (7): drm/i915: Fix vGPU balloon for ggtt guard page drm/i915/gvt: fix error return check for copy_gma_to_hva() drm/i915/gvt: Add mdev device attribute group drm/i915/gvt: adjust mem size for low resolution type drm/i915/gvt: cleanup some too chatty scheduler message drm/i915/gvt: remove some debug messages in scheduler timer handler drm/i915/gvt: Fix PTE write flush for taking runtime pm properly Zhi Wang (2): drm/i915: Let execlist_update_context() cover !FULL_PPGTT mode. drm/i915: A hotfix for making aliasing PPGTT work for GVT-g kbuild test robot (3): drm/tinydrm: fix semicolon.cocci warnings drm/tinydrm: fix semicolon.cocci warnings drm/amdgpu: fix semicolon.cocci warnings ken (1): drm/amdgpu: add clinetid definition for vega10 sagar.a.kamble@xxxxxxxxx (1): drm/i915: Do RPM Wake during GuC/HuC status read shaoming chen (2): drm/mediatek: add dsi interrupt control drm/mediatek: add dsi transfer function yt.shen@xxxxxxxxxxxx (10): dt-bindings: display: mediatek: update supported chips drm/mediatek: add helpers for coverting from the generic components drm/mediatek: add *driver_data for different hardware settings drm/mediatek: add shadow register support drm/mediatek: add BLS component drm/mediatek: update display module connections drm/mediatek: cleaning up and refine drm/mediatek: add non-continuous clock mode and EOT packet control drm/mediatek: update DSI sub driver flow for sending commands to panel drm/mediatek: add support for Mediatek SoC MT2701 Øyvind A. Holm (2): drm/vmwgfx: Revert "drm/vmwgfx: Replace numeric parameter like 0444 with macro" drm/vmwgfx: Convert macro to octal representation Documentation/ABI/testing/sysfs-bus-pci | 2 +- Documentation/EDID/edid.S | 6 +- Documentation/admin-guide/security-bugs.rst | 39 +- Documentation/conf.py | 2 +- Documentation/cpu-freq/cpu-drivers.txt | 2 +- .../bindings/display/amlogic,meson-dw-hdmi.txt | 111 + .../devicetree/bindings/display/brcm,bcm-vc4.txt | 3 + .../bindings/display/bridge/lvds-transmitter.txt | 64 + .../bridge/megachips-stdpxxxx-ge-b850v3-fw.txt | 94 + .../bindings/display/bridge/renesas,dw-hdmi.txt | 75 + .../bindings/display/imx/fsl-imx-drm.txt | 59 +- .../bindings/display/mediatek/mediatek,disp.txt | 2 + .../bindings/display/mediatek/mediatek,dsi.txt | 2 + .../display/panel/ampire,am-480272h3tmqw-t01h.txt | 26 + .../display/panel/mitsubishi,aa104xd12.txt | 47 + .../display/panel/mitsubishi,aa121td01.txt | 47 + .../bindings/display/panel/panel-common.txt | 91 + .../bindings/display/panel/panel-dpi.txt | 3 + .../bindings/display/panel/panel-lvds.txt | 120 + .../bindings/display/panel/samsung,s6e3ha2.txt | 28 + .../bindings/display/panel/sitronix,st7789v.txt | 37 + .../bindings/display/panel/winstar,wf35ltiacd.txt | 48 + .../devicetree/bindings/display/renesas,du.txt | 3 + .../display/rockchip/dw_mipi_dsi_rockchip.txt | 12 +- .../devicetree/bindings/vendor-prefixes.txt | 2 + Documentation/doc-guide/hello.dot | 3 + Documentation/doc-guide/sphinx.rst | 115 +- Documentation/doc-guide/svg_image.svg | 10 + Documentation/gpu/bridge/dw-hdmi.rst | 15 + Documentation/gpu/drm-internals.rst | 113 +- Documentation/gpu/drm-kms-helpers.rst | 40 +- Documentation/gpu/drm-kms.rst | 264 +- Documentation/gpu/drm-mm.rst | 41 +- Documentation/gpu/drm-uapi.rst | 40 + Documentation/gpu/i915.rst | 9 + Documentation/gpu/index.rst | 4 + Documentation/gpu/introduction.rst | 35 + Documentation/gpu/kms-properties.csv | 5 - Documentation/gpu/meson.rst | 61 + Documentation/gpu/todo.rst | 407 + Documentation/gpu/vc4.rst | 89 + Documentation/media/uapi/v4l/subdev-formats.rst | 3000 +- Documentation/phy.txt | 2 +- Documentation/process/changes.rst | 7 +- Documentation/process/index.rst | 1 + Documentation/sphinx/kfigure.py | 551 + MAINTAINERS | 37 +- arch/x86/include/asm/iosf_mbi.h | 87 + arch/x86/kernel/early-quirks.c | 1 + arch/x86/platform/intel/iosf_mbi.c | 49 + drivers/char/agp/intel-gtt.c | 16 +- drivers/dma-buf/dma-buf.c | 53 +- drivers/dma-buf/dma-fence-array.c | 26 + drivers/dma-buf/dma-fence.c | 2 + drivers/gpu/drm/Kconfig | 9 + drivers/gpu/drm/Makefile | 7 +- drivers/gpu/drm/amd/amdgpu/Makefile | 27 +- drivers/gpu/drm/amd/amdgpu/amdgpu.h | 314 +- drivers/gpu/drm/amd/amdgpu/amdgpu_afmt.c | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c | 57 + drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.h | 5 + drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.c | 112 + drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.h | 33 + drivers/gpu/drm/amd/amdgpu/amdgpu_atpx_handler.c | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_bios.c | 30 +- drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c | 2 +- drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c | 41 +- drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 71 +- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 533 +- drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 14 +- drivers/gpu/drm/amd/amdgpu/amdgpu_dpm.c | 70 +- drivers/gpu/drm/amd/amdgpu/amdgpu_dpm.h | 32 +- drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 45 +- drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c | 19 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c | 5 +- drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 129 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c | 21 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ih.h | 51 +- drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c | 115 +- drivers/gpu/drm/amd/amdgpu/amdgpu_irq.h | 10 +- drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 157 +- drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h | 6 +- drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 50 +- drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 243 +- drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.c | 7 +- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 481 + drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h | 127 + drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c | 61 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h | 29 +- drivers/gpu/drm/amd/amdgpu/amdgpu_test.c | 81 +- drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h | 106 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 96 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c | 112 +- drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.h | 19 + drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c | 62 +- drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.h | 29 + drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c | 25 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vce.h | 25 + drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c | 24 +- drivers/gpu/drm/amd/amdgpu/amdgpu_virt.h | 13 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 1098 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h | 70 +- drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c | 17 +- drivers/gpu/drm/amd/amdgpu/atom.c | 90 +- drivers/gpu/drm/amd/amdgpu/atom.h | 2 +- drivers/gpu/drm/amd/amdgpu/ci_dpm.c | 305 +- drivers/gpu/drm/amd/amdgpu/ci_dpm.h | 7 + drivers/gpu/drm/amd/amdgpu/cik.c | 8 + drivers/gpu/drm/amd/amdgpu/cik_ih.c | 3 +- drivers/gpu/drm/amd/amdgpu/cik_sdma.c | 31 +- drivers/gpu/drm/amd/amdgpu/cikd.h | 2 +- drivers/gpu/drm/amd/amdgpu/clearstate_gfx9.h | 941 + drivers/gpu/drm/amd/amdgpu/cz_ih.c | 3 +- drivers/gpu/drm/amd/amdgpu/dce_v10_0.c | 48 +- drivers/gpu/drm/amd/amdgpu/dce_v11_0.c | 48 +- drivers/gpu/drm/amd/amdgpu/dce_v6_0.c | 48 +- drivers/gpu/drm/amd/amdgpu/dce_v8_0.c | 48 +- drivers/gpu/drm/amd/amdgpu/dce_virtual.c | 11 +- drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c | 31 +- drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c | 60 +- drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 555 +- drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 3916 + drivers/gpu/drm/amd/amdgpu/gfx_v9_0.h | 35 + drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.c | 425 + drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.h | 35 + drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c | 87 +- drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c | 191 +- drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c | 300 +- drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c | 860 + drivers/gpu/drm/amd/amdgpu/gmc_v9_0.h | 30 + drivers/gpu/drm/amd/amdgpu/iceland_ih.c | 3 +- drivers/gpu/drm/amd/amdgpu/kv_dpm.c | 40 +- drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.c | 582 + drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.h | 35 + drivers/gpu/drm/amd/amdgpu/mmsch_v1_0.h | 87 + drivers/gpu/drm/amd/amdgpu/mxgpu_ai.c | 340 + drivers/gpu/drm/amd/amdgpu/mxgpu_ai.h | 52 + drivers/gpu/drm/amd/amdgpu/mxgpu_vi.c | 102 +- drivers/gpu/drm/amd/amdgpu/mxgpu_vi.h | 2 +- drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c | 266 + drivers/gpu/drm/amd/amdgpu/nbio_v6_1.h | 54 + drivers/gpu/drm/amd/amdgpu/psp_gfx_if.h | 269 + drivers/gpu/drm/amd/amdgpu/psp_v3_1.c | 517 + drivers/gpu/drm/amd/amdgpu/psp_v3_1.h | 50 + drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c | 34 +- drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c | 49 +- drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c | 1616 + drivers/gpu/drm/amd/amdgpu/sdma_v4_0.h | 30 + drivers/gpu/drm/amd/amdgpu/si.c | 7 + drivers/gpu/drm/amd/amdgpu/si_dma.c | 22 +- drivers/gpu/drm/amd/amdgpu/si_dpm.c | 45 +- drivers/gpu/drm/amd/amdgpu/si_ih.c | 3 +- drivers/gpu/drm/amd/amdgpu/soc15.c | 894 + drivers/gpu/drm/amd/amdgpu/soc15.h | 35 + drivers/gpu/drm/amd/amdgpu/soc15_common.h | 57 + drivers/gpu/drm/amd/amdgpu/soc15d.h | 288 + drivers/gpu/drm/amd/amdgpu/tonga_ih.c | 5 +- drivers/gpu/drm/amd/amdgpu/uvd_v4_2.c | 30 +- drivers/gpu/drm/amd/amdgpu/uvd_v5_0.c | 29 +- drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c | 37 +- drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c | 1532 + drivers/gpu/drm/amd/amdgpu/uvd_v7_0.h | 29 + drivers/gpu/drm/amd/amdgpu/vce_v2_0.c | 87 +- drivers/gpu/drm/amd/amdgpu/vce_v3_0.c | 74 +- drivers/gpu/drm/amd/amdgpu/vce_v4_0.c | 1129 + drivers/gpu/drm/amd/amdgpu/vce_v4_0.h | 29 + drivers/gpu/drm/amd/amdgpu/vega10_ih.c | 424 + drivers/gpu/drm/amd/amdgpu/vega10_ih.h | 30 + drivers/gpu/drm/amd/amdgpu/vega10_sdma_pkt_open.h | 3335 + drivers/gpu/drm/amd/amdgpu/vi.c | 67 +- drivers/gpu/drm/amd/amdgpu/vi.h | 112 - drivers/gpu/drm/amd/amdgpu/vid.h | 83 + drivers/gpu/drm/amd/include/amd_acpi.h | 12 + drivers/gpu/drm/amd/include/amd_pcie_helpers.h | 4 +- drivers/gpu/drm/amd/include/amd_shared.h | 20 + .../drm/amd/include/asic_reg/gmc/gmc_6_0_sh_mask.h | 4 + .../gpu/drm/amd/include/asic_reg/smu/smu_7_1_2_d.h | 1 + .../gpu/drm/amd/include/asic_reg/smu/smu_7_1_3_d.h | 2 + .../asic_reg/vega10/ATHUB/athub_1_0_default.h | 241 + .../asic_reg/vega10/ATHUB/athub_1_0_offset.h | 453 + .../asic_reg/vega10/ATHUB/athub_1_0_sh_mask.h | 2045 + .../include/asic_reg/vega10/DC/dce_12_0_default.h | 9868 ++ .../include/asic_reg/vega10/DC/dce_12_0_offset.h | 18193 +++ .../include/asic_reg/vega10/DC/dce_12_0_sh_mask.h | 64636 +++++++++ .../include/asic_reg/vega10/GC/gc_9_0_default.h | 3873 + .../amd/include/asic_reg/vega10/GC/gc_9_0_offset.h | 7230 + .../include/asic_reg/vega10/GC/gc_9_0_sh_mask.h | 29868 ++++ .../include/asic_reg/vega10/HDP/hdp_4_0_default.h | 117 + .../include/asic_reg/vega10/HDP/hdp_4_0_offset.h | 209 + .../include/asic_reg/vega10/HDP/hdp_4_0_sh_mask.h | 601 + .../asic_reg/vega10/MMHUB/mmhub_1_0_default.h | 1011 + .../asic_reg/vega10/MMHUB/mmhub_1_0_offset.h | 1967 + .../asic_reg/vega10/MMHUB/mmhub_1_0_sh_mask.h | 10127 ++ .../include/asic_reg/vega10/MP/mp_9_0_default.h | 342 + .../amd/include/asic_reg/vega10/MP/mp_9_0_offset.h | 375 + .../include/asic_reg/vega10/MP/mp_9_0_sh_mask.h | 1463 + .../asic_reg/vega10/NBIF/nbif_6_1_default.h | 1271 + .../include/asic_reg/vega10/NBIF/nbif_6_1_offset.h | 1688 + .../asic_reg/vega10/NBIF/nbif_6_1_sh_mask.h | 10281 ++ .../asic_reg/vega10/NBIO/nbio_6_1_default.h | 22340 +++ .../include/asic_reg/vega10/NBIO/nbio_6_1_offset.h | 3649 + .../asic_reg/vega10/NBIO/nbio_6_1_sh_mask.h | 133884 ++++++++++++++++++ .../asic_reg/vega10/OSSSYS/osssys_4_0_default.h | 176 + .../asic_reg/vega10/OSSSYS/osssys_4_0_offset.h | 327 + .../asic_reg/vega10/OSSSYS/osssys_4_0_sh_mask.h | 1196 + .../asic_reg/vega10/SDMA0/sdma0_4_0_default.h | 286 + .../asic_reg/vega10/SDMA0/sdma0_4_0_offset.h | 547 + .../asic_reg/vega10/SDMA0/sdma0_4_0_sh_mask.h | 1852 + .../asic_reg/vega10/SDMA1/sdma1_4_0_default.h | 282 + .../asic_reg/vega10/SDMA1/sdma1_4_0_offset.h | 539 + .../asic_reg/vega10/SDMA1/sdma1_4_0_sh_mask.h | 1810 + .../asic_reg/vega10/SMUIO/smuio_9_0_default.h | 100 + .../asic_reg/vega10/SMUIO/smuio_9_0_offset.h | 175 + .../asic_reg/vega10/SMUIO/smuio_9_0_sh_mask.h | 258 + .../include/asic_reg/vega10/THM/thm_9_0_default.h | 194 + .../include/asic_reg/vega10/THM/thm_9_0_offset.h | 363 + .../include/asic_reg/vega10/THM/thm_9_0_sh_mask.h | 1314 + .../include/asic_reg/vega10/UVD/uvd_7_0_default.h | 127 + .../include/asic_reg/vega10/UVD/uvd_7_0_offset.h | 222 + .../include/asic_reg/vega10/UVD/uvd_7_0_sh_mask.h | 811 + .../include/asic_reg/vega10/VCE/vce_4_0_default.h | 122 + .../include/asic_reg/vega10/VCE/vce_4_0_offset.h | 208 + .../include/asic_reg/vega10/VCE/vce_4_0_sh_mask.h | 488 + .../gpu/drm/amd/include/asic_reg/vega10/soc15ip.h | 1343 + .../drm/amd/include/asic_reg/vega10/vega10_enum.h | 22531 +++ drivers/gpu/drm/amd/include/atomfirmware.h | 2385 + drivers/gpu/drm/amd/include/atomfirmwareid.h | 86 + drivers/gpu/drm/amd/include/cgs_linux.h | 19 +- drivers/gpu/drm/amd/include/displayobject.h | 249 + drivers/gpu/drm/amd/include/dm_pp_interface.h | 83 + .../drm/amd/include/ivsrcid/ivsrcid_vislands30.h | 99 + drivers/gpu/drm/amd/include/v9_structs.h | 743 + drivers/gpu/drm/amd/include/vi_structs.h | 106 + drivers/gpu/drm/amd/powerplay/amd_powerplay.c | 449 +- drivers/gpu/drm/amd/powerplay/hwmgr/Makefile | 6 +- drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c | 34 +- .../gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c | 73 +- drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c | 9 + drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr_ppt.h | 16 +- drivers/gpu/drm/amd/powerplay/hwmgr/ppatomfwctrl.c | 396 + drivers/gpu/drm/amd/powerplay/hwmgr/ppatomfwctrl.h | 140 + drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c | 170 +- drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c | 4450 + drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.h | 434 + drivers/gpu/drm/amd/powerplay/hwmgr/vega10_inc.h | 44 + .../gpu/drm/amd/powerplay/hwmgr/vega10_powertune.c | 137 + .../gpu/drm/amd/powerplay/hwmgr/vega10_powertune.h | 65 + .../gpu/drm/amd/powerplay/hwmgr/vega10_pptable.h | 381 + .../amd/powerplay/hwmgr/vega10_processpptables.c | 1190 + .../amd/powerplay/hwmgr/vega10_processpptables.h | 62 + .../gpu/drm/amd/powerplay/hwmgr/vega10_thermal.c | 761 + .../gpu/drm/amd/powerplay/hwmgr/vega10_thermal.h | 83 + drivers/gpu/drm/amd/powerplay/inc/amd_powerplay.h | 46 +- .../gpu/drm/amd/powerplay/inc/hardwaremanager.h | 43 + drivers/gpu/drm/amd/powerplay/inc/hwmgr.h | 137 +- drivers/gpu/drm/amd/powerplay/inc/pp_debug.h | 2 +- drivers/gpu/drm/amd/powerplay/inc/pp_instance.h | 1 + drivers/gpu/drm/amd/powerplay/inc/pp_soc15.h | 48 + drivers/gpu/drm/amd/powerplay/inc/smu7_ppsmc.h | 1 + drivers/gpu/drm/amd/powerplay/inc/smu9.h | 147 + drivers/gpu/drm/amd/powerplay/inc/smu9_driver_if.h | 467 + drivers/gpu/drm/amd/powerplay/inc/smumgr.h | 8 + drivers/gpu/drm/amd/powerplay/inc/vega10_ppsmc.h | 131 + drivers/gpu/drm/amd/powerplay/smumgr/Makefile | 2 +- drivers/gpu/drm/amd/powerplay/smumgr/fiji_smc.c | 103 +- drivers/gpu/drm/amd/powerplay/smumgr/fiji_smc.h | 3 +- drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c | 1 + drivers/gpu/drm/amd/powerplay/smumgr/iceland_smc.c | 14 +- .../gpu/drm/amd/powerplay/smumgr/polaris10_smc.c | 68 +- .../gpu/drm/amd/powerplay/smumgr/polaris10_smc.h | 2 + .../drm/amd/powerplay/smumgr/polaris10_smumgr.c | 1 + drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c | 19 + drivers/gpu/drm/amd/powerplay/smumgr/tonga_smc.c | 67 +- drivers/gpu/drm/amd/powerplay/smumgr/tonga_smc.h | 2 + .../gpu/drm/amd/powerplay/smumgr/tonga_smumgr.c | 1 + .../gpu/drm/amd/powerplay/smumgr/vega10_smumgr.c | 564 + .../gpu/drm/amd/powerplay/smumgr/vega10_smumgr.h | 70 + drivers/gpu/drm/amd/scheduler/gpu_scheduler.c | 6 +- drivers/gpu/drm/amd/scheduler/gpu_scheduler.h | 11 +- drivers/gpu/drm/arc/arcpgu_drv.c | 1 - drivers/gpu/drm/arm/hdlcd_crtc.c | 20 + drivers/gpu/drm/arm/hdlcd_drv.c | 55 +- drivers/gpu/drm/arm/malidp_crtc.c | 362 +- drivers/gpu/drm/arm/malidp_drv.c | 371 +- drivers/gpu/drm/arm/malidp_drv.h | 13 + drivers/gpu/drm/arm/malidp_hw.c | 213 + drivers/gpu/drm/arm/malidp_hw.h | 81 + drivers/gpu/drm/arm/malidp_planes.c | 108 +- drivers/gpu/drm/arm/malidp_regs.h | 72 +- drivers/gpu/drm/armada/armada_crtc.c | 59 +- drivers/gpu/drm/armada/armada_crtc.h | 2 - drivers/gpu/drm/armada/armada_debugfs.c | 65 +- drivers/gpu/drm/armada/armada_drm.h | 1 - drivers/gpu/drm/armada/armada_drv.c | 34 +- drivers/gpu/drm/armada/armada_fbdev.c | 2 - drivers/gpu/drm/armada/armada_gem.c | 8 +- drivers/gpu/drm/armada/armada_overlay.c | 6 +- drivers/gpu/drm/ast/ast_fb.c | 9 +- drivers/gpu/drm/ast/ast_mode.c | 3 +- drivers/gpu/drm/ast/ast_ttm.c | 1 + drivers/gpu/drm/atmel-hlcdc/Makefile | 1 - drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c | 93 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c | 147 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.h | 369 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_layer.c | 666 - drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_layer.h | 399 - drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c | 72 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c | 642 +- drivers/gpu/drm/bochs/bochs_fbdev.c | 16 +- drivers/gpu/drm/bochs/bochs_kms.c | 3 +- drivers/gpu/drm/bochs/bochs_mm.c | 1 + drivers/gpu/drm/bridge/Kconfig | 38 +- drivers/gpu/drm/bridge/Makefile | 6 +- drivers/gpu/drm/bridge/adv7511/adv7533.c | 12 +- drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 28 + drivers/gpu/drm/bridge/dumb-vga-dac.c | 16 +- drivers/gpu/drm/bridge/lvds-encoder.c | 210 + .../drm/bridge/megachips-stdpxxxx-ge-b850v3-fw.c | 429 + drivers/gpu/drm/bridge/nxp-ptn3460.c | 16 +- drivers/gpu/drm/bridge/parade-ps8622.c | 16 +- drivers/gpu/drm/bridge/sil-sii8620.c | 4 + drivers/gpu/drm/bridge/synopsys/Kconfig | 23 + drivers/gpu/drm/bridge/synopsys/Makefile | 5 + .../drm/bridge/{ => synopsys}/dw-hdmi-ahb-audio.c | 0 .../gpu/drm/bridge/{ => synopsys}/dw-hdmi-audio.h | 0 .../drm/bridge/{ => synopsys}/dw-hdmi-i2s-audio.c | 0 drivers/gpu/drm/bridge/{ => synopsys}/dw-hdmi.c | 1030 +- drivers/gpu/drm/bridge/{ => synopsys}/dw-hdmi.h | 4 + drivers/gpu/drm/bridge/tc358767.c | 27 +- drivers/gpu/drm/bridge/ti-tfp410.c | 89 +- drivers/gpu/drm/cirrus/cirrus_fbdev.c | 1 - drivers/gpu/drm/cirrus/cirrus_mode.c | 3 +- drivers/gpu/drm/cirrus/cirrus_ttm.c | 1 + drivers/gpu/drm/drm_atomic.c | 190 +- drivers/gpu/drm/drm_atomic_helper.c | 927 +- drivers/gpu/drm/drm_blend.c | 23 +- drivers/gpu/drm/drm_cache.c | 12 +- drivers/gpu/drm/drm_color_mgmt.c | 51 +- drivers/gpu/drm/drm_connector.c | 132 +- drivers/gpu/drm/drm_crtc.c | 87 +- drivers/gpu/drm/drm_crtc_helper.c | 46 +- drivers/gpu/drm/drm_crtc_internal.h | 13 +- drivers/gpu/drm/drm_debugfs.c | 85 +- drivers/gpu/drm/drm_debugfs_crc.c | 17 +- drivers/gpu/drm/drm_dp_dual_mode_helper.c | 2 + drivers/gpu/drm/drm_dp_helper.c | 127 + drivers/gpu/drm/drm_dp_mst_topology.c | 35 +- drivers/gpu/drm/drm_edid.c | 94 +- drivers/gpu/drm/drm_edid_load.c | 17 +- drivers/gpu/drm/drm_encoder.c | 8 +- drivers/gpu/drm/drm_fb_cma_helper.c | 22 +- drivers/gpu/drm/drm_fb_helper.c | 337 +- drivers/gpu/drm/{drm_fops.c => drm_file.c} | 75 +- drivers/gpu/drm/drm_fourcc.c | 33 + drivers/gpu/drm/drm_framebuffer.c | 217 +- drivers/gpu/drm/drm_gem.c | 44 +- drivers/gpu/drm/drm_gem_cma_helper.c | 13 +- drivers/gpu/drm/drm_internal.h | 4 +- drivers/gpu/drm/drm_ioc32.c | 79 +- drivers/gpu/drm/drm_ioctl.c | 54 +- drivers/gpu/drm/drm_irq.c | 192 +- drivers/gpu/drm/drm_kms_helper_common.c | 3 +- drivers/gpu/drm/drm_mm.c | 2 +- drivers/gpu/drm/drm_mode_config.c | 22 +- drivers/gpu/drm/drm_mode_object.c | 44 +- drivers/gpu/drm/drm_modes.c | 2 +- drivers/gpu/drm/drm_modeset_helper.c | 2 +- drivers/gpu/drm/drm_modeset_lock.c | 102 - drivers/gpu/drm/drm_of.c | 52 + drivers/gpu/drm/drm_pci.c | 7 + drivers/gpu/drm/drm_plane.c | 102 +- drivers/gpu/drm/drm_plane_helper.c | 20 +- drivers/gpu/drm/drm_platform.c | 87 - drivers/gpu/drm/drm_prime.c | 21 +- drivers/gpu/drm/drm_print.c | 2 +- drivers/gpu/drm/drm_probe_helper.c | 122 +- drivers/gpu/drm/drm_property.c | 124 +- drivers/gpu/drm/drm_scdc_helper.c | 244 + drivers/gpu/drm/drm_simple_kms_helper.c | 8 +- drivers/gpu/drm/drm_sysfs.c | 70 +- drivers/gpu/drm/drm_trace.h | 20 +- drivers/gpu/drm/etnaviv/Kconfig | 1 + drivers/gpu/drm/etnaviv/etnaviv_drv.c | 6 +- drivers/gpu/drm/etnaviv/etnaviv_gem.h | 4 +- drivers/gpu/drm/etnaviv/etnaviv_gem_submit.c | 65 +- drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 99 +- drivers/gpu/drm/etnaviv/etnaviv_gpu.h | 4 +- drivers/gpu/drm/exynos/exynos_dp.c | 36 +- drivers/gpu/drm/exynos/exynos_drm_crtc.c | 40 +- drivers/gpu/drm/exynos/exynos_drm_crtc.h | 2 - drivers/gpu/drm/exynos/exynos_drm_dpi.c | 17 +- drivers/gpu/drm/exynos/exynos_drm_drv.c | 245 +- drivers/gpu/drm/exynos/exynos_drm_drv.h | 8 - drivers/gpu/drm/exynos/exynos_drm_dsi.c | 14 +- drivers/gpu/drm/exynos/exynos_drm_fbdev.c | 5 +- drivers/gpu/drm/exynos/exynos_drm_mic.c | 25 +- drivers/gpu/drm/exynos/exynos_drm_vidi.c | 1 - drivers/gpu/drm/exynos/exynos_hdmi.c | 8 +- drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c | 26 + drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c | 38 +- drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c | 44 +- drivers/gpu/drm/gma500/cdv_intel_lvds.c | 9 +- drivers/gpu/drm/gma500/framebuffer.c | 9 +- drivers/gpu/drm/gma500/gma_display.c | 10 +- drivers/gpu/drm/gma500/gma_display.h | 6 +- drivers/gpu/drm/gma500/oaktrail_lvds.c | 18 +- drivers/gpu/drm/gma500/psb_drv.h | 5 +- drivers/gpu/drm/gma500/psb_intel_lvds.c | 7 +- drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c | 20 + drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c | 23 - drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_fbdev.c | 2 - drivers/gpu/drm/hisilicon/kirin/dw_drm_dsi.c | 27 +- drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c | 11 +- drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c | 42 +- drivers/gpu/drm/i915/Kconfig | 2 + drivers/gpu/drm/i915/Kconfig.debug | 29 + drivers/gpu/drm/i915/Makefile | 7 +- drivers/gpu/drm/i915/gvt/cmd_parser.c | 86 +- drivers/gpu/drm/i915/gvt/display.c | 51 +- drivers/gpu/drm/i915/gvt/execlist.c | 17 +- drivers/gpu/drm/i915/gvt/gtt.c | 8 +- drivers/gpu/drm/i915/gvt/gvt.c | 19 +- drivers/gpu/drm/i915/gvt/gvt.h | 13 + drivers/gpu/drm/i915/gvt/handlers.c | 427 +- drivers/gpu/drm/i915/gvt/interrupt.c | 5 +- drivers/gpu/drm/i915/gvt/kvmgt.c | 38 +- drivers/gpu/drm/i915/gvt/mmio.h | 19 +- drivers/gpu/drm/i915/gvt/render.c | 29 +- drivers/gpu/drm/i915/gvt/sched_policy.c | 242 +- drivers/gpu/drm/i915/gvt/sched_policy.h | 2 + drivers/gpu/drm/i915/gvt/scheduler.c | 10 +- drivers/gpu/drm/i915/gvt/scheduler.h | 1 - drivers/gpu/drm/i915/gvt/vgpu.c | 85 +- drivers/gpu/drm/i915/i915_cmd_parser.c | 25 +- drivers/gpu/drm/i915/i915_debugfs.c | 749 +- drivers/gpu/drm/i915/i915_drv.c | 183 +- drivers/gpu/drm/i915/i915_drv.h | 397 +- drivers/gpu/drm/i915/i915_gem.c | 555 +- drivers/gpu/drm/i915/i915_gem.h | 9 + drivers/gpu/drm/i915/i915_gem_batch_pool.c | 37 +- drivers/gpu/drm/i915/i915_gem_clflush.c | 189 + drivers/gpu/drm/i915/i915_gem_clflush.h | 37 + drivers/gpu/drm/i915/i915_gem_context.c | 181 +- drivers/gpu/drm/i915/i915_gem_context.h | 2 - drivers/gpu/drm/i915/i915_gem_dmabuf.c | 13 +- drivers/gpu/drm/i915/i915_gem_evict.c | 18 +- drivers/gpu/drm/i915/i915_gem_execbuffer.c | 107 +- drivers/gpu/drm/i915/i915_gem_fence_reg.c | 11 +- drivers/gpu/drm/i915/i915_gem_gtt.c | 2086 +- drivers/gpu/drm/i915/i915_gem_gtt.h | 124 +- drivers/gpu/drm/i915/i915_gem_internal.c | 7 +- drivers/gpu/drm/i915/i915_gem_object.h | 41 +- drivers/gpu/drm/i915/i915_gem_request.c | 494 +- drivers/gpu/drm/i915/i915_gem_request.h | 96 +- drivers/gpu/drm/i915/i915_gem_shrinker.c | 7 +- drivers/gpu/drm/i915/i915_gem_stolen.c | 42 +- drivers/gpu/drm/i915/i915_gem_tiling.c | 25 +- drivers/gpu/drm/i915/i915_gem_timeline.h | 9 +- drivers/gpu/drm/i915/i915_gem_userptr.c | 75 +- drivers/gpu/drm/i915/i915_gpu_error.c | 321 +- drivers/gpu/drm/i915/i915_guc_submission.c | 1026 +- drivers/gpu/drm/i915/i915_irq.c | 325 +- drivers/gpu/drm/i915/i915_params.c | 16 +- drivers/gpu/drm/i915/i915_params.h | 83 +- drivers/gpu/drm/i915/i915_pci.c | 32 +- drivers/gpu/drm/i915/i915_perf.c | 2 +- drivers/gpu/drm/i915/i915_reg.h | 114 +- drivers/gpu/drm/i915/i915_selftest.h | 106 + drivers/gpu/drm/i915/i915_sw_fence.c | 8 +- drivers/gpu/drm/i915/i915_sysfs.c | 63 +- drivers/gpu/drm/i915/i915_trace.h | 472 +- drivers/gpu/drm/i915/i915_utils.h | 31 + drivers/gpu/drm/i915/i915_vgpu.c | 17 +- drivers/gpu/drm/i915/i915_vma.c | 34 +- drivers/gpu/drm/i915/i915_vma.h | 4 +- drivers/gpu/drm/i915/intel_atomic.c | 15 +- drivers/gpu/drm/i915/intel_atomic_plane.c | 17 +- drivers/gpu/drm/i915/intel_audio.c | 4 +- drivers/gpu/drm/i915/intel_bios.c | 46 +- drivers/gpu/drm/i915/intel_breadcrumbs.c | 605 +- drivers/gpu/drm/i915/intel_cdclk.c | 1908 + drivers/gpu/drm/i915/intel_color.c | 104 +- drivers/gpu/drm/i915/intel_crt.c | 46 +- drivers/gpu/drm/i915/intel_csr.c | 10 +- drivers/gpu/drm/i915/intel_ddi.c | 585 +- drivers/gpu/drm/i915/intel_device_info.c | 17 +- drivers/gpu/drm/i915/intel_display.c | 3998 +- drivers/gpu/drm/i915/intel_dp.c | 339 +- drivers/gpu/drm/i915/intel_dp_mst.c | 41 +- drivers/gpu/drm/i915/intel_dpll_mgr.c | 54 +- drivers/gpu/drm/i915/intel_dpll_mgr.h | 16 - drivers/gpu/drm/i915/intel_drv.h | 261 +- drivers/gpu/drm/i915/intel_dsi.c | 614 +- drivers/gpu/drm/i915/intel_dsi.h | 13 +- drivers/gpu/drm/i915/intel_dsi_pll.c | 135 +- .../{intel_dsi_panel_vbt.c => intel_dsi_vbt.c} | 133 +- drivers/gpu/drm/i915/intel_dvo.c | 1 + drivers/gpu/drm/i915/intel_engine_cs.c | 734 +- drivers/gpu/drm/i915/intel_fbc.c | 13 +- drivers/gpu/drm/i915/intel_fbdev.c | 73 +- drivers/gpu/drm/i915/intel_fifo_underrun.c | 25 +- drivers/gpu/drm/i915/intel_frontbuffer.c | 3 +- drivers/gpu/drm/i915/intel_frontbuffer.h | 8 +- drivers/gpu/drm/i915/intel_guc_fwif.h | 71 +- drivers/gpu/drm/i915/intel_guc_loader.c | 501 +- drivers/gpu/drm/i915/intel_guc_log.c | 386 +- drivers/gpu/drm/i915/intel_gvt.c | 2 + drivers/gpu/drm/i915/intel_hangcheck.c | 4 + drivers/gpu/drm/i915/intel_hdmi.c | 82 +- drivers/gpu/drm/i915/intel_hotplug.c | 48 +- drivers/gpu/drm/i915/intel_huc.c | 130 +- drivers/gpu/drm/i915/intel_i2c.c | 4 +- drivers/gpu/drm/i915/intel_lpe_audio.c | 10 +- drivers/gpu/drm/i915/intel_lrc.c | 941 +- drivers/gpu/drm/i915/intel_lrc.h | 4 - drivers/gpu/drm/i915/intel_lspcon.c | 17 +- drivers/gpu/drm/i915/intel_lvds.c | 8 +- drivers/gpu/drm/i915/intel_mocs.c | 55 +- drivers/gpu/drm/i915/intel_opregion.c | 89 +- drivers/gpu/drm/i915/intel_overlay.c | 87 +- drivers/gpu/drm/i915/intel_panel.c | 4 +- drivers/gpu/drm/i915/intel_pipe_crc.c | 72 +- drivers/gpu/drm/i915/intel_pm.c | 1099 +- drivers/gpu/drm/i915/intel_ringbuffer.c | 1186 +- drivers/gpu/drm/i915/intel_ringbuffer.h | 229 +- drivers/gpu/drm/i915/intel_runtime_pm.c | 637 +- drivers/gpu/drm/i915/intel_sdvo.c | 1 + drivers/gpu/drm/i915/intel_sideband.c | 34 +- drivers/gpu/drm/i915/intel_sprite.c | 548 +- drivers/gpu/drm/i915/intel_tv.c | 22 +- drivers/gpu/drm/i915/intel_uc.c | 347 +- drivers/gpu/drm/i915/intel_uc.h | 101 +- drivers/gpu/drm/i915/intel_uncore.c | 419 +- drivers/gpu/drm/i915/selftests/huge_gem_object.c | 135 + drivers/gpu/drm/i915/selftests/huge_gem_object.h | 45 + .../gpu/drm/i915/selftests/i915_gem_coherency.c | 385 + drivers/gpu/drm/i915/selftests/i915_gem_context.c | 463 + drivers/gpu/drm/i915/selftests/i915_gem_dmabuf.c | 303 + drivers/gpu/drm/i915/selftests/i915_gem_evict.c | 350 + drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 1562 + drivers/gpu/drm/i915/selftests/i915_gem_object.c | 600 + drivers/gpu/drm/i915/selftests/i915_gem_request.c | 882 + .../gpu/drm/i915/selftests/i915_live_selftests.h | 19 + .../gpu/drm/i915/selftests/i915_mock_selftests.h | 20 + drivers/gpu/drm/i915/selftests/i915_random.c | 63 + drivers/gpu/drm/i915/selftests/i915_random.h | 50 + drivers/gpu/drm/i915/selftests/i915_selftest.c | 250 + drivers/gpu/drm/i915/selftests/i915_vma.c | 746 + drivers/gpu/drm/i915/selftests/intel_breadcrumbs.c | 481 + drivers/gpu/drm/i915/selftests/intel_hangcheck.c | 542 + drivers/gpu/drm/i915/selftests/intel_uncore.c | 182 + drivers/gpu/drm/i915/selftests/mock_context.c | 78 + drivers/gpu/drm/i915/selftests/mock_context.h | 34 + drivers/gpu/drm/i915/selftests/mock_dmabuf.c | 176 + drivers/gpu/drm/i915/selftests/mock_dmabuf.h | 41 + drivers/gpu/drm/i915/selftests/mock_drm.c | 73 + drivers/gpu/drm/i915/selftests/mock_drm.h | 31 + drivers/gpu/drm/i915/selftests/mock_engine.c | 206 + drivers/gpu/drm/i915/selftests/mock_engine.h | 54 + drivers/gpu/drm/i915/selftests/mock_gem_device.c | 226 + drivers/gpu/drm/i915/selftests/mock_gem_device.h | 9 + drivers/gpu/drm/i915/selftests/mock_gem_object.h | 8 + drivers/gpu/drm/i915/selftests/mock_gtt.c | 138 + drivers/gpu/drm/i915/selftests/mock_gtt.h | 35 + drivers/gpu/drm/i915/selftests/mock_request.c | 63 + drivers/gpu/drm/i915/selftests/mock_request.h | 46 + drivers/gpu/drm/i915/selftests/scatterlist.c | 364 + drivers/gpu/drm/imx/Kconfig | 7 - drivers/gpu/drm/imx/Makefile | 3 +- drivers/gpu/drm/imx/dw_hdmi-imx.c | 2 - drivers/gpu/drm/imx/imx-drm-core.c | 163 +- drivers/gpu/drm/imx/imx-drm.h | 18 +- drivers/gpu/drm/imx/imx-ldb.c | 27 +- drivers/gpu/drm/imx/ipuv3-crtc.c | 90 +- drivers/gpu/drm/imx/ipuv3-plane.c | 344 +- drivers/gpu/drm/imx/ipuv3-plane.h | 6 + drivers/gpu/drm/imx/parallel-display.c | 36 +- drivers/gpu/drm/mediatek/mtk_disp_ovl.c | 64 +- drivers/gpu/drm/mediatek/mtk_disp_rdma.c | 39 +- drivers/gpu/drm/mediatek/mtk_dpi.c | 12 +- drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 83 +- drivers/gpu/drm/mediatek/mtk_drm_crtc.h | 2 - drivers/gpu/drm/mediatek/mtk_drm_ddp.c | 138 +- drivers/gpu/drm/mediatek/mtk_drm_ddp.h | 2 + drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c | 69 +- drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.h | 2 + drivers/gpu/drm/mediatek/mtk_drm_drv.c | 58 +- drivers/gpu/drm/mediatek/mtk_drm_drv.h | 9 + drivers/gpu/drm/mediatek/mtk_dsi.c | 595 +- drivers/gpu/drm/mediatek/mtk_hdmi.c | 26 +- drivers/gpu/drm/mediatek/mtk_mipi_tx.c | 38 +- drivers/gpu/drm/meson/Kconfig | 6 + drivers/gpu/drm/meson/Makefile | 1 + drivers/gpu/drm/meson/meson_canvas.c | 4 +- drivers/gpu/drm/meson/meson_crtc.c | 37 +- drivers/gpu/drm/meson/meson_drv.c | 153 +- drivers/gpu/drm/meson/meson_drv.h | 3 + drivers/gpu/drm/meson/meson_dw_hdmi.c | 919 + drivers/gpu/drm/meson/meson_dw_hdmi.h | 146 + drivers/gpu/drm/meson/meson_registers.h | 1 + drivers/gpu/drm/meson/meson_vclk.c | 632 +- drivers/gpu/drm/meson/meson_vclk.h | 6 +- drivers/gpu/drm/meson/meson_venc.c | 1254 +- drivers/gpu/drm/meson/meson_venc.h | 7 + drivers/gpu/drm/meson/meson_venc_cvbs.c | 30 +- drivers/gpu/drm/meson/meson_viu.c | 6 +- drivers/gpu/drm/meson/meson_vpp.c | 8 +- drivers/gpu/drm/meson/meson_vpp.h | 2 + drivers/gpu/drm/mgag200/mgag200_fb.c | 5 +- drivers/gpu/drm/mgag200/mgag200_mode.c | 5 +- drivers/gpu/drm/mgag200/mgag200_ttm.c | 1 + drivers/gpu/drm/msm/Makefile | 1 + drivers/gpu/drm/msm/adreno/a3xx_gpu.c | 2 - drivers/gpu/drm/msm/adreno/a4xx_gpu.c | 4 - drivers/gpu/drm/msm/adreno/a5xx_gpu.c | 22 +- drivers/gpu/drm/msm/adreno/adreno_device.c | 126 +- drivers/gpu/drm/msm/adreno/adreno_gpu.c | 43 +- drivers/gpu/drm/msm/adreno/adreno_gpu.h | 2 +- drivers/gpu/drm/msm/dsi/dsi_host.c | 3 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c | 12 +- drivers/gpu/drm/msm/mdp/mdp4/mdp4_kms.c | 32 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.c | 83 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_cfg.h | 8 + drivers/gpu/drm/msm/mdp/mdp5/mdp5_cmd_encoder.c | 30 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c | 466 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_ctl.c | 192 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_ctl.h | 21 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_encoder.c | 66 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c | 130 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.h | 53 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_mdss.c | 2 +- drivers/gpu/drm/msm/mdp/mdp5/mdp5_mixer.c | 172 + drivers/gpu/drm/msm/mdp/mdp5/mdp5_mixer.h | 47 + drivers/gpu/drm/msm/mdp/mdp5/mdp5_pipe.c | 2 - drivers/gpu/drm/msm/mdp/mdp5/mdp5_pipe.h | 1 - drivers/gpu/drm/msm/mdp/mdp5/mdp5_plane.c | 348 +- drivers/gpu/drm/msm/mdp/mdp_kms.h | 6 + drivers/gpu/drm/msm/msm_debugfs.c | 19 +- drivers/gpu/drm/msm/msm_debugfs.h | 1 - drivers/gpu/drm/msm/msm_drv.c | 21 +- drivers/gpu/drm/msm/msm_drv.h | 9 +- drivers/gpu/drm/msm/msm_fbdev.c | 1 - drivers/gpu/drm/msm/msm_gem.h | 2 + drivers/gpu/drm/msm/msm_gem_submit.c | 39 +- drivers/gpu/drm/msm/msm_gem_vma.c | 35 +- drivers/gpu/drm/msm/msm_gpu.c | 183 +- drivers/gpu/drm/msm/msm_gpu.h | 18 +- drivers/gpu/drm/msm/msm_iommu.c | 69 +- drivers/gpu/drm/msm/msm_kms.h | 1 - drivers/gpu/drm/msm/msm_perf.c | 34 +- drivers/gpu/drm/msm/msm_rd.c | 40 +- drivers/gpu/drm/mxsfb/mxsfb_drv.c | 18 +- drivers/gpu/drm/mxsfb/mxsfb_out.c | 40 +- drivers/gpu/drm/nouveau/dispnv04/crtc.c | 10 +- drivers/gpu/drm/nouveau/dispnv04/overlay.c | 18 +- drivers/gpu/drm/nouveau/include/nvif/class.h | 2 + drivers/gpu/drm/nouveau/include/nvkm/core/device.h | 7 +- .../gpu/drm/nouveau/include/nvkm/core/msgqueue.h | 43 + drivers/gpu/drm/nouveau/include/nvkm/core/tegra.h | 4 + .../gpu/drm/nouveau/include/nvkm/engine/falcon.h | 9 + drivers/gpu/drm/nouveau/include/nvkm/engine/fifo.h | 1 + drivers/gpu/drm/nouveau/include/nvkm/engine/gr.h | 3 + .../gpu/drm/nouveau/include/nvkm/engine/nvdec.h | 8 + drivers/gpu/drm/nouveau/include/nvkm/engine/sec2.h | 13 + drivers/gpu/drm/nouveau/include/nvkm/subdev/fb.h | 8 + drivers/gpu/drm/nouveau/include/nvkm/subdev/i2c.h | 8 +- drivers/gpu/drm/nouveau/include/nvkm/subdev/ibus.h | 1 + drivers/gpu/drm/nouveau/include/nvkm/subdev/mc.h | 1 + drivers/gpu/drm/nouveau/include/nvkm/subdev/pmu.h | 1 + .../gpu/drm/nouveau/include/nvkm/subdev/secboot.h | 10 +- drivers/gpu/drm/nouveau/nouveau_acpi.c | 7 +- drivers/gpu/drm/nouveau/nouveau_bo.c | 1 + drivers/gpu/drm/nouveau/nouveau_connector.c | 5 +- drivers/gpu/drm/nouveau/nouveau_debugfs.c | 62 +- drivers/gpu/drm/nouveau/nouveau_debugfs.h | 6 - drivers/gpu/drm/nouveau/nouveau_display.c | 126 +- drivers/gpu/drm/nouveau/nouveau_display.h | 4 +- drivers/gpu/drm/nouveau/nouveau_drm.c | 5 +- drivers/gpu/drm/nouveau/nouveau_fbcon.c | 1 - drivers/gpu/drm/nouveau/nouveau_platform.c | 12 + drivers/gpu/drm/nouveau/nouveau_usif.c | 1 - drivers/gpu/drm/nouveau/nouveau_vga.c | 14 +- drivers/gpu/drm/nouveau/nv50_display.c | 127 +- drivers/gpu/drm/nouveau/nvkm/core/mm.c | 10 +- drivers/gpu/drm/nouveau/nvkm/core/subdev.c | 1 + drivers/gpu/drm/nouveau/nvkm/engine/Kbuild | 1 + drivers/gpu/drm/nouveau/nvkm/engine/device/base.c | 50 +- drivers/gpu/drm/nouveau/nvkm/engine/device/priv.h | 1 + drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.c | 31 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/Kbuild | 1 + drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv40.c | 2 + drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.h | 1 + drivers/gpu/drm/nouveau/nvkm/engine/fifo/gp100.c | 2 +- drivers/gpu/drm/nouveau/nvkm/engine/fifo/gp10b.c | 41 + drivers/gpu/drm/nouveau/nvkm/engine/gr/Kbuild | 5 + drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf100.h | 7 + drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp100.c | 4 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp102.c | 98 + drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp107.c | 47 + drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c | 45 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.h | 9 + drivers/gpu/drm/nouveau/nvkm/engine/gr/gp100.c | 19 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gp102.c | 67 + drivers/gpu/drm/nouveau/nvkm/engine/gr/gp107.c | 53 + drivers/gpu/drm/nouveau/nvkm/engine/gr/gp10b.c | 59 + drivers/gpu/drm/nouveau/nvkm/engine/nvdec/Kbuild | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/nvdec/base.c | 59 + drivers/gpu/drm/nouveau/nvkm/engine/nvdec/gp102.c | 30 + drivers/gpu/drm/nouveau/nvkm/engine/nvdec/priv.h | 6 + drivers/gpu/drm/nouveau/nvkm/engine/sec2/Kbuild | 2 + drivers/gpu/drm/nouveau/nvkm/engine/sec2/base.c | 108 + drivers/gpu/drm/nouveau/nvkm/engine/sec2/gp102.c | 30 + drivers/gpu/drm/nouveau/nvkm/engine/sec2/priv.h | 9 + drivers/gpu/drm/nouveau/nvkm/falcon/Kbuild | 3 + drivers/gpu/drm/nouveau/nvkm/falcon/base.c | 40 +- drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue.c | 575 + drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue.h | 213 + .../drm/nouveau/nvkm/falcon/msgqueue_0137c63d.c | 436 + .../drm/nouveau/nvkm/falcon/msgqueue_0148cdec.c | 264 + drivers/gpu/drm/nouveau/nvkm/falcon/v1.c | 124 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/boost.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/cstep.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c | 2 +- .../drm/nouveau/nvkm/subdev/bios/power_budget.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/vpstate.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/Kbuild | 4 + drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf108.c | 42 + drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm200.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/gp10b.c | 38 + drivers/gpu/drm/nouveau/nvkm/subdev/fb/ram.h | 33 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf100.c | 148 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf108.c | 62 + drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgk104.c | 70 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgm107.c | 25 +- drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgm200.c | 68 + drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgp100.c | 68 +- drivers/gpu/drm/nouveau/nvkm/subdev/gpio/base.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/anx9805.c | 14 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.c | 4 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.h | 4 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxg94.c | 11 +- drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxgm200.c | 11 +- drivers/gpu/drm/nouveau/nvkm/subdev/ibus/Kbuild | 1 + drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gf100.c | 6 +- drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gk104.c | 6 +- drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gp10b.c | 59 + .../gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.c | 19 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/Kbuild | 1 + drivers/gpu/drm/nouveau/nvkm/subdev/mc/gp100.c | 17 +- drivers/gpu/drm/nouveau/nvkm/subdev/mc/gp10b.c | 49 + drivers/gpu/drm/nouveau/nvkm/subdev/mc/priv.h | 6 + drivers/gpu/drm/nouveau/nvkm/subdev/pmu/base.c | 15 +- drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gm20b.c | 25 +- drivers/gpu/drm/nouveau/nvkm/subdev/secboot/Kbuild | 7 + drivers/gpu/drm/nouveau/nvkm/subdev/secboot/acr.h | 14 +- .../gpu/drm/nouveau/nvkm/subdev/secboot/acr_r352.c | 565 +- .../gpu/drm/nouveau/nvkm/subdev/secboot/acr_r352.h | 147 +- .../gpu/drm/nouveau/nvkm/subdev/secboot/acr_r361.c | 149 +- .../gpu/drm/nouveau/nvkm/subdev/secboot/acr_r361.h | 72 + .../gpu/drm/nouveau/nvkm/subdev/secboot/acr_r364.c | 117 + .../gpu/drm/nouveau/nvkm/subdev/secboot/acr_r367.c | 389 + .../gpu/drm/nouveau/nvkm/subdev/secboot/acr_r367.h | 36 + .../gpu/drm/nouveau/nvkm/subdev/secboot/acr_r375.c | 165 + drivers/gpu/drm/nouveau/nvkm/subdev/secboot/base.c | 17 +- .../gpu/drm/nouveau/nvkm/subdev/secboot/gm200.c | 23 +- .../gpu/drm/nouveau/nvkm/subdev/secboot/gm200.h | 6 +- .../gpu/drm/nouveau/nvkm/subdev/secboot/gm20b.c | 27 +- .../gpu/drm/nouveau/nvkm/subdev/secboot/gp102.c | 252 + .../gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c | 93 + .../gpu/drm/nouveau/nvkm/subdev/secboot/hs_ucode.c | 97 + .../gpu/drm/nouveau/nvkm/subdev/secboot/hs_ucode.h | 81 + .../gpu/drm/nouveau/nvkm/subdev/secboot/ls_ucode.h | 12 +- .../drm/nouveau/nvkm/subdev/secboot/ls_ucode_gr.c | 10 +- .../nvkm/subdev/secboot/ls_ucode_msgqueue.c | 205 + drivers/gpu/drm/nouveau/nvkm/subdev/secboot/priv.h | 5 +- drivers/gpu/drm/nouveau/nvkm/subdev/top/gk104.c | 2 +- drivers/gpu/drm/omapdrm/Kconfig | 9 - drivers/gpu/drm/omapdrm/displays/panel-dpi.c | 37 +- drivers/gpu/drm/omapdrm/dss/Kconfig | 4 + drivers/gpu/drm/omapdrm/dss/Makefile | 8 +- drivers/gpu/drm/omapdrm/dss/base.c | 140 + drivers/gpu/drm/omapdrm/dss/dispc.c | 278 +- drivers/gpu/drm/omapdrm/dss/dispc.h | 62 +- drivers/gpu/drm/omapdrm/dss/display.c | 36 +- drivers/gpu/drm/omapdrm/dss/dpi.c | 60 +- drivers/gpu/drm/omapdrm/dss/dsi.c | 22 +- drivers/gpu/drm/omapdrm/dss/dss-of.c | 105 +- drivers/gpu/drm/omapdrm/dss/dss.c | 77 +- drivers/gpu/drm/omapdrm/dss/dss.h | 37 +- drivers/gpu/drm/omapdrm/dss/dss_features.c | 9 +- drivers/gpu/drm/omapdrm/dss/dss_features.h | 8 +- drivers/gpu/drm/omapdrm/dss/hdmi4.c | 3 +- drivers/gpu/drm/omapdrm/dss/hdmi5.c | 3 +- drivers/gpu/drm/omapdrm/dss/hdmi_wp.c | 12 +- drivers/gpu/drm/omapdrm/dss/omapdss.h | 111 +- drivers/gpu/drm/omapdrm/dss/output.c | 27 +- drivers/gpu/drm/omapdrm/dss/pll.c | 17 +- drivers/gpu/drm/omapdrm/dss/sdi.c | 2 +- drivers/gpu/drm/omapdrm/dss/venc.c | 3 +- drivers/gpu/drm/omapdrm/omap_connector.c | 18 +- drivers/gpu/drm/omapdrm/omap_crtc.c | 121 +- drivers/gpu/drm/omapdrm/omap_drv.c | 260 +- drivers/gpu/drm/omapdrm/omap_drv.h | 10 +- drivers/gpu/drm/omapdrm/omap_fbdev.c | 4 - drivers/gpu/drm/omapdrm/omap_gem.c | 5 +- drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c | 8 +- drivers/gpu/drm/omapdrm/omap_irq.c | 61 +- drivers/gpu/drm/omapdrm/omap_plane.c | 47 +- drivers/gpu/drm/panel/Kconfig | 23 + drivers/gpu/drm/panel/Makefile | 3 + drivers/gpu/drm/panel/panel-lvds.c | 286 + drivers/gpu/drm/panel/panel-samsung-s6e3ha2.c | 739 + drivers/gpu/drm/panel/panel-simple.c | 56 + drivers/gpu/drm/panel/panel-sitronix-st7789v.c | 449 + drivers/gpu/drm/qxl/qxl_debugfs.c | 22 - drivers/gpu/drm/qxl/qxl_display.c | 822 +- drivers/gpu/drm/qxl/qxl_drv.c | 32 +- drivers/gpu/drm/qxl/qxl_drv.h | 12 +- drivers/gpu/drm/qxl/qxl_fb.c | 39 +- drivers/gpu/drm/qxl/qxl_kms.c | 28 +- drivers/gpu/drm/qxl/qxl_object.c | 41 +- drivers/gpu/drm/qxl/qxl_ttm.c | 1 + drivers/gpu/drm/r128/r128_cce.c | 7 +- drivers/gpu/drm/radeon/atom.c | 46 +- drivers/gpu/drm/radeon/cik.c | 63 +- drivers/gpu/drm/radeon/cikd.h | 2 +- drivers/gpu/drm/radeon/evergreen.c | 2 +- drivers/gpu/drm/radeon/evergreen_cs.c | 7 +- drivers/gpu/drm/radeon/ni.c | 22 +- drivers/gpu/drm/radeon/r100.c | 20 +- drivers/gpu/drm/radeon/r200.c | 3 +- drivers/gpu/drm/radeon/r300.c | 13 +- drivers/gpu/drm/radeon/r420.c | 9 +- drivers/gpu/drm/radeon/r520.c | 3 +- drivers/gpu/drm/radeon/r600.c | 21 +- drivers/gpu/drm/radeon/r600_cs.c | 7 +- drivers/gpu/drm/radeon/r600_dpm.c | 71 +- drivers/gpu/drm/radeon/radeon.h | 4 +- drivers/gpu/drm/radeon/radeon_acpi.h | 12 + drivers/gpu/drm/radeon/radeon_atpx_handler.c | 4 +- drivers/gpu/drm/radeon/radeon_audio.c | 4 +- drivers/gpu/drm/radeon/radeon_clocks.c | 2 +- drivers/gpu/drm/radeon/radeon_cs.c | 10 + drivers/gpu/drm/radeon/radeon_device.c | 20 +- drivers/gpu/drm/radeon/radeon_display.c | 17 +- drivers/gpu/drm/radeon/radeon_dp_auxch.c | 3 +- drivers/gpu/drm/radeon/radeon_dp_mst.c | 4 +- drivers/gpu/drm/radeon/radeon_drv.c | 6 +- drivers/gpu/drm/radeon/radeon_fb.c | 14 +- drivers/gpu/drm/radeon/radeon_gem.c | 8 +- drivers/gpu/drm/radeon/radeon_kms.c | 45 +- drivers/gpu/drm/radeon/radeon_object.c | 5 + drivers/gpu/drm/radeon/radeon_prime.c | 6 + drivers/gpu/drm/radeon/radeon_test.c | 6 +- drivers/gpu/drm/radeon/radeon_ttm.c | 1 + drivers/gpu/drm/radeon/rs400.c | 4 +- drivers/gpu/drm/radeon/rs690.c | 3 +- drivers/gpu/drm/radeon/rv515.c | 9 +- drivers/gpu/drm/radeon/si.c | 45 +- drivers/gpu/drm/rcar-du/Kconfig | 10 +- drivers/gpu/drm/rcar-du/Makefile | 6 +- drivers/gpu/drm/rcar-du/rcar_du_crtc.c | 123 +- drivers/gpu/drm/rcar-du/rcar_du_crtc.h | 5 +- drivers/gpu/drm/rcar-du/rcar_du_drv.c | 64 +- drivers/gpu/drm/rcar-du/rcar_du_drv.h | 8 +- drivers/gpu/drm/rcar-du/rcar_du_encoder.c | 187 +- drivers/gpu/drm/rcar-du/rcar_du_encoder.h | 14 +- drivers/gpu/drm/rcar-du/rcar_du_hdmienc.c | 134 - drivers/gpu/drm/rcar-du/rcar_du_hdmienc.h | 35 - drivers/gpu/drm/rcar-du/rcar_du_kms.c | 143 +- drivers/gpu/drm/rcar-du/rcar_du_lvdscon.c | 68 +- drivers/gpu/drm/rcar-du/rcar_du_lvdsenc.c | 11 +- drivers/gpu/drm/rcar-du/rcar_du_lvdsenc.h | 13 + drivers/gpu/drm/rcar-du/rcar_du_regs.h | 23 + drivers/gpu/drm/rcar-du/rcar_du_vgacon.c | 82 - drivers/gpu/drm/rcar-du/rcar_du_vgacon.h | 23 - drivers/gpu/drm/rcar-du/rcar_du_vsp.h | 2 +- drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c | 100 + drivers/gpu/drm/rockchip/Kconfig | 10 +- drivers/gpu/drm/rockchip/Makefile | 16 +- drivers/gpu/drm/rockchip/analogix_dp-rockchip.c | 38 +- drivers/gpu/drm/rockchip/cdn-dp-core.c | 23 +- drivers/gpu/drm/rockchip/cdn-dp-reg.c | 6 +- drivers/gpu/drm/rockchip/cdn-dp-reg.h | 13 +- drivers/gpu/drm/rockchip/dw-mipi-dsi.c | 513 +- drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | 11 +- drivers/gpu/drm/rockchip/inno_hdmi.c | 10 +- drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 243 +- drivers/gpu/drm/rockchip/rockchip_drm_drv.h | 20 +- drivers/gpu/drm/rockchip/rockchip_drm_fb.c | 2 +- drivers/gpu/drm/rockchip/rockchip_drm_fbdev.c | 9 +- drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 101 +- drivers/gpu/drm/rockchip/rockchip_vop_reg.c | 8 +- drivers/gpu/drm/selftests/test-drm_mm.c | 12 +- drivers/gpu/drm/shmobile/shmob_drm_crtc.c | 61 +- drivers/gpu/drm/shmobile/shmob_drm_crtc.h | 1 - drivers/gpu/drm/shmobile/shmob_drm_drv.c | 236 +- drivers/gpu/drm/shmobile/shmob_drm_plane.c | 8 +- drivers/gpu/drm/sti/sti_drv.c | 17 +- drivers/gpu/drm/sti/sti_gdp.c | 12 +- drivers/gpu/drm/sun4i/Makefile | 4 +- drivers/gpu/drm/sun4i/sun4i_backend.c | 2 +- drivers/gpu/drm/sun4i/sun4i_crtc.c | 86 +- drivers/gpu/drm/sun4i/sun4i_crtc.h | 8 +- drivers/gpu/drm/sun4i/sun4i_drv.c | 85 +- drivers/gpu/drm/sun4i/sun4i_drv.h | 4 - drivers/gpu/drm/sun4i/sun4i_framebuffer.c | 1 - drivers/gpu/drm/sun4i/sun4i_layer.c | 32 +- drivers/gpu/drm/sun4i/sun4i_layer.h | 4 +- drivers/gpu/drm/sun4i/sun4i_rgb.c | 41 +- drivers/gpu/drm/sun4i/sun4i_rgb.h | 2 +- drivers/gpu/drm/sun4i/sun4i_tcon.c | 126 +- drivers/gpu/drm/sun4i/sun4i_tcon.h | 3 + drivers/gpu/drm/sun4i/sun4i_tv.c | 27 +- drivers/gpu/drm/tegra/dc.c | 23 +- drivers/gpu/drm/tegra/drm.c | 38 - drivers/gpu/drm/tegra/drm.h | 3 - drivers/gpu/drm/tegra/fb.c | 5 +- drivers/gpu/drm/tegra/gem.c | 8 +- drivers/gpu/drm/tilcdc/tilcdc_crtc.c | 35 +- drivers/gpu/drm/tilcdc/tilcdc_drv.c | 26 +- drivers/gpu/drm/tilcdc/tilcdc_external.c | 68 +- drivers/gpu/drm/tinydrm/core/tinydrm-core.c | 19 +- drivers/gpu/drm/tinydrm/core/tinydrm-helpers.c | 2 +- drivers/gpu/drm/tinydrm/mi0283qt.c | 3 + drivers/gpu/drm/tinydrm/mipi-dbi.c | 4 +- drivers/gpu/drm/ttm/ttm_bo.c | 116 +- drivers/gpu/drm/ttm/ttm_bo_vm.c | 10 +- drivers/gpu/drm/udl/udl_dmabuf.c | 8 +- drivers/gpu/drm/udl/udl_fb.c | 5 +- drivers/gpu/drm/udl/udl_modeset.c | 3 +- drivers/gpu/drm/vc4/Kconfig | 4 + drivers/gpu/drm/vc4/vc4_bo.c | 26 +- drivers/gpu/drm/vc4/vc4_crtc.c | 23 +- drivers/gpu/drm/vc4/vc4_dpi.c | 31 +- drivers/gpu/drm/vc4/vc4_drv.c | 41 +- drivers/gpu/drm/vc4/vc4_drv.h | 2 - drivers/gpu/drm/vc4/vc4_dsi.c | 21 +- drivers/gpu/drm/vc4/vc4_gem.c | 26 +- drivers/gpu/drm/vc4/vc4_hdmi.c | 517 +- drivers/gpu/drm/vc4/vc4_hvs.c | 12 +- drivers/gpu/drm/vc4/vc4_irq.c | 3 +- drivers/gpu/drm/vc4/vc4_plane.c | 29 +- drivers/gpu/drm/vc4/vc4_regs.h | 107 +- drivers/gpu/drm/vc4/vc4_render_cl.c | 4 + drivers/gpu/drm/vc4/vc4_validate.c | 34 +- drivers/gpu/drm/vc4/vc4_validate_shaders.c | 21 +- drivers/gpu/drm/vc4/vc4_vec.c | 6 + drivers/gpu/drm/vgem/vgem_drv.c | 4 +- drivers/gpu/drm/via/via_dmablit.c | 10 +- drivers/gpu/drm/virtio/virtgpu_debugfs.c | 8 - drivers/gpu/drm/virtio/virtgpu_display.c | 2 +- drivers/gpu/drm/virtio/virtgpu_drv.c | 1 - drivers/gpu/drm/virtio/virtgpu_drv.h | 6 +- drivers/gpu/drm/virtio/virtgpu_fb.c | 63 +- drivers/gpu/drm/virtio/virtgpu_gem.c | 6 +- drivers/gpu/drm/virtio/virtgpu_object.c | 4 +- drivers/gpu/drm/virtio/virtgpu_plane.c | 73 + drivers/gpu/drm/virtio/virtgpu_ttm.c | 1 + drivers/gpu/drm/virtio/virtgpu_vq.c | 57 +- drivers/gpu/drm/vmwgfx/Makefile | 3 +- drivers/gpu/drm/vmwgfx/vmwgfx_buffer.c | 1 + drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 15 +- drivers/gpu/drm/vmwgfx/vmwgfx_drv.h | 2 +- drivers/gpu/drm/vmwgfx/vmwgfx_fb.c | 85 +- drivers/gpu/drm/vmwgfx/vmwgfx_gmrid_manager.c | 3 +- drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 1115 +- drivers/gpu/drm/vmwgfx/vmwgfx_kms.h | 147 +- drivers/gpu/drm/vmwgfx/vmwgfx_ldu.c | 373 +- drivers/gpu/drm/vmwgfx/vmwgfx_prime.c | 8 +- drivers/gpu/drm/vmwgfx/vmwgfx_resource.c | 258 +- drivers/gpu/drm/vmwgfx/vmwgfx_resource_priv.h | 40 + drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c | 513 +- drivers/gpu/drm/vmwgfx/vmwgfx_simple_resource.c | 256 + drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c | 940 +- drivers/gpu/drm/vmwgfx/vmwgfx_surface.c | 15 +- drivers/gpu/drm/vmwgfx/vmwgfx_va.c | 168 + drivers/gpu/drm/zte/zx_drm_drv.c | 17 +- drivers/gpu/drm/zte/zx_hdmi.c | 1 - drivers/gpu/drm/zte/zx_vou.c | 61 +- drivers/gpu/drm/zte/zx_vou.h | 3 - drivers/gpu/ipu-v3/Makefile | 4 + drivers/gpu/ipu-v3/ipu-common.c | 46 +- drivers/gpu/ipu-v3/ipu-cpmem.c | 78 +- drivers/gpu/ipu-v3/ipu-dc.c | 61 +- drivers/gpu/ipu-v3/ipu-dp.c | 15 +- drivers/gpu/ipu-v3/ipu-image-convert.c | 7 +- drivers/gpu/ipu-v3/ipu-pre.c | 289 + drivers/gpu/ipu-v3/ipu-prg.c | 424 + drivers/gpu/ipu-v3/ipu-prv.h | 27 +- drivers/gpu/vga/vga_switcheroo.c | 28 +- drivers/i2c/busses/i2c-designware-baytrail.c | 83 +- drivers/i2c/busses/i2c-designware-core.c | 14 +- drivers/i2c/busses/i2c-designware-core.h | 13 +- drivers/i2c/busses/i2c-designware-pcidrv.c | 26 +- drivers/i2c/busses/i2c-designware-platdrv.c | 8 +- drivers/media/v4l2-core/videobuf2-dma-contig.c | 4 +- drivers/media/v4l2-core/videobuf2-dma-sg.c | 4 +- drivers/media/v4l2-core/videobuf2-vmalloc.c | 4 +- drivers/of/platform.c | 71 + drivers/pci/pci.h | 2 + drivers/pci/probe.c | 21 + drivers/platform/x86/apple-gmux.c | 31 +- drivers/staging/android/ion/ion.c | 8 +- include/drm/bridge/analogix_dp.h | 3 + include/drm/bridge/dw_hdmi.h | 101 +- include/drm/drmP.h | 330 +- include/drm/drm_atomic.h | 350 +- include/drm/drm_atomic_helper.h | 47 +- include/drm/drm_auth.h | 17 + include/drm/drm_connector.h | 154 +- include/drm/drm_crtc.h | 101 +- include/drm/drm_crtc_helper.h | 42 +- include/drm/drm_debugfs.h | 101 + include/drm/drm_dp_helper.h | 66 + include/drm/drm_dp_mst_helper.h | 15 +- include/drm/drm_drv.h | 102 +- include/drm/drm_edid.h | 8 +- include/drm/drm_fb_helper.h | 16 +- include/drm/drm_file.h | 375 + include/drm/drm_fourcc.h | 6 + include/drm/drm_framebuffer.h | 49 +- include/drm/drm_gem.h | 110 +- include/drm/drm_gem_cma_helper.h | 26 + include/drm/drm_global.h | 8 +- include/drm/drm_hashtab.h | 20 +- include/drm/drm_ioctl.h | 188 + include/drm/drm_irq.h | 1 - include/drm/drm_mm.h | 5 +- include/drm/drm_mode_config.h | 167 +- include/drm/drm_mode_object.h | 36 +- include/drm/drm_modeset_helper_vtables.h | 70 + include/drm/drm_modeset_lock.h | 5 - include/drm/drm_of.h | 37 +- include/drm/drm_panel.h | 2 +- include/drm/drm_pci.h | 75 + include/drm/drm_plane.h | 43 +- include/drm/drm_plane_helper.h | 6 +- include/drm/drm_prime.h | 80 + include/drm/drm_print.h | 3 + include/drm/drm_property.h | 35 +- include/drm/drm_scdc_helper.h | 161 + include/drm/drm_simple_kms_helper.h | 2 +- include/drm/drm_sysfs.h | 12 +- include/drm/drm_vma_manager.h | 1 - include/drm/i915_pciids.h | 11 +- include/drm/tinydrm/tinydrm.h | 4 +- include/drm/ttm/ttm_bo_api.h | 71 +- include/drm/ttm/ttm_bo_driver.h | 11 +- include/drm/ttm/ttm_placement.h | 1 + include/linux/dma-buf.h | 22 +- include/linux/dma-fence-array.h | 2 + include/linux/hdmi.h | 1 + include/linux/of_platform.h | 11 + include/linux/pci.h | 23 + include/linux/reservation.h | 20 + include/uapi/drm/amdgpu_drm.h | 69 +- include/uapi/drm/drm.h | 3 +- include/uapi/drm/drm_fourcc.h | 14 + include/uapi/drm/drm_mode.h | 4 + include/uapi/drm/etnaviv_drm.h | 8 + include/uapi/drm/i915_drm.h | 65 +- include/uapi/drm/msm_drm.h | 1 + include/uapi/drm/vmwgfx_drm.h | 24 + include/uapi/linux/media-bus-format.h | 13 +- include/video/imx-ipu-v3.h | 39 +- kernel/locking/lockdep.c | 2 + scripts/coccinelle/api/drm-get-put.cocci | 92 + tools/testing/selftests/drivers/gpu/i915.sh | 1 + 1070 files changed, 457052 insertions(+), 27145 deletions(-) create mode 100644 Documentation/devicetree/bindings/display/amlogic,meson-dw-hdmi.txt create mode 100644 Documentation/devicetree/bindings/display/bridge/lvds-transmitter.txt create mode 100644 Documentation/devicetree/bindings/display/bridge/megachips-stdpxxxx-ge-b850v3-fw.txt create mode 100644 Documentation/devicetree/bindings/display/bridge/renesas,dw-hdmi.txt create mode 100644 Documentation/devicetree/bindings/display/panel/ampire,am-480272h3tmqw-t01h.txt create mode 100644 Documentation/devicetree/bindings/display/panel/mitsubishi,aa104xd12.txt create mode 100644 Documentation/devicetree/bindings/display/panel/mitsubishi,aa121td01.txt create mode 100644 Documentation/devicetree/bindings/display/panel/panel-common.txt create mode 100644 Documentation/devicetree/bindings/display/panel/panel-lvds.txt create mode 100644 Documentation/devicetree/bindings/display/panel/samsung,s6e3ha2.txt create mode 100644 Documentation/devicetree/bindings/display/panel/sitronix,st7789v.txt create mode 100644 Documentation/devicetree/bindings/display/panel/winstar,wf35ltiacd.txt create mode 100644 Documentation/doc-guide/hello.dot create mode 100644 Documentation/doc-guide/svg_image.svg create mode 100644 Documentation/gpu/bridge/dw-hdmi.rst create mode 100644 Documentation/gpu/meson.rst create mode 100644 Documentation/gpu/todo.rst create mode 100644 Documentation/gpu/vc4.rst create mode 100644 Documentation/sphinx/kfigure.py create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.c create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.h create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h create mode 100644 drivers/gpu/drm/amd/amdgpu/clearstate_gfx9.h create mode 100644 drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c create mode 100644 drivers/gpu/drm/amd/amdgpu/gfx_v9_0.h create mode 100644 drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.c create mode 100644 drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.h create mode 100644 drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c create mode 100644 drivers/gpu/drm/amd/amdgpu/gmc_v9_0.h create mode 100644 drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.c create mode 100644 drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.h create mode 100644 drivers/gpu/drm/amd/amdgpu/mmsch_v1_0.h create mode 100644 drivers/gpu/drm/amd/amdgpu/mxgpu_ai.c create mode 100644 drivers/gpu/drm/amd/amdgpu/mxgpu_ai.h create mode 100644 drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c create mode 100644 drivers/gpu/drm/amd/amdgpu/nbio_v6_1.h create mode 100644 drivers/gpu/drm/amd/amdgpu/psp_gfx_if.h create mode 100644 drivers/gpu/drm/amd/amdgpu/psp_v3_1.c create mode 100644 drivers/gpu/drm/amd/amdgpu/psp_v3_1.h create mode 100644 drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c create mode 100644 drivers/gpu/drm/amd/amdgpu/sdma_v4_0.h create mode 100644 drivers/gpu/drm/amd/amdgpu/soc15.c create mode 100644 drivers/gpu/drm/amd/amdgpu/soc15.h create mode 100644 drivers/gpu/drm/amd/amdgpu/soc15_common.h create mode 100644 drivers/gpu/drm/amd/amdgpu/soc15d.h create mode 100644 drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c create mode 100644 drivers/gpu/drm/amd/amdgpu/uvd_v7_0.h create mode 100644 drivers/gpu/drm/amd/amdgpu/vce_v4_0.c create mode 100644 drivers/gpu/drm/amd/amdgpu/vce_v4_0.h create mode 100644 drivers/gpu/drm/amd/amdgpu/vega10_ih.c create mode 100644 drivers/gpu/drm/amd/amdgpu/vega10_ih.h create mode 100644 drivers/gpu/drm/amd/amdgpu/vega10_sdma_pkt_open.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/ATHUB/athub_1_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/ATHUB/athub_1_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/ATHUB/athub_1_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/DC/dce_12_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/DC/dce_12_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/DC/dce_12_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/GC/gc_9_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/GC/gc_9_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/GC/gc_9_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/HDP/hdp_4_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/HDP/hdp_4_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/HDP/hdp_4_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/MMHUB/mmhub_1_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/MMHUB/mmhub_1_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/MMHUB/mmhub_1_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/MP/mp_9_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/MP/mp_9_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/MP/mp_9_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/NBIF/nbif_6_1_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/NBIF/nbif_6_1_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/NBIF/nbif_6_1_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/NBIO/nbio_6_1_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/NBIO/nbio_6_1_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/NBIO/nbio_6_1_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/OSSSYS/osssys_4_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/OSSSYS/osssys_4_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/OSSSYS/osssys_4_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/SDMA0/sdma0_4_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/SDMA0/sdma0_4_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/SDMA0/sdma0_4_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/SDMA1/sdma1_4_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/SDMA1/sdma1_4_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/SDMA1/sdma1_4_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/SMUIO/smuio_9_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/SMUIO/smuio_9_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/SMUIO/smuio_9_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/THM/thm_9_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/THM/thm_9_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/THM/thm_9_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/UVD/uvd_7_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/UVD/uvd_7_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/UVD/uvd_7_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/VCE/vce_4_0_default.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/VCE/vce_4_0_offset.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/VCE/vce_4_0_sh_mask.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/soc15ip.h create mode 100644 drivers/gpu/drm/amd/include/asic_reg/vega10/vega10_enum.h create mode 100644 drivers/gpu/drm/amd/include/atomfirmware.h create mode 100644 drivers/gpu/drm/amd/include/atomfirmwareid.h create mode 100644 drivers/gpu/drm/amd/include/displayobject.h create mode 100644 drivers/gpu/drm/amd/include/dm_pp_interface.h create mode 100644 drivers/gpu/drm/amd/include/v9_structs.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/ppatomfwctrl.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/ppatomfwctrl.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/vega10_inc.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/vega10_powertune.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/vega10_powertune.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/vega10_pptable.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/vega10_processpptables.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/vega10_processpptables.h create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/vega10_thermal.c create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/vega10_thermal.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/pp_soc15.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu9.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/smu9_driver_if.h create mode 100644 drivers/gpu/drm/amd/powerplay/inc/vega10_ppsmc.h create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/vega10_smumgr.c create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/vega10_smumgr.h delete mode 100644 drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_layer.c delete mode 100644 drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_layer.h create mode 100644 drivers/gpu/drm/bridge/lvds-encoder.c create mode 100644 drivers/gpu/drm/bridge/megachips-stdpxxxx-ge-b850v3-fw.c create mode 100644 drivers/gpu/drm/bridge/synopsys/Kconfig create mode 100644 drivers/gpu/drm/bridge/synopsys/Makefile rename drivers/gpu/drm/bridge/{ => synopsys}/dw-hdmi-ahb-audio.c (100%) rename drivers/gpu/drm/bridge/{ => synopsys}/dw-hdmi-audio.h (100%) rename drivers/gpu/drm/bridge/{ => synopsys}/dw-hdmi-i2s-audio.c (100%) rename drivers/gpu/drm/bridge/{ => synopsys}/dw-hdmi.c (74%) rename drivers/gpu/drm/bridge/{ => synopsys}/dw-hdmi.h (99%) rename drivers/gpu/drm/{drm_fops.c => drm_file.c} (90%) delete mode 100644 drivers/gpu/drm/drm_platform.c create mode 100644 drivers/gpu/drm/drm_scdc_helper.c create mode 100644 drivers/gpu/drm/i915/i915_gem_clflush.c create mode 100644 drivers/gpu/drm/i915/i915_gem_clflush.h create mode 100644 drivers/gpu/drm/i915/i915_selftest.h create mode 100644 drivers/gpu/drm/i915/intel_cdclk.c rename drivers/gpu/drm/i915/{intel_dsi_panel_vbt.c => intel_dsi_vbt.c} (89%) create mode 100644 drivers/gpu/drm/i915/selftests/huge_gem_object.c create mode 100644 drivers/gpu/drm/i915/selftests/huge_gem_object.h create mode 100644 drivers/gpu/drm/i915/selftests/i915_gem_coherency.c create mode 100644 drivers/gpu/drm/i915/selftests/i915_gem_context.c create mode 100644 drivers/gpu/drm/i915/selftests/i915_gem_dmabuf.c create mode 100644 drivers/gpu/drm/i915/selftests/i915_gem_evict.c create mode 100644 drivers/gpu/drm/i915/selftests/i915_gem_gtt.c create mode 100644 drivers/gpu/drm/i915/selftests/i915_gem_object.c create mode 100644 drivers/gpu/drm/i915/selftests/i915_gem_request.c create mode 100644 drivers/gpu/drm/i915/selftests/i915_live_selftests.h create mode 100644 drivers/gpu/drm/i915/selftests/i915_mock_selftests.h create mode 100644 drivers/gpu/drm/i915/selftests/i915_random.c create mode 100644 drivers/gpu/drm/i915/selftests/i915_random.h create mode 100644 drivers/gpu/drm/i915/selftests/i915_selftest.c create mode 100644 drivers/gpu/drm/i915/selftests/i915_vma.c create mode 100644 drivers/gpu/drm/i915/selftests/intel_breadcrumbs.c create mode 100644 drivers/gpu/drm/i915/selftests/intel_hangcheck.c create mode 100644 drivers/gpu/drm/i915/selftests/intel_uncore.c create mode 100644 drivers/gpu/drm/i915/selftests/mock_context.c create mode 100644 drivers/gpu/drm/i915/selftests/mock_context.h create mode 100644 drivers/gpu/drm/i915/selftests/mock_dmabuf.c create mode 100644 drivers/gpu/drm/i915/selftests/mock_dmabuf.h create mode 100644 drivers/gpu/drm/i915/selftests/mock_drm.c create mode 100644 drivers/gpu/drm/i915/selftests/mock_drm.h create mode 100644 drivers/gpu/drm/i915/selftests/mock_engine.c create mode 100644 drivers/gpu/drm/i915/selftests/mock_engine.h create mode 100644 drivers/gpu/drm/i915/selftests/mock_gem_device.c create mode 100644 drivers/gpu/drm/i915/selftests/mock_gem_device.h create mode 100644 drivers/gpu/drm/i915/selftests/mock_gem_object.h create mode 100644 drivers/gpu/drm/i915/selftests/mock_gtt.c create mode 100644 drivers/gpu/drm/i915/selftests/mock_gtt.h create mode 100644 drivers/gpu/drm/i915/selftests/mock_request.c create mode 100644 drivers/gpu/drm/i915/selftests/mock_request.h create mode 100644 drivers/gpu/drm/i915/selftests/scatterlist.c create mode 100644 drivers/gpu/drm/meson/meson_dw_hdmi.c create mode 100644 drivers/gpu/drm/meson/meson_dw_hdmi.h create mode 100644 drivers/gpu/drm/msm/mdp/mdp5/mdp5_mixer.c create mode 100644 drivers/gpu/drm/msm/mdp/mdp5/mdp5_mixer.h create mode 100644 drivers/gpu/drm/nouveau/include/nvkm/core/msgqueue.h create mode 100644 drivers/gpu/drm/nouveau/include/nvkm/engine/sec2.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gp10b.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp102.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp107.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/gp102.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/gp107.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/gr/gp10b.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/nvdec/base.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/nvdec/gp102.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/nvdec/priv.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/sec2/Kbuild create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/sec2/base.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/sec2/gp102.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/engine/sec2/priv.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue_0137c63d.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/falcon/msgqueue_0148cdec.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf108.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gp10b.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf108.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgm200.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/ibus/gp10b.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mc/gp10b.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/secboot/acr_r361.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/secboot/acr_r364.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/secboot/acr_r367.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/secboot/acr_r367.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/secboot/acr_r375.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp102.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/secboot/gp10b.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/secboot/hs_ucode.c create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/secboot/hs_ucode.h create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/secboot/ls_ucode_msgqueue.c create mode 100644 drivers/gpu/drm/omapdrm/dss/base.c create mode 100644 drivers/gpu/drm/panel/panel-lvds.c create mode 100644 drivers/gpu/drm/panel/panel-samsung-s6e3ha2.c create mode 100644 drivers/gpu/drm/panel/panel-sitronix-st7789v.c delete mode 100644 drivers/gpu/drm/rcar-du/rcar_du_hdmienc.c delete mode 100644 drivers/gpu/drm/rcar-du/rcar_du_hdmienc.h delete mode 100644 drivers/gpu/drm/rcar-du/rcar_du_vgacon.c delete mode 100644 drivers/gpu/drm/rcar-du/rcar_du_vgacon.h create mode 100644 drivers/gpu/drm/rcar-du/rcar_dw_hdmi.c create mode 100644 drivers/gpu/drm/vmwgfx/vmwgfx_simple_resource.c create mode 100644 drivers/gpu/drm/vmwgfx/vmwgfx_va.c create mode 100644 drivers/gpu/ipu-v3/ipu-pre.c create mode 100644 drivers/gpu/ipu-v3/ipu-prg.c create mode 100644 include/drm/drm_debugfs.h create mode 100644 include/drm/drm_file.h create mode 100644 include/drm/drm_ioctl.h create mode 100644 include/drm/drm_pci.h create mode 100644 include/drm/drm_prime.h create mode 100644 include/drm/drm_scdc_helper.h create mode 100644 scripts/coccinelle/api/drm-get-put.cocci _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel