summaryrefslogtreecommitdiffstats
path: root/drivers/pinctrl/qcom
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2015-12-08 04:16:00 -0500
committerLinus Walleij <linus.walleij@linaro.org>2016-01-05 08:15:02 -0500
commit378596f99460ebd255dc3f5c1bc67a9ff09273f3 (patch)
treed1bd0a30a1920096227ec7b81d5a50b54dd0a4cb /drivers/pinctrl/qcom
parented47941a17993cc455b1009a9810b85faa02c23f (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.c14
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 = {
443static int pm8xxx_gpio_direction_input(struct gpio_chip *chip, 443static 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
478static int pm8xxx_gpio_get(struct gpio_chip *chip, unsigned offset) 478static 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
496static void pm8xxx_gpio_set(struct gpio_chip *chip, unsigned offset, int value) 496static 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
525static int pm8xxx_gpio_to_irq(struct gpio_chip *chip, unsigned offset) 525static 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;