On Wed, 2017-05-24 at 12:42 +0200, Hans de Goede wrote: > Some peripherals on Bay Trail and Cherry Trail platforms signal PME to > the > PMC to wakeup the system. When this happens software needs to clear > the > PME_B0_STS bit in the GPE0a_STS register to avoid an IRQ storm on IRQ > 9. > > This is modeled in ACPI through the INT0002 ACPI Virtual GPIO device. > > This commit adds a driver which registers the Virtual GPIOs expected > by the DSDT on these devices, letting gpiolib-acpi claim the > virtual GPIO and install a GPIO-interrupt handler which call the _L02 > handler as it would for a real GPIO controller. > > Cc: joeyli <jlee@xxxxxxxx> > Cc: Takashi Iwai <tiwai@xxxxxxx> > Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx> > Reviewed-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> In addition to my comment to v4 (if you are going to apply it) couple of nits below. (I'm fine with current version, as tag says, though consider them anyway) > +#define GPE0A_PME_B0_STS_BIT BIT(13) > +#define GPE0A_PME_B0_EN_BIT BIT(13) > +#define GPE0A_STS_PORT 0x420 > +#define GPE0A_EN_PORT 0x428 Perhaps squeeze bits after actual ports like ADDRESSa ADDRa_BITa ADDRESSb ADDRb_BITa > + for (i = 0; i < GPE0A_PME_B0_VIRT_GPIO_PIN; i++) > + clear_bit(i, chip->irq_valid_mask); bitmap_zero() ? -- Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> Intel Finland Oy -- To unsubscribe from this list: send the line "unsubscribe linux-gpio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html