mbox series

[00/13] Add USB support to Exynos7885

Message ID 20240804215458.404085-1-virag.david003@gmail.com
Headers show
Series Add USB support to Exynos7885 | expand

Message

David Virag Aug. 4, 2024, 9:53 p.m. UTC
This set of patches adds support for USB on the Exynos7885 SoC.

The Exynos7885 has a DWC3 compatible USB controller and an Exynos USB
PHY that theoretically supports USB3 SuperSpeed, but is not implemented
in any known device. The vendor kernel also stubs out USB3 functions, so
we do not support it.

While at it, since we need some new clocks implemented, also fix some
issues with the existing clock driver/bindings.

p.s.: Not realizing the USB PLL has a MUX on it made me waste I don't
even want to know how much time on troubleshooting why it's not
working...

David Virag (13):
  dt-bindings: clock: exynos7885: Fix duplicated binding
  dt-bindings: clock: exynos7885: Add CMU_TOP PLL MUX indices
  dt-bindings: clock: exynos7885: Add indices for USB clocks
  dt-bindings: phy: samsung,usb3-drd-phy: Add Exynos7885 support
  dt-bindings: usb: samsung,exynos-dwc3: Add Exynos7885 support
  clk: samsung: exynos7885: Update CLKS_NR_FSYS after bindings fix
  clk: samsung: exynos7885: Add missing MUX clocks from PLLs in CMU_TOP
  clk: samsung: clk-pll: Add support for pll_1418x
  clk: samsung: exynos7885: Add USB related clocks to CMU_FSYS
  usb: dwc3: exynos: Add support for Exynos7885
  phy: exynos5-usbdrd: support Exynos7885 USB PHY
  arm64: dts: exynos: Enable USB in Exynos7885
  arm64: dts: exynos: exynos7885-jackpotlte: Enable USB support

 .../bindings/phy/samsung,usb3-drd-phy.yaml    |  2 +
 .../bindings/usb/samsung,exynos-dwc3.yaml     |  5 +-
 .../boot/dts/exynos/exynos7885-jackpotlte.dts | 20 ++++
 arch/arm64/boot/dts/exynos/exynos7885.dtsi    | 35 +++++++
 drivers/clk/samsung/clk-exynos7885.c          | 95 +++++++++++++++----
 drivers/clk/samsung/clk-pll.c                 | 20 +++-
 drivers/clk/samsung/clk-pll.h                 |  1 +
 drivers/phy/samsung/phy-exynos5-usbdrd.c      | 21 ++++
 drivers/usb/dwc3/dwc3-exynos.c                |  3 +
 include/dt-bindings/clock/exynos7885.h        | 32 ++++---
 include/linux/soc/samsung/exynos-regs-pmu.h   |  3 +
 11 files changed, 201 insertions(+), 36 deletions(-)