]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
panel/samsung-atna33xc20: Use refcounted allocation in place of devm_kzalloc()
authorAnusha Srivatsa <asrivats@redhat.com>
Fri, 30 May 2025 02:46:12 +0000 (21:46 -0500)
committerMaxime Ripard <mripard@kernel.org>
Mon, 2 Jun 2025 07:21:50 +0000 (09:21 +0200)
Move to using the new API devm_drm_panel_alloc() to allocate the
panel.

Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Anusha Srivatsa <asrivats@redhat.com>
Link: https://lore.kernel.org/r/20250529-b4-drm_panel_mass_driver_convert_part3-v2-10-5d75a3711e40@redhat.com
Signed-off-by: Maxime Ripard <mripard@kernel.org>
drivers/gpu/drm/panel/panel-samsung-atna33xc20.c

index 9a482a744b8c15fe1592a09c2bfe17a2bb05b5ac..20ec27d2d6c255be2c33f65d3ff25a41045a9d07 100644 (file)
@@ -266,9 +266,12 @@ static int atana33xc20_probe(struct dp_aux_ep_device *aux_ep)
        struct device *dev = &aux_ep->dev;
        int ret;
 
-       panel = devm_kzalloc(dev, sizeof(*panel), GFP_KERNEL);
-       if (!panel)
-               return -ENOMEM;
+       panel = devm_drm_panel_alloc(dev, struct atana33xc20_panel, base,
+                                    &atana33xc20_funcs,
+                                    DRM_MODE_CONNECTOR_eDP);
+       if (IS_ERR(panel))
+               return PTR_ERR(panel);
+
        dev_set_drvdata(dev, panel);
 
        panel->aux = aux_ep->aux;
@@ -301,8 +304,6 @@ static int atana33xc20_probe(struct dp_aux_ep_device *aux_ep)
        if (ret)
                return ret;
 
-       drm_panel_init(&panel->base, dev, &atana33xc20_funcs, DRM_MODE_CONNECTOR_eDP);
-
        pm_runtime_get_sync(dev);
        ret = drm_panel_dp_aux_backlight(&panel->base, aux_ep->aux);
        pm_runtime_mark_last_busy(dev);