pinctrl: Port pin controller driver for T-Head TH1520 SoC
authorYao Zi <ziyao@disroot.org>
Wed, 18 Jun 2025 09:54:55 +0000 (09:54 +0000)
committerLeo Yu-Chi Liang <ycliang@andestech.com>
Thu, 3 Jul 2025 10:10:58 +0000 (18:10 +0800)
commit4981db81303b68de3ff1e2278e1d95a6534039d3
tree6d2dc297c50f4cf29d1868e89b72370c7b3f7284
parent364627596c7142d837912acea0d785ecdfeab676
pinctrl: Port pin controller driver for T-Head TH1520 SoC

The SoC pads of TH1520 are separated into three groups (AP 1, AP 2 and
AON) controlled by independent pin controllers. This patch ports their
driver from Linux kernel with most code for setting pinconf and pinmux
kept as is.

The dt-binding of TH1520 pin controller uses a schema where pins to
configure are specfied as strings and looked up at runtime, which the
generic pinctrl helpers of U-Boot cannot parse, thus a customized
set_state() callback is implemented to parse pinconfig nodes and setup
the configuration.

Signed-off-by: Yao Zi <ziyao@disroot.org>
Acked-by: Leo Yu-Chi Liang <ycliang@andestech.com>
MAINTAINERS
drivers/pinctrl/Kconfig
drivers/pinctrl/Makefile
drivers/pinctrl/pinctrl-th1520.c [new file with mode: 0644]