diff options
author | Linus Walleij <linus.walleij@linaro.org> | 2015-10-05 13:07:47 +0200 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2015-10-05 13:07:47 +0200 |
commit | 78856ac0dd33036ae08a18b644e9fa40b30ee011 (patch) | |
tree | 028b48aa009348c542b2050e9cfa819adf59ff34 | |
parent | f32517bf1ae0a2de72b3f27200233bd3ad65bfeb (diff) | |
download | linux-stable-78856ac0dd33036ae08a18b644e9fa40b30ee011.tar.gz linux-stable-78856ac0dd33036ae08a18b644e9fa40b30ee011.tar.bz2 linux-stable-78856ac0dd33036ae08a18b644e9fa40b30ee011.zip |
Revert "gpio-sysfs: Use gpio descriptor name instead of gpiochip names array"
This reverts commit ddd5404007b8496f20ad2efe1147e102e6226634.
We need to preserve only using this naming strategy for names
coming from chip->names[], the descripor->name field is for the
new interface.
-rw-r--r-- | drivers/gpio/gpiolib-sysfs.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/gpio/gpiolib-sysfs.c b/drivers/gpio/gpiolib-sysfs.c index 3e81f28e3aee..b57ed8e55ab5 100644 --- a/drivers/gpio/gpiolib-sysfs.c +++ b/drivers/gpio/gpiolib-sysfs.c @@ -550,7 +550,9 @@ int gpiod_export(struct gpio_desc *desc, bool direction_may_change) struct gpiod_data *data; unsigned long flags; int status; + const char *ioname = NULL; struct device *dev; + int offset; /* can't export until sysfs is available ... */ if (!gpio_class.p) { @@ -599,9 +601,13 @@ int gpiod_export(struct gpio_desc *desc, bool direction_may_change) else data->direction_can_change = false; + offset = gpio_chip_hwgpio(desc); + if (chip->names && chip->names[offset]) + ioname = chip->names[offset]; + dev = device_create_with_groups(&gpio_class, chip->dev, MKDEV(0, 0), data, gpio_groups, - desc->name ? desc->name : "gpio%u", + ioname ? ioname : "gpio%u", desc_to_gpio(desc)); if (IS_ERR(dev)) { status = PTR_ERR(dev); |