mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-02-20 15:06:39 +07:00
pca953x: support GPIOLIB GPIO naming
Add support to the PCA953x driver to use the GPIOLIB naming facility for GPIOs. Signed-off-by: Daniel Silverstone <dsilvers@simtec.co.uk> Cc: Ben Gardner <bgardner@wabtec.com> Cc: Jean Delvare <khali@linux-fr.org> Cc: David Brownell <david-b@pacbell.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
7bfa58dd4a
commit
77906a5461
@ -50,6 +50,7 @@ struct pca953x_chip {
|
|||||||
|
|
||||||
struct i2c_client *client;
|
struct i2c_client *client;
|
||||||
struct gpio_chip gpio_chip;
|
struct gpio_chip gpio_chip;
|
||||||
|
char **names;
|
||||||
};
|
};
|
||||||
|
|
||||||
static int pca953x_write_reg(struct pca953x_chip *chip, int reg, uint16_t val)
|
static int pca953x_write_reg(struct pca953x_chip *chip, int reg, uint16_t val)
|
||||||
@ -192,6 +193,7 @@ static void pca953x_setup_gpio(struct pca953x_chip *chip, int gpios)
|
|||||||
gc->label = chip->client->name;
|
gc->label = chip->client->name;
|
||||||
gc->dev = &chip->client->dev;
|
gc->dev = &chip->client->dev;
|
||||||
gc->owner = THIS_MODULE;
|
gc->owner = THIS_MODULE;
|
||||||
|
gc->names = chip->names;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int __devinit pca953x_probe(struct i2c_client *client,
|
static int __devinit pca953x_probe(struct i2c_client *client,
|
||||||
@ -215,6 +217,8 @@ static int __devinit pca953x_probe(struct i2c_client *client,
|
|||||||
|
|
||||||
chip->gpio_start = pdata->gpio_base;
|
chip->gpio_start = pdata->gpio_base;
|
||||||
|
|
||||||
|
chip->names = pdata->names;
|
||||||
|
|
||||||
/* initialize cached registers from their original values.
|
/* initialize cached registers from their original values.
|
||||||
* we can't share this chip with another i2c master.
|
* we can't share this chip with another i2c master.
|
||||||
*/
|
*/
|
||||||
|
@ -15,4 +15,5 @@ struct pca953x_platform_data {
|
|||||||
int (*teardown)(struct i2c_client *client,
|
int (*teardown)(struct i2c_client *client,
|
||||||
unsigned gpio, unsigned ngpio,
|
unsigned gpio, unsigned ngpio,
|
||||||
void *context);
|
void *context);
|
||||||
|
char **names;
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user