Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1627837 > unrolled thread

[PATCH] gpio: export add/remove lookup table functions

Started byAnatolij Gustschin <agust@denx.de>
First post2017-04-20 23:30 +0200
Last post2017-04-24 16:20 +0200
Articles 4 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] gpio: export add/remove lookup table functions Anatolij Gustschin <agust@denx.de> - 2017-04-20 23:30 +0200
    Re: [PATCH] gpio: export add/remove lookup table functions Andy Shevchenko <andy.shevchenko@gmail.com> - 2017-04-21 21:30 +0200
      [PATCH] gpiolib: Add stubs for gpiod lookup table interface Anatolij Gustschin <agust@denx.de> - 2017-04-24 16:10 +0200
      Re: [PATCH] gpio: export add/remove lookup table functions Anatolij Gustschin <agust@denx.de> - 2017-04-24 16:20 +0200

#1627837 — [PATCH] gpio: export add/remove lookup table functions

FromAnatolij Gustschin <agust@denx.de>
Date2017-04-20 23:30 +0200
Subject[PATCH] gpio: export add/remove lookup table functions
Message-ID<tyrOh-5Bo-3@gated-at.bofh.it>
For hot-pluggable devices adding GPIOs dynamically we need to
assemble and add the gpio lookup tables at probe time in modules,
so that requesting these GPIOs in attached drivers can work.
Export lookup table functions for modules.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
---
 drivers/gpio/gpiolib.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
index 4aa1e78..9196b1e 100644
--- a/drivers/gpio/gpiolib.c
+++ b/drivers/gpio/gpiolib.c
@@ -3008,6 +3008,7 @@ void gpiod_add_lookup_table(struct gpiod_lookup_table *table)
 
 	mutex_unlock(&gpio_lookup_lock);
 }
+EXPORT_SYMBOL_GPL(gpiod_add_lookup_table);
 
 /**
  * gpiod_remove_lookup_table() - unregister GPIO device consumers
@@ -3021,6 +3022,7 @@ void gpiod_remove_lookup_table(struct gpiod_lookup_table *table)
 
 	mutex_unlock(&gpio_lookup_lock);
 }
+EXPORT_SYMBOL_GPL(gpiod_remove_lookup_table);
 
 static struct gpiod_lookup_table *gpiod_find_lookup_table(struct device *dev)
 {
-- 
2.7.4

[toc] | [next] | [standalone]


#1628530

FromAndy Shevchenko <andy.shevchenko@gmail.com>
Date2017-04-21 21:30 +0200
Message-ID<tyMpH-1h4-5@gated-at.bofh.it>
In reply to#1627837
On Fri, Apr 21, 2017 at 12:23 AM, Anatolij Gustschin <agust@denx.de> wrote:
> For hot-pluggable devices adding GPIOs dynamically we need to
> assemble and add the gpio lookup tables at probe time in modules,
> so that requesting these GPIOs in attached drivers can work.
> Export lookup table functions for modules.
>
> Signed-off-by: Anatolij Gustschin <agust@denx.de>

...and still a question "Do we go with stubs for them in case of !GPIOLIB?"

Patch below looks good to me:
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>

> ---
>  drivers/gpio/gpiolib.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
> index 4aa1e78..9196b1e 100644
> --- a/drivers/gpio/gpiolib.c
> +++ b/drivers/gpio/gpiolib.c
> @@ -3008,6 +3008,7 @@ void gpiod_add_lookup_table(struct gpiod_lookup_table *table)
>
>         mutex_unlock(&gpio_lookup_lock);
>  }
> +EXPORT_SYMBOL_GPL(gpiod_add_lookup_table);
>
>  /**
>   * gpiod_remove_lookup_table() - unregister GPIO device consumers
> @@ -3021,6 +3022,7 @@ void gpiod_remove_lookup_table(struct gpiod_lookup_table *table)
>
>         mutex_unlock(&gpio_lookup_lock);
>  }
> +EXPORT_SYMBOL_GPL(gpiod_remove_lookup_table);
>
>  static struct gpiod_lookup_table *gpiod_find_lookup_table(struct device *dev)
>  {
> --
> 2.7.4
>



-- 
With Best Regards,
Andy Shevchenko

[toc] | [prev] | [next] | [standalone]


#1629604 — [PATCH] gpiolib: Add stubs for gpiod lookup table interface

FromAnatolij Gustschin <agust@denx.de>
Date2017-04-24 16:10 +0200
Subject[PATCH] gpiolib: Add stubs for gpiod lookup table interface
Message-ID<tzMQG-80I-21@gated-at.bofh.it>
In reply to#1628530
Add stubs for gpiod_add_lookup_table() and gpiod_remove_lookup_table()
for the !GPIOLIB case to prevent build errors. Also add prototypes.

Signed-off-by: Anatolij Gustschin <agust@denx.de>
---
 include/linux/gpio/consumer.h | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/include/linux/gpio/consumer.h b/include/linux/gpio/consumer.h
index 933d936..6c0cc67 100644
--- a/include/linux/gpio/consumer.h
+++ b/include/linux/gpio/consumer.h
@@ -144,6 +144,11 @@ struct gpio_desc *devm_fwnode_get_index_gpiod_from_child(struct device *dev,
 						enum gpiod_flags flags,
 						const char *label);
 
+struct gpiod_lookup_table;
+
+void gpiod_add_lookup_table(struct gpiod_lookup_table *table);
+void gpiod_remove_lookup_table(struct gpiod_lookup_table *table);
+
 #else /* CONFIG_GPIOLIB */
 
 static inline int gpiod_count(struct device *dev, const char *con_id)
@@ -435,6 +440,16 @@ struct gpio_desc *devm_fwnode_get_index_gpiod_from_child(struct device *dev,
 	return ERR_PTR(-ENOSYS);
 }
 
+struct gpiod_lookup_table;
+
+static inline void gpiod_add_lookup_table(struct gpiod_lookup_table *table)
+{
+}
+
+static inline void gpiod_remove_lookup_table(struct gpiod_lookup_table *table)
+{
+}
+
 #endif /* CONFIG_GPIOLIB */
 
 static inline
-- 
2.7.4

[toc] | [prev] | [next] | [standalone]


#1629610

FromAnatolij Gustschin <agust@denx.de>
Date2017-04-24 16:20 +0200
Message-ID<tzN0l-83T-15@gated-at.bofh.it>
In reply to#1628530
On Fri, 21 Apr 2017 22:24:49 +0300
Andy Shevchenko andy.shevchenko@gmail.com wrote:
...
>...and still a question "Do we go with stubs for them in case of !GPIOLIB?"

I've just sent a patch.

>Patch below looks good to me:

Thanks for review!

Anatolij

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web