diff options
author | Andy Shevchenko <andriy.shevchenko@linux.intel.com> | 2017-02-21 14:09:14 +0300 |
---|---|---|
committer | Lee Jones <lee.jones@linaro.org> | 2017-04-27 11:25:04 +0300 |
commit | 159ee7578a7453f3496268950a78a507cf7ac379 (patch) | |
tree | 328b168266c308ebc2e480e1767d43aed5771ee6 /drivers/mfd | |
parent | ae6816ba0f594edb194d108cfa0dedceb59fb0ff (diff) | |
download | linux-159ee7578a7453f3496268950a78a507cf7ac379.tar.xz |
mfd: intel_soc_pmic_core: Remove unnecessary function
Since commit 845c877009cf ("i2c / ACPI: Assign IRQ for devices that have
GpioInt automatically") I2C core assigns interrupt line to I2C slave
devices with regarding to GpioInt() resources.
There is no need to repeat this in the driver.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Diffstat (limited to 'drivers/mfd')
-rw-r--r-- | drivers/mfd/intel_soc_pmic_core.c | 26 |
1 files changed, 1 insertions, 25 deletions
diff --git a/drivers/mfd/intel_soc_pmic_core.c b/drivers/mfd/intel_soc_pmic_core.c index 12d6ebb4ae5d..3b5583586662 100644 --- a/drivers/mfd/intel_soc_pmic_core.c +++ b/drivers/mfd/intel_soc_pmic_core.c @@ -44,22 +44,6 @@ static struct pwm_lookup crc_pwm_lookup[] = { PWM_LOOKUP("crystal_cove_pwm", 0, "0000:00:02.0", "pwm_backlight", 0, PWM_POLARITY_NORMAL), }; -static int intel_soc_pmic_find_gpio_irq(struct device *dev) -{ - struct gpio_desc *desc; - int irq; - - desc = devm_gpiod_get_index(dev, "intel_soc_pmic", 0, GPIOD_IN); - if (IS_ERR(desc)) - return PTR_ERR(desc); - - irq = gpiod_to_irq(desc); - if (irq < 0) - dev_warn(dev, "Can't get irq: %d\n", irq); - - return irq; -} - static int intel_soc_pmic_i2c_probe(struct i2c_client *i2c, const struct i2c_device_id *i2c_id) { @@ -68,7 +52,6 @@ static int intel_soc_pmic_i2c_probe(struct i2c_client *i2c, struct intel_soc_pmic_config *config; struct intel_soc_pmic *pmic; int ret; - int irq; id = acpi_match_device(dev->driver->acpi_match_table, dev); if (!id || !id->driver_data) @@ -83,14 +66,7 @@ static int intel_soc_pmic_i2c_probe(struct i2c_client *i2c, dev_set_drvdata(dev, pmic); pmic->regmap = devm_regmap_init_i2c(i2c, config->regmap_config); - - /* - * On some boards the PMIC interrupt may come from a GPIO line. Try to - * lookup the ACPI table for a such connection and setup a GPIO - * interrupt if it exists. Otherwise use the IRQ provided by I2C - */ - irq = intel_soc_pmic_find_gpio_irq(dev); - pmic->irq = (irq < 0) ? i2c->irq : irq; + pmic->irq = i2c->irq; ret = regmap_add_irq_chip(pmic->regmap, pmic->irq, config->irq_flags | IRQF_ONESHOT, |