[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Zrk0MeDFI1vvsK9A@p14s>
Date: Sun, 11 Aug 2024 15:59:13 -0600
From: Mathieu Poirier <mathieu.poirier@...aro.org>
To: Andrew Davis <afd@...com>
Cc: Hari Nagalla <hnagalla@...com>, Bjorn Andersson <andersson@...nel.org>,
linux-remoteproc@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] rpmsg: char: Export alias for RPMSG ID rpmsg-raw from
table
Hi Andrew,
On Mon, Jul 29, 2024 at 11:45:27AM -0500, Andrew Davis wrote:
> Module aliases are used by userspace to identify the correct module to
> load for a detected hardware. The currently supported RPMSG device IDs for
> this module include "rpmsg-raw", but the module alias is "rpmsg_chrdev".
>
> Use the helper macro MODULE_DEVICE_TABLE(rpmsg) to export the correct
> supported IDs. And while here, to keep backwards compatibility we also add
> the other ID "rpmsg_chrdev" so that it is also still exported as an alias.
>
> This has the side benefit of adding support for some legacy firmware
> which still uses the original "rpmsg_chrdev" ID. This was the ID used for
> this driver before it was upstreamed (as reflected by the module alias).
>
> Signed-off-by: Andrew Davis <afd@...com>
> ---
> drivers/rpmsg/rpmsg_char.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/rpmsg/rpmsg_char.c b/drivers/rpmsg/rpmsg_char.c
> index eec7642d26863..96fcdd2d7093c 100644
> --- a/drivers/rpmsg/rpmsg_char.c
> +++ b/drivers/rpmsg/rpmsg_char.c
> @@ -522,8 +522,10 @@ static void rpmsg_chrdev_remove(struct rpmsg_device *rpdev)
>
> static struct rpmsg_device_id rpmsg_chrdev_id_table[] = {
> { .name = "rpmsg-raw" },
> + { .name = "rpmsg_chrdev" },
> { },
> };
> +MODULE_DEVICE_TABLE(rpmsg, rpmsg_chrdev_id_table);
So you want to be able to do both "modprobe rpmsg-raw" and "modprobe
rpmsg_chrdev" ?
I'm not sure to get the aim of your patch and will need a little more details.
Thanks,
Mathieu
>
> static struct rpmsg_driver rpmsg_chrdev_driver = {
> .probe = rpmsg_chrdev_probe,
> @@ -565,6 +567,5 @@ static void rpmsg_chrdev_exit(void)
> }
> module_exit(rpmsg_chrdev_exit);
>
> -MODULE_ALIAS("rpmsg:rpmsg_chrdev");
> MODULE_DESCRIPTION("RPMSG device interface");
> MODULE_LICENSE("GPL v2");
> --
> 2.39.2
>
Powered by blists - more mailing lists