diff options
author | Linus Walleij <linus.walleij@linaro.org> | 2015-12-08 04:16:00 -0500 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2016-01-05 08:15:02 -0500 |
commit | 378596f99460ebd255dc3f5c1bc67a9ff09273f3 (patch) | |
tree | d1bd0a30a1920096227ec7b81d5a50b54dd0a4cb /drivers/pinctrl/qcom | |
parent | ed47941a17993cc455b1009a9810b85faa02c23f (diff) |
pinctrl: ssbi-gpio: use gpiochip data pointer
This makes the driver use the data pointer added to the gpio_chip
to store a pointer to the state container instead of relying on
container_of().
Cc: Björn Andersson <bjorn.andersson@sonymobile.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/pinctrl/qcom')
-rw-r--r-- | drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c b/drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c index 7bea0df06fb1..c01f51d094f7 100644 --- a/drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c +++ b/drivers/pinctrl/qcom/pinctrl-ssbi-gpio.c | |||
@@ -443,7 +443,7 @@ static struct pinctrl_desc pm8xxx_pinctrl_desc = { | |||
443 | static int pm8xxx_gpio_direction_input(struct gpio_chip *chip, | 443 | static int pm8xxx_gpio_direction_input(struct gpio_chip *chip, |
444 | unsigned offset) | 444 | unsigned offset) |
445 | { | 445 | { |
446 | struct pm8xxx_gpio *pctrl = container_of(chip, struct pm8xxx_gpio, chip); | 446 | struct pm8xxx_gpio *pctrl = gpiochip_get_data(chip); |
447 | struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; | 447 | struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; |
448 | u8 val; | 448 | u8 val; |
449 | 449 | ||
@@ -459,7 +459,7 @@ static int pm8xxx_gpio_direction_output(struct gpio_chip *chip, | |||
459 | unsigned offset, | 459 | unsigned offset, |
460 | int value) | 460 | int value) |
461 | { | 461 | { |
462 | struct pm8xxx_gpio *pctrl = container_of(chip, struct pm8xxx_gpio, chip); | 462 | struct pm8xxx_gpio *pctrl = gpiochip_get_data(chip); |
463 | struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; | 463 | struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; |
464 | u8 val; | 464 | u8 val; |
465 | 465 | ||
@@ -477,7 +477,7 @@ static int pm8xxx_gpio_direction_output(struct gpio_chip *chip, | |||
477 | 477 | ||
478 | static int pm8xxx_gpio_get(struct gpio_chip *chip, unsigned offset) | 478 | static int pm8xxx_gpio_get(struct gpio_chip *chip, unsigned offset) |
479 | { | 479 | { |
480 | struct pm8xxx_gpio *pctrl = container_of(chip, struct pm8xxx_gpio, chip); | 480 | struct pm8xxx_gpio *pctrl = gpiochip_get_data(chip); |
481 | struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; | 481 | struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; |
482 | bool state; | 482 | bool state; |
483 | int ret; | 483 | int ret; |
@@ -495,7 +495,7 @@ static int pm8xxx_gpio_get(struct gpio_chip *chip, unsigned offset) | |||
495 | 495 | ||
496 | static void pm8xxx_gpio_set(struct gpio_chip *chip, unsigned offset, int value) | 496 | static void pm8xxx_gpio_set(struct gpio_chip *chip, unsigned offset, int value) |
497 | { | 497 | { |
498 | struct pm8xxx_gpio *pctrl = container_of(chip, struct pm8xxx_gpio, chip); | 498 | struct pm8xxx_gpio *pctrl = gpiochip_get_data(chip); |
499 | struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; | 499 | struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; |
500 | u8 val; | 500 | u8 val; |
501 | 501 | ||
@@ -524,7 +524,7 @@ static int pm8xxx_gpio_of_xlate(struct gpio_chip *chip, | |||
524 | 524 | ||
525 | static int pm8xxx_gpio_to_irq(struct gpio_chip *chip, unsigned offset) | 525 | static int pm8xxx_gpio_to_irq(struct gpio_chip *chip, unsigned offset) |
526 | { | 526 | { |
527 | struct pm8xxx_gpio *pctrl = container_of(chip, struct pm8xxx_gpio, chip); | 527 | struct pm8xxx_gpio *pctrl = gpiochip_get_data(chip); |
528 | struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; | 528 | struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; |
529 | 529 | ||
530 | return pin->irq; | 530 | return pin->irq; |
@@ -539,7 +539,7 @@ static void pm8xxx_gpio_dbg_show_one(struct seq_file *s, | |||
539 | unsigned offset, | 539 | unsigned offset, |
540 | unsigned gpio) | 540 | unsigned gpio) |
541 | { | 541 | { |
542 | struct pm8xxx_gpio *pctrl = container_of(chip, struct pm8xxx_gpio, chip); | 542 | struct pm8xxx_gpio *pctrl = gpiochip_get_data(chip); |
543 | struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; | 543 | struct pm8xxx_pin_data *pin = pctrl->desc.pins[offset].drv_data; |
544 | 544 | ||
545 | static const char * const modes[] = { | 545 | static const char * const modes[] = { |
@@ -735,7 +735,7 @@ static int pm8xxx_gpio_probe(struct platform_device *pdev) | |||
735 | pctrl->chip.of_gpio_n_cells = 2; | 735 | pctrl->chip.of_gpio_n_cells = 2; |
736 | pctrl->chip.label = dev_name(pctrl->dev); | 736 | pctrl->chip.label = dev_name(pctrl->dev); |
737 | pctrl->chip.ngpio = pctrl->npins; | 737 | pctrl->chip.ngpio = pctrl->npins; |
738 | ret = gpiochip_add(&pctrl->chip); | 738 | ret = gpiochip_add_data(&pctrl->chip, pctrl); |
739 | if (ret) { | 739 | if (ret) { |
740 | dev_err(&pdev->dev, "failed register gpiochip\n"); | 740 | dev_err(&pdev->dev, "failed register gpiochip\n"); |
741 | goto unregister_pinctrl; | 741 | goto unregister_pinctrl; |