[RFT PATCH v2 0/5] pinctrl: samsung: exynos9 cleanups and fixes
Youngmin Nam
youngmin.nam at samsung.com
Mon Dec 1 21:23:25 PST 2025
On 11/25/25 02:42, Peter Griffin wrote:
> Hi Youngmin,
>
> On Mon, 17 Nov 2025 at 07:36, Youngmin Nam <youngmin.nam at samsung.com> wrote:
>>
>> Several SoCs carried near-duplicate pin bank macro families, making
>> tables verbose and hard to share when only the bank type (alive/off)
>> differs.
>>
>> GS101 had its own helpers even though the newer EXYNOS9_* helpers cover
>> the same semantics, including per-bank filter control (FLTCON) offsets.
>>
>> Some pin-bank tables didn't match the SoC TRMs (bank type, EINT class,
>> or bank names), and FLTCON wasn't always at a contiguous offset from
>> EINT.
>>
>> This series does
>> - Consolidate on EXYNOS9_* pin-bank macros. Pass bank_type explicitly.
>> - Fix table errors on Exynos2200/7885/8890/8895 per TRM.
>> - Add explicit per-bank FLTCON offsets and update affected tables.
>> - Drop GS101-specific macros in favor of EXYNOS9_*.
>> - Rename gs101_pinctrl_{suspend,resume} ->
>> exynos9_pinctrl_{suspend,resume}.
>>
>> This series was based on the pinctrl/samsung tree [1].
>>
>> I tested on Exynos850 through boot and verified the pin values as
>> follows:
>
> One thing I just noticed is exynos850_pin_ctrl isn't actually setting
> the .suspend and .resume callbacks so some of this code won't be
> executed there (specifically saving/restoring the fltcon register). If
> you're using e850 platform to test this series, you likely want to set
>
> .suspend = exynos9_pinctrl_suspend,
> .resume = exynos9_pinctrl_resume,
>
> in exynos850_pin_ctrl for the alive bank
>
> You can then #define DEBUG in drivers/pinctrl/samsung/pinctrl-exynos.c
>
> Recompile, and do
>
> echo platform > /sys/power/pm_test
> echo mem > /sys/power/state
>
> and you should see all the debug from the newly enabled exynos9
> suspend/resume callbacks
>
> [ 871.104840][ T741] gph2: save con 0x00000000
> [ 871.104932][ T741] gph2: save fltcon0 0x00000000
> [ 871.105022][ T741] gph2: save fltcon1 0x00000000
> [ 871.105109][ T741] gph2: save mask 0x0000003f
> <snip>
>
> Prior to adding fltcon_offset and the gs101 (now exynos9) specific
> suspend/resume callbacks this would generate a SError on gs101
>
> Thanks,
>
> Peter
Hi Peter,
Thanks for the review and testing.
Your tips on suspend/resume for Exynos850 and the GS101 details are very helpful.
After this series is merged, I will add the exynos9_pinctrl_suspend and _resume hooks for Exynos850 and run the tests you suggested.
Thanks,
Youngmin
More information about the linux-arm-kernel
mailing list