From: Ibai Erkiaga <ibai.erkiaga-elo...@xilinx.com>

Check if request and free operations are present prior calling to the
functions.

Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elo...@xilinx.com>
Signed-off-by: Michal Simek <michal.si...@xilinx.com>
---

Changes in v2: None

 drivers/mailbox/mailbox-uclass.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/drivers/mailbox/mailbox-uclass.c b/drivers/mailbox/mailbox-uclass.c
index 1b4a5863c9e5..809f26b20258 100644
--- a/drivers/mailbox/mailbox-uclass.c
+++ b/drivers/mailbox/mailbox-uclass.c
@@ -63,7 +63,8 @@ int mbox_get_by_index(struct udevice *dev, int index, struct 
mbox_chan *chan)
                return ret;
        }
 
-       ret = ops->request(chan);
+       if (ops->request)
+               ret = ops->request(chan);
        if (ret) {
                debug("ops->request() failed: %d\n", ret);
                return ret;
@@ -94,7 +95,10 @@ int mbox_free(struct mbox_chan *chan)
 
        debug("%s(chan=%p)\n", __func__, chan);
 
-       return ops->free(chan);
+       if (ops->free)
+               return ops->free(chan);
+
+       return 0;
 }
 
 int mbox_send(struct mbox_chan *chan, const void *data)
-- 
2.17.1

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to