mfd: intel_soc_pmic_core: Remove unnecessary function
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Tue, 21 Feb 2017 11:09:14 +0000 (13:09 +0200)
committerLee Jones <lee.jones@linaro.org>
Thu, 27 Apr 2017 08:25:04 +0000 (09:25 +0100)
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>
drivers/mfd/intel_soc_pmic_core.c

index 12d6ebb4ae5d5bfb5c9e1a753dbc8f81d5194e2d..3b558358666250c755cbc9ef548adbdd55068235 100644 (file)
@@ -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,