[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <833ba1e9-bf5e-41f1-a319-06521d598e5c@samsung.com>
Date: Tue, 2 Dec 2025 14:23:25 +0900
From: Youngmin Nam <youngmin.nam@...sung.com>
To: Peter Griffin <peter.griffin@...aro.org>
Cc: krzk@...nel.org, s.nawrocki@...sung.com, alim.akhtar@...sung.com,
linus.walleij@...aro.org, semen.protsenko@...aro.org, ryu.real@...sung.com,
d7271.choe@...sung.com, linux-arm-kernel@...ts.infradead.org,
linux-samsung-soc@...r.kernel.org, linux-gpio@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [RFT PATCH v2 0/5] pinctrl: samsung: exynos9 cleanups and fixes
On 11/25/25 02:42, Peter Griffin wrote:
> Hi Youngmin,
>
> On Mon, 17 Nov 2025 at 07:36, Youngmin Nam <youngmin.nam@...sung.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
Powered by blists - more mailing lists