Messages in this thread | | | From | Raul Rangel <> | Date | Tue, 21 Dec 2021 11:13:13 -0700 | Subject | Re: [PATCH 2/3] Input: elan_i2c - Use PM subsystem to manage wake irq |
| |
On Mon, Dec 20, 2021 at 7:41 PM Dmitry Torokhov <dmitry.torokhov@gmail.com> wrote: > > Hi Raul, > > On Mon, Dec 20, 2021 at 04:43:45PM -0700, Raul E Rangel wrote: > > @@ -1368,11 +1367,13 @@ static int elan_probe(struct i2c_client *client, > > } > > > > /* > > - * Systems using device tree should set up wakeup via DTS, > > + * Systems using device tree or ACPI should set up wakeup via DTS/ACPI, > > * the rest will configure device as wakeup source by default. > > */ > > - if (!dev->of_node) > > + if (!dev->of_node && !ACPI_COMPANION(dev)) { > > I think this will break our Rambis that use ACPI for enumeration but > actually lack _PRW. As far as I remember their trackpads were capable > of waking up the system.
Looks like the _PRW was only added for the atmel touchscreen: https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/third_party/coreboot/src/mainboard/google/rambi/acpi/touchscreen_atmel.asl;l=42
I'm assuming this was before we had the `drivers/i2c/hid` chip driver.
> > I think we should remove this chunk completely and instead add necessary > code to drivers/platform/chrome/chrome-laptop.c (I suppose we need to > have additional member in struct acpi_peripheral to indicate whether > device needs to be configured for wakeup and then act upon it in > chromeos_laptop_adjust_client().
I think that's a good idea. Should I add all the mainboards defined here: https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/third_party/coreboot/src/mainboard/google/rambi/Kconfig;l=48 ?
> > > device_init_wakeup(dev, true); > > + dev_pm_set_wake_irq(dev, client->irq); > > + } > > > > return 0; > > } > > Thanks. > > -- > Dmitry
| |