[PATCH v4 0/5] Add mfd, pinctrl and pwm support to EN7581 SoC
Christian Marangi
ansuelsmth at gmail.com
Mon Sep 23 02:53:50 PDT 2024
On Wed, Sep 11, 2024 at 09:50:00PM +0200, Lorenzo Bianconi wrote:
> Introduce airoha-mfd driver in order to load pinctrl and pwm drivers for
> EN7581 SoC. airoha-mfd is needed since both pinctrl and pwm drivers
> needs to access the same memory block (gpio memory region) to configure
> {gio,irq}_chip and pwm functionalities respectively, so model them as
> childs of a parent mfd driver.
> Current EN7581 pinctrl driver supports the following functionalities:
> - pin multiplexing via chip_scu syscon
> - pin pull-up, pull-down, open-drain, current strength,
> {input,output}_enable, output_{low,high} via chip_scu syscon
> - gpio controller
> - irq controller
>
> ---
> Changes in v4:
> - add 'Limitation' description in pwm driver
> - fix comments in pwm driver
> - rely on mfd->base __iomem pointer in pwm driver, modify register
> offsets according to it and get rid of sgpio_cfg, flash_cfg and
> cycle_cfg pointers
> - simplify register utility routines in pwm driver
> - use 'generator' instead of 'waveform' suffix for pwm routines
> - fix possible overflow calculating duty cycle in pwm driver
> - do not modify pwm state in free callback in pwm driver
> - cap the maximum period in pwm driver
> - do not allow inverse polarity in pwm driver
> - do not set of_xlate callback in the pwm driver and allow the stack to
> do it
> - fix MAINTAINERS file for airoha pinctrl driver
> - fix undefined reference to __ffsdi2 in pinctrl driver
> - simplify airoha,en7581-gpio-sysctl.yam binding
> - Link to v3: https://lore.kernel.org/r/20240831-en7581-pinctrl-v3-0-98eebfb4da66@kernel.org
>
> Changes in v3:
> - introduce airoha-mfd driver
> - add pwm driver to the same series
> - model pinctrl and pwm drivers as childs of a parent mfd driver.
> - access chip-scu memory region in pinctrl driver via syscon
> - introduce a single airoha,en7581-gpio-sysctl.yaml binding and get rid
> of dedicated bindings for pinctrl and pwm
> - add airoha,en7581-chip-scu.yaml binding do the series
> - Link to v2: https://lore.kernel.org/r/20240822-en7581-pinctrl-v2-0-ba1559173a7f@kernel.org
>
> Changes in v2:
> - Fix compilation errors
> - Collapse some register mappings for gpio and irq controllers
> - update dt-bindings according to new register mapping
> - fix some dt-bindings errors
> - Link to v1: https://lore.kernel.org/all/cover.1723392444.git.lorenzo@kernel.org/
>
> ---
> Benjamin Larsson (1):
> pwm: airoha: Add support for EN7581 SoC
>
> Christian Marangi (2):
> dt-bindings: mfd: Add support for Airoha EN7581 GPIO System Controller
> mfd: airoha: Add support for Airoha EN7581 MFD
>
> Lorenzo Bianconi (2):
> dt-bindings: arm: airoha: Add the chip-scu node for EN7581 SoC
> pinctrl: airoha: Add support for EN7581 SoC
>
> .../bindings/arm/airoha,en7581-chip-scu.yaml | 42 +
> .../bindings/mfd/airoha,en7581-gpio-sysctl.yaml | 433 +++
> MAINTAINERS | 7 +
> drivers/mfd/Kconfig | 8 +
> drivers/mfd/Makefile | 2 +
> drivers/mfd/airoha-en7581-gpio-mfd.c | 72 +
> drivers/pinctrl/mediatek/Kconfig | 16 +-
> drivers/pinctrl/mediatek/Makefile | 1 +
> drivers/pinctrl/mediatek/pinctrl-airoha.c | 2964 ++++++++++++++++++++
> drivers/pwm/Kconfig | 10 +
> drivers/pwm/Makefile | 1 +
> drivers/pwm/pwm-airoha.c | 414 +++
> include/linux/mfd/airoha-en7581-mfd.h | 9 +
> 13 files changed, 3978 insertions(+), 1 deletion(-)
> ---
> base-commit: 264c13114bd71ddfd7b25c7b94f6cda4587eca25
> change-id: 20240818-en7581-pinctrl-1bf120154be0
> prerequisite-change-id: 20240705-for-6-11-bpf-a349efc08df8:v2
>
>
Hi,
any news with this? Rob reviewed the DT schemas and he is ok with them.
Any other comments for the MFD driver and/or the pinctrl or PWM driver?
--
Ansuel
More information about the Linux-mediatek
mailing list