From: Mika Westerberg <mika.westerberg@linux.intel.com>
To: Mario Limonciello <superm1@kernel.org>
Cc: mario.limonciello@amd.com, westeri@kernel.org,
andriy.shevchenko@linux.intel.com, linus.walleij@linaro.org,
brgl@bgdev.pl, linux-gpio@vger.kernel.org,
linux-acpi@vger.kernel.org
Subject: Re: [PATCH] gpiolib: acpi: Program debounce when finding GPIO
Date: Tue, 19 Aug 2025 08:18:13 +0200 [thread overview]
Message-ID: <20250819061813.GJ476609@black.igk.intel.com> (raw)
In-Reply-To: <08dd199e-0e7d-44b8-b980-5fde226cd636@kernel.org>
On Mon, Aug 18, 2025 at 01:03:48PM -0500, Mario Limonciello wrote:
> On 8/17/25 11:55 PM, Mika Westerberg wrote:
> > Hi,
> >
> > On Sun, Aug 17, 2025 at 08:52:07PM -0500, Mario Limonciello (AMD) wrote:
> > > When soc-button-array looks up the GPIO to use it calls acpi_find_gpio()
> > > which will parse _CRS.
> > >
> > > acpi_find_gpio.cold (drivers/gpio/gpiolib-acpi-core.c:953)
> > > gpiod_find_and_request (drivers/gpio/gpiolib.c:4598 drivers/gpio/gpiolib.c:4625)
> > > gpiod_get_index (drivers/gpio/gpiolib.c:4877)
> > >
> > > The GPIO is setup basically, but the debounce information is discarded.
> > > The platform will assert what debounce should be in _CRS, so program it
> > > at the time it's available.
> >
> > The spec says for GpioInt():
> >
> > DebounceTimeout is an optional argument specifying the debounce wait
> > time, in hundredths of milliseconds. The bit field name _DBT is
> > automatically created to refer to this portion of the resource
> > descriptor.
> >
> > I was not sure but wanted to check that if it is left out, does ACPICA fill
> > it with 0? If yes (I would expect so) then this is fine.
>
> Yeah AFAICT you're right. The ACPI resource is zero'ed out, so if the field
> was empty it should default to zero.
Okay good.
Then from my perspective,
Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
> >
> > > Signed-off-by: Mario Limonciello (AMD) <superm1@kernel.org>
> > > ---
> > > v4:
> >
> > You missed "v4" in the $subject.
>
> Whoops, thanks. If there ends up being a reason to spin I'll send the next
> one as a v5.
>
> >
> > > * Just add a direct call instead
> > > * drop tag
> > > * update commit message
> > > ---
> > > drivers/gpio/gpiolib-acpi-core.c | 6 ++++++
> > > 1 file changed, 6 insertions(+)
> > >
> > > diff --git a/drivers/gpio/gpiolib-acpi-core.c b/drivers/gpio/gpiolib-acpi-core.c
> > > index 12b24a717e43f..6388e8e363dee 100644
> > > --- a/drivers/gpio/gpiolib-acpi-core.c
> > > +++ b/drivers/gpio/gpiolib-acpi-core.c
> > > @@ -944,6 +944,7 @@ struct gpio_desc *acpi_find_gpio(struct fwnode_handle *fwnode,
> > > bool can_fallback = acpi_can_fallback_to_crs(adev, con_id);
> > > struct acpi_gpio_info info;
> > > struct gpio_desc *desc;
> > > + int ret;
> > > desc = __acpi_find_gpio(fwnode, con_id, idx, can_fallback, &info);
> > > if (IS_ERR(desc))
> > > @@ -957,6 +958,11 @@ struct gpio_desc *acpi_find_gpio(struct fwnode_handle *fwnode,
> > > acpi_gpio_update_gpiod_flags(dflags, &info);
> > > acpi_gpio_update_gpiod_lookup_flags(lookupflags, &info);
> > > + /* ACPI uses hundredths of milliseconds units */
> > > + ret = gpio_set_debounce_timeout(desc, info.debounce * 10);
> > > + if (ret)
> > > + return ERR_PTR(ret);
> > > +
> > > return desc;
> > > }
> > > --
> > > 2.43.0
next prev parent reply other threads:[~2025-08-19 6:18 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-18 1:52 [PATCH] gpiolib: acpi: Program debounce when finding GPIO Mario Limonciello (AMD)
2025-08-18 4:55 ` Mika Westerberg
2025-08-18 18:03 ` Mario Limonciello
2025-08-19 6:18 ` Mika Westerberg [this message]
2025-08-20 15:04 ` Andy Shevchenko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250819061813.GJ476609@black.igk.intel.com \
--to=mika.westerberg@linux.intel.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=brgl@bgdev.pl \
--cc=linus.walleij@linaro.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-gpio@vger.kernel.org \
--cc=mario.limonciello@amd.com \
--cc=superm1@kernel.org \
--cc=westeri@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox