]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
mailbox: use error ret code of of_parse_phandle_with_args()
authorTudor Ambarus <tudor.ambarus@linaro.org>
Mon, 24 Feb 2025 08:27:13 +0000 (08:27 +0000)
committerJassi Brar <jassisinghbrar@gmail.com>
Thu, 27 Mar 2025 01:58:25 +0000 (20:58 -0500)
In case of error, of_parse_phandle_with_args() returns -EINVAL when the
passed index is negative, or -ENOENT when the index is for an empty
phandle. The mailbox core overwrote the error return code with a less
precise -ENODEV. Use the error returned code from
of_parse_phandle_with_args().

Signed-off-by: Tudor Ambarus <tudor.ambarus@linaro.org>
Signed-off-by: Jassi Brar <jassisinghbrar@gmail.com>
drivers/mailbox/mailbox.c

index d3d26a2c98956c9e73ee23bf1f0873cab6fee93a..cb174e788a96c244c52c2f07f3ffdf103c68d0c2 100644 (file)
@@ -415,11 +415,12 @@ struct mbox_chan *mbox_request_channel(struct mbox_client *cl, int index)
 
        mutex_lock(&con_mutex);
 
-       if (of_parse_phandle_with_args(dev->of_node, "mboxes",
-                                      "#mbox-cells", index, &spec)) {
+       ret = of_parse_phandle_with_args(dev->of_node, "mboxes", "#mbox-cells",
+                                        index, &spec);
+       if (ret) {
                dev_dbg(dev, "%s: can't parse \"mboxes\" property\n", __func__);
                mutex_unlock(&con_mutex);
-               return ERR_PTR(-ENODEV);
+               return ERR_PTR(ret);
        }
 
        chan = ERR_PTR(-EPROBE_DEFER);