Message ID | 20180327210643.3436-3-bjorn.andersson@linaro.org |
---|---|
State | New |
Headers | show |
Series | None | expand |
Hi Bjorn, > -----Original Message----- > From: linux-remoteproc-owner@vger.kernel.org [mailto:linux-remoteproc- > owner@vger.kernel.org] On Behalf Of Bjorn Andersson > Sent: Tuesday, March 27, 2018 11:07 PM > To: Ohad Ben-Cohen <ohad@wizery.com>; Bjorn Andersson > <bjorn.andersson@linaro.org> > Cc: linux-remoteproc@vger.kernel.org; linux-kernel@vger.kernel.org; linux- > arm-msm@vger.kernel.org > Subject: [PATCH 2/3] rpmsg: Only invoke announce_create for rpdev with > endpoints > > For special rpmsg devices without a primary endpoint there is nothing to > announce so don't call the backend announce create function if we didn't > create an endpoint. > > Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> > --- > drivers/rpmsg/rpmsg_core.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/rpmsg/rpmsg_core.c b/drivers/rpmsg/rpmsg_core.c > index dffa3aab7178..e85d2691d2cf 100644 > --- a/drivers/rpmsg/rpmsg_core.c > +++ b/drivers/rpmsg/rpmsg_core.c > @@ -442,7 +442,7 @@ static int rpmsg_dev_probe(struct device *dev) > goto out; > } > > - if (rpdev->ops->announce_create) > + if (ept && rpdev->ops->announce_create) This check is already part of virtio_rpmsg.c (see line 341) /* need to tell remote processor's name service about this channel ? */ if (rpdev->announce && rpdev->ept && virtio_has_feature(vrp->vdev, VIRTIO_RPMSG_F_NS)) { should it be part of qcom_smd driver too? (but each implementation will duplicate checks) Or may have a generic check in the core including rpdev->announce as well (and doing virtio_rpmsg.c clean-up) Change will become: if (rpdev->announce && ept && rpdev->ops->announce_create) Regards, Loic > err = rpdev->ops->announce_create(rpdev); > out: > return err; > -- > 2.16.2 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-remoteproc" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/rpmsg/rpmsg_core.c b/drivers/rpmsg/rpmsg_core.c index dffa3aab7178..e85d2691d2cf 100644 --- a/drivers/rpmsg/rpmsg_core.c +++ b/drivers/rpmsg/rpmsg_core.c @@ -442,7 +442,7 @@ static int rpmsg_dev_probe(struct device *dev) goto out; } - if (rpdev->ops->announce_create) + if (ept && rpdev->ops->announce_create) err = rpdev->ops->announce_create(rpdev); out: return err;
For special rpmsg devices without a primary endpoint there is nothing to announce so don't call the backend announce create function if we didn't create an endpoint. Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org> --- drivers/rpmsg/rpmsg_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.16.2