gpio: acpi: add _DEP support for Acer One 10
authorRui Zhang <rui.zhang@intel.com>
Wed, 15 Jun 2016 06:47:51 +0000 (08:47 +0200)
committerLinus Walleij <linus.walleij@linaro.org>
Wed, 15 Jun 2016 06:49:15 +0000 (08:49 +0200)
On Acer One 10, the ACPI battery driver can not be probed because
it depends on the GPIO controller as well as the I2C controller to work,
        Device (BATC)
        {
            Name (_HID, EisaId ("PNP0C0A") /* Control Method Battery */)
            ...
            Name (_DEP, Package (0x03)  // _DEP: Dependencies
            {
                I2C1,
                GPO2,
                GPO0
            })
            ...
        }

The I2C dependency also exists on other platforms and has been fixed by commit
40e7fcb19293 ("ACPI: Add _DEP support to fix battery issue on Asus T100TA"),
this patch resolves the GPIO dependency for Acer One 10.

Link:https://bugzilla.kernel.org/show_bug.cgi?id=115191
Tested-by: Stace A. Zacharov <stace75@gmail.com>
Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/gpio/gpiolib-acpi.c

index 2dc52585e3f2f1cc79664beba50ef453dcea1950..af514618d7fbe6e91fd60025891a3ba5e43aac9d 100644 (file)
@@ -836,6 +836,7 @@ void acpi_gpiochip_add(struct gpio_chip *chip)
        }
 
        acpi_gpiochip_request_regions(acpi_gpio);
+       acpi_walk_dep_device_list(handle);
 }
 
 void acpi_gpiochip_remove(struct gpio_chip *chip)