drm/msm/dp: convert to devm_drm_bridge_alloc() API
authorLuca Ceresoli <luca.ceresoli@bootlin.com>
Thu, 24 Apr 2025 18:59:23 +0000 (20:59 +0200)
committerLouis Chauvet <louis.chauvet@bootlin.com>
Tue, 29 Apr 2025 09:21:24 +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-16-8f91a404d86b@bootlin.com
Signed-off-by: Louis Chauvet <louis.chauvet@bootlin.com>
drivers/gpu/drm/msm/dp/dp_drm.c

index cca57e56c906255a315e759e85a5af5982c80e9c..293f4745f1e20ba67da1d3fc218da3d90e1be588 100644 (file)
@@ -296,14 +296,15 @@ int msm_dp_bridge_init(struct msm_dp *msm_dp_display, struct drm_device *dev,
        struct msm_dp_bridge *msm_dp_bridge;
        struct drm_bridge *bridge;
 
-       msm_dp_bridge = devm_kzalloc(dev->dev, sizeof(*msm_dp_bridge), GFP_KERNEL);
-       if (!msm_dp_bridge)
-               return -ENOMEM;
+       msm_dp_bridge = devm_drm_bridge_alloc(dev->dev, struct msm_dp_bridge, bridge,
+                                             msm_dp_display->is_edp ? &msm_edp_bridge_ops :
+                                             &msm_dp_bridge_ops);
+       if (IS_ERR(msm_dp_bridge))
+               return PTR_ERR(msm_dp_bridge);
 
        msm_dp_bridge->msm_dp_display = msm_dp_display;
 
        bridge = &msm_dp_bridge->bridge;
-       bridge->funcs = msm_dp_display->is_edp ? &msm_edp_bridge_ops : &msm_dp_bridge_ops;
        bridge->type = msm_dp_display->connector_type;
        bridge->ycbcr_420_allowed = yuv_supported;