drm/msm/hdmi: convert to devm_drm_bridge_alloc() API
authorLuca Ceresoli <luca.ceresoli@bootlin.com>
Thu, 24 Apr 2025 18:59:25 +0000 (20:59 +0200)
committerLouis Chauvet <louis.chauvet@bootlin.com>
Tue, 29 Apr 2025 09:21:25 +0000 (11:21 +0200)
This is the new API for allocating DRM bridges.

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250424-drm-bridge-convert-to-alloc-api-v2-18-8f91a404d86b@bootlin.com
Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com>
drivers/gpu/drm/msm/hdmi/hdmi_bridge.c

index ab6c8bc..7f71956 100644 (file)
@@ -498,16 +498,15 @@ int msm_hdmi_bridge_init(struct hdmi *hdmi)
        struct hdmi_bridge *hdmi_bridge;
        int ret;
 
-       hdmi_bridge = devm_kzalloc(hdmi->dev->dev,
-                       sizeof(*hdmi_bridge), GFP_KERNEL);
-       if (!hdmi_bridge)
-               return -ENOMEM;
+       hdmi_bridge = devm_drm_bridge_alloc(hdmi->dev->dev, struct hdmi_bridge, base,
+                                           &msm_hdmi_bridge_funcs);
+       if (IS_ERR(hdmi_bridge))
+               return PTR_ERR(hdmi_bridge);
 
        hdmi_bridge->hdmi = hdmi;
        INIT_WORK(&hdmi_bridge->hpd_work, msm_hdmi_hotplug_work);
 
        bridge = &hdmi_bridge->base;
-       bridge->funcs = &msm_hdmi_bridge_funcs;
        bridge->ddc = hdmi->i2c;
        bridge->type = DRM_MODE_CONNECTOR_HDMIA;
        bridge->vendor = "Qualcomm";