2019-01-21 15:25:51

by Ramon Fried

[permalink] [raw]
Subject: pinctrl: -EAGAIN not supported but documented

Hi Linus,

Stated in Documentation/driver-api/pinctl.rst:

Since some controllers have special logic for handling entire groups of pins
they can exploit the special whole-group pin control function. The
pin_config_group_set() callback is allowed to return the error code -EAGAIN,
for groups it does not want to handle, or if it just wants to do some
group-level handling and then fall through to iterate over all pins, in
which
case each individual pin will be treated by separate pin_config_set()
calls as
well.

----

This is not supported, and there's no code for handling it.

Should we add the necessary code or just remove the wrong documentation.

Thanks,

Ramon



2019-01-21 14:28:43

by Linus Walleij

[permalink] [raw]
Subject: Re: pinctrl: -EAGAIN not supported but documented

On Mon, Jan 21, 2019 at 2:28 PM Ramon Fried <[email protected]> wrote:

> Stated in Documentation/driver-api/pinctl.rst:
>
> Since some controllers have special logic for handling entire groups of pins
> they can exploit the special whole-group pin control function. The
> pin_config_group_set() callback is allowed to return the error code -EAGAIN,
> for groups it does not want to handle, or if it just wants to do some
> group-level handling and then fall through to iterate over all pins, in
> which
> case each individual pin will be treated by separate pin_config_set()
> calls as
> well.
>
> ----
>
> This is not supported, and there's no code for handling it.
>
> Should we add the necessary code or just remove the wrong documentation.

The idea was removed in:
commit ad42fc6c84795d19972e7f7dee70fe74bec4c2d8
"pinctrl: rip out the direct pinconf API"

I think we should just remove the documentation.

Do you want me to look into it or do you want to send a patch?

Yours,
Linus Walleij

2019-01-21 14:29:35

by Ramon Fried

[permalink] [raw]
Subject: Re: pinctrl: -EAGAIN not supported but documented


On 1/21/19 4:26 PM, Linus Walleij wrote:
> On Mon, Jan 21, 2019 at 2:28 PM Ramon Fried <[email protected]> wrote:
>
>> Stated in Documentation/driver-api/pinctl.rst:
>>
>> Since some controllers have special logic for handling entire groups of pins
>> they can exploit the special whole-group pin control function. The
>> pin_config_group_set() callback is allowed to return the error code -EAGAIN,
>> for groups it does not want to handle, or if it just wants to do some
>> group-level handling and then fall through to iterate over all pins, in
>> which
>> case each individual pin will be treated by separate pin_config_set()
>> calls as
>> well.
>>
>> ----
>>
>> This is not supported, and there's no code for handling it.
>>
>> Should we add the necessary code or just remove the wrong documentation.
> The idea was removed in:
> commit ad42fc6c84795d19972e7f7dee70fe74bec4c2d8
> "pinctrl: rip out the direct pinconf API"
>
> I think we should just remove the documentation.
>
> Do you want me to look into it or do you want to send a patch?
>
> Yours,
> Linus Walleij

I'll send a patch shortly.

Thanks.

Ramon.