Hi Stefan,

On 8/21/24 18:40, Stefan Wahren wrote:
Common pattern of handling deferred probe can be simplified with
dev_err_probe() and devm_clk_get_optional(). This results in much
less code.

Signed-off-by: Stefan Wahren <wahre...@gmx.net>
Reviewed-by: Maíra Canal <mca...@igalia.com>

Applied to drm/misc/kernel/drm-misc-next!

Best Regards,
- Maíra

---
  drivers/gpu/drm/vc4/vc4_v3d.c | 18 +++---------------
  1 file changed, 3 insertions(+), 15 deletions(-)

diff --git a/drivers/gpu/drm/vc4/vc4_v3d.c b/drivers/gpu/drm/vc4/vc4_v3d.c
index 6e566584afbf..bf5c4e36c94e 100644
--- a/drivers/gpu/drm/vc4/vc4_v3d.c
+++ b/drivers/gpu/drm/vc4/vc4_v3d.c
@@ -441,21 +441,9 @@ static int vc4_v3d_bind(struct device *dev, struct device 
*master, void *data)
        vc4->v3d = v3d;
        v3d->vc4 = vc4;

-       v3d->clk = devm_clk_get(dev, NULL);
-       if (IS_ERR(v3d->clk)) {
-               int ret = PTR_ERR(v3d->clk);
-
-               if (ret == -ENOENT) {
-                       /* bcm2835 didn't have a clock reference in the DT. */
-                       ret = 0;
-                       v3d->clk = NULL;
-               } else {
-                       if (ret != -EPROBE_DEFER)
-                               dev_err(dev, "Failed to get V3D clock: %d\n",
-                                       ret);
-                       return ret;
-               }
-       }
+       v3d->clk = devm_clk_get_optional(dev, NULL);
+       if (IS_ERR(v3d->clk))
+               return dev_err_probe(dev, PTR_ERR(v3d->clk), "Failed to get V3D 
clock\n");

        ret = platform_get_irq(pdev, 0);
        if (ret < 0)
--
2.34.1

Reply via email to