Re: [PATCH 0/4] Fix Samsung pinctrl driver static allocation of GPIO base warning

From: Krzysztof Kozlowski
Date: Sun Oct 08 2023 - 09:09:38 EST


On 07/10/2023 04:14, Sam Protsenko wrote:
> On Fri, Oct 6, 2023 at 8:01 AM Mateusz Majewski <m.majewski2@xxxxxxxxxxx> wrote:
>>
>> The object of this work is fixing the following warning, which appears
>> on all targets using that driver:
>>
>> gpio gpiochip0: Static allocation of GPIO base is deprecated, use dynamic allocation.
>>
>> This needs a small refactor to how we interact with the pinctrl
>> subsystem. Finally, we remove some bookkeeping that has only been
>> necessary to allocate GPIO bases correctly.
>>
>> Mateusz Majewski (4):
>> pinctrl: samsung: defer pinctrl_enable
>> pinctrl: samsung: use add_pin_ranges method to add pinctrl ranges
>> pinctrl: samsung: choose GPIO numberspace base dynamically
>> pinctrl: samsung: do not offset pinctrl numberspaces
>>
>> drivers/pinctrl/samsung/pinctrl-samsung.c | 56 ++++++++++++-----------
>> drivers/pinctrl/samsung/pinctrl-samsung.h | 4 +-
>> 2 files changed, 31 insertions(+), 29 deletions(-)
>>
>> --
>
> Hi Mateusz,
>
> Thank you for handling this! Those deprecation warnings have been
> bugging me for some time :) While testing this series on my E850-96
> board (Exynos850 based), I noticed some changes in
> /sys/kernel/debug/gpio file, like these:
>
> 8<------------------------------------------------------------------------------------------>8
> -gpiochip0: GPIOs 0-7, parent: platform/11850000.pinctrl, gpa0:
> - gpio-7 ( |Volume Up ) in hi IRQ ACTIVE LOW
> +gpiochip0: GPIOs 512-519, parent: platform/11850000.pinctrl, gpa0:
> + gpio-519 ( |Volume Up ) in hi IRQ ACTIVE LOW
>
> -gpiochip1: GPIOs 8-15, parent: platform/11850000.pinctrl, gpa1:
> - gpio-8 ( |Volume Down ) in hi IRQ ACTIVE LOW
> +gpiochip1: GPIOs 520-527, parent: platform/11850000.pinctrl, gpa1:
> + gpio-520 ( |Volume Down ) in hi IRQ ACTIVE LOW
>
> -gpiochip2: GPIOs 16-23, parent: platform/11850000.pinctrl, gpa2:
> +gpiochip2: GPIOs 528-535, parent: platform/11850000.pinctrl, gpa2:
>
> ...
> 8<------------------------------------------------------------------------------------------>8
>
> So basically it looks like all line numbers were offset by 512. Can
> you please comment on this? Is it an intentional change, and why it's
> happening?
>
> Despite of that change, everything seems to be working fine. But I
> kinda liked the numeration starting from 0 better :)

Could it be the reason of dynamic allocation?


Best regards,
Krzysztof