diff options
author | Andy Shevchenko <andriy.shevchenko@linux.intel.com> | 2019-10-25 11:56:11 +0300 |
---|---|---|
committer | Andy Shevchenko <andriy.shevchenko@linux.intel.com> | 2019-12-13 16:48:48 +0200 |
commit | 1e78ea71226b68cec24dca53c53e673de60211bf (patch) | |
tree | 33bdf45364a778d59ebeb1d56e111d837ad98650 /drivers/pinctrl | |
parent | 03fb681badafa3035d2af4cb48870f69ad993dcb (diff) | |
download | linux-1e78ea71226b68cec24dca53c53e673de60211bf.tar.gz linux-1e78ea71226b68cec24dca53c53e673de60211bf.tar.bz2 linux-1e78ea71226b68cec24dca53c53e673de60211bf.zip |
pinctrl: lynxpoint: Keep pointer to struct device instead of its container
There is no need to keep pointer to struct platform_device, which is container
of struct device, because the latter is what have been used everywhere outside
of ->probe() path. In any case we may derive pointer to the container when
needed.
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Diffstat (limited to 'drivers/pinctrl')
-rw-r--r-- | drivers/pinctrl/intel/pinctrl-lynxpoint.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/pinctrl/intel/pinctrl-lynxpoint.c b/drivers/pinctrl/intel/pinctrl-lynxpoint.c index 3ac95f9d6a7f..1d5f5053fe14 100644 --- a/drivers/pinctrl/intel/pinctrl-lynxpoint.c +++ b/drivers/pinctrl/intel/pinctrl-lynxpoint.c @@ -48,7 +48,7 @@ struct lp_gpio { struct gpio_chip chip; - struct platform_device *pdev; + struct device *dev; raw_spinlock_t lock; unsigned long reg_base; }; @@ -106,11 +106,11 @@ static int lp_gpio_request(struct gpio_chip *chip, unsigned offset) unsigned long acpi_use = lp_gpio_reg(chip, offset, LP_ACPI_OWNED); u32 value; - pm_runtime_get(&lg->pdev->dev); /* should we put if failed */ + pm_runtime_get(lg->dev); /* should we put if failed */ /* Fail if BIOS reserved pin for ACPI use */ if (!(inl(acpi_use) & BIT(offset % 32))) { - dev_err(&lg->pdev->dev, "gpio %d reserved for ACPI\n", offset); + dev_err(lg->dev, "gpio %d reserved for ACPI\n", offset); return -EBUSY; } @@ -121,7 +121,7 @@ static int lp_gpio_request(struct gpio_chip *chip, unsigned offset) value = inl(reg); if ((value & USE_SEL_MASK) != USE_SEL_GPIO) { outl((value & USE_SEL_MASK) | USE_SEL_GPIO, reg); - dev_warn(&lg->pdev->dev, FW_BUG "pin %u forcibly reconfigured as GPIO\n", offset); + dev_warn(lg->dev, FW_BUG "pin %u forcibly reconfigured as GPIO\n", offset); } /* enable input sensing */ @@ -139,7 +139,7 @@ static void lp_gpio_free(struct gpio_chip *chip, unsigned offset) /* disable input sensing */ outl(inl(conf2) | GPINDIS_BIT, conf2); - pm_runtime_put(&lg->pdev->dev); + pm_runtime_put(lg->dev); } static int lp_irq_type(struct irq_data *d, unsigned type) @@ -341,7 +341,7 @@ static int lp_gpio_probe(struct platform_device *pdev) if (!lg) return -ENOMEM; - lg->pdev = pdev; + lg->dev = dev; platform_set_drvdata(pdev, lg); io_rc = platform_get_resource(pdev, IORESOURCE_IO, 0); @@ -385,7 +385,7 @@ static int lp_gpio_probe(struct platform_device *pdev) girq->init_hw = lp_gpio_irq_init_hw; girq->parent_handler = lp_gpio_irq_handler; girq->num_parents = 1; - girq->parents = devm_kcalloc(&pdev->dev, girq->num_parents, + girq->parents = devm_kcalloc(dev, girq->num_parents, sizeof(*girq->parents), GFP_KERNEL); if (!girq->parents) |