Hi Dave, With this pull request, Exynos drm also supports atomic feature. However, this doesn't guarantee atomic operation yet so we will more enhance it later. Besides, it includes new drivers, MIC and DECON for Exynos5433 SoC, and iommu support and consolidation to driver initialization.
Ps. this pull request also contains device tree relevant patches. For this, I got the Acked-by from maintainers - Rob Herring who is a device tree maintainer and Krzysztof Kozlowski who is a Exynos SoC maintainer - for each patch so there is no problem that these patches go to mainline though drm-next. Summary: . Add atomic feature support - Exynos also now supports atomic feature. However, it doesn't guarantee atomic operation yet, and is required for more cleanups. This time we just modified for Exynos drm driver to use atomic interfaces instead of legacy ones. Next time, we will enhance Exynos drm driver to support the atomic operation. . Add iommu support - This is a patch series according to below Exynos iommu integration work with DT and dma-mapping subsystem, http://lwn.net/Articles/607626/ . Consolidate Exynos drm driver initialization. - This patch sereis resolves the issue that only the first compoments was bound when happened deferred probing for other pipelines and also makes the driver to be more cleanned up by moving the dispered codes for registering kms drivers to one place. . Add new MIC, DECON drivers, and MIPI-DSI support for Exynos5433. - Add MIC(Mobile image compressor) driver. MIC is a new IP for Exynos5433 and later, which is used to transfer frame data to MIPI-DSI controller compressing the data to reduce memory bandwidth. - Add DECON driver for Exynos5433 SoC. This IP is a dislay controller similar to Exynos7's one but this controller has much different registers from Exynos7's ones so this driver has been implemented separately. We will implement a helper modules for FIMD and two DECON controllers to remove duplicated codes later. - Add Exynos5433 SoC support to MIPI-DSI driver, and device tree relevant patches. Please kindly let me know if there is any problem. Thanks, Inki Dae The following changes since commit 0dc499aff57f5e787214d5085dd1c391e0f93710: Merge branch 'virtio-gpu-drm-next' of git://git.kraxel.org/linux into drm-next (2015-06-18 13:01:04 +1000) are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos.git exynos-drm-next for you to fetch changes up to 4f01e65037187581971f8b1068d4e1b1300a6562: ARM: dts: rename the clock of MIPI DSI 'pll_clk' to 'sclk_mipi' (2015-06-22 21:40:13 +0900) ---------------------------------------------------------------- Andrzej Hajda (3): drm/exynos: consolidate driver/device initialization code drm/exynos: fix broken component binding in case of multiple pipelines drm/exynos: remove SoC checking code Gustavo Padovan (16): drm/exynos: atomic phase 1: use drm_plane_helper_update() drm/exynos: atomic phase 1: use drm_plane_helper_disable() drm/exynos: atomic phase 1: add .mode_set_nofb() callback drm/exynos: atomic phase 2: wire up state reset(), duplicate() and destroy() drm/exynos: atomic phase 2: keep track of framebuffer pointer drm/exynos: atomic phase 3: atomic updates of planes drm/exynos: atomic phase 3: use atomic .set_config helper drm/exynos: atomic phase 3: convert page flips drm/exynos: remove exported functions from exynos_drm_plane drm/exynos: don't disable unused functions at init drm/exynos: move exynos_drm_crtc_disable() drm/exynos: add exynos specific .atomic_commit() drm/exynos: atomic dpms support drm/exynos: remove unnecessary calls to disable_plane() drm/exynos: split exynos_crtc->dpms in enable() and disable() drm/exynos: add error messages if clks failed to get enabled Hyungwon Hwang (17): drm/exynos: dsi: check whether dsi is enabled before sending data drm/exynos: ipp: fix wrong index referencing a config element drm/exynos: ipp: validate a GEM handle with multiple planes drm/exynos: remove the dependency of DP driver for ARCH_EXYNOS drm/exynos: Add the dependency for DRM_EXYNOS to DPI/DSI/DP drm/exynos: add drm_iommu_attach_device_if_possible() drm/exynos: fix the input prompt of Exynos7 DECON of: add helper for getting endpoint node of specific identifiers drm/exynos: mic: add MIC driver drm/exynos: dsi: rename pll_clk to sclk_clk drm/exynos: dsi: add macros for register access drm/exynos: dsi: make use of driver data for static values drm/exynos: dsi: make use of array for clock access drm/exynos: dsi: add support for Exynos5433 drm/exynos: dsi: add support for MIC driver as a bridge drm/exynos: dsi: do not set TE GPIO direction by input ARM: dts: rename the clock of MIPI DSI 'pll_clk' to 'sclk_mipi' Inki Dae (4): drm/exynos: vidi: remove unused varables drm/exynos: add a dependency on FB_S3C to DECON driver drm/exynos: fimd: fix page fault issue with iommu drm/exynos: do not wait for vblank at atomic operation Joonyoung Shim (6): drm/exynos: fix source data argument for plane drm/exynos: use adjusted_mode of crtc_state instead of mode drm/exynos: remove to call mixer_wait_for_vblank drm/exynos: remove chained calls to enable drm/exynos: initialize VIDCON0 when fimd is disabled drm/exynos: add Exynos5433 decon driver Krzysztof Kozlowski (1): drm/exynos: Remove unused vma field of exynos_drm_gem_obj Marek Szyprowski (3): drm/exynos: fimd: ensure proper hw state in fimd_clear_channel() drm/exynos: iommu: detach from default dma-mapping domain on init drm/exynos: iommu: improve a check for non-iommu dma_ops .../devicetree/bindings/video/exynos-mic.txt | 51 ++ .../devicetree/bindings/video/exynos5433-decon.txt | 65 ++ .../devicetree/bindings/video/exynos_dsim.txt | 31 +- arch/arm/boot/dts/exynos4.dtsi | 2 +- drivers/gpu/drm/bridge/ps8622.c | 6 +- drivers/gpu/drm/bridge/ptn3460.c | 6 +- drivers/gpu/drm/exynos/Kconfig | 22 +- drivers/gpu/drm/exynos/Makefile | 2 + drivers/gpu/drm/exynos/exynos5433_drm_decon.c | 660 ++++++++++++++++++++ drivers/gpu/drm/exynos/exynos7_drm_decon.c | 173 +---- drivers/gpu/drm/exynos/exynos_dp_core.c | 20 +- drivers/gpu/drm/exynos/exynos_drm_crtc.c | 201 ++---- drivers/gpu/drm/exynos/exynos_drm_dpi.c | 26 +- drivers/gpu/drm/exynos/exynos_drm_drv.c | 429 +++++-------- drivers/gpu/drm/exynos/exynos_drm_drv.h | 49 +- drivers/gpu/drm/exynos/exynos_drm_dsi.c | 539 ++++++++++------ drivers/gpu/drm/exynos/exynos_drm_encoder.c | 35 +- drivers/gpu/drm/exynos/exynos_drm_fb.c | 39 ++ drivers/gpu/drm/exynos/exynos_drm_fbdev.c | 3 - drivers/gpu/drm/exynos/exynos_drm_fimd.c | 323 ++++------ drivers/gpu/drm/exynos/exynos_drm_gem.h | 2 - drivers/gpu/drm/exynos/exynos_drm_iommu.c | 21 +- drivers/gpu/drm/exynos/exynos_drm_iommu.h | 11 + drivers/gpu/drm/exynos/exynos_drm_ipp.c | 81 ++- drivers/gpu/drm/exynos/exynos_drm_mic.c | 490 +++++++++++++++ drivers/gpu/drm/exynos/exynos_drm_plane.c | 137 ++-- drivers/gpu/drm/exynos/exynos_drm_plane.h | 11 - drivers/gpu/drm/exynos/exynos_drm_vidi.c | 125 +--- drivers/gpu/drm/exynos/exynos_hdmi.c | 32 +- drivers/gpu/drm/exynos/exynos_mixer.c | 118 ++-- drivers/of/base.c | 33 + include/linux/of_graph.h | 8 + include/video/exynos5433_decon.h | 165 +++++ 33 files changed, 2529 insertions(+), 1387 deletions(-) create mode 100644 Documentation/devicetree/bindings/video/exynos-mic.txt create mode 100644 Documentation/devicetree/bindings/video/exynos5433-decon.txt create mode 100644 drivers/gpu/drm/exynos/exynos5433_drm_decon.c create mode 100644 drivers/gpu/drm/exynos/exynos_drm_mic.c create mode 100644 include/video/exynos5433_decon.h