[PATCH v2 00/23] sunxi: Add and use a pinctrl driver

Samuel Holland
2022-03-18T03:54:37Z

This series resolves some longstanding TODOs by implementing a pinctrl
driver for sunxi platforms and converting DM drivers to use it.

Changes in v2:
- Merge all SoC drivers into one file and one U_BOOT_DRIVER.
- Add a consumer for the APB bus clock
- Add support for the F1C100s SoC

Samuel Holland (23):
sunxi: pinctrl: Create the driver skeleton
sunxi: pinctrl: Implement pin muxing functions
sunxi: pinctrl: Implement get_pin_muxing function
sunxi: pinctrl: Implement pin configuration
pinctrl: sunxi: Add UART pinmuxes
sunxi: Skip non-DM UART pin setup when PINCTRL=y
pinctrl: sunxi: Add sun4i EMAC pinmuxes
net: sunxi_emac: Remove non-DM pin setup
pinctrl: sunxi: Add sunxi GMAC pinmuxes
sunxi: Remove non-DM GMAC pin setup
pinctrl: sunxi: Add sun8i EMAC pinmuxes
net: sun8i_emac: Remove non-DM pin setup
pinctrl: sunxi: Add I2C pinmuxes
sunxi: Remove options and setup code for I2C2-I2C4
sunxi: Remove non-DM I2C clock/pin setup from U-Boot
i2c: sun6i_p2wi: Only do non-DM pin setup for non-DM I2C
i2c: sun8i_rsb: Only do non-DM pin setup for non-DM I2C
pinctrl: sunxi: Add MMC pinmuxes
sunxi: Remove non-DM MMC pin setup
pinctrl: sunxi: Add the A64 PWM pinmux
pwm: sunxi: Remove non-DM pin setup
pinctrl: sunxi: Add SPI0 pinmuxes
spi: sun4i_spi: Remove non-DM pin setup

MAINTAINERS | 1 +
arch/arm/Kconfig | 1 +
arch/arm/include/asm/arch-sunxi/gpio.h | 17 +-
arch/arm/include/asm/arch-sunxi/i2c.h | 11 +-
arch/arm/mach-sunxi/Kconfig | 22 -
arch/arm/mach-sunxi/board.c | 2 +
board/sunxi/board.c | 67 --
board/sunxi/gmac.c | 55 --
drivers/gpio/sunxi_gpio.c | 130 +---
drivers/i2c/sun6i_p2wi.c | 12 +-
drivers/i2c/sun8i_rsb.c | 46 +-
drivers/net/sun8i_emac.c | 90 ---
drivers/net/sunxi_emac.c | 7 +-
drivers/pinctrl/Kconfig | 1 +
drivers/pinctrl/Makefile | 2 +-
drivers/pinctrl/sunxi/Kconfig | 127 ++++
drivers/pinctrl/sunxi/Makefile | 3 +
drivers/pinctrl/sunxi/pinctrl-sunxi.c | 887 +++++++++++++++++++++++++
drivers/pwm/sunxi_pwm.c | 11 -
drivers/spi/spi-sunxi.c | 84 ---
20 files changed, 1057 insertions(+), 519 deletions(-)
create mode 100644 drivers/pinctrl/sunxi/Kconfig
create mode 100644 drivers/pinctrl/sunxi/Makefile
create mode 100644 drivers/pinctrl/sunxi/pinctrl-sunxi.c

--
2.33.1