On 2015년 04월 04일 03:09, Gustavo Padovan wrote: > From: Gustavo Padovan <gustavo.padovan@xxxxxxxxxxxxxxx> > > Hi, > > Here goes the full support for atomic modesetting on exynos. I've > split the patches in the various phases of atomic support. > > These patches sits on top of the clean up patches I've sent yesterday > to this mailing list[1]. > > v2: fixes comments by Joonyoung > - remove unused var in patch 09 > - use ->disable instead of outdated ->dpms in hdmi code > - remove WARN_ON from crtc enable/disable > > v3: fixes comment by Joonyoung > - move the removal of drm_helper_disable_unused_functions() to > separated patch With this patch series, Kernel booting is halted at end of kernel booting. I tested this patch series on Trats2 board based on Exynos4412 SoC. Below is a part of full booting logs, which was halted, [ 1.992015] exynos-drm-ipp exynos-drm-ipp: drm ipp registered successfully. [ 1.993009] exynos-drm exynos-drm: bound exynos-drm-vidi (ops vidi_component_ops) [ 1.993036] exynos-drm exynos-drm: bound 11c00000.fimd (ops fimd_component_ops) [ 1.993385] exynos-drm exynos-drm: bound 11c80000.dsi (ops exynos_dsi_component_ops) [ 1.993390] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013). [ 1.993393] [drm] No driver support for vblank timestamp query. [ 1.993442] [drm] Initialized exynos 1.0.0 20110530 on minor 0 [ 2.043358] WARNING: CPU: 2 PID: 1209 at drivers/clk/clk.c:898 clk_unprepare+0x24/0x2c() [ 2.051412] Modules linked in: [ 2.054422] CPU: 2 PID: 1209 Comm: kworker/2:1 Tainted: G W 4.0.0-rc6-00526-gc49d7de-dirty #1278 [ 2.064337] Hardware name: SAMSUNG EXYNOS (Flattened Device Tree) [ 2.070428] Workqueue: pm pm_runtime_work> After that, I tested it again without FIMD and the booting is ok. So I guess that this atomic feature has a bug to FIMD driver. Thanks, Inki Dae > > Gustavo > --- > > Gustavo Padovan (11): > 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: atomic dpms support > > drivers/gpu/drm/bridge/ptn3460.c | 4 + > drivers/gpu/drm/exynos/exynos_dp_core.c | 6 +- > drivers/gpu/drm/exynos/exynos_drm_connector.c | 6 +- > drivers/gpu/drm/exynos/exynos_drm_crtc.c | 226 ++++++++------------------ > drivers/gpu/drm/exynos/exynos_drm_dpi.c | 6 +- > drivers/gpu/drm/exynos/exynos_drm_drv.c | 2 + > drivers/gpu/drm/exynos/exynos_drm_drv.h | 4 +- > drivers/gpu/drm/exynos/exynos_drm_dsi.c | 6 +- > drivers/gpu/drm/exynos/exynos_drm_encoder.c | 27 +-- > drivers/gpu/drm/exynos/exynos_drm_fb.c | 12 +- > drivers/gpu/drm/exynos/exynos_drm_fbdev.c | 3 - > drivers/gpu/drm/exynos/exynos_drm_plane.c | 113 +++++++------ > drivers/gpu/drm/exynos/exynos_drm_plane.h | 11 -- > drivers/gpu/drm/exynos/exynos_drm_vidi.c | 6 +- > drivers/gpu/drm/exynos/exynos_hdmi.c | 10 +- > 15 files changed, 187 insertions(+), 255 deletions(-) > _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel