Linux GPIO subsystem development
 help / color / mirror / Atom feed
* [PATCH v2 0/3] Add initial support for Canaan Kendryte K230 pinctrl
@ 2024-09-26 15:57 Ze Huang
  2024-09-26 15:57 ` [PATCH v2 1/3] dt-bindings: pinctrl: Add support for canaan,k230 SoC Ze Huang
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Ze Huang @ 2024-09-26 15:57 UTC (permalink / raw)
  To: Linus Walleij, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Paul Walmsley, Palmer Dabbelt, Albert Ou, Conor Dooley
  Cc: linux-gpio, devicetree, linux-kernel, linux-riscv, Ze Huang

This patch series introduces support for the pinctrl driver of the Canaan
K230 SoC. The K230 SoC features 64 IO pins, each of which can be configured
for up to five different functions.

The controller manages the entire pin configuration and multiplexing
through a single register, which control features such as schmitt trigger,
drive strength, bias pull-up/down, input/output enable, power source, and
mux mode.

The changes have been tested on CanMV-K230-V1.1 board.

The pin function definition can be found here [1], and most of the DTS data
was converted from the vendor's code [2].

Changes since v1:
- bindings: drop unecessary ref and drop unused labels in dt example
- driver: set remap_config to const
- driver: fix double free of of_node_put
- driver: move probe-related code closer to the probe() function
- driver: drop unlikely MMIO error message and handle correctly minor errors
- driver: replace `for_each_child_of_node` with `for_each_child_of_node_scoped`
- dts: place pinctrl nodes in canmv board level file

Link to v1: https://lore.kernel.org/linux-riscv/20240916063021.311721-1-18771902331@163.com/

Link: https://developer.canaan-creative.com/k230/dev/_downloads/a53655a81951bc8a440ae647be286e75/K230_PINOUT_V1.1_20230321.xlsx [1]
Link: https://github.com/kendryte/k230_sdk/blob/main/src/little/uboot/arch/riscv/dts/k230_canmv.dts [2]

Signed-off-by: Ze Huang <18771902331@163.com>
---
Ze Huang (3):
      dt-bindings: pinctrl: Add support for canaan,k230 SoC
      pinctrl: canaan: Add support for k230 SoC
      riscv: dts: canaan: Add k230's pinctrl node

 .../bindings/pinctrl/canaan,k230-pinctrl.yaml      | 127 ++++
 arch/riscv/boot/dts/canaan/k230-canmv.dts          | 304 ++++++++++
 arch/riscv/boot/dts/canaan/k230-pinctrl.h          |  18 +
 arch/riscv/boot/dts/canaan/k230.dtsi               |   6 +
 drivers/pinctrl/Kconfig                            |  10 +
 drivers/pinctrl/Makefile                           |   1 +
 drivers/pinctrl/pinctrl-k230.c                     | 643 +++++++++++++++++++++
 7 files changed, 1109 insertions(+)
---
base-commit: 0eea987088a22d73d81e968de7347cdc7e594f72
change-id: 20240923-k230-pinctrl-3a323bd75a7e
prerequisite-message-id: <tencent_22BA0425B4DF1CA1713B62E4423C1BFBF809@qq.com>
prerequisite-patch-id: 704efc6e76814e1877748959d7319d558c8386c1
prerequisite-patch-id: c2144cf468c57b856830a61615ba6ba501e8ec58
prerequisite-patch-id: ced4a01ccd8ddab2fd308d543ddf47bd1641518a
prerequisite-patch-id: f8b983b301d0c14f1448b9e4c321262a509e061e
prerequisite-patch-id: 834b65b6a2b037daed5cffc6a41963622568dc9c
prerequisite-patch-id: 2401703b57448c9ea2c3dc7650b4502491a28944

Best regards,
-- 
Ze Huang <18771902331@163.com>


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2024-10-08 16:27 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-26 15:57 [PATCH v2 0/3] Add initial support for Canaan Kendryte K230 pinctrl Ze Huang
2024-09-26 15:57 ` [PATCH v2 1/3] dt-bindings: pinctrl: Add support for canaan,k230 SoC Ze Huang
2024-09-26 21:16   ` Rob Herring (Arm)
2024-09-26 15:57 ` [PATCH v2 2/3] pinctrl: canaan: Add support for k230 SoC Ze Huang
2024-09-26 15:57 ` [PATCH v2 3/3] riscv: dts: canaan: Add k230's pinctrl node Ze Huang
2024-10-01 12:27 ` [PATCH v2 0/3] Add initial support for Canaan Kendryte K230 pinctrl Linus Walleij
2024-10-01 12:32   ` Conor Dooley
2024-10-08  8:31     ` Ze Huang
2024-10-08 16:27       ` Conor Dooley

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox