[PATCH 00/16] Add support for USB Type-C on STM32MP25

Fabrice Gasnier posted 16 patches 1 month, 1 week ago
.../bindings/arm/stm32/st,stm32-syscon.yaml        |  10 +
.../devicetree/bindings/nvmem/st,stm32-romem.yaml  |   2 +-
.../devicetree/bindings/phy/st,stm32-usb2phy.yaml  |  20 +-
.../devicetree/bindings/usb/onnn,fusb340.yaml      |  73 ++
.../devicetree/bindings/usb/st,stm32-ucpd.yaml     | 134 ++++
.../devicetree/bindings/usb/st,stm32mp25-dwc3.yaml |   3 +
Documentation/devicetree/bindings/usb/st,tcpp.yaml |  63 ++
arch/arm64/boot/dts/st/stm32mp25-pinctrl.dtsi      |  27 +
arch/arm64/boot/dts/st/stm32mp251.dtsi             |  51 ++
arch/arm64/boot/dts/st/stm32mp257f-dk.dts          | 111 +++
arch/arm64/boot/dts/st/stm32mp257f-ev1.dts         |  79 ++
arch/arm64/configs/defconfig                       |   6 +
drivers/usb/typec/mux/Kconfig                      |   8 +
drivers/usb/typec/mux/Makefile                     |   1 +
drivers/usb/typec/mux/fusb340.c                    | 169 +++++
drivers/usb/typec/tcpm/Kconfig                     |  22 +
drivers/usb/typec/tcpm/Makefile                    |   2 +
drivers/usb/typec/tcpm/st_tcpp.c                   | 418 +++++++++++
drivers/usb/typec/tcpm/st_tcpp.h                   |  21 +
drivers/usb/typec/tcpm/stm32_ucpd.c                | 818 +++++++++++++++++++++
20 files changed, 2024 insertions(+), 14 deletions(-)
[PATCH 00/16] Add support for USB Type-C on STM32MP25
Posted by Fabrice Gasnier 1 month, 1 week ago
Add support for the UCPD controller found in STM32MP23 and STM32MP25 platforms.
It is tigtly coupled with external TCPP02/03 I2C companion chip to interface
and to protect UCB-C DRP port.

Purpose is to propose a complete set of drivers and bindings to enable USB
Type-C support on STM32MP25 reference design boards, EVAL and DK, compared
to alternate UCPD series [1].

This is an on-going work on top of over series [2] and [3].

[1] https://lore.kernel.org/all/20260819163410.119755-1-marex@nabladev.com/
[2] https://lore.kernel.org/linux-phy/20260816213849.1044073-1-marex@nabladev.com/
[3] https://lore.kernel.org/linux-usb/20260817163101.6203-1-fabrice.gasnier@foss.st.com/

---
Christian Bruel (6):
      dt-bindings: usb: st,tcpp: Document TCPP USB-C PD protection chip
      usb: typec: tcpm: Add STM32 tcpp driver
      dt-bindings: usb: st,stm32-ucpd: Document STM32 UCPD controller
      usb: typec: tcpm: Add STM32 UCPD driver
      arm64: dts: st: add i2c1 pinctrl entries for stm32mp25
      arm64: dts: st: add tcpp pinctrl entries for stm32mp25

Fabrice Gasnier (10):
      dt-bindings: usb: add FUSB340 switch binding
      usb: typec: add FUSB340 SuperSpeed switch driver
      dt-bindings: nvmem: st,stm32-romem: align patternProperties regex on nvmem-deprecated-cells.yaml
      arm64: dts: st: Add ucpd node on stm32mp251
      dt-bindings: usb: dwc3: stm32: refer to dwc3-common
      dt-bindings: phy: stm32: adapt usb2phy as syscon child on stm32mp25
      dt-bindings: arm: stm32mp2: allow child nodes since simple-mfd transition
      arm64: dts: st: enable usb on stm32mp257f-ev1
      arm64: dts: st: enable usb on stm32mp257f-dk
      arm64: configs: enable usb and its dependencies used on stm32mp25

 .../bindings/arm/stm32/st,stm32-syscon.yaml        |  10 +
 .../devicetree/bindings/nvmem/st,stm32-romem.yaml  |   2 +-
 .../devicetree/bindings/phy/st,stm32-usb2phy.yaml  |  20 +-
 .../devicetree/bindings/usb/onnn,fusb340.yaml      |  73 ++
 .../devicetree/bindings/usb/st,stm32-ucpd.yaml     | 134 ++++
 .../devicetree/bindings/usb/st,stm32mp25-dwc3.yaml |   3 +
 Documentation/devicetree/bindings/usb/st,tcpp.yaml |  63 ++
 arch/arm64/boot/dts/st/stm32mp25-pinctrl.dtsi      |  27 +
 arch/arm64/boot/dts/st/stm32mp251.dtsi             |  51 ++
 arch/arm64/boot/dts/st/stm32mp257f-dk.dts          | 111 +++
 arch/arm64/boot/dts/st/stm32mp257f-ev1.dts         |  79 ++
 arch/arm64/configs/defconfig                       |   6 +
 drivers/usb/typec/mux/Kconfig                      |   8 +
 drivers/usb/typec/mux/Makefile                     |   1 +
 drivers/usb/typec/mux/fusb340.c                    | 169 +++++
 drivers/usb/typec/tcpm/Kconfig                     |  22 +
 drivers/usb/typec/tcpm/Makefile                    |   2 +
 drivers/usb/typec/tcpm/st_tcpp.c                   | 418 +++++++++++
 drivers/usb/typec/tcpm/st_tcpp.h                   |  21 +
 drivers/usb/typec/tcpm/stm32_ucpd.c                | 818 +++++++++++++++++++++
 20 files changed, 2024 insertions(+), 14 deletions(-)
---
base-commit: a8eb98861eefbab7fc254c8014712471448b295c
change-id: 20260821-ucpd-host-fusb340-v7-2-rfc-836f0bac0543

Best regards,
--  
Fabrice Gasnier <fabrice.gasnier@foss.st.com>
Re: [PATCH 00/16] Add support for USB Type-C on STM32MP25
Posted by Krzysztof Kozlowski 1 month ago
On 21/08/2026 18:23, Fabrice Gasnier wrote:
> Add support for the UCPD controller found in STM32MP23 and STM32MP25 platforms.
> It is tigtly coupled with external TCPP02/03 I2C companion chip to interface
> and to protect UCB-C DRP port.
> 
> Purpose is to propose a complete set of drivers and bindings to enable USB
> Type-C support on STM32MP25 reference design boards, EVAL and DK, compared
> to alternate UCPD series [1].
> 
> This is an on-going work on top of over series [2] and [3].
> 
> [1] https://lore.kernel.org/all/20260819163410.119755-1-marex@nabladev.com/
> [2] https://lore.kernel.org/linux-phy/20260816213849.1044073-1-marex@nabladev.com/
> [3] https://lore.kernel.org/linux-usb/20260817163101.6203-1-fabrice.gasnier@foss.st.com/

Why? This makes review difficult and inflates the patch count for no
real gain.

Above patches have issues, so just reply there and tell what is the
issue instead of fixing it here!

Best regards,
Krzysztof