diff mbox series

gpio: name PCA953x gpio chips after device name

Message ID 20181115235442.27494-1-linus.walleij@linaro.org
State Accepted
Commit 5128f8d4450159f59565d247437d3bedda3994cb
Headers show
Series gpio: name PCA953x gpio chips after device name | expand

Commit Message

Linus Walleij Nov. 15, 2018, 11:54 p.m. UTC
Instead of using the name directly from the I2C client
to name the gpio_chip, use dev_name() on the client->dev,
so we get the sometimes more unique device name, as I2C has
a mechanism for naming its devices explicitly in e.g.
board data.

This is a prerequisite for being able to reference
uniquely any I2C GPIO expander defined in a board file
when setting up GPIO descriptor tables.

Cc: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

---
 drivers/gpio/gpio-pca953x.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

-- 
2.17.2

Comments

Robert Jarzmik Nov. 16, 2018, 10:04 p.m. UTC | #1
Linus Walleij <linus.walleij@linaro.org> writes:

> Instead of using the name directly from the I2C client

> to name the gpio_chip, use dev_name() on the client->dev,

> so we get the sometimes more unique device name, as I2C has

> a mechanism for naming its devices explicitly in e.g.

> board data.

>

> This is a prerequisite for being able to reference

> uniquely any I2C GPIO expander defined in a board file

> when setting up GPIO descriptor tables.

>

> Cc: Robert Jarzmik <robert.jarzmik@free.fr>

> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

Nice.

Reviewed-by: Robert Jarzmik <robert.jarzmik@free.fr>


Cheers.

--
Robert
diff mbox series

Patch

diff --git a/drivers/gpio/gpio-pca953x.c b/drivers/gpio/gpio-pca953x.c
index 023a32cfac42..540166443c34 100644
--- a/drivers/gpio/gpio-pca953x.c
+++ b/drivers/gpio/gpio-pca953x.c
@@ -449,7 +449,7 @@  static void pca953x_setup_gpio(struct pca953x_chip *chip, int gpios)
 
 	gc->base = chip->gpio_start;
 	gc->ngpio = gpios;
-	gc->label = chip->client->name;
+	gc->label = dev_name(&chip->client->dev);
 	gc->parent = &chip->client->dev;
 	gc->owner = THIS_MODULE;
 	gc->names = chip->names;