linux/drivers/pinctrl/renesas
Lad Prabhakar c88ab94079 pinctrl: renesas: rzg2l: Fix SMT register cache handling
Store SMT register cache per bank instead of using a single array.

On RZ/V2H(P), RZ/V2N, and RZ/G3E, the SMT register is split across two
32-bit registers: bits 0/8/16/24 control pins 0-3, while pins 4-7 are
controlled by the corresponding bits in the next register.  The previous
implementation cached only a single SMT register, leading to incomplete
save/restore of SMT state.

Convert cache->smt to a per-bank array and allocate storage for both
halves.  Update suspend/resume handling to save and restore both SMT
registers when present.

Fixes: 837afa592c ("pinctrl: renesas: rzg2l: Add suspend/resume support for Schmitt control registers")
Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://patch.msgid.link/20260413182456.811543-2-prabhakar.mahadev-lad.rj@bp.renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
History 2026-04-27 11:18:04 +02:00
..
core.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
core.h pinctrl: renesas: Move R-Car bias helpers to sh_pfc.h 2021-03-24 10:38:29 +01:00
gpio.c treewide: rename GPIO set callbacks back to their original names 2025-08-07 10:07:06 +02:00
Kconfig pinctrl: renesas: rzt2h: Add GPIO IRQ chip to handle interrupts 2026-01-13 10:21:53 +01:00
Makefile pinctrl: renesas: Add support for RZ/T2H 2025-08-20 08:56:14 +02:00
pfc-emev2.c pinctrl: renesas: Drop duplicate newlines 2025-10-14 10:32:51 +02:00
pfc-r8a73a4.c pinctrl: renesas: Drop duplicate newlines 2025-10-14 10:32:51 +02:00
pfc-r8a779a0.c pinctrl: renesas: Annotate sentinels in tables 2023-03-30 15:39:05 +02:00
pfc-r8a779f0.c pinctrl: renesas: Drop duplicate newlines 2025-10-14 10:32:51 +02:00
pfc-r8a779g0.c pinctrl: renesas: r8a779g0: Remove STPWT_EXTFXR 2025-11-10 10:52:24 +01:00
pfc-r8a779h0.c pinctrl: renesas: r8a779h0: Remove STPWT_EXTFXR 2025-11-10 10:52:25 +01:00
pfc-r8a7740.c pinctrl: renesas: Annotate sentinels in tables 2023-03-30 15:39:05 +02:00
pfc-r8a7778.c pinctrl: renesas: Drop duplicate newlines 2025-10-14 10:32:51 +02:00
pfc-r8a7779.c pinctrl: renesas: r8a7779: s/LSBC/LBSC/ 2023-09-11 13:24:39 +02:00
pfc-r8a7790.c pinctrl: renesas: Annotate sentinels in tables 2023-03-30 15:39:05 +02:00
pfc-r8a7791.c pinctrl: renesas: Annotate sentinels in tables 2023-03-30 15:39:05 +02:00
pfc-r8a7792.c pinctrl: renesas: Annotate sentinels in tables 2023-03-30 15:39:05 +02:00
pfc-r8a7794.c pinctrl: renesas: Annotate sentinels in tables 2023-03-30 15:39:05 +02:00
pfc-r8a7796.c pinctrl: renesas: Drop duplicate newlines 2025-10-14 10:32:51 +02:00
pfc-r8a77470.c pinctrl: renesas: Annotate sentinels in tables 2023-03-30 15:39:05 +02:00
pfc-r8a77951.c pinctrl: renesas: Drop duplicate newlines 2025-10-14 10:32:51 +02:00
pfc-r8a77965.c pinctrl: renesas: Drop duplicate newlines 2025-10-14 10:32:51 +02:00
pfc-r8a77970.c pinctrl: renesas: Drop duplicate newlines 2025-10-14 10:32:51 +02:00
pfc-r8a77980.c pinctrl: renesas: Drop duplicate newlines 2025-10-14 10:32:51 +02:00
pfc-r8a77990.c pinctrl: renesas: Annotate sentinels in tables 2023-03-30 15:39:05 +02:00
pfc-r8a77995.c pinctrl: renesas: Drop duplicate newlines 2025-10-14 10:32:51 +02:00
pfc-sh73a0.c pinctrl: renesas: sh73a0: Use rdev_get_drvdata() 2024-07-01 11:27:38 +02:00
pfc-sh7203.c pinctrl: renesas: Annotate sentinels in tables 2023-03-30 15:39:05 +02:00
pfc-sh7264.c pinctrl: renesas: Annotate sentinels in tables 2023-03-30 15:39:05 +02:00
pfc-sh7269.c pinctrl: renesas: Annotate sentinels in tables 2023-03-30 15:39:05 +02:00
pfc-sh7720.c pinctrl: renesas: Annotate sentinels in tables 2023-03-30 15:39:05 +02:00
pfc-sh7722.c pinctrl: renesas: Annotate sentinels in tables 2023-03-30 15:39:05 +02:00
pfc-sh7723.c pinctrl: renesas: Drop duplicate newlines 2025-10-14 10:32:51 +02:00
pfc-sh7724.c pinctrl: renesas: Drop duplicate newlines 2025-10-14 10:32:51 +02:00
pfc-sh7734.c pinctrl: renesas: Drop duplicate newlines 2025-10-14 10:32:51 +02:00
pfc-sh7757.c pinctrl: renesas: Annotate sentinels in tables 2023-03-30 15:39:05 +02:00
pfc-sh7785.c pinctrl: renesas: Annotate sentinels in tables 2023-03-30 15:39:05 +02:00
pfc-sh7786.c pinctrl: renesas: Annotate sentinels in tables 2023-03-30 15:39:05 +02:00
pfc-shx3.c pinctrl: renesas: Annotate sentinels in tables 2023-03-30 15:39:05 +02:00
pinctrl-rza1.c pinctrl: renesas: rza1: Normalize return value of gpio_get() 2026-03-10 10:33:47 +01:00
pinctrl-rza2.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
pinctrl-rzg2l.c pinctrl: renesas: rzg2l: Fix SMT register cache handling 2026-04-27 11:18:04 +02:00
pinctrl-rzn1.c pinctrl: renesas: Move fixed assignments to 'pinctrl_desc' definition 2025-06-18 13:26:37 +02:00
pinctrl-rzt2h.c pinctrl: renesas: rzt2h: Add pin configuration support 2026-03-26 20:04:28 +01:00
pinctrl-rzv2m.c pinctrl: renesas: Remove unneeded semicolons 2025-10-14 10:32:51 +02:00
pinctrl.c pinctrl: renesas: Use int type to store negative error codes 2025-09-08 12:03:08 +02:00
sh_pfc.h pinctrl: renesas: Initial R8A779H0 (R-Car V4M) PFC support 2024-02-20 11:43:48 +01:00