LAN9645x is a switch chip family with several on-chip peripherals, such as
a GPIO controller. The LAN9645xF subfamily has 3 SKUs with the difference
being number of supported ports. There are 5, 7 and 9 ported SKUs.
The LAN9645xF family come in a VQFN-DR package and supports 51 GPIOs, and
up to 7 alternate modes per pin.
Due to the way this GPIO controller modifies alternate modes on a pin, this
means the usual pin stride is 2, but the alternate mode stride is 3. This
is the first device supported by pinctrl-ocelot where these two numbers
are not equal. As a consequence the register address calculation in the
REG_ALT macro is generalized to handle this.
Signed-off-by: Jens Emil Schulz Østergaard <jensemil.schulzostergaard@microchip.com>
---
Jens Emil Schulz Østergaard (3):
dt-bindings: pinctrl: ocelot: Add LAN9645x SoC support
pinctrl: ocelot: Update alt mode reg addr calculation
pinctrl: ocelot: Extend support for lan9645xf family
.../bindings/pinctrl/mscc,ocelot-pinctrl.yaml | 6 +
drivers/pinctrl/pinctrl-ocelot.c | 184 ++++++++++++++++++++-
2 files changed, 189 insertions(+), 1 deletion(-)
---
base-commit: cbe8e6bef6a3b4b895b47ea56f5952f1936aacb6
change-id: 20260113-pinctrl_ocelot_extend_support_for_lan9645x-56a51bba592e
Best regards,
--
Jens Emil Schulz Østergaard <jensemil.schulzostergaard@microchip.com>