Re: [PATCH v2 07/13] i2c: acpi: Use ACPI wake capability bit to set wake_irq
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Date: 2022-09-13 18:17:26
Also in:
linux-acpi, linux-i2c, lkml
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Date: 2022-09-13 18:17:26
Also in:
linux-acpi, linux-i2c, lkml
On Mon, Sep 12, 2022 at 04:13:11PM -0600, Raul E Rangel wrote:
Device tree already has a mechanism to pass the wake_irq. It does this by looking for the wakeup-source property and setting the I2C_CLIENT_WAKE flag. This CL adds the ACPI equivalent. It uses the ACPI interrupt wake flag to determine if the interrupt can be used to wake the system. Previously the i2c drivers had to make assumptions and blindly enable the wake IRQ. This can cause spurious wake events. e.g., If there is a device with an Active Low interrupt and the device gets powered off while suspending, the interrupt line will go low since it's no longer powered and wakes the system. For this reason we should respect the board designers wishes and honor the wake bit defined on the interrupt.
...
+ if (irq > 0 && acpi_wake_capable) + client->flags |= I2C_CLIENT_WAKE;
Why do we need a parameter and can't simply set this flag inside the callee? -- With Best Regards, Andy Shevchenko