Message ID | 20240902-th1520-pinctrl-v1-0-639bf83ef50a@tenstorrent.com (mailing list archive) |
---|---|
Headers | show |
Series | pinctrl: Add T-Head TH1520 SoC pin controllers | expand |
On Tue, Sep 3, 2024 at 6:08 AM Drew Fustini <dfustini@tenstorrent.com> wrote: > This adds a pin control driver created by Emil for the T-Head TH1520 > RISC-V SoC used on the Lichee Pi 4A and BeagleV Ahead boards and > updates the device trees to make use of it. > > Emil's series from January used separate compatibles for each pin > controller instance. Rob did not think this was appropriate because the > programming model is the same for each instance. > > This series takes a different approach. There is now only a single > compatible for all pin controller instances. The pinctrl driver checks > the unit address to identity which pin controller instance is being > probed. I don't know if that is a good way to do it, the unit name could change for some reason and then the driver will not work, it seems fragile. Can't we just add a custom property such as: thead,pin-group-number = <2>; to the device node? Yours, Linus Walleij
This adds a pin control driver created by Emil for the T-Head TH1520 RISC-V SoC used on the Lichee Pi 4A and BeagleV Ahead boards and updates the device trees to make use of it. Emil's series from January used separate compatibles for each pin controller instance. Rob did not think this was appropriate because the programming model is the same for each instance. This series takes a different approach. There is now only a single compatible for all pin controller instances. The pinctrl driver checks the unit address to identity which pin controller instance is being probed. Link: https://lore.kernel.org/lkml/20240103132852.298964-1-emil.renner.berthing@canonical.com/ Signed-off-by: Drew Fustini <dfustini@tenstorrent.com> --- Emil Renner Berthing (8): dt-bindings: pinctrl: Add thead,th1520-pinctrl bindings pinctrl: Add driver for the T-Head TH1520 SoC riscv: dts: thead: Add TH1520 pin control nodes riscv: dts: thead: Add TH1520 GPIO ranges riscv: dts: thead: Adjust TH1520 GPIO labels riscv: dts: thead: Add Lichee Pi 4M GPIO line names riscv: dts: thead: Add TH1520 pinctrl settings for UART0 riscv: dtb: thead: Add BeagleV Ahead LEDs .../bindings/pinctrl/thead,th1520-pinctrl.yaml | 165 ++++ MAINTAINERS | 2 + arch/riscv/boot/dts/thead/th1520-beaglev-ahead.dts | 87 ++ .../boot/dts/thead/th1520-lichee-module-4a.dtsi | 43 + arch/riscv/boot/dts/thead/th1520-lichee-pi-4a.dts | 28 + arch/riscv/boot/dts/thead/th1520.dtsi | 62 +- drivers/pinctrl/Kconfig | 13 + drivers/pinctrl/Makefile | 1 + drivers/pinctrl/pinctrl-th1520.c | 906 +++++++++++++++++++++ 9 files changed, 1291 insertions(+), 16 deletions(-) --- base-commit: 5be63fc19fcaa4c236b307420483578a56986a37 change-id: 20240902-th1520-pinctrl-d71de44acc66 Best regards,