linux-sunxi.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/2] Allwinner H6 USB3 device tree updates
@ 2021-04-30  3:19 Samuel Holland
  2021-04-30  3:19 ` [PATCH v2 1/2] dt-bindings: usb: Document the Allwinner H6 DWC3 glue Samuel Holland
  2021-04-30  3:19 ` [PATCH v2 2/2] arm64: dts: allwinner: h6: Wrap DWC3 and PHY in glue layer Samuel Holland
  0 siblings, 2 replies; 6+ messages in thread
From: Samuel Holland @ 2021-04-30  3:19 UTC (permalink / raw)
  To: Rob Herring, Maxime Ripard, Chen-Yu Tsai, Jernej Skrabec,
	Felipe Balbi, Greg Kroah-Hartman
  Cc: devicetree, linux-arm-kernel, linux-sunxi, linux-usb,
	linux-kernel, Samuel Holland

While implementing support for this USB controller in U-Boot, I noticed
that the reset line alsp affects they PHY. It looks like most platforms
use a separate glue node to represent this, and in fact there is already
a compatible for the H6 listed in drivers/usb/dwc3/dwc3-of-simple.c.

Since this layout matches the usual way of modeling this hardware, it
allows using the existing drivers without adding platform-specific code.


I tried to follow the existing DWC3 glue bindings (most of which are
still .txt). With this version, `make dt_binding_check` still raises a
couple of issues, which I do not know how best to fix:

  - Warning (unit_address_vs_reg): /example-0/usb@5200000: node has a
    unit name, but no reg or ranges property
    => Since there is no MMIO translation, an empty `ranges;` seemed
       appropriate, but it causes this warning.

  - usb@5200000: usb@5200000:phy-names:0: 'usb2-phy' was expected
    => This may be an issue with the snps,dwc3 binding, where the
       `items` list overrides `minItems`. I believe the intention is
       that both PHY references are optional. This implementation has
       only one PHY.

Changes from v1 to v2:
  - Updated the binding to reference the PHY binding by path correctly
  - Dropped DT updates for Pine H64

Samuel Holland (2):
  dt-bindings: usb: Document the Allwinner H6 DWC3 glue
  arm64: dts: allwinner: h6: Wrap DWC3 and PHY in glue layer

 .../usb/allwinner,sun50i-h6-dwc3.yaml         | 75 +++++++++++++++++++
 .../dts/allwinner/sun50i-h6-beelink-gs1.dts   |  6 +-
 .../dts/allwinner/sun50i-h6-orangepi-3.dts    |  6 +-
 .../dts/allwinner/sun50i-h6-tanix-tx6.dts     |  6 +-
 arch/arm64/boot/dts/allwinner/sun50i-h6.dtsi  | 60 ++++++++-------
 5 files changed, 111 insertions(+), 42 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/usb/allwinner,sun50i-h6-dwc3.yaml

-- 
2.26.3


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-05-10  7:31 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-30  3:19 [PATCH v2 0/2] Allwinner H6 USB3 device tree updates Samuel Holland
2021-04-30  3:19 ` [PATCH v2 1/2] dt-bindings: usb: Document the Allwinner H6 DWC3 glue Samuel Holland
2021-04-30 15:24   ` Rob Herring
2021-04-30 19:44   ` Rob Herring
2021-05-10  7:31     ` Samuel Holland
2021-04-30  3:19 ` [PATCH v2 2/2] arm64: dts: allwinner: h6: Wrap DWC3 and PHY in glue layer Samuel Holland

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).