[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHQZ30ASMkwR32iT+cs2hq5q9ZYNuJY2ezqnC_HfKhgQ1=f90g@mail.gmail.com>
Date: Tue, 21 Dec 2021 11:13:13 -0700
From: Raul Rangel <rrangel@...omium.org>
To: Dmitry Torokhov <dmitry.torokhov@...il.com>
Cc: linux-kernel@...r.kernel.org, mario.limonciello@....com,
linux-input@...r.kernel.org, dianders@...omium.org,
"jingle.wu" <jingle.wu@....com.tw>,
Matt DeVillier <matt.devillier@...il.com>
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@...il.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
Powered by blists - more mailing lists