This patchset refactors parts of the exynos driver to move it closer to a proper drm driver (rather than just implementing a drm layer on top of the hardware drivers). The hope is to get to a point where the dp/hdmi drivers can implement drm_connector/drm_encoder directly, and fimd/mixer can directly implement drm_crtc. The notable changes in this set: - drm_encoder funcs no longer route through the crtc - DP driver has been moved from video into the drm driver - fimd no longer implements encoder callbacks - exynos_drm_hdmi is removed in favor of generic manager/display handling At a glance, differences between v1 and v2: - Passing manager/display in callbacks instead of ctx - Tacked on some dpms patches on the end to handle suspend/resume through the dpms path At a glance, differences between v2 and v3: - Fixed vidi issues - Moved exynos_drm_hdmi.c removal to the right place - Added the exynos_drm_connector removal patches on the end At a glance, differences between v3 and v4: - Rebased on top of exynos-drm-next - Addressed review comments, no major functional changes Sean Daniel Kurtz (1): drm/exynos: hdmi: remove the i2c drivers and use devtree Sean Paul (32): drm/exynos: Rename hdmi_infoframe to avoid collision drm/exynos: Merge overlay_ops into manager_ops drm/exynos: Add an initialize function to manager and display drm/exynos: Use manager_op initialize in fimd drm/exynos: hdmi: Implement initialize op for hdmi drm/exynos: Pass exynos_drm_manager in manager ops instead of dev drm/exynos: Remove apply manager callback drm/exynos: Remove dpms link between encoder/connector drm/exynos: Rename display_op power_on to dpms drm/exynos: Don't keep dpms state in encoder drm/exynos: Use unsigned long for possible_crtcs drm/exynos: Split manager/display/subdrv ARM: dts: exynos: Add i2c phandles to hdmi node drm/exynos: Remove exynos_drm_hdmi shim drm/exynos: Use drm_mode_copy to copy modes drm/exynos: Disable unused crtc planes from crtc drm/exynos: Add mode_set manager operation drm/exynos: Implement mode_fixup manager operation drm/exynos: Use mode_set to configure fimd drm/exynos: Remove unused/useless fimd_context members drm/exynos: Move dp driver from video/ to drm/ drm/exynos: Move display implementation into dp ARM: dts: Move display-timings node from fimd to dp drm/exynos: Implement dpms display callback in DP drm/exynos: Clean up FIMD power on/off routines drm/exynos: Consolidate suspend/resume in drm_drv drm/exynos: Add create_connector callback drm/exynos: Implement drm_connector in hdmi directly drm/exynos: Implement drm_connector directly in dp driver drm/exynos: Implement drm_connector directly in vidi driver drm/exynos: Move lvds bridge discovery into DP driver drm/exynos: Remove the exynos_drm_connector shim Stéphane Marchesin (1): drm/exynos: Remove useless slab.h include .../devicetree/bindings/video/exynos_dp.txt | 17 + .../devicetree/bindings/video/exynos_hdmi.txt | 5 + .../devicetree/bindings/video/samsung-fimd.txt | 2 + MAINTAINERS | 7 - arch/arm/boot/dts/cros5250-common.dtsi | 6 +- arch/arm/boot/dts/exynos5250-arndale.dts | 7 +- arch/arm/boot/dts/exynos5250-smdk5250.dts | 13 +- arch/arm/boot/dts/exynos5250-snow.dts | 7 +- arch/arm/boot/dts/exynos5420-smdk5420.dts | 7 +- drivers/gpu/drm/exynos/Kconfig | 7 + drivers/gpu/drm/exynos/Makefile | 7 +- drivers/gpu/drm/exynos/exynos_ddc.c | 63 - drivers/gpu/drm/exynos/exynos_dp_core.c | 1357 ++++++++++++++++++++ drivers/gpu/drm/exynos/exynos_dp_core.h | 329 +++++ drivers/gpu/drm/exynos/exynos_dp_reg.c | 1243 ++++++++++++++++++ drivers/gpu/drm/exynos/exynos_dp_reg.h | 366 ++++++ drivers/gpu/drm/exynos/exynos_drm_connector.c | 304 ----- drivers/gpu/drm/exynos/exynos_drm_connector.h | 24 - drivers/gpu/drm/exynos/exynos_drm_core.c | 233 ++-- drivers/gpu/drm/exynos/exynos_drm_crtc.c | 139 +- drivers/gpu/drm/exynos/exynos_drm_crtc.h | 20 +- drivers/gpu/drm/exynos/exynos_drm_drv.c | 155 ++- drivers/gpu/drm/exynos/exynos_drm_drv.h | 154 ++- drivers/gpu/drm/exynos/exynos_drm_encoder.c | 357 +---- drivers/gpu/drm/exynos/exynos_drm_encoder.h | 18 +- drivers/gpu/drm/exynos/exynos_drm_fb.c | 4 +- drivers/gpu/drm/exynos/exynos_drm_fimd.c | 682 ++++------ drivers/gpu/drm/exynos/exynos_drm_hdmi.c | 439 ------- drivers/gpu/drm/exynos/exynos_drm_hdmi.h | 67 - drivers/gpu/drm/exynos/exynos_drm_plane.c | 17 +- drivers/gpu/drm/exynos/exynos_drm_plane.h | 2 +- drivers/gpu/drm/exynos/exynos_drm_vidi.c | 413 +++--- drivers/gpu/drm/exynos/exynos_hdmi.c | 370 +++--- drivers/gpu/drm/exynos/exynos_hdmi.h | 23 - drivers/gpu/drm/exynos/exynos_hdmiphy.c | 65 - drivers/gpu/drm/exynos/exynos_mixer.c | 573 ++++----- drivers/gpu/drm/exynos/exynos_mixer.h | 20 + drivers/video/exynos/Kconfig | 7 - drivers/video/exynos/Makefile | 1 - drivers/video/exynos/exynos_dp_core.c | 1156 ----------------- drivers/video/exynos/exynos_dp_core.h | 320 ----- drivers/video/exynos/exynos_dp_reg.c | 1243 ------------------ drivers/video/exynos/exynos_dp_reg.h | 366 ------ 43 files changed, 4864 insertions(+), 5751 deletions(-) delete mode 100644 drivers/gpu/drm/exynos/exynos_ddc.c create mode 100644 drivers/gpu/drm/exynos/exynos_dp_core.c create mode 100644 drivers/gpu/drm/exynos/exynos_dp_core.h create mode 100644 drivers/gpu/drm/exynos/exynos_dp_reg.c create mode 100644 drivers/gpu/drm/exynos/exynos_dp_reg.h delete mode 100644 drivers/gpu/drm/exynos/exynos_drm_connector.c delete mode 100644 drivers/gpu/drm/exynos/exynos_drm_connector.h delete mode 100644 drivers/gpu/drm/exynos/exynos_drm_hdmi.c delete mode 100644 drivers/gpu/drm/exynos/exynos_drm_hdmi.h delete mode 100644 drivers/gpu/drm/exynos/exynos_hdmi.h delete mode 100644 drivers/gpu/drm/exynos/exynos_hdmiphy.c create mode 100644 drivers/gpu/drm/exynos/exynos_mixer.h delete mode 100644 drivers/video/exynos/exynos_dp_core.c delete mode 100644 drivers/video/exynos/exynos_dp_core.h delete mode 100644 drivers/video/exynos/exynos_dp_reg.c delete mode 100644 drivers/video/exynos/exynos_dp_reg.h -- 1.8.5.1 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel