gpiolib: define gpio suffixes globally
PATCH v4 1/4 gpiolib: define gpio suffixes globally
Avoid multiple identical definitions of the gpio suffix strings by putting them into a global constant array.
Signed-off-by Rojhalat Ibrahim <[email protected]>
Reviewed-by Alexandre Courbot <[email protected]>
---
Change log:
v4: no change
v3: add this change as a separate patch
drivers/gpio/gpiolib.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-)
drivers/gpio/gpiolib.c +9 -8
@@ -53,6 +53,9 @@ static DEFINE_MUTEX(gpio_lookup_lock);static LIST_HEAD (gpio_lookup_list);LIST_HEAD (gpio_chips); +/* gpio suffixes used for ACPI and device tree lookup */ +static const char *const gpio_suffixes[] = {"gpios" ,"gpio" }; +static inline void desc_set_label (struct gpio_desc *d,const char *label) { d->label = label;
@@ -1657,19 +1660,18 @@ static struct gpio_desc *of_find_gpio(struct device *dev, const char *con_id,unsigned int idx, enum gpio_lookup_flags *flags) { -static const char *const suffixes[] = {"gpios" ,"gpio" }; char prop_name[32]; /* 32 is max size of property name */enum of_gpio_flags of_flags;struct gpio_desc *desc;unsigned int i; -for (i =0 ; i <ARRAY_SIZE (suffixes); i++) { +for (i =0 ; i <ARRAY_SIZE (gpio_suffixes); i++) {if (con_id)snprintf (prop_name,sizeof (prop_name),"%s-%s" , con_id, - suffixes[i]); + gpio_suffixes[i]);else snprintf (prop_name,sizeof (prop_name),"%s" , - suffixes[i]); + gpio_suffixes[i]); desc =of_get_named_gpiod_flags (dev->of_node, prop_name, idx, &of_flags);
@@ -1690,7 +1692,6 @@ static struct gpio_desc *acpi_find_gpio(struct device *dev, const char *con_id,unsigned int idx, enum gpio_lookup_flags *flags) { -static const char *const suffixes[] = {"gpios" ,"gpio" }; struct acpi_device *adev = ACPI_COMPANION(dev);struct acpi_gpio_info info;struct gpio_desc *desc;
@@ -1698,13 +1699,13 @@ static struct gpio_desc *acpi_find_gpio(struct device *dev, const char *con_id,int i;/* Try first from _DSD */ -for (i =0 ; i <ARRAY_SIZE (suffixes); i++) { +for (i =0 ; i <ARRAY_SIZE (gpio_suffixes); i++) {if (con_id &&strcmp (con_id,"gpios" )) {snprintf (propname,sizeof (propname),"%s-%s" , - con_id, suffixes[i]); + con_id, gpio_suffixes[i]); }else {snprintf (propname,sizeof (propname),"%s" , - suffixes[i]); + gpio_suffixes[i]); } desc =acpi_get_gpiod_by_index (adev, propname, idx, &info);
Signature · 1 line
2.0.5