6c90999e2e
This includes BCM4908 support Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
109 lines
3.8 KiB
Diff
109 lines
3.8 KiB
Diff
From b11df0c9efbbe2b52c5133ca15030f01b43ec6ef Mon Sep 17 00:00:00 2001
|
|
From: Al Cooper <alcooperx@gmail.com>
|
|
Date: Fri, 3 Jan 2020 13:18:04 -0500
|
|
Subject: [PATCH] dt-bindings: Add Broadcom STB USB PHY binding document
|
|
|
|
Add support for bcm7216 and bcm7211
|
|
|
|
Signed-off-by: Al Cooper <alcooperx@gmail.com>
|
|
Reviewed-by: Rob Herring <robh@kernel.org>
|
|
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
|
|
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
|
|
---
|
|
.../bindings/phy/brcm,brcmstb-usb-phy.txt | 69 +++++++++++++++----
|
|
1 file changed, 56 insertions(+), 13 deletions(-)
|
|
|
|
--- a/Documentation/devicetree/bindings/phy/brcm,brcmstb-usb-phy.txt
|
|
+++ b/Documentation/devicetree/bindings/phy/brcm,brcmstb-usb-phy.txt
|
|
@@ -1,30 +1,49 @@
|
|
Broadcom STB USB PHY
|
|
|
|
Required properties:
|
|
- - compatible: brcm,brcmstb-usb-phy
|
|
- - reg: two offset and length pairs.
|
|
- The first pair specifies a manditory set of memory mapped
|
|
- registers used for general control of the PHY.
|
|
- The second pair specifies optional registers used by some of
|
|
- the SoCs that support USB 3.x
|
|
- - #phy-cells: Shall be 1 as it expects one argument for setting
|
|
- the type of the PHY. Possible values are:
|
|
- - PHY_TYPE_USB2 for USB1.1/2.0 PHY
|
|
- - PHY_TYPE_USB3 for USB3.x PHY
|
|
+- compatible: should be one of
|
|
+ "brcm,brcmstb-usb-phy"
|
|
+ "brcm,bcm7216-usb-phy"
|
|
+ "brcm,bcm7211-usb-phy"
|
|
+
|
|
+- reg and reg-names properties requirements are specific to the
|
|
+ compatible string.
|
|
+ "brcm,brcmstb-usb-phy":
|
|
+ - reg: 1 or 2 offset and length pairs. One for the base CTRL registers
|
|
+ and an optional pair for systems with USB 3.x support
|
|
+ - reg-names: not specified
|
|
+ "brcm,bcm7216-usb-phy":
|
|
+ - reg: 3 offset and length pairs for CTRL, XHCI_EC and XHCI_GBL
|
|
+ registers
|
|
+ - reg-names: "ctrl", "xhci_ec", "xhci_gbl"
|
|
+ "brcm,bcm7211-usb-phy":
|
|
+ - reg: 5 offset and length pairs for CTRL, XHCI_EC, XHCI_GBL,
|
|
+ USB_PHY and USB_MDIO registers and an optional pair
|
|
+ for the BDC registers
|
|
+ - reg-names: "ctrl", "xhci_ec", "xhci_gbl", "usb_phy", "usb_mdio", "bdc_ec"
|
|
+
|
|
+- #phy-cells: Shall be 1 as it expects one argument for setting
|
|
+ the type of the PHY. Possible values are:
|
|
+ - PHY_TYPE_USB2 for USB1.1/2.0 PHY
|
|
+ - PHY_TYPE_USB3 for USB3.x PHY
|
|
|
|
Optional Properties:
|
|
- clocks : clock phandles.
|
|
- clock-names: String, clock name.
|
|
+- interrupts: wakeup interrupt
|
|
+- interrupt-names: "wakeup"
|
|
- brcm,ipp: Boolean, Invert Port Power.
|
|
Possible values are: 0 (Don't invert), 1 (Invert)
|
|
- brcm,ioc: Boolean, Invert Over Current detection.
|
|
Possible values are: 0 (Don't invert), 1 (Invert)
|
|
-NOTE: one or both of the following two properties must be set
|
|
-- brcm,has-xhci: Boolean indicating the phy has an XHCI phy.
|
|
-- brcm,has-eohci: Boolean indicating the phy has an EHCI/OHCI phy.
|
|
- dr_mode: String, PHY Device mode.
|
|
Possible values are: "host", "peripheral ", "drd" or "typec-pd"
|
|
If this property is not defined, the phy will default to "host" mode.
|
|
+- brcm,syscon-piarbctl: phandle to syscon for handling config registers
|
|
+NOTE: one or both of the following two properties must be set
|
|
+- brcm,has-xhci: Boolean indicating the phy has an XHCI phy.
|
|
+- brcm,has-eohci: Boolean indicating the phy has an EHCI/OHCI phy.
|
|
+
|
|
|
|
Example:
|
|
|
|
@@ -41,3 +60,27 @@ usbphy_0: usb-phy@f0470200 {
|
|
clocks = <&usb20>, <&usb30>;
|
|
clock-names = "sw_usb", "sw_usb3";
|
|
};
|
|
+
|
|
+usb-phy@29f0200 {
|
|
+ reg = <0x29f0200 0x200>,
|
|
+ <0x29c0880 0x30>,
|
|
+ <0x29cc100 0x534>,
|
|
+ <0x2808000 0x24>,
|
|
+ <0x2980080 0x8>;
|
|
+ reg-names = "ctrl",
|
|
+ "xhci_ec",
|
|
+ "xhci_gbl",
|
|
+ "usb_phy",
|
|
+ "usb_mdio";
|
|
+ brcm,ioc = <0x0>;
|
|
+ brcm,ipp = <0x0>;
|
|
+ compatible = "brcm,bcm7211-usb-phy";
|
|
+ interrupts = <0x30>;
|
|
+ interrupt-parent = <&vpu_intr1_nosec_intc>;
|
|
+ interrupt-names = "wake";
|
|
+ #phy-cells = <0x1>;
|
|
+ brcm,has-xhci;
|
|
+ syscon-piarbctl = <&syscon_piarbctl>;
|
|
+ clocks = <&scmi_clk 256>;
|
|
+ clock-names = "sw_usb";
|
|
+};
|