]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
pinctrl: spacemit: support I/O power domain configuration
authorTroy Mitchell <troy.mitchell@linux.spacemit.com>
Thu, 8 Jan 2026 06:42:39 +0000 (14:42 +0800)
committerLinus Walleij <linusw@kernel.org>
Mon, 19 Jan 2026 23:50:34 +0000 (00:50 +0100)
commit450e2487d5a28260f70ad7fbf3060e7f8304203d
tree3c5c4c60424fb27de0254e97e1d214015ca48dcc
parente817f0223d78818cd6c0e3480355c9a9cfbc0096
pinctrl: spacemit: support I/O power domain configuration

Dual-voltage GPIO banks default to 3.3V operation. Even when a bank is
externally supplied with 1.8V, the internal logic remains in the 3.3V
domain, leading to functional failures.

Add support for programming the IO domain power control registers to
allow explicit configuration for 1.8V operation.

These registers are secure due to hardware safety constraints.
Specifically, configuring the domain for 1.8V while externally supplying
3.3V causes back-powering and potential pin damage. Consequently, access
requires unlocking the AIB Secure Access Register (ASAR) in the APBC
block before any read or write operation.

Signed-off-by: Troy Mitchell <troy.mitchell@linux.spacemit.com>
Signed-off-by: Linus Walleij <linusw@kernel.org>
drivers/pinctrl/spacemit/pinctrl-k1.c