Re: [PATCH v3 3/5] pinctrl: samsung: add per-bank FLTCON offset to EXYNOS9_PIN_BANK_* and fix tables

From: Peter Griffin

Date: Fri Mar 06 2026 - 16:55:56 EST


Hi Youngmin & Krzysztof,

On Sun, 28 Dec 2025 at 11:41, Krzysztof Kozlowski <krzk@xxxxxxxxxx> wrote:
>
> On 02/12/2025 10:36, Youngmin Nam wrote:
> > Several Exynos9-era pin-bank tables were implicitly assuming that the
> > filter control (FLTCON) registers are laid out contiguously from the
> > EINT base offset. Per the TRMs this is not always true. FLTCON can live
> > at a separate per-bank offset, and the current tables cause the driver
> > to program the wrong FLTCON addresses for some banks.
>
> "Can live" or "Does live"? Adding unused offset is not improving the
> code. The implicit offset is fine, if it is correct.

I saw the same issue Youngmin outlines here on gs101 SoC. The current
implicit offset calculation sometimes results in programming an
incorrect register (if you're lucky). I also saw Serror if it turns
out to be a nonexistent register (which kills the system).

As Youngmin mentioned "Exynos9-era" in the commit description, I
suspect (but can't say for sure) that all the SoCs mentioned in this
patch are the same as gs101, and the implicit offset calculation is
incorrect. IIRC this code path is only triggered on suspend/resume
paths which likely explains why nobody noticed the bug previously.

IMO, resending this patch would be good, as it should bring these SoCs
one small step closer to functional suspend/resume. It's probably also
worthwhile splitting this into separate commits, and adding Fixes
tags.

Thanks,

Peter.