Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp2042683rwd; Fri, 2 Jun 2023 04:09:50 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ6Z9kjX4hKFanHBffroWJHdkBUFO3aJ4X/mzYx3SafY8OgBMu2siFoNTrpMSunuL6cYVUnz X-Received: by 2002:a17:902:ec84:b0:1b0:36ad:fe13 with SMTP id x4-20020a170902ec8400b001b036adfe13mr1121414plg.16.1685704190000; Fri, 02 Jun 2023 04:09:50 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1685704189; cv=none; d=google.com; s=arc-20160816; b=rNo/VSAOb7Eukqa29i7C2noHOFa+N4S5lGHEKenUGJEU+ahF6K3Aw7o66fHpg2uFCe U0LfrELyIKKKmPtt/v4BbEr9imk03a8W3PdB60nipBt4nrweUc3b7hgwd/sTcnK6O92F tRV51dvWdAirgnl6eddugCC1lhkwuXcc78v7AtL5UiUUsCzTlDmev5+AP6jGsKylS4t3 fMekTFZKi9JcAW1+yqpFOAKckkS75mxa50ZCISL3coeLuHVeLvE11J9B3EQ5e378v5gf dc/SLkHfsTGNChhDBUhKbvqV6uqyOh7ttB+RNhVx89NK+IFuMKsdVrBtEeXo59vRfd23 SGxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=gRL8wOfDv9G9anGbjFQIklgOJyim+52Trdd911fUZo8=; b=CwboxS5g1sIPOdtpOb6E8rnrLSmFfW4V6TYDpfNgWRk2UhIW12dC0GSd3Bg2m+av0l TTc8FqOOs30IZqg4FOgJ+uV61KZ77slR0+dKSFARB95VM7NeQwJiX4GPMyUzmffTmUB8 KAXrhc0iP3DkYJu4IOsT25c2XwlkYMk1APSxVNTSv9+Esl+ZJVO5sT7mFPyjLjEVlQ9p 0CuO+YRA8nirhQtJSXsG2jUCbdhZOVCLbDu8Sdvoqr1mmK5VOskc7PY+9NSpm5mhLNEK WrlMfNIvywVZmj9qfMM42Rro1VVlGo91tuU3VG7PAOVz5hqAwR5GVyaltcKNxH5vhkJw kTaA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=MfhvjUXK; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id b2-20020a170902650200b001aaf7a9d7aasi752281plk.126.2023.06.02.04.09.35; Fri, 02 Jun 2023 04:09:49 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=MfhvjUXK; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235366AbjFBLFH (ORCPT + 99 others); Fri, 2 Jun 2023 07:05:07 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46348 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234410AbjFBLFG (ORCPT ); Fri, 2 Jun 2023 07:05:06 -0400 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 97313CE; Fri, 2 Jun 2023 04:05:04 -0700 (PDT) Received: from pendragon.ideasonboard.com (om126156168104.26.openmobile.ne.jp [126.156.168.104]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 2ECCF6E0; Fri, 2 Jun 2023 13:04:37 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1685703879; bh=8Ej7wcIutR5WCUQ1LWvTNh+N/cYkKVA3SIv/HoFFDlA=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=MfhvjUXKPe2VCQbcUOwdFnE4mo/ngKUA+QS3gaJ5DF+7tM2RBeGdr1s5W5pHcoGlz hfQZh978Az3ng2eu6b1D61scH2Eqj5wbHi6Eu2ead3TFCpY/9OrI/Ug4UhQLiI3YvT pNcBJuLkhItb3L8VRA0nMxzOiNHRz2+Vv/JELdMQ= Date: Fri, 2 Jun 2023 14:04:59 +0300 From: Laurent Pinchart To: Geert Uytterhoeven Cc: David Airlie , Daniel Vetter , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , Jonathan Corbet , Jyri Sarha , Tomi Valkeinen , Biju Das , dri-devel@lists.freedesktop.org, linux-doc@vger.kernel.org, linux-renesas-soc@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 2/3] drm: Remove references to removed transitional helpers Message-ID: <20230602110459.GC26944@pendragon.ideasonboard.com> References: <14e091fc522aa63a3e33bda1016e5fa946d47d18.1685696114.git.geert+renesas@glider.be> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <14e091fc522aa63a3e33bda1016e5fa946d47d18.1685696114.git.geert+renesas@glider.be> X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_PASS,SPF_PASS, T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Geert, Thank you for the patch. On Fri, Jun 02, 2023 at 11:11:35AM +0200, Geert Uytterhoeven wrote: > The transitional helpers were removed a long time ago, but some > references stuck. Remove them. > > Fixes: 21ebe615c16994f3 ("drm: Remove transitional helpers") > Signed-off-by: Geert Uytterhoeven > --- > It doesn't look like the drm_encoder_helper_funcs were ever used by the > transitional plane helpers? > --- > drivers/gpu/drm/drm_plane_helper.c | 8 ---- > include/drm/drm_crtc.h | 5 --- > include/drm/drm_modeset_helper_vtables.h | 48 +++++++++++------------- > 3 files changed, 21 insertions(+), 40 deletions(-) > > diff --git a/drivers/gpu/drm/drm_plane_helper.c b/drivers/gpu/drm/drm_plane_helper.c > index c91e454eba097942..be45bdb58d849653 100644 > --- a/drivers/gpu/drm/drm_plane_helper.c > +++ b/drivers/gpu/drm/drm_plane_helper.c > @@ -51,14 +51,6 @@ > * planes, and newly merged drivers must not rely upon these transitional > * helpers. > * The first paragraph starts with "This helper library has two parts.". As you're dropping the mention of the second part, I think you should rework the first paragraph too. > - * The second part also implements transitional helpers which allow drivers to > - * gradually switch to the atomic helper infrastructure for plane updates. Once > - * that switch is complete drivers shouldn't use these any longer, instead using > - * the proper legacy implementations for update and disable plane hooks provided > - * by the atomic helpers. > - * > - * Again drivers are strongly urged to switch to the new interfaces. > - * > * The plane helpers share the function table structures with other helpers, > * specifically also the atomic helpers. See &struct drm_plane_helper_funcs for > * the details. > diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h > index 8e1cbc75143ef216..8b48a1974da3143c 100644 > --- a/include/drm/drm_crtc.h > +++ b/include/drm/drm_crtc.h > @@ -77,11 +77,6 @@ struct drm_plane_helper_funcs; > * intended to indicate whether a full modeset is needed, rather than strictly > * describing what has changed in a commit. See also: > * drm_atomic_crtc_needs_modeset() > - * > - * WARNING: Transitional helpers (like drm_helper_crtc_mode_set() or > - * drm_helper_crtc_mode_set_base()) do not maintain many of the derived control > - * state like @plane_mask so drivers not converted over to atomic helpers should > - * not rely on these being accurate! > */ > struct drm_crtc_state { > /** @crtc: backpointer to the CRTC */ > diff --git a/include/drm/drm_modeset_helper_vtables.h b/include/drm/drm_modeset_helper_vtables.h > index 965faf082a6d1acb..e3c3ac615909474b 100644 > --- a/include/drm/drm_modeset_helper_vtables.h > +++ b/include/drm/drm_modeset_helper_vtables.h > @@ -59,8 +59,8 @@ enum mode_set_atomic { > /** > * struct drm_crtc_helper_funcs - helper operations for CRTCs > * > - * These hooks are used by the legacy CRTC helpers, the transitional plane > - * helpers and the new atomic modesetting helpers. > + * These hooks are used by the legacy CRTC helpers and the new atomic > + * modesetting helpers. > */ > struct drm_crtc_helper_funcs { > /** > @@ -216,9 +216,7 @@ struct drm_crtc_helper_funcs { > * > * This callback is used to update the display mode of a CRTC without > * changing anything of the primary plane configuration. This fits the > - * requirement of atomic and hence is used by the atomic helpers. It is > - * also used by the transitional plane helpers to implement a > - * @mode_set hook in drm_helper_crtc_mode_set(). > + * requirement of atomic and hence is used by the atomic helpers. > * > * Note that the display pipe is completely off when this function is > * called. Atomic drivers which need hardware to be running before they > @@ -333,8 +331,8 @@ struct drm_crtc_helper_funcs { > * all updated. Again the recommendation is to just call check helpers > * until a maximal configuration is reached. > * > - * This callback is used by the atomic modeset helpers and by the > - * transitional plane helpers, but it is optional. > + * This callback is used by the atomic modeset helpers, but it is > + * optional. > * > * NOTE: > * > @@ -373,8 +371,8 @@ struct drm_crtc_helper_funcs { > * has picked. See drm_atomic_helper_commit_planes() for a discussion of > * the tradeoffs and variants of plane commit helpers. > * > - * This callback is used by the atomic modeset helpers and by the > - * transitional plane helpers, but it is optional. > + * This callback is used by the atomic modeset helpers, but it is > + * optional. > */ > void (*atomic_begin)(struct drm_crtc *crtc, > struct drm_atomic_state *state); > @@ -397,8 +395,8 @@ struct drm_crtc_helper_funcs { > * has picked. See drm_atomic_helper_commit_planes() for a discussion of > * the tradeoffs and variants of plane commit helpers. > * > - * This callback is used by the atomic modeset helpers and by the > - * transitional plane helpers, but it is optional. > + * This callback is used by the atomic modeset helpers, but it is > + * optional. > */ > void (*atomic_flush)(struct drm_crtc *crtc, > struct drm_atomic_state *state); > @@ -507,8 +505,8 @@ static inline void drm_crtc_helper_add(struct drm_crtc *crtc, > /** > * struct drm_encoder_helper_funcs - helper operations for encoders > * > - * These hooks are used by the legacy CRTC helpers, the transitional plane > - * helpers and the new atomic modesetting helpers. > + * These hooks are used by the legacy CRTC helpers and the new atomic > + * modesetting helpers. > */ > struct drm_encoder_helper_funcs { > /** > @@ -1185,8 +1183,7 @@ static inline void drm_connector_helper_add(struct drm_connector *connector, > /** > * struct drm_plane_helper_funcs - helper operations for planes > * > - * These functions are used by the atomic helpers and by the transitional plane > - * helpers. > + * These functions are used by the atomic helpers. > */ > struct drm_plane_helper_funcs { > /** > @@ -1221,9 +1218,8 @@ struct drm_plane_helper_funcs { > * The helpers will call @cleanup_fb with matching arguments for every > * successful call to this hook. > * > - * This callback is used by the atomic modeset helpers and by the > - * transitional plane helpers, but it is optional. See @begin_fb_access > - * for preparing per-commit resources. > + * This callback is used by the atomic modeset helpers, but it is > + * optional. See @begin_fb_access for preparing per-commit resources. > * > * RETURNS: > * > @@ -1240,8 +1236,8 @@ struct drm_plane_helper_funcs { > * This hook is called to clean up any resources allocated for the given > * framebuffer and plane configuration in @prepare_fb. > * > - * This callback is used by the atomic modeset helpers and by the > - * transitional plane helpers, but it is optional. > + * This callback is used by the atomic modeset helpers, but it is > + * optional. > */ > void (*cleanup_fb)(struct drm_plane *plane, > struct drm_plane_state *old_state); > @@ -1295,8 +1291,8 @@ struct drm_plane_helper_funcs { > * all updated. Again the recommendation is to just call check helpers > * until a maximal configuration is reached. > * > - * This callback is used by the atomic modeset helpers and by the > - * transitional plane helpers, but it is optional. > + * This callback is used by the atomic modeset helpers, but it is > + * optional. > * > * NOTE: > * > @@ -1326,8 +1322,7 @@ struct drm_plane_helper_funcs { > * has picked. See drm_atomic_helper_commit_planes() for a discussion of > * the tradeoffs and variants of plane commit helpers. > * > - * This callback is used by the atomic modeset helpers and by the > - * transitional plane helpers, but it is optional. > + * This callback is used by the atomic modeset helpers, but it is optional. > */ > void (*atomic_update)(struct drm_plane *plane, > struct drm_atomic_state *state); > @@ -1376,9 +1371,8 @@ struct drm_plane_helper_funcs { > * has picked. See drm_atomic_helper_commit_planes() for a discussion of > * the tradeoffs and variants of plane commit helpers. > * > - * This callback is used by the atomic modeset helpers and by the > - * transitional plane helpers, but it is optional. It's intended to > - * reverse the effects of @atomic_enable. > + * This callback is used by the atomic modeset helpers, but it is > + * optional. It's intended to reverse the effects of @atomic_enable. > */ > void (*atomic_disable)(struct drm_plane *plane, > struct drm_atomic_state *state); -- Regards, Laurent Pinchart