Re: [PATCH v1 2/3] gpiolib: Rename gpio_set_debounce_timeout() to gpiod_do_set_debounce()

Mika Westerberg
2025-03-04T11:31:40Z

On Tue, Mar 04, 2025 at 01:16:54PM +0200, Andy Shevchenko wrote:
> On Tue, Mar 04, 2025 at 01:11:57PM +0200, Mika Westerberg wrote:
> > On Tue, Mar 04, 2025 at 12:59:25PM +0200, Andy Shevchenko wrote:
> > > On Tue, Mar 04, 2025 at 11:18:04AM +0200, Mika Westerberg wrote:
> > > > On Mon, Mar 03, 2025 at 06:00:33PM +0200, Andy Shevchenko wrote:
> > > > > In order to reduce the 'gpio' namespace when operate over GPIO descriptor
> > > > > rename gpio_set_debounce_timeout() to gpiod_do_set_debounce().
> > > >
> > > > To me anything that has '_do_' in their name sounds like an internal static
> > > > function that gets wrapped by the actual API function(s).
> > > >
> > > > For instance it could be
> > > >
> > > > int gpio_set_debounce_timeout()
> > > > {
> > > > ...
> > > > gpiod_do_set_debounce()
> > > > ...
> > > >
> > > > However, gpiod_set_debounce_timeout() or gpiod_set_debounce() sounds good
> > > > to me.
> > >
> > > Then please propose the second name for gpiod_set_config_XXX to follow
> > > the same pattern. The series unifies naming and reduces the current
> > > inconsistency.
>
> > gpiod_set_config()?
>
> The problem is that
>
> gpiod_set_debounce() and gpiod_set_config() are _existing_ public APIs.
> That's why I considered "_do_" fitting the purpose.

I see.

Hmm, we have:

int gpiod_set_debounce(struct gpio_desc *desc, unsigned int debounce)
{
unsigned long config;

config = pinconf_to_config_packed(PIN_CONFIG_INPUT_DEBOUNCE, debounce);
return gpiod_set_config(desc, config);
}

and

int gpio_set_debounce_timeout(struct gpio_desc *desc, unsigned int debounce)
{
int ret;

ret = gpio_set_config_with_argument_optional(desc,
PIN_CONFIG_INPUT_DEBOUNCE,
debounce);
if (!ret)
gpiod_line_state_notify(desc, GPIO_V2_LINE_CHANGED_CONFIG);

return ret;
}

I wonder if there is an opportunity to consolidate? ;-)