[PULL] drm-misc-next

Hi Daniel and Dave, We keep adding support for panels at a high rate, is it still worth listing them individually under cross subsystem changes? First pull req for v5.3 here, enjoy! As I was writing this mail, I missed a fix in mtk_hdmi_hw_send_info_frame for the unhandled HDR case in switch, hope it's not too bad or I will send another. :) drm-misc-next-2019-05-23: drm-misc-next for v5.3: UAPI Changes: - Add HDR source metadata property. - Make drm.h compile on GNU/kFreeBSD by including stdint.h - Clarify how the userspace reviewer has to review new kernel UAPI. - Clarify that for using new UAPI, merging to drm-next or drm-misc-next should be enough. Cross-subsystem Changes: - video/hdmi: Add unpack function for DRM infoframes. - Device tree bindings: * Updating a property for Mali Midgard GPUs * Updating a property for STM32 DSI panel * Adding support for FriendlyELEC HD702E 800x1280 panel * Adding support for Evervision VGG804821 800x480 5.0" WVGA TFT panel * Adding support for the EDT ET035012DM6 3.5" 320x240 QVGA 24-bit RGB TFT. * Adding support for Three Five displays TFC S9700RTWV43TR-01B 800x480 panel with resistive touch found on TI's AM335X-EVM. * Adding support for EDT ETM0430G0DH6 480x272 panel. - Add OSD101T2587-53TS driver with DT bindings. - Add Samsung S6E63M0 panel driver with DT bindings. - Add VXT VL050-8048NT-C01 800x480 panel with DT bindings. - Dma-buf: - Make mmap callback actually optional. - Documentation updates. - Fix debugfs refcount inbalance. - Remove unused sync_dump function. Core Changes: - Add support for HDR infoframes and related EDID parsing. - Remove prime sg_table caching, now done inside dma-buf. - Add shiny new drm_gem_vram helpers for simple VRAM drivers; with some fixes to the new API on top. - Small fix to job cleanup without timeout handler. - Documentation fixes to drm_fourcc. - Replace lookups of drm_format with struct drm_format_info; remove functions that become obsolete by this conversion. - Remove double include in bridge/panel.c and some drivers. - Remove drmP.h include from drm/edid and drm/dp. - Fix null pointer deref in drm_fb_helper_hotplug_event(). - Remove most members from drm_fb_helper_crtc, only mode_set is kept. - Remove race of fb helpers with userspace; only restore mode when userspace is not master. - Move legacy setup from drm_file.c to drm_legacy_misc.c - Rework scheduler job destruction. - drm/bus was removed, remove from TODO. - Add __drm_atomic_helper_crtc_reset() to subclass crtc_state, and convert some drivers to use it (conversion is not complete yet). - Bump vblank timeout wait to 100 ms for atomic. Driver Changes: - sun4i: Use DRM_GEM_CMA_VMAP_DRIVER_OPS instead of definining manually. - v3d: Small cleanups, adding support for compute shaders, reservation/synchronization fixes and job management refactoring, fixes MMU and debugfs. - lima: Fix null pointer in irq handler on startup, set default timeout for scheduled jobs. - stm/ltdc: Assorted fixes and adding FB modifier support. - amdgpu: Avoid hw reset if guilty job was already signaled. - virtio: Add seqno to fences, add trace events, use correct flags for fence allocation. - Convert AST, bochs, mgag200, vboxvideo, hisilicon to the new drm_gem_vram API. - sun6i_mipi_dsi: Support DSI GENERIC_SHORT_WRITE_2 transfers. - bochs: Small fix to use PTR_RET_OR_ZERO and driver unload. - gma500: header fixes - cirrus: Remove unused files. The following changes since commit a188339ca5a396acc588e5851ed7e19f66b0ebd9: Linux 5.2-rc1 (2019-05-19 15:47:09 -0700) are available in the Git repository at: git://anongit.freedesktop.org/drm/drm-misc tags/drm-misc-next-2019-05-23 for you to fetch changes up to cbb56814fbe7fedd71cd6b29dc83bab2915a5b74: drm/virtio: remove irrelevant DRM_UNLOCKED flag (2019-05-23 12:16:01 +0200) ---------------------------------------------------------------- We keep adding support for panels at a high rate, is it still worth listing them individually? drm-misc-next for v5.3: UAPI Changes: - Add HDR source metadata property. - Make drm.h compile on GNU/kFreeBSD by including stdint.h - Clarify how the userspace reviewer has to review new kernel UAPI. - Clarify that for using new UAPI, merging to drm-next or drm-misc-next should be enough. Cross-subsystem Changes: - video/hdmi: Add unpack function for DRM infoframes. - Device tree bindings: * Updating a property for Mali Midgard GPUs * Updating a property for STM32 DSI panel * Adding support for FriendlyELEC HD702E 800x1280 panel * Adding support for Evervision VGG804821 800x480 5.0" WVGA TFT panel * Adding support for the EDT ET035012DM6 3.5" 320x240 QVGA 24-bit RGB TFT. * Adding support for Three Five displays TFC S9700RTWV43TR-01B 800x480 panel with resistive touch found on TI's AM335X-EVM. * Adding support for EDT ETM0430G0DH6 480x272 panel. - Add OSD101T2587-53TS driver with DT bindings. - Add Samsung S6E63M0 panel driver with DT bindings. - Add VXT VL050-8048NT-C01 800x480 panel with DT bindings. - Dma-buf: - Make mmap callback actually optional. - Documentation updates. - Fix debugfs refcount inbalance. - Remove unused sync_dump function. Core Changes: - Add support for HDR infoframes and related EDID parsing. - Remove prime sg_table caching, now done inside dma-buf. - Add shiny new drm_gem_vram helpers for simple VRAM drivers; with some fixes to the new API on top. - Small fix to job cleanup without timeout handler. - Documentation fixes to drm_fourcc. - Replace lookups of drm_format with struct drm_format_info; remove functions that become obsolete by this conversion. - Remove double include in bridge/panel.c and some drivers. - Remove drmP.h include from drm/edid and drm/dp. - Fix null pointer deref in drm_fb_helper_hotplug_event(). - Remove most members from drm_fb_helper_crtc, only mode_set is kept. - Remove race of fb helpers with userspace; only restore mode when userspace is not master. - Move legacy setup from drm_file.c to drm_legacy_misc.c - Rework scheduler job destruction. - drm/bus was removed, remove from TODO. - Add __drm_atomic_helper_crtc_reset() to subclass crtc_state, and convert some drivers to use it (conversion is not complete yet). - Bump vblank timeout wait to 100 ms for atomic. Driver Changes: - sun4i: Use DRM_GEM_CMA_VMAP_DRIVER_OPS instead of definining manually. - v3d: Small cleanups, adding support for compute shaders, reservation/synchronization fixes and job management refactoring, fixes MMU and debugfs. - lima: Fix null pointer in irq handler on startup, set default timeout for scheduled jobs. - stm/ltdc: Assorted fixes and adding FB modifier support. - amdgpu: Avoid hw reset if guilty job was already signaled. - virtio: Add seqno to fences, add trace events, use correct flags for fence allocation. - Convert AST, bochs, mgag200, vboxvideo, hisilicon to the new drm_gem_vram API. - sun6i_mipi_dsi: Support DSI GENERIC_SHORT_WRITE_2 transfers. - bochs: Small fix to use PTR_RET_OR_ZERO and driver unload. - gma500: header fixes - cirrus: Remove unused files. ---------------------------------------------------------------- Andreas Pretzsch (1): drm/panel: simple: Add support for EDT ET035012DM6 Andrew F. Davis (3): dma-buf: Remove leftover [un]map_atomic comments dma-buf: Update [un]map documentation to match the other functions dma-buf: Make mmap callback actually optional Andrey Grodzovsky (3): drm/sched: Keep s_fence->parent pointer drm/scheduler: Add flag to hint the release of guilty job. drm/amdgpu: Avoid HW reset if guilty job already signaled. Chia-I Wu (4): drm/virtio: set seqno for dma-fence drm/virtio: trace drm_fence_emit drm/virtio: add trace events for commands drm/virtio: allocate fences with GFP_KERNEL Chris Wilson (1): dma-buf: Remove unused sync_dump() Christian König (4): drm/scheduler: rework job destruction MAINTAINERS: drop Jerry as TTM maintainer dma-buf: start caching of sg_table objects v2 drm: remove prime sg_table caching Clément Péron (2): drm: panfrost: add optional bus_clock dt-bindings: gpu: mali-midgard: Add H6 mali gpu compatible Daniel Vetter (2): drm/doc: Improve docs for conn_state->best_encoder drm: Some ocd in drm_file.c Emil Velikov (1): drm/virtio: remove irrelevant DRM_UNLOCKED flag Eric Anholt (11): drm/v3d: Switch the type of job-> to reduce casting. drm/v3d: Refactor job management. drm/v3d: Add support for compute shader dispatch. drm/v3d: Drop reservation of a shared slot in the dma-buf reservations. drm/v3d: Add missing implicit synchronization. drm/doc: Allow new UAPI to be used once it's in drm-next/drm-misc-next. drm/doc: Document expectation that userspace review looks at kernel uAPI. drm/v3d: Fix debugfs reads of MMU regs. drm/v3d: Set the correct DMA mask according to the MMU's limits. drm/v3d: Dump V3D error debug registers in debugfs, and one at reset. drm/v3d: Fix and extend MMU error handling. Erico Nunes (2): drm/lima: add timeout to drm scheduler init drm/scheduler: Fix job cleanup without timeout handler Fabien Dessenne (2): drm/stm: ltdc: manage the get_irq probe defer case drm/stm: ltdc: return appropriate error code during probe Fabio Estevam (3): dt-bindings: Add vendor prefix for VXT Ltd dt-bindings: Add VXT VL050-8048NT-C01 panel bindings drm/panel: simple: Add support for VXT VL050-8048NT-C01 panel Gerd Hoffmann (1): drm/cirrus: remove leftover files Icenowy Zheng (1): dt-bindings: gpu: add bus clock for Mali Midgard GPUs Jagadeesh Pagadala (1): gpu/drm: Remove duplicate headers Jagan Teki (3): dt-bindings: display: Document FriendlyELEC HD702E LCD panel drm/panel: simple: Add FriendlyELEC HD702E 800x1280 LCD panel drm/sun4i: sun6i_mipi_dsi: Support DSI GENERIC_SHORT_WRITE_2 transfer James Clarke (1): drm: Fix drm.h uapi header for GNU/kFreeBSD Jani Nikula (2): drm/dp: drmP.h include removal drm/edid: drmP.h include removal Jonas Karlman (1): drm: Add reference counting on HDR metadata blob Jonathan Bakker (1): dt-bindings: panel: Add Samsung S6E63M0 panel documentation Jyri Sarha (2): dt-bindings: drm/panel: simple: Add binding for TFC S9700RTWV43TR-01B drm/panel: simple: Add TFC S9700RTWV43TR-01B 800x480 panel support Jérôme Glisse (1): dma-buf: balance refcount inbalance Linus Walleij (1): drm/atomic-helper: Bump vblank timeout to 100 ms Maarten Lankhorst (9): drm/atomic: Create __drm_atomic_helper_crtc_reset() for subclassing crtc_state. drm/docs: Fix typo in __drm_atomic_helper_connector_reset drm/i915: Use the new __drm_atomic_helper_crtc_reset() helper. drm/mali: Convert to using __drm_atomic_helper_crtc_reset() for reset. drm/rockchip: Convert to using __drm_atomic_helper_crtc_reset() for reset. drm/tegra: Convert to using __drm_atomic_helper_crtc_reset() for reset. drm/msm: Convert to using __drm_atomic_helper_crtc_reset() for reset. drm/vkms: Convert to using __drm_atomic_helper_crtc_reset() for reset. Merge remote-tracking branch 'drm/drm-next' into drm-misc-next Marco Felsch (4): dt-bindings: display: add EDT ET035012DM6 display description dt-bindings: Add vendor prefix for Evervision Electronics dt-bindings: Add Evervision VGG804821 panel drm/panel: simple: Add Evervision VGG804821 panel support Marek Vasut (2): dt-bindings: display: Add ETM0430G0DH6 bindings drm/panel: Add support for EDT ETM0430G0DH6 Matthias Kaehlcke (1): dt-bindings: gpu: add #cooling-cells property to the ARM Mali Midgard GPU binding Maxime Ripard (8): drm/rockchip: Change the scl_vop_cal_scl_fac to pass drm_format_info drm: Remove users of drm_format_num_planes drm: Remove users of drm_format_(horz|vert)_chroma_subsampling drm/fourcc: Pass the format_info pointer to drm_format_plane_cpp drm/fourcc: Pass the format_info pointer to drm_format_plane_width/height drm: Replace instances of drm_format_info by drm_get_format_info drm: Remove users of drm_format_info_plane_cpp drm/fourcc: Fix the parameters name in the documentation Noralf Trønnes (4): drm/fb-helper: Avoid race with DRM userspace drm/fb-helper: No need to cache rotation and sw_rotations drm/fb-helper: Remove drm_fb_helper_crtc->{x, y, desired_mode} drm/fb-helper: Fix drm_fb_helper_hotplug_event() NULL ptr argument Paul Kocialkowski (1): drm/sun4i: Use DRM_GEM_CMA_VMAP_DRIVER_OPS for GEM operations Paweł Chmiel (1): drm/panel: Add driver for Samsung S6E63M0 panel Peter Griffin (1): drm/lima: handle shared irq case for lima_pp_bcast_irq_handler Peter Ujfalusi (5): dt-bindings: display: Add bindings for OSD101T2045-53TS drm/panel: simple: Add support for OSD101T2045-53TS dt-bindings: display: Add bindings for OSD101T2587-53TS panel drm/panel: Add OSD101T2587-53TS driver drm/panel: simple: Fix panel_simple_dsi_probe Philip Yang (1): drm: increase drm mmap_range size to 1TB Philippe Cornu (1): drm/stm: ltdc: use DRM_WARN for fifo & transfer error messages Robert Foss (1): drm/virtio: Remove redundant return type Sabyasachi Gupta (1): drm/bridge: Remove duplicate header Sam Bobroff (1): drm/bochs: Fix connector leak during driver unload Sam Ravnborg (6): drm: drop drm_bus from todo drm/gma500: remove empty gma_drm.h header file drm/gma500: drop drmP.h from header files drm/gma500: make local header files more self-contained drm/gma500: drop use of DRM_UDELAY wrapper drm/gma500: drop drmp.h include from all .c files Sean Paul (1): Merge drm/drm-next into drm-misc-next Souptick Joarder (1): drm/panel: Remove duplicate header Thierry Reding (1): MAINTAINERS: Add Sam as reviewer for drm/panel Thomas Zimmermann (25): drm: Add |struct drm_gem_vram_object| and helpers drm: Add |struct drm_gem_vram_object| callbacks for |struct ttm_bo_driver| drm: Add |struct drm_gem_vram_object| callbacks for |struct drm_driver| drm: Add drm_gem_vram_fill_create_dumb() to create dumb buffers drm: Add simple PRIME helpers for GEM VRAM drm: Add VRAM MM, a simple memory manager for dedicated VRAM drm: Add default instance for VRAM MM callback functions drm: Integrate VRAM MM into struct drm_device drm/ast: Convert AST driver to |struct drm_gem_vram_object| drm/ast: Convert AST driver to VRAM MM drm/ast: Replace mapping code with drm_gem_vram_{kmap/kunmap}() drm/bochs: Convert bochs driver to |struct drm_gem_vram_object| drm/bochs: Convert bochs driver to VRAM MM drm/mgag200: Convert mgag200 driver to |struct drm_gem_vram_object| drm/mgag200: Convert mgag200 driver to VRAM MM drm/mgag200: Replace mapping code with drm_gem_vram_{kmap/kunmap}() drm/vboxvideo: Convert vboxvideo driver to |struct drm_gem_vram_object| drm/vboxvideo: Convert vboxvideo driver to VRAM MM drm/hisilicon: Convert hibmc-drm driver to |struct drm_gem_vram_object| drm/hisilicon: Convert hibmc-drm driver to VRAM MM drm: Add drm_gem_vram_{pin/unpin}_reserved() and convert mgag200 drm: Reserve/unreserve GEM VRAM BOs from within pin/unpin functions drm: Replace drm_gem_vram_push_to_system() with kunmap + unpin drm: Rename reserve/unreserve to lock/unlock in GEM VRAM helpers drm: Assert that BO is locked in drm_gem_vram_{pin, unpin}_locked() Uma Shankar (4): drm: Add HDR source metadata property drm: Parse HDR metadata info from EDID drm: Enable HDR infoframe support video/hdmi: Add Unpack function for DRM infoframe Ville Syrjälä (1): drm: Add HLG EOTF Yannick Fertré (8): drm/stm: ltdc: disable hw interrupts before its handler init drm/stm: ltdc: fix data enable polarity drm/stm: ltdc: update planes at next vblank to avoid partial refresh drm/stm: ltdc: limit number of layer to avoid memory overflow drm/stm: ltdc: reset controller to avoid partial refresh drm/stm: ltdc: add modifier support dt-bindings: display: stm32: add supply property to DSI controller drm/stm: dsi: add regulator support kbuild test robot (1): drm/bochs: fix ptr_ret.cocci warnings .../bindings/display/panel/edt,et-series.txt | 16 + .../display/panel/evervision,vgg804821.txt | 12 + .../bindings/display/panel/friendlyarm,hd702e.txt | 32 + .../display/panel/osddisplays,osd101t2045-53ts.txt | 11 + .../display/panel/osddisplays,osd101t2587-53ts.txt | 14 + .../bindings/display/panel/samsung,s6e63m0.txt | 33 + .../display/panel/tfc,s9700rtwv43tr-01b.txt | 15 + .../bindings/display/panel/vl050_8048nt_c01.txt | 12 + .../devicetree/bindings/display/st,stm32-ltdc.txt | 3 + .../devicetree/bindings/gpu/arm,mali-midgard.txt | 19 +- .../devicetree/bindings/vendor-prefixes.txt | 468 +++++++++++++ Documentation/gpu/drm-mm.rst | 34 +- Documentation/gpu/drm-uapi.rst | 10 +- Documentation/gpu/todo.rst | 27 +- MAINTAINERS | 2 +- drivers/dma-buf/dma-buf.c | 39 +- drivers/dma-buf/sync_debug.c | 26 - drivers/dma-buf/sync_debug.h | 1 - drivers/gpu/drm/Kconfig | 7 + drivers/gpu/drm/Makefile | 5 + drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 146 ++-- drivers/gpu/drm/amd/amdgpu/amdgpu_fb.c | 4 +- drivers/gpu/drm/arm/malidp_crtc.c | 28 +- drivers/gpu/drm/arm/malidp_hw.c | 3 +- drivers/gpu/drm/arm/malidp_mw.c | 2 +- drivers/gpu/drm/arm/malidp_planes.c | 8 +- drivers/gpu/drm/armada/armada_fb.c | 3 +- drivers/gpu/drm/ast/Kconfig | 3 +- drivers/gpu/drm/ast/ast_drv.c | 13 +- drivers/gpu/drm/ast/ast_drv.h | 71 +- drivers/gpu/drm/ast/ast_fb.c | 41 +- drivers/gpu/drm/ast/ast_main.c | 77 +- drivers/gpu/drm/ast/ast_mode.c | 132 ++-- drivers/gpu/drm/ast/ast_ttm.c | 302 +------- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c | 9 +- drivers/gpu/drm/bochs/Kconfig | 2 +- drivers/gpu/drm/bochs/bochs.h | 54 +- drivers/gpu/drm/bochs/bochs_drv.c | 24 +- drivers/gpu/drm/bochs/bochs_kms.c | 18 +- drivers/gpu/drm/bochs/bochs_mm.c | 427 +----------- drivers/gpu/drm/bridge/panel.c | 3 +- drivers/gpu/drm/cirrus/cirrus_drv.h | 250 ------- drivers/gpu/drm/cirrus/cirrus_ttm.c | 337 --------- drivers/gpu/drm/drm_atomic_helper.c | 2 +- drivers/gpu/drm/drm_atomic_state_helper.c | 41 +- drivers/gpu/drm/drm_atomic_uapi.c | 12 + drivers/gpu/drm/drm_auth.c | 20 + drivers/gpu/drm/drm_client.c | 3 +- drivers/gpu/drm/drm_connector.c | 6 + drivers/gpu/drm/drm_dp_aux_dev.c | 8 +- drivers/gpu/drm/drm_dp_dual_mode_helper.c | 4 +- drivers/gpu/drm/drm_dp_helper.c | 12 +- drivers/gpu/drm/drm_dp_mst_topology.c | 13 +- drivers/gpu/drm/drm_edid.c | 135 +++- drivers/gpu/drm/drm_edid_load.c | 7 +- drivers/gpu/drm/drm_fb_helper.c | 246 +++---- drivers/gpu/drm/drm_file.c | 122 ++-- drivers/gpu/drm/drm_format_helper.c | 4 +- drivers/gpu/drm/drm_fourcc.c | 118 ---- drivers/gpu/drm/drm_gem_vram_helper.c | 772 +++++++++++++++++++++ drivers/gpu/drm/drm_internal.h | 2 + drivers/gpu/drm/drm_legacy.h | 2 + drivers/gpu/drm/drm_legacy_misc.c | 20 + drivers/gpu/drm/drm_prime.c | 77 +- drivers/gpu/drm/drm_vram_helper_common.c | 96 +++ drivers/gpu/drm/drm_vram_mm_helper.c | 295 ++++++++ drivers/gpu/drm/etnaviv/etnaviv_dump.c | 5 - drivers/gpu/drm/etnaviv/etnaviv_sched.c | 2 +- drivers/gpu/drm/gma500/accel_2d.c | 18 +- drivers/gpu/drm/gma500/blitter.h | 2 + drivers/gpu/drm/gma500/cdv_device.c | 13 +- drivers/gpu/drm/gma500/cdv_device.h | 4 + drivers/gpu/drm/gma500/cdv_intel_crt.c | 8 +- drivers/gpu/drm/gma500/cdv_intel_display.c | 10 +- drivers/gpu/drm/gma500/cdv_intel_dp.c | 9 +- drivers/gpu/drm/gma500/cdv_intel_hdmi.c | 9 +- drivers/gpu/drm/gma500/cdv_intel_lvds.c | 9 +- drivers/gpu/drm/gma500/framebuffer.c | 26 +- drivers/gpu/drm/gma500/framebuffer.h | 1 - drivers/gpu/drm/gma500/gem.c | 5 +- drivers/gpu/drm/gma500/gma_device.c | 1 - drivers/gpu/drm/gma500/gma_device.h | 1 + drivers/gpu/drm/gma500/gma_display.c | 12 +- drivers/gpu/drm/gma500/gma_display.h | 3 + drivers/gpu/drm/gma500/gtt.c | 5 +- drivers/gpu/drm/gma500/gtt.h | 1 - drivers/gpu/drm/gma500/intel_bios.c | 6 +- drivers/gpu/drm/gma500/intel_bios.h | 3 +- drivers/gpu/drm/gma500/intel_gmbus.c | 11 +- drivers/gpu/drm/gma500/intel_i2c.c | 4 +- drivers/gpu/drm/gma500/mdfld_device.c | 16 +- drivers/gpu/drm/gma500/mdfld_dsi_dpi.c | 4 +- drivers/gpu/drm/gma500/mdfld_dsi_output.c | 12 +- drivers/gpu/drm/gma500/mdfld_dsi_output.h | 8 +- drivers/gpu/drm/gma500/mdfld_dsi_pkg_sender.c | 4 +- drivers/gpu/drm/gma500/mdfld_intel_display.c | 11 +- drivers/gpu/drm/gma500/mdfld_tmd_vid.c | 2 + drivers/gpu/drm/gma500/mid_bios.c | 5 +- drivers/gpu/drm/gma500/mid_bios.h | 1 + drivers/gpu/drm/gma500/mmu.c | 6 +- drivers/gpu/drm/gma500/oaktrail.h | 2 + drivers/gpu/drm/gma500/oaktrail_crtc.c | 8 +- drivers/gpu/drm/gma500/oaktrail_device.c | 20 +- drivers/gpu/drm/gma500/oaktrail_hdmi.c | 8 +- drivers/gpu/drm/gma500/oaktrail_lvds.c | 6 +- drivers/gpu/drm/gma500/oaktrail_lvds_i2c.c | 11 +- drivers/gpu/drm/gma500/power.h | 4 +- drivers/gpu/drm/gma500/psb_device.c | 12 +- drivers/gpu/drm/gma500/psb_drv.c | 33 +- drivers/gpu/drm/gma500/psb_drv.h | 16 +- drivers/gpu/drm/gma500/psb_intel_display.c | 7 +- drivers/gpu/drm/gma500/psb_intel_lvds.c | 5 +- drivers/gpu/drm/gma500/psb_intel_modes.c | 2 +- drivers/gpu/drm/gma500/psb_intel_sdvo.c | 15 +- drivers/gpu/drm/gma500/psb_irq.c | 9 +- drivers/gpu/drm/gma500/psb_irq.h | 2 +- drivers/gpu/drm/gma500/psb_lid.c | 6 +- drivers/gpu/drm/gma500/tc35876x-dsi-lvds.c | 13 +- drivers/gpu/drm/hisilicon/hibmc/Kconfig | 2 +- drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_de.c | 19 +- drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.c | 14 +- drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.h | 33 +- drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_fbdev.c | 37 +- drivers/gpu/drm/hisilicon/hibmc/hibmc_ttm.c | 341 +-------- drivers/gpu/drm/i915/intel_display.c | 5 +- drivers/gpu/drm/i915/intel_sprite.c | 3 +- drivers/gpu/drm/imx/ipuv3-plane.c | 15 +- drivers/gpu/drm/lima/lima_drv.c | 2 +- drivers/gpu/drm/lima/lima_pp.c | 8 +- drivers/gpu/drm/lima/lima_sched.c | 13 +- drivers/gpu/drm/mediatek/mtk_drm_fb.c | 8 +- drivers/gpu/drm/meson/meson_overlay.c | 14 +- drivers/gpu/drm/mgag200/Kconfig | 2 +- drivers/gpu/drm/mgag200/mgag200_cursor.c | 96 +-- drivers/gpu/drm/mgag200/mgag200_drv.c | 13 +- drivers/gpu/drm/mgag200/mgag200_drv.h | 74 +- drivers/gpu/drm/mgag200/mgag200_fb.c | 41 +- drivers/gpu/drm/mgag200/mgag200_main.c | 87 +-- drivers/gpu/drm/mgag200/mgag200_mode.c | 59 +- drivers/gpu/drm/mgag200/mgag200_ttm.c | 301 +------- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 6 +- drivers/gpu/drm/msm/disp/dpu1/dpu_formats.c | 9 +- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 9 +- drivers/gpu/drm/msm/disp/mdp5/mdp5_crtc.c | 31 +- drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c | 24 +- drivers/gpu/drm/msm/disp/mdp5/mdp5_smp.c | 7 +- drivers/gpu/drm/msm/msm_fb.c | 18 +- drivers/gpu/drm/nouveau/dispnv50/head.c | 13 +- drivers/gpu/drm/nouveau/nvkm/subdev/bus/nv04.c | 2 - drivers/gpu/drm/omapdrm/omap_fb.c | 6 +- drivers/gpu/drm/panel/Kconfig | 18 + drivers/gpu/drm/panel/Makefile | 2 + drivers/gpu/drm/panel/panel-osd-osd101t2587-53ts.c | 254 +++++++ .../gpu/drm/panel/panel-raspberrypi-touchscreen.c | 1 - drivers/gpu/drm/panel/panel-samsung-s6e63m0.c | 514 ++++++++++++++ drivers/gpu/drm/panel/panel-simple.c | 212 +++++- drivers/gpu/drm/panfrost/panfrost_device.c | 22 + drivers/gpu/drm/panfrost/panfrost_device.h | 1 + drivers/gpu/drm/panfrost/panfrost_job.c | 2 +- drivers/gpu/drm/radeon/radeon_fb.c | 4 +- drivers/gpu/drm/rockchip/rockchip_drm_fb.c | 17 +- drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 39 +- drivers/gpu/drm/scheduler/sched_main.c | 174 +++-- drivers/gpu/drm/stm/dw_mipi_dsi-stm.c | 60 +- drivers/gpu/drm/stm/ltdc.c | 67 +- drivers/gpu/drm/sun4i/sun4i_drv.c | 16 +- drivers/gpu/drm/sun4i/sun6i_mipi_dsi.c | 1 + drivers/gpu/drm/tegra/dc.c | 17 +- drivers/gpu/drm/tegra/fb.c | 14 +- drivers/gpu/drm/v3d/v3d_debugfs.c | 35 +- drivers/gpu/drm/v3d/v3d_drv.c | 17 +- drivers/gpu/drm/v3d/v3d_drv.h | 106 +-- drivers/gpu/drm/v3d/v3d_fence.c | 2 + drivers/gpu/drm/v3d/v3d_gem.c | 552 +++++++++------ drivers/gpu/drm/v3d/v3d_irq.c | 55 +- drivers/gpu/drm/v3d/v3d_mmu.c | 7 +- drivers/gpu/drm/v3d/v3d_regs.h | 122 +++- drivers/gpu/drm/v3d/v3d_sched.c | 382 ++++++---- drivers/gpu/drm/v3d/v3d_trace.h | 94 +++ drivers/gpu/drm/vboxvideo/Kconfig | 2 +- drivers/gpu/drm/vboxvideo/vbox_drv.c | 12 +- drivers/gpu/drm/vboxvideo/vbox_drv.h | 75 +- drivers/gpu/drm/vboxvideo/vbox_fb.c | 22 +- drivers/gpu/drm/vboxvideo/vbox_main.c | 75 +- drivers/gpu/drm/vboxvideo/vbox_mode.c | 36 +- drivers/gpu/drm/vboxvideo/vbox_ttm.c | 355 +--------- drivers/gpu/drm/vc4/vc4_plane.c | 15 +- drivers/gpu/drm/virtio/Makefile | 2 +- drivers/gpu/drm/virtio/virtgpu_drv.h | 3 +- drivers/gpu/drm/virtio/virtgpu_fence.c | 25 +- drivers/gpu/drm/virtio/virtgpu_ioctl.c | 18 +- drivers/gpu/drm/virtio/virtgpu_trace.h | 52 ++ drivers/gpu/drm/virtio/virtgpu_trace_points.c | 5 + drivers/gpu/drm/virtio/virtgpu_vq.c | 10 + drivers/gpu/drm/vkms/vkms_crtc.c | 33 +- drivers/gpu/drm/zte/zx_plane.c | 6 +- drivers/video/hdmi.c | 257 +++++++ include/drm/drm_atomic_state_helper.h | 2 + include/drm/drm_connector.h | 14 + include/drm/drm_device.h | 4 + include/drm/drm_edid.h | 5 + include/drm/drm_fb_helper.h | 10 - include/drm/drm_fourcc.h | 50 +- include/drm/drm_gem_vram_helper.h | 162 +++++ include/drm/drm_mode_config.h | 7 + include/drm/drm_vram_mm_helper.h | 102 +++ include/drm/gma_drm.h | 25 - include/drm/gpu_scheduler.h | 8 +- include/linux/dma-buf.h | 47 +- include/linux/hdmi.h | 55 ++ include/uapi/drm/drm.h | 1 + include/uapi/drm/drm_mode.h | 23 + include/uapi/drm/v3d_drm.h | 28 + 213 files changed, 6270 insertions(+), 4571 deletions(-) create mode 100644 Documentation/devicetree/bindings/display/panel/evervision,vgg804821.txt create mode 100644 Documentation/devicetree/bindings/display/panel/friendlyarm,hd702e.txt create mode 100644 Documentation/devicetree/bindings/display/panel/osddisplays,osd101t2045-53ts.txt create mode 100644 Documentation/devicetree/bindings/display/panel/osddisplays,osd101t2587-53ts.txt create mode 100644 Documentation/devicetree/bindings/display/panel/samsung,s6e63m0.txt create mode 100644 Documentation/devicetree/bindings/display/panel/tfc,s9700rtwv43tr-01b.txt create mode 100644 Documentation/devicetree/bindings/display/panel/vl050_8048nt_c01.txt create mode 100644 Documentation/devicetree/bindings/vendor-prefixes.txt delete mode 100644 drivers/gpu/drm/cirrus/cirrus_drv.h delete mode 100644 drivers/gpu/drm/cirrus/cirrus_ttm.c create mode 100644 drivers/gpu/drm/drm_gem_vram_helper.c create mode 100644 drivers/gpu/drm/drm_vram_helper_common.c create mode 100644 drivers/gpu/drm/drm_vram_mm_helper.c create mode 100644 drivers/gpu/drm/panel/panel-osd-osd101t2587-53ts.c create mode 100644 drivers/gpu/drm/panel/panel-samsung-s6e63m0.c create mode 100644 drivers/gpu/drm/virtio/virtgpu_trace.h create mode 100644 drivers/gpu/drm/virtio/virtgpu_trace_points.c create mode 100644 include/drm/drm_gem_vram_helper.h create mode 100644 include/drm/drm_vram_mm_helper.h delete mode 100644 include/drm/gma_drm.h