Linux ACPI
 help / color / mirror / Atom feed
From: Mario Limonciello <superm1@kernel.org>
To: Mika Westerberg <mika.westerberg@linux.intel.com>
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: Mon, 18 Aug 2025 13:03:48 -0500	[thread overview]
Message-ID: <08dd199e-0e7d-44b8-b980-5fde226cd636@kernel.org> (raw)
In-Reply-To: <20250818045538.GH476609@black.igk.intel.com>

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.

> 
>> 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


  reply	other threads:[~2025-08-18 18:03 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 [this message]
2025-08-19  6:18     ` Mika Westerberg
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=08dd199e-0e7d-44b8-b980-5fde226cd636@kernel.org \
    --to=superm1@kernel.org \
    --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=mika.westerberg@linux.intel.com \
    --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