2020-03-16 20:15:28

by Mayank Rana

[permalink] [raw]
Subject: [PATCH] extcon: Mark extcon_get_edev_name() function as exported symbol

extcon_get_edev_name() function provides client driver to request
extcon dev's name. If extcon driver and client driver are compiled
as loadable modules, extcon_get_edev_name() function symbol is not
visible to client driver. Hence mark extcon_find_edev_name() function
as exported symbol.

Signed-off-by: Mayank Rana <[email protected]>
---
drivers/extcon/extcon.c | 1 +
include/linux/extcon.h | 5 +++++
2 files changed, 6 insertions(+)

diff --git a/drivers/extcon/extcon.c b/drivers/extcon/extcon.c
index e055893..2dfbfec 100644
--- a/drivers/extcon/extcon.c
+++ b/drivers/extcon/extcon.c
@@ -1406,6 +1406,7 @@ const char *extcon_get_edev_name(struct extcon_dev *edev)
{
return !edev ? NULL : edev->name;
}
+EXPORT_SYMBOL_GPL(extcon_get_edev_name);

static int __init extcon_class_init(void)
{
diff --git a/include/linux/extcon.h b/include/linux/extcon.h
index 1b1d77e..fd183fb 100644
--- a/include/linux/extcon.h
+++ b/include/linux/extcon.h
@@ -286,6 +286,11 @@ static inline struct extcon_dev *extcon_get_edev_by_phandle(struct device *dev,
{
return ERR_PTR(-ENODEV);
}
+
+static inline const char *extcon_get_edev_name(struct extcon_dev *edev)
+{
+ return NULL;
+}
#endif /* CONFIG_EXTCON */

/*
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project


2020-03-18 08:23:31

by Chanwoo Choi

[permalink] [raw]
Subject: Re: [PATCH] extcon: Mark extcon_get_edev_name() function as exported symbol

On 3/17/20 5:14 AM, Mayank Rana wrote:
> extcon_get_edev_name() function provides client driver to request
> extcon dev's name. If extcon driver and client driver are compiled
> as loadable modules, extcon_get_edev_name() function symbol is not
> visible to client driver. Hence mark extcon_find_edev_name() function
> as exported symbol.
>
> Signed-off-by: Mayank Rana <[email protected]>
> ---
> drivers/extcon/extcon.c | 1 +
> include/linux/extcon.h | 5 +++++
> 2 files changed, 6 insertions(+)
>
> diff --git a/drivers/extcon/extcon.c b/drivers/extcon/extcon.c
> index e055893..2dfbfec 100644
> --- a/drivers/extcon/extcon.c
> +++ b/drivers/extcon/extcon.c
> @@ -1406,6 +1406,7 @@ const char *extcon_get_edev_name(struct extcon_dev *edev)
> {
> return !edev ? NULL : edev->name;
> }
> +EXPORT_SYMBOL_GPL(extcon_get_edev_name);
>
> static int __init extcon_class_init(void)
> {
> diff --git a/include/linux/extcon.h b/include/linux/extcon.h
> index 1b1d77e..fd183fb 100644
> --- a/include/linux/extcon.h
> +++ b/include/linux/extcon.h
> @@ -286,6 +286,11 @@ static inline struct extcon_dev *extcon_get_edev_by_phandle(struct device *dev,
> {
> return ERR_PTR(-ENODEV);
> }
> +
> +static inline const char *extcon_get_edev_name(struct extcon_dev *edev)
> +{
> + return NULL;
> +}
> #endif /* CONFIG_EXTCON */
>
> /*
>

Applied it. Thanks.

--
Best Regards,
Chanwoo Choi
Samsung Electronics