Input: goodix - call acpi_device_fix_up_power() in some cases
[linux-2.6-microblaze.git] / drivers / input / touchscreen / goodix.c
index 3ad9870..aa45a9f 100644 (file)
@@ -900,6 +900,11 @@ static int goodix_add_acpi_gpio_mappings(struct goodix_ts_data *ts)
        } else {
                dev_warn(dev, "Unexpected ACPI resources: gpio_count %d, gpio_int_idx %d\n",
                         ts->gpio_count, ts->gpio_int_idx);
+               /*
+                * On some devices _PS0 does a reset for us and
+                * sometimes this is necessary for things to work.
+                */
+               acpi_device_fix_up_power(ACPI_COMPANION(dev));
                return -EINVAL;
        }