Hi Dave, Smallish (by series count) -next pull request here comprised of a few moderately sized series'. We gained mode_valid() hooks for crtc/encoder/bridge, and now have a clearer seperation between irq and vblank. Additionally we cleaned up some legacy code by turfing drm_for_each_connector and a number of drm_vblank_cleanup copypasta. drm-misc-next-2017-06-02: Core Changes: - Stop proliferation of drm_vblank_cleanup by adding to the docs and deleting boilerplate (Daniel) - Roll out and use mode_valid hooks across crtc/encoder/bridge (Jose) - Add drm_vblank.[hc] to isolate vblank code from optional irq helpers (Daniel) Driver Changes: - Replace drm_for_each_connector with drm_for_each_connector_iter (Gustavo) - A couple misc driver fixes Cc: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxx> Cc: Jose Abreu <Jose.Abreu@xxxxxxxxxxxx> Cc: Daniel Vetter <daniel.vetter@xxxxxxxxx> Cheers, Sean The following changes since commit 71ebc9a3795818eab52e81bbcbdfae130ee35d9e: dma-buf/sync-file: Defer creation of sync_file->name (2017-05-24 13:08:29 -0300) are available in the git repository at: git://anongit.freedesktop.org/git/drm-misc tags/drm-misc-next-2017-06-02 for you to fetch changes up to 7f696942a7e52df2a99410bf23da513f9aad04fb: drm/vc4: Mark the device as active when enabling runtime PM. (2017-06-02 13:00:47 -0700) ---------------------------------------------------------------- Core Changes: - Stop proliferation of drm_vblank_cleanup by adding to the docs and deleting boilerplate (Daniel) - Roll out and use mode_valid hooks across crtc/encoder/bridge (Jose) - Add drm_vblank.[hc] to isolate vblank code from optional irq helpers (Daniel) Driver Changes: - Replace drm_for_each_connector with drm_for_each_connector_iter (Gustavo) - A couple misc driver fixes Cc: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxx> Cc: Jose Abreu <Jose.Abreu@xxxxxxxxxxxx> Cc: Daniel Vetter <daniel.vetter@xxxxxxxxx> ---------------------------------------------------------------- Arnd Bergmann (2): drm/pl111: select DRM_PANEL drm/pl111: fix warnings without CONFIG_ARM_AMBA Boris Brezillon (1): drm/vc4: Fix comment in vc4_drv.h Corentin Labbe (1): drm: remove writeq/readq function definitions Daniel Vetter (13): drm: Remove drm_device->virtdev drm/doc: move printf helpers out of drmP.h drm: better document how to send out the crtc disable event drm/sun4i: Drop drm_vblank_cleanup drm/stm: Drop drm_vblank_cleanup drm/meson: Drop drm_vblank_cleanup drm/imx: Drop drm_vblank_cleanup drm/atmel: Drop drm_vblank_cleanup drm/arcgpu: Drop drm_vblank_cleanup drm: Extract drm_vblank.[hc] drm/doc: Polish irq helper documentation drm/hdlcd|mali: Drop drm_vblank_cleanup drm/exynos: Drop drm_vblank_cleanup Eric Anholt (1): drm/vc4: Mark the device as active when enabling runtime PM. Gustavo Padovan (8): drm/exynos: use drm_for_each_connector_iter() drm/rockchip: use drm_for_each_connector_iter() drm/i915: use drm_for_each_connector_iter() drm/mediatek: use drm_for_each_connector_iter() drm/nouveau: use drm_for_each_connector_iter() drm/vc4: use drm_for_each_connector_iter() drm: remove unsafe drm_for_each_connector() drm: todo: remove task about switch to drm_connector_list_iter Joe Perches (1): drm: Use vsnprintf extension %ph Jose Abreu (6): drm: Add drm_{crtc/encoder/connector}_mode_valid() drm: Introduce drm_bridge_mode_valid() drm: Use new mode_valid() helpers in connector probe helper drm: Use mode_valid() in atomic modeset drm/bridge: analogix-anx78xx: Use bridge->mode_valid() callback drm/atmel-hlcdc: Use crtc->mode_valid() callback Ville Syrjälä (1): drm/atomic: Consitfy mode parameter to drm_atomic_set_mode_for_crtc() Documentation/gpu/drm-internals.rst | 63 +- Documentation/gpu/drm-kms.rst | 4 +- Documentation/gpu/todo.rst | 13 - drivers/gpu/drm/Makefile | 2 +- drivers/gpu/drm/arc/arcpgu_drv.c | 1 - drivers/gpu/drm/arm/hdlcd_drv.c | 2 - drivers/gpu/drm/arm/malidp_drv.c | 2 - drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_crtc.c | 10 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.c | 6 +- drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_dc.h | 5 +- drivers/gpu/drm/bridge/analogix-anx78xx.c | 14 +- drivers/gpu/drm/drm_atomic.c | 2 +- drivers/gpu/drm/drm_atomic_helper.c | 76 +- drivers/gpu/drm/drm_bridge.c | 33 + drivers/gpu/drm/drm_crtc_helper_internal.h | 12 + drivers/gpu/drm/drm_dp_mst_topology.c | 51 +- drivers/gpu/drm/drm_internal.h | 3 +- drivers/gpu/drm/drm_irq.c | 1643 +---------------------- drivers/gpu/drm/drm_probe_helper.c | 105 +- drivers/gpu/drm/drm_vblank.c | 1648 ++++++++++++++++++++++++ drivers/gpu/drm/exynos/exynos_drm_drv.c | 18 +- drivers/gpu/drm/i915/intel_display.c | 5 +- drivers/gpu/drm/imx/imx-drm-core.c | 4 +- drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 5 +- drivers/gpu/drm/meson/meson_drv.c | 1 - drivers/gpu/drm/nouveau/nv50_display.c | 5 +- drivers/gpu/drm/pl111/Kconfig | 1 + drivers/gpu/drm/pl111/pl111_drv.c | 6 +- drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 11 +- drivers/gpu/drm/stm/ltdc.c | 2 - drivers/gpu/drm/sun4i/sun4i_drv.c | 2 - drivers/gpu/drm/tinydrm/mipi-dbi.c | 7 +- drivers/gpu/drm/vc4/vc4_crtc.c | 6 +- drivers/gpu/drm/vc4/vc4_drv.h | 2 +- drivers/gpu/drm/vc4/vc4_v3d.c | 1 + drivers/gpu/drm/virtio/virtgpu_drm_bus.c | 1 - drivers/gpu/drm/virtio/virtgpu_kms.c | 4 +- include/drm/drmP.h | 33 +- include/drm/drm_atomic.h | 2 +- include/drm/drm_bridge.h | 2 + include/drm/drm_connector.h | 15 - include/drm/drm_crtc.h | 4 +- include/drm/drm_drv.h | 33 +- include/drm/drm_file.h | 1 + include/drm/drm_irq.h | 158 +-- include/drm/drm_modes.h | 17 + include/drm/drm_os_linux.h | 14 +- include/drm/drm_prime.h | 2 + include/drm/drm_rect.h | 27 + include/drm/drm_vblank.h | 181 +++ 50 files changed, 2278 insertions(+), 1987 deletions(-) create mode 100644 drivers/gpu/drm/drm_vblank.c create mode 100644 include/drm/drm_vblank.h -- Sean Paul, Software Engineer, Google / Chromium OS _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel