Re: [RFT PATCH v2 0/5] pinctrl: samsung: exynos9 cleanups and fixes
From: Youngmin Nam <hidden>
Date: 2025-12-02 05:21:46
Also in:
linux-gpio, linux-samsung-soc, lkml
On 11/25/25 02:42, Peter Griffin wrote:
Hi Youngmin, On Mon, 17 Nov 2025 at 07:36, Youngmin Nam [off-list ref] wrote:quoted
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