From nobody Thu Apr 9 10:31:59 2026 Received: from bali.collaboradmins.com (bali.collaboradmins.com [148.251.105.195]) (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 8A2053ACA5F for ; Mon, 9 Mar 2026 22:44:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.251.105.195 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773096289; cv=none; b=bBgopwgbukxS4k2lI81zobZX5et7oTAUzbgwcx7RYrgUChF/v5H/6lm5IPpHCnEdDw6cun+I3EwmvV8IwSD7cqEm5w7NsY4DK7Bu7JJRJsEpsmwMeukcY35DbVTVtPE3EW9BGHkGm7iX4/LqNCEgEApYq28EdsnOMKSt8dpHQdg= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773096289; c=relaxed/simple; bh=xo9QQHStfDCiwvrnX8gYefgXw8+E1okyws1RbyegTa0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Mx8+76+rDrfLo5z1lQS1FisX1gAw9HpbWLke4JVYM4Grnx63Ss2WcP/Xuse+d/EnN4cXtVvM9tL1p9DTPOeMoRGoUgxuWabiReyaVDhNYwsuS/AsJFtBlCaTOhrKlUPPx8XxAD2mmsYj61KOhGFadT+RRiKfqck1f5wLeJ+BkAE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b=MUFshNDn; arc=none smtp.client-ip=148.251.105.195 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=collabora.com header.i=@collabora.com header.b="MUFshNDn" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1773096280; bh=xo9QQHStfDCiwvrnX8gYefgXw8+E1okyws1RbyegTa0=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=MUFshNDnweRPVChi7qrfjHfFwSRVdiL0b8XAczr8uMsJgXplY368+FKUdzYsEGzs/ huMI0Nj7Q/ZDzrO+C1b7CkGzyoP+lXQ2Lx300BDdRjgE1vaA0SaAfBGd9ZSJqy4nyH b6n9saTioLsDBoZqYyuwuQGzsYLRIEIanGSdYoEBHIZT6djgr1DJ5zUH7ksceM9pru OlAE42H91N6AJg7Y8FzrJ7bzRl4Ndoi29HFWjRm67IN1eujpqMj7RCLX+wRqRLm1Lc TfG5M2LX9YapR8o4tXkj4QPinBNx7lBDv6EyLhKoyxg0s+GlBOHQzJlATFSjYYK4Sg 1ytIwnlRQa6sQ== Received: from localhost (unknown [86.123.23.225]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: cristicc) by bali.collaboradmins.com (Postfix) with ESMTPSA id 1768217E0EB0; Mon, 9 Mar 2026 23:44:40 +0100 (CET) From: Cristian Ciocaltea Date: Tue, 10 Mar 2026 00:44:34 +0200 Subject: [PATCH v2 6/8] drm/rockchip: dw_hdmi_qp: Switch to drmm_encoder_init() Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260310-drm-rk-fixes-v2-6-645ecfb43f49@collabora.com> References: <20260310-drm-rk-fixes-v2-0-645ecfb43f49@collabora.com> In-Reply-To: <20260310-drm-rk-fixes-v2-0-645ecfb43f49@collabora.com> To: Sandy Huang , =?utf-8?q?Heiko_St=C3=BCbner?= , Andy Yan , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Dmitry Baryshkov , Dmitry Baryshkov , Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec Cc: kernel@collabora.com, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org X-Mailer: b4 0.14.3 Simplify encoder initialization and cleanup by making use of drmm_encoder_init(), which takes care of registering drm_encoder_cleanup() with drmm_add_action(). Signed-off-by: Cristian Ciocaltea --- drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c b/drivers/gpu/d= rm/rockchip/dw_hdmi_qp-rockchip.c index 1a09bcc96c3e..c78db7f8ab6c 100644 --- a/drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c +++ b/drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c @@ -21,6 +21,7 @@ #include #include #include +#include #include #include #include @@ -477,7 +478,7 @@ static int dw_hdmi_qp_rockchip_bind(struct device *dev,= struct device *master, if (!pdev->dev.of_node) return -ENODEV; =20 - hdmi =3D devm_kzalloc(&pdev->dev, sizeof(*hdmi), GFP_KERNEL); + hdmi =3D drmm_kzalloc(drm, sizeof(*hdmi), GFP_KERNEL); if (!hdmi) return -ENOMEM; =20 @@ -586,16 +587,16 @@ static int dw_hdmi_qp_rockchip_bind(struct device *de= v, struct device *master, return ret; =20 drm_encoder_helper_add(encoder, &dw_hdmi_qp_rockchip_encoder_helper_funcs= ); - drm_simple_encoder_init(drm, encoder, DRM_MODE_ENCODER_TMDS); + ret =3D drmm_encoder_init(drm, encoder, NULL, DRM_MODE_ENCODER_TMDS, NULL= ); + if (ret) + return dev_err_probe(hdmi->dev, ret, "Failed to init encoder"); =20 platform_set_drvdata(pdev, hdmi); =20 hdmi->hdmi =3D dw_hdmi_qp_bind(pdev, encoder, &plat_data); - if (IS_ERR(hdmi->hdmi)) { - drm_encoder_cleanup(encoder); + if (IS_ERR(hdmi->hdmi)) return dev_err_probe(hdmi->dev, PTR_ERR(hdmi->hdmi), "Failed to bind dw-hdmi-qp"); - } =20 connector =3D drm_bridge_connector_init(drm, encoder); if (IS_ERR(connector)) @@ -612,8 +613,6 @@ static void dw_hdmi_qp_rockchip_unbind(struct device *d= ev, struct rockchip_hdmi_qp *hdmi =3D dev_get_drvdata(dev); =20 cancel_delayed_work_sync(&hdmi->hpd_work); - - drm_encoder_cleanup(&hdmi->encoder.encoder); } =20 static const struct component_ops dw_hdmi_qp_rockchip_ops =3D { --=20 2.52.0