drivers/rpmsg/qcom_smd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
mbox_request_channel() returning value was changed in case of error.
It uses returning value of of_parse_phandle_with_args().
It is returning with -ENOENT instead of -ENODEV when no mboxes property
exists.
Fixes: 24fdd5074b20 ("mailbox: use error ret code of of_parse_phandle_with_args()")
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: Stephan Gerhold <stephan.gerhold@linaro.org>
Tested-by: Stephan Gerhold <stephan.gerhold@linaro.org> # msm8939
Signed-off-by: Barnabás Czémán <barnabas.czeman@mainlining.org>
---
mbox_request_channel() returning value was changed in case of error.
It uses returning value of of_parse_phandle_with_args().
It is returning with -ENOENT instead of -ENODEV when no mboxes property
exists.
ENODEV was checked before fallback to parse qcom,ipc property.
---
Changes in v2:
- Drop already applied patch.
- qcom_smd: rebase
- Link to v1: https://lore.kernel.org/r/20250421-fix-qcom-smd-v1-0-574d071d3f27@mainlining.org
---
drivers/rpmsg/qcom_smd.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/rpmsg/qcom_smd.c b/drivers/rpmsg/qcom_smd.c
index f0f12e7ad2a61922723c16e45738e93bd432c6c6..42594f5ee4385c0071c91d9a5a05fb8517c82bc0 100644
--- a/drivers/rpmsg/qcom_smd.c
+++ b/drivers/rpmsg/qcom_smd.c
@@ -1368,7 +1368,7 @@ static int qcom_smd_parse_edge(struct device *dev,
edge->mbox_client.knows_txdone = true;
edge->mbox_chan = mbox_request_channel(&edge->mbox_client, 0);
if (IS_ERR(edge->mbox_chan)) {
- if (PTR_ERR(edge->mbox_chan) != -ENODEV) {
+ if (PTR_ERR(edge->mbox_chan) != -ENOENT) {
ret = dev_err_probe(dev, PTR_ERR(edge->mbox_chan),
"failed to acquire IPC mailbox\n");
goto put_node;
---
base-commit: d7af19298454ed155f5cf67201a70f5cf836c842
change-id: 20250421-fix-qcom-smd-76f7c414a11a
Best regards,
--
Barnabás Czémán <barnabas.czeman@mainlining.org>
Should i resend/reword the commit? This change is important for SoCs like 8917 what are still using qcom,ipc (because of cycling dependency) in the rpm,smd node. On 31 August 2025 00:39:43 CEST, "Barnabás Czémán" <barnabas.czeman@mainlining.org> wrote: >mbox_request_channel() returning value was changed in case of error. >It uses returning value of of_parse_phandle_with_args(). >It is returning with -ENOENT instead of -ENODEV when no mboxes property >exists. > >Fixes: 24fdd5074b20 ("mailbox: use error ret code of of_parse_phandle_with_args()") >Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> >Reviewed-by: Stephan Gerhold <stephan.gerhold@linaro.org> >Tested-by: Stephan Gerhold <stephan.gerhold@linaro.org> # msm8939 >Signed-off-by: Barnabás Czémán <barnabas.czeman@mainlining.org> >--- >mbox_request_channel() returning value was changed in case of error. >It uses returning value of of_parse_phandle_with_args(). >It is returning with -ENOENT instead of -ENODEV when no mboxes property >exists. > >ENODEV was checked before fallback to parse qcom,ipc property. >--- >Changes in v2: >- Drop already applied patch. >- qcom_smd: rebase >- Link to v1: https://lore.kernel.org/r/20250421-fix-qcom-smd-v1-0-574d071d3f27@mainlining.org >--- > drivers/rpmsg/qcom_smd.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > >diff --git a/drivers/rpmsg/qcom_smd.c b/drivers/rpmsg/qcom_smd.c >index f0f12e7ad2a61922723c16e45738e93bd432c6c6..42594f5ee4385c0071c91d9a5a05fb8517c82bc0 100644 >--- a/drivers/rpmsg/qcom_smd.c >+++ b/drivers/rpmsg/qcom_smd.c >@@ -1368,7 +1368,7 @@ static int qcom_smd_parse_edge(struct device *dev, > edge->mbox_client.knows_txdone = true; > edge->mbox_chan = mbox_request_channel(&edge->mbox_client, 0); > if (IS_ERR(edge->mbox_chan)) { >- if (PTR_ERR(edge->mbox_chan) != -ENODEV) { >+ if (PTR_ERR(edge->mbox_chan) != -ENOENT) { > ret = dev_err_probe(dev, PTR_ERR(edge->mbox_chan), > "failed to acquire IPC mailbox\n"); > goto put_node; > >--- >base-commit: d7af19298454ed155f5cf67201a70f5cf836c842 >change-id: 20250421-fix-qcom-smd-76f7c414a11a > >Best regards,
© 2016 - 2025 Red Hat, Inc.