All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 00/11] pinctrl: add support of Airoha SoCs
@ 2026-05-09 11:11 Mikhail Kshevetskiy
  2026-05-09 11:11 ` [PATCH v5 01/11] bitops: import BITS_PER_TYPE() macro from linux Mikhail Kshevetskiy
                   ` (11 more replies)
  0 siblings, 12 replies; 19+ messages in thread
From: Mikhail Kshevetskiy @ 2026-05-09 11:11 UTC (permalink / raw)
  To: Tom Rini, Christian Marangi, Simon Glass, Marek Vasut, Peng Fan,
	Anis Chali, Michael Trimarchi, Leo Yu-Chi Liang, Yao Zi,
	Sean Anderson, Michal Simek, Yury Norov (NVIDIA),
	Geert Uytterhoeven, Jonathan Cameron, Nuno Sá,
	Ilias Apalodimas, Heiko Schocher, u-boot, David Lechner,
	Lorenzo Bianconi, Markus Gothe, Matheus Sampaio Queiroga,
	Benjamin Larsson
  Cc: Mikhail Kshevetskiy

This patch series add pin controller and gpio driver support for EN7523/
AN7581/AN7583 SoCs. The driver based on official linux airoha pinctrl and
gpio driver with Matheus Sampaio Queiroga changes.

The original Matheus Sampaio Queiroga driver can be taken from the repo:
  https://sirherobrine23.com.br/airoha_an7523/kernel/commits/branch/airoha_an7523_pinctrl

Additionally in the EN7523 case the patches removes existing gpio dts nodes
and replaces them with pinctrl node. It should not be very dangerous, because:
 * No official EN7523 gpio support present in U-Boot
 * Legacy Linux EN7523 GPIO driver is mostly abandoned
 * The same driver is planned for upstream linux/openwrt

This patchset includes bitfield.h patches created for Linux kernel
by Geert Uytterhoeven. It suits U-Boot fine. I preserve original author
and original commit messages. It might be not a best strategy, because
these patches refers to other linux kernel commits not added to U-Boot.
Please note me, if there is a better way.

The patches were tested on EN7523/AN7581/AN7583 boards.
---
Changes v2:
 * pinctrl driver was split on common and per SoC parts
 * EN7523 SoC support was added
 * EN7523/AN7581 defconfigs were updated to activate
   pinctrl/gpio support
 * Board/SoC independent pinconf/pinctrl definitions
   were moved to global includes

Changes v3:
 * add non-constant field_{prep,get}() helpers
 * put airoha common code to a separate patch
 * put en7523 dts change to a separate patch
 * add support of "pinmux status" command
 * address a lot of comments from David Lechner

Changes v4:
 * minor refactoring
 * fix gpio initialization, so gpio driver becomes probed

Changes v5:
 * more bitfield changes
 * sort contents of pinctrl makefile
 * address more issues found by David Lechner

Geert Uytterhoeven (2):
  bitfield: Add less-checking __FIELD_{GET,PREP}()
  bitfield: Add non-constant field_{prep,get}() helpers

Mikhail Kshevetskiy (9):
  bitops: import BITS_PER_TYPE() macro from linux
  pinctrl: add more pinconf/pinctrl definitions
  pinctrl: airoha: add shared pinctrl code
  pinctrl: airoha: add pin controller and gpio driver for AN7581 SoC
  pinctrl: airoha: add pin controller and gpio driver for AN7583 SoC
  pinctrl: airoha: add pin controller and gpio driver for EN7523 SoC
  configs: airoha: an7581: enable pinctrl/gpio support
  configs: airoha: en7523: enable pinctrl/gpio support
  arm: dts: en7523: add pinctrl/gpio support, drop legacy gpio support

 arch/arm/dts/en7523-u-boot.dtsi         |   21 +
 configs/an7581_evb_defconfig            |    7 +-
 configs/en7523_evb_defconfig            |    3 +-
 drivers/pinctrl/Kconfig                 |    1 +
 drivers/pinctrl/Makefile                |   61 +-
 drivers/pinctrl/airoha/Kconfig          |   26 +
 drivers/pinctrl/airoha/Makefile         |    7 +
 drivers/pinctrl/airoha/airoha-common.h  |  476 ++++++++++
 drivers/pinctrl/airoha/pinctrl-airoha.c |  927 +++++++++++++++++++
 drivers/pinctrl/airoha/pinctrl-an7581.c | 1076 +++++++++++++++++++++++
 drivers/pinctrl/airoha/pinctrl-an7583.c |  979 +++++++++++++++++++++
 drivers/pinctrl/airoha/pinctrl-en7523.c |  648 ++++++++++++++
 include/dm/pinctrl.h                    |   28 +
 include/linux/bitfield.h                |   95 +-
 include/linux/bitops.h                  |    1 +
 include/linux/pinctrl/pinctrl.h         |   74 ++
 16 files changed, 4386 insertions(+), 44 deletions(-)
 create mode 100644 drivers/pinctrl/airoha/Kconfig
 create mode 100644 drivers/pinctrl/airoha/Makefile
 create mode 100644 drivers/pinctrl/airoha/airoha-common.h
 create mode 100644 drivers/pinctrl/airoha/pinctrl-airoha.c
 create mode 100644 drivers/pinctrl/airoha/pinctrl-an7581.c
 create mode 100644 drivers/pinctrl/airoha/pinctrl-an7583.c
 create mode 100644 drivers/pinctrl/airoha/pinctrl-en7523.c
 create mode 100644 include/linux/pinctrl/pinctrl.h

-- 
2.53.0


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

end of thread, other threads:[~2026-05-13 14:03 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-09 11:11 [PATCH v5 00/11] pinctrl: add support of Airoha SoCs Mikhail Kshevetskiy
2026-05-09 11:11 ` [PATCH v5 01/11] bitops: import BITS_PER_TYPE() macro from linux Mikhail Kshevetskiy
2026-05-09 11:11 ` [PATCH v5 02/11] bitfield: Add less-checking __FIELD_{GET,PREP}() Mikhail Kshevetskiy
2026-05-09 11:11 ` [PATCH v5 03/11] bitfield: Add non-constant field_{prep, get}() helpers Mikhail Kshevetskiy
2026-05-09 11:11 ` [PATCH v5 04/11] pinctrl: add more pinconf/pinctrl definitions Mikhail Kshevetskiy
2026-05-09 11:11 ` [PATCH v5 05/11] pinctrl: airoha: add shared pinctrl code Mikhail Kshevetskiy
2026-05-12 23:38   ` David Lechner
2026-05-09 11:11 ` [PATCH v5 06/11] pinctrl: airoha: add pin controller and gpio driver for AN7581 SoC Mikhail Kshevetskiy
2026-05-12 23:42   ` David Lechner
2026-05-13 11:30     ` Benjamin Larsson
2026-05-13 13:56       ` Tom Rini
2026-05-13 14:03         ` David Lechner
2026-05-13  8:11   ` Peng Fan
2026-05-09 11:11 ` [PATCH v5 07/11] pinctrl: airoha: add pin controller and gpio driver for AN7583 SoC Mikhail Kshevetskiy
2026-05-09 11:11 ` [PATCH v5 08/11] pinctrl: airoha: add pin controller and gpio driver for EN7523 SoC Mikhail Kshevetskiy
2026-05-09 11:11 ` [PATCH v5 09/11] configs: airoha: an7581: enable pinctrl/gpio support Mikhail Kshevetskiy
2026-05-09 11:11 ` [PATCH v5 10/11] configs: airoha: en7523: " Mikhail Kshevetskiy
2026-05-09 11:11 ` [PATCH v5 11/11] arm: dts: en7523: add pinctrl/gpio support, drop legacy gpio support Mikhail Kshevetskiy
2026-05-12 23:43 ` [PATCH v5 00/11] pinctrl: add support of Airoha SoCs David Lechner

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.