This reverts commit 81e166ec0a35ed5a01e2453603b0b1c73a0532cc.

Signed-off-by: Yong Li <sdliy...@gmail.com>
---
 drivers/gpio/gpio-pca953x.c | 44 +++++++-------------------------------------
 1 file changed, 7 insertions(+), 37 deletions(-)

diff --git a/drivers/gpio/gpio-pca953x.c b/drivers/gpio/gpio-pca953x.c
index f99706f..5d8dec6 100644
--- a/drivers/gpio/gpio-pca953x.c
+++ b/drivers/gpio/gpio-pca953x.c
@@ -80,6 +80,12 @@ static const struct i2c_device_id pca953x_id[] = {
 };
 MODULE_DEVICE_TABLE(i2c, pca953x_id);
 
+static const struct acpi_device_id pca953x_acpi_ids[] = {
+       { "INT3491", 16 | PCA953X_TYPE | PCA_INT, },
+       { }
+};
+MODULE_DEVICE_TABLE(acpi, pca953x_acpi_ids);
+
 #define MAX_BANK 5
 #define BANK_SZ 8
 
@@ -106,35 +112,6 @@ struct pca953x_chip {
        unsigned long driver_data;
 };
 
-struct pca953x_info {
-       kernel_ulong_t driver_data;
-       void (*setup)(struct pca953x_chip *chip);
-};
-
-static void pca953x_setup_int3491(struct pca953x_chip *chip)
-{
-       struct acpi_device *adev = ACPI_COMPANION(&chip->client->dev);
-       unsigned int uid;
-
-       if (kstrtouint(acpi_device_uid(adev), 0, &uid) || !uid--)
-               return;
-
-       chip->gpio_start = 8 /* sch_gpio */ +
-                          8 /* gpio-dwapb */ +
-                         16 /* pca9535 */ * uid;
-}
-
-static const struct pca953x_info pca953x_info_int3491 = {
-       .driver_data = 16 | PCA953X_TYPE | PCA_INT,
-       .setup = pca953x_setup_int3491,
-};
-
-static const struct acpi_device_id pca953x_acpi_ids[] = {
-       { "INT3491",  (kernel_ulong_t)&pca953x_info_int3491 },
-       { }
-};
-MODULE_DEVICE_TABLE(acpi, pca953x_acpi_ids);
-
 static inline struct pca953x_chip *to_pca(struct gpio_chip *gc)
 {
        return container_of(gc, struct pca953x_chip, gpio_chip);
@@ -757,19 +734,12 @@ static int pca953x_probe(struct i2c_client *client,
                chip->driver_data = id->driver_data;
        } else {
                const struct acpi_device_id *id;
-               const struct pca953x_info *info;
 
                id = acpi_match_device(pca953x_acpi_ids, &client->dev);
                if (!id)
                        return -ENODEV;
 
-               info = (struct pca953x_info *)id->driver_data;
-               if (!info)
-                       return -ENODEV;
-
-               chip->driver_data = info->driver_data;
-               if (info->setup)
-                       info->setup(chip);
+               chip->driver_data = id->driver_data;
        }
 
        chip->chip_type = PCA_CHIP_TYPE(chip->driver_data);
-- 
2.1.4

-- 
_______________________________________________
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto

Reply via email to