Hey, First pull for v5.6! Enjoy! ~Maarten drm-misc-next-2019-12-16: drm-misc-next for v5.6: UAPI Changes: - Add support for DMA-BUF HEAPS. Cross-subsystem Changes: - mipi dsi definition updates, pulled into drm-intel as well. - Add lockdep annotations for dma_resv vs mmap_sem and fs_reclaim. - Remove support for dma-buf kmap/kunmap. - Constify fb_ops in all fbdev drivers, including drm drivers and drm-core, and media as well. Core Changes: - Small cleanups to ttm. - Fix SCDC definition. - Assorted cleanups to core. - Add todo to remove load/unload hooks, and use generic fbdev emulation. - Assorted documentation updates. - Use blocking ww lock in ttm fault handler. - Remove drm_fb_helper_fbdev_setup/teardown. - Warning fixes with W=1 for atomic. - Use drm_debug_enabled() instead of drm_debug flag testing in various drivers. - Fallback to nontiled mode in fbdev emulation when not all tiles are present. (Later on reverted) - Various kconfig indentation fixes in core and drivers. - Fix freeing transactions in dp-mst correctly. - Sean Paul is steping down as core maintainer. :-( - Add lockdep annotations for atomic locks vs dma-resv. - Prevent use-after-free for a bad job in drm_scheduler. - Fill out all block sizes in the P01x and P210 definitions. - Avoid division by zero in drm/rect, and fix bounds. - Add drm/rect selftests. - Add aspect ratio and alternate clocks for HDMI 4k modes. - Add todo for drm_framebuffer_funcs and fb_create cleanup. - Drop DRM_AUTH for prime import/export ioctls. - Clear DP-MST payload id tables downstream when initializating. - Fix for DSC throughput definition. - Add extra FEC definitions. - Fix fake offset in drm_gem_object_funs.mmap. - Stop using encoder->bridge in core directly - Handle bridge chaining slightly better. - Add backlight support to drm/panel, and use it in many panel drivers. - Increase max number of y420 modes from 128 to 256, as preparation to add the new modes. Driver Changes: - Small fixes all over. - Fix documentation in vkms. - Fix mmap_sem vs dma_resv in nouveau. - Small cleanup in komeda. - Add page flip support in gma500 for psb/cdv. - Add ddc symlink in the connector sysfs directory for many drivers. - Add support for analogic an6345, and fix small bugs in it. - Add atomic modesetting support to ast. - Fix radeon fault handler VMA race. - Switch udl to use generic shmem helpers. - Unconditional vblank handling for mcde. - Miscellaneous fixes to mcde. - Tweak debug output from komeda using debugfs. - Add gamma and color transform support to komeda for DOU-IPS. - Add support for sony acx424AKP panel. - Various small cleanups to gma500. - Use generic fbdev emulation in udl, and replace udl_framebuffer with generic implementation. - Add support for Logic PD Type 28 panel. - Use drm_panel_* wrapper functions in exynos/tegra/msm. - Add devicetree bindings for generic DSI panels. - Don't include drm_pci.h directly in many drivers. - Add support for begin/end_cpu_access in udmabuf. - Stop using drm_get_pci_dev in gma500 and mga200. - Fixes to UDL damage handling, and use dma_buf_begin/end_cpu_access. - Add devfreq thermal support to panfrost. - Fix hotplug with daisy chained monitors by removing VCPI when disabling topology manager. - meson: Add support for OSD1 plane AFBC commit. - Stop displaying garbage when toggling ast primary plane on/off. - More cleanups and fixes to UDL. - Add D32 suport to komeda. - Remove globle copy of drm_dev in gma500. - Add support for Boe Himax8279d MIPI-DSI LCD panel. - Add support for ingenic JZ4770 panel. - Small null pointer deference fix in ingenic. - Remove support for the special tfp420 driver, as there is a generic way to do it. The following changes since commit fae7d7d5f374eadbb0b5dd31b39162e7176e9c3d: Revert "dma-buf: Add dma-buf heaps framework" (2019-10-30 16:41:49 -0400) are available in the Git repository at: git://anongit.freedesktop.org/drm/drm-misc tags/drm-misc-next-2019-12-16 for you to fetch changes up to 2156873f08c7893811f34177aa923ab1ea486591: drm/tilcdc: Remove obsolete bundled tilcdc tfp410 driver (2019-12-16 10:45:43 +0200) ---------------------------------------------------------------- drm-misc-next for v5.6: UAPI Changes: - Add support for DMA-BUF HEAPS. Cross-subsystem Changes: - mipi dsi definition updates, pulled into drm-intel as well. - Add lockdep annotations for dma_resv vs mmap_sem and fs_reclaim. - Remove support for dma-buf kmap/kunmap. - Constify fb_ops in all fbdev drivers, including drm drivers and drm-core, and media as well. Core Changes: - Small cleanups to ttm. - Fix SCDC definition. - Assorted cleanups to core. - Add todo to remove load/unload hooks, and use generic fbdev emulation. - Assorted documentation updates. - Use blocking ww lock in ttm fault handler. - Remove drm_fb_helper_fbdev_setup/teardown. - Warning fixes with W=1 for atomic. - Use drm_debug_enabled() instead of drm_debug flag testing in various drivers. - Fallback to nontiled mode in fbdev emulation when not all tiles are present. (Later on reverted) - Various kconfig indentation fixes in core and drivers. - Fix freeing transactions in dp-mst correctly. - Sean Paul is steping down as core maintainer. :-( - Add lockdep annotations for atomic locks vs dma-resv. - Prevent use-after-free for a bad job in drm_scheduler. - Fill out all block sizes in the P01x and P210 definitions. - Avoid division by zero in drm/rect, and fix bounds. - Add drm/rect selftests. - Add aspect ratio and alternate clocks for HDMI 4k modes. - Add todo for drm_framebuffer_funcs and fb_create cleanup. - Drop DRM_AUTH for prime import/export ioctls. - Clear DP-MST payload id tables downstream when initializating. - Fix for DSC throughput definition. - Add extra FEC definitions. - Fix fake offset in drm_gem_object_funs.mmap. - Stop using encoder->bridge in core directly - Handle bridge chaining slightly better. - Add backlight support to drm/panel, and use it in many panel drivers. - Increase max number of y420 modes from 128 to 256, as preparation to add the new modes. Driver Changes: - Small fixes all over. - Fix documentation in vkms. - Fix mmap_sem vs dma_resv in nouveau. - Small cleanup in komeda. - Add page flip support in gma500 for psb/cdv. - Add ddc symlink in the connector sysfs directory for many drivers. - Add support for analogic an6345, and fix small bugs in it. - Add atomic modesetting support to ast. - Fix radeon fault handler VMA race. - Switch udl to use generic shmem helpers. - Unconditional vblank handling for mcde. - Miscellaneous fixes to mcde. - Tweak debug output from komeda using debugfs. - Add gamma and color transform support to komeda for DOU-IPS. - Add support for sony acx424AKP panel. - Various small cleanups to gma500. - Use generic fbdev emulation in udl, and replace udl_framebuffer with generic implementation. - Add support for Logic PD Type 28 panel. - Use drm_panel_* wrapper functions in exynos/tegra/msm. - Add devicetree bindings for generic DSI panels. - Don't include drm_pci.h directly in many drivers. - Add support for begin/end_cpu_access in udmabuf. - Stop using drm_get_pci_dev in gma500 and mga200. - Fixes to UDL damage handling, and use dma_buf_begin/end_cpu_access. - Add devfreq thermal support to panfrost. - Fix hotplug with daisy chained monitors by removing VCPI when disabling topology manager. - meson: Add support for OSD1 plane AFBC commit. - Stop displaying garbage when toggling ast primary plane on/off. - More cleanups and fixes to UDL. - Add D32 suport to komeda. - Remove globle copy of drm_dev in gma500. - Add support for Boe Himax8279d MIPI-DSI LCD panel. - Add support for ingenic JZ4770 panel. - Small null pointer deference fix in ingenic. - Remove support for the special tfp420 driver, as there is a generic way to do it. ---------------------------------------------------------------- Adam Ford (2): dt-bindings: Add Logic PD Type 28 display panel drm/panel: simple: Add Logic PD Type 28 display support Andrew F. Davis (1): dma-buf: Add dma-buf heaps framework Andrey Grodzovsky (1): drm/scheduler: Avoid accessing freed bad job. Andrzej Pietrasiewicz (8): drm/radeon: Provide ddc symlink in connector sysfs directory drm/amdgpu: Provide ddc symlink in dm connector's sysfs directory drm: rockchip: Provide ddc symlink in rk3066_hdmi sysfs directory drm: rockchip: Provide ddc symlink in inno_hdmi sysfs directory drm/msm/hdmi: Provide ddc symlink in hdmi connector sysfs directory drm/exynos: Provide ddc symlink in connector's sysfs drm/mediatek: Provide ddc symlink in hdmi connector sysfs directory drm/tilcdc: Provide ddc symlink in connector sysfs directory Benjamin Gaignard (2): drm: atomic helper: fix W=1 warnings drm/crtc-helper: drm_connector_get_single_encoder prototype is missing Boris Brezillon (8): drm/exynos: Don't reset bridge->next drm/bridge: Rename bridge helpers targeting a bridge chain drm/bridge: Introduce drm_bridge_get_next_bridge() drm: Stop accessing encoder->bridge directly drm/bridge: Make the bridge chain a double-linked list drm/bridge: Add the drm_for_each_bridge_in_chain() helper drm/bridge: Add the drm_bridge_get_prev_bridge() helper drm/bridge: Clarify the atomic enable/disable hooks semantics Christian König (3): drm/ttm: ttm_tt_init_fields() can be static drm/ttm: also export ttm_bo_vm_fault v2 drm/radeon: finally fix the racy VMA setup Chuhong Yuan (2): drm/virtgpu: fix double unregistration drm/gma500: add a missed gma_power_end in error path Colin Ian King (2): drm/dp_mst: fix multiple frees of tx->bytes drm/panel: clean up indentation issue Daniel Vetter (37): drm/property: Enforce more lifetime rules drm/todo: Add entry to remove load/unload hooks dma_resv: prime lockdep annotations drm/nouveau: slowpath for pushbuf ioctl drm/ttm: remove ttm_bo_wait_unreserved drm/fb-helper: unexport drm_fb_helper_generic_probe drm/atmel: ditch fb_create wrapper drm/tilcdc: Drop drm_gem_fb_create wrapper drm/xen: Simplify fb_create drm/modeset: Prime modeset lock vs dma_resv dma-resv: Also prime acquire ctx for lockdep drm/msm: Don't init ww_mutec acquire ctx before needed drm/mediatek: don't open-code drm_gem_fb_create drm/tegra: Map cmdbuf once for reloc processing drm/tegra: Delete host1x_bo_ops->k(un)map drm/i915: Remove dma_buf_kmap selftest staging/android/ion: delete dma_buf->kmap/unmap implemenation drm/i915: Drop dma_buf->k(un)map drm/omapdrm: Drop dma_buf->k(un)map drm/tegra: Remove dma_buf->k(un)map dma-buf: Drop dma_buf_k(un)map drm/vmwgfx: Delete mmaping functions media/videobuf2: Drop dma_buf->k(un)map support drm/tee_shm: Drop dma_buf_k(unmap) support xen/gntdev-dmabuf: Ditch dummy map functions sample/vfio-mdev/mbocs: Remove dma_buf_k(un)map support drm/armada: Delete dma_buf->k(un)map implemenation dma-buf: Remove kernel map/unmap hooks drm/fourcc: Fill out all block sizes for P10/12/16 drm/fourcc: Fill out all block sizes for P210 drm/rect: update kerneldoc for drm_rect_clip_scaled() drm/rockchip: Use drm_gem_fb_create_with_dirty drm/todo: Add entry for fb funcs related cleanups drm/atomic: Update docs around locking and commit sequencing drm/doc: Drop :c:func: markup drm/gma500: globle no more! drm/atmel: plane_state->fb iff plane_state->crtc Emil Velikov (3): drm: use correct dev node location in comment drm/panfrost: remove DRM_AUTH and respective comment drm: drop DRM_AUTH from PRIME_TO/FROM_HANDLE ioctls Gabriela Bittencourt (3): drm/vkms: Update VKMS documentation drm/doc: Add VKMS module description and use to "Testing and Validation" drm/vkms: Fix typo and preposion in function documentation Gerd Hoffmann (5): drm/virtio: fix byteorder handling in virtio_gpu_cmd_transfer_{from, to}_host_3d functions drm/virtio: Simplify virtio_gpu_primary_plane_update workflow. drm/virtio: factor out virtio_gpu_update_dumb_bo drm: call drm_gem_object_funcs.mmap with fake offset drm: share address space for dma bufs Gurchetan Singh (5): drm/vram: remove unused declaration udmabuf: use cache_sgt_mapping option udmabuf: add a pointer to the miscdevice in dma-buf private data udmabuf: separate out creating/destroying scatter-table udmabuf: implement begin_cpu_access/end_cpu_access hooks Icenowy Zheng (4): drm/bridge: move ANA78xx driver to analogix subdirectory drm/bridge: split some definitions of ANX78xx to dedicated headers drm/bridge: extract some Analogix I2C DP common code drm/bridge: Add Analogix anx6345 support Jani Nikula (32): drm/dsi: clean up DSI data type definitions drm/dsi: add missing DSI data types drm/dsi: add missing DSI DCS commands drm/dsi: rename MIPI_DCS_SET_PARTIAL_AREA to MIPI_DCS_SET_PARTIAL_ROWS drm/dsi: add helpers for DSI compression mode and PPS packets drm/i915: use drm_debug_enabled() to check for debug categories drm/nouveau: use drm_debug_enabled() to check for debug categories drm/amdgpu: use drm_debug_enabled() to check for debug categories drm/print: rename drm_debug to __drm_debug to discourage use drm/print: underscore prefix functions that should be private to print drm/print: convert debug category macros into an enum drm/print: group logging functions by prink or device based drm/r128: make ATI PCI GART part of its only user, r128 video: fb_defio: preserve user fb_ops drm/fb-helper: don't preserve fb_ops across deferred IO use video: smscufx: don't restore fb_mmap after deferred IO cleanup video: udlfb: don't restore fb_mmap after deferred IO cleanup video: fbdev: vesafb: modify the static fb_ops directly video: fbmem: use const pointer for fb_ops video: omapfb: use const pointer for fb_ops video: fbdev: atyfb: modify the static fb_ops directly video: fbdev: mb862xx: modify the static fb_ops directly video: fbdev: nvidia: modify the static fb_ops directly video: fbdev: uvesafb: modify the static fb_ops directly video: fbdev: make fbops member of struct fb_info a const pointer drm: constify fb ops across all drivers video: fbdev: intelfb: use const pointer for fb_ops video: constify fb ops across all drivers HID: picoLCD: constify fb ops samples: vfio-mdev: constify fb ops auxdisplay: constify fb ops media: constify fb ops across all drivers Jean Delvare (1): drm/edid: no CEA v3 extension is not an error Jerry Han (1): drm/panel: Add Boe Himax8279d MIPI-DSI LCD panel John Stultz (4): dma-buf: heaps: Add heap helpers dma-buf: heaps: Add system heap to dmabuf heaps dma-buf: heaps: Add CMA heap to dmabuf heaps kselftests: Add dma-heap test Jyri Sarha (1): drm/tilcdc: Remove obsolete bundled tilcdc tfp410 driver Krzysztof Kozlowski (10): vga: Fix Kconfig indentation drm/udl: Fix Kconfig indentation drm/rockchip: Fix Kconfig indentation drm/omap: Fix Kconfig indentation drm/nouveau: Fix Kconfig indentation drm/lima: Fix Kconfig indentation drm/bridge: Fix Kconfig indentation drm/mgag200: Fix Kconfig indentation drm/vc4: Fix Kconfig indentation drm/sun4i: Fix Kconfig indentation Leandro Ribeiro (1): drm/doc: Update IGT documentation Linus Walleij (6): drm/panel: Add DT bindings for Sony ACX424AKP drm/mcde: Reuse global DSI command defs drm/mcde: Do not needlessly logically and with 3 drm/panel: Add generic DSI display controller YAML bindings drm/panel: rpi: Drop unused GPIO includes drm/gma500: Pass GPIO for Intel MID using descriptors Lowry Li (Arm Technology China) (1): drm/komeda: Adds gamma and color-transform support for DOU-IPS Maarten Lankhorst (2): Merge tag 'topic/drm-mipi-dsi-dsc-updates-2019-11-11' of ssh://git.freedesktop.org/git/drm-intel into drm-misc-next udmabuf: Remove deleted map/unmap handlers. Manasi Navare (1): drm/fbdev: Fallback to non tiled mode if all tiles not present Markus Elfring (2): drm/komeda: Use devm_platform_ioremap_resource() in komeda_dev_create() drm/qxl: Complete exception handling in qxl_device_init() Maxime Ripard (1): drm/bridge: anx6345: Fix compilation breakage on systems without CONFIG_OF Mihail Atanassov (7): drm/komeda: Add debugfs node to control error verbosity drm/komeda: Remove CONFIG_KOMEDA_ERROR_PRINT drm/komeda: Optionally dump DRM state on interrupts drm/komeda: Add option to print WARN- and INFO-level IRQ events drm/komeda: add rate limiting disable to err_verbosity drm/mediatek: Fix build break drm/bridge: panel: export drm_panel_bridge_connector Neil Armstrong (9): drm/meson: add AFBC decoder registers for GXM and G12A drm/meson: add RDMA register bits defines drm/meson: store the framebuffer width for plane commit drm/meson: add RDMA module driver drm/meson: Add AFBCD module driver drm/meson: plane: add support for AFBC mode for OSD1 plane drm/meson: viu: add AFBC modules routing functions drm/meson: hold 32 lines after vsync to give time for AFBC start drm/meson: crtc: add OSD1 plane AFBC commit Patrik Jakobsson (1): drm/scdc: Fix typo in bit definition of SCDC_STATUS_FLAGS Paul Cercueil (6): dt-bindings: display/ingenic: Add compatible string for JZ4770 gpu/drm: ingenic: Avoid null pointer deference in plane atomic update gpu/drm: ingenic: Use the plane's src_[x,y] to configure DMA length gpu/drm: ingenic: Set max FB height to 4095 gpu/drm: ingenic: Check for display size in CRTC atomic check gpu/drm: ingenic: Add support for the JZ4770 Paul Kocialkowski (3): drm/gma500: Add missing call to allow enabling vblank on psb/cdv drm/gma500: Add page flip support on psb/cdv drm/gma500: Fixup fbdev stolen size usage evaluation Robin Murphy (1): drm/panfrost: Register devfreq cooling device Rodrigo Siqueira (2): drm: Fix DSC throughput mode 0 mask definition drm: Add FEC registers for LT-tunable repeaters Sam Ravnborg (30): drm/exynos: fix opencoded use of drm_panel_* drm/exynos: fix opencoded use of drm_panel_* drm/msm: fix opencoded use of drm_panel_* drm/tegra: fix opencoded use of drm_panel_* drm/drm_panel: no error when no callback drm/panel: add backlight support drm/panel: simple: use drm_panel backlight support drm: get drm_bridge_panel connector via helper drm/panel: add drm_connector argument to get_modes() drm/panel: decouple connector from drm_panel drm/panel: drop drm_device from drm_panel drm/panel: feiyang-fy07024di26a30d: use drm_panel backlight support drm/panel: ilitek-ili9881c: use drm_panel backlight support drm/panel: innolux-p079zca: use drm_panel backlight support drm/panel: kingdisplay-kd097d04: use drm_panel backlight support drm/panel: lvds: use drm_panel backlight support drm/panel: olimex-lcd-olinuxino: use drm_panel backlight support drm/panel: osd-osd101t2587-53ts: use drm_panel backlight support drm/panel: panasonic-vvx10f034n00: use drm_panel backlight support drm/panel: raydium-rm68200: use drm_panel backlight support drm/panel: rocktech-jh057n00900: use drm_panel backlight support drm/panel: ronbo-rb070d30: use drm_panel backlight support drm/panel: seiko-43wvf1g: use drm_panel backlight support drm/panel: sharp-lq101r1sx01: use drm_panel backlight support drm/panel: sharp-ls043t1le01: use drm_panel backlight support drm/panel: sitronix-st7701: use drm_panel backlight support drm/panel: sitronix-st7789v: use drm_panel backlight support drm/panel: tpo-td028ttec1: use drm_panel backlight support drm/panel: tpo-tpg110: use drm_panel backlight support drm/drm_panel: fix EXPORT of drm_panel_of_backlight Sean Paul (2): MAINTAINERS: Remove myself from drm-misc entry drm/dp_mst: Clear all payload id tables downstream when initializing Stephan Gerhold (7): drm/mcde: Provide vblank handling unconditionally drm/mcde: Fix frame sync setup for video mode panels drm/mcde: dsi: Make video mode errors more verbose drm/mcde: dsi: Delay start of video stream generator drm/mcde: dsi: Fix duplicated DSI connector drm/mcde: dsi: Enable clocks in pre_enable() instead of mode_set() drm/mcde: Handle pending vblank while disabling display Steven Price (1): dma_resv: prime lockdep annotations Thomas Anderson (1): drm/edid: Increase size of VDB and CMDB bitmaps to 256 bits Thomas Hellstrom (2): drm/ttm: Remove explicit typecasts of vm_private_data drm/ttm: Convert vm callbacks to helpers Thomas Zimmermann (69): drm/todo: Convert drivers to generic fbdev emulation drm/fb-helper: Remove drm_fb_helper_fbdev_{setup, teardown}() drm/ast: Remove last traces of struct ast_gem_object drm/ast: Check video-mode requirements against VRAM size drm/ast: Don't clear base address and offset with default values drm/ast: Split ast_set_ext_reg() into color and threshold function drm/ast: Split ast_set_vbios_mode_info() drm/ast: Add primary plane drm/ast: Add CRTC helpers for atomic modesetting drm/ast: Add cursor plane drm/ast: Enable atomic modesetting drm/udl: Remove flags field from struct udl_gem_object drm/udl: Allocate GEM object via struct drm_driver.gem_create_object drm/udl: Switch to SHMEM drm/udl: Remove struct udl_gem_object and functions drm/ast: Replace drm_get_pci_device() and drm_put_dev() drm/ast: Call struct drm_driver.{load, unload} before registering device drm/udl: Replace fbdev code with generic emulation drm/fb-helper: Remove drm_fb_helper_unlink_fbi() fbdev: Unexport unlink_framebuffer() drm/gma500: Remove addr_space field from psb_framebuffer drm/gma500: Remove field 'fbdev' from struct psb_framebuffer drm/gma500: Replace struct psb_framebuffer with struct drm_framebuffer drm/gma500: Pass struct drm_gem_object to framebuffer functions drm/gma500: Store framebuffer in struct drm_fb_helper drm/gma500: Remove struct psb_fbdev drm/udl: Unmap buffer object after damage update drm/udl: Remove udl implementation of GEM's free_object() drm/udl: Store active framebuffer in device structure drm/udl: Call udl_handle_damage() with DRM framebuffer drm/udl: Replace struct udl_framebuffer with generic implementation drm/pci: Only build drm_pci.c if CONFIG_PCI is set drm/pci: Hide legacy PCI functions from non-legacy code drm/ast: Don't include <drm/drm_pci.h> drm/i810: Don't include <drm/drm_pci.h> drm/mga: Don't include <drm/drm_pci.h> drm/mgag200: Don't include <drm/drm_pci.h> drm/r128: Don't include <drm/drm_pci.h> drm/radeon: Don't include <drm/drm_pci.h> drm/savage: Don't include <drm/drm_pci.h> drm/sis: Don't include <drm/drm_pci.h> drm/tdfx: Don't include <drm/drm_pci.h> drm/via: Don't include <drm/drm_pci.h> drm/gma500: Call psb_driver_{load, unload}() before registering device drm/mgag200: Call mgag200_driver_{load, unload}() before registering device drm/mgag200: Debug-print unique revisions id on G200 SE drm/udl: Remove unused statistics counters drm/udl: Don't track number of identical and sent pixels per line drm/udl: Vmap framebuffer after all tests succeeded in damage handling drm/udl: Move clip-rectangle code out of udl_handle_damage() drm/udl: Move log-cpp code out of udl_damage_handler() drm/udl: Begin/end access to imported buffers in damage-handler drm/udl: Remove field lost_pixels from struct udl_device drm/ast: Move modesetting code to CRTC's atomic_flush() drm/ast: Enable and disable screen in primary-plane functions drm/ast: Clean up arguments of register functions drm/ast: Add plane atomic_check() functions drm/ast: Introduce struct ast_crtc_state drm/ast: Store VBIOS mode info in struct ast_crtc_state drm/ast: Store primary-plane format in struct ast_crtc_state drm/udl: Init connector before encoder and CRTC drm/udl: Convert to struct drm_simple_display_pipe drm/udl: Switch to atomic suspend/resume helpers drm/udl: Inline DPMS code into CRTC enable and disable functions drm/udl: Set preferred color depth to 16 bpp drm/udl: Convert to drm_atomic_helper_dirtyfb() drm/udl: Remove struct udl_device.active_fb_16 drm/udl: Move udl_handle_damage() into udl_modeset.c drm/udl: Remove udl_fb.c Torsten Duwe (2): drm/bridge: Prepare Analogix anx6345 support drm/bridge: fix anx6345 compilation for v5.5 Uma Shankar (1): Revert "drm/fbdev: Fallback to non tiled mode if all tiles not present" Ville Syrjälä (5): drm/rect: Avoid division by zero drm/rect: Keep the scaled clip bounded drm/rect: Keep the clipped dst rectangle in place drm/selftests: Add drm_rect selftests drm: Inline drm_color_lut_extract() Wambui Karuga (2): drm: use DIV_ROUND_UP helper macro for calculations drm/rockchip: use DRM_DEV_ERROR for log output Wayne Lin (3): drm/edid: Add aspect ratios to HDMI 4K modes drm/edid: Add alternate clock for SMPTE 4K drm/dp_mst: Remove VCPI while disabling topology mgr james qian wang (Arm Technology China) (8): drm/komeda: Fix komeda driver build error drm: Add a new helper drm_color_ctm_s31_32_to_qm_n() drm/komeda: Add drm_lut_to_fgamma_coeffs() drm/komeda: Add drm_ctm_to_coeffs() drm/komeda: Clean warnings: candidate for 'gnu_printf’ format attribute drm/komeda: Correct d71 register block counting drm/komeda: Update the chip identify drm/komeda: Enable new product D32 support zhengbin (6): drm/gma500: remove set but not used variable 'htotal' drm/gma500: remove set but not used variable 'error' drm/gma500: remove set but not used variable 'is_hdmi','is_crt' drm/gma500: remove set but not used variable 'channel_eq' drm/sun4i: Remove unneeded semicolon in sun8i_mixer.c drm/sun4i: Remove unneeded semicolon in sun4i_layer.c .../bindings/display/dsi-controller.yaml | 91 ++ .../devicetree/bindings/display/ingenic,lcd.txt | 1 + .../bindings/display/panel/logicpd,type28.yaml | 42 + .../bindings/display/panel/sony,acx424akp.yaml | 49 ++ .../devicetree/bindings/display/tilcdc/tfp410.txt | 21 - Documentation/gpu/drm-internals.rst | 4 +- Documentation/gpu/drm-kms.rst | 19 +- Documentation/gpu/drm-mm.rst | 68 +- Documentation/gpu/drm-uapi.rst | 49 +- Documentation/gpu/todo.rst | 60 +- MAINTAINERS | 25 +- .../intel-mid/device_libs/platform_tc35876x.c | 26 +- drivers/auxdisplay/cfag12864bfb.c | 2 +- drivers/auxdisplay/ht16k33.c | 2 +- drivers/dma-buf/Kconfig | 11 + drivers/dma-buf/Makefile | 2 + drivers/dma-buf/dma-buf.c | 63 +- drivers/dma-buf/dma-heap.c | 297 +++++++ drivers/dma-buf/dma-resv.c | 32 + drivers/dma-buf/heaps/Kconfig | 14 + drivers/dma-buf/heaps/Makefile | 4 + drivers/dma-buf/heaps/cma_heap.c | 177 ++++ drivers/dma-buf/heaps/heap-helpers.c | 271 ++++++ drivers/dma-buf/heaps/heap-helpers.h | 53 ++ drivers/dma-buf/heaps/system_heap.c | 123 +++ drivers/dma-buf/udmabuf.c | 85 +- drivers/gpu/drm/Kconfig | 4 - drivers/gpu/drm/Makefile | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c | 2 +- drivers/gpu/drm/amd/amdgpu/smu_v11_0_i2c.c | 4 +- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 5 +- drivers/gpu/drm/arm/display/Kconfig | 6 - .../gpu/drm/arm/display/include/malidp_product.h | 3 +- drivers/gpu/drm/arm/display/komeda/Makefile | 5 +- .../gpu/drm/arm/display/komeda/d71/d71_component.c | 22 +- drivers/gpu/drm/arm/display/komeda/d71/d71_dev.c | 67 +- drivers/gpu/drm/arm/display/komeda/d71/d71_regs.h | 13 + .../gpu/drm/arm/display/komeda/komeda_color_mgmt.c | 66 ++ .../gpu/drm/arm/display/komeda/komeda_color_mgmt.h | 10 +- drivers/gpu/drm/arm/display/komeda/komeda_crtc.c | 2 + drivers/gpu/drm/arm/display/komeda/komeda_dev.c | 74 +- drivers/gpu/drm/arm/display/komeda/komeda_dev.h | 42 +- drivers/gpu/drm/arm/display/komeda/komeda_drv.c | 10 +- drivers/gpu/drm/arm/display/komeda/komeda_event.c | 24 +- drivers/gpu/drm/arm/display/komeda/komeda_kms.c | 2 +- .../gpu/drm/arm/display/komeda/komeda_pipeline.h | 3 + .../drm/arm/display/komeda/komeda_pipeline_state.c | 6 + drivers/gpu/drm/armada/armada_fbdev.c | 2 +- drivers/gpu/drm/armada/armada_gem.c | 12 - drivers/gpu/drm/ast/ast_drv.c | 67 +- drivers/gpu/drm/ast/ast_drv.h | 20 +- drivers/gpu/drm/ast/ast_main.c | 54 +- drivers/gpu/drm/ast/ast_mode.c | 809 ++++++++++------- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c | 8 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c | 2 +- drivers/gpu/drm/bridge/Kconfig | 18 +- drivers/gpu/drm/bridge/Makefile | 4 +- drivers/gpu/drm/bridge/analogix-anx78xx.h | 703 --------------- drivers/gpu/drm/bridge/analogix/Kconfig | 23 + drivers/gpu/drm/bridge/analogix/Makefile | 4 +- drivers/gpu/drm/bridge/analogix/analogix-anx6345.c | 817 +++++++++++++++++ .../drm/bridge/{ => analogix}/analogix-anx78xx.c | 146 +-- drivers/gpu/drm/bridge/analogix/analogix-anx78xx.h | 249 ++++++ .../gpu/drm/bridge/analogix/analogix-i2c-dptx.c | 165 ++++ .../gpu/drm/bridge/analogix/analogix-i2c-dptx.h | 256 ++++++ .../drm/bridge/analogix/analogix-i2c-txcommon.h | 234 +++++ drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 2 +- drivers/gpu/drm/bridge/panel.c | 20 +- drivers/gpu/drm/bridge/parade-ps8622.c | 2 +- drivers/gpu/drm/bridge/tc358764.c | 2 +- drivers/gpu/drm/bridge/tc358767.c | 2 +- drivers/gpu/drm/bridge/ti-sn65dsi86.c | 2 +- drivers/gpu/drm/drm_agpsupport.c | 4 +- drivers/gpu/drm/drm_atomic.c | 10 +- drivers/gpu/drm/drm_atomic_helper.c | 73 +- drivers/gpu/drm/drm_bridge.c | 280 +++--- drivers/gpu/drm/drm_color_mgmt.c | 40 +- drivers/gpu/drm/drm_crtc_helper.c | 2 + drivers/gpu/drm/drm_dp_mst_topology.c | 80 +- drivers/gpu/drm/drm_edid.c | 60 +- drivers/gpu/drm/drm_encoder.c | 15 +- drivers/gpu/drm/drm_fb_helper.c | 166 +--- drivers/gpu/drm/drm_file.c | 2 +- drivers/gpu/drm/drm_fourcc.c | 8 +- drivers/gpu/drm/drm_gem.c | 3 - drivers/gpu/drm/drm_gem_shmem_helper.c | 3 + drivers/gpu/drm/drm_internal.h | 22 + drivers/gpu/drm/drm_ioctl.c | 4 +- drivers/gpu/drm/drm_mipi_dsi.c | 57 +- drivers/gpu/drm/drm_mode_config.c | 28 + drivers/gpu/drm/drm_mode_object.c | 14 + drivers/gpu/drm/drm_panel.c | 109 ++- drivers/gpu/drm/drm_pci.c | 17 +- drivers/gpu/drm/drm_prime.c | 9 +- drivers/gpu/drm/drm_print.c | 18 +- drivers/gpu/drm/drm_probe_helper.c | 4 +- drivers/gpu/drm/drm_rect.c | 42 +- drivers/gpu/drm/exynos/exynos_dp.c | 1 - drivers/gpu/drm/exynos/exynos_drm_dpi.c | 4 +- drivers/gpu/drm/exynos/exynos_drm_dsi.c | 15 +- drivers/gpu/drm/exynos/exynos_drm_fbdev.c | 2 +- drivers/gpu/drm/exynos/exynos_hdmi.c | 6 +- drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c | 2 +- drivers/gpu/drm/gma500/accel_2d.c | 15 +- drivers/gpu/drm/gma500/cdv_intel_display.c | 8 +- drivers/gpu/drm/gma500/cdv_intel_dp.c | 3 - drivers/gpu/drm/gma500/framebuffer.c | 135 ++- drivers/gpu/drm/gma500/framebuffer.h | 15 - drivers/gpu/drm/gma500/gma_display.c | 48 + drivers/gpu/drm/gma500/gma_display.h | 6 + drivers/gpu/drm/gma500/mdfld_intel_display.c | 23 - drivers/gpu/drm/gma500/oaktrail_hdmi.c | 4 +- drivers/gpu/drm/gma500/oaktrail_lvds.c | 1 + drivers/gpu/drm/gma500/psb_drv.c | 44 +- drivers/gpu/drm/gma500/psb_drv.h | 8 +- drivers/gpu/drm/gma500/psb_intel_display.c | 1 + drivers/gpu/drm/gma500/psb_intel_drv.h | 3 + drivers/gpu/drm/gma500/psb_irq.c | 20 +- drivers/gpu/drm/gma500/tc35876x-dsi-lvds.c | 88 +- drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_fbdev.c | 2 +- drivers/gpu/drm/i810/i810_dma.c | 2 +- drivers/gpu/drm/i810/i810_drv.c | 3 +- drivers/gpu/drm/i915/display/intel_display.c | 4 +- drivers/gpu/drm/i915/display/intel_dp.c | 2 +- drivers/gpu/drm/i915/display/intel_fbdev.c | 2 +- drivers/gpu/drm/i915/gem/i915_gem_dmabuf.c | 36 - .../gpu/drm/i915/gem/selftests/i915_gem_dmabuf.c | 101 --- drivers/gpu/drm/i915/gem/selftests/mock_dmabuf.c | 16 - drivers/gpu/drm/i915/i915_drv.c | 2 +- drivers/gpu/drm/i915/i915_gem.h | 2 +- drivers/gpu/drm/i915/i915_utils.c | 2 +- drivers/gpu/drm/i915/intel_pm.c | 2 +- drivers/gpu/drm/imx/imx-ldb.c | 2 +- drivers/gpu/drm/imx/parallel-display.c | 2 +- drivers/gpu/drm/ingenic/ingenic-drm.c | 38 +- drivers/gpu/drm/lima/Kconfig | 2 +- drivers/gpu/drm/mcde/mcde_display.c | 57 +- drivers/gpu/drm/mcde/mcde_drm.h | 1 + drivers/gpu/drm/mcde/mcde_drv.c | 18 +- drivers/gpu/drm/mcde/mcde_dsi.c | 177 ++-- drivers/gpu/drm/mcde/mcde_dsi_regs.h | 21 +- drivers/gpu/drm/mediatek/Makefile | 1 - drivers/gpu/drm/mediatek/mtk_drm_drv.c | 16 +- drivers/gpu/drm/mediatek/mtk_drm_fb.c | 92 -- drivers/gpu/drm/mediatek/mtk_drm_fb.h | 13 - drivers/gpu/drm/mediatek/mtk_drm_plane.c | 1 - drivers/gpu/drm/mediatek/mtk_dsi.c | 2 +- drivers/gpu/drm/mediatek/mtk_hdmi.c | 15 +- drivers/gpu/drm/meson/Makefile | 1 + drivers/gpu/drm/meson/meson_crtc.c | 79 +- drivers/gpu/drm/meson/meson_drv.c | 50 +- drivers/gpu/drm/meson/meson_drv.h | 23 + drivers/gpu/drm/meson/meson_osd_afbcd.c | 389 ++++++++ drivers/gpu/drm/meson/meson_osd_afbcd.h | 28 + drivers/gpu/drm/meson/meson_plane.c | 229 ++++- drivers/gpu/drm/meson/meson_rdma.c | 135 +++ drivers/gpu/drm/meson/meson_rdma.h | 21 + drivers/gpu/drm/meson/meson_registers.h | 110 +++ drivers/gpu/drm/meson/meson_viu.c | 83 +- drivers/gpu/drm/meson/meson_viu.h | 19 + drivers/gpu/drm/mga/mga_drv.h | 2 +- drivers/gpu/drm/mgag200/Kconfig | 8 +- drivers/gpu/drm/mgag200/mgag200_cursor.c | 2 +- drivers/gpu/drm/mgag200/mgag200_drv.c | 44 +- drivers/gpu/drm/mgag200/mgag200_i2c.c | 3 +- drivers/gpu/drm/mgag200/mgag200_main.c | 8 +- drivers/gpu/drm/mgag200/mgag200_mode.c | 2 +- drivers/gpu/drm/mgag200/mgag200_ttm.c | 2 +- .../gpu/drm/msm/disp/mdp4/mdp4_lvds_connector.c | 2 +- drivers/gpu/drm/msm/dsi/dsi_manager.c | 2 +- drivers/gpu/drm/msm/edp/edp_bridge.c | 10 +- drivers/gpu/drm/msm/hdmi/hdmi_connector.c | 6 +- drivers/gpu/drm/msm/msm_fbdev.c | 2 +- drivers/gpu/drm/msm/msm_gem_submit.c | 9 +- drivers/gpu/drm/mxsfb/mxsfb_out.c | 2 +- drivers/gpu/drm/nouveau/Kconfig | 2 +- drivers/gpu/drm/nouveau/dispnv50/disp.h | 4 +- drivers/gpu/drm/nouveau/nouveau_drv.h | 4 +- drivers/gpu/drm/nouveau/nouveau_fbcon.c | 4 +- drivers/gpu/drm/nouveau/nouveau_gem.c | 57 +- drivers/gpu/drm/omapdrm/displays/Kconfig | 6 +- drivers/gpu/drm/omapdrm/dss/Kconfig | 12 +- drivers/gpu/drm/omapdrm/omap_connector.c | 3 +- drivers/gpu/drm/omapdrm/omap_drv.c | 4 +- drivers/gpu/drm/omapdrm/omap_encoder.c | 3 +- drivers/gpu/drm/omapdrm/omap_fbdev.c | 2 +- drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c | 21 - drivers/gpu/drm/panel/Kconfig | 11 + drivers/gpu/drm/panel/Makefile | 1 + drivers/gpu/drm/panel/panel-arm-versatile.c | 6 +- drivers/gpu/drm/panel/panel-boe-himax8279d.c | 978 +++++++++++++++++++++ .../gpu/drm/panel/panel-feiyang-fy07024di26a30d.c | 16 +- drivers/gpu/drm/panel/panel-ilitek-ili9322.c | 19 +- drivers/gpu/drm/panel/panel-ilitek-ili9881c.c | 29 +- drivers/gpu/drm/panel/panel-innolux-p079zca.c | 45 +- drivers/gpu/drm/panel/panel-jdi-lt070me05000.c | 11 +- drivers/gpu/drm/panel/panel-kingdisplay-kd097d04.c | 43 +- drivers/gpu/drm/panel/panel-lg-lb035q02.c | 6 +- drivers/gpu/drm/panel/panel-lg-lg4573.c | 12 +- drivers/gpu/drm/panel/panel-lvds.c | 46 +- drivers/gpu/drm/panel/panel-nec-nl8048hl11.c | 6 +- drivers/gpu/drm/panel/panel-novatek-nt39016.c | 6 +- drivers/gpu/drm/panel/panel-olimex-lcd-olinuxino.c | 29 +- drivers/gpu/drm/panel/panel-orisetech-otm8009a.c | 11 +- drivers/gpu/drm/panel/panel-osd-osd101t2587-53ts.c | 37 +- .../gpu/drm/panel/panel-panasonic-vvx10f034n00.c | 62 +- .../gpu/drm/panel/panel-raspberrypi-touchscreen.c | 11 +- drivers/gpu/drm/panel/panel-raydium-rm67191.c | 8 +- drivers/gpu/drm/panel/panel-raydium-rm68200.c | 26 +- drivers/gpu/drm/panel/panel-rocktech-jh057n00900.c | 35 +- drivers/gpu/drm/panel/panel-ronbo-rb070d30.c | 31 +- drivers/gpu/drm/panel/panel-samsung-ld9040.c | 4 +- drivers/gpu/drm/panel/panel-samsung-s6d16d0.c | 6 +- drivers/gpu/drm/panel/panel-samsung-s6e3ha2.c | 6 +- drivers/gpu/drm/panel/panel-samsung-s6e63j0x03.c | 6 +- drivers/gpu/drm/panel/panel-samsung-s6e63m0.c | 6 +- drivers/gpu/drm/panel/panel-samsung-s6e8aa0.c | 4 +- drivers/gpu/drm/panel/panel-seiko-43wvf1g.c | 54 +- drivers/gpu/drm/panel/panel-sharp-lq101r1sx01.c | 34 +- drivers/gpu/drm/panel/panel-sharp-ls037v7dw01.c | 6 +- drivers/gpu/drm/panel/panel-sharp-ls043t1le01.c | 37 +- drivers/gpu/drm/panel/panel-simple.c | 131 +-- drivers/gpu/drm/panel/panel-sitronix-st7701.c | 23 +- drivers/gpu/drm/panel/panel-sitronix-st7789v.c | 49 +- drivers/gpu/drm/panel/panel-sony-acx565akm.c | 6 +- drivers/gpu/drm/panel/panel-tpo-td028ttec1.c | 20 +- drivers/gpu/drm/panel/panel-tpo-td043mtea1.c | 6 +- drivers/gpu/drm/panel/panel-tpo-tpg110.c | 26 +- drivers/gpu/drm/panel/panel-truly-nt35597.c | 4 +- drivers/gpu/drm/panfrost/panfrost_devfreq.c | 32 +- drivers/gpu/drm/panfrost/panfrost_drv.c | 6 +- drivers/gpu/drm/pl111/pl111_drv.c | 2 +- drivers/gpu/drm/qxl/qxl_kms.c | 2 +- drivers/gpu/drm/r128/Makefile | 2 +- drivers/gpu/drm/{ => r128}/ati_pcigart.c | 5 +- .../drm => drivers/gpu/drm/r128}/ati_pcigart.h | 0 drivers/gpu/drm/r128/r128_drv.c | 2 +- drivers/gpu/drm/r128/r128_drv.h | 3 +- drivers/gpu/drm/radeon/atom.h | 1 + drivers/gpu/drm/radeon/atombios_encoders.c | 2 +- drivers/gpu/drm/radeon/btc_dpm.c | 3 +- drivers/gpu/drm/radeon/ci_dpm.c | 3 +- drivers/gpu/drm/radeon/cik.c | 4 +- drivers/gpu/drm/radeon/cypress_dpm.c | 2 +- drivers/gpu/drm/radeon/evergreen.c | 2 +- drivers/gpu/drm/radeon/kv_dpm.c | 3 +- drivers/gpu/drm/radeon/ni.c | 4 +- drivers/gpu/drm/radeon/ni_dpm.c | 3 +- drivers/gpu/drm/radeon/r100.c | 6 +- drivers/gpu/drm/radeon/r300.c | 2 +- drivers/gpu/drm/radeon/r420.c | 2 +- drivers/gpu/drm/radeon/r600.c | 6 +- drivers/gpu/drm/radeon/radeon_agp.c | 3 +- drivers/gpu/drm/radeon/radeon_asic.c | 2 +- drivers/gpu/drm/radeon/radeon_atombios.c | 3 +- drivers/gpu/drm/radeon/radeon_bios.c | 4 +- drivers/gpu/drm/radeon/radeon_clocks.c | 3 +- drivers/gpu/drm/radeon/radeon_combios.c | 3 +- drivers/gpu/drm/radeon/radeon_connectors.c | 143 ++- drivers/gpu/drm/radeon/radeon_cs.c | 2 +- drivers/gpu/drm/radeon/radeon_device.c | 2 +- drivers/gpu/drm/radeon/radeon_display.c | 2 +- drivers/gpu/drm/radeon/radeon_encoders.c | 3 +- drivers/gpu/drm/radeon/radeon_fb.c | 4 +- drivers/gpu/drm/radeon/radeon_gart.c | 2 +- drivers/gpu/drm/radeon/radeon_gem.c | 3 +- drivers/gpu/drm/radeon/radeon_i2c.c | 2 +- drivers/gpu/drm/radeon/radeon_irq_kms.c | 2 +- drivers/gpu/drm/radeon/radeon_kms.c | 2 +- drivers/gpu/drm/radeon/radeon_legacy_encoders.c | 2 +- drivers/gpu/drm/radeon/radeon_pm.c | 2 +- drivers/gpu/drm/radeon/radeon_ttm.c | 31 +- drivers/gpu/drm/radeon/rs600.c | 2 +- drivers/gpu/drm/radeon/rs690.c | 2 +- drivers/gpu/drm/radeon/rs780_dpm.c | 3 +- drivers/gpu/drm/radeon/rv770.c | 2 +- drivers/gpu/drm/radeon/si.c | 4 +- drivers/gpu/drm/radeon/si_dpm.c | 3 +- drivers/gpu/drm/radeon/trinity_dpm.c | 3 +- drivers/gpu/drm/rcar-du/rcar_du_crtc.c | 10 +- drivers/gpu/drm/rcar-du/rcar_lvds.c | 2 +- drivers/gpu/drm/rockchip/Kconfig | 8 +- drivers/gpu/drm/rockchip/dw-mipi-dsi-rockchip.c | 2 +- drivers/gpu/drm/rockchip/inno_hdmi.c | 6 +- drivers/gpu/drm/rockchip/rk3066_hdmi.c | 7 +- drivers/gpu/drm/rockchip/rockchip_drm_fb.c | 54 +- drivers/gpu/drm/rockchip/rockchip_drm_fbdev.c | 2 +- drivers/gpu/drm/rockchip/rockchip_lvds.c | 2 +- drivers/gpu/drm/savage/savage_drv.c | 2 +- drivers/gpu/drm/scheduler/sched_main.c | 27 + drivers/gpu/drm/selftests/Makefile | 3 +- drivers/gpu/drm/selftests/drm_modeset_selftests.h | 4 + .../gpu/drm/selftests/test-drm_modeset_common.h | 7 + drivers/gpu/drm/selftests/test-drm_rect.c | 223 +++++ drivers/gpu/drm/sis/sis_drv.c | 2 +- drivers/gpu/drm/sti/sti_dvo.c | 2 +- drivers/gpu/drm/sun4i/Kconfig | 16 +- drivers/gpu/drm/sun4i/sun4i_layer.c | 4 +- drivers/gpu/drm/sun4i/sun4i_lvds.c | 2 +- drivers/gpu/drm/sun4i/sun4i_rgb.c | 2 +- drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c | 2 +- drivers/gpu/drm/sun4i/sun8i_mixer.c | 8 +- drivers/gpu/drm/tdfx/tdfx_drv.c | 2 +- drivers/gpu/drm/tegra/fb.c | 2 +- drivers/gpu/drm/tegra/gem.c | 40 - drivers/gpu/drm/tegra/output.c | 2 +- drivers/gpu/drm/tilcdc/Makefile | 1 - drivers/gpu/drm/tilcdc/tilcdc_drv.c | 11 +- drivers/gpu/drm/tilcdc/tilcdc_tfp410.c | 379 -------- drivers/gpu/drm/tilcdc/tilcdc_tfp410.h | 15 - drivers/gpu/drm/tiny/st7586.c | 2 +- drivers/gpu/drm/ttm/ttm_bo.c | 36 - drivers/gpu/drm/ttm/ttm_bo_util.c | 1 - drivers/gpu/drm/ttm/ttm_bo_vm.c | 205 +++-- drivers/gpu/drm/ttm/ttm_tt.c | 5 +- drivers/gpu/drm/tve200/tve200_drv.c | 2 +- drivers/gpu/drm/udl/Kconfig | 3 +- drivers/gpu/drm/udl/Makefile | 2 +- drivers/gpu/drm/udl/udl_connector.c | 21 +- drivers/gpu/drm/udl/udl_dmabuf.c | 255 ------ drivers/gpu/drm/udl/udl_drv.c | 47 +- drivers/gpu/drm/udl/udl_drv.h | 85 +- drivers/gpu/drm/udl/udl_encoder.c | 70 -- drivers/gpu/drm/udl/udl_fb.c | 527 ----------- drivers/gpu/drm/udl/udl_gem.c | 253 ++---- drivers/gpu/drm/udl/udl_main.c | 9 - drivers/gpu/drm/udl/udl_modeset.c | 378 ++++---- drivers/gpu/drm/udl/udl_transfer.c | 12 +- drivers/gpu/drm/vc4/Kconfig | 8 +- drivers/gpu/drm/vc4/vc4_dsi.c | 18 +- drivers/gpu/drm/via/via_dmablit.c | 2 +- drivers/gpu/drm/via/via_drv.c | 2 +- drivers/gpu/drm/via/via_map.c | 3 +- drivers/gpu/drm/virtio/virtgpu_drv.c | 2 +- drivers/gpu/drm/virtio/virtgpu_drv.h | 5 +- drivers/gpu/drm/virtio/virtgpu_ioctl.c | 22 +- drivers/gpu/drm/virtio/virtgpu_plane.c | 70 +- drivers/gpu/drm/virtio/virtgpu_vq.c | 19 +- drivers/gpu/drm/vkms/vkms_composer.c | 8 +- drivers/gpu/drm/vkms/vkms_drv.c | 8 +- drivers/gpu/drm/vmwgfx/vmwgfx_fb.c | 2 +- drivers/gpu/drm/vmwgfx/vmwgfx_prime.c | 33 - drivers/gpu/drm/xen/xen_drm_front_kms.c | 9 +- drivers/gpu/host1x/job.c | 21 +- drivers/gpu/vga/Kconfig | 2 +- drivers/hid/hid-picolcd_fb.c | 3 +- .../media/common/videobuf2/videobuf2-dma-contig.c | 8 - drivers/media/common/videobuf2/videobuf2-dma-sg.c | 8 - drivers/media/common/videobuf2/videobuf2-vmalloc.c | 8 - drivers/media/pci/ivtv/ivtvfb.c | 3 +- drivers/media/platform/vivid/vivid-osd.c | 3 +- drivers/misc/fastrpc.c | 8 - drivers/staging/android/ion/ion.c | 14 - drivers/tee/tee_shm.c | 6 - drivers/video/fbdev/68328fb.c | 2 +- drivers/video/fbdev/acornfb.c | 2 +- drivers/video/fbdev/amba-clcd.c | 2 +- drivers/video/fbdev/amifb.c | 2 +- drivers/video/fbdev/arcfb.c | 2 +- drivers/video/fbdev/arkfb.c | 2 +- drivers/video/fbdev/asiliantfb.c | 2 +- drivers/video/fbdev/atmel_lcdfb.c | 2 +- drivers/video/fbdev/aty/aty128fb.c | 2 +- drivers/video/fbdev/aty/atyfb.h | 2 +- drivers/video/fbdev/aty/atyfb_base.c | 6 +- drivers/video/fbdev/aty/mach64_cursor.c | 4 +- drivers/video/fbdev/aty/radeon_base.c | 2 +- drivers/video/fbdev/au1100fb.c | 2 +- drivers/video/fbdev/au1200fb.c | 2 +- drivers/video/fbdev/broadsheetfb.c | 2 +- drivers/video/fbdev/bw2.c | 2 +- drivers/video/fbdev/carminefb.c | 2 +- drivers/video/fbdev/cg14.c | 2 +- drivers/video/fbdev/cg3.c | 2 +- drivers/video/fbdev/cg6.c | 2 +- drivers/video/fbdev/chipsfb.c | 2 +- drivers/video/fbdev/cirrusfb.c | 2 +- drivers/video/fbdev/clps711x-fb.c | 2 +- drivers/video/fbdev/cobalt_lcdfb.c | 2 +- drivers/video/fbdev/controlfb.c | 2 +- drivers/video/fbdev/core/fb_defio.c | 3 - drivers/video/fbdev/core/fbmem.c | 22 +- drivers/video/fbdev/cyber2000fb.c | 2 +- drivers/video/fbdev/da8xx-fb.c | 2 +- drivers/video/fbdev/dnfb.c | 2 +- drivers/video/fbdev/efifb.c | 2 +- drivers/video/fbdev/ep93xx-fb.c | 2 +- drivers/video/fbdev/fb-puv3.c | 2 +- drivers/video/fbdev/ffb.c | 2 +- drivers/video/fbdev/fm2fb.c | 2 +- drivers/video/fbdev/fsl-diu-fb.c | 2 +- drivers/video/fbdev/g364fb.c | 2 +- drivers/video/fbdev/gbefb.c | 2 +- drivers/video/fbdev/geode/gx1fb_core.c | 2 +- drivers/video/fbdev/geode/gxfb_core.c | 2 +- drivers/video/fbdev/geode/lxfb_core.c | 2 +- drivers/video/fbdev/goldfishfb.c | 2 +- drivers/video/fbdev/grvga.c | 2 +- drivers/video/fbdev/gxt4500.c | 2 +- drivers/video/fbdev/hecubafb.c | 2 +- drivers/video/fbdev/hgafb.c | 2 +- drivers/video/fbdev/hitfb.c | 2 +- drivers/video/fbdev/hpfb.c | 2 +- drivers/video/fbdev/hyperv_fb.c | 2 +- drivers/video/fbdev/i740fb.c | 2 +- drivers/video/fbdev/imsttfb.c | 2 +- drivers/video/fbdev/imxfb.c | 2 +- drivers/video/fbdev/intelfb/intelfb.h | 2 +- drivers/video/fbdev/intelfb/intelfbdrv.c | 2 +- drivers/video/fbdev/kyro/fbdev.c | 2 +- drivers/video/fbdev/leo.c | 2 +- drivers/video/fbdev/macfb.c | 2 +- drivers/video/fbdev/matrox/matroxfb_crtc2.c | 2 +- drivers/video/fbdev/maxinefb.c | 2 +- drivers/video/fbdev/mb862xx/mb862xxfb.h | 2 +- drivers/video/fbdev/mb862xx/mb862xxfb_accel.c | 15 +- drivers/video/fbdev/mb862xx/mb862xxfbdrv.c | 4 +- drivers/video/fbdev/mbx/mbxfb.c | 2 +- drivers/video/fbdev/metronomefb.c | 2 +- drivers/video/fbdev/mmp/fb/mmpfb.c | 2 +- drivers/video/fbdev/mx3fb.c | 5 +- drivers/video/fbdev/neofb.c | 2 +- drivers/video/fbdev/nvidia/nvidia.c | 20 +- drivers/video/fbdev/ocfb.c | 2 +- drivers/video/fbdev/offb.c | 2 +- drivers/video/fbdev/omap/omapfb_main.c | 2 +- drivers/video/fbdev/omap2/omapfb/omapfb-main.c | 2 +- drivers/video/fbdev/p9100.c | 2 +- drivers/video/fbdev/platinumfb.c | 2 +- drivers/video/fbdev/pm2fb.c | 2 +- drivers/video/fbdev/pm3fb.c | 2 +- drivers/video/fbdev/pmag-aa-fb.c | 2 +- drivers/video/fbdev/pmag-ba-fb.c | 2 +- drivers/video/fbdev/pmagb-b-fb.c | 2 +- drivers/video/fbdev/ps3fb.c | 2 +- drivers/video/fbdev/pvr2fb.c | 2 +- drivers/video/fbdev/pxa168fb.c | 2 +- drivers/video/fbdev/pxafb.c | 4 +- drivers/video/fbdev/q40fb.c | 2 +- drivers/video/fbdev/riva/fbdev.c | 2 +- drivers/video/fbdev/s3c-fb.c | 2 +- drivers/video/fbdev/s3c2410fb.c | 2 +- drivers/video/fbdev/s3fb.c | 2 +- drivers/video/fbdev/sa1100fb.c | 2 +- drivers/video/fbdev/savage/savagefb_driver.c | 2 +- drivers/video/fbdev/sh7760fb.c | 2 +- drivers/video/fbdev/sh_mobile_lcdcfb.c | 4 +- drivers/video/fbdev/simplefb.c | 2 +- drivers/video/fbdev/sis/sis_main.c | 2 +- drivers/video/fbdev/skeletonfb.c | 2 +- drivers/video/fbdev/sm712fb.c | 2 +- drivers/video/fbdev/smscufx.c | 3 +- drivers/video/fbdev/ssd1307fb.c | 2 +- drivers/video/fbdev/sstfb.c | 2 +- drivers/video/fbdev/stifb.c | 2 +- drivers/video/fbdev/sunxvr1000.c | 2 +- drivers/video/fbdev/sunxvr2500.c | 2 +- drivers/video/fbdev/sunxvr500.c | 2 +- drivers/video/fbdev/tcx.c | 2 +- drivers/video/fbdev/tdfxfb.c | 2 +- drivers/video/fbdev/tgafb.c | 2 +- drivers/video/fbdev/tmiofb.c | 2 +- drivers/video/fbdev/tridentfb.c | 2 +- drivers/video/fbdev/udlfb.c | 1 - drivers/video/fbdev/uvesafb.c | 4 +- drivers/video/fbdev/valkyriefb.c | 2 +- drivers/video/fbdev/vesafb.c | 6 +- drivers/video/fbdev/vfb.c | 2 +- drivers/video/fbdev/vga16fb.c | 2 +- drivers/video/fbdev/vt8500lcdfb.c | 2 +- drivers/video/fbdev/vt8623fb.c | 2 +- drivers/video/fbdev/w100fb.c | 2 +- drivers/video/fbdev/wm8505fb.c | 2 +- drivers/video/fbdev/xen-fbfront.c | 2 +- drivers/video/fbdev/xilinxfb.c | 2 +- drivers/xen/gntdev-dmabuf.c | 23 - include/drm/drm_atomic.h | 30 +- include/drm/drm_bridge.h | 136 ++- include/drm/drm_color_mgmt.h | 25 +- include/drm/drm_connector.h | 16 +- include/drm/drm_dp_helper.h | 4 +- include/drm/drm_dp_mst_helper.h | 16 +- include/drm/drm_encoder.h | 7 +- include/drm/drm_fb_helper.h | 40 - include/drm/drm_gem.h | 4 +- include/drm/drm_gem_vram_helper.h | 1 - include/drm/drm_legacy.h | 29 +- include/drm/drm_mipi_dsi.h | 4 + include/drm/drm_panel.h | 58 +- include/drm/drm_pci.h | 19 +- include/drm/drm_print.h | 239 ++--- include/drm/drm_rect.h | 2 + include/drm/drm_scdc_helper.h | 6 +- include/drm/ttm/ttm_bo_api.h | 24 +- include/linux/dma-buf.h | 27 - include/linux/dma-heap.h | 59 ++ include/linux/fb.h | 3 +- include/linux/host1x.h | 13 - include/linux/platform_data/tc35876x.h | 11 - include/uapi/linux/dma-heap.h | 53 ++ include/video/mipi_display.h | 24 +- samples/vfio-mdev/mbochs.c | 16 - samples/vfio-mdev/mdpy-fb.c | 2 +- tools/testing/selftests/dmabuf-heaps/Makefile | 6 + tools/testing/selftests/dmabuf-heaps/dmabuf-heap.c | 396 +++++++++ 506 files changed, 9926 insertions(+), 6129 deletions(-) create mode 100644 Documentation/devicetree/bindings/display/dsi-controller.yaml create mode 100644 Documentation/devicetree/bindings/display/panel/logicpd,type28.yaml create mode 100644 Documentation/devicetree/bindings/display/panel/sony,acx424akp.yaml delete mode 100644 Documentation/devicetree/bindings/display/tilcdc/tfp410.txt create mode 100644 drivers/dma-buf/dma-heap.c create mode 100644 drivers/dma-buf/heaps/Kconfig create mode 100644 drivers/dma-buf/heaps/Makefile create mode 100644 drivers/dma-buf/heaps/cma_heap.c create mode 100644 drivers/dma-buf/heaps/heap-helpers.c create mode 100644 drivers/dma-buf/heaps/heap-helpers.h create mode 100644 drivers/dma-buf/heaps/system_heap.c delete mode 100644 drivers/gpu/drm/bridge/analogix-anx78xx.h create mode 100644 drivers/gpu/drm/bridge/analogix/analogix-anx6345.c rename drivers/gpu/drm/bridge/{ => analogix}/analogix-anx78xx.c (90%) create mode 100644 drivers/gpu/drm/bridge/analogix/analogix-anx78xx.h create mode 100644 drivers/gpu/drm/bridge/analogix/analogix-i2c-dptx.c create mode 100644 drivers/gpu/drm/bridge/analogix/analogix-i2c-dptx.h create mode 100644 drivers/gpu/drm/bridge/analogix/analogix-i2c-txcommon.h delete mode 100644 drivers/gpu/drm/mediatek/mtk_drm_fb.c delete mode 100644 drivers/gpu/drm/mediatek/mtk_drm_fb.h create mode 100644 drivers/gpu/drm/meson/meson_osd_afbcd.c create mode 100644 drivers/gpu/drm/meson/meson_osd_afbcd.h create mode 100644 drivers/gpu/drm/meson/meson_rdma.c create mode 100644 drivers/gpu/drm/meson/meson_rdma.h create mode 100644 drivers/gpu/drm/panel/panel-boe-himax8279d.c rename drivers/gpu/drm/{ => r128}/ati_pcigart.c (98%) rename {include/drm => drivers/gpu/drm/r128}/ati_pcigart.h (100%) create mode 100644 drivers/gpu/drm/selftests/test-drm_rect.c delete mode 100644 drivers/gpu/drm/tilcdc/tilcdc_tfp410.c delete mode 100644 drivers/gpu/drm/tilcdc/tilcdc_tfp410.h delete mode 100644 drivers/gpu/drm/udl/udl_dmabuf.c delete mode 100644 drivers/gpu/drm/udl/udl_encoder.c delete mode 100644 drivers/gpu/drm/udl/udl_fb.c create mode 100644 include/linux/dma-heap.h delete mode 100644 include/linux/platform_data/tc35876x.h create mode 100644 include/uapi/linux/dma-heap.h create mode 100644 tools/testing/selftests/dmabuf-heaps/Makefile create mode 100644 tools/testing/selftests/dmabuf-heaps/dmabuf-heap.c _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx