From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1695437475D for ; Thu, 7 May 2026 15:11:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=pass smtp.client-ip=170.10.129.124 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778166692; cv=pass; b=oLgjmeD4FeEyERPPqHV6/vYJgMlHxqje+mOWKQYcj5rFE8WiL73n9AQj3O/EvHff81z5eXy9NRfYIxOwgDTU3D0TpkjwtWO78KTBLw23AU8SlVDaYTGoz3QkaIzwKCrLu2NA3YkXtYOFHemNbemnDdqG2NumkYr6b7ov3NcpZZY= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778166692; c=relaxed/simple; bh=OS7Ps5TI2hj9oLQzSUiitpGjZ05BfffiCGz4J1GJS6g=; h=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject: To:Cc:Content-Type; b=cUMfmGnNtIakcB5X4Np6zt1EVuKt6IhHh1Fn1HBhTCdzyemkM9lUxlpSjs9DH8wusKC3b9M+MqRpiWZsbYflylunX1mOkAp46Ft9Ip5c7gskdv/GclYYDImgOrqs5Gh/lTxNvpyvOCGbm0GBiFKrfuZylZxjG7AyHdj8AkweQrc= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com; spf=pass smtp.mailfrom=redhat.com; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b=WQiegGu9; dkim=pass (2048-bit key) header.d=redhat.com header.i=@redhat.com header.b=qUickfyp; arc=pass smtp.client-ip=170.10.129.124 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=redhat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="WQiegGu9"; dkim=pass (2048-bit key) header.d=redhat.com header.i=@redhat.com header.b="qUickfyp" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1778166690; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Jg2qgfD0OqkXFXgYbKBXkeRs+ZtWNb2X0OhEpORYsP8=; b=WQiegGu9vuLWJ//wwsJefve1wARCPsXWJycOYPKox6aVTWTSSo8ce8vkM4Vi6DOS2b6Ama BB2uPvnZOBV0qjFCgyTWcgj7EUR9S20vcw2RThZwnxekxw/JB2atDfuX5EocSGOg/DcP3V uVEkSz6g83IE2dLPo6rGQkYD8N14Ia4= Received: from mail-yw1-f200.google.com (mail-yw1-f200.google.com [209.85.128.200]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-351-5SNCfUXwMGaTdnz_LnlYDg-1; Thu, 07 May 2026 11:11:28 -0400 X-MC-Unique: 5SNCfUXwMGaTdnz_LnlYDg-1 X-Mimecast-MFC-AGG-ID: 5SNCfUXwMGaTdnz_LnlYDg_1778166687 Received: by mail-yw1-f200.google.com with SMTP id 00721157ae682-7bdaa2677aeso19651477b3.2 for ; Thu, 07 May 2026 08:11:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1778166687; cv=none; d=google.com; s=arc-20240605; b=Z9s+Dh14l6EIkvG1u7C0ULZQEPcdl81nhtK5NZoJGcFMu3NUfMBuOISV9Hxxfq3SVh B3ig4WV9PM2jHqByCTqJR4ilDEEqMEtK0ZJA13M6kztnYJfP+WomLA5D21JrRKLARrqw 5ByZfrQseGpa4VaXK4CmMydzW66m2m8WiqIC1gacgG9lJgIZDXTDSZWw1qlRSEqwo6q/ LclKcCX6osDFECqcKyp5di5e8z4HnWiQfOaddvXO4OPNKJbaz+HniiiAMdhmTtOXqRRT zipgzhaiH2GHRsZDZiLnxbHuSS0qp4gR2abomTJKPJVFalXpfN7ch5lnV3jiZpkzrgTT yoRQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=Jg2qgfD0OqkXFXgYbKBXkeRs+ZtWNb2X0OhEpORYsP8=; fh=vtPjf1ScmF02MERLDjrLeFgqWNEd88ypJmER6Hm5Kus=; b=POT30XCbO2OOLMSwx/J5EiuDagTMqSjlc/BEIuKtk9g5QpFWFFx5UKMLlhRTyoqN95 Ca4/LIlzJUphS8aiA87t3xkZ7BMWPPRoqR029YtZsZ3hhinkzynTcYAkyNlq5VhmkflO STc2laAjYUg1YgXvAT9CErgtTZcRQ/yl/xuEKS1rLGd8eu6a7uWW7oat9wwcP4pcWFAV zU9+m8bHPvi33TI6yllpGb37tkQ7ZvrgRDibK8nLSaB7oOreLJk2Bx98wdHAZD2WhvDz XZyvnnMdLL3xCKFVdJT4+JJPqV0RgU/HfnWFZAtUVsJiRkKXzTgEsO81ujf3Zmb5Blac Rs8g==; darn=vger.kernel.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1778166687; x=1778771487; darn=vger.kernel.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=Jg2qgfD0OqkXFXgYbKBXkeRs+ZtWNb2X0OhEpORYsP8=; b=qUickfypjpUiGOiJfeH670ymfGecmFosNa3pr/rMHmcjiVnWL+jeGOF/O/ayvfzM0K X0qzoINQA2m6TsTjOq4AIZe0Cr5qFr/Yfp2nKRofkFi6BNWXt4HPFFsbi9GKcvEjQWvT 9GO464uw9ScI2nvw3E6JrxOw5o5qK/rS2s75L7FUvCPM3H657aU1lbsYy7UPtM4dBXsZ 46Ne/D0hd+7RPAcvX1RdmSYQaKToVIHjw6K9jGPlUgiL0wsgQwnymki/yON/ltdW4MOf Ly5XblDva9nE+rulMA+ONp5z3OwYnvZsboVpEr7O6oIGt8BncS3EnwQz3nLveQziYjfn bw+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778166687; x=1778771487; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=Jg2qgfD0OqkXFXgYbKBXkeRs+ZtWNb2X0OhEpORYsP8=; b=oYS+5vCIWPsCgJFjhMBnk6RnGqb1gcM5WrFtZhRVE/Jqx6jqVt+ttQIfLMpsFDCogW 2cW9ccJQ5878DOXqeYaomsB382nAjnrTypxJqzuL/GMxgLAGHKm21gAw2NWdy05ZrfMY ZzUMbKN9JBLj6wI9p5hBfHyXFwz+NiYNSgpQyPWWNZLi+9wWiVvtP4Fu5lf+CzETJHk4 4qlZjMMUXuRKxqT8psXIuKF2bHgoP7iVhFuZvU5WxIgJnaWj6D1Kvi1kRDpMGU8XjEJE eQqT5IXaNSqjXcc3o1f8LFC+ZzpdmMVs4/6vDdTfg4pQxcpup6AWvQpqn/2CRgg67QBG R4tg== X-Forwarded-Encrypted: i=1; AFNElJ9lBrds0h/brXE0qhvWDztzWJlf0qGogVJeRnIYyFiKfLgPdO1EgKzT+lTlcDy/F/7do8hWCEYxzvquM50=@vger.kernel.org X-Gm-Message-State: AOJu0YzSSIk+adCQDPAoa6jF9ulzUQNPqbbPpOLtWwb+J5gEibyfLLqQ Pr/NlFfm4v0oszX5Ucv6lVkf53vNDTG0a4wexigWvBPORHxqzJ70vsHNlyQJXhbtdyDyK6gGC79 OGtqqGyGEP5ZjMMiQWZ4vskJ+/4eYLn7cU5oZglILd1F3e+XIuht54J5XPHdHmIiBZ7ONn921qN SZfz6yJ7oMzMgMIBHlWc0PffNDvRDzaRvuqJKKjid7 X-Gm-Gg: Acq92OHQCMv8T04pKhVx5MeG9TV+28zlss1VeERHHSOPHi+A7nMIXv9YjiNIC46kpeb RJ3n3FAFtgOxGGggYhpNChoVNreAeBP5ZYz82PPzFlt8QWD+6laPlOgAic/aDpvut1x907jwQ5r AwD1XUB4EmlRMPkQi9aRzw41gXWzIu+S3+8NSU90x4IHJHTkqtv83A3yBCzKlODRK56w7H+Br4Y z2z+CdCcguXASXB X-Received: by 2002:a05:690c:c96:b0:7bf:373:1701 with SMTP id 00721157ae682-7bf03732287mr39410187b3.21.1778166687089; Thu, 07 May 2026 08:11:27 -0700 (PDT) X-Received: by 2002:a05:690c:c96:b0:7bf:373:1701 with SMTP id 00721157ae682-7bf03732287mr39409217b3.21.1778166686433; Thu, 07 May 2026 08:11:26 -0700 (PDT) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 References: <20260507-drm_panel_init_rm-v1-0-51f448c7c291@redhat.com> <20260507-drm_panel_init_rm-v1-10-51f448c7c291@redhat.com> <20260507-premium-curious-macaw-d43cbe@houat> In-Reply-To: <20260507-premium-curious-macaw-d43cbe@houat> From: Albert Esteve Date: Thu, 7 May 2026 17:11:15 +0200 X-Gm-Features: AVHnY4IthqHS32CYQM7xKJoq7ItlTkbdhK_0LmennaRXHl6ofPqtxaj0XPLbuko Message-ID: Subject: Re: [PATCH 10/10] drm/panel: Make drm_panel_init() static To: Maxime Ripard Cc: Neil Armstrong , Jessica Zhang , Maarten Lankhorst , Thomas Zimmermann , David Airlie , Simona Vetter , Michael Tretter , Michael Walle , Dario Binacchi , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, May 7, 2026 at 4:57=E2=80=AFPM Maxime Ripard w= rote: > > Hi, > > On Thu, May 07, 2026 at 01:53:08PM +0200, Albert Esteve wrote: > > Now that all panel drivers use devm_drm_panel_alloc(), > > there are no external callers of drm_panel_init(). > > Make it static to prevent new users from bypassing the > > refcounted allocation path. > > > > Remove stale references to drm_panel_init() in kdocs. > > > > Signed-off-by: Albert Esteve > > --- > > drivers/gpu/drm/display/drm_dp_helper.c | 2 +- > > drivers/gpu/drm/drm_panel.c | 8 ++++---- > > include/drm/drm_panel.h | 4 ---- > > 3 files changed, 5 insertions(+), 9 deletions(-) > > > > diff --git a/drivers/gpu/drm/display/drm_dp_helper.c b/drivers/gpu/drm/= display/drm_dp_helper.c > > index a697cc227e289..380ebf0fad2be 100644 > > --- a/drivers/gpu/drm/display/drm_dp_helper.c > > +++ b/drivers/gpu/drm/display/drm_dp_helper.c > > @@ -4626,7 +4626,7 @@ static const struct backlight_ops dp_aux_bl_ops = =3D { > > * Backlight will then be handled transparently without requiring > > * any intervention from the driver. > > * > > - * drm_panel_dp_aux_backlight() must be called after the call to drm_p= anel_init(). > > + * drm_panel_dp_aux_backlight() must be called after devm_drm_panel_al= loc(). > > * > > * Return: 0 on success or a negative error code on failure. > > */ > > diff --git a/drivers/gpu/drm/drm_panel.c b/drivers/gpu/drm/drm_panel.c > > index d1e6598ea3bc0..e3e1c5ceb8ff8 100644 > > --- a/drivers/gpu/drm/drm_panel.c > > +++ b/drivers/gpu/drm/drm_panel.c > > @@ -56,8 +56,9 @@ static LIST_HEAD(panel_list); > > * Initialize the panel structure for subsequent registration with > > * drm_panel_add(). > > */ > > -void drm_panel_init(struct drm_panel *panel, struct device *dev, > > - const struct drm_panel_funcs *funcs, int connector_ty= pe) > > +static void drm_panel_init(struct drm_panel *panel, struct device *dev= , > > + const struct drm_panel_funcs *funcs, > > + int connector_type) > > { > > if (connector_type =3D=3D DRM_MODE_CONNECTOR_Unknown) > > DRM_WARN("%s: %s: a valid connector type is required!\n",= __func__, dev_name(dev)); > > @@ -69,7 +70,6 @@ void drm_panel_init(struct drm_panel *panel, struct d= evice *dev, > > panel->funcs =3D funcs; > > panel->connector_type =3D connector_type; > > } > > -EXPORT_SYMBOL(drm_panel_init); > > > > /** > > * drm_panel_add - add a panel to the global registry > > @@ -708,7 +708,7 @@ EXPORT_SYMBOL(devm_drm_panel_add_follower); > > * A typical implementation for a panel driver supporting device tree > > * will call this function at probe time. Backlight will then be handl= ed > > * transparently without requiring any intervention from the driver. > > - * drm_panel_of_backlight() must be called after the call to drm_panel= _init(). > > + * drm_panel_of_backlight() must be called after devm_drm_panel_alloc(= ). > > I think we can drop that sentence entirely. Now that we can only get a > panel structure through devm_drm_panel_alloc, and that it also > initializes it, we can't call drm_panel_of_backlight before having an > initialized drm_panel. Makes sense, I will remove the sentence and send a v2. It probably follows the same reasoning, but just to ensure you did not miss it: does that apply to drm_panel_dp_aux_backlight() above too? > > Maxime