Returning an error value in a platform driver's remove callback results in
a generic error message being emitted by the driver core, but otherwise it
doesn't make a difference. The device goes away anyhow.
So instead of triggering the generic platform error message, emit a more
helpful message if a problem occurs and return 0 to suppress the generic
message.
This patch is a preparation for making platform remove callbacks return
void.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Reviewed-by: Lorenzo Pieralisi <lpieralisi@kernel.org>
Link: https://lore.kernel.org/r/20221014160623.467195-1-u.kleine-koenig@pengutronix.de
Signed-off-by: Will Deacon <will@kernel.org>
 
        int err, i;
 
        err = sdei_event_disable(adata->sdei_event);
-       if (err)
-               return err;
+       if (err) {
+               dev_err(&pdev->dev, "Failed to disable sdei-event #%d (%pe)\n",
+                       adata->sdei_event, ERR_PTR(err));
+               return 0;
+       }
 
        for (i = 0; i < 3; i++) {
                err = sdei_event_unregister(adata->sdei_event);
                schedule();
        }
 
-       return err;
+       if (err)
+               dev_err(&pdev->dev, "Failed to unregister sdei-event #%d (%pe)\n",
+                       adata->sdei_event, ERR_PTR(err));
+
+       return 0;
 }
 
 static struct platform_driver agdi_driver = {