xref: /linux/Documentation/devicetree/bindings/phy/samsung,usb3-drd-phy.yaml (revision 0b76bdce32300a626dc796f656c085a786c5dab1)
160c24dbfSKrzysztof Kozlowski# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
260c24dbfSKrzysztof Kozlowski%YAML 1.2
360c24dbfSKrzysztof Kozlowski---
460c24dbfSKrzysztof Kozlowski$id: http://devicetree.org/schemas/phy/samsung,usb3-drd-phy.yaml#
560c24dbfSKrzysztof Kozlowski$schema: http://devicetree.org/meta-schemas/core.yaml#
660c24dbfSKrzysztof Kozlowski
760c24dbfSKrzysztof Kozlowskititle: Samsung Exynos SoC USB 3.0 DRD PHY USB 2.0 PHY
860c24dbfSKrzysztof Kozlowski
960c24dbfSKrzysztof Kozlowskimaintainers:
108a1e6bb3SKrzysztof Kozlowski  - Krzysztof Kozlowski <krzk@kernel.org>
1160c24dbfSKrzysztof Kozlowski  - Marek Szyprowski <m.szyprowski@samsung.com>
1260c24dbfSKrzysztof Kozlowski  - Sylwester Nawrocki <s.nawrocki@samsung.com>
1360c24dbfSKrzysztof Kozlowski
1460c24dbfSKrzysztof Kozlowskidescription: |
1560c24dbfSKrzysztof Kozlowski  For samsung,exynos5250-usbdrd-phy and samsung,exynos5420-usbdrd-phy
1660c24dbfSKrzysztof Kozlowski  compatible PHYs, the second cell in the PHY specifier identifies the
1760c24dbfSKrzysztof Kozlowski  PHY id, which is interpreted as follows::
1860c24dbfSKrzysztof Kozlowski    0 - UTMI+ type phy,
1960c24dbfSKrzysztof Kozlowski    1 - PIPE3 type phy.
2060c24dbfSKrzysztof Kozlowski
2160c24dbfSKrzysztof Kozlowski  For SoCs like Exynos5420 having multiple USB 3.0 DRD PHY controllers,
2260c24dbfSKrzysztof Kozlowski  'usbdrd_phy' nodes should have numbered alias in the aliases node, in the
2360c24dbfSKrzysztof Kozlowski  form of usbdrdphyN, N = 0, 1... (depending on number of controllers).
2460c24dbfSKrzysztof Kozlowski
2560c24dbfSKrzysztof Kozlowskiproperties:
2660c24dbfSKrzysztof Kozlowski  compatible:
2760c24dbfSKrzysztof Kozlowski    enum:
2860c24dbfSKrzysztof Kozlowski      - samsung,exynos5250-usbdrd-phy
2960c24dbfSKrzysztof Kozlowski      - samsung,exynos5420-usbdrd-phy
3060c24dbfSKrzysztof Kozlowski      - samsung,exynos5433-usbdrd-phy
3160c24dbfSKrzysztof Kozlowski      - samsung,exynos7-usbdrd-phy
32*0b76bdceSSam Protsenko      - samsung,exynos850-usbdrd-phy
3360c24dbfSKrzysztof Kozlowski
3460c24dbfSKrzysztof Kozlowski  clocks:
3560c24dbfSKrzysztof Kozlowski    minItems: 2
3660c24dbfSKrzysztof Kozlowski    maxItems: 5
3760c24dbfSKrzysztof Kozlowski
3860c24dbfSKrzysztof Kozlowski  clock-names:
3960c24dbfSKrzysztof Kozlowski    minItems: 2
4060c24dbfSKrzysztof Kozlowski    maxItems: 5
4160c24dbfSKrzysztof Kozlowski    description: |
4260c24dbfSKrzysztof Kozlowski      At least two clocks::
4360c24dbfSKrzysztof Kozlowski        - Main PHY clock (same as USB DRD controller i.e. DWC3 IP clock), used
4460c24dbfSKrzysztof Kozlowski          for register access.
4560c24dbfSKrzysztof Kozlowski        - PHY reference clock (usually crystal clock), used for PHY operations,
4660c24dbfSKrzysztof Kozlowski          associated by phy name. It is used to determine bit values for clock
4760c24dbfSKrzysztof Kozlowski          settings register.  For Exynos5420 this is given as 'sclk_usbphy30'
4860c24dbfSKrzysztof Kozlowski          in the CMU.
4960c24dbfSKrzysztof Kozlowski
5060c24dbfSKrzysztof Kozlowski  "#phy-cells":
5160c24dbfSKrzysztof Kozlowski    const: 1
5260c24dbfSKrzysztof Kozlowski
5360c24dbfSKrzysztof Kozlowski  port:
5460c24dbfSKrzysztof Kozlowski    $ref: /schemas/graph.yaml#/properties/port
5560c24dbfSKrzysztof Kozlowski    description:
5660c24dbfSKrzysztof Kozlowski      Any connector to the data bus of this controller should be modelled using
5760c24dbfSKrzysztof Kozlowski      the OF graph bindings specified.
5860c24dbfSKrzysztof Kozlowski
5960c24dbfSKrzysztof Kozlowski  reg:
6060c24dbfSKrzysztof Kozlowski    maxItems: 1
6160c24dbfSKrzysztof Kozlowski
6260c24dbfSKrzysztof Kozlowski  samsung,pmu-syscon:
6360c24dbfSKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/phandle
6460c24dbfSKrzysztof Kozlowski    description:
6560c24dbfSKrzysztof Kozlowski      Phandle to PMU system controller interface.
6660c24dbfSKrzysztof Kozlowski
6760c24dbfSKrzysztof Kozlowski  vbus-supply:
6860c24dbfSKrzysztof Kozlowski    description:
6960c24dbfSKrzysztof Kozlowski      VBUS power source.
7060c24dbfSKrzysztof Kozlowski
7160c24dbfSKrzysztof Kozlowski  vbus-boost-supply:
7260c24dbfSKrzysztof Kozlowski    description:
7360c24dbfSKrzysztof Kozlowski      VBUS Boost 5V power source.
7460c24dbfSKrzysztof Kozlowski
7560c24dbfSKrzysztof Kozlowskirequired:
7660c24dbfSKrzysztof Kozlowski  - compatible
7760c24dbfSKrzysztof Kozlowski  - clocks
7860c24dbfSKrzysztof Kozlowski  - clock-names
7960c24dbfSKrzysztof Kozlowski  - "#phy-cells"
8060c24dbfSKrzysztof Kozlowski  - reg
8160c24dbfSKrzysztof Kozlowski  - samsung,pmu-syscon
8260c24dbfSKrzysztof Kozlowski
8360c24dbfSKrzysztof KozlowskiallOf:
8460c24dbfSKrzysztof Kozlowski  - if:
8560c24dbfSKrzysztof Kozlowski      properties:
8660c24dbfSKrzysztof Kozlowski        compatible:
8760c24dbfSKrzysztof Kozlowski          contains:
8860c24dbfSKrzysztof Kozlowski            enum:
8960c24dbfSKrzysztof Kozlowski              - samsung,exynos5433-usbdrd-phy
9060c24dbfSKrzysztof Kozlowski              - samsung,exynos7-usbdrd-phy
9160c24dbfSKrzysztof Kozlowski    then:
9260c24dbfSKrzysztof Kozlowski      properties:
9360c24dbfSKrzysztof Kozlowski        clocks:
9460c24dbfSKrzysztof Kozlowski          minItems: 5
9560c24dbfSKrzysztof Kozlowski          maxItems: 5
9660c24dbfSKrzysztof Kozlowski        clock-names:
9760c24dbfSKrzysztof Kozlowski          items:
9860c24dbfSKrzysztof Kozlowski            - const: phy
9960c24dbfSKrzysztof Kozlowski            - const: ref
10060c24dbfSKrzysztof Kozlowski            - const: phy_utmi
10160c24dbfSKrzysztof Kozlowski            - const: phy_pipe
10260c24dbfSKrzysztof Kozlowski            - const: itp
10360c24dbfSKrzysztof Kozlowski    else:
10460c24dbfSKrzysztof Kozlowski      properties:
10560c24dbfSKrzysztof Kozlowski        clocks:
10660c24dbfSKrzysztof Kozlowski          minItems: 2
10760c24dbfSKrzysztof Kozlowski          maxItems: 2
10860c24dbfSKrzysztof Kozlowski        clock-names:
10960c24dbfSKrzysztof Kozlowski          items:
11060c24dbfSKrzysztof Kozlowski            - const: phy
11160c24dbfSKrzysztof Kozlowski            - const: ref
11260c24dbfSKrzysztof Kozlowski
11360c24dbfSKrzysztof KozlowskiadditionalProperties: false
11460c24dbfSKrzysztof Kozlowski
11560c24dbfSKrzysztof Kozlowskiexamples:
11660c24dbfSKrzysztof Kozlowski  - |
11760c24dbfSKrzysztof Kozlowski    #include <dt-bindings/clock/exynos5420.h>
11860c24dbfSKrzysztof Kozlowski
11960c24dbfSKrzysztof Kozlowski    phy@12100000 {
12060c24dbfSKrzysztof Kozlowski        compatible = "samsung,exynos5420-usbdrd-phy";
12160c24dbfSKrzysztof Kozlowski        reg = <0x12100000 0x100>;
12260c24dbfSKrzysztof Kozlowski        #phy-cells = <1>;
12360c24dbfSKrzysztof Kozlowski        clocks = <&clock CLK_USBD300>, <&clock CLK_SCLK_USBPHY300>;
12460c24dbfSKrzysztof Kozlowski        clock-names = "phy", "ref";
12560c24dbfSKrzysztof Kozlowski        samsung,pmu-syscon = <&pmu_system_controller>;
12660c24dbfSKrzysztof Kozlowski        vbus-supply = <&usb300_vbus_reg>;
12760c24dbfSKrzysztof Kozlowski    };
128