rpmsg: core: Make remove handler for rpmsg driver optional.
authorPi-Hsun Shih <pihsun@chromium.org>
Mon, 7 Jan 2019 11:38:32 +0000 (19:38 +0800)
committerBjorn Andersson <bjorn.andersson@linaro.org>
Wed, 22 May 2019 06:54:06 +0000 (23:54 -0700)
Most other bus (for example, SPI, i2c) have the remove handler for
driver optional. Make remove handler for rpmsg driver optional too.

Signed-off-by: Pi-Hsun Shih <pihsun@chromium.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
drivers/rpmsg/rpmsg_core.c

index 8122807..ea88fd4 100644 (file)
@@ -493,7 +493,8 @@ static int rpmsg_dev_remove(struct device *dev)
        if (rpdev->ops->announce_destroy)
                err = rpdev->ops->announce_destroy(rpdev);
 
-       rpdrv->remove(rpdev);
+       if (rpdrv->remove)
+               rpdrv->remove(rpdev);
 
        dev_pm_domain_detach(dev, true);