The device node has the compatible string, so the glink channel name
isn't used for modprobing. Add the qcom,smd-rpm compatible to let the
module be automatically loaded when required.
Fixes: bcabe1e09135 ("soc: qcom: smd-rpm: Match rpmsg channel instead of compatible")
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
drivers/soc/qcom/smd-rpm.c | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/drivers/soc/qcom/smd-rpm.c b/drivers/soc/qcom/smd-rpm.c
index b7056aed4c7d..ad12cacf80ce 100644
--- a/drivers/soc/qcom/smd-rpm.c
+++ b/drivers/soc/qcom/smd-rpm.c
@@ -224,12 +224,21 @@ static const struct rpmsg_device_id qcom_smd_rpm_id_table[] = {
};
MODULE_DEVICE_TABLE(rpmsg, qcom_smd_rpm_id_table);
+static const struct of_device_id smd_rpm_of_match[] = {
+ { .compatible = "qcom,smd-rpm" },
+ { },
+};
+MODULE_DEVICE_TABLE(of, smd_rpm_of_match);
+
static struct rpmsg_driver qcom_smd_rpm_driver = {
.probe = qcom_smd_rpm_probe,
.remove = qcom_smd_rpm_remove,
.callback = qcom_smd_rpm_callback,
.id_table = qcom_smd_rpm_id_table,
- .drv.name = "qcom_smd_rpm",
+ .drv = {
+ .name = "qcom_smd_rpm",
+ .of_match_table = smd_rpm_of_match,
+ },
};
static int __init qcom_smd_rpm_init(void)
--
2.39.2
On 29/07/2024 13:04, Dmitry Baryshkov wrote:
> The device node has the compatible string, so the glink channel name
> isn't used for modprobing. Add the qcom,smd-rpm compatible to let the
> module be automatically loaded when required.
So autoloading is not working? I don't understand whether you are fixing
real issue or just making something complete based on your feelings.
>
> Fixes: bcabe1e09135 ("soc: qcom: smd-rpm: Match rpmsg channel instead of compatible")
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
> drivers/soc/qcom/smd-rpm.c | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
Best regards,
Krzysztof
On Mon, 29 Jul 2024 at 18:04, Krzysztof Kozlowski <krzk@kernel.org> wrote:
>
> On 29/07/2024 13:04, Dmitry Baryshkov wrote:
> > The device node has the compatible string, so the glink channel name
> > isn't used for modprobing. Add the qcom,smd-rpm compatible to let the
> > module be automatically loaded when required.
>
> So autoloading is not working? I don't understand whether you are fixing
> real issue or just making something complete based on your feelings.
Yes, autoloading of smd-rpm is not working since bcabe1e09135, kernel
looks for qcom,rpm-FOO rather than the rpmsg:rpm_requests.
The obvious fix is to revert the commit, but I don't think that
listing all the chipsets there is a correct thing.
> >
> > Fixes: bcabe1e09135 ("soc: qcom: smd-rpm: Match rpmsg channel instead of compatible")
> > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> > ---
> > drivers/soc/qcom/smd-rpm.c | 11 ++++++++++-
> > 1 file changed, 10 insertions(+), 1 deletion(-)
>
> Best regards,
> Krzysztof
>
--
With best wishes
Dmitry
On 29/07/2024 19:49, Dmitry Baryshkov wrote: > On Mon, 29 Jul 2024 at 18:04, Krzysztof Kozlowski <krzk@kernel.org> wrote: >> >> On 29/07/2024 13:04, Dmitry Baryshkov wrote: >>> The device node has the compatible string, so the glink channel name >>> isn't used for modprobing. Add the qcom,smd-rpm compatible to let the >>> module be automatically loaded when required. >> >> So autoloading is not working? I don't understand whether you are fixing >> real issue or just making something complete based on your feelings. > > Yes, autoloading of smd-rpm is not working since bcabe1e09135, kernel > looks for qcom,rpm-FOO rather than the rpmsg:rpm_requests. > The obvious fix is to revert the commit, but I don't think that > listing all the chipsets there is a correct thing. > OK, to me it wasn't so sure whether there is a real issue. Anyway, the reason behind adding common compatible is not to fix autoloading but be explicit that all of devices follow some sort of FW<->OS protocol. Best regards, Krzysztof
On Mon, 29 Jul 2024 at 21:36, Krzysztof Kozlowski <krzk@kernel.org> wrote: > > On 29/07/2024 19:49, Dmitry Baryshkov wrote: > > On Mon, 29 Jul 2024 at 18:04, Krzysztof Kozlowski <krzk@kernel.org> wrote: > >> > >> On 29/07/2024 13:04, Dmitry Baryshkov wrote: > >>> The device node has the compatible string, so the glink channel name > >>> isn't used for modprobing. Add the qcom,smd-rpm compatible to let the > >>> module be automatically loaded when required. > >> > >> So autoloading is not working? I don't understand whether you are fixing > >> real issue or just making something complete based on your feelings. > > > > Yes, autoloading of smd-rpm is not working since bcabe1e09135, kernel > > looks for qcom,rpm-FOO rather than the rpmsg:rpm_requests. > > The obvious fix is to revert the commit, but I don't think that > > listing all the chipsets there is a correct thing. > > > > OK, to me it wasn't so sure whether there is a real issue. Anyway, the > reason behind adding common compatible is not to fix autoloading but be > explicit that all of devices follow some sort of FW<->OS protocol. Well, it is both. But I see your point, let's fix the offending commit first by listing all RPM blocks and then fix the issue as a separate set of patches. -- With best wishes Dmitry
© 2016 - 2025 Red Hat, Inc.