All of lore.kernel.org
 help / color / mirror / Atom feed
* [git pull] drm for v4.15
@ 2017-11-16  2:34 ` Dave Airlie
  0 siblings, 0 replies; 27+ messages in thread
From: Dave Airlie @ 2017-11-16  2:34 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: dri-devel, LKML

Hi Linus,

This is the main drm pull request for v4.15.

I've got the AMD display code request for their new gpus in a separate
pull that I'll follow up with soon.

There is some code touched on sound/soc, but I think the sound tree
should have the same commits from the same base,so this may luck different
if you pulled it as I generated my pull request a couple of days ago. Otherwise
the highlights are below.

Dave.

Core:
Atomic object lifetime fixes
Atomic iterator improvements
Sparse/smatch fixes
Legacy kms ioctls to be interruptible
EDID override improvements
fb/gem helper cleanups
Simple outreachy patches
Documentation improvements
Fix dma-buf rcu races
DRM mode object leasing for improving VR use cases.
vgaarb improvements for non-x86 platforms.

New driver:
tve200:
Faraday Technology TVE200 block. This "TV Encoder" encodes a
ITU-T BT.656 stream and can be found in the StorLink SL3516
(later Cortina Systems CS3516) as well as the Grain Media GM8180.

New bridges:
SiI9234 support

New panels:
S6E63J0X03, OTM8009A, Seiko 43WVF1G, 7" rpi touch panel,
Toshiba LT089AC19000, Innolux AT043TN24

i915:
Remove Coffeelake from alpha support
Cannonlake workarounds
Infoframe refactoring for DisplayPort
VBT updates
DisplayPort vswing/emph/buffer translation refactoring
CCS fixes
Restore GPU clock boost on missed vblanks
Scatter list updates for userptr allocations
Gen9+ transition watermarks
Display IPC (Isochronous Priority Control)
Private PAT management
GVT: improved error handling and pci config sanitizing
Execlist refactoring
Transparent Huge Page support
User defined priorities support
HuC/GuC firmware refactoring
DP MST fixes
eDP power sequencing fixes
Use RCU instead of stop_machine
PSR state tracking support
Eviction fixes
BDW DP aux channel timeout fixes
LSPCON fixes
Cannonlake PLL fixes

amdgpu:
Per VM BO support
Powerplay cleanups
CI powerplay support
PASID mgr for kfd
SR-IOV fixes
initial GPU reset for vega10
Prime mmap support
TTM updates
Clock query interface for Raven
Fence to handle ioctl
UVD encode ring support on Polaris
Transparent huge page DMA support
Compute LRU pipe tweaks
BO flag to allow buffers to opt out of implicit sync
CTX priority setting API
VRAM lost infrastructure plumbing

qxl:
fix flicker since atomic rework

amdkfd:
Further improvements from internal AMD tree
Usermode events
Drop radeon support

nouveau:
Pascal temperature sensor support
Improved BAR2 handling
MMU rework to support Pascal MMU

exynos:
Improved HDMI/mixer support
HDMI audio interface support

tegra:
Prep work for tegra186
Cleanup/fixes

msm:
Preemption support for a5xx
Display fixes for 8x96 (snapdragon 820)
Async cursor plane fixes
FW loading rework
GPU debugging improvements

vc4:
Prep for DSI panels
fix T-format tiling scanout
New madvise ioctl

Rockchip:
LVDS support

omapdrm:
omap4 HDMI CEC support

etnaviv:
GPU performance counters groundwork

sun4i:
refactor driver load + TCON backend
HDMI improvements
A31 support
Misc fixes

udl:
Probe/EDID read fixes.

tilcdc:
Misc fixes.

pl111:
Support more variants

adv7511:
Improve EDID handling.
HDMI CEC support

sii8620:
Add remote control support

The following changes since commit 0b07194bb55ed836c2cc7c22e866b87a14681984:

  Linux 4.14-rc7 (2017-10-29 13:58:38 -0700)

are available in the git repository at:

  git://people.freedesktop.org/~airlied/linux tags/drm-for-v4.15

for you to fetch changes up to f150891fd9878ef0d9197c4e8451ce67c3bdd014:

  Merge tag 'exynos-drm-next-for-v4.15' of
git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos into
drm-next (2017-11-14 14:12:43 +1000)

----------------------------------------------------------------
main drm pull request for v4.15

----------------------------------------------------------------
Aishwarya Pant (4):
      drm: introduce drm_dev_{get/put} functions
      drm/tilcdc: replace reference/unreference() with get/put
      drm/core: clean up references to drm_dev_unref()
      drm/msm/mdp5: remove less than 0 comparison for unsigned value

Akshu Agrawal (2):
      drm/amdgpu Moving amdgpu asic types to a separate file
      drm/amd/amdgpu: Enabling ACP clock in hw_init (v2)

Alex Deucher (19):
      drm/amdgpu/gfx8: fix spelling typo in mqd allocation
      drm/amdgpu: add automatic per asic settings for gart_size
      drm/amdgpu: refine default gart size
      drm/amdgpu: move default gart size setting into gmc modules
      drm/amdgpu: set sched_hw_submission higher for KIQ (v3)
      drm/amdgpu/powerplay/vega10: fix typo in register base index
      drm/amdgpu/gfx8: apply dynamic cu mask to APUs as well
      drm/amdgpu/gfx8: drop cz mqd
      drm/amdgpu/gfx9: update mqd to include dynamic CU mask
      drm/amdgpu/gfx9: adjust mqd allocation size
      drm/amd/powerplay: fix sclk setting for profile mode for CZ/ST
      drm/amdgpu/gfx9: properly set the hdp flush reg for Raven
      drm/amdgpu/psp: declare raven psp firmware
      drm/amdgpu: clarify license in amdgpu_trace_points.c
      drm/amdgpu: fix vf error handling
      drm/radeon: move ci_send_msg_to_smc to where it's used
      drm/radeon/dp: make radeon_dp_get_dp_link_config static
      drm/amdgpu: bump version for new AMDGPU_SCHED ioctl
      drm/amdgpu: bump version for vram lost counter query (v2)

Allen Pais (2):
      drivers:gpu:Use ARRAY_SIZE() for the size calculation of the array.
      driver:gpu: return -ENOMEM on allocation failure.

Andres Rodriguez (18):
      drm/amdgpu: use multipipe compute policy on non PL11 asics
      drm/amdgpu: add option for force enable multipipe policy for compute
      drm/amdgpu: map compute rings by least recently used pipe
      drm/amdgpu: add helper to convert a ttm bo to amdgpu_bo
      drm/amdgpu: introduce AMDGPU_GEM_CREATE_EXPLICIT_SYNC v2
      drm/amdgpu: add parameter to allocate high priority contexts v11
      drm/amdgpu: add framework for HW specific priority settings v9
      drm/amdgpu: implement ring set_priority for gfx_v8 compute v9
      drm/amdgpu: make amdgpu_to_sched_priority detect invalid parameters
      drm/amd/sched: allow clients to edit an entity's rq v2
      drm/amdgpu: introduce AMDGPU_CTX_PRIORITY_UNSET
      drm/amdgpu: add plumbing for ctx priority changes v2
      drm/amdgpu: add interface for editing a foreign process's priority v3
      drm/amdgpu: rename context priority levels
      drm/amdkfd: use standard kernel kfifo for IH
      drm/amdkfd: increase IH num entries to 8192
      drm/amdkfd: wait only for IH work on IH exit
      drm/amdkfd: use a high priority workqueue for IH work

Andrey Grodzovsky (3):
      drm/amdgpu: Refactor amdgpu_cs_ib_vm_chunk and amdgpu_cs_ib_fill.
      drm/amdgpu: Move old fence waiting before reservation lock is aquired v2
      drm/amdgpu: Fix extra call to amdgpu_ctx_put.

Andrzej Hajda (10):
      drm/exynos/mixer: abstract out output mode setup code
      drm/exynos/mixer: move mode commit to enable callback
      drm/exynos/mixer: move resolution configuration to single function
      drm/exynos/mixer: fix mode validation code
      drm/exynos/mixer: remove mixer_resources sub-structure
      drm/exynos/hdmi: remove redundant mode field
      drm/exynos: add mode_fixup callback to exynos_drm_crtc_ops
      drm/exynos/mixer: pass actual mode on MIXER to encoder
      drm/exynos/hdmi: quirk for support mode timings conversion
      drm/exynos/mixer: enable support for 1024x768 and 1280x1024 modes

Anuj Phogat (1):
      drm/i915/kbl: Change a KBL pci id to GT2 from GT1.5

Archit Taneja (5):
      drm/msm/hdmi: Remove mmagic_iface_clk from the 8x96 PHY clocks
      drm/msm/mdp5: Prepare mdp5_pipe_assign for some rework
      drm/msm/mdp5: Update mdp5_pipe_assign to spit out both planes
      drm/msm/mdp5: mdp5_crtc: Restore cursor state only if LM cursors
are enabled
      drm/msm/mdp5: Don't use async plane update path if plane
visibility changes

Arnd Bergmann (11):
      drm: gma500: fix logic error
      drm/stm: fix warning about multiplication in condition
      drm/radeon: properly initialize r600_audio_status() data
      drm/i915/selftests: fix check for intel IOMMU
      drm/i915: avoid potential uninitialized variable use
      drm: vblank: use ktime_t instead of timeval
      drm: vblank: remove drm_timestamp_monotonic parameter
      drm/rockchip: add PINCTRL dependency for LVDS
      drm/msm: use %z format modifier for printing size_t
      drm/amdgpu/virt: don't dereference undefined 'module' struct
      drm/rockchip: add CONFIG_OF dependency for lvds

Arvind Yadav (5):
      drm: i2c: ch7006: constify i2c_device_id
      drm: i2c: sil164: constify i2c_device_id
      drm: i2c: tda998x: constify i2c_device_id
      drm/tilcdc: tilcdc_panel: make of_device_ids const.
      drm/tilcdc: tilcdc_tfp410: make of_device_ids const.

Bas Nieuwenhuizen (1):
      drm/amdgpu: Account for shadow PTs in mapping update IB size.

Ben Goz (1):
      drm/amdkfd: Register/Deregister process on qpd resolution

Ben Skeggs (149):
      remove some useless semicolons
      drm/nouveau/kms/nv50: prevent oops in failure paths
      drm/nouveau: fix handling of GART OOM on pre-NV50 chipsets
      drm/nouveau/core/object: separate oclass data out into its own header
      drm/nouveau/core/object: allow arguments to be passed to map function
      drm/nouveau/core/object: plumb the unmap ioctl through
      drm/nouveau/core/gpuobj: remove embedded struct nvkm_object
      drm/nouveau/core/subdev: compile out messages for unwanted debug levels
      drm/nouveau/core/device: remove object include to prevent
unnecessary rebuilds
      drm/nouveau/secboot: add missing newline in debug message
      drm/nouveau/disp: add missing newline in ior debug messages
      drm/nouveau/fifo: perform reset from preinit
      drm/nouveau/bar/nv50,g84: drop mmu invalidate
      drm/nouveau/bar: remove NV_PMC_ENABLE_PFIFO twiddling
      drm/nouveau/bar: swap oneinit/init ordering, and rename bar3 to bar2
      drm/nouveau/bar: move bar1 initialisation into its own function
      drm/nouveau/bar: implement bar1 teardown
      drm/nouveau/bar: expose interface to bar2 initialisation
      drm/nouveau/bar: expose interface to bar2 teardown
      drm/nouveau/bar: modify interface to bar1 vmm mapping
      drm/nouveau/bar: modify interface to bar2 vmm mapping
      drm/nouveau/bar: prevent BAR2 mapping of objects during destructor
      drm/nouveau/bar: initialise bar2 during oneinit
      drm/nouveau/bar/gm107-: wait for instance block binding to complete
      drm/nouveau/imem: add some useful debug output
      drm/nouveau/core/memory: split info pointers from accessor pointers
      drm/nouveau/imem: allow nvkm_instobj to be directly embedded in
backend object
      drm/nouveau/imem/nv04: directly embed nvkm_instobj into nv04_instobj
      drm/nouveau/imem/nv40: embed nvkm_instobj directly into nv04_instobj
      drm/nouveau/imem/nv40: map bar2 write-combined
      drm/nouveau/imem/nv50: split object map out from api functions
      drm/nouveau/imem/nv50: move slow-path locking into rd/wr functions
      drm/nouveau/imem/nv50: embed nvkm_instobj directly into nv04_instobj
      drm/nouveau/imem/nv50: map bar2 write-combined
      drm/nouveau/imem/nv50: prevent fast-path for mapped objects when
BAR isn't ready
      drm/nouveau/imem/nv50: support eviction of BAR2 mappings
      drm/nouveau/imem: remove now-unused wrapper for backend objects
      drm/nouveau/imem: separate suspend/resume backup handling into
their own functions
      drm/nouveau/imem: switch to kvmalloc/kvfree for suspend/resume backup
      drm/nouveau/imem: separate pre-BAR2-bootstrap objects from the rest
      drm/nouveau/imem: use fast-path for suspend backup
      drm/nouveau/imem: use fast-path for resume restore
      drm/nouveau/mmu/nv04-nv4x: move global vmm to nvkm_mmu
      drm/nouveau/fb: finalise big page size selection in constructor
      drm/nouveau/gr/gf100-gk208: make use of init_gpc_mmu() hook to share setup
      drm/nouveau/gr/gf100-gk208: copy big page size setting from fb
      drm/nouveau: store nouveau_drm in nouveau_cli, as opposed to drm_device
      drm/nouveau: remove unused sysmem fence code
      drm/nouveau: split various bo flags out into their own members
      drm/nouveau: simplify const-va map condition
      drm/nouveau: swap loop order in move_notify() hook
      drm/nouveau: remove unnecessary use of ttm_mem_type_manager::priv
      drm/nouveau: consolidate identical functions in nouveau_ttm.c
      drm/nouveau: hang drm client of a master
      drm/nouveau: separate buffer object backing memory from nvkm structures
      drm/nouveau: separate constant-va tracking from nvkm vma structure
      drm/nouveau/core/mm: have users explicitly define heap identifiers
      drm/nouveau/core/mm: introduce functions to access info about a
given allocation
      drm/nouveau/fb: move comptags mm into nvkm_fb
      drm/nouveau/fb: move comptag init out of ram submodule
      drm/nouveau/fb/gf100: clear comptags at allocation time rather
than mmu map
      drm/nouveau/ltc: init comptag mm in fb subdev
      drm/nouveau/core/memory: comptag allocation
      drm/nouveau/core/memory: change map interface to support
upcoming mmu changes
      drm/nouveau/core/memory: add mechanism to retrieve allocation granularity
      drm/nouveau/core/memory: add reference counting
      drm/nouveau/core/memory: add some useful accessor macros
      drm/nouveau/fb/ram: add interface to allocate vram as an
nvkm_memory object
      drm/nouveau/fb/ram/gt215: allocate training buffer with nvkm_ram_get()
      drm/nouveau/imem/nv50: allocate memory with nvkm_ram_get()
      drm/nouveau/ltc/gf100-: allocate tagram with nvkm_ram_get()
      drm/nouveau: wrap nvkm_mem objects in nvkm_memory interfaces
      drm/nouveau: directly handle comptag allocation
      drm/nouveau: allocate vram with nvkm_ram_get()
      drm/nouveau/fb/ram: remove old allocators
      drm/nouveau/mmu/g84: fork from nv50
      drm/nouveau/mmu/gk104: fork from gf100
      drm/nouveau/mmu/gk20a: fork from gf100
      drm/nouveau/mmu/gm200: fork from gf100
      drm/nouveau/mmu/gm20b: fork from gf100
      drm/nouveau/mmu/gp100: fork from gf100
      drm/nouveau/mmu/gp10b: fork from gf100
      drm/nouveau/mmu: automatically handle "un-bootstrapping" of vmm
      drm/nouveau/mmu: implement page table cache
      drm/nouveau/mmu: implement page table sub-allocation
      drm/nouveau/mmu: implement base for new vm management
      drm/nouveau/mmu/nv04: implement vmm on top of new base
      drm/nouveau/mmu/nv41: implement vmm on top of new base
      drm/nouveau/mmu/nv44: implement vmm on top of new base
      drm/nouveau/mmu/nv50,g84: implement vmm on top of new base
      drm/nouveau/mmu/gf100: implement vmm on top of new base
      drm/nouveau/mmu/gk104,gk20a: implement vmm on top of new base
      drm/nouveau/mmu/gm200,gm20b: implement vmm on top of new base
      drm/nouveau/mmu/gp100,gp10b: implement vmm on top of new base
      drm/nouveau/mmu: remove old vm creation hooks
      drm/nouveau/mmu: handle instance block setup
      drm/nouveau/fifo/nv04-nv40: fix missing nvkm_kmap() calls around
ramfc access
      drm/nouveau/ltc/gm200: limit NV_MMU_PTE_COMPTAGLINE bits to 16
where required
      drm/nouveau/fb/gm200: enable
NV_PFB_MMU_CTRL_USE_FULL_COMP_TAG_LINE where appropriate
      drm/nouveau/mmu: implement new vmm backend
      drm/nouveau/mmu/nv04: implement new vmm backend
      drm/nouveau/mmu/nv41: implement new vmm backend
      drm/nouveau/mmu/nv44: implement new vmm backend
      drm/nouveau/mmu/nv50,g84: implement new vmm backend
      drm/nouveau/mmu/gf100: implement new vmm backend
      drm/nouveau/mmu/gk104,gk20a: implement new vmm backend
      drm/nouveau/mmu/gm200,gm20b: implement new vmm backend
      drm/nouveau/mmu/gp100,gp10b: implement new vmm backend
      drm/nouveau/mmu: remove support for old backends
      drm/nouveau/mmu: implement new vmm frontend
      drm/nouveau/bar/nv50: initialise vmm with new interfaces
      drm/nouveau/bar/gf100: initialise vmm with new interfaces
      drm/nouveau/secboot/gm200: initialise vmm with new interfaces
      drm/nouveau/fifo: initialise vmm with new interfaces
      drm/nouveau/fb/ram: use new interfaces for vmm operations
      drm/nouveau/imem/nv50-: use new interfaces for vmm operations
      drm/nouveau/secboot/gm200: use new interfaces for vmm operations
      drm/nouveau/fifo/gf100-: use new interfaces for vmm operations
      drm/nouveau/gr/gf100-: use new interfaces for vmm operations
      drm/nouveau/gr/gf100-: replace hardcoded instance/vmm setup in
grctx generation
      drm/nouveau: remove explicit unmaps
      drm/nouveau/mmu: build up information on available memory types
      drm/nouveau/mmu: add base for type-based memory allocation
      drm/nouveau/mmu/nv04-nv4x: type-based vram allocation and bar mapping
      drm/nouveau/mmu/nv50,g84: type-based vram allocation and bar mapping
      drm/nouveau/mmu/gf100-: type-based vram allocation and bar mapping
      drm/nouveau/mmu: define user interfaces to mmu
      drm/nouveau/mmu: define user interfaces to mmu memory allocation
      drm/nouveau/mmu: define user interfaces to mmu vmm opertaions
      drm/nouveau: remove trivial cases of nvxx_device() usage
      drm/nouveau: allocate mmu object for every client
      drm/nouveau: check kind validity against mmu object
      drm/nouveau: consolidate handling of dma mask
      drm/nouveau: fetch memory type indices that we care about for ttm
      drm/nouveau: use nvif_mmu_type to determine BAR1 caching
      drm/nouveau: replace use of cpu_coherent with memory types
      drm/nouveau: allocate vmm object for every client
      drm/nouveau: switch to vmm limit
      drm/nouveau: pass handle of vmm object to channel allocation ioctls
      drm/nouveau: determine memory class for each client
      drm/nouveau: implement per-client delayed workqueue with fence support
      drm/nouveau: queue delayed unmapping of VMAs on client workqueue
      drm/nouveau: remove unused nouveau_fence_work()
      drm/nouveau: switch over to new memory and vmm interfaces
      drm/nouveau: improve selection of GPU page size
      drm/nouveau/mmu: remove old vmm frontend
      drm/nouveau/gr/gf100-: don't prevent module load if firmware missing
      drm/nouveau/mmu: swap out round for ALIGN
      drm/nouveau/core/memory: fix missing mutex unlock

Ben Widawsky (1):
      drm/i915/cnl: Add support slice/subslice/eu configs

Besar Wicaksono (1):
      drm/amdkfd: Add SDMA trap src id to the KFD isr wanted list

Bjorn Helgaas (2):
      vgaarb: Select a default VGA device even if there's no legacy VGA
      vgaarb: Factor out EFI and fallback default device selection

Boris Brezillon (3):
      drm/gem-cma-helper: Change the level of the allocation failure message
      drm/vc4: Add the DRM_IOCTL_VC4_GEM_MADVISE ioctl
      drm/vc4: Fix wrong printk format in vc4_bo_stats_debugfs()

Changbin Du (5):
      drm/i915: Add interface to reserve fence registers for vGPU
      drm/i915/kvmgt: Sanitize PCI bar emulation
      drm/i915/gvt: Add emulation for BAR2 (aperture) with normal file
RW approach
      drm/i915/gvt: Fix incorrect PCI BARs reporting
      drm/i915/gvt: Add support for PCIe extended configuration space

Chen-Yu Tsai (26):
      drm/sun4i: tcon: Unconditionally reset the TCON
      drm/sun4i: add components in breadth first traversal order
      drm/sun4i: tcon: Check for multiple paths between TCONs and backends
      drm/sun4i: tcon: get TCON ID and matching engine with remote endpoint ID
      drm/sun4i: tcon: Simplify sun4i_tcon_find_engine_traverse for one input
      drm/sun4i: tcon: Support backend input mux
      drm/sun4i: call drm_vblank_init with correct number of crtcs
      drm/sun4i: tcon: Add variant callback for TCON output muxing
      drm/sun4i: tcon: Add support for demuxing TCON output on A31
      drm/sun4i: hdmi: Disable clks in bind function error path and
unbind function
      drm/sun4i: hdmi: create a regmap for later use
      drm/sun4i: hdmi: Allow using second PLL as TMDS clk parent
      dt-bindings: display: sun4i: Add binding for A31 HDMI controller
      drm/sun4i: hdmi: Add support for controller hardware variants
      drm/sun4i: hdmi: Add A31 specific DDC register definitions
      drm/sun4i: hdmi: Add support for A31's HDMI controller
      drm/sun4i: don't add components that are already in the queue
      drm/sun4i: backend: Create regmap after access is possible
      drm/sun4i: backend: Use drm_fb_cma_get_gem_addr() to get display memory
      drm/sun4i: backend: Add comment explaining why registers are cleared
      drm/sun4i: hdmi: Document PAD_CTRL1 output invert bits
      drm/sun4i: hdmi: Move PAD_CTRL1 setting to mode_set function
      drm/sun4i: backend: Offset layer buffer address by DRAM starting address
      drm/sun4i: backend: Support output muxing
      drm/sun4i: hdmi: Support HDMI controller on A10
      drm/sun4i: Add support for A10 display pipeline components

Chris Wilson (117):
      drm/i915: Clear lost context-switch interrupts across reset
      drm: Release driver tracking before making the object available again
      drm/i915: Boost GPU clocks if we miss the pageflip's vblank
      drm/i915: Keep a small stash of preallocated WC pages
      drm/i915: Assert the context is not closed on object-close
      drm/i915: Assert that the handle->vma lut is empty on object close
      drm/i915: Ignore duplicate VMA stored within the per-object handle LUT
      drm/i915: Quietly cancel FBC activation if CRTC is turned off
before worker
      drm/i915: Remove excess indent in intel_finish_reset() caught by sparse
      drm/i915: Recreate vmapping even when the object is pinned
      drm/i915: Don't use GPU relocations prior to cmdparser stalls
      drm/i915: Always sanity check engine state upon idling
      drm/i915: Clear wedged status upon resume
      drm/i915: Discard the request queue if we fail to sleep before suspend
      drm/i915: Always wake the device to flush the GTT
      drm/i915: Silence sparse by using gfp_t
      drm/i915/perf: Remove __user from u64 in drm_i915_perf_oa_config
      drm/i915: Re-enable GTT following a device reset
      drm/i915: Disable MI_STORE_DATA_IMM for i915g/i915gm
      drm/i915: Move device_info.has_snoop into the static tables
      drm/i915: Lift has-pinned-pages assert to caller of
____i915_gem_object_get_pages
      drm/i915: Disable snooping (userptr, set-cache-level) on gen4
      drm/i915: Disable mmio debugging during user access
      drm/i915: Apply the GTT write flush for all !llc machines
      drm/i915: Only initialize partially filled pagetables
      drm/i915: Cleanup error paths through eb_lookup_vma()
      drm/i915: Move the context descriptor to an inline helper
      drm/i915: Squelch smatch warning for statement with no effect
      drm/i915: Use mul_u32_u32() for 32b x 32b -> 64b result
      drm/i915/selftests: Use mul_u32_u32() for 32b x 32b -> 64b result
      drm/i915: Allow HW status page to be bound high
      drm/i915/execlists: Read the context-status buffer from the HWSP
      drm/i915/execlists: Read the context-status HEAD from the HWSP
      drm/i915: Remove unused 'in_vbl' from i915_get_crtc_scanoutpos()
      drm/i915: Mark the userptr invalidate workqueue as WQ_MEM_RECLAIM
      drm/i915: Cancel all ready but queued requests when wedging
      drm/i915/execlists: Kick start request processing after a reset
      drm/i915/execlists: Move insert_request()
      drm/i915/execlists: Split insert_request()
      drm/i915/execlists: Unwind incomplete requests on resets
      drm/i915/selftests: Disable iommu for the mock device
      drm/i915/selftests: Only touch archdata.iommu when it exists
      drm/i915/fence: Avoid del_timer_sync() from inside a timer
      drm/i915: Document the split in internal and public execbuf flags
      drm/i915: Only wake the waiter from the interrupt if passed
      drm/i915: Check waiter->seqno carefully in case of preemption
      drm/i915: Confirm request->global_seqno after spin completion
      drm/i915: Make i915_spin_request() static
      drm/i915/lrc: Only enable per-context and per-bb buffers if set
      drm/i915/lrc: Skip no-op per-bb buffer on gen9
      drm/i915/execlists: Microoptimise execlists_cancel_port_request()
      drm/i915/selftests: Try to recover from a wedged GPU during reset tests
      drm/i915/execlists: Notify context-out for lost requests
      drm/i915: Use memset64() to prefill the GTT page
      drm/i915/selftests: Replace wmb() with i915_gem_chipset_flush()
      drm/i915/execlists: Move request unwinding to a separate function
      drm/i915: Give the invalid priority a magic name
      drm/i915: Move MMCD_MISC_CTRL from context w/a to standard
      drm/i915: Remove WA_(SET|CLR)_BIT
      drm/i915: Fix some tracepoints to capture full 64b
      drm/i915: Remove defunct trace points
      drm/i915/execlists: Distinguish the incomplete context notifies
      drm/i915: Introduce a preempt context
      drm/i915/execlists: Move bdw GPGPU w/a to emit_bb
      drm/i915/execlists: Keep request->priority for its lifetime
      drm/i915: Expand I915_PARAM_HAS_SCHEDULER into a capability bitmask
      drm/i915/execlists: Preemption!
      drm/i915/scheduler: Support user-defined priorities
      drm/i915/selftests: Remember to create the fake preempt context
      drm/i915: Try harder to finish the idle-worker
      drm/i915: Silence compiler warning for hsw_power_well_enable()
      drm/i915: Order two completing nop_submit_request
      drm/i915/execlists: Add a comment for the extra MI_ARB_ENABLE
      drm/i915: Assert we do not try to expand VMA for hugepage inside GGTT
      drm/i915: Make i915_engine_info pretty printer to standalone
      drm/i915/selftests: Pretty print engine state when requests fail to start
      drm/i915: Hold forcewake for the duration of reset+restart
      drm/i915/selftests: Hold the rpm wakeref for the reset tests
      drm/i915: Provide an assert for when we expect forcewake to be held
      drm/i915: Pin fence for iomap
      drm/i915: Consolidate get_fence with pin_fence
      drm/i915: Track user GTT faulting per-vma
      drm/i915: Check PIN_NONFAULT overlaps in evict_for_node
      drm/i915: Try a minimal attempt to insert the whole object for relocations
      drm/i915: Avoid evicting user fault mappable vma for pread/pwrite
      drm/i915: Early rejection of mappable GGTT pin attempts for large bo
      drm/i915: Silently fallback to 4k scratch
      drm/i915/userptr: Drop struct_mutex before cleanup
      drm/i915: Fix eviction when the GGTT is idle but full
      drm/i915/selftests: Wrap a timer into a i915_sw_fence
      drm/i915/selftests: Exercise adding requests to a full GGTT
      drm/i915: Stop asserting on set-wedged vs nop_submit_request ordering
      drm/i915: Keep the rings stopped until they have been re-initialized
      drm/i915: Always stop the rings before a missing GPU reset
      drm/i915: Use bdw_ddi_translations_fdi for Broadwell
      drm/i915: Refactor testing obj->mm.pages
      drm/i915: Rename obj->pin_display to obj->pin_global
      drm/i915: Drop debugfs/i915_gem_pin_display
      drm/i915: Remove walk over obj->vma_list for the shrinker
      drm/i915: Move dev_priv->mm.[un]bound_list to its own lock
      drm/i915: Wire up shrinkctl->nr_scanned
      drm/i915: Set our shrinker->batch to 4096 (~16MiB)
      drm/i915: Only free the oldest stale object before a fresh allocation
      drm/i915: Trim struct_mutex hold duration for i915_gem_free_objects
      drm/i915: Skip HW reinitialisation on resume if still wedged
      drm/i915: Add in-flight request details to intel_engine_dump()
      drm/i915: Report -EFAULT before pwrite fast path into shmemfs
      drm/i915/selftests: Silence the compiler for impossible errors
      drm/i915: Flush the idle-worker for debugfs/i915_drop_caches
      drm/i915: Skip waking the device to service pwrite
      drm: Require __GFP_NOFAIL for the legacy drm_modeset_lock_all
      drm/i915: Filter out spurious execlists context-switch interrupts
      drm/i915/execlists: Remove the priority "optimisation"
      drm/i915: Lock llist_del_first() vs llist_del_all()
      drm/i915: Idle the GPU before shinking everything
      drm/i915: Prune the reservation shared fence array
      drm/i915: Reorder context-close to avoid calling
i915_vma_close() under RCU

Christian Gmeiner (23):
      drm/etnaviv: use bitmap to keep track of events
      drm/etnaviv: make it possible to allocate multiple events
      drm/etnaviv: add infrastructure to query perf counter
      drm/etnaviv: add uapi for perfmon feature
      drm/etnaviv: add internal representation of perfmon_request
      drm/etnaviv: extend etnaviv_gpu_cmdbuf_new(..) with nr_pmrs
      drm/etnaviv: add performance monitor request validation
      drm/etnaviv: copy pmrs from userspace
      drm/etnaviv: add performance monitor request processing
      drm/etnaviv: add 'sync point' support
      drm/etnaviv: clear alloced event
      drm/etnaviv: use 'sync points' for performance monitor requests
      drm/etnaviv: add HI perf domain
      drm/etnaviv: add PE perf domain
      drm/etnaviv: add SH perf domain
      drm/etnaviv: add PA perf domain
      drm/etnaviv: add SE perf domain
      drm/etnaviv: add RA perf domain
      drm/etnaviv: add TX perf domain
      drm/etnaviv: add MC perf domain
      drm/etnaviv: need to disable clock gating when doing profiling
      drm/etnaviv: enable debug registers on demand
      drm/etnaviv: submit supports performance monitor requests

Christian König (74):
      drm/amdgpu: fix and cleanup shadow handling
      drm/amdgpu: discard commands of killed processes
      drm/amdgpu: remove the GART copy hack
      drm/amdgpu: fix amdgpu_ttm_bind
      drm/amdgpu: inline amdgpu_ttm_do_bind again
      drm/amdgpu: fix amdgpu_vm_bo_map trace point
      drm/amdgpu: fix and cleanup VM ready check
      drm/amdgpu: cleanup GWS, GDS and OA allocation
      drm/amdgpu: rework moved handling in the VM v2
      drm/amdgpu: add bo_va cleared flag again v2
      drm/amdgpu: fix comment on amdgpu_bo_va
      drm/amdgpu: track evicted page tables v2
      drm/amdgpu: rework page directory filling v2
      drm/amdgpu: cleanup the VM code a bit more
      drm/amdgpu: move hw generation check into amdgpu_doorbell_init v2
      drm/amdgpu: fix new PD update code for Vega10 v2
      drm/amdgpu: restrict userptr even more
      drm/amdgpu: add support for per VM BOs v2
      drm/amdgpu: add IOCTL interface for per VM BOs v3
      drm/amdgpu: bump version for support of local BOs
      drm/amdgpu: fix moved list handling in the VM
      drm/amdgpu: fix placement flags in amdgpu_ttm_bind
      drm/amdgpu: fix userptr put_page handling
      drm/amdgpu: revert "fix deadlock of reservation between cs and
gpu reset v2"
      drm/ttm: fix ttm_bo_cleanup_refs_or_queue once more
      drm/amdgpu: move taking mmap_sem into get_user_pages v2
      drm/amdgpu: stop using BO status for user pages
      drm/amdgpu: move userptr BOs to CPU domain during CS v2
      drm/amdgpu: use a rw_semaphore for MMU notifiers
      drm/amdgpu: stop reserving the BO in the MMU callback v3
      drm/ttm: allow mapping BOs while they are still on the swap list
      drm/amdgpu: move amdgpu_cs_sysvm_access_required into find_mapping
      drm/amdgpu: rework amdgpu_cs_find_mapping
      drm/amdgpu: keep the MMU lock until the update ends v4
      drm/amdgpu: move amdgpu_ttm_tt_* declarations into amdgpu_ttm.h
      drm/amdgpu: move MMU notifier related defines to amdgpu_mn.h
      drm/amdgpu: fix VM sync with always valid BOs v2
      drm/amdgpu: fix amdgpu_vm_handle_moved as well v2
      drm/amdgpu: fix cgs alignment handling
      drm/amd: remove min/max addr handling from cgs
      drm/amdgpu: fix and cleanup amdgpu_bo_create v2
      drm/ttm: fix memory leak while individualizing BOs
      drm/ttm: cleanup ttm_page_alloc_dma.c
      drm/amdgpu: use 2MB fragment size for GFX6,7 and 8
      drm/amdgpu: simplify pinning into visible VRAM
      drm/ttm: remove unsued options from ttm_mem_global_alloc_page
      drm/ttm: add support for different pool sizes
      drm/ttm: add transparent huge page support for DMA allocations v2
      drm/amdgpu: minor coding style fix
      dma-buf: make reservation_object_copy_fences rcu save
      dma-fence: fix dma_fence_get_rcu_safe v2
      drm/ttm: allocate/free multiple pages in a single call
      drm/ttm: DMA map/unmap consecutive pages as a whole v2
      drm/amdgpu: add VM support for huge pages v2
      drm/ttm: don't use compound pages for now
      drm/ttm: add transparent huge page support for cached allocations v2
      drm/ttm: move more logic into ttm_page_pool_get_pages
      drm/ttm: add transparent huge page support for wc or uc allocations v2
      drm/amdgpu: partial revert VRAM lost handling v2
      drm/amdgpu: keep copy of VRAM lost counter in job
      drm/amdgpu: move the VRAM lost counter per context
      drm/amdgpu: set -ECANCELED when dropping jobs
      drm/amdgpu: add VRAM lost query
      drm/amd/sched: fix job tear down order v2
      drm/amdgpu: minor CS optimization
      drm/ttm: fix the fix for huge compound pages
      drm/amdgpu: reserve root PD while releasing it
      drm/amdgpu: linear validate first then bind to GART
      drm/amdgpu: allow GTT overcommit during bind
      drm/amdgpu: minor cleanup for amdgpu_ttm_bind
      drm/amdgpu: don't flush the TLB before initializing GART
      drm/radeon: deprecate and remove KFD interface
      drm/ttm: once more fix ttm_buffer_object_transfer
      drm/amdgpu: fix error handling in amdgpu_bo_do_create

Christophe JAILLET (2):
      drm/amdgpu: check memory allocation failure
      drm/i915: Fix an error handling in 'intel_framebuffer_init()'

Cihangir Akturk (1):
      drm/tilcdc: switch to drm_*{get,put} helpers

Colin Ian King (9):
      drm/amdgpu: remove duplicate return statement
      drm/vc4: clean up error handling on devm_kzalloc failure
      drm/i915: remove redundant variable hw_check
      dma-buf: remove redundant initialization of sg_table
      drm/amd/powerplay: fix spelling mistake: "dividable" -> "divisible"
      drm/tve200: make two functions static
      drm/radeon: make functions alloc_pasid and free_pasid static
      drm/amdgpu: make function uvd_v6_0_enc_get_destroy_msg static
      drm/nouveau/bios: make const arrays hwsq_signature and edid_sig static

Dan Carpenter (7):
      drm/tve200: Check for IS_ERR instead of NULL in probe
      drm: of: always initialize panel in drm_of_find_panel_or_bridge()
      drm/kirin: Checking for IS_ERR() instead of NULL
      drm/bridge: adv7511: Fix a use after free
      drm/amd/powerplay: fix amd_powerplay_reset()
      drm/amdgpu: potential uninitialized variable in amdgpu_vce_ring_parse_cs()
      drm/amdgpu: Potential uninitialized variable in
amdgpu_vm_update_directories()

Daniel Drake (1):
      drm/exynos/hdmi: add 85.5MHz pixel clock for v14 HDMI PHY

Daniel Vetter (11):
      drm/doc: Document ioctl errno value patterns
      drm/doc: Update todo.rst
      drm: Try to document legacy DPMS uapi a bit better
      Merge airlied/drm-next into drm-misc-next
      MAINTAINERS: Add dri-devel as a mailing list for anything fbdev
      drm/i915: Preallocate our mmu notifier workequeu to unbreak cpu
hotplug deadlock
      drm/i915: Increase atomic update vblank evasion time with lockdep
      Merge tag 'regmap-poll-field' of
git://git.kernel.org/.../broonie/regmap into drm-misc-next
      drm/i915: Use rcu instead of stop_machine in set_wedged
      drm: some KMS todo ideas
      drm/atomic-helper: check that drivers call drm_crtc_vblank_off

Daniele Ceraolo Spurio (1):
      drm/i915/lrc: allocate separate page for HWSP

Dave Airlie (57):
      Merge tag 'drm-misc-next-2017-09-20' of
git://anongit.freedesktop.org/git/drm-misc into drm-next
      Merge tag 'drm-intel-next-2017-09-07' of
git://anongit.freedesktop.org/git/drm-intel into drm-next
      Merge branch 'drm-next-4.15' of
git://people.freedesktop.org/~agd5f/linux into drm-next
      amdgpu: don't ask about CHASH just default it for now.
      amdgpu/powerplay: constify large struct
      drm/amdgpu/pp: constify some powerplay tables
      drm/amdgpu/vega10: static constify channel_number
      amdgpu/pp: remove ci_smc/smumgr split.
      amdgpu/pp: move PhwVega10_Magic to static const.
      amdgpu/pp: move amdgpu_fuses_default into static const.
      amdgpu/pp: slim down the pwr virus tables.
      drm/amdgpu: use designated initialiser for thermal_irq_src.
      amdgpu/pp: reduce size of vega10_fuses_default
      amdgfx/gfx: don't use static objects for ce/de meta. (v2)
      amdgpu/pp: use array_size to size the pwrvirus tables.
      amdgpu/pp: constify soft_dummy_pp_table.
      amdgpu/soc15: make the pcie index/data registers constant.
      amdgpu/nbio: use constant nbio_hdp_flush_reg structs.
      amdgpu/pp: rewrite polaris pwrvirus upload code.
      amdgpu/pp: rewrite fiji pwr virus upload code.
      drm/amdgpu: use designated initialiser for thermal_irq_src.
      BackMerge tag 'v4.14-rc3' into drm-next
      Merge tag 'drm-misc-next-2017-10-05' of
git://anongit.freedesktop.org/git/drm-misc into drm-next
      Merge branch 'drm-next-4.15' of
git://people.freedesktop.org/~agd5f/linux into drm-next
      Merge tag 'drm-intel-next-2017-09-29' of
git://anongit.freedesktop.org/drm/drm-intel into drm-next
      Merge tag 'drm-misc-next-2017-10-12' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next
      Merge tag 'omapdrm-4.15' of git://git.kernel.org/.../tomba/linux
into drm-next
      Merge branch 'etnaviv/next' of
https://git.pengutronix.de/git/lst/linux into drm-next
      Merge tag 'drm-misc-next-2017-10-16' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next
      Merge tag 'tilcdc-4.15' of https://github.com/jsarha/linux into drm-next
      drm/plane: drop num_overlay_planes (v3)
      Merge branch 'drm-next-4.15' of
git://people.freedesktop.org/~agd5f/linux into drm-next
      Merge tag 'drm-intel-next-2017-10-12' of
git://anongit.freedesktop.org/drm/drm-intel into drm-next
      Merge tag 'drm-amdkfd-next-2017-10-18' of
git://people.freedesktop.org/~gabbayo/linux into drm-next
      amdgpu: add padding to the fence to handle ioctl.
      Merge tag 'drm/tegra/for-4.15-rc1' of
git://anongit.freedesktop.org/tegra/linux into drm-next
      Merge tag 'drm-misc-next-2017-10-20' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next
      Merge branch 'etnaviv/next' of
https://git.pengutronix.de/git/lst/linux into drm-next
      Merge branch 'drm-next-4.15' of
git://people.freedesktop.org/~agd5f/linux into drm-next
      Merge tag 'drm-msm-next-2017-11-01' of
git://people.freedesktop.org/~robclark/linux into drm-next
      Merge tag 'drm-hisilicon-next-2017-11-01' of
github.com:xin3liang/linux into drm-next
      Backmerge tag 'v4.14-rc7' into drm-next
      Merge branch 'linux-4.15' of git://github.com/skeggsb/linux into drm-next
      Merge branch 'drm-next-4.15' of
git://people.freedesktop.org/~agd5f/linux into drm-next
      Merge tag 'drm-amdkfd-next-2017-11-02' of
git://people.freedesktop.org/~gabbayo/linux into drm-next
      Merge branch 'linux-4.15' of git://github.com/skeggsb/linux into drm-next
      Merge tag 'drm-intel-next-2017-10-23' of
git://anongit.freedesktop.org/drm/drm-intel into drm-next
      Merge branch 'drm-next-4.15' of
git://people.freedesktop.org/~agd5f/linux into drm-next
      Merge tag 'drm-misc-next-fixes-2017-11-07' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next
      Merge branch 'drm-next-4.15' of
git://people.freedesktop.org/~agd5f/linux into drm-next
      Merge tag 'drm-misc-next-fixes-2017-11-08' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next
      drm/mode_object: fix documentation for object lookups.
      Merge tag 'drm-misc-fixes-2017-11-02' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next
      Merge tag 'drm-intel-next-fixes-2017-11-10' of
git://anongit.freedesktop.org/drm/drm-intel into drm-next
      Merge tag 'drm-misc-fixes-2017-11-13' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next
      Merge branch 'linus-4.14-rc4-acp-prereq' of
git://people.freedesktop.org/~agd5f/linux into drm-next
      Merge tag 'exynos-drm-next-for-v4.15' of
git://git.kernel.org/.../daeinki/drm-exynos into drm-next

David Weinehall (2):
      drm/i915: Speed up DMC firmware loading
      drm/i915: Add has_psr-flag to gen9lp

Dhinakaran Pandiyan (5):
      drm/dp/mst: Sideband message transaction to power up/down nodes
      drm/i915/spt+: Don't reset invalid AUX channel interrupt bits in SDEIMR
      drm/dp: DPCD register defines for link status within ESI field
      drm/i915/dp: Remove useless debug about TPS3 support
      drm/i915/mst: Use MST sideband message transactions for dpms control

Dominik Behr (1):
      dma-buf/sw_sync: force signal all unsignaled fences on dying timeline

Emil Renner Berthing (1):
      drm/rockchip: analogix_dp: Use mutex rather than spinlock

Emily Deng (1):
      drm/amdgpu/virtual_dce: Virtual display doesn't support disable
vblank immediately

Eric Anholt (7):
      drm/vc4: Avoid using vrefresh==0 mode in DSI htotal math.
      drm/vc4: Set up the DSI host at pdev probe time, not component bind.
      dt-bindings: Document the Raspberry Pi Touchscreen nodes.
      drm/panel: Add support for the Raspberry Pi 7" Touchscreen.
      drm/vc4: Move the DSI clock divider workaround closer to the clock call.
      drm/vc4: Fix pitch setup for T-format scanout.
      drm/vc4: Fix sleeps during the IRQ handler for DSI transactions.

Eric Huang (8):
      drm/amdgpu: add cgs query info of pci bus devfn
      drm/amd/powerplay: add register thermal interrupt in hwmgr_hw_init
      drm/amd/powerplay: implement register thermal interrupt for Vega10
      drm/amd/powerplay: change alert temperature range
      drm/amd/powerplay: add one smc message for Vega10
      drm/amd/powerplay: fix performance drop on Vega10
      drm/amd/powerplay: change ASIC temperature reading on Vega10
      drm/amd/powerplay: fix memory leak of hardcoded pptable

Evan Quan (21):
      drm/amd/powerplay: unhalt mec after loading
      drm/amd/powerplay: ACG frequency added in PPTable
      drm/amdgpu: support polaris10/11/12 new cp firmwares
      drm/amdgpu: declare the new firmware files needed by polaris asics
      drm/amdgpu: fixed raven psp cmd prepare and submit
      drm/amdgpu: added api for stopping psp ring (v2)
      drm/amdgpu: stop psp ring on suspend
      drm/amdgpu: enable raven to load firmwares by psp at default (v2)
      drm/amd/amgpu: update raven sdma golden setting
      drm/amd/amgpu: update vega10 sdma golden setting
      drm/amd/amdgpu: add vega10/raven mmhub/athub golden settings
      drm/amd/powerplay: fixed wrong return value on error (v2)
      drm/amd/powerplay: added new raven ppsmc messages
      drm/amd/powerplay: get raven max/min gfx clocks (v2)
      drm/amd/powerplay: get raven current sclk and mclk (v2)
      drm/amd/powerplay: get raven sclk and mclk levels (v2)
      drm/amd/powerplay: fix typo on avfs disable
      drm/amd/powerplay: retrieve the real-time coreClock values
      drm/amdgpu/psp: prevent page fault by checking write_frame address(v4)
      drm/amd/powerplay: wrong control mode cause the fan spins faster
unnecessarily
      drm/amd/powerplay: suppress KASAN out of bounds warning in
vega10_populate_all_memory_levels

Fabio Estevam (2):
      drm/panel: simple: Skip error message on deferred probe
      drm/panel: simple: Remove unneeded gpiod NULL check

Felix Kuehling (27):
      drm/amdgpu: Fix huge page updates with CPU
      drm/amdkfd: Adjust dequeue latencies and timeouts
      drm/amdgpu: Fix error handling in amdgpu_vm_init
      drm/amdgpu: Add PASID management
      drm/radeon: Add PASID manager for KFD
      drm/amdkfd: Separate doorbell allocation from PASID
      drm/amdkfd: Use PASID manager from KGD
      drm/amdgpu: Add prescreening stage in IH processing (v2)
      drm/amd: Closed hash table with low overhead (v2)
      drm/amdgpu: Track pending retry faults in IH and VM (v2)
      drm/amdkfd: Fix MQD updates
      drm/amdkfd: Improve process termination handling
      drm/amdkfd: Clean up process queue management
      drm/amdkfd: Limit queue number per process and device to 127
      drm/amd/chash: Fix typo
      drm/amdgpu: Handle GPUVM fault storms
      drm/amdkfd: Don't dereference kfd_process.mm
      drm/amdkfd: Clean up kfd_wait_on_events
      drm/amdkfd: Fix event destruction with pending waiters
      drm/amdkfd: remove redundant kfd_event_waiter.input_index
      drm/amdkfd: Use wait_queue_t to implement event waiting
      drm/amdkfd: Simplify events page allocator
      drm/amdkfd: Simplify event ID and signal slot management
      drm/amdkfd: Use IH context ID for signal lookup
      drm/amdkfd: Make event limit dependent on user mode mapping size
      drm/amdkfd: Update queue_count before mapping queues
      drm/amdkfd: Minor cleanups

Frank Binns (1):
      dma-fence: remove duplicate word in comment

Gabriel Krisman Bertazi (1):
      drm: Fix example comment of format modifier blob

Georgiana Chelu (3):
      drm/amd/powerplay: Don't cast kzalloc() return value
      drm/amd/powerplay: Remove useless variable
      drm/amd/powerplay: Place the constant on the right side of the test

Gerd Hoffmann (2):
      drm/qxl: replace QXL_INFO with DRM_DEBUG_DRIVER
      qxl: alloc & use shadow for dumb buffers

Gustavo A. R. Silva (2):
      drm/nouveau/devinit/nv04: mark expected switch fall-throughs
      drm/nouveau/bios/timing: mark expected switch fall-throughs

Gustavo Padovan (3):
      dma-buf/sync_file: document flags field
      drm/msm: update cursors asynchronously through atomic
      drm/msm: remove mdp5_cursor_plane_funcs

Haneen Mohammed (8):
      drm/rockchip: Replace dev_* with DRM_DEV_*
      drm: Remove obsolete "This is gross" comment
      drm/doc: Remove todo item about "This is gross" comment
      drm/rockchip: Rely on the default best_encoder() behavior
      drm/armada: Remove unused #include <drmP.h>
      drm/tinydrm: Remove explicit .best_encoder assignment
      drm/armada: Replace drm_gem_object_reference/unreference() with _get/put()
      drm/armada: Replace drm_framebuffer_reference/unreference() with
_get/put()

Hans Verkuil (12):
      dt-bindings: adi,adv7511.txt: document cec clock
      drm: adv7511/33: add HDMI CEC support
      omapdrm: encoder-tpd12s015: keep ls_oe_gpio high
      omapdrm: hdmi.h: extend hdmi_core_data with CEC fields
      omapdrm: hdmi4: make low-level functions available
      omapdrm: hdmi4: prepare irq handling for HDMI CEC support
      omapdrm: hdmi4: move hdmi4_core_powerdown_disable to hdmi_power_on_core()
      omapdrm: hdmi4: refcount hdmi_power_on/off_core
      omapdrm: hdmi4_cec: add OMAP4 HDMI CEC support
      omapdrm: hdmi4: hook up the HDMI CEC support
      omapdrm: omapdss_hdmi_ops: add lost_hotplug op
      drm/tegra: hdmi: Add cec-notifier support

Harish Kasiviswanathan (2):
      drm/amdgpu: Refactor amdgpu_move_blit
      drm/amdgpu: Add amdgpu_find_mm_node()

Harry Wentland (1):
      drm/amd/include: Add hdmi_redriver_set to atomfirmware

Harsha Sharma (4):
      drm/i915: Replace *_reference/unreference() or *_ref/unref with _get/put()
      drm/tinydrm: Replace dev_error with DRM_DEV_ERROR
      drm: Replace kzalloc with kcalloc
      drm/i915: Replace *_reference/unreference() or *_ref/unref with _get/put()

Helge Deller (1):
      i915: Use %pS printk format for direct addresses

Himanshu Jha (4):
      drm/amd: Remove null check before kfree
      drm/amd/powerplay/hwmgr: Remove null check before kfree
      drm/gma500: Remove null check before kfree
      drm/amd/powerplay: remove unnecessary call to memset

Hoegeun Kwon (2):
      dt-bindings: Add binding for Samsung S6E63J0X03 panel
      drm/panel: Add support for S6E63J0X03 panel

Horace Chen (4):
      drm/amdgpu/sriov:increate mailbox polling timeout
      drm/amdgpu: Add a new flag for SR-IOV to share memory between PF & VF
      drm/amdgpu: Reserve shared memory on VRAM for SR-IOV
      drm/amdgpu: SR-IOV data exchange between PF&VF

Ilia Mirkin (1):
      drm/nouveau/kms: add 8.1Gbps DP link rate

Imre Deak (6):
      drm/i915/gen9+: Set same power state before hibernation image save/restore
      drm/i915/gen8+: Init/reset display interrupts only if i915 IRQs
are enabled
      drm/i915/glk, cnl: Implement WaDisableScalarClockGating
      drm/i915: Fix DDI PHY init if it was already on
      drm/i915/cnl: Reprogram DMC firmware after S3/S4 resume
      drm/i915/glk: Fix DMC/DC state idleness calculation

Inki Dae (4):
      drm/mediatek: hdmi: clean up drm_bridge_add call
      drm/sti: sti_vdo: clean up drm_bridge_add call
      drm/exynos: mic: clean up drm_bridge_add call
      drm/bridge: change return type of drm_bridge_add function

James Ausmus (3):
      drm/i915: Fix DP_AUX_CH_CTL_TIME_OUT naming
      drm/i915/bdw: Fix DP_AUX_CH_CTL_TIME_OUT setting
      drm/i915: Handle drm-layer errors in intel_dp_add_mst_connector

James Zhu (9):
      drm/amdgpu: add uvd enc registers in header
      drm/amdgpu: add uvd enc command in header
      drm/amdgpu: add new uvd enc ring methods
      drm/amdgpu: add uvd enc rings
      drm/amdgpu: add uvd enc into run queue
      drm/amdgpu: add uvd enc vm functions (v2)
      drm/amdgpu: add uvd enc ring test
      drm/amdgpu: add uvd enc ib test
      drm/amdgpu: add uvd enc irq

Jani Nikula (46):
      drm/i915/dp: rename intel_dp_is_edp to intel_dp_is_port_edp
      drm/i915/dp: make is_edp non-static and rename to intel_dp_is_edp
      drm/i915/bios: amend child device config parameters
      drm/i915/bios: document BDB versions of child device config fields
      drm/i915/bios: remove the raw version of child device config
      drm/i915/bios: add legacy contents to common child device config
      drm/i915/bios: throw away high level child device union
      drm/i915/bios: throw away struct old_child_dev_config
      drm/i915/bios: document child device config dvo_port values a bit better
      drm/i915/bios: group device type definitions together
      drm/i915/bios: throw away unused DVO_* macros
      drm/i915/bios: drop the rest of the p_ prefixes from pointers
      drm/i915/bios: split up iboost to hdmi and dp bitfields
      drm/i915/bios: amend bdb_general_features
      drm/i915/bios: amend child device flags based on intel_vbt_decode
      drm/i915/bios: amend edp block based on intel_vbt_decode
      Merge drm-upstream/drm-next into drm-intel-next-queued
      drm/i915: Update DRIVER_DATE to 20170907
      Merge tag 'gvt-next-2017-09-08' of
https://github.com/01org/gvt-linux into drm-intel-next-queued
      drm: handle override and firmware EDID at drm_do_get_edid() level
      drm: add backwards compatibility support for drm_kms_helper.edid_firmware
      drm/i915: always update ELD connector type after get modes
      drm/i915/bios: ignore HDMI on port A
      Merge drm-upstream/drm-next into drm-intel-next-queued
      drm/i915: Update DRIVER_DATE to 20170929
      drm/i915: push DDI CRT underrun reporting on enable to encoder
      drm/i915: push DDI CRT underrun reporting on disable to encoder
      drm/i915: push DDI and DSI underrun reporting on enable to encoder
      drm/i915: push DDI FDI link training on enable to CRT encoder
      drm/i915/crt: clean up encoder hook assignment
      drm/i915/bios: parse DDI ports also for CHV for HDMI DDC pin and
DP AUX channel
      drm/i915/bios: refactor parse general definitions
      drm/i915/bios: don't initialize fields based on vbt version
      drm/i915/bios: remove an unnecessary temp variable
      drm/i915/bios: cleanup comments and useless return
      drm/i915/bios: merge parse_device_mapping() into
parse_general_definitions()
      drm/i915/bios: parse SDVO device mapping from pre-parsed child devices
      drm/i915/bios: don't pass bdb to parsers that don't parse VBT directly
      drm/dp: WARN about invalid/unknown link rates and bw codes
      drm/i915/dp: centralize max source rate conditions more
      drm/i915/dp: limit sink rates based on rate
      drm/i915: Update DRIVER_DATE to 20171012
      Merge drm-upstream/drm-next into drm-intel-next-queued
      drm/i915: remove g4x lowfreq_avail and has_pipe_cxsr
      drm/i915/crt: split compute_config hook by platforms
      drm/i915: Update DRIVER_DATE to 20171023

Jay Cornwall (1):
      drm/amdkfd: Disable CP/SDMA ring/doorbell in MQD

Jeff McGee (1):
      drm/i915/preempt: Fix WaEnablePreemptionGranularityControlByUMD

Jeffy Chen (1):
      drm/atomic: Unref duplicated drm_atomic_state in
drm_atomic_helper_resume()

Jonathan Liu (4):
      drm/panel: simple: Fix width and height for Olimex LCD-OLinuXino-4.3TS
      drm/panel: simple: Add missing panel_simple_unprepare() calls
      drm/sun4i: tcon: Add support for A10 TCON
      drm/sun4i: Add support for A20 display pipeline components

Joonas Lahtinen (6):
      drm/i915: Introduce INTEL_GEN_MASK
      drm/i915: Simplify i915_reg_read_ioctl
      drm/i915: Don't use BIT() in UAPI section
      drm/i915: Unify uC variable types to avoid flooding checkpatch.pl
      drm/i915: Simplify intel_sanitize_enable_ppgtt
      drm/i915: Disable lazy PPGTT page table optimization for vGPU

Jordan Crouse (10):
      drm: fix typo in drm_gem_get_pages() comment
      drm/msm: Add per-instance submit queues
      drm/msm: Move memptrs to msm_gpu
      drm/msm: Support multiple ringbuffers
      drm/msm: Add a parameter query for the number of ringbuffers
      drm/msm: Shadow current pointer in the ring until command is complete
      drm/msm: Make the value of RB_CNTL (almost) generic
      drm/msm: Implement preemption for A5XX targets
      drm/msm: Removed unused struct_mutex_task
      drm/msm: dump a rd GPUADDR header for all buffers in the command

Juha-Pekka Heikkila (5):
      drm/i915: move adjusted_x/y from crtc to cache.
      drm/i915: dspaddr_offset doesn't need to be more than local variable
      drm/i915: Unify skylake plane update
      drm/i915: Unify skylake plane disable
      drm/i915: adjust get_crtc_fence_y_offset() to use base.y instead of crtc.y

Jyri Sarha (4):
      drm/tilcdc: Turn raster off in crtc reset, if it was on in the HW
      drm/tilcdc: Remove WARN_ON(!drm_modeset_is_locked(&crtc->mutex)) checks
      drm/tilcdc: Use tilcdc_crtc_shutdown() in tilcdc_crtc_destroy()
      drm/tilcdc: Precalculate total frametime in tilcdc_crtc_set_mode()

Jérémy Lefaure (4):
      drm/gma500: use ARRAY_SIZE
      drm/via: use ARRAY_SIZE
      drm/amdgpu: use ARRAY_SIZE
      drm/nouveau/bios/init: use ARRAY_SIZE

Kees Cook (1):
      drm/i915: Convert timers to use timer_setup()

Keith Packard (8):
      drm: Pass struct drm_file * to __drm_mode_object_find [v2]
      drm: Widen vblank count to 64-bits [v3]
      drm: Reorganize drm_pending_event to support future event types [v2]
      drm: Add CRTC_GET_SEQUENCE and CRTC_QUEUE_SEQUENCE ioctls [v3]
      drm: Add new LEASE debug level
      drm: Add drm_object lease infrastructure [v5]
      drm: Check mode object lease status in all master ioctl paths [v4]
      drm: Add four ioctls for managing drm mode object leases [v7]

Ken Wang (2):
      drm/amdgpu: Add GPU reset functionality for Vega10
      drm/amdgpu: correct reference clock value on vega10

Kent Russell (2):
      drm/amdgpu: Add debugfs file for VBIOS and version
      drm/amdgpu: Move VBIOS version to sysfs

Kumar, Mahesh (7):
      drm/i915: Fixed point fixed16 wrapper cleanup
      drm/i915/skl+: Optimize WM calculation
      drm/i915/gen10: Calculate and enable transition WM
      drm/i915/glk: IPC linetime watermark workaround for GLK
      drm/i915/cnl: Extend WM workaround with IPC for CNL
      drm/i915/bxt+: Enable IPC support
      drm/i915/skl+: debugfs entry to control IPC

Lars-Peter Clausen (4):
      drm/bridge: adv7511: Properly update EDID when no EDID was found
      drm/bridge: adv7511: Remove private copy of the EDID
      drm/bridge: adv7511: Enable connector polling when no interrupt
is specified
      drm/bridge: adv7511: Constify HDMI CODEC platform data

Lee, Shawn C (2):
      drm/i915/bxt: set min brightness from VBT
      drm/i915/cnp: set min brightness from VBT

Leo Liu (1):
      drm/amdgpu: remove the clearance of vce 4.0 interrupt mask

Linus Walleij (11):
      drm/tve200: Add DT bindings
      drm/tve200: Add new driver for TVE200
      drm/tve200: Replace custom connector with panel bridge
      drm/pl111: Cleanup local header file
      drm/pl111: Add all registers to debugfs
      drm/pl111: Replace custom connector with panel bridge
      drm/pl111: Enable PL110 variant
      drm/pl111: Insert delay before powering up PL11x
      drm/pl111: Add optional variant display en/disable callbacks
      drm/pl111: Add handling of Versatile platforms
      drm/tve200: Clean up panel bridging

Lionel Landwerlin (6):
      drm/i915: add GT number to intel_device_info
      drm/i915: mark all device info struct with __initconst
      drm/i915: rework IS_*_GT* macros
      uapi/drm/i915: document field usage of drm_i915_perf_oa_config
      drm/i915/perf: disable clk ratio reports on gen9
      drm/i915/perf: add support for Coffeelake GT2

Lucas Stach (14):
      drm/etnaviv: remove iommu fault handler
      drm/etnaviv: remove iova_to_phys iommu ops
      drm/etnaviv: iommuv1: fold pagetable alloc and free into caller
      drm/etnaviv: iommuv1: fold pgtable_write into callers
      drm/etnaviv: iommuv1: remove map_lock
      drm/etnaviv: mmu: stop using iommu map/unmap functions
      drm/etnaviv: mmu: mark local functions static
      drm/etnaviv: remove IOMMU dependency
      drm/etnaviv: rework clock initialization
      drm/etnaviv: remove stale comment
      drm/etnaviv: remove unused function etnaviv_gem_new
      drm/panel: simple: add Toshiba LT089AC19000
      Revert "drm/etnaviv: submit supports performance monitor requests"
      drm/etnaviv: short-circuit perfmon ioctls

Maarten Lankhorst (23):
      drm/i915: Always wait for flip_done, v2.
      drm/atomic: Return commit in drm_crtc_commit_get for better annotation
      drm/atomic: Move drm_crtc_commit to drm_crtc_state, v4.
      drm/atomic: Remove waits in drm_atomic_helper_commit_cleanup_done, v2.
      drm/atomic: Fix freeing connector/plane state too early by
tracking commits, v3.
      drm/atomic: Make async plane update checks work as intended, v2.
      drm/atomic: Remove deprecated accessor macros
      drm/atomic: Prepare drm_modeset_lock infrastructure for
interruptible waiting, v2.
      drm/atomic: Convert atomic ioctl locking to interruptible.
      drm/legacy: Convert cursor ioctl locking to interruptible.
      drm/legacy: Convert setplane ioctl locking to interruptible.
      drm/atomic: Convert pageflip ioctl locking to interruptible.
      drm/crtc: Convert setcrtc ioctl locking to interruptible.
      drm/i915: Unset legacy_cursor_update early in intel_atomic_commit, v3.
      drm/i915: Skip vblank waits for cursor updates when watermarks
dont need updating
      drm/i915: Remove use_mmio_flip modparm, v2.
      drm/i915: Use crtc_state_is_legacy_gamma in intel_color_check
      drm/atomic: Remove unneeded null check for private objects
      drm/atomic: Make atomic iterators less surprising
      drm/drm_of: Move drm_of_panel_bridge_remove_function into header.
      drm/atomic: Make atomic helper track newly assigned planes correctly, v2.
      drm/atomic: Check for busy planes/connectors before setting the commit
      drm/i915: Calculate ironlake intermediate watermarks correctly, v2.

Maciej Purski (2):
      drm/bridge: add Silicon Image SiI9234 driver
      drm/bridge/sii8620: add remote control support

Madhav Chauhan (2):
      drm/i915: Parse DSI backlight/cabc ports.
      drm/i915: Use existing DSI backlight ports info

Mahesh Kumar (1):
      drm/i915/gen9+: Add has_ipc flag in device info structure

Manasi Navare (4):
      drm/i915/edp: Increase T12 panel delay to 900 ms to fix DP AUX CH timeouts
      drm/i915/cnl: Change the macro name to DPLL_CFGCR0_DCO_FRACTION_SHIFT
      drm/i915/edp: Get the Panel Power Off timestamp after panel is off
      drm/i915/edp: Increase the T12 delay quirk to 1300ms

Marco Franchi (1):
      drm/panel: Add driver for Seiko 43WVF1G panel

Marek Olšák (3):
      drm/syncobj: extract two helpers from drm_syncobj_create
      drm/syncobj: add a new helper drm_syncobj_get_fd
      drm/amdgpu: add FENCE_TO_HANDLE ioctl that returns syncobj or sync_file

Marta Lofstedt (2):
      drm/i915: Beef up of Beef up the IPS vs. CRC workaround
      drm/i915: Increase poll time for BDW FCLK_DONE

Matthew Auld (23):
      mm/shmem: introduce shmem_file_setup_with_mnt
      drm/i915: introduce simple gemfs
      drm/i915/gemfs: enable THP
      drm/i915: introduce page_sizes field to dev_info
      drm/i915: push set_pages down to the callers
      drm/i915: introduce page_size members
      drm/i915: introduce vm set_pages/clear_pages
      drm/i915: align the vma start to the largest gtt page size
      drm/i915: align 64K objects to 2M
      drm/i915: enable IPS bit for 64K pages
      drm/i915: disable GTT cache for 2M pages
      drm/i915: support 2M pages for the 48b PPGTT
      drm/i915: add support for 64K scratch page
      drm/i915: support 64K pages for the 48b PPGTT
      drm/i915: accurate page size tracking for the ppgtt
      drm/i915/debugfs: include some gtt page size metrics
      drm/i915/selftests: huge page tests
      drm/i915/selftests: mix huge pages
      drm/i915: disable platform support for vGPU huge gtt pages
      drm/i915: enable platform support for 64K pages
      drm/i915: enable platform support for 2M pages
      drm/i915: s/sg_mask/sg_page_sizes/
      drm/i915/selftests: ditch the kernel context

Maxime Ripard (8):
      MAINTAINERS: sun4i-drm is now maintained in drm-misc
      drm/sun4i: Implement endpoint parsing using kfifo
      drm/sun4i: Realign Makefile padding and reorder it
      drm/sun4i: tcon: Make tcon_set_mux mode argument const
      drm/sun4i: tcon: Make tcon_get_clk_delay mode argument const
      drm/sun4i: tcon: Don't rely on encoders to enable the TCON
      drm/sun4i: tcon: Don't rely on encoders to set the TCON mode
      drm/sun4i: tcon: Move out the tcon0 common setup

Meghana Madhyastha (5):
      drm/agpsupport: Replace "foo * bar" with "foo *bar"
      drm/agpsupport: Remove assignment in if condition
      drm/agpsupport: Move EXPORT_SYMBOL so that it immediately
follows its function
      drm/agpsupport: Remove extra blank line
      drm/Documentation: Refine TODO for backlight helpers in tinydrm

Michal Wajdeczko (35):
      drm/i915: Make PAT macros more robust
      drm/i915: Rename lvds_use_ssc modparam to panel_use_ssc
      drm/i915: Introduce custom variant of module_param_named macro
      drm/i915: Extend private i915_param_named macro with description
      drm/i915: Rename global i915 to i915_modparams
      drm/i915: Make I915_PARAMS_FOR_EACH macro more flexible
      drm/i915: Extend I915_PARAMS_FOR_EACH with default member value
      drm/i915: Fix default values of some modparams
      drm/i915: Make intel_uncore.h header self-contained
      drm/i915/uc: Drop unnecessary forward declaration
      drm/i915/uc: Move uC fw helper code into dedicated files
      drm/i915/huc: Move HuC declarations into dedicated header
      drm/i915/guc: Move Guc early init into own function
      drm/i915/guc: Move GuC log declarations into dedicated header
      drm/i915/guc: Move GuC submission declarations into dedicated header
      drm/i915/guc: Move GuC core definitions into dedicated files
      drm/i915/uc: Fix includes order
      drm/i915/uc: Unify initialization of the uC firmware helper
      drm/i915/huc: Fix includes in intel_huc.c
      drm/i915: Fix pointer-to-int conversion
      drm/i915: Move intel_guc_wopcm_size to intel_guc.c
      drm/i915/guc: Move GuC boot param initialization out of xfer
      drm/i915/guc: Small fixups post code move
      drm/i915/guc: Move doc near related definitions
      drm/i915/guc: Rename intel_guc_loader.c to intel_guc_fw.c
      drm/i915/guc: Reorder functions in intel_guc_fw.c
      drm/i915/uc: Check all firmwares against WOPCM size
      drm/i915/guc: Pick better place for Guc final status message
      drm/i915/uc: Improve debug messages in firmware fetch
      drm/i915/uc: Add message with firmware url
      drm/i915: Update DMC firmware load error messages
      drm/i915/uc: Unify firmware loading
      drm/i915/guc: Update Guc messages on load failure
      drm/i915/huc: Move fw select function
      drm/i915/uc: Add pretty printer for uc firmware

Michał Winiarski (6):
      drm/i915/guc: Remove obsolete comments and remove unused variable
      drm/i915/guc: Submit GuC workitems containing coalesced requests
      drm/i915/guc: Simplify GuC doorbell logic
      drm/i915/guc: Cleanup adding GuC work items
      drm/i915/execlists: Cache the last priolist lookup
      drm/i915/preempt: Default to disabled mid-command preemption levels

Michel Dänzer (4):
      amdgpu: Only destroy fbdev framebuffer if it was initialized
      radeon: Only destroy fbdev framebuffer if it was initialized
      drm/ttm: Always and only destroy bo->ttm_resv in ttm_bo_release_list
      drm/ttm: Downgrade pr_err to pr_debug for memory allocation failures

Michel Thierry (4):
      drm/i915: Re-enable per-engine reset for Broxton
      drm/i915: Add a default case in gen7 hwsp switch-case
      drm/i915/lrc: Clarify the format of the context image
      drm/i915/guc: Don't make assumptions while getting the lrca offset

Mika Kahola (7):
      drm/i915/dsi: Replace MIPI command error message with debug message
      drm/i915: Don't relay on I915_MAX_PIPES
      drm/i915: Remove I915_MAX_PIPES dependency for DDB allocation
      drm/i915: Fold IRQ pipe masks
      drm/i915: Favor for_each_pipe() macro
      drm/i915: Cleanup South Error Interrupts
      drm/i915: Get rid of hardcoded pipes

Mika Kuoppala (7):
      drm/i915: Stop engines before reset
      drm/i915: Make own struct for execlist items
      drm/i915: Move execlist initialization into intel_engine_cs.c
      drm/i915: Wrap port cancellation into a function
      drm/i915: Add execlist_port_complete
      drm/i915: Make execlist port count variable
      drm/i915: Use execlists_num_ports instead of size of array

Mikko Perttunen (10):
      dt-bindings: host1x: Add Tegra186 information
      gpu: host1x: Add Tegra186 support
      drm/tegra: Add Tegra186 support for VIC
      gpu: host1x: Call of_dma_configure() after setting bus
      gpu: host1x: Enable Tegra186 syncpoint protection
      gpu: host1x: Enable gather filter
      gpu: host1x: Improve debug disassembly formatting
      gpu: host1x: Disassemble more instructions
      gpu: host1x: Fix incorrect comment for channel_request
      drm/tegra: Use u64_to_user_ptr helper

Monk Liu (27):
      drm/ttm: fix missing inc bo_count
      drm/ttm:fix wrong decoding of bo_count
      drm/amdgpu: fix wait_any_fence
      drm/amdgpu/sriov:fix missing error handling
      drm/amdgpu:no kiq in IH
      drm/amdgpu/sriov:move in_reset to adev and rename
      drm/amdgpu/sriov:don't load psp fw during gpu reset
      drm/amdgpu:insert TMZ_BEGIN
      drm/amdgpu:hdp flush should be put it initialized
      drm/amdgpu:use formal register to trigger hdp invalidate
      drm/amdgpu/sriov:fix page fault issue of driver unload
      drm/amdgpu/sriov:init csb for gfxv9
      drm/amdgpu:make ctx_add_fence interruptible(v2)
      drm/amdgpu/sriov:fix memory leak after gpu reset
      drm/amdgpu:halt when vm fault
      drm/amdgpu:unmap KCQ in gfx hw_fini(v2)
      drm/amdgpu/sriov:alloc KIQ MQD in VRAM(v2)
      drm/amdgpu:fix uvd ring fini routine(v2)
      drm/amdgpu:fix firmware memoryleak(v2)
      drm/amdgpu:reduce wb to 512 slot
      drm/amdgpu:fix duplicated setting job's vram_lost
      drm/amdgpu:don't check soft_reset for sriov
      drm/amdgpu/sriov:now must reinit psp
      drm/amdgpu:fix vf_error_put
      drm/amdgpu:fix wb_clear
      drm/ttm:fix memory leak due to individualize
      drm/amdgpu:add fw-vram-usage for atomfirmware

Nanley Chery (1):
      drm/i915/cnl: Allow the reg_read ioctl to read the RCS TIMESTAMP register

Nicolai Hähnle (5):
      drm/amd/sched: rename amd_sched_entity_pop_job
      drm/amd/sched: fix an outdated comment
      drm/amd/sched: move adding finish callback to amd_sched_job_begin
      drm/amd/sched: NULL out the s_fence field after run_job
      drm/amd/sched: fix deadlock caused by unsignaled fences of deleted jobs

Nicolas Iooss (1):
      drm/amd/powerplay: initialize a variable before using it

Noralf Trønnes (25):
      drm/arm/hdlcd: Use drm_gem_fb_create()
      drm/arm/mali: Use drm_gem_fb_create()
      drm/atmel-hlcdc: Use drm_gem_fb_create()
      drm/sti: Use drm_gem_fb_create()
      drm/zte: Use drm_gem_fb_create()
      drm/gem: drm_gem_dumb_map_offset(): reject dma-buf
      drm/armada: Use .dumb_map_offset and .dumb_destroy defaults
      drm/arc: Use drm_gem_fb_create()
      drm/stm: Use drm_gem_fb_create()
      drm/fb-helper: Avoid NULL ptr dereference in fb_set_suspend()
      drm/tilcdc: Use drm_gem_fb_create()
      drm/imx: Use drm_gem_fb_create() and drm_gem_fb_prepare_fb()
      drm/gem-fb-helper: Use debug message on gem lookup failure
      drm/tinydrm: Drop driver registered message
      drm/tinydrm: Use drm_gem_framebuffer_helper
      drm/fsl-dcu: Use drm_gem_fb_create()
      drm/hisilicon/kirin: Use drm_gem_fb_create()
      drm/meson: Use drm_gem_fb_create()
      drm/mxsfb: Use drm_gem_fb_create() and drm_gem_fb_prepare_fb()
      drm/rcar-du: Use drm_gem_fb_create()
      drm/shmobile: Use drm_gem_fb_create()
      drm/sun4i: Use drm_gem_fb_create()
      drm/tve200: Use drm_gem_fb_create() and drm_gem_fb_prepare_fb()
      drm/fb-cma-helper: Remove unused functions
      drm/gem-fb-helper: Improve documentation

Oded Gabbay (1):
      drm/amdkfd: increase limit of signal events to 4096 per process

Oscar Mateo (16):
      drm/i915/cnl: WaPushConstantDereferenceHoldDisable
      drm/i915: Make some RPS functions static
      drm/i915: Transform WaInPlaceDecompressionHang into a simple reg write
      drm/i915: Transform WaDisableI2mCycleOnWRPort into a simple reg write
      drm/i915: WaPushConstantDereferenceHoldDisable needs to modify a
masked register
      drm/i915: Transform WaDisableGafsUnitClkGating into a simple reg write
      drm/i915: Transform WaDisableDynamicCreditSharing into a simple
register write
      drm/i915: Transform WaDisablePooledEuLoadBalancingFix into a
simple register write
      drm/i915/guc: Name the default GuC scheduling policy
      drm/i915/guc: Remove WQ_WORKLOAD_SHIFT define
      drm/i915/guc: Small improvements to guc_wq_item_append
      drm/i915/cnl: Add Gen10 LRC size
      drm/i915: Transform whitelisting WAs into a simple reg write
      drm/i915/cnl: Do not add an extra page for precaution in the
Gen10 LRC size
      drm/i915: No need for RING_MAX_NONPRIV_SLOTS space
      drm/i915: Use a mask when applying WaProgramL3SqcReg1Default

Pandiyan, Dhinakaran (3):
      drm/i915/mst: Debug log connector name in destroy_connector()
      drm/i915/mst: Print active mst links after update
      drm/i915/dp: Fix buffer size for sink_irq_esi read

Paulo Zanoni (5):
      drm/i915/cnl: simplify cnl_procmon_values handling
      drm/i915/cnl: extract cnl_set_procmon_ref_values
      drm/i915/cnl: don't hardcode DPCLKA_CFGCR0_DDI_CLK_SEL_SHIFT
      drm/i915: add the BXT and CNL DPLL registers to pipe_config_compare
      drm/i915: avoid division by zero on cnl_calc_wrpll_link

Peter Griffin (1):
      drm/hisilicon: Ensure LDI regs are properly configured.

Philipp Zabel (5):
      drm/etnaviv: reduce reset delay
      drm/etnaviv: remove unnecessary clock stabilization delay
      drm/panel: simple: fix vertical timings for Innolux AT043TN24
      drm/panel: simple: add bus flags for Innolux AT043TN24
      drm/panel: simple: add delays for Innolux AT043TN24

Philippe CORNU (5):
      dt-bindings: Add vendor prefix for Orise Technology
      dt-bindings: display: panel: Add support for Orise Tech OTM8009A DSI panel
      drm/panel: Add support for OTM8009A panel driver
      drm/bridge/synopsys: dsi: Register list clean up
      drm/bridge/synopsys: dsi: explicitly request exclusive reset control

Pixel Ding (1):
      drm/amdgpu: bypass lru touch for KIQ ring submission

Praveen Paneri (1):
      drm/i915: Fix FBC cfb stride programming for non X-tiled FB

Radhakrishna Sripada (1):
      drm/i915: Do not enable DRRS when PSR is enabled

Rex Zhu (73):
      drm/amd/powerplay: refine pp code for raven
      drm/amd/powerplay: add dummy pp table for raven. (v2)
      drm/amd/powerplay: notify smu once display changed on Rv.
      drm/amd/powerplay: delete eventmgr layer in poweprlay
      drm/amd/powerplay: delete eventmgr related files.
      drm/amd/powerplay: add UMD P-state in powerplay.
      drm/amd/powerplay: set uvd/vce/nb/mclk level as UMD P-state required
      drm/amd/powerplay: refine code for thermal control in powerplay
      drm/amd/powerplay: refine powerplay code for CZ/ST
      drm/amd/powerplay: refine powerplay code for RV
      drm/amd/powerplay: delete dead code in powerplay
      drm/amdgpu: rename amdgpu_dpm_funcs to amd_pm_funcs
      drm/amd/powerplay: use struct amd_pm_funcs in powerplay
      drm/amdgpu: unify the interface of amd_pm_funcs
      drm/amdgpu: add support for request SI/CI firmware in CGS
      drm/amd/powerplay: fix spelling typo in function name
      drm/amd/powerplay: fix pcie max lane define error
      drm/amd/powerplay: add CI asics support to smumgr (v3)
      drm/amd/powerplay: fix set target TDP error on tonga/iceland
      drm/amd/powerplay: refine dmesg info under powerplay
      drm/amd/powerplay: Add support functions for CI to ppatomctrl.c
      drm/amd/powerplay: Add support for CI asics to hwmgr
      drm/amdgpu: add powerplay support for CI asics
      drm/amd/powerplay: Simplify smu7_voting_clients()
      drm/amdgpu: fix checkpatch.pl warning to amdgpu_drv.c
      drm/amd/powerplay: refine phm_register_thermal_interrupt interface
      drm/amd/powerplay: refine interface in struct pp_smumgr_func
      drm/amd/powerplay: delete dead code in hwmgr.h
      drm/amd/powerplay: refine powerplay code.
      drm/amd/powerplay: use SMU_IND_INDEX/DATA_11 pair
      drm/amd/powerplay: add new helper functions in hwmgr.h
      drm/amd/powerplay: move SMUM_WAIT_INDIRECT_FIELD_UNEQUAL to hwmgr.h
      drm/amd/powerplay: move SMUM_WAIT_VFPF_INDIRECT_FIELD_UNEQUAL to hwmgr.h
      drm/amd/powerplay: move PHM_WAIT_VFPF_INDIRECT_FIELD to hwmgr.h
      drm/amd/powerplay: move macros to hwmgr.h
      drm/amd/powerplay: delete SMU_WRITE_INDIRECT_FIELD
      drm/amd/powerplay: delete SMUM_WRITE_FIELD
      drm/amd/powerplay: delete SMUM_WRITE_VFPF_INDIRECT_FIELD
      drm/amd/powerplay: delete SMUM_READ_VFPF_INDIRECT_FIELD
      drm/amd/powerplay: delete SMUM_SET_FIELD
      drm/amd/powerplay: delete SMUM_READ_FIELD
      drm/amd/powerplay: delete SMUM_WAIT_INDIRECT_FIELD
      drm/amd/powerplay: delete SMUM_FIELD_MASK
      drm/amd/powerplay: delete dead code in smumgr
      drm/amdgpu: move common pm sysfs code to amdgpu_device.c
      drm/amdgpu: move amdgpu_ucode_init_bo to amdgpu_device.c
      drm/amd/powerplay: fix memory leak in powerplay
      drm/amdgpu: delete dead code about fw load check
      drm/amdgpu: delete pp_enable in adev
      drm/amdgpu: add cgs interface to register pp handle
      drm/amdgpu: create powerplay by cgs interface
      drm/amd/powerplay: change dmesg log level in powerplay
      drm/amdgpu: add comments in struct amd_pm_funcs define
      drm/amd/powerplay: export new interfaces in amd_pm_funcs
      drm/amd/powerplay: refine code in amd_powerplay.c (v2)
      drm/amd/powerplay: tidy up ret checks in amd_powerplay.c (v3)
      drm/amd/powerplay: move set_clockgating_by_smu to pp func table
      drm/amd/powerplay: delete flag PP_VALID
      drm/amd/powerplay: fix mclk can't switch on Tonga
      drm/amd/pp: export new smu messages for vega10
      drm/amd/pp: add new function point in hwmgr.
      drm/amd/pp: implement function notify_cac_buffer_info on Vega
      drm/amd/pp: implement function notify_cac_buffer_info on VI
      drm/amd/pp: move common function to smu7_smumgr.c
      drm/amdgpu: refine code delete duplicated error handling
      drm/amd/pp: rename ci_smc.c to ci_smumgr.c
      drm/amd/pp: remove fiji_smc/smumgr split.
      drm/amd/pp: remove iceland_smc/smumgr split.
      drm/amd/pp: remove tonga_smc/smumgr split.
      drm/amd/pp: remove polaris10_smc/smumgr split.
      drm/amdgpu: fix regresstion on SR-IOV gpu reset failed
      drm/amd/pp: thermal control not enabled on vega10.
      drm/amd/pp: Fix overflow when setup decf/pix/disp dpm table.

Rhys Kidd (2):
      drm/nouveau/therm/gp100: initial implementation of new gp1xx
temperature sensor
      drm/nouveau: Document nouveau support for Tegra in DRIVER_DESC

Rob Clark (21):
      drm/msm: fix _NO_IMPLICIT fencing case
      drm/msm/adreno: load gpu at probe/bind time
      drm/msm/adreno: split out helper to load fw
      drm/msm/adreno: deal with linux-firmware fw paths
      drm/msm/mdp5: always print mdp5 version
      drm/msm/dsi: convert to msm_clk_get()
      drm/msm/edp: convert to msm_clk_get()
      drm/msm/hdmi: convert to msm_clk_get()
      dt-bindings: display: msm: update clk names
      drm/msm/mdp4: disable vblanks when crtc is off
      drm/msm/mdp5: disable vblanks when crtc is off
      drm/msm: show task cmdline in gpu recovery messages
      drm/msm: add special _get_vaddr_active() for cmdstream dumps
      drm/msm: split rd debugfs file
      drm/msm/rd: allow adding addition msg to top of dump
      drm/msm: preserve IOVAs in submit's bo table
      drm/msm: dump submits which triggered gpu hang
      drm/msm/mdp5: ignore planes that are not visible
      drm/msm/mdp5: don't use autosuspend
      drm/msm/mdp5: restore cursor state when enabling crtc
      drm/msm/atomic: switch to drm_atomic_helper_check

Robert Tarasov (2):
      drm/udl: Fixed problem with UDL adpater reconnection
      drm/udl: Reading all edid blocks in DRM/UDL driver

Rodrigo Vivi (47):
      drm/i915/cnl: Introduce initial Cannonlake Workarounds.
      drm/i915/cnl: Add WaDisableReplayBufferBankArbitrationOptimization
      drm/i915/cnl: WaDisableEnhancedSBEVertexCaching
      drm/i915/cnl: Apply large line width optimization
      drm/i915/cfl: Coffee Lake works on Kaby Lake PCH.
      drm/i915/cnl: WaForceContextSaveRestoreNonCoherent
      drm/tve200: Pass NULL format_modifier to drm_simple_display_pipe_init
      drm/i915: Stop using long platform names on clock gating functions.
      drm/i915/cnl: WA FtrEnableFastAnisoL1BankingFix
      drm/i915/cnl: WaDisableI2mCycleOnWRPort
      drm/i915/cnl: Avoid ioremap_wc on Cannonlake as well.
      drm/i915: Introduce intel_ddi_dp_level.
      drm/i915: decouple gen9 and gen10 dp signal levels.
      drm/i915: Align vswing sequences with old ddi buffer registers.
      drm/i915: Enable voltage swing before enabling DDI_BUF_CTL.
      drm/i915/cnl: Move voltage check into ddi buf trans functions.
      drm/i915/cnl: Move ddi buf trans related functions up.
      drm/i915/cnl: Fix DDI hdmi level selection.
      drm/i915/cnl: Fix DP max voltage
      drm/i915/cnp: Wa 1181: Fix Backlight issue
      drm/i915: Display WA #1133 WaFbcSkipSegments:cnl, glk
      drm/i915/cnl: WaThrottleEUPerfToAvoidTDBackPressure:cnl(pre-prod)
      drm/i915/psr: Avoid any PSR stuff on platforms without support.
      drm/i915/psr: vfunc for disabling source.
      drm/i915/psr: hsw_psr_activate.
      drm/i915/psr: Add activate vfunc.
      drm/i915/psr: Unify VSC setup functions.
      drm/i915/psr: Re-create a hsw_psr_enable_source.
      drm/i915/psr: Move hsw_enable_source after enabling sink.
      drm/i915/psr: Re-org Activate after enable
      drm/i915/psr: Add setup VSC vfunc.
      drm/i915/psr: Add enable_sink vfunc.
      drm/i915/psr: Add enable_source vfunc.
      drm/i915: Refresh VLV/CHV PSR comments on HW PSR_state machine.
      drm/i915/cnp: Don't touch other PCH clock gating bits.
      drm/i915/cnp: Display Wa #1179: WaHardHangonHotPlug
      drm/i915/cfl: Remove alpha support protection.
      drm/i915: Avoid using dev_priv->info.gen directly.
      drm/i915: Also discard second CRC on gen8+ platforms.
      drm/i915/skl: Fix has_ipc on skl and document WaDisableIPC.
      drm/i915: Organize GEN features inheritance.
      drm/i915: Organize GLK_COLORS.
      drm/i915/cnl: WaRsUseTimeoutMode
      drm/i915/cnl: Fix PLL mapping.
      drm/i915/cnl: Fix PLL initialization for HDMI.
      drm/i915: Let's use more enum intel_dpll_id pll_id.
      drm/i915/cnl: Map VBT DDC Pin to BSpec DDC Pin.

Roger He (3):
      drm/amd/amdgpu: fix BANK_SELECT on Vega10 (v2)
      drm/amdgpu: handle all fragment sizes v4
      drm/amd/amdgpu: fix evicted VRAM bo adjudgement condition

Roman Kapl (1):
      drm/radeon: fix atombios on big endian

Sagar Arun Kamble (15):
      drm/i915/huc: Reorganize HuC authentication
      drm/i915: Move i915_gem_restore_fences to i915_gem_resume
      drm/i915/uc: Create intel_uc_init_mmio
      drm/i915: Separate RPS and RC6 handling for gen6+
      drm/i915: Remove superfluous IS_BDW checks and non-BDW changes
from gen8_enable_rps
      drm/i915: Separate RPS and RC6 handling for BDW
      drm/i915: Separate RPS and RC6 handling for VLV
      drm/i915: Separate RPS and RC6 handling for CHV
      drm/i915: Name i915_runtime_pm structure in dev_priv as "runtime_pm"
      drm/i915: Move rps.hw_lock to dev_priv and s/hw_lock/pcu_lock
      drm/i915: Name structure in dev_priv that contains RPS/RC6 state
as "gt_pm"
      drm/i915: Rename intel_enable_rc6 to intel_rc6_enabled
      drm/i915: Create generic function to setup LLC ring frequency table
      drm/i915: Create generic functions to control RC6, RPS
      drm/i915: Introduce separate status variable for RC6 and LLC
ring frequency setup

Samuel Li (1):
      drm/amdgpu: Add gem_prime_mmap support

Sandy Huang (2):
      dt-bindings: display: Add Document for Rockchip Soc LVDS
      drm/rockchip: Add support for Rockchip Soc LVDS

Satyajit Sahu (1):
      drm/amd/powerplay: get the temperature on CZ

Sean Keely (2):
      drm/amdkfd: Short cut for kfd_wait_on_events without waiting
      drm/amdkfd: Fix scheduler race in kfd_wait_on_events sleep loop

Sean Paul (2):
      drm/todo: Add s/dev_*/DRM_DEV_*/ coversion to TODO
      drm/rockchip: Fix uninitialized use of ret

Shashank Sharma (3):
      drm: Add retries for lspcon mode detection
      drm/i915: Don't give up waiting on INVALID_MODE
      drm/i915: Add retries for LSPCON detection

Srishti Sharma (1):
      drm/virtio: Replace instances of reference/unreference with get/put

Stephen Boyd (1):
      drm/tilcdc: Remove redundant OF_DETACHED flag setting

Sylwester Nawrocki (1):
      drm: exynos: Add driver for HDMI audio interface

Thierry Reding (24):
      MAINTAINERS: drm/panel is now maintained in drm-misc
      drm/vtables: Fix typo
      drm/atomic: Fix typo in kerneldoc
      drm/scdc-helper: Remove gratuitous blank lines
      drm/scdc-helper: Use consistent error reporting
      drm/scdc-helper: Use consistent spelling for TMDS
      drm/amdgpu: Use correct path to trace include
      drm/radeon: Use correct path to trace include
      drm/i915: Use correct path to trace include
      drm: Use correct path to trace include
      drm/armada: Use correct path to trace include
      drm/vc4: Use correct path to trace include
      drm/atomic-helper: Fix typo
      drm/atomic-helper: Fix reference to drm_crtc_send_vblank_event()
      gpu: host1x: Use of_device_get_match_data()
      gpu: host1x: syncpt: Request syncpoints per client
      drm/tegra: dc: Use of_device_get_match_data()
      drm/tegra: hdmi: Use of_device_get_match_data()
      drm/tegra: sor: Use of_device_get_match_data()
      drm/tegra: vic: Use of_device_get_match_data()
      drm/tegra: dc: Move some declarations to dc.h
      drm/tegra: dc: Simplify atomic plane helper functions
      drm/tegra: dc: Make sure to set the module clock rate
      drm/tegra: dc: Perform a complete reset sequence

Thomas Meyer (1):
      drm/rockchip: Cocci spatch "vma_pages"

Tom St Denis (68):
      drm/ttm: Add DMA map/unmap tracepoint (v3)
      drm/amd/amdgpu: Remove AMDGPU tracepoint and use new TTM tracepoint (v2)
      drm/ttm: Add helper functions to populate/map in one call (v2)
      drm/amd/amdgpu: Use new TTM populate/map helper function
      drm/radeon: use new TTM populate/dma map helper functions
      drm/ttm: Remove needless 'extern' on functions in header.
      drm/amd/amdgpu: Add write() method to VRAM debugfs entry (v2)
      drm/amd/amdgpu: Tidy up register list formatting.
      drm/amd/amdgpu: Tidy up gfx_v9_0_ngg_en()
      drm/amd/amdgpu: Tidy up gfx_v9_0_enable_save_restore_machine()
      drm/amd/amdgpu: Tidy up gfx_v9_0_enable_sck_slow_down_on_power_up()
      drm/amd/amdgpu: Tidy up gfx_v9_0_enable_sck_slow_down_on_power_down()
      drm/amd/amdgpu: Tidy up gfx_v9_0_enable_cp_power_gating()
      drm/amd/amdgpu: Tidy up gfx_v9_0_enable_gfx_cg_power_gating()
      drm/amd/amdgpu: Tidy up gfx_v9_0_enable_gfx_pipeline_powergating()
      drm/amd/amdgpu: Tidy up gfx_v9_0_enable_gfx_static_mg_power_gating()
      drm/amd/amdgpu: Tidy up gfx_v9_0_enable_gfx_dynamic_mg_power_gating()
      drm/amd/amdgpu: Tidy up gfx_v9_0_rlc_stop()
      drm/amd/amdgpu: Fix indentation in gfx_v9_0_mqd_init()
      drm/amd/amdgpu: Simplify gfx_v9_0_wait_for_idle()
      drm/amd/amdgpu: Support full range of GFX ring names
      drm/amd/amdgpu: Simplify gmc_v9_0_vm_fault_interrupt_state()
      drm/amd/amdgpu: Tidy up gmc_v9_0_gart_enable()
      drm/amd/amdgpu: Tidy up gmc_v9_0_hw_init()
      drm/amd/amdgpu: Cleanup gmc_v9_0_suspend()
      drm/ttm: Fix trace include path (v2)
      drm/ttm: Fix configuration error around populate_and_map() functions
      drm/amd/powerplay:  Fix psm_set_user_performance_state()
      drm/amd/powerplay: Simplify
vega10_patch_voltage_dependency_tables_with_lookup_table()
      drm/amd/powerplay: Simplify vega10_acg_disable()
      drm/amd/powerplay: Introduction of bitmask macros for registers
      drm/amd/powerplay: Port vega10_didt_set_mask() to new macros
      drm/amd/powerplay: Add PP_CAP() macro
      drm/amd/powerplay: Port vega10_hwmgr.c over to PP_CAP
      drm/amd/powerplay: Port vega10_powertune.c over to PP_CAP
      drm/amd/powerplay: Port vega10_thermal.c over to PP_CAP
      drm/amd/powerplay: Tidy up vega10_fan_ctrl_get_fan_speed_rpm()
      drm/amd/powerplay: Tidy up vega10_fan_ctrl_set_static_mode()
      drm/amd/powerplay: Tidy up vega10_fan_ctrl_set_default_mode()
      drm/amd/powerplay: Tidy up vega10_fan_ctrl_set_fan_speed_percent()
      drm/amd/powerplay: Fix indentation in
vega10_fan_ctrl_reset_fan_speed_to_default()
      drm/amd/powerplay: Tidy up vega10_fan_ctrl_set_fan_speed_rpm()
      drm/amd/powerplay: Tidy up vega10_thermal_set_temperature_range()
      drm/amd/powerplay: Tidy up vega10_thermal_initialize()
      drm/amd/powerplay: Tidy up smu7_fan_ctrl_get_fan_speed_info()
      drm/amd/powerplay: Tidy up smu7_fan_ctrl_get_fan_speed_rpm()
      drm/amd/powerplay: Make use of PP_CAP in smu7_thermal.c
      drm/amd/powerplay: Remove unneeded return from pp_smu7_thermal_fini()
      drm/amd/powerplay: Make use of PP_CAP in smu7_powertune.c
      drm/amd/powerplay: Tidy up smu7_enable_didt()
      drm/amd/powerplay: lock grbm_gfx index when changing instance
      drm/amd/amdgpu: Change vram debugfs to NO_KIQ for VM environments
      drm/amd/amdgpu: Support VM environments in amdgpu_ttm_access_memory()
      drm/amd/amdgpu: Fold TTM debugfs entries into array (v2)
      drm/amd/amdgpu: add support for iova_to_phys to replace TTM trace (v5)
      drm/amd/amdgpu: remove usage of ttm trace
      drm/ttm: Remove TTM dma tracepoint since it's not required anymore
      drm/amd/amdgpu: Partial revert of iova debugfs
      drm/amd/powerplay:  Partially revert changes and fix
smu7_notify_smc_display()
      drm/ttm: Fix unused variables with huge page support
      drm/amd/powerplay: Tidy up cz_start_dpm()
      drm/amd/powerplay: Tidy up cz_dpm_powerdown_uvd()
      drm/amd/powerplay: Tidy up cz_dpm_powerup_uvd()
      drm/amd/powerplay: Tidy up cz_dpm_update_uvd_dpm()
      drm/amd/powerplay: Tidy up cz_dpm_update_vce_dpm()
      drm/amd/powerplay: Tidy up cz_dpm_powerdown_vce()
      drm/amd/powerplay: Tidy up cz_dpm_powerup_vce()
      drm/amd/amdgpu: Remove workaround for suspend/resume in uvd7

Tvrtko Ursulin (9):
      lib/scatterlist: Fix offset type in sg_alloc_table_from_pages
      lib/scatterlist: Avoid potential scatterlist entry overflow
      lib/scatterlist: Introduce and export __sg_alloc_table_from_pages
      drm/i915: Use __sg_alloc_table_from_pages for userptr allocations
      tools/testing/scatterlist: Test new __sg_alloc_table_from_pages
      drm/i915: Add IS_PLATFORM macro
      drm/i915: Compact device info access by a small re-ordering
      drm/i915: Allow optimized platform checks
      drm/i915: Fixup userptr mmu notifier registration error handling

Uma Shankar (2):
      Revert "drm/i915/bxt: Disable device ready before shutdown command"
      drm/i915: Enable scanline read based on frame timestamps

Vijendar Mukunda (2):
      drm/amd/amdgpu: Added asic_type as ACP DMA driver platform data
      ASoC: AMD: Added asic_type as ACP DMA driver platform data

Ville Syrjälä (89):
      drm/dp: Add defines for DP SDP types
      drm/i915: Check has_infoframes when enabling infoframes
      drm/i915: Disable infoframes when shutting down DDI HDMI
      drm/i915: Move infoframe vfuncs into intel_digital_port
      drm/i915: Init infoframe vfuncs for DP encoders as well
      drm/i915: Plumb crtc_state to PSR enable/disable
      drm/i915: Constify states passed to enable/disable/etc. encoder hooks
      drm/i915: Beef up the IPS vs. CRC workaround
      drm/i915: Treat fb->offsets[] as a raw byte offset instead of a
linear offset
      drm/i915: Skip fence alignemnt check for the CCS plane
      drm/i915: Track minimum acceptable cdclk instead of "minimum dotclock"
      drm/i915: Consolidate max_cdclk_freq check in
intel_crtc_compute_min_cdclk()
      drm/i915: Pass the new crtc state to color management code
      drm/i915: Pass the crtc state explicitly to intel_pipe_update_start/end()
      drm/i915: Eliminate obj->state usage in g4x/vlv/chv wm computation
      drm/i915: Pass proper old/new states to
intel_plane_atomic_check_with_state()
      drm/i915: Eliminate obj->state usage from pre/post plane update
      drm/i915: Eliminate crtc->state usage from intel_update_pipe_config()
      drm/i915: Eliminate crtc->state usage from
intel_atomic_commit_tail and .crtc_update()
      drm/i915: Make i9xx_load_ycbcr_conversion_matrix() static
      drm/i915: Make i2c lock ops static
      drm/i915: Fix enum pipe vs. enum transcoder for the PCH transcoder
      drm/i915: Wake up the device for the fbdev setup
      drm/i915: Add __rcu to radix tree slot pointer
      drm/i915: io unmap functions want __iomem
      drm/i915: Constify load detect mode
      drm/i915: Annotate user relocs with __user
      i915: Fix obj size vs. alignment for drm_pci_alloc()
      drm: Make syncobj import/export functions static
      drm: Drop drm_get_link_status_name()
      drm: Make __drm_object_property_get_value() static
      drm/i915: Nuke some bogus tabs from the pcode defines
      drm/i915: Name the IPS_PCODE_CONTROL bit
      drm/i915: Switch over to the LLC/eLLC hotspot avoidance hash mode for CCS
      drm/i915: Don't enable/unmask flip interrupts
      drm/i915: Clear pipestat consistently
      drm/i915: s/GEN5/GEN3/
      drm/i915: Use GEN3_IRQ_RESET/INIT on gen3/4
      drm/i915: Introduce GEN2_IRQ_RESET/INIT
      drm/i915: Setup EMR first on all gen2-4
      drm/i915: Eliminate PORT_HOTPLUG_EN setup from gen3/4 irq_postinstall
      drm/i915: Unify the appearance of gen3/4 irq_postistall hooks
      drm/i915: Remove NULL dev_priv checks from irq_uninstall
      drm/i915: Extract PIPESTAT irq handling into separate functions
      drm/i915: Rewrite GMCH irq handlers to avoid loops
      drm/i915: Gen3 HWSTAM is actually 32 bits
      drm/i915: Mask everything in ring HWSTAM on gen6+ in ringbuffer mode
      drm/i915: Clean up the HWSTAM mess
      drm/i915: Remove duplicated irq_preinstall/uninstall hooks
      drm/i915: Reinstate GMBUS and AUX interrupts on gen4/g4x
      drm/i915: Replace some spaces with tabs
      drm/i915: Shrink bxt_ddi_buf_trans
      drm/i915: Shrink cnl_ddi_buf_trans
      drm/i915: Drop useless HAS_PSR() check
      drm/i915: Reorganize .disable hooks for pre-DDI DP
      drm/i915: Don't rmw PIPESTAT enable bits
      drm/i915: Read timings from the correct transcoder in
intel_crtc_mode_get()
      drm/i915: Use intel_get_pipe_timings() and
intel_mode_from_pipe_config() in intel_crtc_mode_get()
      drm/i915: Use enum pipe for PCH transcoders
      drm/i915: Parametrize CBR_DPLLBMD_PIPE defines
      drm/i915: Pass crtc state to i9xx_enable_pll()
      drm/i915: Nuke the bogus kernel doc for i9xx_disable_pll()
      drm/i915: Reuse normal state readout for LVDS/DVO fixed mode
      drm/i915: Allow PCH platforms fall back to BIOS LVDS mode
      drm/vblank: Fix flip event vblank count
      drm/i915: Start tracking PSR state in crtc state
      drm: Add missing __user annotation to drm_syncobj_array_find()
      drm/i915: Dump 'output_types' in crtc state dump
      drm/i915: Extract intel_ddi_clk_disable()
      drm/i915: Extract intel_disable_ddi_buf()
      drm/i915: Inline the required bits of intel_ddi_post_disable()
into intel_ddi_fdi_post_disable()
      drm/i915: Split intel_ddi_post_disable() into DP vs. HDMI variants
      drm/i915: Remove useless eDP check from intel_ddi_pre_enable_dp()
      drm/i915: Split intel_disable_ddi() into DP vs. HDMI variants
      drm/i915: Plumb crtc_state etc. directly to
intel_ddi_pre_enable_{dp,hdmi}()
      drm/i915: Split intel_enable_ddi() into DP and HDMI variants
      drm/i915: Remove mostly duplicated video DIP handling from PSR code
      drm/i915: Relocate intel_ddi_get_buf_trans_*() functions
      drm/i915: Extract intel_ddi_get_buf_trans_hdmi()
      drm/i915: Pass the encoder type explicitly to skl_set_iboost()
      drm/i915: Pass the level to intel_prepare_hdmi_ddi_buffers()
      drm/i915: Integrate BXT into intel_ddi_dp_voltage_max()
      drm/i915: Pass encoder type to cnl_ddi_vswing_sequence() explicitly
      drm/i915: Kill off the BXT buf_trans default_index
      drm/i915: Centralize the SKL DDI A/E vs. B/C/D buf trans handling
      drm/i915: Unify error handling for missing DDI buf trans tables
      drm/i915: Drop the redundant hdmi prefix/suffix from a lot of variables
      drm/vblank: Tune drm_crtc_accurate_vblank_count() WARN down to a debug
      drm/i915: Move init_clock_gating() back to where it was

Weinan Li (1):
      drm/i915: enable to read CSB and CSB write pointer from HWSP in GVT-g VM

Xiangliang.Yu (3):
      drm/amdgpu/sdma3: Enable sdma wptr polling for SRIOV
      drm/amdgpu/sdma3: set wptr shadow atomically
      drm/amdgpu: Fix driver reloading failure

Yair Shachar (1):
      drm/amdkfd: Fix debug unregister procedure on process termination

Yong Zhao (18):
      drm/amdkfd: Reorganize kfd resume code
      drm/amdkfd: Fix suspend/resume issue on Carrizo v2
      drm/amdkfd: Rectify the jiffies calculation error with milliseconds v2
      drm/amdkfd: Use VMID bitmap from KGD v2
      drm/amdkfd: Reuse CHIP_* from amdgpu v2
      drm/amdkfd: Drop _nocpsch suffix from shared functions
      drm/amdgpu: Correct bytes limit for SDMA 3.0 copy and fill
      drm/amdgpu: Fix a bug in amdgpu_fill_buffer()
      drm/amdgpu: Add copy_pte_num_dw member in amdgpu_vm_pte_funcs
      drm/amdkfd: Avoid name confusion involved in queue unmapping
      drm/amdkfd: move locking outside of unmap_queues_cpsch
      drm/amdkfd: Pass filter params to unmap_queues_cpsch
      drm/amdkfd: Avoid submitting an unnecessary packet to HWS
      drm/amdkfd: Compress unnecessary function parameters
      drm/amdgpu: Set the correct value for PDEs/PTEs of ATC memory on Raven
      drm/amdkfd: Clean up the data structure in kfd_process
      drm/amdkfd: Avoid calling amd_iommu_unbind_pasid() when suspending
      drm/amdkfd: Cleanup DQM ASIC-specific ops

Zhi Wang (5):
      drm/i915: Fix the missing PPAT cache attributes on CNL
      drm/i915: Factor out setup_private_pat()
      drm/i915: Introduce private PAT management
      drm/i915: Remove the "INDEX" suffix from PPAT marcos
      drm/i915: Return the correct score in i915_ppat_get()

benjamin.gaignard@linaro.org (5):
      drm/bridge: make drm_panel_bridge_remove more robust
      drm/drm_of: add drm_of_panel_bridge_remove function
      drm/stm: ltdc: remove bridge from driver internal structure
      drm/vc4: remove bridge from driver internal structure
      drm/bridge/synopsys: dsi :remove is_panel_bridge

fred gao (6):
      drm/i915/gvt: Separate cmd scan from request allocation
      drm/i915/gvt: Add error handling for intel_gvt_scan_and_shadow_workload
      drm/i915/gvt: Refine error handling for prepare_execlist_workload
      drm/i915/gvt: Refine error handling for intel_vgpu_pin_mm
      drm/i915/gvt: Refine error handling in dispatch_workload
      drm/i915/gvt: Refine error handling for perform_bb_shadow

ozeng (1):
      drm/amdgpu: Fixed a potential circular lock

pding (4):
      drm/amdgpu: report more amdgpu_fence_info
      drm/amdgpu: busywait KIQ register accessing (v4)
      drm/amdgpu: merge bios post checking functions
      drm/amdgpu: use irq-safe lock for kiq->ring_lock

shaoyunl (1):
      drm/amdkfd: Improve multiple SDMA queues support per process

vathsala nagaraju (2):
      drm/dp: Add defines for latency in sink
      drm/i915/psr: Set frames before SU entry for psr2

 Documentation/admin-guide/kernel-parameters.txt    |     2 +-
 .../bindings/display/bridge/adi,adv7511.txt        |     4 +
 .../devicetree/bindings/display/bridge/sii9234.txt |    49 +
 .../devicetree/bindings/display/faraday,tve200.txt |    54 +
 .../devicetree/bindings/display/msm/dsi.txt        |    36 +-
 .../devicetree/bindings/display/msm/edp.txt        |    20 +-
 .../devicetree/bindings/display/msm/hdmi.txt       |     8 +-
 .../devicetree/bindings/display/msm/mdp5.txt       |    32 +-
 .../bindings/display/panel/orisetech,otm8009a.txt  |    21 +
 .../panel/raspberrypi,7inch-touchscreen.txt        |    49 +
 .../bindings/display/panel/samsung,s6e63j0x03.txt  |    24 +
 .../bindings/display/panel/seiko,43wvf1g.txt       |    23 +
 .../display/panel/toshiba,lt089ac29000.txt         |     8 +
 .../bindings/display/rockchip/rockchip-lvds.txt    |    99 +
 .../bindings/display/sunxi/sun4i-drm.txt           |    12 +
 .../display/tegra/nvidia,tegra20-host1x.txt        |     4 +
 .../devicetree/bindings/vendor-prefixes.txt        |     1 +
 Documentation/gpu/drm-uapi.rst                     |    55 +
 Documentation/gpu/index.rst                        |     1 +
 Documentation/gpu/todo.rst                         |    55 +-
 Documentation/gpu/tve200.rst                       |     6 +
 MAINTAINERS                                        |    13 +-
 arch/powerpc/kernel/pci-common.c                   |    12 -
 drivers/dma-buf/dma-buf.c                          |     2 +-
 drivers/dma-buf/reservation.c                      |    56 +-
 drivers/dma-buf/sw_sync.c                          |    10 +-
 drivers/gpu/drm/Kconfig                            |     7 +-
 drivers/gpu/drm/Makefile                           |     8 +-
 drivers/gpu/drm/amd/amdgpu/Makefile                |     4 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu.h                |   121 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c            |   161 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c  |    12 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c  |    12 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c       |    56 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.c   |    22 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c            |   153 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c     |    22 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c             |   386 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c            |   114 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c         |   265 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_dpm.c            |     4 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_dpm.h            |   169 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c            |    27 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c             |     6 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c          |    63 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c           |    13 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c            |   128 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c            |    29 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c        |     8 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ih.c             |    82 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_ih.h             |    12 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_job.c            |    18 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c            |    23 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c             |   108 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_mn.h             |    52 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_object.c         |   122 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_object.h         |    29 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c             |   329 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.c      |    66 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_prime.c          |    37 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c            |    56 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h            |     6 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_queue_mgr.c      |     8 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c           |   104 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h           |    24 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c          |   109 +
 .../eventmgr/eventinit.h => amdgpu/amdgpu_sched.h} |    18 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c           |     7 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_sync.h           |     3 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h          |    58 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_trace_points.c   |    19 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c            |   498 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h            |    32 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c          |    70 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c            |    20 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c            |    13 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_vf_error.c       |    61 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_vf_error.h       |     5 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c           |   109 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_virt.h           |   191 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c             |   688 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h             |    68 +-
 drivers/gpu/drm/amd/amdgpu/atom.c                  |     5 +-
 drivers/gpu/drm/amd/amdgpu/atom.h                  |     1 +
 drivers/gpu/drm/amd/amdgpu/ci_dpm.c                |   109 +-
 drivers/gpu/drm/amd/amdgpu/cik_dpm.h               |     3 +-
 drivers/gpu/drm/amd/amdgpu/cik_ih.c                |    29 +
 drivers/gpu/drm/amd/amdgpu/cik_sdma.c              |     5 +
 drivers/gpu/drm/amd/amdgpu/cz_ih.c                 |    29 +
 drivers/gpu/drm/amd/amdgpu/dce_virtual.c           |     4 +-
 drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c              |   349 +-
 drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c              |   373 +-
 drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.c           |     6 +
 drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c              |     4 +-
 drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c              |     4 +-
 drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c              |     4 +-
 drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c              |   104 +-
 drivers/gpu/drm/amd/amdgpu/iceland_ih.c            |    29 +
 drivers/gpu/drm/amd/amdgpu/kv_dpm.c                |    68 +-
 drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.c            |    11 +-
 drivers/gpu/drm/amd/amdgpu/mxgpu_ai.c              |     6 +
 drivers/gpu/drm/amd/amdgpu/mxgpu_ai.h              |     2 +-
 drivers/gpu/drm/amd/amdgpu/mxgpu_vi.h              |     2 +-
 drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c             |    44 +-
 drivers/gpu/drm/amd/amdgpu/nbio_v6_1.h             |     4 +-
 drivers/gpu/drm/amd/amdgpu/nbio_v7_0.c             |    44 +-
 drivers/gpu/drm/amd/amdgpu/nbio_v7_0.h             |     4 +-
 drivers/gpu/drm/amd/amdgpu/psp_v10_0.c             |    52 +-
 drivers/gpu/drm/amd/amdgpu/psp_v10_0.h             |     4 +
 drivers/gpu/drm/amd/amdgpu/psp_v3_1.c              |    63 +-
 drivers/gpu/drm/amd/amdgpu/psp_v3_1.h              |     3 +
 drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c             |    25 +-
 drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c             |    52 +-
 drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c             |    18 +-
 drivers/gpu/drm/amd/amdgpu/si_dma.c                |     5 +
 drivers/gpu/drm/amd/amdgpu/si_dpm.c                |    83 +-
 drivers/gpu/drm/amd/amdgpu/si_dpm.h                |     1 +
 drivers/gpu/drm/amd/amdgpu/si_ih.c                 |    14 +
 drivers/gpu/drm/amd/amdgpu/soc15.c                 |    51 +-
 drivers/gpu/drm/amd/amdgpu/tonga_ih.c              |    29 +
 drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c              |   499 +-
 drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c              |    18 +-
 drivers/gpu/drm/amd/amdgpu/vce_v4_0.c              |     4 -
 drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c              |     2 +-
 drivers/gpu/drm/amd/amdgpu/vega10_ih.c             |    97 +-
 drivers/gpu/drm/amd/amdgpu/vi.c                    |    22 +-
 drivers/gpu/drm/amd/amdgpu/vid.h                   |    10 +
 drivers/gpu/drm/amd/amdkfd/Kconfig                 |     2 +-
 drivers/gpu/drm/amd/amdkfd/cik_event_interrupt.c   |     8 +-
 drivers/gpu/drm/amd/amdkfd/cik_int.h               |     3 +-
 drivers/gpu/drm/amd/amdkfd/kfd_chardev.c           |    12 +-
 drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.c            |    14 +-
 drivers/gpu/drm/amd/amdkfd/kfd_device.c            |   115 +-
 .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c  |   459 +-
 .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.h  |    24 +-
 .../drm/amd/amdkfd/kfd_device_queue_manager_cik.c  |    20 +-
 .../drm/amd/amdkfd/kfd_device_queue_manager_vi.c   |    20 +-
 drivers/gpu/drm/amd/amdkfd/kfd_doorbell.c          |    50 +-
 drivers/gpu/drm/amd/amdkfd/kfd_events.c            |   615 +-
 drivers/gpu/drm/amd/amdkfd/kfd_events.h            |    18 +-
 drivers/gpu/drm/amd/amdkfd/kfd_interrupt.c         |    83 +-
 drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c      |    20 +-
 drivers/gpu/drm/amd/amdkfd/kfd_module.c            |     6 -
 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.c       |     3 +
 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_cik.c   |    34 +-
 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_vi.c    |     7 +-
 drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c    |    29 +-
 drivers/gpu/drm/amd/amdkfd/kfd_pasid.c             |    90 +-
 drivers/gpu/drm/amd/amdkfd/kfd_priv.h              |   128 +-
 drivers/gpu/drm/amd/amdkfd/kfd_process.c           |   175 +-
 .../gpu/drm/amd/amdkfd/kfd_process_queue_manager.c |    73 +-
 drivers/gpu/drm/amd/include/amd_shared.h           |   129 +-
 .../amd/include/asic_reg/smu/smu_7_0_1_sh_mask.h   |     2 +
 .../gpu/drm/amd/include/asic_reg/uvd/uvd_6_0_d.h   |    15 +
 drivers/gpu/drm/amd/include/atombios.h             |     1 +
 drivers/gpu/drm/amd/include/atomfirmware.h         |    19 +-
 drivers/gpu/drm/amd/include/cgs_common.h           |    32 +-
 drivers/gpu/drm/amd/include/kgd_kfd_interface.h    |     6 +
 drivers/gpu/drm/amd/include/linux/chash.h          |   366 +
 drivers/gpu/drm/amd/include/v9_structs.h           |    12 +-
 drivers/gpu/drm/amd/include/vi_structs.h           |   259 -
 drivers/gpu/drm/amd/lib/Kconfig                    |    28 +
 drivers/gpu/drm/amd/lib/Makefile                   |    11 +
 drivers/gpu/drm/amd/lib/chash.c                    |   638 +
 drivers/gpu/drm/amd/powerplay/Makefile             |     5 +-
 drivers/gpu/drm/amd/powerplay/amd_powerplay.c      |   528 +-
 drivers/gpu/drm/amd/powerplay/eventmgr/Makefile    |    11 -
 .../drm/amd/powerplay/eventmgr/eventactionchains.c |   291 -
 .../drm/amd/powerplay/eventmgr/eventactionchains.h |    62 -
 drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.c |   195 -
 .../drm/amd/powerplay/eventmgr/eventmanagement.c   |   215 -
 .../drm/amd/powerplay/eventmgr/eventmanagement.h   |    59 -
 drivers/gpu/drm/amd/powerplay/eventmgr/eventmgr.c  |   104 -
 .../drm/amd/powerplay/eventmgr/eventsubchains.c    |   410 -
 .../drm/amd/powerplay/eventmgr/eventsubchains.h    |   100 -
 .../gpu/drm/amd/powerplay/eventmgr/eventtasks.c    |   445 -
 .../gpu/drm/amd/powerplay/eventmgr/eventtasks.h    |    89 -
 drivers/gpu/drm/amd/powerplay/eventmgr/psm.c       |   119 -
 drivers/gpu/drm/amd/powerplay/hwmgr/Makefile       |     5 +-
 .../drm/amd/powerplay/hwmgr/cz_clockpowergating.c  |    46 +-
 .../drm/amd/powerplay/hwmgr/cz_clockpowergating.h  |     4 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c     |   640 +-
 .../gpu/drm/amd/powerplay/hwmgr/functiontables.c   |   161 -
 .../gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c  |   151 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c        |   417 +-
 .../gpu/drm/amd/powerplay/hwmgr/pp_overdriver.c    |  2489 ++--
 .../gpu/drm/amd/powerplay/hwmgr/pp_overdriver.h    |     4 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/pp_psm.c       |   250 +
 .../powerplay/{eventmgr/psm.h => hwmgr/pp_psm.h}   |    28 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/ppatomctrl.c   |    88 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/ppatomctrl.h   |     8 +-
 .../amd/powerplay/hwmgr/process_pptables_v1_0.c    |    20 -
 .../gpu/drm/amd/powerplay/hwmgr/processpptables.c  |   157 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.c     |   510 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.h     |     6 +-
 .../amd/powerplay/hwmgr/smu7_clockpowergating.c    |    66 +-
 .../amd/powerplay/hwmgr/smu7_clockpowergating.h    |     4 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c   |   473 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.h   |     9 +-
 .../gpu/drm/amd/powerplay/hwmgr/smu7_powertune.c   |   110 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.c |   183 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.h |     5 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c |   499 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.h |     1 -
 .../gpu/drm/amd/powerplay/hwmgr/vega10_powertune.c |   129 +-
 .../amd/powerplay/hwmgr/vega10_processpptables.c   |    35 +-
 .../gpu/drm/amd/powerplay/hwmgr/vega10_thermal.c   |   281 +-
 .../gpu/drm/amd/powerplay/hwmgr/vega10_thermal.h   |    14 +-
 drivers/gpu/drm/amd/powerplay/inc/amd_powerplay.h  |   152 +-
 drivers/gpu/drm/amd/powerplay/inc/eventmanager.h   |   109 -
 drivers/gpu/drm/amd/powerplay/inc/eventmgr.h       |   124 -
 drivers/gpu/drm/amd/powerplay/inc/fiji_pwrvirus.h  | 10299 ----------------
 .../gpu/drm/amd/powerplay/inc/hardwaremanager.h    |     6 +-
 drivers/gpu/drm/amd/powerplay/inc/hwmgr.h          |   200 +-
 .../gpu/drm/amd/powerplay/inc/polaris10_pwrvirus.h | 11792 +++----------------
 drivers/gpu/drm/amd/powerplay/inc/pp_instance.h    |     7 -
 drivers/gpu/drm/amd/powerplay/inc/rv_ppsmc.h       |     7 +-
 drivers/gpu/drm/amd/powerplay/inc/smumgr.h         |   211 +-
 drivers/gpu/drm/amd/powerplay/inc/vega10_ppsmc.h   |     5 +-
 drivers/gpu/drm/amd/powerplay/smumgr/Makefile      |     6 +-
 .../smumgr/{iceland_smc.c => ci_smumgr.c}          |  2236 ++--
 drivers/gpu/drm/amd/powerplay/smumgr/ci_smumgr.h   |    78 +
 drivers/gpu/drm/amd/powerplay/smumgr/cz_smumgr.c   |   308 +-
 drivers/gpu/drm/amd/powerplay/smumgr/fiji_smc.c    |  2498 ----
 drivers/gpu/drm/amd/powerplay/smumgr/fiji_smc.h    |    53 -
 drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c |  2537 +++-
 drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.h |     9 +
 .../gpu/drm/amd/powerplay/smumgr/iceland_smumgr.c  |  2567 +++-
 .../gpu/drm/amd/powerplay/smumgr/iceland_smumgr.h  |     2 +-
 .../gpu/drm/amd/powerplay/smumgr/polaris10_smc.c   |  2364 ----
 .../drm/amd/powerplay/smumgr/polaris10_smumgr.c    |  2380 +++-
 drivers/gpu/drm/amd/powerplay/smumgr/rv_smumgr.c   |   130 +-
 drivers/gpu/drm/amd/powerplay/smumgr/rv_smumgr.h   |     8 +-
 drivers/gpu/drm/amd/powerplay/smumgr/smu7_smumgr.c |   263 +-
 drivers/gpu/drm/amd/powerplay/smumgr/smu7_smumgr.h |    40 +-
 drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c      |   261 +-
 drivers/gpu/drm/amd/powerplay/smumgr/tonga_smc.c   |  3275 -----
 drivers/gpu/drm/amd/powerplay/smumgr/tonga_smc.h   |    62 -
 .../gpu/drm/amd/powerplay/smumgr/tonga_smumgr.c    |  3181 ++++-
 .../gpu/drm/amd/powerplay/smumgr/tonga_smumgr.h    |    20 +-
 .../gpu/drm/amd/powerplay/smumgr/vega10_smumgr.c   |   194 +-
 .../gpu/drm/amd/powerplay/smumgr/vega10_smumgr.h   |    16 +-
 drivers/gpu/drm/amd/scheduler/gpu_scheduler.c      |    66 +-
 drivers/gpu/drm/amd/scheduler/gpu_scheduler.h      |    19 +-
 drivers/gpu/drm/arc/arcpgu_drv.c                   |     3 +-
 drivers/gpu/drm/arm/hdlcd_drv.c                    |     3 +-
 drivers/gpu/drm/arm/malidp_drv.c                   |     3 +-
 drivers/gpu/drm/armada/Makefile                    |     2 -
 drivers/gpu/drm/armada/armada_510.c                |     1 -
 drivers/gpu/drm/armada/armada_crtc.c               |    22 +-
 drivers/gpu/drm/armada/armada_drv.c                |     5 +-
 drivers/gpu/drm/armada/armada_fb.c                 |     9 +-
 drivers/gpu/drm/armada/armada_fbdev.c              |     7 +-
 drivers/gpu/drm/armada/armada_gem.c                |    49 +-
 drivers/gpu/drm/armada/armada_gem.h                |     4 -
 drivers/gpu/drm/armada/armada_overlay.c            |     4 +-
 drivers/gpu/drm/armada/armada_trace.h              |     2 +-
 drivers/gpu/drm/ast/ast_mode.c                     |     2 +-
 drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c       |     2 +-
 drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.h       |     1 +
 drivers/gpu/drm/bochs/bochs_kms.c                  |     2 +-
 drivers/gpu/drm/bridge/Kconfig                     |    10 +-
 drivers/gpu/drm/bridge/Makefile                    |     1 +
 drivers/gpu/drm/bridge/adv7511/Kconfig             |     8 +
 drivers/gpu/drm/bridge/adv7511/Makefile            |     1 +
 drivers/gpu/drm/bridge/adv7511/adv7511.h           |    45 +-
 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c     |     2 +-
 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c       |   337 +
 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c       |   140 +-
 drivers/gpu/drm/bridge/adv7511/adv7533.c           |    38 +-
 drivers/gpu/drm/bridge/panel.c                     |    10 +-
 drivers/gpu/drm/bridge/sii9234.c                   |   994 ++
 drivers/gpu/drm/bridge/sil-sii8620.c               |    96 +-
 drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c      |   108 +-
 drivers/gpu/drm/cirrus/cirrus_mode.c               |     2 +-
 drivers/gpu/drm/drm_agpsupport.c                   |    45 +-
 drivers/gpu/drm/drm_atomic.c                       |    36 +-
 drivers/gpu/drm/drm_atomic_helper.c                |   325 +-
 drivers/gpu/drm/drm_auth.c                         |    32 +-
 drivers/gpu/drm/drm_bridge.c                       |     7 +-
 drivers/gpu/drm/drm_color_mgmt.c                   |     4 +-
 drivers/gpu/drm/drm_connector.c                    |    26 +-
 drivers/gpu/drm/drm_crtc.c                         |    15 +-
 drivers/gpu/drm/drm_crtc_helper.c                  |     4 +-
 drivers/gpu/drm/drm_crtc_internal.h                |     1 +
 drivers/gpu/drm/drm_debugfs_crc.c                  |     2 +-
 drivers/gpu/drm/drm_dp_dual_mode_helper.c          |    16 +-
 drivers/gpu/drm/drm_dp_helper.c                    |     7 +-
 drivers/gpu/drm/drm_dp_mst_topology.c              |    74 +
 drivers/gpu/drm/drm_drv.c                          |    54 +-
 drivers/gpu/drm/drm_edid.c                         |    15 +
 drivers/gpu/drm/drm_edid_load.c                    |    16 +
 drivers/gpu/drm/drm_encoder.c                      |     7 +-
 drivers/gpu/drm/drm_fb_cma_helper.c                |    77 +-
 drivers/gpu/drm/drm_fb_helper.c                    |     8 +-
 drivers/gpu/drm/drm_framebuffer.c                  |    10 +-
 drivers/gpu/drm/drm_gem.c                          |    17 +-
 drivers/gpu/drm/drm_gem_cma_helper.c               |     2 +-
 drivers/gpu/drm/drm_gem_framebuffer_helper.c       |    86 +-
 drivers/gpu/drm/drm_internal.h                     |     7 +-
 drivers/gpu/drm/drm_ioctl.c                        |     8 +-
 drivers/gpu/drm/drm_kms_helper_common.c            |    28 +
 drivers/gpu/drm/drm_lease.c                        |   767 ++
 drivers/gpu/drm/drm_mode_config.c                  |    23 +-
 drivers/gpu/drm/drm_mode_object.c                  |    37 +-
 drivers/gpu/drm/drm_modeset_lock.c                 |    98 +-
 drivers/gpu/drm/drm_of.c                           |     2 +
 drivers/gpu/drm/drm_pci.c                          |     2 +-
 drivers/gpu/drm/drm_plane.c                        |    89 +-
 drivers/gpu/drm/drm_plane_helper.c                 |     2 +-
 drivers/gpu/drm/drm_prime.c                        |     4 +-
 drivers/gpu/drm/drm_probe_helper.c                 |    21 +-
 drivers/gpu/drm/drm_property.c                     |     6 +-
 drivers/gpu/drm/drm_scdc_helper.c                  |    12 +-
 drivers/gpu/drm/drm_syncobj.c                      |    93 +-
 drivers/gpu/drm/drm_trace.h                        |     2 +-
 drivers/gpu/drm/drm_vblank.c                       |   457 +-
 drivers/gpu/drm/etnaviv/Kconfig                    |     2 -
 drivers/gpu/drm/etnaviv/Makefile                   |     3 +-
 drivers/gpu/drm/etnaviv/etnaviv_buffer.c           |    36 +
 drivers/gpu/drm/etnaviv/etnaviv_cmdbuf.c           |    15 +-
 drivers/gpu/drm/etnaviv/etnaviv_cmdbuf.h           |     6 +-
 drivers/gpu/drm/etnaviv/etnaviv_drv.c              |    43 +
 drivers/gpu/drm/etnaviv/etnaviv_drv.h              |     6 +-
 drivers/gpu/drm/etnaviv/etnaviv_gem.c              |    19 -
 drivers/gpu/drm/etnaviv/etnaviv_gem_submit.c       |    69 +-
 drivers/gpu/drm/etnaviv/etnaviv_gpu.c              |   217 +-
 drivers/gpu/drm/etnaviv/etnaviv_gpu.h              |    13 +-
 drivers/gpu/drm/etnaviv/etnaviv_iommu.c            |   197 +-
 drivers/gpu/drm/etnaviv/etnaviv_iommu.h            |     7 +-
 drivers/gpu/drm/etnaviv/etnaviv_iommu_v2.c         |   120 +-
 drivers/gpu/drm/etnaviv/etnaviv_mmu.c              |   106 +-
 drivers/gpu/drm/etnaviv/etnaviv_mmu.h              |    36 +-
 drivers/gpu/drm/etnaviv/etnaviv_perfmon.c          |   495 +
 drivers/gpu/drm/etnaviv/etnaviv_perfmon.h          |    49 +
 drivers/gpu/drm/exynos/Kconfig                     |     1 +
 drivers/gpu/drm/exynos/exynos_drm_crtc.c           |    15 +
 drivers/gpu/drm/exynos/exynos_drm_drv.h            |     3 +
 drivers/gpu/drm/exynos/exynos_drm_mic.c            |     6 +-
 drivers/gpu/drm/exynos/exynos_hdmi.c               |   310 +-
 drivers/gpu/drm/exynos/exynos_mixer.c              |   460 +-
 drivers/gpu/drm/exynos/regs-hdmi.h                 |     8 +-
 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_kms.c          |     3 +-
 drivers/gpu/drm/gma500/cdv_intel_dp.c              |     6 +-
 drivers/gpu/drm/gma500/mdfld_intel_display.c       |     2 +-
 drivers/gpu/drm/gma500/mid_bios.c                  |     2 +-
 drivers/gpu/drm/gma500/psb_intel_sdvo.c            |     9 +-
 drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_vdac.c   |     2 +-
 drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c    |     3 +
 drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c    |     7 +-
 drivers/gpu/drm/i2c/ch7006_drv.c                   |     2 +-
 drivers/gpu/drm/i2c/sil164_drv.c                   |     2 +-
 drivers/gpu/drm/i2c/tda998x_drv.c                  |     2 +-
 drivers/gpu/drm/i915/Kconfig                       |     1 +
 drivers/gpu/drm/i915/Makefile                      |    10 +-
 drivers/gpu/drm/i915/gvt/aperture_gm.c             |    26 +-
 drivers/gpu/drm/i915/gvt/cfg_space.c               |    30 +-
 drivers/gpu/drm/i915/gvt/cmd_parser.c              |    37 +-
 drivers/gpu/drm/i915/gvt/execlist.c                |   127 +-
 drivers/gpu/drm/i915/gvt/gtt.c                     |     5 +-
 drivers/gpu/drm/i915/gvt/gvt.c                     |     2 +-
 drivers/gpu/drm/i915/gvt/gvt.h                     |    14 +-
 drivers/gpu/drm/i915/gvt/kvmgt.c                   |    44 +-
 drivers/gpu/drm/i915/gvt/mmio.c                    |    47 +-
 drivers/gpu/drm/i915/gvt/render.c                  |     2 +-
 drivers/gpu/drm/i915/gvt/scheduler.c               |   115 +-
 drivers/gpu/drm/i915/gvt/scheduler.h               |     1 +
 drivers/gpu/drm/i915/i915_debugfs.c                |   638 +-
 drivers/gpu/drm/i915/i915_drv.c                    |    93 +-
 drivers/gpu/drm/i915/i915_drv.h                    |   368 +-
 drivers/gpu/drm/i915/i915_gem.c                    |   649 +-
 drivers/gpu/drm/i915/i915_gem_clflush.c            |     1 +
 drivers/gpu/drm/i915/i915_gem_context.c            |   123 +-
 drivers/gpu/drm/i915/i915_gem_dmabuf.c             |    18 +-
 drivers/gpu/drm/i915/i915_gem_evict.c              |    14 +-
 drivers/gpu/drm/i915/i915_gem_execbuffer.c         |    47 +-
 drivers/gpu/drm/i915/i915_gem_fence_reg.c          |    91 +-
 drivers/gpu/drm/i915/i915_gem_gtt.c                |   726 +-
 drivers/gpu/drm/i915/i915_gem_gtt.h                |    66 +-
 drivers/gpu/drm/i915/i915_gem_internal.c           |    18 +-
 drivers/gpu/drm/i915/i915_gem_object.h             |    42 +-
 drivers/gpu/drm/i915/i915_gem_render_state.c       |     2 +-
 drivers/gpu/drm/i915/i915_gem_request.c            |    52 +-
 drivers/gpu/drm/i915/i915_gem_request.h            |    48 +-
 drivers/gpu/drm/i915/i915_gem_shrinker.c           |   131 +-
 drivers/gpu/drm/i915/i915_gem_stolen.c             |    21 +-
 drivers/gpu/drm/i915/i915_gem_tiling.c             |     2 +-
 drivers/gpu/drm/i915/i915_gem_userptr.c            |   144 +-
 drivers/gpu/drm/i915/i915_gemfs.c                  |    74 +
 drivers/gpu/drm/i915/i915_gemfs.h                  |    34 +
 drivers/gpu/drm/i915/i915_gpu_error.c              |    43 +-
 drivers/gpu/drm/i915/i915_guc_submission.c         |   476 +-
 drivers/gpu/drm/i915/i915_guc_submission.h         |    80 +
 drivers/gpu/drm/i915/i915_irq.c                    |  1101 +-
 drivers/gpu/drm/i915/i915_oa_cflgt2.c              |   109 +
 drivers/gpu/drm/i915/i915_oa_cflgt2.h              |    34 +
 drivers/gpu/drm/i915/i915_params.c                 |   207 +-
 drivers/gpu/drm/i915/i915_params.h                 |    85 +-
 drivers/gpu/drm/i915/i915_pci.c                    |   341 +-
 drivers/gpu/drm/i915/i915_perf.c                   |    14 +-
 drivers/gpu/drm/i915/i915_pvinfo.h                 |     1 +
 drivers/gpu/drm/i915/i915_reg.h                    |    89 +-
 drivers/gpu/drm/i915/i915_suspend.c                |     2 -
 drivers/gpu/drm/i915/i915_sw_fence.c               |    45 +-
 drivers/gpu/drm/i915/i915_sysfs.c                  |    76 +-
 drivers/gpu/drm/i915/i915_trace.h                  |   118 +-
 drivers/gpu/drm/i915/i915_utils.h                  |    18 +
 drivers/gpu/drm/i915/i915_vgpu.h                   |     6 +
 drivers/gpu/drm/i915/i915_vma.c                    |   144 +-
 drivers/gpu/drm/i915/i915_vma.h                    |    49 +-
 drivers/gpu/drm/i915/intel_atomic_plane.c          |    49 +-
 drivers/gpu/drm/i915/intel_audio.c                 |     2 +-
 drivers/gpu/drm/i915/intel_bios.c                  |   392 +-
 drivers/gpu/drm/i915/intel_breadcrumbs.c           |    20 +-
 drivers/gpu/drm/i915/intel_cdclk.c                 |   318 +-
 drivers/gpu/drm/i915/intel_crt.c                   |   136 +-
 drivers/gpu/drm/i915/intel_csr.c                   |    39 +-
 drivers/gpu/drm/i915/intel_ddi.c                   |  1039 +-
 drivers/gpu/drm/i915/intel_device_info.c           |    41 +-
 drivers/gpu/drm/i915/intel_display.c               |   747 +-
 drivers/gpu/drm/i915/intel_dp.c                    |   293 +-
 drivers/gpu/drm/i915/intel_dp_aux_backlight.c      |     2 +-
 drivers/gpu/drm/i915/intel_dp_mst.c                |    76 +-
 drivers/gpu/drm/i915/intel_drv.h                   |   157 +-
 drivers/gpu/drm/i915/intel_dsi.c                   |    76 +-
 drivers/gpu/drm/i915/intel_dvo.c                   |    45 +-
 drivers/gpu/drm/i915/intel_engine_cs.c             |   534 +-
 drivers/gpu/drm/i915/intel_fbc.c                   |    41 +-
 drivers/gpu/drm/i915/intel_fbdev.c                 |     7 +-
 drivers/gpu/drm/i915/intel_fifo_underrun.c         |    14 +-
 drivers/gpu/drm/i915/intel_guc.c                   |   369 +
 drivers/gpu/drm/i915/intel_guc.h                   |   120 +
 .../i915/{intel_guc_loader.c => intel_guc_fw.c}    |   252 +-
 drivers/gpu/drm/i915/intel_guc_fw.h                |    33 +
 drivers/gpu/drm/i915/intel_guc_fwif.h              |    62 +-
 drivers/gpu/drm/i915/intel_guc_log.c               |    32 +-
 drivers/gpu/drm/i915/intel_guc_log.h               |    59 +
 drivers/gpu/drm/i915/intel_gvt.c                   |    12 +-
 drivers/gpu/drm/i915/intel_hangcheck.c             |     2 +-
 drivers/gpu/drm/i915/intel_hdmi.c                  |   183 +-
 drivers/gpu/drm/i915/intel_huc.c                   |   172 +-
 drivers/gpu/drm/i915/intel_huc.h                   |    41 +
 drivers/gpu/drm/i915/intel_lrc.c                   |   707 +-
 drivers/gpu/drm/i915/intel_lrc.h                   |    37 +-
 drivers/gpu/drm/i915/intel_lspcon.c                |    22 +-
 drivers/gpu/drm/i915/intel_lvds.c                  |    51 +-
 drivers/gpu/drm/i915/intel_opregion.c              |     2 +-
 drivers/gpu/drm/i915/intel_overlay.c               |     2 +-
 drivers/gpu/drm/i915/intel_panel.c                 |     8 +-
 drivers/gpu/drm/i915/intel_pipe_crc.c              |    80 +-
 drivers/gpu/drm/i915/intel_pm.c                    |  1244 +-
 drivers/gpu/drm/i915/intel_psr.c                   |   450 +-
 drivers/gpu/drm/i915/intel_ringbuffer.c            |   194 +-
 drivers/gpu/drm/i915/intel_ringbuffer.h            |   184 +-
 drivers/gpu/drm/i915/intel_runtime_pm.c            |   128 +-
 drivers/gpu/drm/i915/intel_sdvo.c                  |    40 +-
 drivers/gpu/drm/i915/intel_sideband.c              |     6 +-
 drivers/gpu/drm/i915/intel_sprite.c                |    39 +-
 drivers/gpu/drm/i915/intel_tv.c                    |    16 +-
 drivers/gpu/drm/i915/intel_uc.c                    |   363 +-
 drivers/gpu/drm/i915/intel_uc.h                    |   247 +-
 drivers/gpu/drm/i915/intel_uc_fw.c                 |   318 +
 drivers/gpu/drm/i915/intel_uc_fw.h                 |   121 +
 drivers/gpu/drm/i915/intel_uncore.c                |   268 +-
 drivers/gpu/drm/i915/intel_uncore.h                |    18 +
 drivers/gpu/drm/i915/intel_vbt_defs.h              |   339 +-
 drivers/gpu/drm/i915/selftests/huge_gem_object.c   |    14 +-
 drivers/gpu/drm/i915/selftests/huge_pages.c        |  1734 +++
 drivers/gpu/drm/i915/selftests/i915_gem_context.c  |     2 +-
 drivers/gpu/drm/i915/selftests/i915_gem_evict.c    |   162 +-
 drivers/gpu/drm/i915/selftests/i915_gem_gtt.c      |    15 +-
 drivers/gpu/drm/i915/selftests/i915_gem_object.c   |     8 -
 drivers/gpu/drm/i915/selftests/i915_gem_request.c  |    12 +-
 drivers/gpu/drm/i915/selftests/i915_gem_timeline.c |     2 +-
 .../gpu/drm/i915/selftests/i915_live_selftests.h   |     2 +
 .../gpu/drm/i915/selftests/i915_mock_selftests.h   |     1 +
 drivers/gpu/drm/i915/selftests/i915_random.c       |     5 -
 drivers/gpu/drm/i915/selftests/i915_random.h       |     5 +
 drivers/gpu/drm/i915/selftests/i915_sw_fence.c     |    42 +
 drivers/gpu/drm/i915/selftests/intel_hangcheck.c   |    50 +-
 drivers/gpu/drm/i915/selftests/lib_sw_fence.c      |    78 +
 drivers/gpu/drm/i915/selftests/lib_sw_fence.h      |    42 +
 drivers/gpu/drm/i915/selftests/mock_context.c      |     6 +-
 drivers/gpu/drm/i915/selftests/mock_engine.c       |     8 +-
 drivers/gpu/drm/i915/selftests/mock_gem_device.c   |    20 +
 drivers/gpu/drm/i915/selftests/mock_gtt.c          |    11 +-
 drivers/gpu/drm/i915/selftests/scatterlist.c       |    15 +
 drivers/gpu/drm/imx/imx-drm-core.c                 |     3 +-
 drivers/gpu/drm/imx/ipuv3-plane.c                  |     3 +-
 drivers/gpu/drm/mediatek/mtk_hdmi.c                |     6 +-
 drivers/gpu/drm/meson/meson_drv.c                  |     3 +-
 drivers/gpu/drm/mgag200/mgag200_mode.c             |     2 +-
 drivers/gpu/drm/msm/Makefile                       |     4 +-
 drivers/gpu/drm/msm/adreno/a3xx_gpu.c              |    10 +-
 drivers/gpu/drm/msm/adreno/a4xx_gpu.c              |    10 +-
 drivers/gpu/drm/msm/adreno/a5xx_gpu.c              |   261 +-
 drivers/gpu/drm/msm/adreno/a5xx_gpu.h              |   109 +-
 drivers/gpu/drm/msm/adreno/a5xx_power.c            |     9 +-
 drivers/gpu/drm/msm/adreno/a5xx_preempt.c          |   305 +
 drivers/gpu/drm/msm/adreno/adreno_device.c         |    78 +-
 drivers/gpu/drm/msm/adreno/adreno_gpu.c            |   297 +-
 drivers/gpu/drm/msm/adreno/adreno_gpu.h            |    66 +-
 drivers/gpu/drm/msm/dsi/dsi_cfg.c                  |     8 +-
 drivers/gpu/drm/msm/dsi/dsi_host.c                 |    30 +-
 drivers/gpu/drm/msm/dsi/phy/dsi_phy.c              |     2 +-
 drivers/gpu/drm/msm/edp/edp_ctrl.c                 |    22 +-
 drivers/gpu/drm/msm/hdmi/hdmi.c                    |    10 +-
 drivers/gpu/drm/msm/hdmi/hdmi_phy.c                |     2 +-
 drivers/gpu/drm/msm/hdmi/hdmi_phy_8960.c           |     2 +-
 drivers/gpu/drm/msm/hdmi/hdmi_phy_8996.c           |     4 +-
 drivers/gpu/drm/msm/hdmi/hdmi_phy_8x74.c           |     3 +-
 drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c           |     7 +
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_cmd_encoder.c    |     2 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c           |   160 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_encoder.c        |     2 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_irq.c            |    10 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c            |    10 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_pipe.c           |    71 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_pipe.h           |     7 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_plane.c          |   232 +-
 drivers/gpu/drm/msm/msm_atomic.c                   |    41 +-
 drivers/gpu/drm/msm/msm_drv.c                      |    83 +-
 drivers/gpu/drm/msm/msm_drv.h                      |    37 +-
 drivers/gpu/drm/msm/msm_fence.c                    |     2 +-
 drivers/gpu/drm/msm/msm_fence.h                    |     2 +-
 drivers/gpu/drm/msm/msm_gem.c                      |    22 +-
 drivers/gpu/drm/msm/msm_gem.h                      |     5 +-
 drivers/gpu/drm/msm/msm_gem_submit.c               |    37 +-
 drivers/gpu/drm/msm/msm_gpu.c                      |   235 +-
 drivers/gpu/drm/msm/msm_gpu.h                      |    51 +-
 drivers/gpu/drm/msm/msm_rd.c                       |   142 +-
 drivers/gpu/drm/msm/msm_ringbuffer.c               |    36 +-
 drivers/gpu/drm/msm/msm_ringbuffer.h               |    33 +-
 drivers/gpu/drm/msm/msm_submitqueue.c              |   152 +
 drivers/gpu/drm/mxsfb/mxsfb_drv.c                  |     5 +-
 drivers/gpu/drm/nouveau/Kbuild                     |     2 +
 drivers/gpu/drm/nouveau/Kconfig                    |     7 +
 drivers/gpu/drm/nouveau/dispnv04/disp.c            |     2 +-
 drivers/gpu/drm/nouveau/include/nvif/cl506e.h      |     2 +-
 drivers/gpu/drm/nouveau/include/nvif/cl506f.h      |     2 +-
 drivers/gpu/drm/nouveau/include/nvif/cl826e.h      |     2 +-
 drivers/gpu/drm/nouveau/include/nvif/cl826f.h      |     2 +-
 drivers/gpu/drm/nouveau/include/nvif/cl906f.h      |     2 +-
 drivers/gpu/drm/nouveau/include/nvif/cla06f.h      |     2 +-
 drivers/gpu/drm/nouveau/include/nvif/class.h       |    17 +
 drivers/gpu/drm/nouveau/include/nvif/device.h      |     5 -
 drivers/gpu/drm/nouveau/include/nvif/if0008.h      |    42 +
 drivers/gpu/drm/nouveau/include/nvif/if000a.h      |    22 +
 drivers/gpu/drm/nouveau/include/nvif/if000b.h      |    11 +
 drivers/gpu/drm/nouveau/include/nvif/if000c.h      |    64 +
 drivers/gpu/drm/nouveau/include/nvif/if000d.h      |    12 +
 drivers/gpu/drm/nouveau/include/nvif/if500b.h      |    25 +
 drivers/gpu/drm/nouveau/include/nvif/if500d.h      |    21 +
 drivers/gpu/drm/nouveau/include/nvif/if900b.h      |    23 +
 drivers/gpu/drm/nouveau/include/nvif/if900d.h      |    21 +
 drivers/gpu/drm/nouveau/include/nvif/ifb00d.h      |    27 +
 drivers/gpu/drm/nouveau/include/nvif/ifc00d.h      |    21 +
 drivers/gpu/drm/nouveau/include/nvif/ioctl.h       |    10 +-
 drivers/gpu/drm/nouveau/include/nvif/mem.h         |    18 +
 drivers/gpu/drm/nouveau/include/nvif/mmu.h         |    56 +
 drivers/gpu/drm/nouveau/include/nvif/object.h      |     7 +-
 drivers/gpu/drm/nouveau/include/nvif/os.h          |    14 -
 drivers/gpu/drm/nouveau/include/nvif/vmm.h         |    42 +
 drivers/gpu/drm/nouveau/include/nvkm/core/client.h |     3 +-
 drivers/gpu/drm/nouveau/include/nvkm/core/device.h |     2 +-
 drivers/gpu/drm/nouveau/include/nvkm/core/engine.h |     1 +
 drivers/gpu/drm/nouveau/include/nvkm/core/gpuobj.h |    14 +-
 drivers/gpu/drm/nouveau/include/nvkm/core/memory.h |    64 +-
 drivers/gpu/drm/nouveau/include/nvkm/core/mm.h     |    32 +-
 drivers/gpu/drm/nouveau/include/nvkm/core/object.h |    41 +-
 drivers/gpu/drm/nouveau/include/nvkm/core/oclass.h |    31 +
 drivers/gpu/drm/nouveau/include/nvkm/core/os.h     |    19 +
 drivers/gpu/drm/nouveau/include/nvkm/core/ramht.h  |     1 +
 drivers/gpu/drm/nouveau/include/nvkm/core/subdev.h |     2 +-
 drivers/gpu/drm/nouveau/include/nvkm/engine/dma.h  |     1 +
 .../gpu/drm/nouveau/include/nvkm/engine/falcon.h   |     5 +-
 drivers/gpu/drm/nouveau/include/nvkm/engine/fifo.h |     3 +-
 drivers/gpu/drm/nouveau/include/nvkm/subdev/bar.h  |     9 +-
 drivers/gpu/drm/nouveau/include/nvkm/subdev/fb.h   |    36 +-
 .../gpu/drm/nouveau/include/nvkm/subdev/instmem.h  |     1 +
 drivers/gpu/drm/nouveau/include/nvkm/subdev/ltc.h  |     7 +-
 drivers/gpu/drm/nouveau/include/nvkm/subdev/mmu.h  |   140 +-
 .../gpu/drm/nouveau/include/nvkm/subdev/therm.h    |     1 +
 drivers/gpu/drm/nouveau/nouveau_abi16.c            |    42 +-
 drivers/gpu/drm/nouveau/nouveau_abi16.h            |     2 +-
 drivers/gpu/drm/nouveau/nouveau_bios.c             |    10 +-
 drivers/gpu/drm/nouveau/nouveau_bo.c               |   391 +-
 drivers/gpu/drm/nouveau/nouveau_bo.h               |    17 +-
 drivers/gpu/drm/nouveau/nouveau_chan.c             |    51 +-
 drivers/gpu/drm/nouveau/nouveau_chan.h             |     3 +-
 drivers/gpu/drm/nouveau/nouveau_connector.c        |     4 +-
 drivers/gpu/drm/nouveau/nouveau_display.h          |     5 +-
 drivers/gpu/drm/nouveau/nouveau_dma.c              |    15 +-
 drivers/gpu/drm/nouveau/nouveau_dma.h              |     2 +-
 drivers/gpu/drm/nouveau/nouveau_drm.c              |   161 +-
 drivers/gpu/drm/nouveau/nouveau_drv.h              |    33 +-
 drivers/gpu/drm/nouveau/nouveau_fbcon.c            |     7 +-
 drivers/gpu/drm/nouveau/nouveau_fence.c            |    58 -
 drivers/gpu/drm/nouveau/nouveau_fence.h            |     7 +-
 drivers/gpu/drm/nouveau/nouveau_gem.c              |   123 +-
 drivers/gpu/drm/nouveau/nouveau_gem.h              |     3 -
 drivers/gpu/drm/nouveau/nouveau_mem.c              |   198 +
 drivers/gpu/drm/nouveau/nouveau_mem.h              |    30 +
 drivers/gpu/drm/nouveau/nouveau_sgdma.c            |    54 +-
 drivers/gpu/drm/nouveau/nouveau_ttm.c              |   280 +-
 drivers/gpu/drm/nouveau/nouveau_vmm.c              |   135 +
 drivers/gpu/drm/nouveau/nouveau_vmm.h              |    31 +
 drivers/gpu/drm/nouveau/nv50_display.c             |    12 +-
 drivers/gpu/drm/nouveau/nv50_fbcon.c               |     9 +-
 drivers/gpu/drm/nouveau/nv84_fence.c               |    43 +-
 drivers/gpu/drm/nouveau/nvc0_fbcon.c               |     9 +-
 drivers/gpu/drm/nouveau/nvif/Kbuild                |     3 +
 drivers/gpu/drm/nouveau/nvif/mem.c                 |    88 +
 drivers/gpu/drm/nouveau/nvif/mmu.c                 |   117 +
 drivers/gpu/drm/nouveau/nvif/object.c              |    87 +-
 drivers/gpu/drm/nouveau/nvif/vmm.c                 |   167 +
 drivers/gpu/drm/nouveau/nvkm/core/client.c         |     2 +
 drivers/gpu/drm/nouveau/nvkm/core/engine.c         |    10 +
 drivers/gpu/drm/nouveau/nvkm/core/gpuobj.c         |    47 +-
 drivers/gpu/drm/nouveau/nvkm/core/ioctl.c          |    15 +-
 drivers/gpu/drm/nouveau/nvkm/core/memory.c         |   100 +-
 drivers/gpu/drm/nouveau/nvkm/core/mm.c             |     5 +-
 drivers/gpu/drm/nouveau/nvkm/core/object.c         |    14 +-
 drivers/gpu/drm/nouveau/nvkm/core/oproxy.c         |    13 +-
 drivers/gpu/drm/nouveau/nvkm/core/ramht.c          |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/device/base.c  |    98 +-
 drivers/gpu/drm/nouveau/nvkm/engine/device/ctrl.h  |     2 +-
 drivers/gpu/drm/nouveau/nvkm/engine/device/pci.c   |    24 +-
 drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.c |     6 +-
 drivers/gpu/drm/nouveau/nvkm/engine/device/user.c  |     9 +-
 .../gpu/drm/nouveau/nvkm/engine/disp/channv50.c    |     4 +-
 .../gpu/drm/nouveau/nvkm/engine/disp/channv50.h    |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/disp/ior.h     |     2 +-
 drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv04.c |     6 +-
 drivers/gpu/drm/nouveau/nvkm/engine/falcon.c       |     2 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/base.c    |     8 +
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/chan.c    |    43 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/chang84.c |    13 +-
 .../gpu/drm/nouveau/nvkm/engine/fifo/changf100.h   |     5 +-
 .../gpu/drm/nouveau/nvkm/engine/fifo/changk104.h   |     5 +-
 .../gpu/drm/nouveau/nvkm/engine/fifo/channv50.c    |    14 +-
 .../gpu/drm/nouveau/nvkm/engine/fifo/channv50.h    |     5 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmag84.c  |     6 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv04.c |     2 +
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv50.c |     6 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gf100.c   |    18 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gf100.h   |     2 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c   |    19 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.h   |     2 +-
 .../gpu/drm/nouveau/nvkm/engine/fifo/gpfifog84.c   |     6 +-
 .../gpu/drm/nouveau/nvkm/engine/fifo/gpfifogf100.c |    45 +-
 .../gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c |    51 +-
 .../gpu/drm/nouveau/nvkm/engine/fifo/gpfifonv50.c  |     6 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv50.c    |     4 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf100.c  |   123 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf100.h  |     2 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf108.c  |     3 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf117.c  |     3 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgk104.c  |     6 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgm107.c  |     9 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp100.c  |     6 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp102.c  |     3 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c     |    83 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.h     |     9 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gf104.c     |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gf108.c     |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gf110.c     |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gf117.c     |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gf119.c     |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gk104.c     |    13 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c     |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110b.c    |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gk208.c     |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/nv20.c      |     4 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/nv20.h      |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/nv40.h      |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/nv50.h      |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/mpeg/nv31.h    |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/mpeg/nv50.c    |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/pm/priv.h      |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/sw/chan.h      |     4 +-
 drivers/gpu/drm/nouveau/nvkm/engine/sw/nvsw.h      |     2 +-
 drivers/gpu/drm/nouveau/nvkm/engine/xtensa.c       |     2 +-
 drivers/gpu/drm/nouveau/nvkm/falcon/base.c         |     2 +-
 drivers/gpu/drm/nouveau/nvkm/falcon/v1.c           |     6 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/Kbuild     |     2 +
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/base.c     |    60 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/g84.c      |    10 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/gf100.c    |   151 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/gf100.h    |    16 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/gk20a.c    |     6 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/gm107.c    |    65 +
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/gm20b.c    |    42 +
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/nv50.c     |   174 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/nv50.h     |    16 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/priv.h     |    20 +-
 .../gpu/drm/nouveau/nvkm/subdev/bios/iccsense.c    |     4 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bios/init.c    |     7 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bios/timing.c  |     5 +
 drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv04.c |    12 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/base.c      |    35 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/g84.c       |     1 +
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf100.c     |    24 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf100.h     |     2 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf108.c     |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk104.c     |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk20a.c     |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm107.c     |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm200.c     |    18 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm20b.c     |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gp100.c     |     1 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gp102.c     |     1 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gp10b.c     |     1 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gt215.c     |     1 +
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv04.c      |     9 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv10.c      |     1 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv1a.c      |     1 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv20.c      |    13 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv25.c      |     4 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv30.c      |     4 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv35.c      |     4 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv36.c      |     4 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv40.c      |     4 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv41.c      |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv44.c      |     1 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv46.c      |     1 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv47.c      |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv49.c      |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv4e.c      |     1 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv50.c      |    30 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv50.h      |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/priv.h      |    13 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ram.c       |   144 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ram.h       |    11 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf100.c  |    94 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf108.c  |     2 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgk104.c  |     2 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgm107.c  |     2 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgm200.c  |     2 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgp100.c  |     2 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgt215.c  |    20 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/rammcp77.c  |     7 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv04.c   |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv10.c   |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv1a.c   |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv20.c   |     3 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv40.c   |     7 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv40.h   |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv41.c   |     3 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv44.c   |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv49.c   |     3 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv4e.c   |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv50.c   |    98 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/base.c |   266 +-
 .../gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.c    |    61 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv04.c |    70 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv40.c |    71 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c |   329 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/priv.h |    14 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/ltc/base.c     |    25 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gf100.c    |    20 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gp100.c    |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/Kbuild     |    29 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/base.c     |   696 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/g84.c      |    41 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gf100.c    |   228 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gk104.c    |    41 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gk20a.c    |    41 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gm200.c    |    97 +
 .../nvkm/subdev/mmu/gm20b.c}                       |    49 +-
 .../nvkm/subdev/mmu/gp100.c}                       |    37 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp10b.     |     0
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp10b.c    |    45 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/mem.c      |   242 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/mem.h      |    23 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memgf100.c |    94 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memnv04.c  |    69 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memnv50.c  |    88 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv04.c     |   122 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv04.h     |    18 -
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv41.c     |   104 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv44.c     |   190 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv50.c     |   231 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/priv.h     |    70 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/umem.c     |   192 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/umem.h     |    26 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ummu.c     |   178 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ummu.h     |    14 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.c     |   352 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.h     |    14 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.c      |  1513 +++
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.h      |   310 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgf100.c |   403 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk104.c |   102 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk20a.c |    71 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm200.c |   185 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm20b.c |    70 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp100.c |   347 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp10b.c |    49 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv04.c  |   140 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv41.c  |   113 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv44.c  |   230 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv50.c  |   385 +
 drivers/gpu/drm/nouveau/nvkm/subdev/pci/base.c     |     2 +-
 .../gpu/drm/nouveau/nvkm/subdev/secboot/gm200.c    |    43 +-
 .../gpu/drm/nouveau/nvkm/subdev/secboot/gm200.h    |     5 +-
 .../nvkm/subdev/secboot/ls_ucode_msgqueue.c        |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/secboot/priv.h |     1 +
 drivers/gpu/drm/nouveau/nvkm/subdev/therm/Kbuild   |     1 +
 drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c   |     3 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/therm/gp100.c  |    56 +
 drivers/gpu/drm/omapdrm/displays/connector-hdmi.c  |     8 +-
 .../gpu/drm/omapdrm/displays/encoder-tpd12s015.c   |    18 +-
 drivers/gpu/drm/omapdrm/dss/Kconfig                |     8 +
 drivers/gpu/drm/omapdrm/dss/Makefile               |     1 +
 drivers/gpu/drm/omapdrm/dss/hdmi.h                 |     7 +-
 drivers/gpu/drm/omapdrm/dss/hdmi4.c                |    62 +-
 drivers/gpu/drm/omapdrm/dss/hdmi4_cec.c            |   381 +
 drivers/gpu/drm/omapdrm/dss/hdmi4_cec.h            |    55 +
 drivers/gpu/drm/omapdrm/dss/hdmi4_core.c           |     7 +-
 drivers/gpu/drm/omapdrm/dss/hdmi4_core.h           |     4 +
 drivers/gpu/drm/omapdrm/dss/omapdss.h              |     1 +
 drivers/gpu/drm/panel/Kconfig                      |    33 +
 drivers/gpu/drm/panel/Makefile                     |     4 +
 drivers/gpu/drm/panel/panel-orisetech-otm8009a.c   |   491 +
 .../gpu/drm/panel/panel-raspberrypi-touchscreen.c  |   514 +
 drivers/gpu/drm/panel/panel-samsung-s6e63j0x03.c   |   532 +
 drivers/gpu/drm/panel/panel-seiko-43wvf1g.c        |   372 +
 drivers/gpu/drm/panel/panel-simple.c               |    51 +-
 drivers/gpu/drm/pl111/Kconfig                      |     3 +-
 drivers/gpu/drm/pl111/Makefile                     |     4 +-
 drivers/gpu/drm/pl111/pl111_connector.c            |   126 -
 drivers/gpu/drm/pl111/pl111_debugfs.c              |     6 +
 drivers/gpu/drm/pl111/pl111_display.c              |    79 +-
 drivers/gpu/drm/pl111/pl111_drm.h                  |    37 +-
 drivers/gpu/drm/pl111/pl111_drv.c                  |   149 +-
 drivers/gpu/drm/pl111/pl111_versatile.c            |   270 +
 drivers/gpu/drm/pl111/pl111_versatile.h            |     9 +
 drivers/gpu/drm/qxl/qxl_cmd.c                      |    22 +-
 drivers/gpu/drm/qxl/qxl_display.c                  |    49 +-
 drivers/gpu/drm/qxl/qxl_drv.h                      |    28 +-
 drivers/gpu/drm/qxl/qxl_dumb.c                     |     1 +
 drivers/gpu/drm/qxl/qxl_fb.c                       |    13 +-
 drivers/gpu/drm/qxl/qxl_release.c                  |     5 +-
 drivers/gpu/drm/qxl/qxl_ttm.c                      |     4 +-
 drivers/gpu/drm/radeon/Makefile                    |     5 +-
 drivers/gpu/drm/radeon/atombios_dp.c               |    46 +-
 drivers/gpu/drm/radeon/ci_dpm.c                    |    22 +
 drivers/gpu/drm/radeon/ci_dpm.h                    |     1 -
 drivers/gpu/drm/radeon/ci_smc.c                    |    21 -
 drivers/gpu/drm/radeon/cik.c                       |    14 +-
 drivers/gpu/drm/radeon/cikd.h                      |     2 -
 drivers/gpu/drm/radeon/r100.c                      |     2 +-
 drivers/gpu/drm/radeon/r600_cs.c                   |     2 +-
 drivers/gpu/drm/radeon/r600_hdmi.c                 |     2 +-
 drivers/gpu/drm/radeon/radeon.h                    |     3 -
 drivers/gpu/drm/radeon/radeon_connectors.c         |    16 +-
 drivers/gpu/drm/radeon/radeon_drv.c                |    10 -
 drivers/gpu/drm/radeon/radeon_fb.c                 |     4 +-
 drivers/gpu/drm/radeon/radeon_kfd.c                |   870 --
 drivers/gpu/drm/radeon/radeon_kms.c                |     7 -
 drivers/gpu/drm/radeon/radeon_mode.h               |     4 -
 drivers/gpu/drm/radeon/radeon_trace.h              |     2 +-
 drivers/gpu/drm/radeon/radeon_ttm.c                |    33 +-
 drivers/gpu/drm/rcar-du/rcar_du_kms.c              |     3 +-
 drivers/gpu/drm/rockchip/Kconfig                   |     9 +
 drivers/gpu/drm/rockchip/Makefile                  |     1 +
 drivers/gpu/drm/rockchip/analogix_dp-rockchip.c    |    40 +-
 drivers/gpu/drm/rockchip/cdn-dp-core.c             |     9 -
 drivers/gpu/drm/rockchip/cdn-dp-reg.c              |     2 +-
 drivers/gpu/drm/rockchip/dw-mipi-dsi.c             |    86 +-
 drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c        |    19 +-
 drivers/gpu/drm/rockchip/inno_hdmi.c               |    14 +-
 drivers/gpu/drm/rockchip/rockchip_drm_drv.c        |    14 +-
 drivers/gpu/drm/rockchip/rockchip_drm_drv.h        |     1 +
 drivers/gpu/drm/rockchip/rockchip_drm_fb.c         |     8 +-
 drivers/gpu/drm/rockchip/rockchip_drm_fbdev.c      |    18 +-
 drivers/gpu/drm/rockchip/rockchip_drm_gem.c        |     2 +-
 drivers/gpu/drm/rockchip/rockchip_drm_vop.c        |    32 +-
 drivers/gpu/drm/rockchip/rockchip_lvds.c           |   586 +
 drivers/gpu/drm/rockchip/rockchip_lvds.h           |   114 +
 drivers/gpu/drm/rockchip/rockchip_vop_reg.c        |     2 +-
 drivers/gpu/drm/shmobile/shmob_drm_kms.c           |     3 +-
 drivers/gpu/drm/sti/sti_drv.c                      |     3 +-
 drivers/gpu/drm/sti/sti_dvo.c                      |     6 +-
 drivers/gpu/drm/stm/drv.c                          |     3 +-
 drivers/gpu/drm/stm/dw_mipi_dsi-stm.c              |     8 +-
 drivers/gpu/drm/stm/ltdc.c                         |    16 +-
 drivers/gpu/drm/stm/ltdc.h                         |     2 -
 drivers/gpu/drm/sun4i/Makefile                     |    33 +-
 drivers/gpu/drm/sun4i/sun4i_backend.c              |   113 +-
 drivers/gpu/drm/sun4i/sun4i_backend.h              |     3 +-
 drivers/gpu/drm/sun4i/sun4i_crtc.c                 |    32 +-
 drivers/gpu/drm/sun4i/sun4i_drv.c                  |    76 +-
 drivers/gpu/drm/sun4i/sun4i_framebuffer.c          |     3 +-
 drivers/gpu/drm/sun4i/sun4i_hdmi.h                 |   112 +
 drivers/gpu/drm/sun4i/sun4i_hdmi_ddc_clk.c         |    39 +-
 drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c             |   277 +-
 drivers/gpu/drm/sun4i/sun4i_hdmi_i2c.c             |   227 +-
 drivers/gpu/drm/sun4i/sun4i_hdmi_tmds_clk.c        |    69 +-
 drivers/gpu/drm/sun4i/sun4i_rgb.c                  |    29 +-
 drivers/gpu/drm/sun4i/sun4i_tcon.c                 |   466 +-
 drivers/gpu/drm/sun4i/sun4i_tcon.h                 |    30 +-
 drivers/gpu/drm/sun4i/sun4i_tv.c                   |    12 -
 drivers/gpu/drm/tegra/Kconfig                      |     1 +
 drivers/gpu/drm/tegra/dc.c                         |    84 +-
 drivers/gpu/drm/tegra/dc.h                         |   120 +
 drivers/gpu/drm/tegra/drm.c                        |    30 +-
 drivers/gpu/drm/tegra/drm.h                        |   106 +-
 drivers/gpu/drm/tegra/gr2d.c                       |     2 +-
 drivers/gpu/drm/tegra/gr3d.c                       |     2 +-
 drivers/gpu/drm/tegra/hdmi.c                       |    17 +-
 drivers/gpu/drm/tegra/output.c                     |     6 +
 drivers/gpu/drm/tegra/sor.c                        |     5 +-
 drivers/gpu/drm/tegra/vic.c                        |    22 +-
 drivers/gpu/drm/tilcdc/tilcdc_crtc.c               |    57 +-
 drivers/gpu/drm/tilcdc/tilcdc_drv.c                |     5 +-
 drivers/gpu/drm/tilcdc/tilcdc_panel.c              |     2 +-
 drivers/gpu/drm/tilcdc/tilcdc_slave_compat.c       |     1 -
 drivers/gpu/drm/tilcdc/tilcdc_tfp410.c             |     4 +-
 drivers/gpu/drm/tinydrm/core/tinydrm-core.c        |     3 +-
 drivers/gpu/drm/tinydrm/core/tinydrm-pipe.c        |     6 +-
 drivers/gpu/drm/tinydrm/mi0283qt.c                 |    22 +-
 drivers/gpu/drm/tinydrm/mipi-dbi.c                 |     7 +-
 drivers/gpu/drm/tinydrm/repaper.c                  |    45 +-
 drivers/gpu/drm/tinydrm/st7586.c                   |    25 +-
 drivers/gpu/drm/ttm/ttm_bo.c                       |    43 +-
 drivers/gpu/drm/ttm/ttm_bo_util.c                  |     2 +-
 drivers/gpu/drm/ttm/ttm_memory.c                   |    12 +-
 drivers/gpu/drm/ttm/ttm_page_alloc.c               |   405 +-
 drivers/gpu/drm/ttm/ttm_page_alloc_dma.c           |   256 +-
 drivers/gpu/drm/tve200/Kconfig                     |    16 +
 drivers/gpu/drm/tve200/Makefile                    |     4 +
 drivers/gpu/drm/tve200/tve200_display.c            |   338 +
 drivers/gpu/drm/tve200/tve200_drm.h                |   126 +
 drivers/gpu/drm/tve200/tve200_drv.c                |   303 +
 drivers/gpu/drm/udl/udl_connector.c                |   156 +-
 drivers/gpu/drm/udl/udl_connector.h                |    13 +
 drivers/gpu/drm/udl/udl_drv.c                      |     4 +
 drivers/gpu/drm/udl/udl_main.c                     |     5 +
 drivers/gpu/drm/vc4/Makefile                       |     2 -
 drivers/gpu/drm/vc4/vc4_bo.c                       |   287 +-
 drivers/gpu/drm/vc4/vc4_dpi.c                      |    17 +-
 drivers/gpu/drm/vc4/vc4_drv.c                      |    10 +-
 drivers/gpu/drm/vc4/vc4_drv.h                      |    30 +
 drivers/gpu/drm/vc4/vc4_dsi.c                      |   144 +-
 drivers/gpu/drm/vc4/vc4_gem.c                      |   156 +-
 drivers/gpu/drm/vc4/vc4_hdmi.c                     |    15 +-
 drivers/gpu/drm/vc4/vc4_plane.c                    |    40 +-
 drivers/gpu/drm/vc4/vc4_trace.h                    |     2 +-
 drivers/gpu/drm/via/via_verifier.c                 |    10 +-
 drivers/gpu/drm/virtio/virtgpu_display.c           |     4 +-
 drivers/gpu/drm/virtio/virtgpu_gem.c               |     4 +-
 drivers/gpu/drm/virtio/virtgpu_ioctl.c             |    12 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c              |     4 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_kms.c                |     2 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c               |     4 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c               |     4 +-
 drivers/gpu/drm/zte/zx_drm_drv.c                   |     3 +-
 drivers/gpu/host1x/Makefile                        |     3 +-
 drivers/gpu/host1x/bus.c                           |     3 +-
 drivers/gpu/host1x/channel.c                       |     3 +-
 drivers/gpu/host1x/debug.c                         |    14 +-
 drivers/gpu/host1x/debug.h                         |    14 +-
 drivers/gpu/host1x/dev.c                           |    69 +-
 drivers/gpu/host1x/dev.h                           |    19 +
 drivers/gpu/host1x/hw/cdma_hw.c                    |    49 +-
 drivers/gpu/host1x/hw/channel_hw.c                 |    24 +
 drivers/gpu/host1x/hw/debug_hw.c                   |   240 +-
 drivers/gpu/host1x/hw/debug_hw_1x01.c              |   154 +
 drivers/gpu/host1x/hw/debug_hw_1x06.c              |   135 +
 drivers/gpu/host1x/hw/host1x01.c                   |     2 +
 drivers/gpu/host1x/hw/host1x02.c                   |     2 +
 drivers/gpu/host1x/hw/host1x04.c                   |     2 +
 drivers/gpu/host1x/hw/host1x05.c                   |     2 +
 drivers/gpu/host1x/hw/host1x06.c                   |    44 +
 drivers/gpu/host1x/hw/host1x06.h                   |    26 +
 drivers/gpu/host1x/hw/host1x06_hardware.h          |   142 +
 drivers/gpu/host1x/hw/hw_host1x04_channel.h        |    12 +
 drivers/gpu/host1x/hw/hw_host1x05_channel.h        |    12 +
 drivers/gpu/host1x/hw/hw_host1x06_hypervisor.h     |    32 +
 drivers/gpu/host1x/hw/hw_host1x06_uclass.h         |   181 +
 drivers/gpu/host1x/hw/hw_host1x06_vm.h             |    47 +
 drivers/gpu/host1x/hw/intr_hw.c                    |    29 +-
 drivers/gpu/host1x/hw/syncpt_hw.c                  |    46 +
 drivers/gpu/host1x/syncpt.c                        |    24 +-
 drivers/gpu/host1x/syncpt.h                        |     2 +-
 drivers/gpu/vga/vgaarb.c                           |    72 +-
 drivers/media/v4l2-core/videobuf2-dma-contig.c     |     4 +-
 drivers/rapidio/devices/rio_mport_cdev.c           |     4 +-
 drivers/staging/vboxvideo/vbox_mode.c              |     2 +-
 .../radeon_kfd.h => include/drm/amd_asic_type.h    |    51 +-
 include/drm/bridge/mhl.h                           |     4 +
 include/drm/drmP.h                                 |     4 +
 include/drm/drm_atomic.h                           |   188 +-
 include/drm/drm_auth.h                             |    21 +
 include/drm/drm_bridge.h                           |     2 +-
 include/drm/drm_connector.h                        |    14 +-
 include/drm/drm_crtc.h                             |    37 +-
 include/drm/drm_dp_helper.h                        |    23 +
 include/drm/drm_dp_mst_helper.h                    |     2 +
 include/drm/drm_drv.h                              |     7 +-
 include/drm/drm_edid.h                             |     2 +
 include/drm/drm_encoder.h                          |     4 +-
 include/drm/drm_fb_cma_helper.h                    |    13 -
 include/drm/drm_framebuffer.h                      |     1 +
 include/drm/drm_gem_framebuffer_helper.h           |     2 +-
 include/drm/drm_lease.h                            |    46 +
 include/drm/drm_mode_config.h                      |    13 -
 include/drm/drm_mode_object.h                      |     5 +
 include/drm/drm_modeset_helper_vtables.h           |     2 +-
 include/drm/drm_modeset_lock.h                     |    12 +-
 include/drm/drm_of.h                               |    31 +
 include/drm/drm_plane.h                            |    20 +-
 include/drm/drm_property.h                         |     6 +-
 include/drm/drm_syncobj.h                          |     5 +
 include/drm/drm_vblank.h                           |    25 +-
 include/drm/i915_pciids.h                          |   154 +-
 include/drm/ttm/ttm_debug.h                        |    31 +
 include/drm/ttm/ttm_memory.h                       |     5 +-
 include/drm/ttm/ttm_page_alloc.h                   |    33 +-
 include/dt-bindings/msm/msm-bus-ids.h              |   887 ++
 include/linux/dma-fence.h                          |     7 +-
 include/linux/host1x.h                             |     2 +-
 include/linux/regmap.h                             |    39 +
 include/linux/scatterlist.h                        |    17 +-
 include/linux/shmem_fs.h                           |     2 +
 include/linux/sync_file.h                          |     4 +
 include/uapi/drm/amdgpu_drm.h                      |    50 +-
 include/uapi/drm/drm.h                             |    41 +
 include/uapi/drm/drm_mode.h                        |    70 +-
 include/uapi/drm/etnaviv_drm.h                     |    43 +-
 include/uapi/drm/i915_drm.h                        |    33 +-
 include/uapi/drm/msm_drm.h                         |    24 +
 include/uapi/drm/vc4_drm.h                         |    19 +
 include/uapi/linux/kfd_ioctl.h                     |     2 +-
 lib/scatterlist.c                                  |    95 +-
 mm/shmem.c                                         |    30 +-
 scripts/coccinelle/api/drm-get-put.cocci           |     5 +
 sound/soc/amd/acp-pcm-dma.c                        |     8 +-
 sound/soc/amd/acp.h                                |     7 +
 tools/testing/scatterlist/Makefile                 |    30 +
 tools/testing/scatterlist/linux/mm.h               |   125 +
 tools/testing/scatterlist/main.c                   |    79 +
 1044 files changed, 65842 insertions(+), 56300 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/display/bridge/sii9234.txt
 create mode 100644 Documentation/devicetree/bindings/display/faraday,tve200.txt
 create mode 100644
Documentation/devicetree/bindings/display/panel/orisetech,otm8009a.txt
 create mode 100644
Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touchscreen.txt
 create mode 100644
Documentation/devicetree/bindings/display/panel/samsung,s6e63j0x03.txt
 create mode 100644
Documentation/devicetree/bindings/display/panel/seiko,43wvf1g.txt
 create mode 100644
Documentation/devicetree/bindings/display/panel/toshiba,lt089ac29000.txt
 create mode 100644
Documentation/devicetree/bindings/display/rockchip/rockchip-lvds.txt
 create mode 100644 Documentation/gpu/tve200.rst
 create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_mn.h
 create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c
 rename drivers/gpu/drm/amd/{powerplay/eventmgr/eventinit.h =>
amdgpu/amdgpu_sched.h} (73%)
 create mode 100644 drivers/gpu/drm/amd/include/linux/chash.h
 create mode 100644 drivers/gpu/drm/amd/lib/Kconfig
 create mode 100644 drivers/gpu/drm/amd/lib/Makefile
 create mode 100644 drivers/gpu/drm/amd/lib/chash.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/Makefile
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventactionchains.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventactionchains.h
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventmanagement.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventmanagement.h
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventmgr.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventsubchains.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventsubchains.h
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventtasks.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventtasks.h
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/psm.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/functiontables.c
 create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/pp_psm.c
 rename drivers/gpu/drm/amd/powerplay/{eventmgr/psm.h => hwmgr/pp_psm.h} (62%)
 delete mode 100644 drivers/gpu/drm/amd/powerplay/inc/eventmanager.h
 delete mode 100644 drivers/gpu/drm/amd/powerplay/inc/eventmgr.h
 delete mode 100644 drivers/gpu/drm/amd/powerplay/inc/fiji_pwrvirus.h
 rename drivers/gpu/drm/amd/powerplay/smumgr/{iceland_smc.c =>
ci_smumgr.c} (56%)
 create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/ci_smumgr.h
 delete mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/fiji_smc.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/fiji_smc.h
 delete mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smc.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/tonga_smc.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/tonga_smc.h
 create mode 100644 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c
 create mode 100644 drivers/gpu/drm/bridge/sii9234.c
 create mode 100644 drivers/gpu/drm/drm_lease.c
 create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_perfmon.c
 create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_perfmon.h
 create mode 100644 drivers/gpu/drm/i915/i915_gemfs.c
 create mode 100644 drivers/gpu/drm/i915/i915_gemfs.h
 create mode 100644 drivers/gpu/drm/i915/i915_guc_submission.h
 create mode 100644 drivers/gpu/drm/i915/i915_oa_cflgt2.c
 create mode 100644 drivers/gpu/drm/i915/i915_oa_cflgt2.h
 create mode 100644 drivers/gpu/drm/i915/intel_guc.c
 create mode 100644 drivers/gpu/drm/i915/intel_guc.h
 rename drivers/gpu/drm/i915/{intel_guc_loader.c => intel_guc_fw.c} (58%)
 create mode 100644 drivers/gpu/drm/i915/intel_guc_fw.h
 create mode 100644 drivers/gpu/drm/i915/intel_guc_log.h
 create mode 100644 drivers/gpu/drm/i915/intel_huc.h
 create mode 100644 drivers/gpu/drm/i915/intel_uc_fw.c
 create mode 100644 drivers/gpu/drm/i915/intel_uc_fw.h
 create mode 100644 drivers/gpu/drm/i915/selftests/huge_pages.c
 create mode 100644 drivers/gpu/drm/i915/selftests/lib_sw_fence.c
 create mode 100644 drivers/gpu/drm/i915/selftests/lib_sw_fence.h
 create mode 100644 drivers/gpu/drm/msm/adreno/a5xx_preempt.c
 create mode 100644 drivers/gpu/drm/msm/msm_submitqueue.c
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if0008.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if000a.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if000b.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if000c.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if000d.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if500b.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if500d.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if900b.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if900d.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/ifb00d.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/ifc00d.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/mem.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/mmu.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/vmm.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvkm/core/oclass.h
 create mode 100644 drivers/gpu/drm/nouveau/nouveau_mem.c
 create mode 100644 drivers/gpu/drm/nouveau/nouveau_mem.h
 create mode 100644 drivers/gpu/drm/nouveau/nouveau_vmm.c
 create mode 100644 drivers/gpu/drm/nouveau/nouveau_vmm.h
 create mode 100644 drivers/gpu/drm/nouveau/nvif/mem.c
 create mode 100644 drivers/gpu/drm/nouveau/nvif/mmu.c
 create mode 100644 drivers/gpu/drm/nouveau/nvif/vmm.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/bar/gm107.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/bar/gm20b.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/g84.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gk104.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gk20a.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gm200.c
 rename drivers/gpu/drm/{amd/powerplay/smumgr/polaris10_smc.h =>
nouveau/nvkm/subdev/mmu/gm20b.c} (54%)
 rename drivers/gpu/drm/{amd/powerplay/smumgr/iceland_smc.h =>
nouveau/nvkm/subdev/mmu/gp100.c} (60%)
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp10b.
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp10b.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/mem.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/mem.h
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memgf100.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memnv04.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memnv50.c
 delete mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv04.h
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/umem.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/umem.h
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ummu.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ummu.h
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.h
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.h
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgf100.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk104.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk20a.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm200.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm20b.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp100.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp10b.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv04.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv41.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv44.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv50.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/therm/gp100.c
 create mode 100644 drivers/gpu/drm/omapdrm/dss/hdmi4_cec.c
 create mode 100644 drivers/gpu/drm/omapdrm/dss/hdmi4_cec.h
 create mode 100644 drivers/gpu/drm/panel/panel-orisetech-otm8009a.c
 create mode 100644 drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c
 create mode 100644 drivers/gpu/drm/panel/panel-samsung-s6e63j0x03.c
 create mode 100644 drivers/gpu/drm/panel/panel-seiko-43wvf1g.c
 delete mode 100644 drivers/gpu/drm/pl111/pl111_connector.c
 create mode 100644 drivers/gpu/drm/pl111/pl111_versatile.c
 create mode 100644 drivers/gpu/drm/pl111/pl111_versatile.h
 delete mode 100644 drivers/gpu/drm/radeon/radeon_kfd.c
 create mode 100644 drivers/gpu/drm/rockchip/rockchip_lvds.c
 create mode 100644 drivers/gpu/drm/rockchip/rockchip_lvds.h
 create mode 100644 drivers/gpu/drm/tve200/Kconfig
 create mode 100644 drivers/gpu/drm/tve200/Makefile
 create mode 100644 drivers/gpu/drm/tve200/tve200_display.c
 create mode 100644 drivers/gpu/drm/tve200/tve200_drm.h
 create mode 100644 drivers/gpu/drm/tve200/tve200_drv.c
 create mode 100644 drivers/gpu/drm/udl/udl_connector.h
 create mode 100644 drivers/gpu/host1x/hw/debug_hw_1x01.c
 create mode 100644 drivers/gpu/host1x/hw/debug_hw_1x06.c
 create mode 100644 drivers/gpu/host1x/hw/host1x06.c
 create mode 100644 drivers/gpu/host1x/hw/host1x06.h
 create mode 100644 drivers/gpu/host1x/hw/host1x06_hardware.h
 create mode 100644 drivers/gpu/host1x/hw/hw_host1x06_hypervisor.h
 create mode 100644 drivers/gpu/host1x/hw/hw_host1x06_uclass.h
 create mode 100644 drivers/gpu/host1x/hw/hw_host1x06_vm.h
 rename drivers/gpu/drm/radeon/radeon_kfd.h => include/drm/amd_asic_type.h (59%)
 create mode 100644 include/drm/drm_lease.h
 create mode 100644 include/drm/ttm/ttm_debug.h
 create mode 100644 include/dt-bindings/msm/msm-bus-ids.h
 create mode 100644 tools/testing/scatterlist/Makefile
 create mode 100644 tools/testing/scatterlist/linux/mm.h
 create mode 100644 tools/testing/scatterlist/main.c

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [git pull] drm for v4.15
@ 2017-11-16  2:34 ` Dave Airlie
  0 siblings, 0 replies; 27+ messages in thread
From: Dave Airlie @ 2017-11-16  2:34 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: LKML, dri-devel

Hi Linus,

This is the main drm pull request for v4.15.

I've got the AMD display code request for their new gpus in a separate
pull that I'll follow up with soon.

There is some code touched on sound/soc, but I think the sound tree
should have the same commits from the same base,so this may luck different
if you pulled it as I generated my pull request a couple of days ago. Otherwise
the highlights are below.

Dave.

Core:
Atomic object lifetime fixes
Atomic iterator improvements
Sparse/smatch fixes
Legacy kms ioctls to be interruptible
EDID override improvements
fb/gem helper cleanups
Simple outreachy patches
Documentation improvements
Fix dma-buf rcu races
DRM mode object leasing for improving VR use cases.
vgaarb improvements for non-x86 platforms.

New driver:
tve200:
Faraday Technology TVE200 block. This "TV Encoder" encodes a
ITU-T BT.656 stream and can be found in the StorLink SL3516
(later Cortina Systems CS3516) as well as the Grain Media GM8180.

New bridges:
SiI9234 support

New panels:
S6E63J0X03, OTM8009A, Seiko 43WVF1G, 7" rpi touch panel,
Toshiba LT089AC19000, Innolux AT043TN24

i915:
Remove Coffeelake from alpha support
Cannonlake workarounds
Infoframe refactoring for DisplayPort
VBT updates
DisplayPort vswing/emph/buffer translation refactoring
CCS fixes
Restore GPU clock boost on missed vblanks
Scatter list updates for userptr allocations
Gen9+ transition watermarks
Display IPC (Isochronous Priority Control)
Private PAT management
GVT: improved error handling and pci config sanitizing
Execlist refactoring
Transparent Huge Page support
User defined priorities support
HuC/GuC firmware refactoring
DP MST fixes
eDP power sequencing fixes
Use RCU instead of stop_machine
PSR state tracking support
Eviction fixes
BDW DP aux channel timeout fixes
LSPCON fixes
Cannonlake PLL fixes

amdgpu:
Per VM BO support
Powerplay cleanups
CI powerplay support
PASID mgr for kfd
SR-IOV fixes
initial GPU reset for vega10
Prime mmap support
TTM updates
Clock query interface for Raven
Fence to handle ioctl
UVD encode ring support on Polaris
Transparent huge page DMA support
Compute LRU pipe tweaks
BO flag to allow buffers to opt out of implicit sync
CTX priority setting API
VRAM lost infrastructure plumbing

qxl:
fix flicker since atomic rework

amdkfd:
Further improvements from internal AMD tree
Usermode events
Drop radeon support

nouveau:
Pascal temperature sensor support
Improved BAR2 handling
MMU rework to support Pascal MMU

exynos:
Improved HDMI/mixer support
HDMI audio interface support

tegra:
Prep work for tegra186
Cleanup/fixes

msm:
Preemption support for a5xx
Display fixes for 8x96 (snapdragon 820)
Async cursor plane fixes
FW loading rework
GPU debugging improvements

vc4:
Prep for DSI panels
fix T-format tiling scanout
New madvise ioctl

Rockchip:
LVDS support

omapdrm:
omap4 HDMI CEC support

etnaviv:
GPU performance counters groundwork

sun4i:
refactor driver load + TCON backend
HDMI improvements
A31 support
Misc fixes

udl:
Probe/EDID read fixes.

tilcdc:
Misc fixes.

pl111:
Support more variants

adv7511:
Improve EDID handling.
HDMI CEC support

sii8620:
Add remote control support

The following changes since commit 0b07194bb55ed836c2cc7c22e866b87a14681984:

  Linux 4.14-rc7 (2017-10-29 13:58:38 -0700)

are available in the git repository at:

  git://people.freedesktop.org/~airlied/linux tags/drm-for-v4.15

for you to fetch changes up to f150891fd9878ef0d9197c4e8451ce67c3bdd014:

  Merge tag 'exynos-drm-next-for-v4.15' of
git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos into
drm-next (2017-11-14 14:12:43 +1000)

----------------------------------------------------------------
main drm pull request for v4.15

----------------------------------------------------------------
Aishwarya Pant (4):
      drm: introduce drm_dev_{get/put} functions
      drm/tilcdc: replace reference/unreference() with get/put
      drm/core: clean up references to drm_dev_unref()
      drm/msm/mdp5: remove less than 0 comparison for unsigned value

Akshu Agrawal (2):
      drm/amdgpu Moving amdgpu asic types to a separate file
      drm/amd/amdgpu: Enabling ACP clock in hw_init (v2)

Alex Deucher (19):
      drm/amdgpu/gfx8: fix spelling typo in mqd allocation
      drm/amdgpu: add automatic per asic settings for gart_size
      drm/amdgpu: refine default gart size
      drm/amdgpu: move default gart size setting into gmc modules
      drm/amdgpu: set sched_hw_submission higher for KIQ (v3)
      drm/amdgpu/powerplay/vega10: fix typo in register base index
      drm/amdgpu/gfx8: apply dynamic cu mask to APUs as well
      drm/amdgpu/gfx8: drop cz mqd
      drm/amdgpu/gfx9: update mqd to include dynamic CU mask
      drm/amdgpu/gfx9: adjust mqd allocation size
      drm/amd/powerplay: fix sclk setting for profile mode for CZ/ST
      drm/amdgpu/gfx9: properly set the hdp flush reg for Raven
      drm/amdgpu/psp: declare raven psp firmware
      drm/amdgpu: clarify license in amdgpu_trace_points.c
      drm/amdgpu: fix vf error handling
      drm/radeon: move ci_send_msg_to_smc to where it's used
      drm/radeon/dp: make radeon_dp_get_dp_link_config static
      drm/amdgpu: bump version for new AMDGPU_SCHED ioctl
      drm/amdgpu: bump version for vram lost counter query (v2)

Allen Pais (2):
      drivers:gpu:Use ARRAY_SIZE() for the size calculation of the array.
      driver:gpu: return -ENOMEM on allocation failure.

Andres Rodriguez (18):
      drm/amdgpu: use multipipe compute policy on non PL11 asics
      drm/amdgpu: add option for force enable multipipe policy for compute
      drm/amdgpu: map compute rings by least recently used pipe
      drm/amdgpu: add helper to convert a ttm bo to amdgpu_bo
      drm/amdgpu: introduce AMDGPU_GEM_CREATE_EXPLICIT_SYNC v2
      drm/amdgpu: add parameter to allocate high priority contexts v11
      drm/amdgpu: add framework for HW specific priority settings v9
      drm/amdgpu: implement ring set_priority for gfx_v8 compute v9
      drm/amdgpu: make amdgpu_to_sched_priority detect invalid parameters
      drm/amd/sched: allow clients to edit an entity's rq v2
      drm/amdgpu: introduce AMDGPU_CTX_PRIORITY_UNSET
      drm/amdgpu: add plumbing for ctx priority changes v2
      drm/amdgpu: add interface for editing a foreign process's priority v3
      drm/amdgpu: rename context priority levels
      drm/amdkfd: use standard kernel kfifo for IH
      drm/amdkfd: increase IH num entries to 8192
      drm/amdkfd: wait only for IH work on IH exit
      drm/amdkfd: use a high priority workqueue for IH work

Andrey Grodzovsky (3):
      drm/amdgpu: Refactor amdgpu_cs_ib_vm_chunk and amdgpu_cs_ib_fill.
      drm/amdgpu: Move old fence waiting before reservation lock is aquired v2
      drm/amdgpu: Fix extra call to amdgpu_ctx_put.

Andrzej Hajda (10):
      drm/exynos/mixer: abstract out output mode setup code
      drm/exynos/mixer: move mode commit to enable callback
      drm/exynos/mixer: move resolution configuration to single function
      drm/exynos/mixer: fix mode validation code
      drm/exynos/mixer: remove mixer_resources sub-structure
      drm/exynos/hdmi: remove redundant mode field
      drm/exynos: add mode_fixup callback to exynos_drm_crtc_ops
      drm/exynos/mixer: pass actual mode on MIXER to encoder
      drm/exynos/hdmi: quirk for support mode timings conversion
      drm/exynos/mixer: enable support for 1024x768 and 1280x1024 modes

Anuj Phogat (1):
      drm/i915/kbl: Change a KBL pci id to GT2 from GT1.5

Archit Taneja (5):
      drm/msm/hdmi: Remove mmagic_iface_clk from the 8x96 PHY clocks
      drm/msm/mdp5: Prepare mdp5_pipe_assign for some rework
      drm/msm/mdp5: Update mdp5_pipe_assign to spit out both planes
      drm/msm/mdp5: mdp5_crtc: Restore cursor state only if LM cursors
are enabled
      drm/msm/mdp5: Don't use async plane update path if plane
visibility changes

Arnd Bergmann (11):
      drm: gma500: fix logic error
      drm/stm: fix warning about multiplication in condition
      drm/radeon: properly initialize r600_audio_status() data
      drm/i915/selftests: fix check for intel IOMMU
      drm/i915: avoid potential uninitialized variable use
      drm: vblank: use ktime_t instead of timeval
      drm: vblank: remove drm_timestamp_monotonic parameter
      drm/rockchip: add PINCTRL dependency for LVDS
      drm/msm: use %z format modifier for printing size_t
      drm/amdgpu/virt: don't dereference undefined 'module' struct
      drm/rockchip: add CONFIG_OF dependency for lvds

Arvind Yadav (5):
      drm: i2c: ch7006: constify i2c_device_id
      drm: i2c: sil164: constify i2c_device_id
      drm: i2c: tda998x: constify i2c_device_id
      drm/tilcdc: tilcdc_panel: make of_device_ids const.
      drm/tilcdc: tilcdc_tfp410: make of_device_ids const.

Bas Nieuwenhuizen (1):
      drm/amdgpu: Account for shadow PTs in mapping update IB size.

Ben Goz (1):
      drm/amdkfd: Register/Deregister process on qpd resolution

Ben Skeggs (149):
      remove some useless semicolons
      drm/nouveau/kms/nv50: prevent oops in failure paths
      drm/nouveau: fix handling of GART OOM on pre-NV50 chipsets
      drm/nouveau/core/object: separate oclass data out into its own header
      drm/nouveau/core/object: allow arguments to be passed to map function
      drm/nouveau/core/object: plumb the unmap ioctl through
      drm/nouveau/core/gpuobj: remove embedded struct nvkm_object
      drm/nouveau/core/subdev: compile out messages for unwanted debug levels
      drm/nouveau/core/device: remove object include to prevent
unnecessary rebuilds
      drm/nouveau/secboot: add missing newline in debug message
      drm/nouveau/disp: add missing newline in ior debug messages
      drm/nouveau/fifo: perform reset from preinit
      drm/nouveau/bar/nv50,g84: drop mmu invalidate
      drm/nouveau/bar: remove NV_PMC_ENABLE_PFIFO twiddling
      drm/nouveau/bar: swap oneinit/init ordering, and rename bar3 to bar2
      drm/nouveau/bar: move bar1 initialisation into its own function
      drm/nouveau/bar: implement bar1 teardown
      drm/nouveau/bar: expose interface to bar2 initialisation
      drm/nouveau/bar: expose interface to bar2 teardown
      drm/nouveau/bar: modify interface to bar1 vmm mapping
      drm/nouveau/bar: modify interface to bar2 vmm mapping
      drm/nouveau/bar: prevent BAR2 mapping of objects during destructor
      drm/nouveau/bar: initialise bar2 during oneinit
      drm/nouveau/bar/gm107-: wait for instance block binding to complete
      drm/nouveau/imem: add some useful debug output
      drm/nouveau/core/memory: split info pointers from accessor pointers
      drm/nouveau/imem: allow nvkm_instobj to be directly embedded in
backend object
      drm/nouveau/imem/nv04: directly embed nvkm_instobj into nv04_instobj
      drm/nouveau/imem/nv40: embed nvkm_instobj directly into nv04_instobj
      drm/nouveau/imem/nv40: map bar2 write-combined
      drm/nouveau/imem/nv50: split object map out from api functions
      drm/nouveau/imem/nv50: move slow-path locking into rd/wr functions
      drm/nouveau/imem/nv50: embed nvkm_instobj directly into nv04_instobj
      drm/nouveau/imem/nv50: map bar2 write-combined
      drm/nouveau/imem/nv50: prevent fast-path for mapped objects when
BAR isn't ready
      drm/nouveau/imem/nv50: support eviction of BAR2 mappings
      drm/nouveau/imem: remove now-unused wrapper for backend objects
      drm/nouveau/imem: separate suspend/resume backup handling into
their own functions
      drm/nouveau/imem: switch to kvmalloc/kvfree for suspend/resume backup
      drm/nouveau/imem: separate pre-BAR2-bootstrap objects from the rest
      drm/nouveau/imem: use fast-path for suspend backup
      drm/nouveau/imem: use fast-path for resume restore
      drm/nouveau/mmu/nv04-nv4x: move global vmm to nvkm_mmu
      drm/nouveau/fb: finalise big page size selection in constructor
      drm/nouveau/gr/gf100-gk208: make use of init_gpc_mmu() hook to share setup
      drm/nouveau/gr/gf100-gk208: copy big page size setting from fb
      drm/nouveau: store nouveau_drm in nouveau_cli, as opposed to drm_device
      drm/nouveau: remove unused sysmem fence code
      drm/nouveau: split various bo flags out into their own members
      drm/nouveau: simplify const-va map condition
      drm/nouveau: swap loop order in move_notify() hook
      drm/nouveau: remove unnecessary use of ttm_mem_type_manager::priv
      drm/nouveau: consolidate identical functions in nouveau_ttm.c
      drm/nouveau: hang drm client of a master
      drm/nouveau: separate buffer object backing memory from nvkm structures
      drm/nouveau: separate constant-va tracking from nvkm vma structure
      drm/nouveau/core/mm: have users explicitly define heap identifiers
      drm/nouveau/core/mm: introduce functions to access info about a
given allocation
      drm/nouveau/fb: move comptags mm into nvkm_fb
      drm/nouveau/fb: move comptag init out of ram submodule
      drm/nouveau/fb/gf100: clear comptags at allocation time rather
than mmu map
      drm/nouveau/ltc: init comptag mm in fb subdev
      drm/nouveau/core/memory: comptag allocation
      drm/nouveau/core/memory: change map interface to support
upcoming mmu changes
      drm/nouveau/core/memory: add mechanism to retrieve allocation granularity
      drm/nouveau/core/memory: add reference counting
      drm/nouveau/core/memory: add some useful accessor macros
      drm/nouveau/fb/ram: add interface to allocate vram as an
nvkm_memory object
      drm/nouveau/fb/ram/gt215: allocate training buffer with nvkm_ram_get()
      drm/nouveau/imem/nv50: allocate memory with nvkm_ram_get()
      drm/nouveau/ltc/gf100-: allocate tagram with nvkm_ram_get()
      drm/nouveau: wrap nvkm_mem objects in nvkm_memory interfaces
      drm/nouveau: directly handle comptag allocation
      drm/nouveau: allocate vram with nvkm_ram_get()
      drm/nouveau/fb/ram: remove old allocators
      drm/nouveau/mmu/g84: fork from nv50
      drm/nouveau/mmu/gk104: fork from gf100
      drm/nouveau/mmu/gk20a: fork from gf100
      drm/nouveau/mmu/gm200: fork from gf100
      drm/nouveau/mmu/gm20b: fork from gf100
      drm/nouveau/mmu/gp100: fork from gf100
      drm/nouveau/mmu/gp10b: fork from gf100
      drm/nouveau/mmu: automatically handle "un-bootstrapping" of vmm
      drm/nouveau/mmu: implement page table cache
      drm/nouveau/mmu: implement page table sub-allocation
      drm/nouveau/mmu: implement base for new vm management
      drm/nouveau/mmu/nv04: implement vmm on top of new base
      drm/nouveau/mmu/nv41: implement vmm on top of new base
      drm/nouveau/mmu/nv44: implement vmm on top of new base
      drm/nouveau/mmu/nv50,g84: implement vmm on top of new base
      drm/nouveau/mmu/gf100: implement vmm on top of new base
      drm/nouveau/mmu/gk104,gk20a: implement vmm on top of new base
      drm/nouveau/mmu/gm200,gm20b: implement vmm on top of new base
      drm/nouveau/mmu/gp100,gp10b: implement vmm on top of new base
      drm/nouveau/mmu: remove old vm creation hooks
      drm/nouveau/mmu: handle instance block setup
      drm/nouveau/fifo/nv04-nv40: fix missing nvkm_kmap() calls around
ramfc access
      drm/nouveau/ltc/gm200: limit NV_MMU_PTE_COMPTAGLINE bits to 16
where required
      drm/nouveau/fb/gm200: enable
NV_PFB_MMU_CTRL_USE_FULL_COMP_TAG_LINE where appropriate
      drm/nouveau/mmu: implement new vmm backend
      drm/nouveau/mmu/nv04: implement new vmm backend
      drm/nouveau/mmu/nv41: implement new vmm backend
      drm/nouveau/mmu/nv44: implement new vmm backend
      drm/nouveau/mmu/nv50,g84: implement new vmm backend
      drm/nouveau/mmu/gf100: implement new vmm backend
      drm/nouveau/mmu/gk104,gk20a: implement new vmm backend
      drm/nouveau/mmu/gm200,gm20b: implement new vmm backend
      drm/nouveau/mmu/gp100,gp10b: implement new vmm backend
      drm/nouveau/mmu: remove support for old backends
      drm/nouveau/mmu: implement new vmm frontend
      drm/nouveau/bar/nv50: initialise vmm with new interfaces
      drm/nouveau/bar/gf100: initialise vmm with new interfaces
      drm/nouveau/secboot/gm200: initialise vmm with new interfaces
      drm/nouveau/fifo: initialise vmm with new interfaces
      drm/nouveau/fb/ram: use new interfaces for vmm operations
      drm/nouveau/imem/nv50-: use new interfaces for vmm operations
      drm/nouveau/secboot/gm200: use new interfaces for vmm operations
      drm/nouveau/fifo/gf100-: use new interfaces for vmm operations
      drm/nouveau/gr/gf100-: use new interfaces for vmm operations
      drm/nouveau/gr/gf100-: replace hardcoded instance/vmm setup in
grctx generation
      drm/nouveau: remove explicit unmaps
      drm/nouveau/mmu: build up information on available memory types
      drm/nouveau/mmu: add base for type-based memory allocation
      drm/nouveau/mmu/nv04-nv4x: type-based vram allocation and bar mapping
      drm/nouveau/mmu/nv50,g84: type-based vram allocation and bar mapping
      drm/nouveau/mmu/gf100-: type-based vram allocation and bar mapping
      drm/nouveau/mmu: define user interfaces to mmu
      drm/nouveau/mmu: define user interfaces to mmu memory allocation
      drm/nouveau/mmu: define user interfaces to mmu vmm opertaions
      drm/nouveau: remove trivial cases of nvxx_device() usage
      drm/nouveau: allocate mmu object for every client
      drm/nouveau: check kind validity against mmu object
      drm/nouveau: consolidate handling of dma mask
      drm/nouveau: fetch memory type indices that we care about for ttm
      drm/nouveau: use nvif_mmu_type to determine BAR1 caching
      drm/nouveau: replace use of cpu_coherent with memory types
      drm/nouveau: allocate vmm object for every client
      drm/nouveau: switch to vmm limit
      drm/nouveau: pass handle of vmm object to channel allocation ioctls
      drm/nouveau: determine memory class for each client
      drm/nouveau: implement per-client delayed workqueue with fence support
      drm/nouveau: queue delayed unmapping of VMAs on client workqueue
      drm/nouveau: remove unused nouveau_fence_work()
      drm/nouveau: switch over to new memory and vmm interfaces
      drm/nouveau: improve selection of GPU page size
      drm/nouveau/mmu: remove old vmm frontend
      drm/nouveau/gr/gf100-: don't prevent module load if firmware missing
      drm/nouveau/mmu: swap out round for ALIGN
      drm/nouveau/core/memory: fix missing mutex unlock

Ben Widawsky (1):
      drm/i915/cnl: Add support slice/subslice/eu configs

Besar Wicaksono (1):
      drm/amdkfd: Add SDMA trap src id to the KFD isr wanted list

Bjorn Helgaas (2):
      vgaarb: Select a default VGA device even if there's no legacy VGA
      vgaarb: Factor out EFI and fallback default device selection

Boris Brezillon (3):
      drm/gem-cma-helper: Change the level of the allocation failure message
      drm/vc4: Add the DRM_IOCTL_VC4_GEM_MADVISE ioctl
      drm/vc4: Fix wrong printk format in vc4_bo_stats_debugfs()

Changbin Du (5):
      drm/i915: Add interface to reserve fence registers for vGPU
      drm/i915/kvmgt: Sanitize PCI bar emulation
      drm/i915/gvt: Add emulation for BAR2 (aperture) with normal file
RW approach
      drm/i915/gvt: Fix incorrect PCI BARs reporting
      drm/i915/gvt: Add support for PCIe extended configuration space

Chen-Yu Tsai (26):
      drm/sun4i: tcon: Unconditionally reset the TCON
      drm/sun4i: add components in breadth first traversal order
      drm/sun4i: tcon: Check for multiple paths between TCONs and backends
      drm/sun4i: tcon: get TCON ID and matching engine with remote endpoint ID
      drm/sun4i: tcon: Simplify sun4i_tcon_find_engine_traverse for one input
      drm/sun4i: tcon: Support backend input mux
      drm/sun4i: call drm_vblank_init with correct number of crtcs
      drm/sun4i: tcon: Add variant callback for TCON output muxing
      drm/sun4i: tcon: Add support for demuxing TCON output on A31
      drm/sun4i: hdmi: Disable clks in bind function error path and
unbind function
      drm/sun4i: hdmi: create a regmap for later use
      drm/sun4i: hdmi: Allow using second PLL as TMDS clk parent
      dt-bindings: display: sun4i: Add binding for A31 HDMI controller
      drm/sun4i: hdmi: Add support for controller hardware variants
      drm/sun4i: hdmi: Add A31 specific DDC register definitions
      drm/sun4i: hdmi: Add support for A31's HDMI controller
      drm/sun4i: don't add components that are already in the queue
      drm/sun4i: backend: Create regmap after access is possible
      drm/sun4i: backend: Use drm_fb_cma_get_gem_addr() to get display memory
      drm/sun4i: backend: Add comment explaining why registers are cleared
      drm/sun4i: hdmi: Document PAD_CTRL1 output invert bits
      drm/sun4i: hdmi: Move PAD_CTRL1 setting to mode_set function
      drm/sun4i: backend: Offset layer buffer address by DRAM starting address
      drm/sun4i: backend: Support output muxing
      drm/sun4i: hdmi: Support HDMI controller on A10
      drm/sun4i: Add support for A10 display pipeline components

Chris Wilson (117):
      drm/i915: Clear lost context-switch interrupts across reset
      drm: Release driver tracking before making the object available again
      drm/i915: Boost GPU clocks if we miss the pageflip's vblank
      drm/i915: Keep a small stash of preallocated WC pages
      drm/i915: Assert the context is not closed on object-close
      drm/i915: Assert that the handle->vma lut is empty on object close
      drm/i915: Ignore duplicate VMA stored within the per-object handle LUT
      drm/i915: Quietly cancel FBC activation if CRTC is turned off
before worker
      drm/i915: Remove excess indent in intel_finish_reset() caught by sparse
      drm/i915: Recreate vmapping even when the object is pinned
      drm/i915: Don't use GPU relocations prior to cmdparser stalls
      drm/i915: Always sanity check engine state upon idling
      drm/i915: Clear wedged status upon resume
      drm/i915: Discard the request queue if we fail to sleep before suspend
      drm/i915: Always wake the device to flush the GTT
      drm/i915: Silence sparse by using gfp_t
      drm/i915/perf: Remove __user from u64 in drm_i915_perf_oa_config
      drm/i915: Re-enable GTT following a device reset
      drm/i915: Disable MI_STORE_DATA_IMM for i915g/i915gm
      drm/i915: Move device_info.has_snoop into the static tables
      drm/i915: Lift has-pinned-pages assert to caller of
____i915_gem_object_get_pages
      drm/i915: Disable snooping (userptr, set-cache-level) on gen4
      drm/i915: Disable mmio debugging during user access
      drm/i915: Apply the GTT write flush for all !llc machines
      drm/i915: Only initialize partially filled pagetables
      drm/i915: Cleanup error paths through eb_lookup_vma()
      drm/i915: Move the context descriptor to an inline helper
      drm/i915: Squelch smatch warning for statement with no effect
      drm/i915: Use mul_u32_u32() for 32b x 32b -> 64b result
      drm/i915/selftests: Use mul_u32_u32() for 32b x 32b -> 64b result
      drm/i915: Allow HW status page to be bound high
      drm/i915/execlists: Read the context-status buffer from the HWSP
      drm/i915/execlists: Read the context-status HEAD from the HWSP
      drm/i915: Remove unused 'in_vbl' from i915_get_crtc_scanoutpos()
      drm/i915: Mark the userptr invalidate workqueue as WQ_MEM_RECLAIM
      drm/i915: Cancel all ready but queued requests when wedging
      drm/i915/execlists: Kick start request processing after a reset
      drm/i915/execlists: Move insert_request()
      drm/i915/execlists: Split insert_request()
      drm/i915/execlists: Unwind incomplete requests on resets
      drm/i915/selftests: Disable iommu for the mock device
      drm/i915/selftests: Only touch archdata.iommu when it exists
      drm/i915/fence: Avoid del_timer_sync() from inside a timer
      drm/i915: Document the split in internal and public execbuf flags
      drm/i915: Only wake the waiter from the interrupt if passed
      drm/i915: Check waiter->seqno carefully in case of preemption
      drm/i915: Confirm request->global_seqno after spin completion
      drm/i915: Make i915_spin_request() static
      drm/i915/lrc: Only enable per-context and per-bb buffers if set
      drm/i915/lrc: Skip no-op per-bb buffer on gen9
      drm/i915/execlists: Microoptimise execlists_cancel_port_request()
      drm/i915/selftests: Try to recover from a wedged GPU during reset tests
      drm/i915/execlists: Notify context-out for lost requests
      drm/i915: Use memset64() to prefill the GTT page
      drm/i915/selftests: Replace wmb() with i915_gem_chipset_flush()
      drm/i915/execlists: Move request unwinding to a separate function
      drm/i915: Give the invalid priority a magic name
      drm/i915: Move MMCD_MISC_CTRL from context w/a to standard
      drm/i915: Remove WA_(SET|CLR)_BIT
      drm/i915: Fix some tracepoints to capture full 64b
      drm/i915: Remove defunct trace points
      drm/i915/execlists: Distinguish the incomplete context notifies
      drm/i915: Introduce a preempt context
      drm/i915/execlists: Move bdw GPGPU w/a to emit_bb
      drm/i915/execlists: Keep request->priority for its lifetime
      drm/i915: Expand I915_PARAM_HAS_SCHEDULER into a capability bitmask
      drm/i915/execlists: Preemption!
      drm/i915/scheduler: Support user-defined priorities
      drm/i915/selftests: Remember to create the fake preempt context
      drm/i915: Try harder to finish the idle-worker
      drm/i915: Silence compiler warning for hsw_power_well_enable()
      drm/i915: Order two completing nop_submit_request
      drm/i915/execlists: Add a comment for the extra MI_ARB_ENABLE
      drm/i915: Assert we do not try to expand VMA for hugepage inside GGTT
      drm/i915: Make i915_engine_info pretty printer to standalone
      drm/i915/selftests: Pretty print engine state when requests fail to start
      drm/i915: Hold forcewake for the duration of reset+restart
      drm/i915/selftests: Hold the rpm wakeref for the reset tests
      drm/i915: Provide an assert for when we expect forcewake to be held
      drm/i915: Pin fence for iomap
      drm/i915: Consolidate get_fence with pin_fence
      drm/i915: Track user GTT faulting per-vma
      drm/i915: Check PIN_NONFAULT overlaps in evict_for_node
      drm/i915: Try a minimal attempt to insert the whole object for relocations
      drm/i915: Avoid evicting user fault mappable vma for pread/pwrite
      drm/i915: Early rejection of mappable GGTT pin attempts for large bo
      drm/i915: Silently fallback to 4k scratch
      drm/i915/userptr: Drop struct_mutex before cleanup
      drm/i915: Fix eviction when the GGTT is idle but full
      drm/i915/selftests: Wrap a timer into a i915_sw_fence
      drm/i915/selftests: Exercise adding requests to a full GGTT
      drm/i915: Stop asserting on set-wedged vs nop_submit_request ordering
      drm/i915: Keep the rings stopped until they have been re-initialized
      drm/i915: Always stop the rings before a missing GPU reset
      drm/i915: Use bdw_ddi_translations_fdi for Broadwell
      drm/i915: Refactor testing obj->mm.pages
      drm/i915: Rename obj->pin_display to obj->pin_global
      drm/i915: Drop debugfs/i915_gem_pin_display
      drm/i915: Remove walk over obj->vma_list for the shrinker
      drm/i915: Move dev_priv->mm.[un]bound_list to its own lock
      drm/i915: Wire up shrinkctl->nr_scanned
      drm/i915: Set our shrinker->batch to 4096 (~16MiB)
      drm/i915: Only free the oldest stale object before a fresh allocation
      drm/i915: Trim struct_mutex hold duration for i915_gem_free_objects
      drm/i915: Skip HW reinitialisation on resume if still wedged
      drm/i915: Add in-flight request details to intel_engine_dump()
      drm/i915: Report -EFAULT before pwrite fast path into shmemfs
      drm/i915/selftests: Silence the compiler for impossible errors
      drm/i915: Flush the idle-worker for debugfs/i915_drop_caches
      drm/i915: Skip waking the device to service pwrite
      drm: Require __GFP_NOFAIL for the legacy drm_modeset_lock_all
      drm/i915: Filter out spurious execlists context-switch interrupts
      drm/i915/execlists: Remove the priority "optimisation"
      drm/i915: Lock llist_del_first() vs llist_del_all()
      drm/i915: Idle the GPU before shinking everything
      drm/i915: Prune the reservation shared fence array
      drm/i915: Reorder context-close to avoid calling
i915_vma_close() under RCU

Christian Gmeiner (23):
      drm/etnaviv: use bitmap to keep track of events
      drm/etnaviv: make it possible to allocate multiple events
      drm/etnaviv: add infrastructure to query perf counter
      drm/etnaviv: add uapi for perfmon feature
      drm/etnaviv: add internal representation of perfmon_request
      drm/etnaviv: extend etnaviv_gpu_cmdbuf_new(..) with nr_pmrs
      drm/etnaviv: add performance monitor request validation
      drm/etnaviv: copy pmrs from userspace
      drm/etnaviv: add performance monitor request processing
      drm/etnaviv: add 'sync point' support
      drm/etnaviv: clear alloced event
      drm/etnaviv: use 'sync points' for performance monitor requests
      drm/etnaviv: add HI perf domain
      drm/etnaviv: add PE perf domain
      drm/etnaviv: add SH perf domain
      drm/etnaviv: add PA perf domain
      drm/etnaviv: add SE perf domain
      drm/etnaviv: add RA perf domain
      drm/etnaviv: add TX perf domain
      drm/etnaviv: add MC perf domain
      drm/etnaviv: need to disable clock gating when doing profiling
      drm/etnaviv: enable debug registers on demand
      drm/etnaviv: submit supports performance monitor requests

Christian König (74):
      drm/amdgpu: fix and cleanup shadow handling
      drm/amdgpu: discard commands of killed processes
      drm/amdgpu: remove the GART copy hack
      drm/amdgpu: fix amdgpu_ttm_bind
      drm/amdgpu: inline amdgpu_ttm_do_bind again
      drm/amdgpu: fix amdgpu_vm_bo_map trace point
      drm/amdgpu: fix and cleanup VM ready check
      drm/amdgpu: cleanup GWS, GDS and OA allocation
      drm/amdgpu: rework moved handling in the VM v2
      drm/amdgpu: add bo_va cleared flag again v2
      drm/amdgpu: fix comment on amdgpu_bo_va
      drm/amdgpu: track evicted page tables v2
      drm/amdgpu: rework page directory filling v2
      drm/amdgpu: cleanup the VM code a bit more
      drm/amdgpu: move hw generation check into amdgpu_doorbell_init v2
      drm/amdgpu: fix new PD update code for Vega10 v2
      drm/amdgpu: restrict userptr even more
      drm/amdgpu: add support for per VM BOs v2
      drm/amdgpu: add IOCTL interface for per VM BOs v3
      drm/amdgpu: bump version for support of local BOs
      drm/amdgpu: fix moved list handling in the VM
      drm/amdgpu: fix placement flags in amdgpu_ttm_bind
      drm/amdgpu: fix userptr put_page handling
      drm/amdgpu: revert "fix deadlock of reservation between cs and
gpu reset v2"
      drm/ttm: fix ttm_bo_cleanup_refs_or_queue once more
      drm/amdgpu: move taking mmap_sem into get_user_pages v2
      drm/amdgpu: stop using BO status for user pages
      drm/amdgpu: move userptr BOs to CPU domain during CS v2
      drm/amdgpu: use a rw_semaphore for MMU notifiers
      drm/amdgpu: stop reserving the BO in the MMU callback v3
      drm/ttm: allow mapping BOs while they are still on the swap list
      drm/amdgpu: move amdgpu_cs_sysvm_access_required into find_mapping
      drm/amdgpu: rework amdgpu_cs_find_mapping
      drm/amdgpu: keep the MMU lock until the update ends v4
      drm/amdgpu: move amdgpu_ttm_tt_* declarations into amdgpu_ttm.h
      drm/amdgpu: move MMU notifier related defines to amdgpu_mn.h
      drm/amdgpu: fix VM sync with always valid BOs v2
      drm/amdgpu: fix amdgpu_vm_handle_moved as well v2
      drm/amdgpu: fix cgs alignment handling
      drm/amd: remove min/max addr handling from cgs
      drm/amdgpu: fix and cleanup amdgpu_bo_create v2
      drm/ttm: fix memory leak while individualizing BOs
      drm/ttm: cleanup ttm_page_alloc_dma.c
      drm/amdgpu: use 2MB fragment size for GFX6,7 and 8
      drm/amdgpu: simplify pinning into visible VRAM
      drm/ttm: remove unsued options from ttm_mem_global_alloc_page
      drm/ttm: add support for different pool sizes
      drm/ttm: add transparent huge page support for DMA allocations v2
      drm/amdgpu: minor coding style fix
      dma-buf: make reservation_object_copy_fences rcu save
      dma-fence: fix dma_fence_get_rcu_safe v2
      drm/ttm: allocate/free multiple pages in a single call
      drm/ttm: DMA map/unmap consecutive pages as a whole v2
      drm/amdgpu: add VM support for huge pages v2
      drm/ttm: don't use compound pages for now
      drm/ttm: add transparent huge page support for cached allocations v2
      drm/ttm: move more logic into ttm_page_pool_get_pages
      drm/ttm: add transparent huge page support for wc or uc allocations v2
      drm/amdgpu: partial revert VRAM lost handling v2
      drm/amdgpu: keep copy of VRAM lost counter in job
      drm/amdgpu: move the VRAM lost counter per context
      drm/amdgpu: set -ECANCELED when dropping jobs
      drm/amdgpu: add VRAM lost query
      drm/amd/sched: fix job tear down order v2
      drm/amdgpu: minor CS optimization
      drm/ttm: fix the fix for huge compound pages
      drm/amdgpu: reserve root PD while releasing it
      drm/amdgpu: linear validate first then bind to GART
      drm/amdgpu: allow GTT overcommit during bind
      drm/amdgpu: minor cleanup for amdgpu_ttm_bind
      drm/amdgpu: don't flush the TLB before initializing GART
      drm/radeon: deprecate and remove KFD interface
      drm/ttm: once more fix ttm_buffer_object_transfer
      drm/amdgpu: fix error handling in amdgpu_bo_do_create

Christophe JAILLET (2):
      drm/amdgpu: check memory allocation failure
      drm/i915: Fix an error handling in 'intel_framebuffer_init()'

Cihangir Akturk (1):
      drm/tilcdc: switch to drm_*{get,put} helpers

Colin Ian King (9):
      drm/amdgpu: remove duplicate return statement
      drm/vc4: clean up error handling on devm_kzalloc failure
      drm/i915: remove redundant variable hw_check
      dma-buf: remove redundant initialization of sg_table
      drm/amd/powerplay: fix spelling mistake: "dividable" -> "divisible"
      drm/tve200: make two functions static
      drm/radeon: make functions alloc_pasid and free_pasid static
      drm/amdgpu: make function uvd_v6_0_enc_get_destroy_msg static
      drm/nouveau/bios: make const arrays hwsq_signature and edid_sig static

Dan Carpenter (7):
      drm/tve200: Check for IS_ERR instead of NULL in probe
      drm: of: always initialize panel in drm_of_find_panel_or_bridge()
      drm/kirin: Checking for IS_ERR() instead of NULL
      drm/bridge: adv7511: Fix a use after free
      drm/amd/powerplay: fix amd_powerplay_reset()
      drm/amdgpu: potential uninitialized variable in amdgpu_vce_ring_parse_cs()
      drm/amdgpu: Potential uninitialized variable in
amdgpu_vm_update_directories()

Daniel Drake (1):
      drm/exynos/hdmi: add 85.5MHz pixel clock for v14 HDMI PHY

Daniel Vetter (11):
      drm/doc: Document ioctl errno value patterns
      drm/doc: Update todo.rst
      drm: Try to document legacy DPMS uapi a bit better
      Merge airlied/drm-next into drm-misc-next
      MAINTAINERS: Add dri-devel as a mailing list for anything fbdev
      drm/i915: Preallocate our mmu notifier workequeu to unbreak cpu
hotplug deadlock
      drm/i915: Increase atomic update vblank evasion time with lockdep
      Merge tag 'regmap-poll-field' of
git://git.kernel.org/.../broonie/regmap into drm-misc-next
      drm/i915: Use rcu instead of stop_machine in set_wedged
      drm: some KMS todo ideas
      drm/atomic-helper: check that drivers call drm_crtc_vblank_off

Daniele Ceraolo Spurio (1):
      drm/i915/lrc: allocate separate page for HWSP

Dave Airlie (57):
      Merge tag 'drm-misc-next-2017-09-20' of
git://anongit.freedesktop.org/git/drm-misc into drm-next
      Merge tag 'drm-intel-next-2017-09-07' of
git://anongit.freedesktop.org/git/drm-intel into drm-next
      Merge branch 'drm-next-4.15' of
git://people.freedesktop.org/~agd5f/linux into drm-next
      amdgpu: don't ask about CHASH just default it for now.
      amdgpu/powerplay: constify large struct
      drm/amdgpu/pp: constify some powerplay tables
      drm/amdgpu/vega10: static constify channel_number
      amdgpu/pp: remove ci_smc/smumgr split.
      amdgpu/pp: move PhwVega10_Magic to static const.
      amdgpu/pp: move amdgpu_fuses_default into static const.
      amdgpu/pp: slim down the pwr virus tables.
      drm/amdgpu: use designated initialiser for thermal_irq_src.
      amdgpu/pp: reduce size of vega10_fuses_default
      amdgfx/gfx: don't use static objects for ce/de meta. (v2)
      amdgpu/pp: use array_size to size the pwrvirus tables.
      amdgpu/pp: constify soft_dummy_pp_table.
      amdgpu/soc15: make the pcie index/data registers constant.
      amdgpu/nbio: use constant nbio_hdp_flush_reg structs.
      amdgpu/pp: rewrite polaris pwrvirus upload code.
      amdgpu/pp: rewrite fiji pwr virus upload code.
      drm/amdgpu: use designated initialiser for thermal_irq_src.
      BackMerge tag 'v4.14-rc3' into drm-next
      Merge tag 'drm-misc-next-2017-10-05' of
git://anongit.freedesktop.org/git/drm-misc into drm-next
      Merge branch 'drm-next-4.15' of
git://people.freedesktop.org/~agd5f/linux into drm-next
      Merge tag 'drm-intel-next-2017-09-29' of
git://anongit.freedesktop.org/drm/drm-intel into drm-next
      Merge tag 'drm-misc-next-2017-10-12' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next
      Merge tag 'omapdrm-4.15' of git://git.kernel.org/.../tomba/linux
into drm-next
      Merge branch 'etnaviv/next' of
https://git.pengutronix.de/git/lst/linux into drm-next
      Merge tag 'drm-misc-next-2017-10-16' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next
      Merge tag 'tilcdc-4.15' of https://github.com/jsarha/linux into drm-next
      drm/plane: drop num_overlay_planes (v3)
      Merge branch 'drm-next-4.15' of
git://people.freedesktop.org/~agd5f/linux into drm-next
      Merge tag 'drm-intel-next-2017-10-12' of
git://anongit.freedesktop.org/drm/drm-intel into drm-next
      Merge tag 'drm-amdkfd-next-2017-10-18' of
git://people.freedesktop.org/~gabbayo/linux into drm-next
      amdgpu: add padding to the fence to handle ioctl.
      Merge tag 'drm/tegra/for-4.15-rc1' of
git://anongit.freedesktop.org/tegra/linux into drm-next
      Merge tag 'drm-misc-next-2017-10-20' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next
      Merge branch 'etnaviv/next' of
https://git.pengutronix.de/git/lst/linux into drm-next
      Merge branch 'drm-next-4.15' of
git://people.freedesktop.org/~agd5f/linux into drm-next
      Merge tag 'drm-msm-next-2017-11-01' of
git://people.freedesktop.org/~robclark/linux into drm-next
      Merge tag 'drm-hisilicon-next-2017-11-01' of
github.com:xin3liang/linux into drm-next
      Backmerge tag 'v4.14-rc7' into drm-next
      Merge branch 'linux-4.15' of git://github.com/skeggsb/linux into drm-next
      Merge branch 'drm-next-4.15' of
git://people.freedesktop.org/~agd5f/linux into drm-next
      Merge tag 'drm-amdkfd-next-2017-11-02' of
git://people.freedesktop.org/~gabbayo/linux into drm-next
      Merge branch 'linux-4.15' of git://github.com/skeggsb/linux into drm-next
      Merge tag 'drm-intel-next-2017-10-23' of
git://anongit.freedesktop.org/drm/drm-intel into drm-next
      Merge branch 'drm-next-4.15' of
git://people.freedesktop.org/~agd5f/linux into drm-next
      Merge tag 'drm-misc-next-fixes-2017-11-07' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next
      Merge branch 'drm-next-4.15' of
git://people.freedesktop.org/~agd5f/linux into drm-next
      Merge tag 'drm-misc-next-fixes-2017-11-08' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next
      drm/mode_object: fix documentation for object lookups.
      Merge tag 'drm-misc-fixes-2017-11-02' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next
      Merge tag 'drm-intel-next-fixes-2017-11-10' of
git://anongit.freedesktop.org/drm/drm-intel into drm-next
      Merge tag 'drm-misc-fixes-2017-11-13' of
git://anongit.freedesktop.org/drm/drm-misc into drm-next
      Merge branch 'linus-4.14-rc4-acp-prereq' of
git://people.freedesktop.org/~agd5f/linux into drm-next
      Merge tag 'exynos-drm-next-for-v4.15' of
git://git.kernel.org/.../daeinki/drm-exynos into drm-next

David Weinehall (2):
      drm/i915: Speed up DMC firmware loading
      drm/i915: Add has_psr-flag to gen9lp

Dhinakaran Pandiyan (5):
      drm/dp/mst: Sideband message transaction to power up/down nodes
      drm/i915/spt+: Don't reset invalid AUX channel interrupt bits in SDEIMR
      drm/dp: DPCD register defines for link status within ESI field
      drm/i915/dp: Remove useless debug about TPS3 support
      drm/i915/mst: Use MST sideband message transactions for dpms control

Dominik Behr (1):
      dma-buf/sw_sync: force signal all unsignaled fences on dying timeline

Emil Renner Berthing (1):
      drm/rockchip: analogix_dp: Use mutex rather than spinlock

Emily Deng (1):
      drm/amdgpu/virtual_dce: Virtual display doesn't support disable
vblank immediately

Eric Anholt (7):
      drm/vc4: Avoid using vrefresh==0 mode in DSI htotal math.
      drm/vc4: Set up the DSI host at pdev probe time, not component bind.
      dt-bindings: Document the Raspberry Pi Touchscreen nodes.
      drm/panel: Add support for the Raspberry Pi 7" Touchscreen.
      drm/vc4: Move the DSI clock divider workaround closer to the clock call.
      drm/vc4: Fix pitch setup for T-format scanout.
      drm/vc4: Fix sleeps during the IRQ handler for DSI transactions.

Eric Huang (8):
      drm/amdgpu: add cgs query info of pci bus devfn
      drm/amd/powerplay: add register thermal interrupt in hwmgr_hw_init
      drm/amd/powerplay: implement register thermal interrupt for Vega10
      drm/amd/powerplay: change alert temperature range
      drm/amd/powerplay: add one smc message for Vega10
      drm/amd/powerplay: fix performance drop on Vega10
      drm/amd/powerplay: change ASIC temperature reading on Vega10
      drm/amd/powerplay: fix memory leak of hardcoded pptable

Evan Quan (21):
      drm/amd/powerplay: unhalt mec after loading
      drm/amd/powerplay: ACG frequency added in PPTable
      drm/amdgpu: support polaris10/11/12 new cp firmwares
      drm/amdgpu: declare the new firmware files needed by polaris asics
      drm/amdgpu: fixed raven psp cmd prepare and submit
      drm/amdgpu: added api for stopping psp ring (v2)
      drm/amdgpu: stop psp ring on suspend
      drm/amdgpu: enable raven to load firmwares by psp at default (v2)
      drm/amd/amgpu: update raven sdma golden setting
      drm/amd/amgpu: update vega10 sdma golden setting
      drm/amd/amdgpu: add vega10/raven mmhub/athub golden settings
      drm/amd/powerplay: fixed wrong return value on error (v2)
      drm/amd/powerplay: added new raven ppsmc messages
      drm/amd/powerplay: get raven max/min gfx clocks (v2)
      drm/amd/powerplay: get raven current sclk and mclk (v2)
      drm/amd/powerplay: get raven sclk and mclk levels (v2)
      drm/amd/powerplay: fix typo on avfs disable
      drm/amd/powerplay: retrieve the real-time coreClock values
      drm/amdgpu/psp: prevent page fault by checking write_frame address(v4)
      drm/amd/powerplay: wrong control mode cause the fan spins faster
unnecessarily
      drm/amd/powerplay: suppress KASAN out of bounds warning in
vega10_populate_all_memory_levels

Fabio Estevam (2):
      drm/panel: simple: Skip error message on deferred probe
      drm/panel: simple: Remove unneeded gpiod NULL check

Felix Kuehling (27):
      drm/amdgpu: Fix huge page updates with CPU
      drm/amdkfd: Adjust dequeue latencies and timeouts
      drm/amdgpu: Fix error handling in amdgpu_vm_init
      drm/amdgpu: Add PASID management
      drm/radeon: Add PASID manager for KFD
      drm/amdkfd: Separate doorbell allocation from PASID
      drm/amdkfd: Use PASID manager from KGD
      drm/amdgpu: Add prescreening stage in IH processing (v2)
      drm/amd: Closed hash table with low overhead (v2)
      drm/amdgpu: Track pending retry faults in IH and VM (v2)
      drm/amdkfd: Fix MQD updates
      drm/amdkfd: Improve process termination handling
      drm/amdkfd: Clean up process queue management
      drm/amdkfd: Limit queue number per process and device to 127
      drm/amd/chash: Fix typo
      drm/amdgpu: Handle GPUVM fault storms
      drm/amdkfd: Don't dereference kfd_process.mm
      drm/amdkfd: Clean up kfd_wait_on_events
      drm/amdkfd: Fix event destruction with pending waiters
      drm/amdkfd: remove redundant kfd_event_waiter.input_index
      drm/amdkfd: Use wait_queue_t to implement event waiting
      drm/amdkfd: Simplify events page allocator
      drm/amdkfd: Simplify event ID and signal slot management
      drm/amdkfd: Use IH context ID for signal lookup
      drm/amdkfd: Make event limit dependent on user mode mapping size
      drm/amdkfd: Update queue_count before mapping queues
      drm/amdkfd: Minor cleanups

Frank Binns (1):
      dma-fence: remove duplicate word in comment

Gabriel Krisman Bertazi (1):
      drm: Fix example comment of format modifier blob

Georgiana Chelu (3):
      drm/amd/powerplay: Don't cast kzalloc() return value
      drm/amd/powerplay: Remove useless variable
      drm/amd/powerplay: Place the constant on the right side of the test

Gerd Hoffmann (2):
      drm/qxl: replace QXL_INFO with DRM_DEBUG_DRIVER
      qxl: alloc & use shadow for dumb buffers

Gustavo A. R. Silva (2):
      drm/nouveau/devinit/nv04: mark expected switch fall-throughs
      drm/nouveau/bios/timing: mark expected switch fall-throughs

Gustavo Padovan (3):
      dma-buf/sync_file: document flags field
      drm/msm: update cursors asynchronously through atomic
      drm/msm: remove mdp5_cursor_plane_funcs

Haneen Mohammed (8):
      drm/rockchip: Replace dev_* with DRM_DEV_*
      drm: Remove obsolete "This is gross" comment
      drm/doc: Remove todo item about "This is gross" comment
      drm/rockchip: Rely on the default best_encoder() behavior
      drm/armada: Remove unused #include <drmP.h>
      drm/tinydrm: Remove explicit .best_encoder assignment
      drm/armada: Replace drm_gem_object_reference/unreference() with _get/put()
      drm/armada: Replace drm_framebuffer_reference/unreference() with
_get/put()

Hans Verkuil (12):
      dt-bindings: adi,adv7511.txt: document cec clock
      drm: adv7511/33: add HDMI CEC support
      omapdrm: encoder-tpd12s015: keep ls_oe_gpio high
      omapdrm: hdmi.h: extend hdmi_core_data with CEC fields
      omapdrm: hdmi4: make low-level functions available
      omapdrm: hdmi4: prepare irq handling for HDMI CEC support
      omapdrm: hdmi4: move hdmi4_core_powerdown_disable to hdmi_power_on_core()
      omapdrm: hdmi4: refcount hdmi_power_on/off_core
      omapdrm: hdmi4_cec: add OMAP4 HDMI CEC support
      omapdrm: hdmi4: hook up the HDMI CEC support
      omapdrm: omapdss_hdmi_ops: add lost_hotplug op
      drm/tegra: hdmi: Add cec-notifier support

Harish Kasiviswanathan (2):
      drm/amdgpu: Refactor amdgpu_move_blit
      drm/amdgpu: Add amdgpu_find_mm_node()

Harry Wentland (1):
      drm/amd/include: Add hdmi_redriver_set to atomfirmware

Harsha Sharma (4):
      drm/i915: Replace *_reference/unreference() or *_ref/unref with _get/put()
      drm/tinydrm: Replace dev_error with DRM_DEV_ERROR
      drm: Replace kzalloc with kcalloc
      drm/i915: Replace *_reference/unreference() or *_ref/unref with _get/put()

Helge Deller (1):
      i915: Use %pS printk format for direct addresses

Himanshu Jha (4):
      drm/amd: Remove null check before kfree
      drm/amd/powerplay/hwmgr: Remove null check before kfree
      drm/gma500: Remove null check before kfree
      drm/amd/powerplay: remove unnecessary call to memset

Hoegeun Kwon (2):
      dt-bindings: Add binding for Samsung S6E63J0X03 panel
      drm/panel: Add support for S6E63J0X03 panel

Horace Chen (4):
      drm/amdgpu/sriov:increate mailbox polling timeout
      drm/amdgpu: Add a new flag for SR-IOV to share memory between PF & VF
      drm/amdgpu: Reserve shared memory on VRAM for SR-IOV
      drm/amdgpu: SR-IOV data exchange between PF&VF

Ilia Mirkin (1):
      drm/nouveau/kms: add 8.1Gbps DP link rate

Imre Deak (6):
      drm/i915/gen9+: Set same power state before hibernation image save/restore
      drm/i915/gen8+: Init/reset display interrupts only if i915 IRQs
are enabled
      drm/i915/glk, cnl: Implement WaDisableScalarClockGating
      drm/i915: Fix DDI PHY init if it was already on
      drm/i915/cnl: Reprogram DMC firmware after S3/S4 resume
      drm/i915/glk: Fix DMC/DC state idleness calculation

Inki Dae (4):
      drm/mediatek: hdmi: clean up drm_bridge_add call
      drm/sti: sti_vdo: clean up drm_bridge_add call
      drm/exynos: mic: clean up drm_bridge_add call
      drm/bridge: change return type of drm_bridge_add function

James Ausmus (3):
      drm/i915: Fix DP_AUX_CH_CTL_TIME_OUT naming
      drm/i915/bdw: Fix DP_AUX_CH_CTL_TIME_OUT setting
      drm/i915: Handle drm-layer errors in intel_dp_add_mst_connector

James Zhu (9):
      drm/amdgpu: add uvd enc registers in header
      drm/amdgpu: add uvd enc command in header
      drm/amdgpu: add new uvd enc ring methods
      drm/amdgpu: add uvd enc rings
      drm/amdgpu: add uvd enc into run queue
      drm/amdgpu: add uvd enc vm functions (v2)
      drm/amdgpu: add uvd enc ring test
      drm/amdgpu: add uvd enc ib test
      drm/amdgpu: add uvd enc irq

Jani Nikula (46):
      drm/i915/dp: rename intel_dp_is_edp to intel_dp_is_port_edp
      drm/i915/dp: make is_edp non-static and rename to intel_dp_is_edp
      drm/i915/bios: amend child device config parameters
      drm/i915/bios: document BDB versions of child device config fields
      drm/i915/bios: remove the raw version of child device config
      drm/i915/bios: add legacy contents to common child device config
      drm/i915/bios: throw away high level child device union
      drm/i915/bios: throw away struct old_child_dev_config
      drm/i915/bios: document child device config dvo_port values a bit better
      drm/i915/bios: group device type definitions together
      drm/i915/bios: throw away unused DVO_* macros
      drm/i915/bios: drop the rest of the p_ prefixes from pointers
      drm/i915/bios: split up iboost to hdmi and dp bitfields
      drm/i915/bios: amend bdb_general_features
      drm/i915/bios: amend child device flags based on intel_vbt_decode
      drm/i915/bios: amend edp block based on intel_vbt_decode
      Merge drm-upstream/drm-next into drm-intel-next-queued
      drm/i915: Update DRIVER_DATE to 20170907
      Merge tag 'gvt-next-2017-09-08' of
https://github.com/01org/gvt-linux into drm-intel-next-queued
      drm: handle override and firmware EDID at drm_do_get_edid() level
      drm: add backwards compatibility support for drm_kms_helper.edid_firmware
      drm/i915: always update ELD connector type after get modes
      drm/i915/bios: ignore HDMI on port A
      Merge drm-upstream/drm-next into drm-intel-next-queued
      drm/i915: Update DRIVER_DATE to 20170929
      drm/i915: push DDI CRT underrun reporting on enable to encoder
      drm/i915: push DDI CRT underrun reporting on disable to encoder
      drm/i915: push DDI and DSI underrun reporting on enable to encoder
      drm/i915: push DDI FDI link training on enable to CRT encoder
      drm/i915/crt: clean up encoder hook assignment
      drm/i915/bios: parse DDI ports also for CHV for HDMI DDC pin and
DP AUX channel
      drm/i915/bios: refactor parse general definitions
      drm/i915/bios: don't initialize fields based on vbt version
      drm/i915/bios: remove an unnecessary temp variable
      drm/i915/bios: cleanup comments and useless return
      drm/i915/bios: merge parse_device_mapping() into
parse_general_definitions()
      drm/i915/bios: parse SDVO device mapping from pre-parsed child devices
      drm/i915/bios: don't pass bdb to parsers that don't parse VBT directly
      drm/dp: WARN about invalid/unknown link rates and bw codes
      drm/i915/dp: centralize max source rate conditions more
      drm/i915/dp: limit sink rates based on rate
      drm/i915: Update DRIVER_DATE to 20171012
      Merge drm-upstream/drm-next into drm-intel-next-queued
      drm/i915: remove g4x lowfreq_avail and has_pipe_cxsr
      drm/i915/crt: split compute_config hook by platforms
      drm/i915: Update DRIVER_DATE to 20171023

Jay Cornwall (1):
      drm/amdkfd: Disable CP/SDMA ring/doorbell in MQD

Jeff McGee (1):
      drm/i915/preempt: Fix WaEnablePreemptionGranularityControlByUMD

Jeffy Chen (1):
      drm/atomic: Unref duplicated drm_atomic_state in
drm_atomic_helper_resume()

Jonathan Liu (4):
      drm/panel: simple: Fix width and height for Olimex LCD-OLinuXino-4.3TS
      drm/panel: simple: Add missing panel_simple_unprepare() calls
      drm/sun4i: tcon: Add support for A10 TCON
      drm/sun4i: Add support for A20 display pipeline components

Joonas Lahtinen (6):
      drm/i915: Introduce INTEL_GEN_MASK
      drm/i915: Simplify i915_reg_read_ioctl
      drm/i915: Don't use BIT() in UAPI section
      drm/i915: Unify uC variable types to avoid flooding checkpatch.pl
      drm/i915: Simplify intel_sanitize_enable_ppgtt
      drm/i915: Disable lazy PPGTT page table optimization for vGPU

Jordan Crouse (10):
      drm: fix typo in drm_gem_get_pages() comment
      drm/msm: Add per-instance submit queues
      drm/msm: Move memptrs to msm_gpu
      drm/msm: Support multiple ringbuffers
      drm/msm: Add a parameter query for the number of ringbuffers
      drm/msm: Shadow current pointer in the ring until command is complete
      drm/msm: Make the value of RB_CNTL (almost) generic
      drm/msm: Implement preemption for A5XX targets
      drm/msm: Removed unused struct_mutex_task
      drm/msm: dump a rd GPUADDR header for all buffers in the command

Juha-Pekka Heikkila (5):
      drm/i915: move adjusted_x/y from crtc to cache.
      drm/i915: dspaddr_offset doesn't need to be more than local variable
      drm/i915: Unify skylake plane update
      drm/i915: Unify skylake plane disable
      drm/i915: adjust get_crtc_fence_y_offset() to use base.y instead of crtc.y

Jyri Sarha (4):
      drm/tilcdc: Turn raster off in crtc reset, if it was on in the HW
      drm/tilcdc: Remove WARN_ON(!drm_modeset_is_locked(&crtc->mutex)) checks
      drm/tilcdc: Use tilcdc_crtc_shutdown() in tilcdc_crtc_destroy()
      drm/tilcdc: Precalculate total frametime in tilcdc_crtc_set_mode()

Jérémy Lefaure (4):
      drm/gma500: use ARRAY_SIZE
      drm/via: use ARRAY_SIZE
      drm/amdgpu: use ARRAY_SIZE
      drm/nouveau/bios/init: use ARRAY_SIZE

Kees Cook (1):
      drm/i915: Convert timers to use timer_setup()

Keith Packard (8):
      drm: Pass struct drm_file * to __drm_mode_object_find [v2]
      drm: Widen vblank count to 64-bits [v3]
      drm: Reorganize drm_pending_event to support future event types [v2]
      drm: Add CRTC_GET_SEQUENCE and CRTC_QUEUE_SEQUENCE ioctls [v3]
      drm: Add new LEASE debug level
      drm: Add drm_object lease infrastructure [v5]
      drm: Check mode object lease status in all master ioctl paths [v4]
      drm: Add four ioctls for managing drm mode object leases [v7]

Ken Wang (2):
      drm/amdgpu: Add GPU reset functionality for Vega10
      drm/amdgpu: correct reference clock value on vega10

Kent Russell (2):
      drm/amdgpu: Add debugfs file for VBIOS and version
      drm/amdgpu: Move VBIOS version to sysfs

Kumar, Mahesh (7):
      drm/i915: Fixed point fixed16 wrapper cleanup
      drm/i915/skl+: Optimize WM calculation
      drm/i915/gen10: Calculate and enable transition WM
      drm/i915/glk: IPC linetime watermark workaround for GLK
      drm/i915/cnl: Extend WM workaround with IPC for CNL
      drm/i915/bxt+: Enable IPC support
      drm/i915/skl+: debugfs entry to control IPC

Lars-Peter Clausen (4):
      drm/bridge: adv7511: Properly update EDID when no EDID was found
      drm/bridge: adv7511: Remove private copy of the EDID
      drm/bridge: adv7511: Enable connector polling when no interrupt
is specified
      drm/bridge: adv7511: Constify HDMI CODEC platform data

Lee, Shawn C (2):
      drm/i915/bxt: set min brightness from VBT
      drm/i915/cnp: set min brightness from VBT

Leo Liu (1):
      drm/amdgpu: remove the clearance of vce 4.0 interrupt mask

Linus Walleij (11):
      drm/tve200: Add DT bindings
      drm/tve200: Add new driver for TVE200
      drm/tve200: Replace custom connector with panel bridge
      drm/pl111: Cleanup local header file
      drm/pl111: Add all registers to debugfs
      drm/pl111: Replace custom connector with panel bridge
      drm/pl111: Enable PL110 variant
      drm/pl111: Insert delay before powering up PL11x
      drm/pl111: Add optional variant display en/disable callbacks
      drm/pl111: Add handling of Versatile platforms
      drm/tve200: Clean up panel bridging

Lionel Landwerlin (6):
      drm/i915: add GT number to intel_device_info
      drm/i915: mark all device info struct with __initconst
      drm/i915: rework IS_*_GT* macros
      uapi/drm/i915: document field usage of drm_i915_perf_oa_config
      drm/i915/perf: disable clk ratio reports on gen9
      drm/i915/perf: add support for Coffeelake GT2

Lucas Stach (14):
      drm/etnaviv: remove iommu fault handler
      drm/etnaviv: remove iova_to_phys iommu ops
      drm/etnaviv: iommuv1: fold pagetable alloc and free into caller
      drm/etnaviv: iommuv1: fold pgtable_write into callers
      drm/etnaviv: iommuv1: remove map_lock
      drm/etnaviv: mmu: stop using iommu map/unmap functions
      drm/etnaviv: mmu: mark local functions static
      drm/etnaviv: remove IOMMU dependency
      drm/etnaviv: rework clock initialization
      drm/etnaviv: remove stale comment
      drm/etnaviv: remove unused function etnaviv_gem_new
      drm/panel: simple: add Toshiba LT089AC19000
      Revert "drm/etnaviv: submit supports performance monitor requests"
      drm/etnaviv: short-circuit perfmon ioctls

Maarten Lankhorst (23):
      drm/i915: Always wait for flip_done, v2.
      drm/atomic: Return commit in drm_crtc_commit_get for better annotation
      drm/atomic: Move drm_crtc_commit to drm_crtc_state, v4.
      drm/atomic: Remove waits in drm_atomic_helper_commit_cleanup_done, v2.
      drm/atomic: Fix freeing connector/plane state too early by
tracking commits, v3.
      drm/atomic: Make async plane update checks work as intended, v2.
      drm/atomic: Remove deprecated accessor macros
      drm/atomic: Prepare drm_modeset_lock infrastructure for
interruptible waiting, v2.
      drm/atomic: Convert atomic ioctl locking to interruptible.
      drm/legacy: Convert cursor ioctl locking to interruptible.
      drm/legacy: Convert setplane ioctl locking to interruptible.
      drm/atomic: Convert pageflip ioctl locking to interruptible.
      drm/crtc: Convert setcrtc ioctl locking to interruptible.
      drm/i915: Unset legacy_cursor_update early in intel_atomic_commit, v3.
      drm/i915: Skip vblank waits for cursor updates when watermarks
dont need updating
      drm/i915: Remove use_mmio_flip modparm, v2.
      drm/i915: Use crtc_state_is_legacy_gamma in intel_color_check
      drm/atomic: Remove unneeded null check for private objects
      drm/atomic: Make atomic iterators less surprising
      drm/drm_of: Move drm_of_panel_bridge_remove_function into header.
      drm/atomic: Make atomic helper track newly assigned planes correctly, v2.
      drm/atomic: Check for busy planes/connectors before setting the commit
      drm/i915: Calculate ironlake intermediate watermarks correctly, v2.

Maciej Purski (2):
      drm/bridge: add Silicon Image SiI9234 driver
      drm/bridge/sii8620: add remote control support

Madhav Chauhan (2):
      drm/i915: Parse DSI backlight/cabc ports.
      drm/i915: Use existing DSI backlight ports info

Mahesh Kumar (1):
      drm/i915/gen9+: Add has_ipc flag in device info structure

Manasi Navare (4):
      drm/i915/edp: Increase T12 panel delay to 900 ms to fix DP AUX CH timeouts
      drm/i915/cnl: Change the macro name to DPLL_CFGCR0_DCO_FRACTION_SHIFT
      drm/i915/edp: Get the Panel Power Off timestamp after panel is off
      drm/i915/edp: Increase the T12 delay quirk to 1300ms

Marco Franchi (1):
      drm/panel: Add driver for Seiko 43WVF1G panel

Marek Olšák (3):
      drm/syncobj: extract two helpers from drm_syncobj_create
      drm/syncobj: add a new helper drm_syncobj_get_fd
      drm/amdgpu: add FENCE_TO_HANDLE ioctl that returns syncobj or sync_file

Marta Lofstedt (2):
      drm/i915: Beef up of Beef up the IPS vs. CRC workaround
      drm/i915: Increase poll time for BDW FCLK_DONE

Matthew Auld (23):
      mm/shmem: introduce shmem_file_setup_with_mnt
      drm/i915: introduce simple gemfs
      drm/i915/gemfs: enable THP
      drm/i915: introduce page_sizes field to dev_info
      drm/i915: push set_pages down to the callers
      drm/i915: introduce page_size members
      drm/i915: introduce vm set_pages/clear_pages
      drm/i915: align the vma start to the largest gtt page size
      drm/i915: align 64K objects to 2M
      drm/i915: enable IPS bit for 64K pages
      drm/i915: disable GTT cache for 2M pages
      drm/i915: support 2M pages for the 48b PPGTT
      drm/i915: add support for 64K scratch page
      drm/i915: support 64K pages for the 48b PPGTT
      drm/i915: accurate page size tracking for the ppgtt
      drm/i915/debugfs: include some gtt page size metrics
      drm/i915/selftests: huge page tests
      drm/i915/selftests: mix huge pages
      drm/i915: disable platform support for vGPU huge gtt pages
      drm/i915: enable platform support for 64K pages
      drm/i915: enable platform support for 2M pages
      drm/i915: s/sg_mask/sg_page_sizes/
      drm/i915/selftests: ditch the kernel context

Maxime Ripard (8):
      MAINTAINERS: sun4i-drm is now maintained in drm-misc
      drm/sun4i: Implement endpoint parsing using kfifo
      drm/sun4i: Realign Makefile padding and reorder it
      drm/sun4i: tcon: Make tcon_set_mux mode argument const
      drm/sun4i: tcon: Make tcon_get_clk_delay mode argument const
      drm/sun4i: tcon: Don't rely on encoders to enable the TCON
      drm/sun4i: tcon: Don't rely on encoders to set the TCON mode
      drm/sun4i: tcon: Move out the tcon0 common setup

Meghana Madhyastha (5):
      drm/agpsupport: Replace "foo * bar" with "foo *bar"
      drm/agpsupport: Remove assignment in if condition
      drm/agpsupport: Move EXPORT_SYMBOL so that it immediately
follows its function
      drm/agpsupport: Remove extra blank line
      drm/Documentation: Refine TODO for backlight helpers in tinydrm

Michal Wajdeczko (35):
      drm/i915: Make PAT macros more robust
      drm/i915: Rename lvds_use_ssc modparam to panel_use_ssc
      drm/i915: Introduce custom variant of module_param_named macro
      drm/i915: Extend private i915_param_named macro with description
      drm/i915: Rename global i915 to i915_modparams
      drm/i915: Make I915_PARAMS_FOR_EACH macro more flexible
      drm/i915: Extend I915_PARAMS_FOR_EACH with default member value
      drm/i915: Fix default values of some modparams
      drm/i915: Make intel_uncore.h header self-contained
      drm/i915/uc: Drop unnecessary forward declaration
      drm/i915/uc: Move uC fw helper code into dedicated files
      drm/i915/huc: Move HuC declarations into dedicated header
      drm/i915/guc: Move Guc early init into own function
      drm/i915/guc: Move GuC log declarations into dedicated header
      drm/i915/guc: Move GuC submission declarations into dedicated header
      drm/i915/guc: Move GuC core definitions into dedicated files
      drm/i915/uc: Fix includes order
      drm/i915/uc: Unify initialization of the uC firmware helper
      drm/i915/huc: Fix includes in intel_huc.c
      drm/i915: Fix pointer-to-int conversion
      drm/i915: Move intel_guc_wopcm_size to intel_guc.c
      drm/i915/guc: Move GuC boot param initialization out of xfer
      drm/i915/guc: Small fixups post code move
      drm/i915/guc: Move doc near related definitions
      drm/i915/guc: Rename intel_guc_loader.c to intel_guc_fw.c
      drm/i915/guc: Reorder functions in intel_guc_fw.c
      drm/i915/uc: Check all firmwares against WOPCM size
      drm/i915/guc: Pick better place for Guc final status message
      drm/i915/uc: Improve debug messages in firmware fetch
      drm/i915/uc: Add message with firmware url
      drm/i915: Update DMC firmware load error messages
      drm/i915/uc: Unify firmware loading
      drm/i915/guc: Update Guc messages on load failure
      drm/i915/huc: Move fw select function
      drm/i915/uc: Add pretty printer for uc firmware

Michał Winiarski (6):
      drm/i915/guc: Remove obsolete comments and remove unused variable
      drm/i915/guc: Submit GuC workitems containing coalesced requests
      drm/i915/guc: Simplify GuC doorbell logic
      drm/i915/guc: Cleanup adding GuC work items
      drm/i915/execlists: Cache the last priolist lookup
      drm/i915/preempt: Default to disabled mid-command preemption levels

Michel Dänzer (4):
      amdgpu: Only destroy fbdev framebuffer if it was initialized
      radeon: Only destroy fbdev framebuffer if it was initialized
      drm/ttm: Always and only destroy bo->ttm_resv in ttm_bo_release_list
      drm/ttm: Downgrade pr_err to pr_debug for memory allocation failures

Michel Thierry (4):
      drm/i915: Re-enable per-engine reset for Broxton
      drm/i915: Add a default case in gen7 hwsp switch-case
      drm/i915/lrc: Clarify the format of the context image
      drm/i915/guc: Don't make assumptions while getting the lrca offset

Mika Kahola (7):
      drm/i915/dsi: Replace MIPI command error message with debug message
      drm/i915: Don't relay on I915_MAX_PIPES
      drm/i915: Remove I915_MAX_PIPES dependency for DDB allocation
      drm/i915: Fold IRQ pipe masks
      drm/i915: Favor for_each_pipe() macro
      drm/i915: Cleanup South Error Interrupts
      drm/i915: Get rid of hardcoded pipes

Mika Kuoppala (7):
      drm/i915: Stop engines before reset
      drm/i915: Make own struct for execlist items
      drm/i915: Move execlist initialization into intel_engine_cs.c
      drm/i915: Wrap port cancellation into a function
      drm/i915: Add execlist_port_complete
      drm/i915: Make execlist port count variable
      drm/i915: Use execlists_num_ports instead of size of array

Mikko Perttunen (10):
      dt-bindings: host1x: Add Tegra186 information
      gpu: host1x: Add Tegra186 support
      drm/tegra: Add Tegra186 support for VIC
      gpu: host1x: Call of_dma_configure() after setting bus
      gpu: host1x: Enable Tegra186 syncpoint protection
      gpu: host1x: Enable gather filter
      gpu: host1x: Improve debug disassembly formatting
      gpu: host1x: Disassemble more instructions
      gpu: host1x: Fix incorrect comment for channel_request
      drm/tegra: Use u64_to_user_ptr helper

Monk Liu (27):
      drm/ttm: fix missing inc bo_count
      drm/ttm:fix wrong decoding of bo_count
      drm/amdgpu: fix wait_any_fence
      drm/amdgpu/sriov:fix missing error handling
      drm/amdgpu:no kiq in IH
      drm/amdgpu/sriov:move in_reset to adev and rename
      drm/amdgpu/sriov:don't load psp fw during gpu reset
      drm/amdgpu:insert TMZ_BEGIN
      drm/amdgpu:hdp flush should be put it initialized
      drm/amdgpu:use formal register to trigger hdp invalidate
      drm/amdgpu/sriov:fix page fault issue of driver unload
      drm/amdgpu/sriov:init csb for gfxv9
      drm/amdgpu:make ctx_add_fence interruptible(v2)
      drm/amdgpu/sriov:fix memory leak after gpu reset
      drm/amdgpu:halt when vm fault
      drm/amdgpu:unmap KCQ in gfx hw_fini(v2)
      drm/amdgpu/sriov:alloc KIQ MQD in VRAM(v2)
      drm/amdgpu:fix uvd ring fini routine(v2)
      drm/amdgpu:fix firmware memoryleak(v2)
      drm/amdgpu:reduce wb to 512 slot
      drm/amdgpu:fix duplicated setting job's vram_lost
      drm/amdgpu:don't check soft_reset for sriov
      drm/amdgpu/sriov:now must reinit psp
      drm/amdgpu:fix vf_error_put
      drm/amdgpu:fix wb_clear
      drm/ttm:fix memory leak due to individualize
      drm/amdgpu:add fw-vram-usage for atomfirmware

Nanley Chery (1):
      drm/i915/cnl: Allow the reg_read ioctl to read the RCS TIMESTAMP register

Nicolai Hähnle (5):
      drm/amd/sched: rename amd_sched_entity_pop_job
      drm/amd/sched: fix an outdated comment
      drm/amd/sched: move adding finish callback to amd_sched_job_begin
      drm/amd/sched: NULL out the s_fence field after run_job
      drm/amd/sched: fix deadlock caused by unsignaled fences of deleted jobs

Nicolas Iooss (1):
      drm/amd/powerplay: initialize a variable before using it

Noralf Trønnes (25):
      drm/arm/hdlcd: Use drm_gem_fb_create()
      drm/arm/mali: Use drm_gem_fb_create()
      drm/atmel-hlcdc: Use drm_gem_fb_create()
      drm/sti: Use drm_gem_fb_create()
      drm/zte: Use drm_gem_fb_create()
      drm/gem: drm_gem_dumb_map_offset(): reject dma-buf
      drm/armada: Use .dumb_map_offset and .dumb_destroy defaults
      drm/arc: Use drm_gem_fb_create()
      drm/stm: Use drm_gem_fb_create()
      drm/fb-helper: Avoid NULL ptr dereference in fb_set_suspend()
      drm/tilcdc: Use drm_gem_fb_create()
      drm/imx: Use drm_gem_fb_create() and drm_gem_fb_prepare_fb()
      drm/gem-fb-helper: Use debug message on gem lookup failure
      drm/tinydrm: Drop driver registered message
      drm/tinydrm: Use drm_gem_framebuffer_helper
      drm/fsl-dcu: Use drm_gem_fb_create()
      drm/hisilicon/kirin: Use drm_gem_fb_create()
      drm/meson: Use drm_gem_fb_create()
      drm/mxsfb: Use drm_gem_fb_create() and drm_gem_fb_prepare_fb()
      drm/rcar-du: Use drm_gem_fb_create()
      drm/shmobile: Use drm_gem_fb_create()
      drm/sun4i: Use drm_gem_fb_create()
      drm/tve200: Use drm_gem_fb_create() and drm_gem_fb_prepare_fb()
      drm/fb-cma-helper: Remove unused functions
      drm/gem-fb-helper: Improve documentation

Oded Gabbay (1):
      drm/amdkfd: increase limit of signal events to 4096 per process

Oscar Mateo (16):
      drm/i915/cnl: WaPushConstantDereferenceHoldDisable
      drm/i915: Make some RPS functions static
      drm/i915: Transform WaInPlaceDecompressionHang into a simple reg write
      drm/i915: Transform WaDisableI2mCycleOnWRPort into a simple reg write
      drm/i915: WaPushConstantDereferenceHoldDisable needs to modify a
masked register
      drm/i915: Transform WaDisableGafsUnitClkGating into a simple reg write
      drm/i915: Transform WaDisableDynamicCreditSharing into a simple
register write
      drm/i915: Transform WaDisablePooledEuLoadBalancingFix into a
simple register write
      drm/i915/guc: Name the default GuC scheduling policy
      drm/i915/guc: Remove WQ_WORKLOAD_SHIFT define
      drm/i915/guc: Small improvements to guc_wq_item_append
      drm/i915/cnl: Add Gen10 LRC size
      drm/i915: Transform whitelisting WAs into a simple reg write
      drm/i915/cnl: Do not add an extra page for precaution in the
Gen10 LRC size
      drm/i915: No need for RING_MAX_NONPRIV_SLOTS space
      drm/i915: Use a mask when applying WaProgramL3SqcReg1Default

Pandiyan, Dhinakaran (3):
      drm/i915/mst: Debug log connector name in destroy_connector()
      drm/i915/mst: Print active mst links after update
      drm/i915/dp: Fix buffer size for sink_irq_esi read

Paulo Zanoni (5):
      drm/i915/cnl: simplify cnl_procmon_values handling
      drm/i915/cnl: extract cnl_set_procmon_ref_values
      drm/i915/cnl: don't hardcode DPCLKA_CFGCR0_DDI_CLK_SEL_SHIFT
      drm/i915: add the BXT and CNL DPLL registers to pipe_config_compare
      drm/i915: avoid division by zero on cnl_calc_wrpll_link

Peter Griffin (1):
      drm/hisilicon: Ensure LDI regs are properly configured.

Philipp Zabel (5):
      drm/etnaviv: reduce reset delay
      drm/etnaviv: remove unnecessary clock stabilization delay
      drm/panel: simple: fix vertical timings for Innolux AT043TN24
      drm/panel: simple: add bus flags for Innolux AT043TN24
      drm/panel: simple: add delays for Innolux AT043TN24

Philippe CORNU (5):
      dt-bindings: Add vendor prefix for Orise Technology
      dt-bindings: display: panel: Add support for Orise Tech OTM8009A DSI panel
      drm/panel: Add support for OTM8009A panel driver
      drm/bridge/synopsys: dsi: Register list clean up
      drm/bridge/synopsys: dsi: explicitly request exclusive reset control

Pixel Ding (1):
      drm/amdgpu: bypass lru touch for KIQ ring submission

Praveen Paneri (1):
      drm/i915: Fix FBC cfb stride programming for non X-tiled FB

Radhakrishna Sripada (1):
      drm/i915: Do not enable DRRS when PSR is enabled

Rex Zhu (73):
      drm/amd/powerplay: refine pp code for raven
      drm/amd/powerplay: add dummy pp table for raven. (v2)
      drm/amd/powerplay: notify smu once display changed on Rv.
      drm/amd/powerplay: delete eventmgr layer in poweprlay
      drm/amd/powerplay: delete eventmgr related files.
      drm/amd/powerplay: add UMD P-state in powerplay.
      drm/amd/powerplay: set uvd/vce/nb/mclk level as UMD P-state required
      drm/amd/powerplay: refine code for thermal control in powerplay
      drm/amd/powerplay: refine powerplay code for CZ/ST
      drm/amd/powerplay: refine powerplay code for RV
      drm/amd/powerplay: delete dead code in powerplay
      drm/amdgpu: rename amdgpu_dpm_funcs to amd_pm_funcs
      drm/amd/powerplay: use struct amd_pm_funcs in powerplay
      drm/amdgpu: unify the interface of amd_pm_funcs
      drm/amdgpu: add support for request SI/CI firmware in CGS
      drm/amd/powerplay: fix spelling typo in function name
      drm/amd/powerplay: fix pcie max lane define error
      drm/amd/powerplay: add CI asics support to smumgr (v3)
      drm/amd/powerplay: fix set target TDP error on tonga/iceland
      drm/amd/powerplay: refine dmesg info under powerplay
      drm/amd/powerplay: Add support functions for CI to ppatomctrl.c
      drm/amd/powerplay: Add support for CI asics to hwmgr
      drm/amdgpu: add powerplay support for CI asics
      drm/amd/powerplay: Simplify smu7_voting_clients()
      drm/amdgpu: fix checkpatch.pl warning to amdgpu_drv.c
      drm/amd/powerplay: refine phm_register_thermal_interrupt interface
      drm/amd/powerplay: refine interface in struct pp_smumgr_func
      drm/amd/powerplay: delete dead code in hwmgr.h
      drm/amd/powerplay: refine powerplay code.
      drm/amd/powerplay: use SMU_IND_INDEX/DATA_11 pair
      drm/amd/powerplay: add new helper functions in hwmgr.h
      drm/amd/powerplay: move SMUM_WAIT_INDIRECT_FIELD_UNEQUAL to hwmgr.h
      drm/amd/powerplay: move SMUM_WAIT_VFPF_INDIRECT_FIELD_UNEQUAL to hwmgr.h
      drm/amd/powerplay: move PHM_WAIT_VFPF_INDIRECT_FIELD to hwmgr.h
      drm/amd/powerplay: move macros to hwmgr.h
      drm/amd/powerplay: delete SMU_WRITE_INDIRECT_FIELD
      drm/amd/powerplay: delete SMUM_WRITE_FIELD
      drm/amd/powerplay: delete SMUM_WRITE_VFPF_INDIRECT_FIELD
      drm/amd/powerplay: delete SMUM_READ_VFPF_INDIRECT_FIELD
      drm/amd/powerplay: delete SMUM_SET_FIELD
      drm/amd/powerplay: delete SMUM_READ_FIELD
      drm/amd/powerplay: delete SMUM_WAIT_INDIRECT_FIELD
      drm/amd/powerplay: delete SMUM_FIELD_MASK
      drm/amd/powerplay: delete dead code in smumgr
      drm/amdgpu: move common pm sysfs code to amdgpu_device.c
      drm/amdgpu: move amdgpu_ucode_init_bo to amdgpu_device.c
      drm/amd/powerplay: fix memory leak in powerplay
      drm/amdgpu: delete dead code about fw load check
      drm/amdgpu: delete pp_enable in adev
      drm/amdgpu: add cgs interface to register pp handle
      drm/amdgpu: create powerplay by cgs interface
      drm/amd/powerplay: change dmesg log level in powerplay
      drm/amdgpu: add comments in struct amd_pm_funcs define
      drm/amd/powerplay: export new interfaces in amd_pm_funcs
      drm/amd/powerplay: refine code in amd_powerplay.c (v2)
      drm/amd/powerplay: tidy up ret checks in amd_powerplay.c (v3)
      drm/amd/powerplay: move set_clockgating_by_smu to pp func table
      drm/amd/powerplay: delete flag PP_VALID
      drm/amd/powerplay: fix mclk can't switch on Tonga
      drm/amd/pp: export new smu messages for vega10
      drm/amd/pp: add new function point in hwmgr.
      drm/amd/pp: implement function notify_cac_buffer_info on Vega
      drm/amd/pp: implement function notify_cac_buffer_info on VI
      drm/amd/pp: move common function to smu7_smumgr.c
      drm/amdgpu: refine code delete duplicated error handling
      drm/amd/pp: rename ci_smc.c to ci_smumgr.c
      drm/amd/pp: remove fiji_smc/smumgr split.
      drm/amd/pp: remove iceland_smc/smumgr split.
      drm/amd/pp: remove tonga_smc/smumgr split.
      drm/amd/pp: remove polaris10_smc/smumgr split.
      drm/amdgpu: fix regresstion on SR-IOV gpu reset failed
      drm/amd/pp: thermal control not enabled on vega10.
      drm/amd/pp: Fix overflow when setup decf/pix/disp dpm table.

Rhys Kidd (2):
      drm/nouveau/therm/gp100: initial implementation of new gp1xx
temperature sensor
      drm/nouveau: Document nouveau support for Tegra in DRIVER_DESC

Rob Clark (21):
      drm/msm: fix _NO_IMPLICIT fencing case
      drm/msm/adreno: load gpu at probe/bind time
      drm/msm/adreno: split out helper to load fw
      drm/msm/adreno: deal with linux-firmware fw paths
      drm/msm/mdp5: always print mdp5 version
      drm/msm/dsi: convert to msm_clk_get()
      drm/msm/edp: convert to msm_clk_get()
      drm/msm/hdmi: convert to msm_clk_get()
      dt-bindings: display: msm: update clk names
      drm/msm/mdp4: disable vblanks when crtc is off
      drm/msm/mdp5: disable vblanks when crtc is off
      drm/msm: show task cmdline in gpu recovery messages
      drm/msm: add special _get_vaddr_active() for cmdstream dumps
      drm/msm: split rd debugfs file
      drm/msm/rd: allow adding addition msg to top of dump
      drm/msm: preserve IOVAs in submit's bo table
      drm/msm: dump submits which triggered gpu hang
      drm/msm/mdp5: ignore planes that are not visible
      drm/msm/mdp5: don't use autosuspend
      drm/msm/mdp5: restore cursor state when enabling crtc
      drm/msm/atomic: switch to drm_atomic_helper_check

Robert Tarasov (2):
      drm/udl: Fixed problem with UDL adpater reconnection
      drm/udl: Reading all edid blocks in DRM/UDL driver

Rodrigo Vivi (47):
      drm/i915/cnl: Introduce initial Cannonlake Workarounds.
      drm/i915/cnl: Add WaDisableReplayBufferBankArbitrationOptimization
      drm/i915/cnl: WaDisableEnhancedSBEVertexCaching
      drm/i915/cnl: Apply large line width optimization
      drm/i915/cfl: Coffee Lake works on Kaby Lake PCH.
      drm/i915/cnl: WaForceContextSaveRestoreNonCoherent
      drm/tve200: Pass NULL format_modifier to drm_simple_display_pipe_init
      drm/i915: Stop using long platform names on clock gating functions.
      drm/i915/cnl: WA FtrEnableFastAnisoL1BankingFix
      drm/i915/cnl: WaDisableI2mCycleOnWRPort
      drm/i915/cnl: Avoid ioremap_wc on Cannonlake as well.
      drm/i915: Introduce intel_ddi_dp_level.
      drm/i915: decouple gen9 and gen10 dp signal levels.
      drm/i915: Align vswing sequences with old ddi buffer registers.
      drm/i915: Enable voltage swing before enabling DDI_BUF_CTL.
      drm/i915/cnl: Move voltage check into ddi buf trans functions.
      drm/i915/cnl: Move ddi buf trans related functions up.
      drm/i915/cnl: Fix DDI hdmi level selection.
      drm/i915/cnl: Fix DP max voltage
      drm/i915/cnp: Wa 1181: Fix Backlight issue
      drm/i915: Display WA #1133 WaFbcSkipSegments:cnl, glk
      drm/i915/cnl: WaThrottleEUPerfToAvoidTDBackPressure:cnl(pre-prod)
      drm/i915/psr: Avoid any PSR stuff on platforms without support.
      drm/i915/psr: vfunc for disabling source.
      drm/i915/psr: hsw_psr_activate.
      drm/i915/psr: Add activate vfunc.
      drm/i915/psr: Unify VSC setup functions.
      drm/i915/psr: Re-create a hsw_psr_enable_source.
      drm/i915/psr: Move hsw_enable_source after enabling sink.
      drm/i915/psr: Re-org Activate after enable
      drm/i915/psr: Add setup VSC vfunc.
      drm/i915/psr: Add enable_sink vfunc.
      drm/i915/psr: Add enable_source vfunc.
      drm/i915: Refresh VLV/CHV PSR comments on HW PSR_state machine.
      drm/i915/cnp: Don't touch other PCH clock gating bits.
      drm/i915/cnp: Display Wa #1179: WaHardHangonHotPlug
      drm/i915/cfl: Remove alpha support protection.
      drm/i915: Avoid using dev_priv->info.gen directly.
      drm/i915: Also discard second CRC on gen8+ platforms.
      drm/i915/skl: Fix has_ipc on skl and document WaDisableIPC.
      drm/i915: Organize GEN features inheritance.
      drm/i915: Organize GLK_COLORS.
      drm/i915/cnl: WaRsUseTimeoutMode
      drm/i915/cnl: Fix PLL mapping.
      drm/i915/cnl: Fix PLL initialization for HDMI.
      drm/i915: Let's use more enum intel_dpll_id pll_id.
      drm/i915/cnl: Map VBT DDC Pin to BSpec DDC Pin.

Roger He (3):
      drm/amd/amdgpu: fix BANK_SELECT on Vega10 (v2)
      drm/amdgpu: handle all fragment sizes v4
      drm/amd/amdgpu: fix evicted VRAM bo adjudgement condition

Roman Kapl (1):
      drm/radeon: fix atombios on big endian

Sagar Arun Kamble (15):
      drm/i915/huc: Reorganize HuC authentication
      drm/i915: Move i915_gem_restore_fences to i915_gem_resume
      drm/i915/uc: Create intel_uc_init_mmio
      drm/i915: Separate RPS and RC6 handling for gen6+
      drm/i915: Remove superfluous IS_BDW checks and non-BDW changes
from gen8_enable_rps
      drm/i915: Separate RPS and RC6 handling for BDW
      drm/i915: Separate RPS and RC6 handling for VLV
      drm/i915: Separate RPS and RC6 handling for CHV
      drm/i915: Name i915_runtime_pm structure in dev_priv as "runtime_pm"
      drm/i915: Move rps.hw_lock to dev_priv and s/hw_lock/pcu_lock
      drm/i915: Name structure in dev_priv that contains RPS/RC6 state
as "gt_pm"
      drm/i915: Rename intel_enable_rc6 to intel_rc6_enabled
      drm/i915: Create generic function to setup LLC ring frequency table
      drm/i915: Create generic functions to control RC6, RPS
      drm/i915: Introduce separate status variable for RC6 and LLC
ring frequency setup

Samuel Li (1):
      drm/amdgpu: Add gem_prime_mmap support

Sandy Huang (2):
      dt-bindings: display: Add Document for Rockchip Soc LVDS
      drm/rockchip: Add support for Rockchip Soc LVDS

Satyajit Sahu (1):
      drm/amd/powerplay: get the temperature on CZ

Sean Keely (2):
      drm/amdkfd: Short cut for kfd_wait_on_events without waiting
      drm/amdkfd: Fix scheduler race in kfd_wait_on_events sleep loop

Sean Paul (2):
      drm/todo: Add s/dev_*/DRM_DEV_*/ coversion to TODO
      drm/rockchip: Fix uninitialized use of ret

Shashank Sharma (3):
      drm: Add retries for lspcon mode detection
      drm/i915: Don't give up waiting on INVALID_MODE
      drm/i915: Add retries for LSPCON detection

Srishti Sharma (1):
      drm/virtio: Replace instances of reference/unreference with get/put

Stephen Boyd (1):
      drm/tilcdc: Remove redundant OF_DETACHED flag setting

Sylwester Nawrocki (1):
      drm: exynos: Add driver for HDMI audio interface

Thierry Reding (24):
      MAINTAINERS: drm/panel is now maintained in drm-misc
      drm/vtables: Fix typo
      drm/atomic: Fix typo in kerneldoc
      drm/scdc-helper: Remove gratuitous blank lines
      drm/scdc-helper: Use consistent error reporting
      drm/scdc-helper: Use consistent spelling for TMDS
      drm/amdgpu: Use correct path to trace include
      drm/radeon: Use correct path to trace include
      drm/i915: Use correct path to trace include
      drm: Use correct path to trace include
      drm/armada: Use correct path to trace include
      drm/vc4: Use correct path to trace include
      drm/atomic-helper: Fix typo
      drm/atomic-helper: Fix reference to drm_crtc_send_vblank_event()
      gpu: host1x: Use of_device_get_match_data()
      gpu: host1x: syncpt: Request syncpoints per client
      drm/tegra: dc: Use of_device_get_match_data()
      drm/tegra: hdmi: Use of_device_get_match_data()
      drm/tegra: sor: Use of_device_get_match_data()
      drm/tegra: vic: Use of_device_get_match_data()
      drm/tegra: dc: Move some declarations to dc.h
      drm/tegra: dc: Simplify atomic plane helper functions
      drm/tegra: dc: Make sure to set the module clock rate
      drm/tegra: dc: Perform a complete reset sequence

Thomas Meyer (1):
      drm/rockchip: Cocci spatch "vma_pages"

Tom St Denis (68):
      drm/ttm: Add DMA map/unmap tracepoint (v3)
      drm/amd/amdgpu: Remove AMDGPU tracepoint and use new TTM tracepoint (v2)
      drm/ttm: Add helper functions to populate/map in one call (v2)
      drm/amd/amdgpu: Use new TTM populate/map helper function
      drm/radeon: use new TTM populate/dma map helper functions
      drm/ttm: Remove needless 'extern' on functions in header.
      drm/amd/amdgpu: Add write() method to VRAM debugfs entry (v2)
      drm/amd/amdgpu: Tidy up register list formatting.
      drm/amd/amdgpu: Tidy up gfx_v9_0_ngg_en()
      drm/amd/amdgpu: Tidy up gfx_v9_0_enable_save_restore_machine()
      drm/amd/amdgpu: Tidy up gfx_v9_0_enable_sck_slow_down_on_power_up()
      drm/amd/amdgpu: Tidy up gfx_v9_0_enable_sck_slow_down_on_power_down()
      drm/amd/amdgpu: Tidy up gfx_v9_0_enable_cp_power_gating()
      drm/amd/amdgpu: Tidy up gfx_v9_0_enable_gfx_cg_power_gating()
      drm/amd/amdgpu: Tidy up gfx_v9_0_enable_gfx_pipeline_powergating()
      drm/amd/amdgpu: Tidy up gfx_v9_0_enable_gfx_static_mg_power_gating()
      drm/amd/amdgpu: Tidy up gfx_v9_0_enable_gfx_dynamic_mg_power_gating()
      drm/amd/amdgpu: Tidy up gfx_v9_0_rlc_stop()
      drm/amd/amdgpu: Fix indentation in gfx_v9_0_mqd_init()
      drm/amd/amdgpu: Simplify gfx_v9_0_wait_for_idle()
      drm/amd/amdgpu: Support full range of GFX ring names
      drm/amd/amdgpu: Simplify gmc_v9_0_vm_fault_interrupt_state()
      drm/amd/amdgpu: Tidy up gmc_v9_0_gart_enable()
      drm/amd/amdgpu: Tidy up gmc_v9_0_hw_init()
      drm/amd/amdgpu: Cleanup gmc_v9_0_suspend()
      drm/ttm: Fix trace include path (v2)
      drm/ttm: Fix configuration error around populate_and_map() functions
      drm/amd/powerplay:  Fix psm_set_user_performance_state()
      drm/amd/powerplay: Simplify
vega10_patch_voltage_dependency_tables_with_lookup_table()
      drm/amd/powerplay: Simplify vega10_acg_disable()
      drm/amd/powerplay: Introduction of bitmask macros for registers
      drm/amd/powerplay: Port vega10_didt_set_mask() to new macros
      drm/amd/powerplay: Add PP_CAP() macro
      drm/amd/powerplay: Port vega10_hwmgr.c over to PP_CAP
      drm/amd/powerplay: Port vega10_powertune.c over to PP_CAP
      drm/amd/powerplay: Port vega10_thermal.c over to PP_CAP
      drm/amd/powerplay: Tidy up vega10_fan_ctrl_get_fan_speed_rpm()
      drm/amd/powerplay: Tidy up vega10_fan_ctrl_set_static_mode()
      drm/amd/powerplay: Tidy up vega10_fan_ctrl_set_default_mode()
      drm/amd/powerplay: Tidy up vega10_fan_ctrl_set_fan_speed_percent()
      drm/amd/powerplay: Fix indentation in
vega10_fan_ctrl_reset_fan_speed_to_default()
      drm/amd/powerplay: Tidy up vega10_fan_ctrl_set_fan_speed_rpm()
      drm/amd/powerplay: Tidy up vega10_thermal_set_temperature_range()
      drm/amd/powerplay: Tidy up vega10_thermal_initialize()
      drm/amd/powerplay: Tidy up smu7_fan_ctrl_get_fan_speed_info()
      drm/amd/powerplay: Tidy up smu7_fan_ctrl_get_fan_speed_rpm()
      drm/amd/powerplay: Make use of PP_CAP in smu7_thermal.c
      drm/amd/powerplay: Remove unneeded return from pp_smu7_thermal_fini()
      drm/amd/powerplay: Make use of PP_CAP in smu7_powertune.c
      drm/amd/powerplay: Tidy up smu7_enable_didt()
      drm/amd/powerplay: lock grbm_gfx index when changing instance
      drm/amd/amdgpu: Change vram debugfs to NO_KIQ for VM environments
      drm/amd/amdgpu: Support VM environments in amdgpu_ttm_access_memory()
      drm/amd/amdgpu: Fold TTM debugfs entries into array (v2)
      drm/amd/amdgpu: add support for iova_to_phys to replace TTM trace (v5)
      drm/amd/amdgpu: remove usage of ttm trace
      drm/ttm: Remove TTM dma tracepoint since it's not required anymore
      drm/amd/amdgpu: Partial revert of iova debugfs
      drm/amd/powerplay:  Partially revert changes and fix
smu7_notify_smc_display()
      drm/ttm: Fix unused variables with huge page support
      drm/amd/powerplay: Tidy up cz_start_dpm()
      drm/amd/powerplay: Tidy up cz_dpm_powerdown_uvd()
      drm/amd/powerplay: Tidy up cz_dpm_powerup_uvd()
      drm/amd/powerplay: Tidy up cz_dpm_update_uvd_dpm()
      drm/amd/powerplay: Tidy up cz_dpm_update_vce_dpm()
      drm/amd/powerplay: Tidy up cz_dpm_powerdown_vce()
      drm/amd/powerplay: Tidy up cz_dpm_powerup_vce()
      drm/amd/amdgpu: Remove workaround for suspend/resume in uvd7

Tvrtko Ursulin (9):
      lib/scatterlist: Fix offset type in sg_alloc_table_from_pages
      lib/scatterlist: Avoid potential scatterlist entry overflow
      lib/scatterlist: Introduce and export __sg_alloc_table_from_pages
      drm/i915: Use __sg_alloc_table_from_pages for userptr allocations
      tools/testing/scatterlist: Test new __sg_alloc_table_from_pages
      drm/i915: Add IS_PLATFORM macro
      drm/i915: Compact device info access by a small re-ordering
      drm/i915: Allow optimized platform checks
      drm/i915: Fixup userptr mmu notifier registration error handling

Uma Shankar (2):
      Revert "drm/i915/bxt: Disable device ready before shutdown command"
      drm/i915: Enable scanline read based on frame timestamps

Vijendar Mukunda (2):
      drm/amd/amdgpu: Added asic_type as ACP DMA driver platform data
      ASoC: AMD: Added asic_type as ACP DMA driver platform data

Ville Syrjälä (89):
      drm/dp: Add defines for DP SDP types
      drm/i915: Check has_infoframes when enabling infoframes
      drm/i915: Disable infoframes when shutting down DDI HDMI
      drm/i915: Move infoframe vfuncs into intel_digital_port
      drm/i915: Init infoframe vfuncs for DP encoders as well
      drm/i915: Plumb crtc_state to PSR enable/disable
      drm/i915: Constify states passed to enable/disable/etc. encoder hooks
      drm/i915: Beef up the IPS vs. CRC workaround
      drm/i915: Treat fb->offsets[] as a raw byte offset instead of a
linear offset
      drm/i915: Skip fence alignemnt check for the CCS plane
      drm/i915: Track minimum acceptable cdclk instead of "minimum dotclock"
      drm/i915: Consolidate max_cdclk_freq check in
intel_crtc_compute_min_cdclk()
      drm/i915: Pass the new crtc state to color management code
      drm/i915: Pass the crtc state explicitly to intel_pipe_update_start/end()
      drm/i915: Eliminate obj->state usage in g4x/vlv/chv wm computation
      drm/i915: Pass proper old/new states to
intel_plane_atomic_check_with_state()
      drm/i915: Eliminate obj->state usage from pre/post plane update
      drm/i915: Eliminate crtc->state usage from intel_update_pipe_config()
      drm/i915: Eliminate crtc->state usage from
intel_atomic_commit_tail and .crtc_update()
      drm/i915: Make i9xx_load_ycbcr_conversion_matrix() static
      drm/i915: Make i2c lock ops static
      drm/i915: Fix enum pipe vs. enum transcoder for the PCH transcoder
      drm/i915: Wake up the device for the fbdev setup
      drm/i915: Add __rcu to radix tree slot pointer
      drm/i915: io unmap functions want __iomem
      drm/i915: Constify load detect mode
      drm/i915: Annotate user relocs with __user
      i915: Fix obj size vs. alignment for drm_pci_alloc()
      drm: Make syncobj import/export functions static
      drm: Drop drm_get_link_status_name()
      drm: Make __drm_object_property_get_value() static
      drm/i915: Nuke some bogus tabs from the pcode defines
      drm/i915: Name the IPS_PCODE_CONTROL bit
      drm/i915: Switch over to the LLC/eLLC hotspot avoidance hash mode for CCS
      drm/i915: Don't enable/unmask flip interrupts
      drm/i915: Clear pipestat consistently
      drm/i915: s/GEN5/GEN3/
      drm/i915: Use GEN3_IRQ_RESET/INIT on gen3/4
      drm/i915: Introduce GEN2_IRQ_RESET/INIT
      drm/i915: Setup EMR first on all gen2-4
      drm/i915: Eliminate PORT_HOTPLUG_EN setup from gen3/4 irq_postinstall
      drm/i915: Unify the appearance of gen3/4 irq_postistall hooks
      drm/i915: Remove NULL dev_priv checks from irq_uninstall
      drm/i915: Extract PIPESTAT irq handling into separate functions
      drm/i915: Rewrite GMCH irq handlers to avoid loops
      drm/i915: Gen3 HWSTAM is actually 32 bits
      drm/i915: Mask everything in ring HWSTAM on gen6+ in ringbuffer mode
      drm/i915: Clean up the HWSTAM mess
      drm/i915: Remove duplicated irq_preinstall/uninstall hooks
      drm/i915: Reinstate GMBUS and AUX interrupts on gen4/g4x
      drm/i915: Replace some spaces with tabs
      drm/i915: Shrink bxt_ddi_buf_trans
      drm/i915: Shrink cnl_ddi_buf_trans
      drm/i915: Drop useless HAS_PSR() check
      drm/i915: Reorganize .disable hooks for pre-DDI DP
      drm/i915: Don't rmw PIPESTAT enable bits
      drm/i915: Read timings from the correct transcoder in
intel_crtc_mode_get()
      drm/i915: Use intel_get_pipe_timings() and
intel_mode_from_pipe_config() in intel_crtc_mode_get()
      drm/i915: Use enum pipe for PCH transcoders
      drm/i915: Parametrize CBR_DPLLBMD_PIPE defines
      drm/i915: Pass crtc state to i9xx_enable_pll()
      drm/i915: Nuke the bogus kernel doc for i9xx_disable_pll()
      drm/i915: Reuse normal state readout for LVDS/DVO fixed mode
      drm/i915: Allow PCH platforms fall back to BIOS LVDS mode
      drm/vblank: Fix flip event vblank count
      drm/i915: Start tracking PSR state in crtc state
      drm: Add missing __user annotation to drm_syncobj_array_find()
      drm/i915: Dump 'output_types' in crtc state dump
      drm/i915: Extract intel_ddi_clk_disable()
      drm/i915: Extract intel_disable_ddi_buf()
      drm/i915: Inline the required bits of intel_ddi_post_disable()
into intel_ddi_fdi_post_disable()
      drm/i915: Split intel_ddi_post_disable() into DP vs. HDMI variants
      drm/i915: Remove useless eDP check from intel_ddi_pre_enable_dp()
      drm/i915: Split intel_disable_ddi() into DP vs. HDMI variants
      drm/i915: Plumb crtc_state etc. directly to
intel_ddi_pre_enable_{dp,hdmi}()
      drm/i915: Split intel_enable_ddi() into DP and HDMI variants
      drm/i915: Remove mostly duplicated video DIP handling from PSR code
      drm/i915: Relocate intel_ddi_get_buf_trans_*() functions
      drm/i915: Extract intel_ddi_get_buf_trans_hdmi()
      drm/i915: Pass the encoder type explicitly to skl_set_iboost()
      drm/i915: Pass the level to intel_prepare_hdmi_ddi_buffers()
      drm/i915: Integrate BXT into intel_ddi_dp_voltage_max()
      drm/i915: Pass encoder type to cnl_ddi_vswing_sequence() explicitly
      drm/i915: Kill off the BXT buf_trans default_index
      drm/i915: Centralize the SKL DDI A/E vs. B/C/D buf trans handling
      drm/i915: Unify error handling for missing DDI buf trans tables
      drm/i915: Drop the redundant hdmi prefix/suffix from a lot of variables
      drm/vblank: Tune drm_crtc_accurate_vblank_count() WARN down to a debug
      drm/i915: Move init_clock_gating() back to where it was

Weinan Li (1):
      drm/i915: enable to read CSB and CSB write pointer from HWSP in GVT-g VM

Xiangliang.Yu (3):
      drm/amdgpu/sdma3: Enable sdma wptr polling for SRIOV
      drm/amdgpu/sdma3: set wptr shadow atomically
      drm/amdgpu: Fix driver reloading failure

Yair Shachar (1):
      drm/amdkfd: Fix debug unregister procedure on process termination

Yong Zhao (18):
      drm/amdkfd: Reorganize kfd resume code
      drm/amdkfd: Fix suspend/resume issue on Carrizo v2
      drm/amdkfd: Rectify the jiffies calculation error with milliseconds v2
      drm/amdkfd: Use VMID bitmap from KGD v2
      drm/amdkfd: Reuse CHIP_* from amdgpu v2
      drm/amdkfd: Drop _nocpsch suffix from shared functions
      drm/amdgpu: Correct bytes limit for SDMA 3.0 copy and fill
      drm/amdgpu: Fix a bug in amdgpu_fill_buffer()
      drm/amdgpu: Add copy_pte_num_dw member in amdgpu_vm_pte_funcs
      drm/amdkfd: Avoid name confusion involved in queue unmapping
      drm/amdkfd: move locking outside of unmap_queues_cpsch
      drm/amdkfd: Pass filter params to unmap_queues_cpsch
      drm/amdkfd: Avoid submitting an unnecessary packet to HWS
      drm/amdkfd: Compress unnecessary function parameters
      drm/amdgpu: Set the correct value for PDEs/PTEs of ATC memory on Raven
      drm/amdkfd: Clean up the data structure in kfd_process
      drm/amdkfd: Avoid calling amd_iommu_unbind_pasid() when suspending
      drm/amdkfd: Cleanup DQM ASIC-specific ops

Zhi Wang (5):
      drm/i915: Fix the missing PPAT cache attributes on CNL
      drm/i915: Factor out setup_private_pat()
      drm/i915: Introduce private PAT management
      drm/i915: Remove the "INDEX" suffix from PPAT marcos
      drm/i915: Return the correct score in i915_ppat_get()

benjamin.gaignard@linaro.org (5):
      drm/bridge: make drm_panel_bridge_remove more robust
      drm/drm_of: add drm_of_panel_bridge_remove function
      drm/stm: ltdc: remove bridge from driver internal structure
      drm/vc4: remove bridge from driver internal structure
      drm/bridge/synopsys: dsi :remove is_panel_bridge

fred gao (6):
      drm/i915/gvt: Separate cmd scan from request allocation
      drm/i915/gvt: Add error handling for intel_gvt_scan_and_shadow_workload
      drm/i915/gvt: Refine error handling for prepare_execlist_workload
      drm/i915/gvt: Refine error handling for intel_vgpu_pin_mm
      drm/i915/gvt: Refine error handling in dispatch_workload
      drm/i915/gvt: Refine error handling for perform_bb_shadow

ozeng (1):
      drm/amdgpu: Fixed a potential circular lock

pding (4):
      drm/amdgpu: report more amdgpu_fence_info
      drm/amdgpu: busywait KIQ register accessing (v4)
      drm/amdgpu: merge bios post checking functions
      drm/amdgpu: use irq-safe lock for kiq->ring_lock

shaoyunl (1):
      drm/amdkfd: Improve multiple SDMA queues support per process

vathsala nagaraju (2):
      drm/dp: Add defines for latency in sink
      drm/i915/psr: Set frames before SU entry for psr2

 Documentation/admin-guide/kernel-parameters.txt    |     2 +-
 .../bindings/display/bridge/adi,adv7511.txt        |     4 +
 .../devicetree/bindings/display/bridge/sii9234.txt |    49 +
 .../devicetree/bindings/display/faraday,tve200.txt |    54 +
 .../devicetree/bindings/display/msm/dsi.txt        |    36 +-
 .../devicetree/bindings/display/msm/edp.txt        |    20 +-
 .../devicetree/bindings/display/msm/hdmi.txt       |     8 +-
 .../devicetree/bindings/display/msm/mdp5.txt       |    32 +-
 .../bindings/display/panel/orisetech,otm8009a.txt  |    21 +
 .../panel/raspberrypi,7inch-touchscreen.txt        |    49 +
 .../bindings/display/panel/samsung,s6e63j0x03.txt  |    24 +
 .../bindings/display/panel/seiko,43wvf1g.txt       |    23 +
 .../display/panel/toshiba,lt089ac29000.txt         |     8 +
 .../bindings/display/rockchip/rockchip-lvds.txt    |    99 +
 .../bindings/display/sunxi/sun4i-drm.txt           |    12 +
 .../display/tegra/nvidia,tegra20-host1x.txt        |     4 +
 .../devicetree/bindings/vendor-prefixes.txt        |     1 +
 Documentation/gpu/drm-uapi.rst                     |    55 +
 Documentation/gpu/index.rst                        |     1 +
 Documentation/gpu/todo.rst                         |    55 +-
 Documentation/gpu/tve200.rst                       |     6 +
 MAINTAINERS                                        |    13 +-
 arch/powerpc/kernel/pci-common.c                   |    12 -
 drivers/dma-buf/dma-buf.c                          |     2 +-
 drivers/dma-buf/reservation.c                      |    56 +-
 drivers/dma-buf/sw_sync.c                          |    10 +-
 drivers/gpu/drm/Kconfig                            |     7 +-
 drivers/gpu/drm/Makefile                           |     8 +-
 drivers/gpu/drm/amd/amdgpu/Makefile                |     4 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu.h                |   121 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c            |   161 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c  |    12 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c  |    12 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c       |    56 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.c   |    22 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c            |   153 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c     |    22 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c             |   386 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c            |   114 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c         |   265 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_dpm.c            |     4 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_dpm.h            |   169 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c            |    27 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c             |     6 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c          |    63 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c           |    13 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c            |   128 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c            |    29 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c        |     8 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ih.c             |    82 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_ih.h             |    12 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_job.c            |    18 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c            |    23 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c             |   108 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_mn.h             |    52 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_object.c         |   122 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_object.h         |    29 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c             |   329 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_powerplay.c      |    66 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_prime.c          |    37 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c            |    56 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_psp.h            |     6 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_queue_mgr.c      |     8 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c           |   104 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h           |    24 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c          |   109 +
 .../eventmgr/eventinit.h => amdgpu/amdgpu_sched.h} |    18 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c           |     7 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_sync.h           |     3 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h          |    58 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_trace_points.c   |    19 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c            |   498 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h            |    32 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c          |    70 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c            |    20 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c            |    13 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_vf_error.c       |    61 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_vf_error.h       |     5 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c           |   109 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_virt.h           |   191 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c             |   688 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h             |    68 +-
 drivers/gpu/drm/amd/amdgpu/atom.c                  |     5 +-
 drivers/gpu/drm/amd/amdgpu/atom.h                  |     1 +
 drivers/gpu/drm/amd/amdgpu/ci_dpm.c                |   109 +-
 drivers/gpu/drm/amd/amdgpu/cik_dpm.h               |     3 +-
 drivers/gpu/drm/amd/amdgpu/cik_ih.c                |    29 +
 drivers/gpu/drm/amd/amdgpu/cik_sdma.c              |     5 +
 drivers/gpu/drm/amd/amdgpu/cz_ih.c                 |    29 +
 drivers/gpu/drm/amd/amdgpu/dce_virtual.c           |     4 +-
 drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c              |   349 +-
 drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c              |   373 +-
 drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.c           |     6 +
 drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c              |     4 +-
 drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c              |     4 +-
 drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c              |     4 +-
 drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c              |   104 +-
 drivers/gpu/drm/amd/amdgpu/iceland_ih.c            |    29 +
 drivers/gpu/drm/amd/amdgpu/kv_dpm.c                |    68 +-
 drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.c            |    11 +-
 drivers/gpu/drm/amd/amdgpu/mxgpu_ai.c              |     6 +
 drivers/gpu/drm/amd/amdgpu/mxgpu_ai.h              |     2 +-
 drivers/gpu/drm/amd/amdgpu/mxgpu_vi.h              |     2 +-
 drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c             |    44 +-
 drivers/gpu/drm/amd/amdgpu/nbio_v6_1.h             |     4 +-
 drivers/gpu/drm/amd/amdgpu/nbio_v7_0.c             |    44 +-
 drivers/gpu/drm/amd/amdgpu/nbio_v7_0.h             |     4 +-
 drivers/gpu/drm/amd/amdgpu/psp_v10_0.c             |    52 +-
 drivers/gpu/drm/amd/amdgpu/psp_v10_0.h             |     4 +
 drivers/gpu/drm/amd/amdgpu/psp_v3_1.c              |    63 +-
 drivers/gpu/drm/amd/amdgpu/psp_v3_1.h              |     3 +
 drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c             |    25 +-
 drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c             |    52 +-
 drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c             |    18 +-
 drivers/gpu/drm/amd/amdgpu/si_dma.c                |     5 +
 drivers/gpu/drm/amd/amdgpu/si_dpm.c                |    83 +-
 drivers/gpu/drm/amd/amdgpu/si_dpm.h                |     1 +
 drivers/gpu/drm/amd/amdgpu/si_ih.c                 |    14 +
 drivers/gpu/drm/amd/amdgpu/soc15.c                 |    51 +-
 drivers/gpu/drm/amd/amdgpu/tonga_ih.c              |    29 +
 drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c              |   499 +-
 drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c              |    18 +-
 drivers/gpu/drm/amd/amdgpu/vce_v4_0.c              |     4 -
 drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c              |     2 +-
 drivers/gpu/drm/amd/amdgpu/vega10_ih.c             |    97 +-
 drivers/gpu/drm/amd/amdgpu/vi.c                    |    22 +-
 drivers/gpu/drm/amd/amdgpu/vid.h                   |    10 +
 drivers/gpu/drm/amd/amdkfd/Kconfig                 |     2 +-
 drivers/gpu/drm/amd/amdkfd/cik_event_interrupt.c   |     8 +-
 drivers/gpu/drm/amd/amdkfd/cik_int.h               |     3 +-
 drivers/gpu/drm/amd/amdkfd/kfd_chardev.c           |    12 +-
 drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.c            |    14 +-
 drivers/gpu/drm/amd/amdkfd/kfd_device.c            |   115 +-
 .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c  |   459 +-
 .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.h  |    24 +-
 .../drm/amd/amdkfd/kfd_device_queue_manager_cik.c  |    20 +-
 .../drm/amd/amdkfd/kfd_device_queue_manager_vi.c   |    20 +-
 drivers/gpu/drm/amd/amdkfd/kfd_doorbell.c          |    50 +-
 drivers/gpu/drm/amd/amdkfd/kfd_events.c            |   615 +-
 drivers/gpu/drm/amd/amdkfd/kfd_events.h            |    18 +-
 drivers/gpu/drm/amd/amdkfd/kfd_interrupt.c         |    83 +-
 drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c      |    20 +-
 drivers/gpu/drm/amd/amdkfd/kfd_module.c            |     6 -
 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.c       |     3 +
 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_cik.c   |    34 +-
 drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_vi.c    |     7 +-
 drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c    |    29 +-
 drivers/gpu/drm/amd/amdkfd/kfd_pasid.c             |    90 +-
 drivers/gpu/drm/amd/amdkfd/kfd_priv.h              |   128 +-
 drivers/gpu/drm/amd/amdkfd/kfd_process.c           |   175 +-
 .../gpu/drm/amd/amdkfd/kfd_process_queue_manager.c |    73 +-
 drivers/gpu/drm/amd/include/amd_shared.h           |   129 +-
 .../amd/include/asic_reg/smu/smu_7_0_1_sh_mask.h   |     2 +
 .../gpu/drm/amd/include/asic_reg/uvd/uvd_6_0_d.h   |    15 +
 drivers/gpu/drm/amd/include/atombios.h             |     1 +
 drivers/gpu/drm/amd/include/atomfirmware.h         |    19 +-
 drivers/gpu/drm/amd/include/cgs_common.h           |    32 +-
 drivers/gpu/drm/amd/include/kgd_kfd_interface.h    |     6 +
 drivers/gpu/drm/amd/include/linux/chash.h          |   366 +
 drivers/gpu/drm/amd/include/v9_structs.h           |    12 +-
 drivers/gpu/drm/amd/include/vi_structs.h           |   259 -
 drivers/gpu/drm/amd/lib/Kconfig                    |    28 +
 drivers/gpu/drm/amd/lib/Makefile                   |    11 +
 drivers/gpu/drm/amd/lib/chash.c                    |   638 +
 drivers/gpu/drm/amd/powerplay/Makefile             |     5 +-
 drivers/gpu/drm/amd/powerplay/amd_powerplay.c      |   528 +-
 drivers/gpu/drm/amd/powerplay/eventmgr/Makefile    |    11 -
 .../drm/amd/powerplay/eventmgr/eventactionchains.c |   291 -
 .../drm/amd/powerplay/eventmgr/eventactionchains.h |    62 -
 drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.c |   195 -
 .../drm/amd/powerplay/eventmgr/eventmanagement.c   |   215 -
 .../drm/amd/powerplay/eventmgr/eventmanagement.h   |    59 -
 drivers/gpu/drm/amd/powerplay/eventmgr/eventmgr.c  |   104 -
 .../drm/amd/powerplay/eventmgr/eventsubchains.c    |   410 -
 .../drm/amd/powerplay/eventmgr/eventsubchains.h    |   100 -
 .../gpu/drm/amd/powerplay/eventmgr/eventtasks.c    |   445 -
 .../gpu/drm/amd/powerplay/eventmgr/eventtasks.h    |    89 -
 drivers/gpu/drm/amd/powerplay/eventmgr/psm.c       |   119 -
 drivers/gpu/drm/amd/powerplay/hwmgr/Makefile       |     5 +-
 .../drm/amd/powerplay/hwmgr/cz_clockpowergating.c  |    46 +-
 .../drm/amd/powerplay/hwmgr/cz_clockpowergating.h  |     4 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/cz_hwmgr.c     |   640 +-
 .../gpu/drm/amd/powerplay/hwmgr/functiontables.c   |   161 -
 .../gpu/drm/amd/powerplay/hwmgr/hardwaremanager.c  |   151 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/hwmgr.c        |   417 +-
 .../gpu/drm/amd/powerplay/hwmgr/pp_overdriver.c    |  2489 ++--
 .../gpu/drm/amd/powerplay/hwmgr/pp_overdriver.h    |     4 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/pp_psm.c       |   250 +
 .../powerplay/{eventmgr/psm.h => hwmgr/pp_psm.h}   |    28 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/ppatomctrl.c   |    88 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/ppatomctrl.h   |     8 +-
 .../amd/powerplay/hwmgr/process_pptables_v1_0.c    |    20 -
 .../gpu/drm/amd/powerplay/hwmgr/processpptables.c  |   157 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.c     |   510 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/rv_hwmgr.h     |     6 +-
 .../amd/powerplay/hwmgr/smu7_clockpowergating.c    |    66 +-
 .../amd/powerplay/hwmgr/smu7_clockpowergating.h    |     4 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c   |   473 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.h   |     9 +-
 .../gpu/drm/amd/powerplay/hwmgr/smu7_powertune.c   |   110 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.c |   183 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/smu7_thermal.h |     5 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.c |   499 +-
 drivers/gpu/drm/amd/powerplay/hwmgr/vega10_hwmgr.h |     1 -
 .../gpu/drm/amd/powerplay/hwmgr/vega10_powertune.c |   129 +-
 .../amd/powerplay/hwmgr/vega10_processpptables.c   |    35 +-
 .../gpu/drm/amd/powerplay/hwmgr/vega10_thermal.c   |   281 +-
 .../gpu/drm/amd/powerplay/hwmgr/vega10_thermal.h   |    14 +-
 drivers/gpu/drm/amd/powerplay/inc/amd_powerplay.h  |   152 +-
 drivers/gpu/drm/amd/powerplay/inc/eventmanager.h   |   109 -
 drivers/gpu/drm/amd/powerplay/inc/eventmgr.h       |   124 -
 drivers/gpu/drm/amd/powerplay/inc/fiji_pwrvirus.h  | 10299 ----------------
 .../gpu/drm/amd/powerplay/inc/hardwaremanager.h    |     6 +-
 drivers/gpu/drm/amd/powerplay/inc/hwmgr.h          |   200 +-
 .../gpu/drm/amd/powerplay/inc/polaris10_pwrvirus.h | 11792 +++----------------
 drivers/gpu/drm/amd/powerplay/inc/pp_instance.h    |     7 -
 drivers/gpu/drm/amd/powerplay/inc/rv_ppsmc.h       |     7 +-
 drivers/gpu/drm/amd/powerplay/inc/smumgr.h         |   211 +-
 drivers/gpu/drm/amd/powerplay/inc/vega10_ppsmc.h   |     5 +-
 drivers/gpu/drm/amd/powerplay/smumgr/Makefile      |     6 +-
 .../smumgr/{iceland_smc.c => ci_smumgr.c}          |  2236 ++--
 drivers/gpu/drm/amd/powerplay/smumgr/ci_smumgr.h   |    78 +
 drivers/gpu/drm/amd/powerplay/smumgr/cz_smumgr.c   |   308 +-
 drivers/gpu/drm/amd/powerplay/smumgr/fiji_smc.c    |  2498 ----
 drivers/gpu/drm/amd/powerplay/smumgr/fiji_smc.h    |    53 -
 drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.c |  2537 +++-
 drivers/gpu/drm/amd/powerplay/smumgr/fiji_smumgr.h |     9 +
 .../gpu/drm/amd/powerplay/smumgr/iceland_smumgr.c  |  2567 +++-
 .../gpu/drm/amd/powerplay/smumgr/iceland_smumgr.h  |     2 +-
 .../gpu/drm/amd/powerplay/smumgr/polaris10_smc.c   |  2364 ----
 .../drm/amd/powerplay/smumgr/polaris10_smumgr.c    |  2380 +++-
 drivers/gpu/drm/amd/powerplay/smumgr/rv_smumgr.c   |   130 +-
 drivers/gpu/drm/amd/powerplay/smumgr/rv_smumgr.h   |     8 +-
 drivers/gpu/drm/amd/powerplay/smumgr/smu7_smumgr.c |   263 +-
 drivers/gpu/drm/amd/powerplay/smumgr/smu7_smumgr.h |    40 +-
 drivers/gpu/drm/amd/powerplay/smumgr/smumgr.c      |   261 +-
 drivers/gpu/drm/amd/powerplay/smumgr/tonga_smc.c   |  3275 -----
 drivers/gpu/drm/amd/powerplay/smumgr/tonga_smc.h   |    62 -
 .../gpu/drm/amd/powerplay/smumgr/tonga_smumgr.c    |  3181 ++++-
 .../gpu/drm/amd/powerplay/smumgr/tonga_smumgr.h    |    20 +-
 .../gpu/drm/amd/powerplay/smumgr/vega10_smumgr.c   |   194 +-
 .../gpu/drm/amd/powerplay/smumgr/vega10_smumgr.h   |    16 +-
 drivers/gpu/drm/amd/scheduler/gpu_scheduler.c      |    66 +-
 drivers/gpu/drm/amd/scheduler/gpu_scheduler.h      |    19 +-
 drivers/gpu/drm/arc/arcpgu_drv.c                   |     3 +-
 drivers/gpu/drm/arm/hdlcd_drv.c                    |     3 +-
 drivers/gpu/drm/arm/malidp_drv.c                   |     3 +-
 drivers/gpu/drm/armada/Makefile                    |     2 -
 drivers/gpu/drm/armada/armada_510.c                |     1 -
 drivers/gpu/drm/armada/armada_crtc.c               |    22 +-
 drivers/gpu/drm/armada/armada_drv.c                |     5 +-
 drivers/gpu/drm/armada/armada_fb.c                 |     9 +-
 drivers/gpu/drm/armada/armada_fbdev.c              |     7 +-
 drivers/gpu/drm/armada/armada_gem.c                |    49 +-
 drivers/gpu/drm/armada/armada_gem.h                |     4 -
 drivers/gpu/drm/armada/armada_overlay.c            |     4 +-
 drivers/gpu/drm/armada/armada_trace.h              |     2 +-
 drivers/gpu/drm/ast/ast_mode.c                     |     2 +-
 drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c       |     2 +-
 drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.h       |     1 +
 drivers/gpu/drm/bochs/bochs_kms.c                  |     2 +-
 drivers/gpu/drm/bridge/Kconfig                     |    10 +-
 drivers/gpu/drm/bridge/Makefile                    |     1 +
 drivers/gpu/drm/bridge/adv7511/Kconfig             |     8 +
 drivers/gpu/drm/bridge/adv7511/Makefile            |     1 +
 drivers/gpu/drm/bridge/adv7511/adv7511.h           |    45 +-
 drivers/gpu/drm/bridge/adv7511/adv7511_audio.c     |     2 +-
 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c       |   337 +
 drivers/gpu/drm/bridge/adv7511/adv7511_drv.c       |   140 +-
 drivers/gpu/drm/bridge/adv7511/adv7533.c           |    38 +-
 drivers/gpu/drm/bridge/panel.c                     |    10 +-
 drivers/gpu/drm/bridge/sii9234.c                   |   994 ++
 drivers/gpu/drm/bridge/sil-sii8620.c               |    96 +-
 drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c      |   108 +-
 drivers/gpu/drm/cirrus/cirrus_mode.c               |     2 +-
 drivers/gpu/drm/drm_agpsupport.c                   |    45 +-
 drivers/gpu/drm/drm_atomic.c                       |    36 +-
 drivers/gpu/drm/drm_atomic_helper.c                |   325 +-
 drivers/gpu/drm/drm_auth.c                         |    32 +-
 drivers/gpu/drm/drm_bridge.c                       |     7 +-
 drivers/gpu/drm/drm_color_mgmt.c                   |     4 +-
 drivers/gpu/drm/drm_connector.c                    |    26 +-
 drivers/gpu/drm/drm_crtc.c                         |    15 +-
 drivers/gpu/drm/drm_crtc_helper.c                  |     4 +-
 drivers/gpu/drm/drm_crtc_internal.h                |     1 +
 drivers/gpu/drm/drm_debugfs_crc.c                  |     2 +-
 drivers/gpu/drm/drm_dp_dual_mode_helper.c          |    16 +-
 drivers/gpu/drm/drm_dp_helper.c                    |     7 +-
 drivers/gpu/drm/drm_dp_mst_topology.c              |    74 +
 drivers/gpu/drm/drm_drv.c                          |    54 +-
 drivers/gpu/drm/drm_edid.c                         |    15 +
 drivers/gpu/drm/drm_edid_load.c                    |    16 +
 drivers/gpu/drm/drm_encoder.c                      |     7 +-
 drivers/gpu/drm/drm_fb_cma_helper.c                |    77 +-
 drivers/gpu/drm/drm_fb_helper.c                    |     8 +-
 drivers/gpu/drm/drm_framebuffer.c                  |    10 +-
 drivers/gpu/drm/drm_gem.c                          |    17 +-
 drivers/gpu/drm/drm_gem_cma_helper.c               |     2 +-
 drivers/gpu/drm/drm_gem_framebuffer_helper.c       |    86 +-
 drivers/gpu/drm/drm_internal.h                     |     7 +-
 drivers/gpu/drm/drm_ioctl.c                        |     8 +-
 drivers/gpu/drm/drm_kms_helper_common.c            |    28 +
 drivers/gpu/drm/drm_lease.c                        |   767 ++
 drivers/gpu/drm/drm_mode_config.c                  |    23 +-
 drivers/gpu/drm/drm_mode_object.c                  |    37 +-
 drivers/gpu/drm/drm_modeset_lock.c                 |    98 +-
 drivers/gpu/drm/drm_of.c                           |     2 +
 drivers/gpu/drm/drm_pci.c                          |     2 +-
 drivers/gpu/drm/drm_plane.c                        |    89 +-
 drivers/gpu/drm/drm_plane_helper.c                 |     2 +-
 drivers/gpu/drm/drm_prime.c                        |     4 +-
 drivers/gpu/drm/drm_probe_helper.c                 |    21 +-
 drivers/gpu/drm/drm_property.c                     |     6 +-
 drivers/gpu/drm/drm_scdc_helper.c                  |    12 +-
 drivers/gpu/drm/drm_syncobj.c                      |    93 +-
 drivers/gpu/drm/drm_trace.h                        |     2 +-
 drivers/gpu/drm/drm_vblank.c                       |   457 +-
 drivers/gpu/drm/etnaviv/Kconfig                    |     2 -
 drivers/gpu/drm/etnaviv/Makefile                   |     3 +-
 drivers/gpu/drm/etnaviv/etnaviv_buffer.c           |    36 +
 drivers/gpu/drm/etnaviv/etnaviv_cmdbuf.c           |    15 +-
 drivers/gpu/drm/etnaviv/etnaviv_cmdbuf.h           |     6 +-
 drivers/gpu/drm/etnaviv/etnaviv_drv.c              |    43 +
 drivers/gpu/drm/etnaviv/etnaviv_drv.h              |     6 +-
 drivers/gpu/drm/etnaviv/etnaviv_gem.c              |    19 -
 drivers/gpu/drm/etnaviv/etnaviv_gem_submit.c       |    69 +-
 drivers/gpu/drm/etnaviv/etnaviv_gpu.c              |   217 +-
 drivers/gpu/drm/etnaviv/etnaviv_gpu.h              |    13 +-
 drivers/gpu/drm/etnaviv/etnaviv_iommu.c            |   197 +-
 drivers/gpu/drm/etnaviv/etnaviv_iommu.h            |     7 +-
 drivers/gpu/drm/etnaviv/etnaviv_iommu_v2.c         |   120 +-
 drivers/gpu/drm/etnaviv/etnaviv_mmu.c              |   106 +-
 drivers/gpu/drm/etnaviv/etnaviv_mmu.h              |    36 +-
 drivers/gpu/drm/etnaviv/etnaviv_perfmon.c          |   495 +
 drivers/gpu/drm/etnaviv/etnaviv_perfmon.h          |    49 +
 drivers/gpu/drm/exynos/Kconfig                     |     1 +
 drivers/gpu/drm/exynos/exynos_drm_crtc.c           |    15 +
 drivers/gpu/drm/exynos/exynos_drm_drv.h            |     3 +
 drivers/gpu/drm/exynos/exynos_drm_mic.c            |     6 +-
 drivers/gpu/drm/exynos/exynos_hdmi.c               |   310 +-
 drivers/gpu/drm/exynos/exynos_mixer.c              |   460 +-
 drivers/gpu/drm/exynos/regs-hdmi.h                 |     8 +-
 drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_kms.c          |     3 +-
 drivers/gpu/drm/gma500/cdv_intel_dp.c              |     6 +-
 drivers/gpu/drm/gma500/mdfld_intel_display.c       |     2 +-
 drivers/gpu/drm/gma500/mid_bios.c                  |     2 +-
 drivers/gpu/drm/gma500/psb_intel_sdvo.c            |     9 +-
 drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_vdac.c   |     2 +-
 drivers/gpu/drm/hisilicon/kirin/kirin_drm_ade.c    |     3 +
 drivers/gpu/drm/hisilicon/kirin/kirin_drm_drv.c    |     7 +-
 drivers/gpu/drm/i2c/ch7006_drv.c                   |     2 +-
 drivers/gpu/drm/i2c/sil164_drv.c                   |     2 +-
 drivers/gpu/drm/i2c/tda998x_drv.c                  |     2 +-
 drivers/gpu/drm/i915/Kconfig                       |     1 +
 drivers/gpu/drm/i915/Makefile                      |    10 +-
 drivers/gpu/drm/i915/gvt/aperture_gm.c             |    26 +-
 drivers/gpu/drm/i915/gvt/cfg_space.c               |    30 +-
 drivers/gpu/drm/i915/gvt/cmd_parser.c              |    37 +-
 drivers/gpu/drm/i915/gvt/execlist.c                |   127 +-
 drivers/gpu/drm/i915/gvt/gtt.c                     |     5 +-
 drivers/gpu/drm/i915/gvt/gvt.c                     |     2 +-
 drivers/gpu/drm/i915/gvt/gvt.h                     |    14 +-
 drivers/gpu/drm/i915/gvt/kvmgt.c                   |    44 +-
 drivers/gpu/drm/i915/gvt/mmio.c                    |    47 +-
 drivers/gpu/drm/i915/gvt/render.c                  |     2 +-
 drivers/gpu/drm/i915/gvt/scheduler.c               |   115 +-
 drivers/gpu/drm/i915/gvt/scheduler.h               |     1 +
 drivers/gpu/drm/i915/i915_debugfs.c                |   638 +-
 drivers/gpu/drm/i915/i915_drv.c                    |    93 +-
 drivers/gpu/drm/i915/i915_drv.h                    |   368 +-
 drivers/gpu/drm/i915/i915_gem.c                    |   649 +-
 drivers/gpu/drm/i915/i915_gem_clflush.c            |     1 +
 drivers/gpu/drm/i915/i915_gem_context.c            |   123 +-
 drivers/gpu/drm/i915/i915_gem_dmabuf.c             |    18 +-
 drivers/gpu/drm/i915/i915_gem_evict.c              |    14 +-
 drivers/gpu/drm/i915/i915_gem_execbuffer.c         |    47 +-
 drivers/gpu/drm/i915/i915_gem_fence_reg.c          |    91 +-
 drivers/gpu/drm/i915/i915_gem_gtt.c                |   726 +-
 drivers/gpu/drm/i915/i915_gem_gtt.h                |    66 +-
 drivers/gpu/drm/i915/i915_gem_internal.c           |    18 +-
 drivers/gpu/drm/i915/i915_gem_object.h             |    42 +-
 drivers/gpu/drm/i915/i915_gem_render_state.c       |     2 +-
 drivers/gpu/drm/i915/i915_gem_request.c            |    52 +-
 drivers/gpu/drm/i915/i915_gem_request.h            |    48 +-
 drivers/gpu/drm/i915/i915_gem_shrinker.c           |   131 +-
 drivers/gpu/drm/i915/i915_gem_stolen.c             |    21 +-
 drivers/gpu/drm/i915/i915_gem_tiling.c             |     2 +-
 drivers/gpu/drm/i915/i915_gem_userptr.c            |   144 +-
 drivers/gpu/drm/i915/i915_gemfs.c                  |    74 +
 drivers/gpu/drm/i915/i915_gemfs.h                  |    34 +
 drivers/gpu/drm/i915/i915_gpu_error.c              |    43 +-
 drivers/gpu/drm/i915/i915_guc_submission.c         |   476 +-
 drivers/gpu/drm/i915/i915_guc_submission.h         |    80 +
 drivers/gpu/drm/i915/i915_irq.c                    |  1101 +-
 drivers/gpu/drm/i915/i915_oa_cflgt2.c              |   109 +
 drivers/gpu/drm/i915/i915_oa_cflgt2.h              |    34 +
 drivers/gpu/drm/i915/i915_params.c                 |   207 +-
 drivers/gpu/drm/i915/i915_params.h                 |    85 +-
 drivers/gpu/drm/i915/i915_pci.c                    |   341 +-
 drivers/gpu/drm/i915/i915_perf.c                   |    14 +-
 drivers/gpu/drm/i915/i915_pvinfo.h                 |     1 +
 drivers/gpu/drm/i915/i915_reg.h                    |    89 +-
 drivers/gpu/drm/i915/i915_suspend.c                |     2 -
 drivers/gpu/drm/i915/i915_sw_fence.c               |    45 +-
 drivers/gpu/drm/i915/i915_sysfs.c                  |    76 +-
 drivers/gpu/drm/i915/i915_trace.h                  |   118 +-
 drivers/gpu/drm/i915/i915_utils.h                  |    18 +
 drivers/gpu/drm/i915/i915_vgpu.h                   |     6 +
 drivers/gpu/drm/i915/i915_vma.c                    |   144 +-
 drivers/gpu/drm/i915/i915_vma.h                    |    49 +-
 drivers/gpu/drm/i915/intel_atomic_plane.c          |    49 +-
 drivers/gpu/drm/i915/intel_audio.c                 |     2 +-
 drivers/gpu/drm/i915/intel_bios.c                  |   392 +-
 drivers/gpu/drm/i915/intel_breadcrumbs.c           |    20 +-
 drivers/gpu/drm/i915/intel_cdclk.c                 |   318 +-
 drivers/gpu/drm/i915/intel_crt.c                   |   136 +-
 drivers/gpu/drm/i915/intel_csr.c                   |    39 +-
 drivers/gpu/drm/i915/intel_ddi.c                   |  1039 +-
 drivers/gpu/drm/i915/intel_device_info.c           |    41 +-
 drivers/gpu/drm/i915/intel_display.c               |   747 +-
 drivers/gpu/drm/i915/intel_dp.c                    |   293 +-
 drivers/gpu/drm/i915/intel_dp_aux_backlight.c      |     2 +-
 drivers/gpu/drm/i915/intel_dp_mst.c                |    76 +-
 drivers/gpu/drm/i915/intel_drv.h                   |   157 +-
 drivers/gpu/drm/i915/intel_dsi.c                   |    76 +-
 drivers/gpu/drm/i915/intel_dvo.c                   |    45 +-
 drivers/gpu/drm/i915/intel_engine_cs.c             |   534 +-
 drivers/gpu/drm/i915/intel_fbc.c                   |    41 +-
 drivers/gpu/drm/i915/intel_fbdev.c                 |     7 +-
 drivers/gpu/drm/i915/intel_fifo_underrun.c         |    14 +-
 drivers/gpu/drm/i915/intel_guc.c                   |   369 +
 drivers/gpu/drm/i915/intel_guc.h                   |   120 +
 .../i915/{intel_guc_loader.c => intel_guc_fw.c}    |   252 +-
 drivers/gpu/drm/i915/intel_guc_fw.h                |    33 +
 drivers/gpu/drm/i915/intel_guc_fwif.h              |    62 +-
 drivers/gpu/drm/i915/intel_guc_log.c               |    32 +-
 drivers/gpu/drm/i915/intel_guc_log.h               |    59 +
 drivers/gpu/drm/i915/intel_gvt.c                   |    12 +-
 drivers/gpu/drm/i915/intel_hangcheck.c             |     2 +-
 drivers/gpu/drm/i915/intel_hdmi.c                  |   183 +-
 drivers/gpu/drm/i915/intel_huc.c                   |   172 +-
 drivers/gpu/drm/i915/intel_huc.h                   |    41 +
 drivers/gpu/drm/i915/intel_lrc.c                   |   707 +-
 drivers/gpu/drm/i915/intel_lrc.h                   |    37 +-
 drivers/gpu/drm/i915/intel_lspcon.c                |    22 +-
 drivers/gpu/drm/i915/intel_lvds.c                  |    51 +-
 drivers/gpu/drm/i915/intel_opregion.c              |     2 +-
 drivers/gpu/drm/i915/intel_overlay.c               |     2 +-
 drivers/gpu/drm/i915/intel_panel.c                 |     8 +-
 drivers/gpu/drm/i915/intel_pipe_crc.c              |    80 +-
 drivers/gpu/drm/i915/intel_pm.c                    |  1244 +-
 drivers/gpu/drm/i915/intel_psr.c                   |   450 +-
 drivers/gpu/drm/i915/intel_ringbuffer.c            |   194 +-
 drivers/gpu/drm/i915/intel_ringbuffer.h            |   184 +-
 drivers/gpu/drm/i915/intel_runtime_pm.c            |   128 +-
 drivers/gpu/drm/i915/intel_sdvo.c                  |    40 +-
 drivers/gpu/drm/i915/intel_sideband.c              |     6 +-
 drivers/gpu/drm/i915/intel_sprite.c                |    39 +-
 drivers/gpu/drm/i915/intel_tv.c                    |    16 +-
 drivers/gpu/drm/i915/intel_uc.c                    |   363 +-
 drivers/gpu/drm/i915/intel_uc.h                    |   247 +-
 drivers/gpu/drm/i915/intel_uc_fw.c                 |   318 +
 drivers/gpu/drm/i915/intel_uc_fw.h                 |   121 +
 drivers/gpu/drm/i915/intel_uncore.c                |   268 +-
 drivers/gpu/drm/i915/intel_uncore.h                |    18 +
 drivers/gpu/drm/i915/intel_vbt_defs.h              |   339 +-
 drivers/gpu/drm/i915/selftests/huge_gem_object.c   |    14 +-
 drivers/gpu/drm/i915/selftests/huge_pages.c        |  1734 +++
 drivers/gpu/drm/i915/selftests/i915_gem_context.c  |     2 +-
 drivers/gpu/drm/i915/selftests/i915_gem_evict.c    |   162 +-
 drivers/gpu/drm/i915/selftests/i915_gem_gtt.c      |    15 +-
 drivers/gpu/drm/i915/selftests/i915_gem_object.c   |     8 -
 drivers/gpu/drm/i915/selftests/i915_gem_request.c  |    12 +-
 drivers/gpu/drm/i915/selftests/i915_gem_timeline.c |     2 +-
 .../gpu/drm/i915/selftests/i915_live_selftests.h   |     2 +
 .../gpu/drm/i915/selftests/i915_mock_selftests.h   |     1 +
 drivers/gpu/drm/i915/selftests/i915_random.c       |     5 -
 drivers/gpu/drm/i915/selftests/i915_random.h       |     5 +
 drivers/gpu/drm/i915/selftests/i915_sw_fence.c     |    42 +
 drivers/gpu/drm/i915/selftests/intel_hangcheck.c   |    50 +-
 drivers/gpu/drm/i915/selftests/lib_sw_fence.c      |    78 +
 drivers/gpu/drm/i915/selftests/lib_sw_fence.h      |    42 +
 drivers/gpu/drm/i915/selftests/mock_context.c      |     6 +-
 drivers/gpu/drm/i915/selftests/mock_engine.c       |     8 +-
 drivers/gpu/drm/i915/selftests/mock_gem_device.c   |    20 +
 drivers/gpu/drm/i915/selftests/mock_gtt.c          |    11 +-
 drivers/gpu/drm/i915/selftests/scatterlist.c       |    15 +
 drivers/gpu/drm/imx/imx-drm-core.c                 |     3 +-
 drivers/gpu/drm/imx/ipuv3-plane.c                  |     3 +-
 drivers/gpu/drm/mediatek/mtk_hdmi.c                |     6 +-
 drivers/gpu/drm/meson/meson_drv.c                  |     3 +-
 drivers/gpu/drm/mgag200/mgag200_mode.c             |     2 +-
 drivers/gpu/drm/msm/Makefile                       |     4 +-
 drivers/gpu/drm/msm/adreno/a3xx_gpu.c              |    10 +-
 drivers/gpu/drm/msm/adreno/a4xx_gpu.c              |    10 +-
 drivers/gpu/drm/msm/adreno/a5xx_gpu.c              |   261 +-
 drivers/gpu/drm/msm/adreno/a5xx_gpu.h              |   109 +-
 drivers/gpu/drm/msm/adreno/a5xx_power.c            |     9 +-
 drivers/gpu/drm/msm/adreno/a5xx_preempt.c          |   305 +
 drivers/gpu/drm/msm/adreno/adreno_device.c         |    78 +-
 drivers/gpu/drm/msm/adreno/adreno_gpu.c            |   297 +-
 drivers/gpu/drm/msm/adreno/adreno_gpu.h            |    66 +-
 drivers/gpu/drm/msm/dsi/dsi_cfg.c                  |     8 +-
 drivers/gpu/drm/msm/dsi/dsi_host.c                 |    30 +-
 drivers/gpu/drm/msm/dsi/phy/dsi_phy.c              |     2 +-
 drivers/gpu/drm/msm/edp/edp_ctrl.c                 |    22 +-
 drivers/gpu/drm/msm/hdmi/hdmi.c                    |    10 +-
 drivers/gpu/drm/msm/hdmi/hdmi_phy.c                |     2 +-
 drivers/gpu/drm/msm/hdmi/hdmi_phy_8960.c           |     2 +-
 drivers/gpu/drm/msm/hdmi/hdmi_phy_8996.c           |     4 +-
 drivers/gpu/drm/msm/hdmi/hdmi_phy_8x74.c           |     3 +-
 drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c           |     7 +
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_cmd_encoder.c    |     2 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c           |   160 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_encoder.c        |     2 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_irq.c            |    10 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.c            |    10 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_pipe.c           |    71 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_pipe.h           |     7 +-
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_plane.c          |   232 +-
 drivers/gpu/drm/msm/msm_atomic.c                   |    41 +-
 drivers/gpu/drm/msm/msm_drv.c                      |    83 +-
 drivers/gpu/drm/msm/msm_drv.h                      |    37 +-
 drivers/gpu/drm/msm/msm_fence.c                    |     2 +-
 drivers/gpu/drm/msm/msm_fence.h                    |     2 +-
 drivers/gpu/drm/msm/msm_gem.c                      |    22 +-
 drivers/gpu/drm/msm/msm_gem.h                      |     5 +-
 drivers/gpu/drm/msm/msm_gem_submit.c               |    37 +-
 drivers/gpu/drm/msm/msm_gpu.c                      |   235 +-
 drivers/gpu/drm/msm/msm_gpu.h                      |    51 +-
 drivers/gpu/drm/msm/msm_rd.c                       |   142 +-
 drivers/gpu/drm/msm/msm_ringbuffer.c               |    36 +-
 drivers/gpu/drm/msm/msm_ringbuffer.h               |    33 +-
 drivers/gpu/drm/msm/msm_submitqueue.c              |   152 +
 drivers/gpu/drm/mxsfb/mxsfb_drv.c                  |     5 +-
 drivers/gpu/drm/nouveau/Kbuild                     |     2 +
 drivers/gpu/drm/nouveau/Kconfig                    |     7 +
 drivers/gpu/drm/nouveau/dispnv04/disp.c            |     2 +-
 drivers/gpu/drm/nouveau/include/nvif/cl506e.h      |     2 +-
 drivers/gpu/drm/nouveau/include/nvif/cl506f.h      |     2 +-
 drivers/gpu/drm/nouveau/include/nvif/cl826e.h      |     2 +-
 drivers/gpu/drm/nouveau/include/nvif/cl826f.h      |     2 +-
 drivers/gpu/drm/nouveau/include/nvif/cl906f.h      |     2 +-
 drivers/gpu/drm/nouveau/include/nvif/cla06f.h      |     2 +-
 drivers/gpu/drm/nouveau/include/nvif/class.h       |    17 +
 drivers/gpu/drm/nouveau/include/nvif/device.h      |     5 -
 drivers/gpu/drm/nouveau/include/nvif/if0008.h      |    42 +
 drivers/gpu/drm/nouveau/include/nvif/if000a.h      |    22 +
 drivers/gpu/drm/nouveau/include/nvif/if000b.h      |    11 +
 drivers/gpu/drm/nouveau/include/nvif/if000c.h      |    64 +
 drivers/gpu/drm/nouveau/include/nvif/if000d.h      |    12 +
 drivers/gpu/drm/nouveau/include/nvif/if500b.h      |    25 +
 drivers/gpu/drm/nouveau/include/nvif/if500d.h      |    21 +
 drivers/gpu/drm/nouveau/include/nvif/if900b.h      |    23 +
 drivers/gpu/drm/nouveau/include/nvif/if900d.h      |    21 +
 drivers/gpu/drm/nouveau/include/nvif/ifb00d.h      |    27 +
 drivers/gpu/drm/nouveau/include/nvif/ifc00d.h      |    21 +
 drivers/gpu/drm/nouveau/include/nvif/ioctl.h       |    10 +-
 drivers/gpu/drm/nouveau/include/nvif/mem.h         |    18 +
 drivers/gpu/drm/nouveau/include/nvif/mmu.h         |    56 +
 drivers/gpu/drm/nouveau/include/nvif/object.h      |     7 +-
 drivers/gpu/drm/nouveau/include/nvif/os.h          |    14 -
 drivers/gpu/drm/nouveau/include/nvif/vmm.h         |    42 +
 drivers/gpu/drm/nouveau/include/nvkm/core/client.h |     3 +-
 drivers/gpu/drm/nouveau/include/nvkm/core/device.h |     2 +-
 drivers/gpu/drm/nouveau/include/nvkm/core/engine.h |     1 +
 drivers/gpu/drm/nouveau/include/nvkm/core/gpuobj.h |    14 +-
 drivers/gpu/drm/nouveau/include/nvkm/core/memory.h |    64 +-
 drivers/gpu/drm/nouveau/include/nvkm/core/mm.h     |    32 +-
 drivers/gpu/drm/nouveau/include/nvkm/core/object.h |    41 +-
 drivers/gpu/drm/nouveau/include/nvkm/core/oclass.h |    31 +
 drivers/gpu/drm/nouveau/include/nvkm/core/os.h     |    19 +
 drivers/gpu/drm/nouveau/include/nvkm/core/ramht.h  |     1 +
 drivers/gpu/drm/nouveau/include/nvkm/core/subdev.h |     2 +-
 drivers/gpu/drm/nouveau/include/nvkm/engine/dma.h  |     1 +
 .../gpu/drm/nouveau/include/nvkm/engine/falcon.h   |     5 +-
 drivers/gpu/drm/nouveau/include/nvkm/engine/fifo.h |     3 +-
 drivers/gpu/drm/nouveau/include/nvkm/subdev/bar.h  |     9 +-
 drivers/gpu/drm/nouveau/include/nvkm/subdev/fb.h   |    36 +-
 .../gpu/drm/nouveau/include/nvkm/subdev/instmem.h  |     1 +
 drivers/gpu/drm/nouveau/include/nvkm/subdev/ltc.h  |     7 +-
 drivers/gpu/drm/nouveau/include/nvkm/subdev/mmu.h  |   140 +-
 .../gpu/drm/nouveau/include/nvkm/subdev/therm.h    |     1 +
 drivers/gpu/drm/nouveau/nouveau_abi16.c            |    42 +-
 drivers/gpu/drm/nouveau/nouveau_abi16.h            |     2 +-
 drivers/gpu/drm/nouveau/nouveau_bios.c             |    10 +-
 drivers/gpu/drm/nouveau/nouveau_bo.c               |   391 +-
 drivers/gpu/drm/nouveau/nouveau_bo.h               |    17 +-
 drivers/gpu/drm/nouveau/nouveau_chan.c             |    51 +-
 drivers/gpu/drm/nouveau/nouveau_chan.h             |     3 +-
 drivers/gpu/drm/nouveau/nouveau_connector.c        |     4 +-
 drivers/gpu/drm/nouveau/nouveau_display.h          |     5 +-
 drivers/gpu/drm/nouveau/nouveau_dma.c              |    15 +-
 drivers/gpu/drm/nouveau/nouveau_dma.h              |     2 +-
 drivers/gpu/drm/nouveau/nouveau_drm.c              |   161 +-
 drivers/gpu/drm/nouveau/nouveau_drv.h              |    33 +-
 drivers/gpu/drm/nouveau/nouveau_fbcon.c            |     7 +-
 drivers/gpu/drm/nouveau/nouveau_fence.c            |    58 -
 drivers/gpu/drm/nouveau/nouveau_fence.h            |     7 +-
 drivers/gpu/drm/nouveau/nouveau_gem.c              |   123 +-
 drivers/gpu/drm/nouveau/nouveau_gem.h              |     3 -
 drivers/gpu/drm/nouveau/nouveau_mem.c              |   198 +
 drivers/gpu/drm/nouveau/nouveau_mem.h              |    30 +
 drivers/gpu/drm/nouveau/nouveau_sgdma.c            |    54 +-
 drivers/gpu/drm/nouveau/nouveau_ttm.c              |   280 +-
 drivers/gpu/drm/nouveau/nouveau_vmm.c              |   135 +
 drivers/gpu/drm/nouveau/nouveau_vmm.h              |    31 +
 drivers/gpu/drm/nouveau/nv50_display.c             |    12 +-
 drivers/gpu/drm/nouveau/nv50_fbcon.c               |     9 +-
 drivers/gpu/drm/nouveau/nv84_fence.c               |    43 +-
 drivers/gpu/drm/nouveau/nvc0_fbcon.c               |     9 +-
 drivers/gpu/drm/nouveau/nvif/Kbuild                |     3 +
 drivers/gpu/drm/nouveau/nvif/mem.c                 |    88 +
 drivers/gpu/drm/nouveau/nvif/mmu.c                 |   117 +
 drivers/gpu/drm/nouveau/nvif/object.c              |    87 +-
 drivers/gpu/drm/nouveau/nvif/vmm.c                 |   167 +
 drivers/gpu/drm/nouveau/nvkm/core/client.c         |     2 +
 drivers/gpu/drm/nouveau/nvkm/core/engine.c         |    10 +
 drivers/gpu/drm/nouveau/nvkm/core/gpuobj.c         |    47 +-
 drivers/gpu/drm/nouveau/nvkm/core/ioctl.c          |    15 +-
 drivers/gpu/drm/nouveau/nvkm/core/memory.c         |   100 +-
 drivers/gpu/drm/nouveau/nvkm/core/mm.c             |     5 +-
 drivers/gpu/drm/nouveau/nvkm/core/object.c         |    14 +-
 drivers/gpu/drm/nouveau/nvkm/core/oproxy.c         |    13 +-
 drivers/gpu/drm/nouveau/nvkm/core/ramht.c          |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/device/base.c  |    98 +-
 drivers/gpu/drm/nouveau/nvkm/engine/device/ctrl.h  |     2 +-
 drivers/gpu/drm/nouveau/nvkm/engine/device/pci.c   |    24 +-
 drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.c |     6 +-
 drivers/gpu/drm/nouveau/nvkm/engine/device/user.c  |     9 +-
 .../gpu/drm/nouveau/nvkm/engine/disp/channv50.c    |     4 +-
 .../gpu/drm/nouveau/nvkm/engine/disp/channv50.h    |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/disp/ior.h     |     2 +-
 drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv04.c |     6 +-
 drivers/gpu/drm/nouveau/nvkm/engine/falcon.c       |     2 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/base.c    |     8 +
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/chan.c    |    43 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/chang84.c |    13 +-
 .../gpu/drm/nouveau/nvkm/engine/fifo/changf100.h   |     5 +-
 .../gpu/drm/nouveau/nvkm/engine/fifo/changk104.h   |     5 +-
 .../gpu/drm/nouveau/nvkm/engine/fifo/channv50.c    |    14 +-
 .../gpu/drm/nouveau/nvkm/engine/fifo/channv50.h    |     5 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmag84.c  |     6 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv04.c |     2 +
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/dmanv50.c |     6 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gf100.c   |    18 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gf100.h   |     2 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c   |    19 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.h   |     2 +-
 .../gpu/drm/nouveau/nvkm/engine/fifo/gpfifog84.c   |     6 +-
 .../gpu/drm/nouveau/nvkm/engine/fifo/gpfifogf100.c |    45 +-
 .../gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c |    51 +-
 .../gpu/drm/nouveau/nvkm/engine/fifo/gpfifonv50.c  |     6 +-
 drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv50.c    |     4 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf100.c  |   123 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf100.h  |     2 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf108.c  |     3 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgf117.c  |     3 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgk104.c  |     6 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgm107.c  |     9 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp100.c  |     6 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/ctxgp102.c  |     3 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c     |    83 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.h     |     9 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gf104.c     |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gf108.c     |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gf110.c     |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gf117.c     |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gf119.c     |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gk104.c     |    13 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.c     |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110b.c    |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/gk208.c     |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/nv20.c      |     4 +-
 drivers/gpu/drm/nouveau/nvkm/engine/gr/nv20.h      |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/nv40.h      |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/gr/nv50.h      |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/mpeg/nv31.h    |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/mpeg/nv50.c    |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/pm/priv.h      |     1 +
 drivers/gpu/drm/nouveau/nvkm/engine/sw/chan.h      |     4 +-
 drivers/gpu/drm/nouveau/nvkm/engine/sw/nvsw.h      |     2 +-
 drivers/gpu/drm/nouveau/nvkm/engine/xtensa.c       |     2 +-
 drivers/gpu/drm/nouveau/nvkm/falcon/base.c         |     2 +-
 drivers/gpu/drm/nouveau/nvkm/falcon/v1.c           |     6 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/Kbuild     |     2 +
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/base.c     |    60 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/g84.c      |    10 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/gf100.c    |   151 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/gf100.h    |    16 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/gk20a.c    |     6 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/gm107.c    |    65 +
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/gm20b.c    |    42 +
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/nv50.c     |   174 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/nv50.h     |    16 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bar/priv.h     |    20 +-
 .../gpu/drm/nouveau/nvkm/subdev/bios/iccsense.c    |     4 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bios/init.c    |     7 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/bios/timing.c  |     5 +
 drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv04.c |    12 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/base.c      |    35 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/g84.c       |     1 +
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf100.c     |    24 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf100.h     |     2 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf108.c     |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk104.c     |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk20a.c     |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm107.c     |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm200.c     |    18 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm20b.c     |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gp100.c     |     1 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gp102.c     |     1 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gp10b.c     |     1 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/gt215.c     |     1 +
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv04.c      |     9 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv10.c      |     1 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv1a.c      |     1 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv20.c      |    13 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv25.c      |     4 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv30.c      |     4 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv35.c      |     4 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv36.c      |     4 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv40.c      |     4 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv41.c      |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv44.c      |     1 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv46.c      |     1 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv47.c      |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv49.c      |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv4e.c      |     1 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv50.c      |    30 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv50.h      |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/priv.h      |    13 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ram.c       |   144 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ram.h       |    11 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf100.c  |    94 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf108.c  |     2 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgk104.c  |     2 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgm107.c  |     2 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgm200.c  |     2 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgp100.c  |     2 -
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgt215.c  |    20 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/rammcp77.c  |     7 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv04.c   |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv10.c   |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv1a.c   |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv20.c   |     3 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv40.c   |     7 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv40.h   |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv41.c   |     3 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv44.c   |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv49.c   |     3 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv4e.c   |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv50.c   |    98 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/base.c |   266 +-
 .../gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.c    |    61 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv04.c |    70 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv40.c |    71 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.c |   329 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/instmem/priv.h |    14 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/ltc/base.c     |    25 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gf100.c    |    20 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gp100.c    |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/Kbuild     |    29 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/base.c     |   696 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/g84.c      |    41 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gf100.c    |   228 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gk104.c    |    41 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gk20a.c    |    41 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gm200.c    |    97 +
 .../nvkm/subdev/mmu/gm20b.c}                       |    49 +-
 .../nvkm/subdev/mmu/gp100.c}                       |    37 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp10b.     |     0
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp10b.c    |    45 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/mem.c      |   242 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/mem.h      |    23 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memgf100.c |    94 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memnv04.c  |    69 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memnv50.c  |    88 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv04.c     |   122 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv04.h     |    18 -
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv41.c     |   104 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv44.c     |   190 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv50.c     |   231 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/priv.h     |    70 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/umem.c     |   192 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/umem.h     |    26 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ummu.c     |   178 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ummu.h     |    14 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.c     |   352 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.h     |    14 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.c      |  1513 +++
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.h      |   310 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgf100.c |   403 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk104.c |   102 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk20a.c |    71 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm200.c |   185 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm20b.c |    70 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp100.c |   347 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp10b.c |    49 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv04.c  |   140 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv41.c  |   113 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv44.c  |   230 +
 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv50.c  |   385 +
 drivers/gpu/drm/nouveau/nvkm/subdev/pci/base.c     |     2 +-
 .../gpu/drm/nouveau/nvkm/subdev/secboot/gm200.c    |    43 +-
 .../gpu/drm/nouveau/nvkm/subdev/secboot/gm200.h    |     5 +-
 .../nvkm/subdev/secboot/ls_ucode_msgqueue.c        |     2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/secboot/priv.h |     1 +
 drivers/gpu/drm/nouveau/nvkm/subdev/therm/Kbuild   |     1 +
 drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c   |     3 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/therm/gp100.c  |    56 +
 drivers/gpu/drm/omapdrm/displays/connector-hdmi.c  |     8 +-
 .../gpu/drm/omapdrm/displays/encoder-tpd12s015.c   |    18 +-
 drivers/gpu/drm/omapdrm/dss/Kconfig                |     8 +
 drivers/gpu/drm/omapdrm/dss/Makefile               |     1 +
 drivers/gpu/drm/omapdrm/dss/hdmi.h                 |     7 +-
 drivers/gpu/drm/omapdrm/dss/hdmi4.c                |    62 +-
 drivers/gpu/drm/omapdrm/dss/hdmi4_cec.c            |   381 +
 drivers/gpu/drm/omapdrm/dss/hdmi4_cec.h            |    55 +
 drivers/gpu/drm/omapdrm/dss/hdmi4_core.c           |     7 +-
 drivers/gpu/drm/omapdrm/dss/hdmi4_core.h           |     4 +
 drivers/gpu/drm/omapdrm/dss/omapdss.h              |     1 +
 drivers/gpu/drm/panel/Kconfig                      |    33 +
 drivers/gpu/drm/panel/Makefile                     |     4 +
 drivers/gpu/drm/panel/panel-orisetech-otm8009a.c   |   491 +
 .../gpu/drm/panel/panel-raspberrypi-touchscreen.c  |   514 +
 drivers/gpu/drm/panel/panel-samsung-s6e63j0x03.c   |   532 +
 drivers/gpu/drm/panel/panel-seiko-43wvf1g.c        |   372 +
 drivers/gpu/drm/panel/panel-simple.c               |    51 +-
 drivers/gpu/drm/pl111/Kconfig                      |     3 +-
 drivers/gpu/drm/pl111/Makefile                     |     4 +-
 drivers/gpu/drm/pl111/pl111_connector.c            |   126 -
 drivers/gpu/drm/pl111/pl111_debugfs.c              |     6 +
 drivers/gpu/drm/pl111/pl111_display.c              |    79 +-
 drivers/gpu/drm/pl111/pl111_drm.h                  |    37 +-
 drivers/gpu/drm/pl111/pl111_drv.c                  |   149 +-
 drivers/gpu/drm/pl111/pl111_versatile.c            |   270 +
 drivers/gpu/drm/pl111/pl111_versatile.h            |     9 +
 drivers/gpu/drm/qxl/qxl_cmd.c                      |    22 +-
 drivers/gpu/drm/qxl/qxl_display.c                  |    49 +-
 drivers/gpu/drm/qxl/qxl_drv.h                      |    28 +-
 drivers/gpu/drm/qxl/qxl_dumb.c                     |     1 +
 drivers/gpu/drm/qxl/qxl_fb.c                       |    13 +-
 drivers/gpu/drm/qxl/qxl_release.c                  |     5 +-
 drivers/gpu/drm/qxl/qxl_ttm.c                      |     4 +-
 drivers/gpu/drm/radeon/Makefile                    |     5 +-
 drivers/gpu/drm/radeon/atombios_dp.c               |    46 +-
 drivers/gpu/drm/radeon/ci_dpm.c                    |    22 +
 drivers/gpu/drm/radeon/ci_dpm.h                    |     1 -
 drivers/gpu/drm/radeon/ci_smc.c                    |    21 -
 drivers/gpu/drm/radeon/cik.c                       |    14 +-
 drivers/gpu/drm/radeon/cikd.h                      |     2 -
 drivers/gpu/drm/radeon/r100.c                      |     2 +-
 drivers/gpu/drm/radeon/r600_cs.c                   |     2 +-
 drivers/gpu/drm/radeon/r600_hdmi.c                 |     2 +-
 drivers/gpu/drm/radeon/radeon.h                    |     3 -
 drivers/gpu/drm/radeon/radeon_connectors.c         |    16 +-
 drivers/gpu/drm/radeon/radeon_drv.c                |    10 -
 drivers/gpu/drm/radeon/radeon_fb.c                 |     4 +-
 drivers/gpu/drm/radeon/radeon_kfd.c                |   870 --
 drivers/gpu/drm/radeon/radeon_kms.c                |     7 -
 drivers/gpu/drm/radeon/radeon_mode.h               |     4 -
 drivers/gpu/drm/radeon/radeon_trace.h              |     2 +-
 drivers/gpu/drm/radeon/radeon_ttm.c                |    33 +-
 drivers/gpu/drm/rcar-du/rcar_du_kms.c              |     3 +-
 drivers/gpu/drm/rockchip/Kconfig                   |     9 +
 drivers/gpu/drm/rockchip/Makefile                  |     1 +
 drivers/gpu/drm/rockchip/analogix_dp-rockchip.c    |    40 +-
 drivers/gpu/drm/rockchip/cdn-dp-core.c             |     9 -
 drivers/gpu/drm/rockchip/cdn-dp-reg.c              |     2 +-
 drivers/gpu/drm/rockchip/dw-mipi-dsi.c             |    86 +-
 drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c        |    19 +-
 drivers/gpu/drm/rockchip/inno_hdmi.c               |    14 +-
 drivers/gpu/drm/rockchip/rockchip_drm_drv.c        |    14 +-
 drivers/gpu/drm/rockchip/rockchip_drm_drv.h        |     1 +
 drivers/gpu/drm/rockchip/rockchip_drm_fb.c         |     8 +-
 drivers/gpu/drm/rockchip/rockchip_drm_fbdev.c      |    18 +-
 drivers/gpu/drm/rockchip/rockchip_drm_gem.c        |     2 +-
 drivers/gpu/drm/rockchip/rockchip_drm_vop.c        |    32 +-
 drivers/gpu/drm/rockchip/rockchip_lvds.c           |   586 +
 drivers/gpu/drm/rockchip/rockchip_lvds.h           |   114 +
 drivers/gpu/drm/rockchip/rockchip_vop_reg.c        |     2 +-
 drivers/gpu/drm/shmobile/shmob_drm_kms.c           |     3 +-
 drivers/gpu/drm/sti/sti_drv.c                      |     3 +-
 drivers/gpu/drm/sti/sti_dvo.c                      |     6 +-
 drivers/gpu/drm/stm/drv.c                          |     3 +-
 drivers/gpu/drm/stm/dw_mipi_dsi-stm.c              |     8 +-
 drivers/gpu/drm/stm/ltdc.c                         |    16 +-
 drivers/gpu/drm/stm/ltdc.h                         |     2 -
 drivers/gpu/drm/sun4i/Makefile                     |    33 +-
 drivers/gpu/drm/sun4i/sun4i_backend.c              |   113 +-
 drivers/gpu/drm/sun4i/sun4i_backend.h              |     3 +-
 drivers/gpu/drm/sun4i/sun4i_crtc.c                 |    32 +-
 drivers/gpu/drm/sun4i/sun4i_drv.c                  |    76 +-
 drivers/gpu/drm/sun4i/sun4i_framebuffer.c          |     3 +-
 drivers/gpu/drm/sun4i/sun4i_hdmi.h                 |   112 +
 drivers/gpu/drm/sun4i/sun4i_hdmi_ddc_clk.c         |    39 +-
 drivers/gpu/drm/sun4i/sun4i_hdmi_enc.c             |   277 +-
 drivers/gpu/drm/sun4i/sun4i_hdmi_i2c.c             |   227 +-
 drivers/gpu/drm/sun4i/sun4i_hdmi_tmds_clk.c        |    69 +-
 drivers/gpu/drm/sun4i/sun4i_rgb.c                  |    29 +-
 drivers/gpu/drm/sun4i/sun4i_tcon.c                 |   466 +-
 drivers/gpu/drm/sun4i/sun4i_tcon.h                 |    30 +-
 drivers/gpu/drm/sun4i/sun4i_tv.c                   |    12 -
 drivers/gpu/drm/tegra/Kconfig                      |     1 +
 drivers/gpu/drm/tegra/dc.c                         |    84 +-
 drivers/gpu/drm/tegra/dc.h                         |   120 +
 drivers/gpu/drm/tegra/drm.c                        |    30 +-
 drivers/gpu/drm/tegra/drm.h                        |   106 +-
 drivers/gpu/drm/tegra/gr2d.c                       |     2 +-
 drivers/gpu/drm/tegra/gr3d.c                       |     2 +-
 drivers/gpu/drm/tegra/hdmi.c                       |    17 +-
 drivers/gpu/drm/tegra/output.c                     |     6 +
 drivers/gpu/drm/tegra/sor.c                        |     5 +-
 drivers/gpu/drm/tegra/vic.c                        |    22 +-
 drivers/gpu/drm/tilcdc/tilcdc_crtc.c               |    57 +-
 drivers/gpu/drm/tilcdc/tilcdc_drv.c                |     5 +-
 drivers/gpu/drm/tilcdc/tilcdc_panel.c              |     2 +-
 drivers/gpu/drm/tilcdc/tilcdc_slave_compat.c       |     1 -
 drivers/gpu/drm/tilcdc/tilcdc_tfp410.c             |     4 +-
 drivers/gpu/drm/tinydrm/core/tinydrm-core.c        |     3 +-
 drivers/gpu/drm/tinydrm/core/tinydrm-pipe.c        |     6 +-
 drivers/gpu/drm/tinydrm/mi0283qt.c                 |    22 +-
 drivers/gpu/drm/tinydrm/mipi-dbi.c                 |     7 +-
 drivers/gpu/drm/tinydrm/repaper.c                  |    45 +-
 drivers/gpu/drm/tinydrm/st7586.c                   |    25 +-
 drivers/gpu/drm/ttm/ttm_bo.c                       |    43 +-
 drivers/gpu/drm/ttm/ttm_bo_util.c                  |     2 +-
 drivers/gpu/drm/ttm/ttm_memory.c                   |    12 +-
 drivers/gpu/drm/ttm/ttm_page_alloc.c               |   405 +-
 drivers/gpu/drm/ttm/ttm_page_alloc_dma.c           |   256 +-
 drivers/gpu/drm/tve200/Kconfig                     |    16 +
 drivers/gpu/drm/tve200/Makefile                    |     4 +
 drivers/gpu/drm/tve200/tve200_display.c            |   338 +
 drivers/gpu/drm/tve200/tve200_drm.h                |   126 +
 drivers/gpu/drm/tve200/tve200_drv.c                |   303 +
 drivers/gpu/drm/udl/udl_connector.c                |   156 +-
 drivers/gpu/drm/udl/udl_connector.h                |    13 +
 drivers/gpu/drm/udl/udl_drv.c                      |     4 +
 drivers/gpu/drm/udl/udl_main.c                     |     5 +
 drivers/gpu/drm/vc4/Makefile                       |     2 -
 drivers/gpu/drm/vc4/vc4_bo.c                       |   287 +-
 drivers/gpu/drm/vc4/vc4_dpi.c                      |    17 +-
 drivers/gpu/drm/vc4/vc4_drv.c                      |    10 +-
 drivers/gpu/drm/vc4/vc4_drv.h                      |    30 +
 drivers/gpu/drm/vc4/vc4_dsi.c                      |   144 +-
 drivers/gpu/drm/vc4/vc4_gem.c                      |   156 +-
 drivers/gpu/drm/vc4/vc4_hdmi.c                     |    15 +-
 drivers/gpu/drm/vc4/vc4_plane.c                    |    40 +-
 drivers/gpu/drm/vc4/vc4_trace.h                    |     2 +-
 drivers/gpu/drm/via/via_verifier.c                 |    10 +-
 drivers/gpu/drm/virtio/virtgpu_display.c           |     4 +-
 drivers/gpu/drm/virtio/virtgpu_gem.c               |     4 +-
 drivers/gpu/drm/virtio/virtgpu_ioctl.c             |    12 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c              |     4 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_kms.c                |     2 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c               |     4 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c               |     4 +-
 drivers/gpu/drm/zte/zx_drm_drv.c                   |     3 +-
 drivers/gpu/host1x/Makefile                        |     3 +-
 drivers/gpu/host1x/bus.c                           |     3 +-
 drivers/gpu/host1x/channel.c                       |     3 +-
 drivers/gpu/host1x/debug.c                         |    14 +-
 drivers/gpu/host1x/debug.h                         |    14 +-
 drivers/gpu/host1x/dev.c                           |    69 +-
 drivers/gpu/host1x/dev.h                           |    19 +
 drivers/gpu/host1x/hw/cdma_hw.c                    |    49 +-
 drivers/gpu/host1x/hw/channel_hw.c                 |    24 +
 drivers/gpu/host1x/hw/debug_hw.c                   |   240 +-
 drivers/gpu/host1x/hw/debug_hw_1x01.c              |   154 +
 drivers/gpu/host1x/hw/debug_hw_1x06.c              |   135 +
 drivers/gpu/host1x/hw/host1x01.c                   |     2 +
 drivers/gpu/host1x/hw/host1x02.c                   |     2 +
 drivers/gpu/host1x/hw/host1x04.c                   |     2 +
 drivers/gpu/host1x/hw/host1x05.c                   |     2 +
 drivers/gpu/host1x/hw/host1x06.c                   |    44 +
 drivers/gpu/host1x/hw/host1x06.h                   |    26 +
 drivers/gpu/host1x/hw/host1x06_hardware.h          |   142 +
 drivers/gpu/host1x/hw/hw_host1x04_channel.h        |    12 +
 drivers/gpu/host1x/hw/hw_host1x05_channel.h        |    12 +
 drivers/gpu/host1x/hw/hw_host1x06_hypervisor.h     |    32 +
 drivers/gpu/host1x/hw/hw_host1x06_uclass.h         |   181 +
 drivers/gpu/host1x/hw/hw_host1x06_vm.h             |    47 +
 drivers/gpu/host1x/hw/intr_hw.c                    |    29 +-
 drivers/gpu/host1x/hw/syncpt_hw.c                  |    46 +
 drivers/gpu/host1x/syncpt.c                        |    24 +-
 drivers/gpu/host1x/syncpt.h                        |     2 +-
 drivers/gpu/vga/vgaarb.c                           |    72 +-
 drivers/media/v4l2-core/videobuf2-dma-contig.c     |     4 +-
 drivers/rapidio/devices/rio_mport_cdev.c           |     4 +-
 drivers/staging/vboxvideo/vbox_mode.c              |     2 +-
 .../radeon_kfd.h => include/drm/amd_asic_type.h    |    51 +-
 include/drm/bridge/mhl.h                           |     4 +
 include/drm/drmP.h                                 |     4 +
 include/drm/drm_atomic.h                           |   188 +-
 include/drm/drm_auth.h                             |    21 +
 include/drm/drm_bridge.h                           |     2 +-
 include/drm/drm_connector.h                        |    14 +-
 include/drm/drm_crtc.h                             |    37 +-
 include/drm/drm_dp_helper.h                        |    23 +
 include/drm/drm_dp_mst_helper.h                    |     2 +
 include/drm/drm_drv.h                              |     7 +-
 include/drm/drm_edid.h                             |     2 +
 include/drm/drm_encoder.h                          |     4 +-
 include/drm/drm_fb_cma_helper.h                    |    13 -
 include/drm/drm_framebuffer.h                      |     1 +
 include/drm/drm_gem_framebuffer_helper.h           |     2 +-
 include/drm/drm_lease.h                            |    46 +
 include/drm/drm_mode_config.h                      |    13 -
 include/drm/drm_mode_object.h                      |     5 +
 include/drm/drm_modeset_helper_vtables.h           |     2 +-
 include/drm/drm_modeset_lock.h                     |    12 +-
 include/drm/drm_of.h                               |    31 +
 include/drm/drm_plane.h                            |    20 +-
 include/drm/drm_property.h                         |     6 +-
 include/drm/drm_syncobj.h                          |     5 +
 include/drm/drm_vblank.h                           |    25 +-
 include/drm/i915_pciids.h                          |   154 +-
 include/drm/ttm/ttm_debug.h                        |    31 +
 include/drm/ttm/ttm_memory.h                       |     5 +-
 include/drm/ttm/ttm_page_alloc.h                   |    33 +-
 include/dt-bindings/msm/msm-bus-ids.h              |   887 ++
 include/linux/dma-fence.h                          |     7 +-
 include/linux/host1x.h                             |     2 +-
 include/linux/regmap.h                             |    39 +
 include/linux/scatterlist.h                        |    17 +-
 include/linux/shmem_fs.h                           |     2 +
 include/linux/sync_file.h                          |     4 +
 include/uapi/drm/amdgpu_drm.h                      |    50 +-
 include/uapi/drm/drm.h                             |    41 +
 include/uapi/drm/drm_mode.h                        |    70 +-
 include/uapi/drm/etnaviv_drm.h                     |    43 +-
 include/uapi/drm/i915_drm.h                        |    33 +-
 include/uapi/drm/msm_drm.h                         |    24 +
 include/uapi/drm/vc4_drm.h                         |    19 +
 include/uapi/linux/kfd_ioctl.h                     |     2 +-
 lib/scatterlist.c                                  |    95 +-
 mm/shmem.c                                         |    30 +-
 scripts/coccinelle/api/drm-get-put.cocci           |     5 +
 sound/soc/amd/acp-pcm-dma.c                        |     8 +-
 sound/soc/amd/acp.h                                |     7 +
 tools/testing/scatterlist/Makefile                 |    30 +
 tools/testing/scatterlist/linux/mm.h               |   125 +
 tools/testing/scatterlist/main.c                   |    79 +
 1044 files changed, 65842 insertions(+), 56300 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/display/bridge/sii9234.txt
 create mode 100644 Documentation/devicetree/bindings/display/faraday,tve200.txt
 create mode 100644
Documentation/devicetree/bindings/display/panel/orisetech,otm8009a.txt
 create mode 100644
Documentation/devicetree/bindings/display/panel/raspberrypi,7inch-touchscreen.txt
 create mode 100644
Documentation/devicetree/bindings/display/panel/samsung,s6e63j0x03.txt
 create mode 100644
Documentation/devicetree/bindings/display/panel/seiko,43wvf1g.txt
 create mode 100644
Documentation/devicetree/bindings/display/panel/toshiba,lt089ac29000.txt
 create mode 100644
Documentation/devicetree/bindings/display/rockchip/rockchip-lvds.txt
 create mode 100644 Documentation/gpu/tve200.rst
 create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_mn.h
 create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c
 rename drivers/gpu/drm/amd/{powerplay/eventmgr/eventinit.h =>
amdgpu/amdgpu_sched.h} (73%)
 create mode 100644 drivers/gpu/drm/amd/include/linux/chash.h
 create mode 100644 drivers/gpu/drm/amd/lib/Kconfig
 create mode 100644 drivers/gpu/drm/amd/lib/Makefile
 create mode 100644 drivers/gpu/drm/amd/lib/chash.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/Makefile
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventactionchains.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventactionchains.h
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventinit.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventmanagement.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventmanagement.h
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventmgr.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventsubchains.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventsubchains.h
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventtasks.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/eventtasks.h
 delete mode 100644 drivers/gpu/drm/amd/powerplay/eventmgr/psm.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/functiontables.c
 create mode 100644 drivers/gpu/drm/amd/powerplay/hwmgr/pp_psm.c
 rename drivers/gpu/drm/amd/powerplay/{eventmgr/psm.h => hwmgr/pp_psm.h} (62%)
 delete mode 100644 drivers/gpu/drm/amd/powerplay/inc/eventmanager.h
 delete mode 100644 drivers/gpu/drm/amd/powerplay/inc/eventmgr.h
 delete mode 100644 drivers/gpu/drm/amd/powerplay/inc/fiji_pwrvirus.h
 rename drivers/gpu/drm/amd/powerplay/smumgr/{iceland_smc.c =>
ci_smumgr.c} (56%)
 create mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/ci_smumgr.h
 delete mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/fiji_smc.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/fiji_smc.h
 delete mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/polaris10_smc.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/tonga_smc.c
 delete mode 100644 drivers/gpu/drm/amd/powerplay/smumgr/tonga_smc.h
 create mode 100644 drivers/gpu/drm/bridge/adv7511/adv7511_cec.c
 create mode 100644 drivers/gpu/drm/bridge/sii9234.c
 create mode 100644 drivers/gpu/drm/drm_lease.c
 create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_perfmon.c
 create mode 100644 drivers/gpu/drm/etnaviv/etnaviv_perfmon.h
 create mode 100644 drivers/gpu/drm/i915/i915_gemfs.c
 create mode 100644 drivers/gpu/drm/i915/i915_gemfs.h
 create mode 100644 drivers/gpu/drm/i915/i915_guc_submission.h
 create mode 100644 drivers/gpu/drm/i915/i915_oa_cflgt2.c
 create mode 100644 drivers/gpu/drm/i915/i915_oa_cflgt2.h
 create mode 100644 drivers/gpu/drm/i915/intel_guc.c
 create mode 100644 drivers/gpu/drm/i915/intel_guc.h
 rename drivers/gpu/drm/i915/{intel_guc_loader.c => intel_guc_fw.c} (58%)
 create mode 100644 drivers/gpu/drm/i915/intel_guc_fw.h
 create mode 100644 drivers/gpu/drm/i915/intel_guc_log.h
 create mode 100644 drivers/gpu/drm/i915/intel_huc.h
 create mode 100644 drivers/gpu/drm/i915/intel_uc_fw.c
 create mode 100644 drivers/gpu/drm/i915/intel_uc_fw.h
 create mode 100644 drivers/gpu/drm/i915/selftests/huge_pages.c
 create mode 100644 drivers/gpu/drm/i915/selftests/lib_sw_fence.c
 create mode 100644 drivers/gpu/drm/i915/selftests/lib_sw_fence.h
 create mode 100644 drivers/gpu/drm/msm/adreno/a5xx_preempt.c
 create mode 100644 drivers/gpu/drm/msm/msm_submitqueue.c
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if0008.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if000a.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if000b.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if000c.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if000d.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if500b.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if500d.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if900b.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/if900d.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/ifb00d.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/ifc00d.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/mem.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/mmu.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvif/vmm.h
 create mode 100644 drivers/gpu/drm/nouveau/include/nvkm/core/oclass.h
 create mode 100644 drivers/gpu/drm/nouveau/nouveau_mem.c
 create mode 100644 drivers/gpu/drm/nouveau/nouveau_mem.h
 create mode 100644 drivers/gpu/drm/nouveau/nouveau_vmm.c
 create mode 100644 drivers/gpu/drm/nouveau/nouveau_vmm.h
 create mode 100644 drivers/gpu/drm/nouveau/nvif/mem.c
 create mode 100644 drivers/gpu/drm/nouveau/nvif/mmu.c
 create mode 100644 drivers/gpu/drm/nouveau/nvif/vmm.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/bar/gm107.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/bar/gm20b.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/g84.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gk104.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gk20a.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gm200.c
 rename drivers/gpu/drm/{amd/powerplay/smumgr/polaris10_smc.h =>
nouveau/nvkm/subdev/mmu/gm20b.c} (54%)
 rename drivers/gpu/drm/{amd/powerplay/smumgr/iceland_smc.h =>
nouveau/nvkm/subdev/mmu/gp100.c} (60%)
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp10b.
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp10b.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/mem.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/mem.h
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memgf100.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memnv04.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memnv50.c
 delete mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv04.h
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/umem.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/umem.h
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ummu.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ummu.h
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.h
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.h
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgf100.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk104.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk20a.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm200.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm20b.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp100.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp10b.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv04.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv41.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv44.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv50.c
 create mode 100644 drivers/gpu/drm/nouveau/nvkm/subdev/therm/gp100.c
 create mode 100644 drivers/gpu/drm/omapdrm/dss/hdmi4_cec.c
 create mode 100644 drivers/gpu/drm/omapdrm/dss/hdmi4_cec.h
 create mode 100644 drivers/gpu/drm/panel/panel-orisetech-otm8009a.c
 create mode 100644 drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c
 create mode 100644 drivers/gpu/drm/panel/panel-samsung-s6e63j0x03.c
 create mode 100644 drivers/gpu/drm/panel/panel-seiko-43wvf1g.c
 delete mode 100644 drivers/gpu/drm/pl111/pl111_connector.c
 create mode 100644 drivers/gpu/drm/pl111/pl111_versatile.c
 create mode 100644 drivers/gpu/drm/pl111/pl111_versatile.h
 delete mode 100644 drivers/gpu/drm/radeon/radeon_kfd.c
 create mode 100644 drivers/gpu/drm/rockchip/rockchip_lvds.c
 create mode 100644 drivers/gpu/drm/rockchip/rockchip_lvds.h
 create mode 100644 drivers/gpu/drm/tve200/Kconfig
 create mode 100644 drivers/gpu/drm/tve200/Makefile
 create mode 100644 drivers/gpu/drm/tve200/tve200_display.c
 create mode 100644 drivers/gpu/drm/tve200/tve200_drm.h
 create mode 100644 drivers/gpu/drm/tve200/tve200_drv.c
 create mode 100644 drivers/gpu/drm/udl/udl_connector.h
 create mode 100644 drivers/gpu/host1x/hw/debug_hw_1x01.c
 create mode 100644 drivers/gpu/host1x/hw/debug_hw_1x06.c
 create mode 100644 drivers/gpu/host1x/hw/host1x06.c
 create mode 100644 drivers/gpu/host1x/hw/host1x06.h
 create mode 100644 drivers/gpu/host1x/hw/host1x06_hardware.h
 create mode 100644 drivers/gpu/host1x/hw/hw_host1x06_hypervisor.h
 create mode 100644 drivers/gpu/host1x/hw/hw_host1x06_uclass.h
 create mode 100644 drivers/gpu/host1x/hw/hw_host1x06_vm.h
 rename drivers/gpu/drm/radeon/radeon_kfd.h => include/drm/amd_asic_type.h (59%)
 create mode 100644 include/drm/drm_lease.h
 create mode 100644 include/drm/ttm/ttm_debug.h
 create mode 100644 include/dt-bindings/msm/msm-bus-ids.h
 create mode 100644 tools/testing/scatterlist/Makefile
 create mode 100644 tools/testing/scatterlist/linux/mm.h
 create mode 100644 tools/testing/scatterlist/main.c
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
  2017-11-16  2:34 ` Dave Airlie
@ 2017-11-16  4:59   ` Linus Torvalds
  -1 siblings, 0 replies; 27+ messages in thread
From: Linus Torvalds @ 2017-11-16  4:59 UTC (permalink / raw)
  To: Dave Airlie, Jordan Crouse, Rob Clark; +Cc: dri-devel, LKML

On Wed, Nov 15, 2017 at 6:34 PM, Dave Airlie <airlied@gmail.com> wrote:
>
> There is some code touched on sound/soc, but I think the sound tree
> should have the same commits from the same base,so this may luck different
> if you pulled it as I generated my pull request a couple of days ago. Otherwise
> the highlights are below.

I'm more curious about (and disgusted by) this one:

  include/dt-bindings/msm/msm-bus-ids.h

wtf? It's full of defines that aren't actually used anywhere.  Which
is just as well, since it doesn't seem to be included from anything
either.

There's something odd about drm people. You guys like these completely
insane generated header files, and you seem to be populating the whole
tree with this odd and diseased notion of "generated header files are
cool".

Is somebody getting paid by line of code?

Yeah, yeah, we have those nasty dt-bindings heades from before too,
but this one is one of the bigger ones, and it really comes with no
explanation, and a commit message that doesn't really mention
device-tree at all.

Honestly, it seems like it got committed by mistake.

I've pulled it, but Christ on a stick!

              Linus

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
@ 2017-11-16  4:59   ` Linus Torvalds
  0 siblings, 0 replies; 27+ messages in thread
From: Linus Torvalds @ 2017-11-16  4:59 UTC (permalink / raw)
  To: Dave Airlie, Jordan Crouse, Rob Clark; +Cc: LKML, dri-devel

On Wed, Nov 15, 2017 at 6:34 PM, Dave Airlie <airlied@gmail.com> wrote:
>
> There is some code touched on sound/soc, but I think the sound tree
> should have the same commits from the same base,so this may luck different
> if you pulled it as I generated my pull request a couple of days ago. Otherwise
> the highlights are below.

I'm more curious about (and disgusted by) this one:

  include/dt-bindings/msm/msm-bus-ids.h

wtf? It's full of defines that aren't actually used anywhere.  Which
is just as well, since it doesn't seem to be included from anything
either.

There's something odd about drm people. You guys like these completely
insane generated header files, and you seem to be populating the whole
tree with this odd and diseased notion of "generated header files are
cool".

Is somebody getting paid by line of code?

Yeah, yeah, we have those nasty dt-bindings heades from before too,
but this one is one of the bigger ones, and it really comes with no
explanation, and a commit message that doesn't really mention
device-tree at all.

Honestly, it seems like it got committed by mistake.

I've pulled it, but Christ on a stick!

              Linus
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
  2017-11-16  4:59   ` Linus Torvalds
@ 2017-11-16 13:57     ` Rob Clark
  -1 siblings, 0 replies; 27+ messages in thread
From: Rob Clark @ 2017-11-16 13:57 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: Dave Airlie, Jordan Crouse, dri-devel, LKML

On Wed, Nov 15, 2017 at 11:59 PM, Linus Torvalds
<torvalds@linux-foundation.org> wrote:
> On Wed, Nov 15, 2017 at 6:34 PM, Dave Airlie <airlied@gmail.com> wrote:
>>
>> There is some code touched on sound/soc, but I think the sound tree
>> should have the same commits from the same base,so this may luck different
>> if you pulled it as I generated my pull request a couple of days ago. Otherwise
>> the highlights are below.
>
> I'm more curious about (and disgusted by) this one:
>
>   include/dt-bindings/msm/msm-bus-ids.h
>
> wtf? It's full of defines that aren't actually used anywhere.  Which
> is just as well, since it doesn't seem to be included from anything
> either.

Yeah, that shouldn't be there and should be removed.. I think it is my
bad.  The patch that introduced it didn't cherry pick cleanly when I
was pulling things into msm-next, so patch -p1 + git-add (which pulled
it in by mistake).  I'll send a patch to remove it.

BR,
-R

> There's something odd about drm people. You guys like these completely
> insane generated header files, and you seem to be populating the whole
> tree with this odd and diseased notion of "generated header files are
> cool".
>
> Is somebody getting paid by line of code?
>
> Yeah, yeah, we have those nasty dt-bindings heades from before too,
> but this one is one of the bigger ones, and it really comes with no
> explanation, and a commit message that doesn't really mention
> device-tree at all.
>
> Honestly, it seems like it got committed by mistake.
>
> I've pulled it, but Christ on a stick!
>
>               Linus

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
@ 2017-11-16 13:57     ` Rob Clark
  0 siblings, 0 replies; 27+ messages in thread
From: Rob Clark @ 2017-11-16 13:57 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: LKML, dri-devel

On Wed, Nov 15, 2017 at 11:59 PM, Linus Torvalds
<torvalds@linux-foundation.org> wrote:
> On Wed, Nov 15, 2017 at 6:34 PM, Dave Airlie <airlied@gmail.com> wrote:
>>
>> There is some code touched on sound/soc, but I think the sound tree
>> should have the same commits from the same base,so this may luck different
>> if you pulled it as I generated my pull request a couple of days ago. Otherwise
>> the highlights are below.
>
> I'm more curious about (and disgusted by) this one:
>
>   include/dt-bindings/msm/msm-bus-ids.h
>
> wtf? It's full of defines that aren't actually used anywhere.  Which
> is just as well, since it doesn't seem to be included from anything
> either.

Yeah, that shouldn't be there and should be removed.. I think it is my
bad.  The patch that introduced it didn't cherry pick cleanly when I
was pulling things into msm-next, so patch -p1 + git-add (which pulled
it in by mistake).  I'll send a patch to remove it.

BR,
-R

> There's something odd about drm people. You guys like these completely
> insane generated header files, and you seem to be populating the whole
> tree with this odd and diseased notion of "generated header files are
> cool".
>
> Is somebody getting paid by line of code?
>
> Yeah, yeah, we have those nasty dt-bindings heades from before too,
> but this one is one of the bigger ones, and it really comes with no
> explanation, and a commit message that doesn't really mention
> device-tree at all.
>
> Honestly, it seems like it got committed by mistake.
>
> I've pulled it, but Christ on a stick!
>
>               Linus
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
  2017-11-16  4:59   ` Linus Torvalds
@ 2017-11-16 17:17     ` Michel Dänzer
  -1 siblings, 0 replies; 27+ messages in thread
From: Michel Dänzer @ 2017-11-16 17:17 UTC (permalink / raw)
  To: Linus Torvalds, Dave Airlie; +Cc: LKML, dri-devel

On 16/11/17 05:59 AM, Linus Torvalds wrote:
> 
> There's something odd about drm people. You guys like these completely
> insane generated header files, and you seem to be populating the whole
> tree with this odd and diseased notion of "generated header files are
> cool".
> 
> Is somebody getting paid by line of code?

At least in the case of amdgpu, it's more like nobody's getting paid to
write/maintain register header files by hand full-time. I hope you can
agree nobody should have to do that.

The headers are generated from the same database used for other OSes,
which minimizes the potential for error. We used hand-written headers in
the radeon driver, and there was a fair number of bugs due to subtle
errors in them.


-- 
Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
@ 2017-11-16 17:17     ` Michel Dänzer
  0 siblings, 0 replies; 27+ messages in thread
From: Michel Dänzer @ 2017-11-16 17:17 UTC (permalink / raw)
  To: Linus Torvalds, Dave Airlie; +Cc: LKML, dri-devel

On 16/11/17 05:59 AM, Linus Torvalds wrote:
> 
> There's something odd about drm people. You guys like these completely
> insane generated header files, and you seem to be populating the whole
> tree with this odd and diseased notion of "generated header files are
> cool".
> 
> Is somebody getting paid by line of code?

At least in the case of amdgpu, it's more like nobody's getting paid to
write/maintain register header files by hand full-time. I hope you can
agree nobody should have to do that.

The headers are generated from the same database used for other OSes,
which minimizes the potential for error. We used hand-written headers in
the radeon driver, and there was a fair number of bugs due to subtle
errors in them.


-- 
Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
  2017-11-16  4:59   ` Linus Torvalds
@ 2017-11-16 20:57     ` Dave Airlie
  -1 siblings, 0 replies; 27+ messages in thread
From: Dave Airlie @ 2017-11-16 20:57 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: Jordan Crouse, Rob Clark, dri-devel, LKML

On 16 November 2017 at 14:59, Linus Torvalds
<torvalds@linux-foundation.org> wrote:
> On Wed, Nov 15, 2017 at 6:34 PM, Dave Airlie <airlied@gmail.com> wrote:
>>
>> There is some code touched on sound/soc, but I think the sound tree
>> should have the same commits from the same base,so this may luck different
>> if you pulled it as I generated my pull request a couple of days ago. Otherwise
>> the highlights are below.
>
> I'm more curious about (and disgusted by) this one:
>
>   include/dt-bindings/msm/msm-bus-ids.h
>
> wtf? It's full of defines that aren't actually used anywhere.  Which
> is just as well, since it doesn't seem to be included from anything
> either.
>
> There's something odd about drm people. You guys like these completely
> insane generated header files, and you seem to be populating the whole
> tree with this odd and diseased notion of "generated header files are
> cool".
>
> Is somebody getting paid by line of code?

It would still cost less than transcribing each register and all it's fields by
hand from pdfs generated from the same place.

This sounds more like a Monty Python sketch than a serious question. (In
my day we hard transcribed 1000s of register by hand before breakfast, and
then we ate the pdf printouts for breakfast).

The sheer size of those headers should be proof enough that they shouldn't
be handcrafted.

Next thing you'll be telling people to get off your lawn!

But this seems like Rob dropped the ball, he's no longer allowed run
git add without
passing every filename by hand, and I probably should have noticed
when I pulled it
but an 887 line register header file is quite small in a
+65,000,-56000 pull req.

Dave.

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
@ 2017-11-16 20:57     ` Dave Airlie
  0 siblings, 0 replies; 27+ messages in thread
From: Dave Airlie @ 2017-11-16 20:57 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: dri-devel, LKML

On 16 November 2017 at 14:59, Linus Torvalds
<torvalds@linux-foundation.org> wrote:
> On Wed, Nov 15, 2017 at 6:34 PM, Dave Airlie <airlied@gmail.com> wrote:
>>
>> There is some code touched on sound/soc, but I think the sound tree
>> should have the same commits from the same base,so this may luck different
>> if you pulled it as I generated my pull request a couple of days ago. Otherwise
>> the highlights are below.
>
> I'm more curious about (and disgusted by) this one:
>
>   include/dt-bindings/msm/msm-bus-ids.h
>
> wtf? It's full of defines that aren't actually used anywhere.  Which
> is just as well, since it doesn't seem to be included from anything
> either.
>
> There's something odd about drm people. You guys like these completely
> insane generated header files, and you seem to be populating the whole
> tree with this odd and diseased notion of "generated header files are
> cool".
>
> Is somebody getting paid by line of code?

It would still cost less than transcribing each register and all it's fields by
hand from pdfs generated from the same place.

This sounds more like a Monty Python sketch than a serious question. (In
my day we hard transcribed 1000s of register by hand before breakfast, and
then we ate the pdf printouts for breakfast).

The sheer size of those headers should be proof enough that they shouldn't
be handcrafted.

Next thing you'll be telling people to get off your lawn!

But this seems like Rob dropped the ball, he's no longer allowed run
git add without
passing every filename by hand, and I probably should have noticed
when I pulled it
but an 887 line register header file is quite small in a
+65,000,-56000 pull req.

Dave.
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
  2017-11-16 20:57     ` Dave Airlie
@ 2017-11-16 21:05       ` Linus Torvalds
  -1 siblings, 0 replies; 27+ messages in thread
From: Linus Torvalds @ 2017-11-16 21:05 UTC (permalink / raw)
  To: Dave Airlie; +Cc: Jordan Crouse, Rob Clark, dri-devel, LKML

On Thu, Nov 16, 2017 at 12:57 PM, Dave Airlie <airlied@gmail.com> wrote:
>
> This sounds more like a Monty Python sketch than a serious question.

It's a serious question when the files start appearing in random
places where they don't belong.

There's a place for automatically generated files.

But that "there is a place" very much also implies that they shouldn't
be all over the tree.

              Linus

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
@ 2017-11-16 21:05       ` Linus Torvalds
  0 siblings, 0 replies; 27+ messages in thread
From: Linus Torvalds @ 2017-11-16 21:05 UTC (permalink / raw)
  To: Dave Airlie; +Cc: dri-devel, LKML

On Thu, Nov 16, 2017 at 12:57 PM, Dave Airlie <airlied@gmail.com> wrote:
>
> This sounds more like a Monty Python sketch than a serious question.

It's a serious question when the files start appearing in random
places where they don't belong.

There's a place for automatically generated files.

But that "there is a place" very much also implies that they shouldn't
be all over the tree.

              Linus
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
  2017-11-16 20:57     ` Dave Airlie
@ 2017-11-17 12:51       ` Nicolai Hähnle
  -1 siblings, 0 replies; 27+ messages in thread
From: Nicolai Hähnle @ 2017-11-17 12:51 UTC (permalink / raw)
  To: Dave Airlie, Linus Torvalds; +Cc: dri-devel, LKML

On 16.11.2017 21:57, Dave Airlie wrote:
> On 16 November 2017 at 14:59, Linus Torvalds
> <torvalds@linux-foundation.org> wrote:
>> On Wed, Nov 15, 2017 at 6:34 PM, Dave Airlie <airlied@gmail.com> wrote:
>>>
>>> There is some code touched on sound/soc, but I think the sound tree
>>> should have the same commits from the same base,so this may luck different
>>> if you pulled it as I generated my pull request a couple of days ago. Otherwise
>>> the highlights are below.
>>
>> I'm more curious about (and disgusted by) this one:
>>
>>    include/dt-bindings/msm/msm-bus-ids.h
>>
>> wtf? It's full of defines that aren't actually used anywhere.  Which
>> is just as well, since it doesn't seem to be included from anything
>> either.
>>
>> There's something odd about drm people. You guys like these completely
>> insane generated header files, and you seem to be populating the whole
>> tree with this odd and diseased notion of "generated header files are
>> cool".
>>
>> Is somebody getting paid by line of code?
> 
> It would still cost less than transcribing each register and all it's fields by
> hand from pdfs generated from the same place.

This raises the question of how people feel about putting the source 
database into the kernel (most likely as XML in our case) and 
auto-generating the headers from there instead.

I've been pondering doing this in Mesa for radeonsi for quite some time 
now. Given that the Mesa header style is different from the kernel 
header style, this could help reduce our IP review load going forward, 
and would have some other neat benefits as well.

Cheers,
Nicolai
-- 
Lerne, wie die Welt wirklich ist,
Aber vergiss niemals, wie sie sein sollte.

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
@ 2017-11-17 12:51       ` Nicolai Hähnle
  0 siblings, 0 replies; 27+ messages in thread
From: Nicolai Hähnle @ 2017-11-17 12:51 UTC (permalink / raw)
  To: Dave Airlie, Linus Torvalds; +Cc: LKML, dri-devel

On 16.11.2017 21:57, Dave Airlie wrote:
> On 16 November 2017 at 14:59, Linus Torvalds
> <torvalds@linux-foundation.org> wrote:
>> On Wed, Nov 15, 2017 at 6:34 PM, Dave Airlie <airlied@gmail.com> wrote:
>>>
>>> There is some code touched on sound/soc, but I think the sound tree
>>> should have the same commits from the same base,so this may luck different
>>> if you pulled it as I generated my pull request a couple of days ago. Otherwise
>>> the highlights are below.
>>
>> I'm more curious about (and disgusted by) this one:
>>
>>    include/dt-bindings/msm/msm-bus-ids.h
>>
>> wtf? It's full of defines that aren't actually used anywhere.  Which
>> is just as well, since it doesn't seem to be included from anything
>> either.
>>
>> There's something odd about drm people. You guys like these completely
>> insane generated header files, and you seem to be populating the whole
>> tree with this odd and diseased notion of "generated header files are
>> cool".
>>
>> Is somebody getting paid by line of code?
> 
> It would still cost less than transcribing each register and all it's fields by
> hand from pdfs generated from the same place.

This raises the question of how people feel about putting the source 
database into the kernel (most likely as XML in our case) and 
auto-generating the headers from there instead.

I've been pondering doing this in Mesa for radeonsi for quite some time 
now. Given that the Mesa header style is different from the kernel 
header style, this could help reduce our IP review load going forward, 
and would have some other neat benefits as well.

Cheers,
Nicolai
-- 
Lerne, wie die Welt wirklich ist,
Aber vergiss niemals, wie sie sein sollte.
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
  2017-11-17 12:51       ` Nicolai Hähnle
@ 2017-11-17 16:57         ` Linus Torvalds
  -1 siblings, 0 replies; 27+ messages in thread
From: Linus Torvalds @ 2017-11-17 16:57 UTC (permalink / raw)
  To: Nicolai Hähnle; +Cc: Dave Airlie, dri-devel, LKML

On Fri, Nov 17, 2017 at 4:51 AM, Nicolai Hähnle <nhaehnle@gmail.com> wrote:
>
> This raises the question of how people feel about putting the source
> database into the kernel (most likely as XML in our case) and
> auto-generating the headers from there instead.

I suspect that at  least in some cases, the "source" database may be a
bit too sensitive. It may have various comments about errata, and may
even be part of the whole hardware build system (ie it might be munged
from verilog/vhdl)

> I've been pondering doing this in Mesa for radeonsi for quite some time now.

What personally annoys me most about a lot of generated header files
(not all, but a _lot_) is that exactly because they are generated,
they are often inexcusably stupid.

So say that you have a block of status registers, all of which have a
certain base pattern. Every single auto-generated header file I have
ever seen takes the brute-force approach of just enumerating them all
separately as independent things.

Which makes the header file a huge mess of repeated almost-identical
register defines.

But it's not even the _size_ of the header file that then annoys me,
it's that it's not just big, but inflexible. Often, on a source level,
you may actually be in the situation where you get an index to the
thing, and then you do

    switch (index) {
    case X:
        access_using(REGISTERX_DEFINITION);
    case Y:
        access_using(REGISTERY_DEFINITION);
   ...

or similar. When a _smarter_ auto-generated file would actually take
advantage of the language features (whether preprocessor or dynamic),
and actually allow for

    access_using(REGISTER_DEFINITION(index))

instead.

Or - a variation of the above - it's not that the register definitions
for _one_ core have that kind of regularity, but you have it for a
while family of products, and because you autogenerate, you
auto-generate the stupid "repat the exact same thing with different
names" model, and then you have (instead of the index thing) you have
the "chip family" thing that you switch on.

To see the effects of this, I picked something at random from one of
those huge AMD header files.

I swear. It was entirely at random, and the first thing I picked. Do this:

    git grep PCIE_UNCORR_ERR_MASK

and tell me that there isn't any room for making these things smarter.

Btw, not a single of those defines are actually _used_.  Again, that
pattern was entirely randomly picked from the largest header file we
have.

People say "it's a ton of work to do it by hand". They'd be right. I'm
not saying you should do it by hand. But "automation" does not always
need to mean "completely mindlessly stupid" either.

                 Linus

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
@ 2017-11-17 16:57         ` Linus Torvalds
  0 siblings, 0 replies; 27+ messages in thread
From: Linus Torvalds @ 2017-11-17 16:57 UTC (permalink / raw)
  To: Nicolai Hähnle; +Cc: LKML, dri-devel

On Fri, Nov 17, 2017 at 4:51 AM, Nicolai Hähnle <nhaehnle@gmail.com> wrote:
>
> This raises the question of how people feel about putting the source
> database into the kernel (most likely as XML in our case) and
> auto-generating the headers from there instead.

I suspect that at  least in some cases, the "source" database may be a
bit too sensitive. It may have various comments about errata, and may
even be part of the whole hardware build system (ie it might be munged
from verilog/vhdl)

> I've been pondering doing this in Mesa for radeonsi for quite some time now.

What personally annoys me most about a lot of generated header files
(not all, but a _lot_) is that exactly because they are generated,
they are often inexcusably stupid.

So say that you have a block of status registers, all of which have a
certain base pattern. Every single auto-generated header file I have
ever seen takes the brute-force approach of just enumerating them all
separately as independent things.

Which makes the header file a huge mess of repeated almost-identical
register defines.

But it's not even the _size_ of the header file that then annoys me,
it's that it's not just big, but inflexible. Often, on a source level,
you may actually be in the situation where you get an index to the
thing, and then you do

    switch (index) {
    case X:
        access_using(REGISTERX_DEFINITION);
    case Y:
        access_using(REGISTERY_DEFINITION);
   ...

or similar. When a _smarter_ auto-generated file would actually take
advantage of the language features (whether preprocessor or dynamic),
and actually allow for

    access_using(REGISTER_DEFINITION(index))

instead.

Or - a variation of the above - it's not that the register definitions
for _one_ core have that kind of regularity, but you have it for a
while family of products, and because you autogenerate, you
auto-generate the stupid "repat the exact same thing with different
names" model, and then you have (instead of the index thing) you have
the "chip family" thing that you switch on.

To see the effects of this, I picked something at random from one of
those huge AMD header files.

I swear. It was entirely at random, and the first thing I picked. Do this:

    git grep PCIE_UNCORR_ERR_MASK

and tell me that there isn't any room for making these things smarter.

Btw, not a single of those defines are actually _used_.  Again, that
pattern was entirely randomly picked from the largest header file we
have.

People say "it's a ton of work to do it by hand". They'd be right. I'm
not saying you should do it by hand. But "automation" does not always
need to mean "completely mindlessly stupid" either.

                 Linus
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
  2017-11-17 16:57         ` Linus Torvalds
  (?)
@ 2017-11-17 17:19         ` Lukas Wunner
  2017-11-17 17:24             ` Linus Torvalds
  -1 siblings, 1 reply; 27+ messages in thread
From: Lukas Wunner @ 2017-11-17 17:19 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: Nicolai Hähnle, LKML, dri-devel

On Fri, Nov 17, 2017 at 08:57:53AM -0800, Linus Torvalds wrote:
> On Fri, Nov 17, 2017 at 4:51 AM, Nicolai Hähnle <nhaehnle@gmail.com> wrote:
> To see the effects of this, I picked something at random from one of
> those huge AMD header files.
> 
> I swear. It was entirely at random, and the first thing I picked. Do this:
> 
>     git grep PCIE_UNCORR_ERR_MASK

Oh that looks familiar, it's the Uncorrectable Error Mask Register
(PCIe Base Spec r2.1 page 558).  We already have those definitions
in the tree in include/uapi/linux/pci_regs.h:

      git grep PCI_ERR_UNC_


> and tell me that there isn't any room for making these things smarter.

... or deduplicate them. :-)

Lukas

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
  2017-11-17 17:19         ` Lukas Wunner
@ 2017-11-17 17:24             ` Linus Torvalds
  0 siblings, 0 replies; 27+ messages in thread
From: Linus Torvalds @ 2017-11-17 17:24 UTC (permalink / raw)
  To: Lukas Wunner; +Cc: Nicolai Hähnle, LKML, dri-devel

On Fri, Nov 17, 2017 at 9:19 AM, Lukas Wunner <lukas@wunner.de> wrote:
>> and tell me that there isn't any room for making these things smarter.
>
> ... or deduplicate them. :-)

You could even - wait for it - have _automation_ that does it.

Yeah, it's easier to write a stupid sed-script or whatever to generate
those files. Taking patterns into account and making the output
smarter is harder, but still doesn't have to be manual. But wouldn't
it be good?

I bet it would be good for all those other OS's that want the header file too.

            Linus

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
@ 2017-11-17 17:24             ` Linus Torvalds
  0 siblings, 0 replies; 27+ messages in thread
From: Linus Torvalds @ 2017-11-17 17:24 UTC (permalink / raw)
  To: Lukas Wunner; +Cc: Nicolai Hähnle, LKML, dri-devel

On Fri, Nov 17, 2017 at 9:19 AM, Lukas Wunner <lukas@wunner.de> wrote:
>> and tell me that there isn't any room for making these things smarter.
>
> ... or deduplicate them. :-)

You could even - wait for it - have _automation_ that does it.

Yeah, it's easier to write a stupid sed-script or whatever to generate
those files. Taking patterns into account and making the output
smarter is harder, but still doesn't have to be manual. But wouldn't
it be good?

I bet it would be good for all those other OS's that want the header file too.

            Linus
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
  2017-11-17 16:57         ` Linus Torvalds
@ 2017-11-17 18:14           ` Christian König
  -1 siblings, 0 replies; 27+ messages in thread
From: Christian König @ 2017-11-17 18:14 UTC (permalink / raw)
  To: Linus Torvalds, Nicolai Hähnle; +Cc: LKML, dri-devel

First of all I can certainly agree with everything said so far, so just 
skipping to the technical problem.

Am 17.11.2017 um 17:57 schrieb Linus Torvalds:
>
> People say "it's a ton of work to do it by hand". They'd be right. I'm
> not saying you should do it by hand. But "automation" does not always
> need to mean "completely mindlessly stupid" either.

Taking an example from the AMD headers why this automation is more 
tricky than it sounds in the first place: Look at the 
mmVM_CONTEXT*_PAGE_TABLE_BASE_ADDR registers for example.

Register 0-7 are consecutive and so could be perfectly addressable with 
an index, but register 8-15 aren't and so we always end with logic like 
if(i<8) ... else ....

The rational from the hardware guys is obvious that they initially had 
only 8 and on a later hardware generation extended that to 16 registers.

Patterns like that repeat all over the place and are not limited to AMD 
at all.


We could write up hand written rules to sanitize all of that, but then 
we are back to "automatically" creating the headers by hand.

When you have to maintain 10+ years of hardware generations where 
sometimes registers headers even need to be regenerated from the 
database then that is something which won't fly either.


Certainly not saying that this is a bad idea, but we simply need better 
tools for that which also have 100% reproducible results.

Ideas welcome,
Christian.

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
@ 2017-11-17 18:14           ` Christian König
  0 siblings, 0 replies; 27+ messages in thread
From: Christian König @ 2017-11-17 18:14 UTC (permalink / raw)
  To: Linus Torvalds, Nicolai Hähnle; +Cc: LKML, dri-devel

First of all I can certainly agree with everything said so far, so just 
skipping to the technical problem.

Am 17.11.2017 um 17:57 schrieb Linus Torvalds:
>
> People say "it's a ton of work to do it by hand". They'd be right. I'm
> not saying you should do it by hand. But "automation" does not always
> need to mean "completely mindlessly stupid" either.

Taking an example from the AMD headers why this automation is more 
tricky than it sounds in the first place: Look at the 
mmVM_CONTEXT*_PAGE_TABLE_BASE_ADDR registers for example.

Register 0-7 are consecutive and so could be perfectly addressable with 
an index, but register 8-15 aren't and so we always end with logic like 
if(i<8) ... else ....

The rational from the hardware guys is obvious that they initially had 
only 8 and on a later hardware generation extended that to 16 registers.

Patterns like that repeat all over the place and are not limited to AMD 
at all.


We could write up hand written rules to sanitize all of that, but then 
we are back to "automatically" creating the headers by hand.

When you have to maintain 10+ years of hardware generations where 
sometimes registers headers even need to be regenerated from the 
database then that is something which won't fly either.


Certainly not saying that this is a bad idea, but we simply need better 
tools for that which also have 100% reproducible results.

Ideas welcome,
Christian.
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
  2017-11-17 18:14           ` Christian König
@ 2017-11-17 18:55             ` Linus Torvalds
  -1 siblings, 0 replies; 27+ messages in thread
From: Linus Torvalds @ 2017-11-17 18:55 UTC (permalink / raw)
  To: Christian König; +Cc: Nicolai Hähnle, LKML, dri-devel

On Fri, Nov 17, 2017 at 10:14 AM, Christian König
<christian.koenig@amd.com> wrote:
>
> Taking an example from the AMD headers why this automation is more tricky
> than it sounds in the first place: Look at the
> mmVM_CONTEXT*_PAGE_TABLE_BASE_ADDR registers for example.
>
> Register 0-7 are consecutive and so could be perfectly addressable with an
> index, but register 8-15 aren't and so we always end with logic like if(i<8)
> ... else ....
>
> The rational from the hardware guys is obvious that they initially had only
> 8 and on a later hardware generation extended that to 16 registers.

Heh. I don't disagree, but at the same time, that case is actually a
wonderful example.

Let's take the gmc_6_0 case, because it shows your irregularity, but
it also shows another horrid example of nasty nasty automation:

  mmVM_CONTEXT0_PAGE_TABLE_BASE_ADDR 0x054F
  mmVM_CONTEXT10_PAGE_TABLE_BASE_ADDR 0x0510
  mmVM_CONTEXT11_PAGE_TABLE_BASE_ADDR 0x0511
  mmVM_CONTEXT12_PAGE_TABLE_BASE_ADDR 0x0512
  mmVM_CONTEXT13_PAGE_TABLE_BASE_ADDR 0x0513
  mmVM_CONTEXT14_PAGE_TABLE_BASE_ADDR 0x0514
  mmVM_CONTEXT15_PAGE_TABLE_BASE_ADDR 0x0515
  mmVM_CONTEXT1_PAGE_TABLE_BASE_ADDR 0x0550
  mmVM_CONTEXT2_PAGE_TABLE_BASE_ADDR 0x0551
  mmVM_CONTEXT3_PAGE_TABLE_BASE_ADDR 0x0552
  mmVM_CONTEXT4_PAGE_TABLE_BASE_ADDR 0x0553
  mmVM_CONTEXT5_PAGE_TABLE_BASE_ADDR 0x0554
  mmVM_CONTEXT6_PAGE_TABLE_BASE_ADDR 0x0555
  mmVM_CONTEXT7_PAGE_TABLE_BASE_ADDR 0x0556
  mmVM_CONTEXT8_PAGE_TABLE_BASE_ADDR 0x050E
  mmVM_CONTEXT9_PAGE_TABLE_BASE_ADDR 0x050F

Oops. Those were clearly sorted automatically, and in entirely the wrong way.

So automation has _really_ done something inexcusably stupid, and made
the end result completely illegible in the process.

And yes, you'd be right that it's discontiguous at 8, but it's still
arithmetic, ie you could easily have

 #define  mmVM_PAGE_TABLE_BASE_ADDR(ctx) \
        ((ctx)+0x054f-((ctx) & 8)*9-((ctx)&8)/8)

and if "ctx" is a constant, then the end result is trivially a
constant and can be used as such. And if it isn't, it's still a much
cheaper operation than an "if" or "switch ()" statement (it's just a
bitmask and two shifts).

Now, seeing those patterns is likely not something that automation
should do (although it's definitely possible - superoptimizers do that
all the time), but automation could still *verify* the patterns once a
human has made them up.

And it's quite possible that it would be a good idea to encode that
pattern even in the original source code. In fact, it may *be* there
somewhere (not as that arithmetic expression, but as the reverse
decode logic, obviously).

            Linus

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
@ 2017-11-17 18:55             ` Linus Torvalds
  0 siblings, 0 replies; 27+ messages in thread
From: Linus Torvalds @ 2017-11-17 18:55 UTC (permalink / raw)
  To: Christian König; +Cc: Nicolai Hähnle, LKML, dri-devel

On Fri, Nov 17, 2017 at 10:14 AM, Christian König
<christian.koenig@amd.com> wrote:
>
> Taking an example from the AMD headers why this automation is more tricky
> than it sounds in the first place: Look at the
> mmVM_CONTEXT*_PAGE_TABLE_BASE_ADDR registers for example.
>
> Register 0-7 are consecutive and so could be perfectly addressable with an
> index, but register 8-15 aren't and so we always end with logic like if(i<8)
> ... else ....
>
> The rational from the hardware guys is obvious that they initially had only
> 8 and on a later hardware generation extended that to 16 registers.

Heh. I don't disagree, but at the same time, that case is actually a
wonderful example.

Let's take the gmc_6_0 case, because it shows your irregularity, but
it also shows another horrid example of nasty nasty automation:

  mmVM_CONTEXT0_PAGE_TABLE_BASE_ADDR 0x054F
  mmVM_CONTEXT10_PAGE_TABLE_BASE_ADDR 0x0510
  mmVM_CONTEXT11_PAGE_TABLE_BASE_ADDR 0x0511
  mmVM_CONTEXT12_PAGE_TABLE_BASE_ADDR 0x0512
  mmVM_CONTEXT13_PAGE_TABLE_BASE_ADDR 0x0513
  mmVM_CONTEXT14_PAGE_TABLE_BASE_ADDR 0x0514
  mmVM_CONTEXT15_PAGE_TABLE_BASE_ADDR 0x0515
  mmVM_CONTEXT1_PAGE_TABLE_BASE_ADDR 0x0550
  mmVM_CONTEXT2_PAGE_TABLE_BASE_ADDR 0x0551
  mmVM_CONTEXT3_PAGE_TABLE_BASE_ADDR 0x0552
  mmVM_CONTEXT4_PAGE_TABLE_BASE_ADDR 0x0553
  mmVM_CONTEXT5_PAGE_TABLE_BASE_ADDR 0x0554
  mmVM_CONTEXT6_PAGE_TABLE_BASE_ADDR 0x0555
  mmVM_CONTEXT7_PAGE_TABLE_BASE_ADDR 0x0556
  mmVM_CONTEXT8_PAGE_TABLE_BASE_ADDR 0x050E
  mmVM_CONTEXT9_PAGE_TABLE_BASE_ADDR 0x050F

Oops. Those were clearly sorted automatically, and in entirely the wrong way.

So automation has _really_ done something inexcusably stupid, and made
the end result completely illegible in the process.

And yes, you'd be right that it's discontiguous at 8, but it's still
arithmetic, ie you could easily have

 #define  mmVM_PAGE_TABLE_BASE_ADDR(ctx) \
        ((ctx)+0x054f-((ctx) & 8)*9-((ctx)&8)/8)

and if "ctx" is a constant, then the end result is trivially a
constant and can be used as such. And if it isn't, it's still a much
cheaper operation than an "if" or "switch ()" statement (it's just a
bitmask and two shifts).

Now, seeing those patterns is likely not something that automation
should do (although it's definitely possible - superoptimizers do that
all the time), but automation could still *verify* the patterns once a
human has made them up.

And it's quite possible that it would be a good idea to encode that
pattern even in the original source code. In fact, it may *be* there
somewhere (not as that arithmetic expression, but as the reverse
decode logic, obviously).

            Linus
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
  2017-11-17 18:55             ` Linus Torvalds
@ 2017-11-17 19:18               ` Christian König
  -1 siblings, 0 replies; 27+ messages in thread
From: Christian König @ 2017-11-17 19:18 UTC (permalink / raw)
  To: Linus Torvalds, Christian König; +Cc: Nicolai Hähnle, LKML, dri-devel

Am 17.11.2017 um 19:55 schrieb Linus Torvalds:
> On Fri, Nov 17, 2017 at 10:14 AM, Christian König
> <christian.koenig@amd.com> wrote:
>> Taking an example from the AMD headers why this automation is more tricky
>> than it sounds in the first place: Look at the
>> mmVM_CONTEXT*_PAGE_TABLE_BASE_ADDR registers for example.
>>
>> Register 0-7 are consecutive and so could be perfectly addressable with an
>> index, but register 8-15 aren't and so we always end with logic like if(i<8)
>> ... else ....
>>
>> The rational from the hardware guys is obvious that they initially had only
>> 8 and on a later hardware generation extended that to 16 registers.
> Heh. I don't disagree, but at the same time, that case is actually a
> wonderful example.
>
> Let's take the gmc_6_0 case, because it shows your irregularity, but
> it also shows another horrid example of nasty nasty automation:
>
>    mmVM_CONTEXT0_PAGE_TABLE_BASE_ADDR 0x054F
>    mmVM_CONTEXT10_PAGE_TABLE_BASE_ADDR 0x0510
>    mmVM_CONTEXT11_PAGE_TABLE_BASE_ADDR 0x0511
>    mmVM_CONTEXT12_PAGE_TABLE_BASE_ADDR 0x0512
>    mmVM_CONTEXT13_PAGE_TABLE_BASE_ADDR 0x0513
>    mmVM_CONTEXT14_PAGE_TABLE_BASE_ADDR 0x0514
>    mmVM_CONTEXT15_PAGE_TABLE_BASE_ADDR 0x0515
>    mmVM_CONTEXT1_PAGE_TABLE_BASE_ADDR 0x0550
>    mmVM_CONTEXT2_PAGE_TABLE_BASE_ADDR 0x0551
>    mmVM_CONTEXT3_PAGE_TABLE_BASE_ADDR 0x0552
>    mmVM_CONTEXT4_PAGE_TABLE_BASE_ADDR 0x0553
>    mmVM_CONTEXT5_PAGE_TABLE_BASE_ADDR 0x0554
>    mmVM_CONTEXT6_PAGE_TABLE_BASE_ADDR 0x0555
>    mmVM_CONTEXT7_PAGE_TABLE_BASE_ADDR 0x0556
>    mmVM_CONTEXT8_PAGE_TABLE_BASE_ADDR 0x050E
>    mmVM_CONTEXT9_PAGE_TABLE_BASE_ADDR 0x050F
>
> Oops. Those were clearly sorted automatically, and in entirely the wrong way.
>
> So automation has _really_ done something inexcusably stupid, and made
> the end result completely illegible in the process.

Yeah, but that is already the input we get from the hardware teams. E.g. 
in this case a list of registers sorted by their name or address (or 
even sometimes some hardware internal magic).

There isn't much we could do about that except for manual or semi 
manually cleaning up the mess.

> And yes, you'd be right that it's discontiguous at 8, but it's still
> arithmetic, ie you could easily have
>
>   #define  mmVM_PAGE_TABLE_BASE_ADDR(ctx) \
>          ((ctx)+0x054f-((ctx) & 8)*9-((ctx)&8)/8)
>
> and if "ctx" is a constant, then the end result is trivially a
> constant and can be used as such. And if it isn't, it's still a much
> cheaper operation than an "if" or "switch ()" statement (it's just a
> bitmask and two shifts).

Interesting approach, but it is not so performance critical. So I would 
still go with the "if" or "?" operator just for the improved readability.

> Now, seeing those patterns is likely not something that automation
> should do (although it's definitely possible - superoptimizers do that
> all the time), but automation could still *verify* the patterns once a
> human has made them up.

Well, this was just a rather simple example, the real problem is that 
some blocks have a dozen instances and >10k registers each.

Manual intervention is just completely out of question when applied to 
the general problem.

What we need is some automation, but as you wrote as well that is 
possible but far from easy.

> And it's quite possible that it would be a good idea to encode that
> pattern even in the original source code. In fact, it may *be* there
> somewhere (not as that arithmetic expression, but as the reverse
> decode logic, obviously).

The obvious alternative which we are working on for a few years now is 
to improve the input data we get from the hardware people.

In other words instead of getting a flat list of registers we want the 
information about where and how many times a hardware block was 
instantiated.

But getting that proved much more difficult than we thought and yes we 
are working on that for multiple years now.

Regards,
Christian.

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
@ 2017-11-17 19:18               ` Christian König
  0 siblings, 0 replies; 27+ messages in thread
From: Christian König @ 2017-11-17 19:18 UTC (permalink / raw)
  To: Linus Torvalds, Christian König; +Cc: Nicolai Hähnle, LKML, dri-devel

Am 17.11.2017 um 19:55 schrieb Linus Torvalds:
> On Fri, Nov 17, 2017 at 10:14 AM, Christian König
> <christian.koenig@amd.com> wrote:
>> Taking an example from the AMD headers why this automation is more tricky
>> than it sounds in the first place: Look at the
>> mmVM_CONTEXT*_PAGE_TABLE_BASE_ADDR registers for example.
>>
>> Register 0-7 are consecutive and so could be perfectly addressable with an
>> index, but register 8-15 aren't and so we always end with logic like if(i<8)
>> ... else ....
>>
>> The rational from the hardware guys is obvious that they initially had only
>> 8 and on a later hardware generation extended that to 16 registers.
> Heh. I don't disagree, but at the same time, that case is actually a
> wonderful example.
>
> Let's take the gmc_6_0 case, because it shows your irregularity, but
> it also shows another horrid example of nasty nasty automation:
>
>    mmVM_CONTEXT0_PAGE_TABLE_BASE_ADDR 0x054F
>    mmVM_CONTEXT10_PAGE_TABLE_BASE_ADDR 0x0510
>    mmVM_CONTEXT11_PAGE_TABLE_BASE_ADDR 0x0511
>    mmVM_CONTEXT12_PAGE_TABLE_BASE_ADDR 0x0512
>    mmVM_CONTEXT13_PAGE_TABLE_BASE_ADDR 0x0513
>    mmVM_CONTEXT14_PAGE_TABLE_BASE_ADDR 0x0514
>    mmVM_CONTEXT15_PAGE_TABLE_BASE_ADDR 0x0515
>    mmVM_CONTEXT1_PAGE_TABLE_BASE_ADDR 0x0550
>    mmVM_CONTEXT2_PAGE_TABLE_BASE_ADDR 0x0551
>    mmVM_CONTEXT3_PAGE_TABLE_BASE_ADDR 0x0552
>    mmVM_CONTEXT4_PAGE_TABLE_BASE_ADDR 0x0553
>    mmVM_CONTEXT5_PAGE_TABLE_BASE_ADDR 0x0554
>    mmVM_CONTEXT6_PAGE_TABLE_BASE_ADDR 0x0555
>    mmVM_CONTEXT7_PAGE_TABLE_BASE_ADDR 0x0556
>    mmVM_CONTEXT8_PAGE_TABLE_BASE_ADDR 0x050E
>    mmVM_CONTEXT9_PAGE_TABLE_BASE_ADDR 0x050F
>
> Oops. Those were clearly sorted automatically, and in entirely the wrong way.
>
> So automation has _really_ done something inexcusably stupid, and made
> the end result completely illegible in the process.

Yeah, but that is already the input we get from the hardware teams. E.g. 
in this case a list of registers sorted by their name or address (or 
even sometimes some hardware internal magic).

There isn't much we could do about that except for manual or semi 
manually cleaning up the mess.

> And yes, you'd be right that it's discontiguous at 8, but it's still
> arithmetic, ie you could easily have
>
>   #define  mmVM_PAGE_TABLE_BASE_ADDR(ctx) \
>          ((ctx)+0x054f-((ctx) & 8)*9-((ctx)&8)/8)
>
> and if "ctx" is a constant, then the end result is trivially a
> constant and can be used as such. And if it isn't, it's still a much
> cheaper operation than an "if" or "switch ()" statement (it's just a
> bitmask and two shifts).

Interesting approach, but it is not so performance critical. So I would 
still go with the "if" or "?" operator just for the improved readability.

> Now, seeing those patterns is likely not something that automation
> should do (although it's definitely possible - superoptimizers do that
> all the time), but automation could still *verify* the patterns once a
> human has made them up.

Well, this was just a rather simple example, the real problem is that 
some blocks have a dozen instances and >10k registers each.

Manual intervention is just completely out of question when applied to 
the general problem.

What we need is some automation, but as you wrote as well that is 
possible but far from easy.

> And it's quite possible that it would be a good idea to encode that
> pattern even in the original source code. In fact, it may *be* there
> somewhere (not as that arithmetic expression, but as the reverse
> decode logic, obviously).

The obvious alternative which we are working on for a few years now is 
to improve the input data we get from the hardware people.

In other words instead of getting a flat list of registers we want the 
information about where and how many times a hardware block was 
instantiated.

But getting that proved much more difficult than we thought and yes we 
are working on that for multiple years now.

Regards,
Christian.
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
  2017-11-17 19:18               ` Christian König
@ 2017-11-18 10:49                 ` Nicolai Hähnle
  -1 siblings, 0 replies; 27+ messages in thread
From: Nicolai Hähnle @ 2017-11-18 10:49 UTC (permalink / raw)
  To: christian.koenig, Linus Torvalds; +Cc: LKML, dri-devel

On 17.11.2017 20:18, Christian König wrote:
> The obvious alternative which we are working on for a few years now is 
> to improve the input data we get from the hardware people.
> 
> In other words instead of getting a flat list of registers we want the 
> information about where and how many times a hardware block was 
> instantiated.
> 
> But getting that proved much more difficult than we thought and yes we 
> are working on that for multiple years now.

Well, the good news is that at least for the gfx registers, I actually 
have a proof-of-concept script that extracts the required information 
from the hardware sources. Generating e.g. a CB_COLOR_INFO(x) macro 
instead of CB_COLORx_INFO defines from that is not that hard :)

The real challenge is getting this integrated into the right processes 
so we don't have as much of a maintenance burden.

Cheers,
Nicolai
-- 
Lerne, wie die Welt wirklich ist,
Aber vergiss niemals, wie sie sein sollte.

^ permalink raw reply	[flat|nested] 27+ messages in thread

* Re: [git pull] drm for v4.15
@ 2017-11-18 10:49                 ` Nicolai Hähnle
  0 siblings, 0 replies; 27+ messages in thread
From: Nicolai Hähnle @ 2017-11-18 10:49 UTC (permalink / raw)
  To: christian.koenig, Linus Torvalds; +Cc: LKML, dri-devel

On 17.11.2017 20:18, Christian König wrote:
> The obvious alternative which we are working on for a few years now is 
> to improve the input data we get from the hardware people.
> 
> In other words instead of getting a flat list of registers we want the 
> information about where and how many times a hardware block was 
> instantiated.
> 
> But getting that proved much more difficult than we thought and yes we 
> are working on that for multiple years now.

Well, the good news is that at least for the gfx registers, I actually 
have a proof-of-concept script that extracts the required information 
from the hardware sources. Generating e.g. a CB_COLOR_INFO(x) macro 
instead of CB_COLORx_INFO defines from that is not that hard :)

The real challenge is getting this integrated into the right processes 
so we don't have as much of a maintenance burden.

Cheers,
Nicolai
-- 
Lerne, wie die Welt wirklich ist,
Aber vergiss niemals, wie sie sein sollte.
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2017-11-18 10:49 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-16  2:34 [git pull] drm for v4.15 Dave Airlie
2017-11-16  2:34 ` Dave Airlie
2017-11-16  4:59 ` Linus Torvalds
2017-11-16  4:59   ` Linus Torvalds
2017-11-16 13:57   ` Rob Clark
2017-11-16 13:57     ` Rob Clark
2017-11-16 17:17   ` Michel Dänzer
2017-11-16 17:17     ` Michel Dänzer
2017-11-16 20:57   ` Dave Airlie
2017-11-16 20:57     ` Dave Airlie
2017-11-16 21:05     ` Linus Torvalds
2017-11-16 21:05       ` Linus Torvalds
2017-11-17 12:51     ` Nicolai Hähnle
2017-11-17 12:51       ` Nicolai Hähnle
2017-11-17 16:57       ` Linus Torvalds
2017-11-17 16:57         ` Linus Torvalds
2017-11-17 17:19         ` Lukas Wunner
2017-11-17 17:24           ` Linus Torvalds
2017-11-17 17:24             ` Linus Torvalds
2017-11-17 18:14         ` Christian König
2017-11-17 18:14           ` Christian König
2017-11-17 18:55           ` Linus Torvalds
2017-11-17 18:55             ` Linus Torvalds
2017-11-17 19:18             ` Christian König
2017-11-17 19:18               ` Christian König
2017-11-18 10:49               ` Nicolai Hähnle
2017-11-18 10:49                 ` Nicolai Hähnle

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.