panel/panel-edp: Use refcounted allocation in place of devm_kzalloc()
authorAnusha Srivatsa <asrivats@redhat.com>
Tue, 1 Apr 2025 16:03:53 +0000 (12:03 -0400)
committerMaxime Ripard <mripard@kernel.org>
Mon, 7 Apr 2025 08:29:17 +0000 (10:29 +0200)
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.

Signed-off-by: Anusha Srivatsa <asrivats@redhat.com>
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://lore.kernel.org/r/20250401-b4-drm-panel-mass-driver-convert-v1-10-cdd7615e1f93@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org>
drivers/gpu/drm/panel/panel-edp.c

index 52028c8f8988d4b771bd2604256aea4cde4f4020..e8fe0014143fd0f86ee51c94f2afd24416fa0c12 100644 (file)
@@ -839,9 +839,10 @@ static int panel_edp_probe(struct device *dev, const struct panel_desc *desc,
        struct device_node *ddc;
        int err;
 
-       panel = devm_kzalloc(dev, sizeof(*panel), GFP_KERNEL);
-       if (!panel)
-               return -ENOMEM;
+       panel = devm_drm_panel_alloc(dev, struct panel_edp, base,
+                                    &panel_edp_funcs, DRM_MODE_CONNECTOR_eDP);
+       if (IS_ERR(panel))
+               return PTR_ERR(panel);
 
        panel->prepared_time = 0;
        panel->desc = desc;
@@ -886,8 +887,6 @@ static int panel_edp_probe(struct device *dev, const struct panel_desc *desc,
 
        dev_set_drvdata(dev, panel);
 
-       drm_panel_init(&panel->base, dev, &panel_edp_funcs, DRM_MODE_CONNECTOR_eDP);
-
        err = drm_panel_of_backlight(&panel->base);
        if (err)
                goto err_finished_ddc_init;