From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933071AbcFJP0K (ORCPT ); Fri, 10 Jun 2016 11:26:10 -0400 Received: from mail-wm0-f66.google.com ([74.125.82.66]:36384 "EHLO mail-wm0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932114AbcFJP0E (ORCPT ); Fri, 10 Jun 2016 11:26:04 -0400 Date: Fri, 10 Jun 2016 17:25:58 +0200 From: Daniel Vetter To: Boris Brezillon Cc: David Airlie , Daniel Vetter , dri-devel@lists.freedesktop.org, Daniel Vetter , linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Kukjin Kim , Krzysztof Kozlowski , linux-samsung-soc@vger.kernel.org, intel-gfx@lists.freedesktop.org, Jani Nikula , Alexey Brodkin , Inki Dae , Joonyoung Shim , Seung-Woo Kim , Kyungmin Park , Stefan Agner , Alison Wang , Matthias Brugger , Rob Clark , Laurent Pinchart , Mark Yao , Heiko Stuebner , Benjamin Gaignard , Vincent Abriou , Maxime Ripard , Chen-Yu Tsai , Thierry Reding , Stephen Warren , Alexandre Courbot , Eric Anholt , Gerd Hoffmann , linux-mediatek@lists.infradead.org, linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org, linux-renesas-soc@vger.kernel.org, linux-rockchip@lists.infradead.org, linux-tegra@vger.kernel.org, virtualization@lists.linux-foundation.org Subject: Re: [PATCH v2 00/20] drm/atomic: Provide default ->best_encoder() behavior Message-ID: <20160610152558.GM3363@phenom.ffwll.local> Mail-Followup-To: Boris Brezillon , David Airlie , dri-devel@lists.freedesktop.org, Daniel Vetter , linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Kukjin Kim , Krzysztof Kozlowski , linux-samsung-soc@vger.kernel.org, intel-gfx@lists.freedesktop.org, Jani Nikula , Alexey Brodkin , Inki Dae , Joonyoung Shim , Seung-Woo Kim , Kyungmin Park , Stefan Agner , Alison Wang , Matthias Brugger , Rob Clark , Laurent Pinchart , Mark Yao , Heiko Stuebner , Benjamin Gaignard , Vincent Abriou , Maxime Ripard , Chen-Yu Tsai , Thierry Reding , Stephen Warren , Alexandre Courbot , Eric Anholt , Gerd Hoffmann , linux-mediatek@lists.infradead.org, linux-arm-msm@vger.kernel.org, freedreno@lists.freedesktop.org, linux-renesas-soc@vger.kernel.org, linux-rockchip@lists.infradead.org, linux-tegra@vger.kernel.org, virtualization@lists.linux-foundation.org References: <1465300095-16971-1-git-send-email-boris.brezillon@free-electrons.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1465300095-16971-1-git-send-email-boris.brezillon@free-electrons.com> X-Operating-System: Linux phenom 4.6.0-rc5+ User-Agent: Mutt/1.6.0 (2016-04-01) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Jun 07, 2016 at 01:47:55PM +0200, Boris Brezillon wrote: > Hello, > > This patch series aims at replacing all dummy ->best_encoder() > implementations where we have a 1:1 relationship between encoders > and connectors. > The core already provides the drm_atomic_helper_best_encoder() > function which is taking the first encoder attached to the > connector (after making sure only one encoder was attached to the > connector), but it's not automatically used, and drivers wanting > to rely on this default behavior have to explicitly assign their > ->best_encoder() hook to drm_atomic_helper_best_encoder(). > > The first patch fixes remaining places where > drm_atomic_helper_best_encoder() should be called when ->best_encoder() > is NULL, so that drivers using the atomic helpers can get rid of the > explicit ->best_encoder assignment if they need to rely on the default > drm_atomic_helper_best_encoder() implementation. > > The following patches are killing all open coded ->best_encoder() > implementations that could be replaced by > drm_atomic_helper_best_encoder(). > > All modifications have been compile tested except for the changed on > the intel driver. > I've also tested on an atmel board, but I recommend waiting for DRM > driver maintainers feedback before applying the associated changes. > > Note that once patch 1 is applied, the other patches can be applied > independently. One comment on the i915 patch, all others should now be in drm-misc. Thanks a lot for doing this. -Daniel > > Best Regards, > > Boris > > Changes since v1: > - remove useless ->encoder backpointers in some implementations > - documented the default behavior in the vtable doc > - added R-b/A-b tags > > Boris Brezillon (20): > drm/atomic: Fix remaining places where !funcs->best_encoder is valid > drm: arc: Rely on the default ->best_encoder() behavior > drm: atmel-hlcdc: Rely on the default ->best_encoder() behavior > drm: exynos: Rely on the default ->best_encoder() behavior > drm: fsl-dcu: Rely on the default ->best_encoder() behavior > drm: i915: Rely on the default ->best_encoder() behavior where > appropriate > drm: mediatek: Rely on the default ->best_encoder() behavior > drm: msm: Rely on the default ->best_encoder() behavior where > appropriate > drm: rcar-du: Rely on the default ->best_encoder() behavior > drm: rockchip: Rely on the default ->best_encoder() behavior > drm: sti: Rely on the default ->best_encoder() behavior > drm: sun4i: Rely on the default ->best_encoder() behavior > drm: tegra: Rely on the default ->best_encoder() behavior > drm: vc4: Rely on the default ->best_encoder() behavior > drm: virtgpu: Rely on the default ->best_encoder() behavior > drm: omap: Rely on the default ->best_encoder() behavior > drm/bridge: anx78xx: Rely on the default ->best_encoder() behavior > drm/bridge: ptn3460: Rely on the default ->best_encoder() behavior > drm/bridge: ps8622: Rely on the default ->best_encoder() behavior > drm/bridge: dw-hdmi: Use drm_atomic_helper_best_encoder() > > drivers/gpu/drm/arc/arcpgu_hdmi.c | 18 ------------------ > drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c | 12 ------------ > drivers/gpu/drm/bridge/analogix-anx78xx.c | 8 -------- > drivers/gpu/drm/bridge/dw-hdmi.c | 11 +---------- > drivers/gpu/drm/bridge/nxp-ptn3460.c | 8 -------- > drivers/gpu/drm/bridge/parade-ps8622.c | 10 ---------- > drivers/gpu/drm/drm_atomic_helper.c | 4 +++- > drivers/gpu/drm/drm_fb_helper.c | 13 ++++++++++++- > drivers/gpu/drm/exynos/exynos_drm_dpi.c | 9 --------- > drivers/gpu/drm/exynos/exynos_drm_dsi.c | 9 --------- > drivers/gpu/drm/exynos/exynos_drm_vidi.c | 8 -------- > drivers/gpu/drm/exynos/exynos_hdmi.c | 8 -------- > drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_rgb.c | 9 --------- > drivers/gpu/drm/i915/intel_crt.c | 1 - > drivers/gpu/drm/i915/intel_display.c | 8 -------- > drivers/gpu/drm/i915/intel_dp.c | 1 - > drivers/gpu/drm/i915/intel_drv.h | 1 - > drivers/gpu/drm/i915/intel_dsi.c | 1 - > drivers/gpu/drm/i915/intel_dvo.c | 1 - > drivers/gpu/drm/i915/intel_hdmi.c | 1 - > drivers/gpu/drm/i915/intel_lvds.c | 1 - > drivers/gpu/drm/i915/intel_sdvo.c | 1 - > drivers/gpu/drm/i915/intel_tv.c | 1 - > drivers/gpu/drm/mediatek/mtk_dsi.c | 9 --------- > drivers/gpu/drm/msm/edp/edp_connector.c | 10 ---------- > drivers/gpu/drm/msm/hdmi/hdmi_connector.c | 8 -------- > drivers/gpu/drm/msm/mdp/mdp4/mdp4_lvds_connector.c | 9 --------- > drivers/gpu/drm/omapdrm/omap_connector.c | 10 ---------- > drivers/gpu/drm/rcar-du/rcar_du_encoder.c | 12 ------------ > drivers/gpu/drm/rcar-du/rcar_du_encoder.h | 3 --- > drivers/gpu/drm/rcar-du/rcar_du_hdmicon.c | 1 - > drivers/gpu/drm/rcar-du/rcar_du_lvdscon.c | 1 - > drivers/gpu/drm/rcar-du/rcar_du_vgacon.c | 3 --- > drivers/gpu/drm/rockchip/dw-mipi-dsi.c | 9 --------- > drivers/gpu/drm/rockchip/inno_hdmi.c | 9 --------- > drivers/gpu/drm/sti/sti_dvo.c | 10 ---------- > drivers/gpu/drm/sti/sti_hda.c | 10 ---------- > drivers/gpu/drm/sti/sti_hdmi.c | 10 ---------- > drivers/gpu/drm/sun4i/sun4i_rgb.c | 10 ---------- > drivers/gpu/drm/sun4i/sun4i_tv.c | 9 --------- > drivers/gpu/drm/tegra/drm.h | 2 -- > drivers/gpu/drm/tegra/dsi.c | 1 - > drivers/gpu/drm/tegra/hdmi.c | 1 - > drivers/gpu/drm/tegra/output.c | 8 -------- > drivers/gpu/drm/tegra/rgb.c | 1 - > drivers/gpu/drm/tegra/sor.c | 1 - > drivers/gpu/drm/vc4/vc4_dpi.c | 9 --------- > drivers/gpu/drm/vc4/vc4_hdmi.c | 9 --------- > drivers/gpu/drm/virtio/virtgpu_display.c | 10 ---------- > include/drm/drm_modeset_helper_vtables.h | 10 ++++++++-- > 50 files changed, 24 insertions(+), 305 deletions(-) > > -- > 2.7.4 > -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch