Thread (12 messages) 12 messages, 3 authors, 2025-12-02

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
 
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help