xref: /linux/Documentation/devicetree/bindings/phy/samsung,usb3-drd-phy.yaml (revision 8a1e6bb3f78f06432e095758476358d8cb63c03d)
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:
10*8a1e6bb3SKrzysztof 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
3260c24dbfSKrzysztof Kozlowski
3360c24dbfSKrzysztof Kozlowski  clocks:
3460c24dbfSKrzysztof Kozlowski    minItems: 2
3560c24dbfSKrzysztof Kozlowski    maxItems: 5
3660c24dbfSKrzysztof Kozlowski
3760c24dbfSKrzysztof Kozlowski  clock-names:
3860c24dbfSKrzysztof Kozlowski    minItems: 2
3960c24dbfSKrzysztof Kozlowski    maxItems: 5
4060c24dbfSKrzysztof Kozlowski    description: |
4160c24dbfSKrzysztof Kozlowski      At least two clocks::
4260c24dbfSKrzysztof Kozlowski        - Main PHY clock (same as USB DRD controller i.e. DWC3 IP clock), used
4360c24dbfSKrzysztof Kozlowski          for register access.
4460c24dbfSKrzysztof Kozlowski        - PHY reference clock (usually crystal clock), used for PHY operations,
4560c24dbfSKrzysztof Kozlowski          associated by phy name. It is used to determine bit values for clock
4660c24dbfSKrzysztof Kozlowski          settings register.  For Exynos5420 this is given as 'sclk_usbphy30'
4760c24dbfSKrzysztof Kozlowski          in the CMU.
4860c24dbfSKrzysztof Kozlowski
4960c24dbfSKrzysztof Kozlowski  "#phy-cells":
5060c24dbfSKrzysztof Kozlowski    const: 1
5160c24dbfSKrzysztof Kozlowski
5260c24dbfSKrzysztof Kozlowski  port:
5360c24dbfSKrzysztof Kozlowski    $ref: /schemas/graph.yaml#/properties/port
5460c24dbfSKrzysztof Kozlowski    description:
5560c24dbfSKrzysztof Kozlowski      Any connector to the data bus of this controller should be modelled using
5660c24dbfSKrzysztof Kozlowski      the OF graph bindings specified.
5760c24dbfSKrzysztof Kozlowski
5860c24dbfSKrzysztof Kozlowski  reg:
5960c24dbfSKrzysztof Kozlowski    maxItems: 1
6060c24dbfSKrzysztof Kozlowski
6160c24dbfSKrzysztof Kozlowski  samsung,pmu-syscon:
6260c24dbfSKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/phandle
6360c24dbfSKrzysztof Kozlowski    description:
6460c24dbfSKrzysztof Kozlowski      Phandle to PMU system controller interface.
6560c24dbfSKrzysztof Kozlowski
6660c24dbfSKrzysztof Kozlowski  vbus-supply:
6760c24dbfSKrzysztof Kozlowski    description:
6860c24dbfSKrzysztof Kozlowski      VBUS power source.
6960c24dbfSKrzysztof Kozlowski
7060c24dbfSKrzysztof Kozlowski  vbus-boost-supply:
7160c24dbfSKrzysztof Kozlowski    description:
7260c24dbfSKrzysztof Kozlowski      VBUS Boost 5V power source.
7360c24dbfSKrzysztof Kozlowski
7460c24dbfSKrzysztof Kozlowskirequired:
7560c24dbfSKrzysztof Kozlowski  - compatible
7660c24dbfSKrzysztof Kozlowski  - clocks
7760c24dbfSKrzysztof Kozlowski  - clock-names
7860c24dbfSKrzysztof Kozlowski  - "#phy-cells"
7960c24dbfSKrzysztof Kozlowski  - reg
8060c24dbfSKrzysztof Kozlowski  - samsung,pmu-syscon
8160c24dbfSKrzysztof Kozlowski
8260c24dbfSKrzysztof KozlowskiallOf:
8360c24dbfSKrzysztof Kozlowski  - if:
8460c24dbfSKrzysztof Kozlowski      properties:
8560c24dbfSKrzysztof Kozlowski        compatible:
8660c24dbfSKrzysztof Kozlowski          contains:
8760c24dbfSKrzysztof Kozlowski            enum:
8860c24dbfSKrzysztof Kozlowski              - samsung,exynos5433-usbdrd-phy
8960c24dbfSKrzysztof Kozlowski              - samsung,exynos7-usbdrd-phy
9060c24dbfSKrzysztof Kozlowski    then:
9160c24dbfSKrzysztof Kozlowski      properties:
9260c24dbfSKrzysztof Kozlowski        clocks:
9360c24dbfSKrzysztof Kozlowski          minItems: 5
9460c24dbfSKrzysztof Kozlowski          maxItems: 5
9560c24dbfSKrzysztof Kozlowski        clock-names:
9660c24dbfSKrzysztof Kozlowski          items:
9760c24dbfSKrzysztof Kozlowski            - const: phy
9860c24dbfSKrzysztof Kozlowski            - const: ref
9960c24dbfSKrzysztof Kozlowski            - const: phy_utmi
10060c24dbfSKrzysztof Kozlowski            - const: phy_pipe
10160c24dbfSKrzysztof Kozlowski            - const: itp
10260c24dbfSKrzysztof Kozlowski    else:
10360c24dbfSKrzysztof Kozlowski      properties:
10460c24dbfSKrzysztof Kozlowski        clocks:
10560c24dbfSKrzysztof Kozlowski          minItems: 2
10660c24dbfSKrzysztof Kozlowski          maxItems: 2
10760c24dbfSKrzysztof Kozlowski        clock-names:
10860c24dbfSKrzysztof Kozlowski          items:
10960c24dbfSKrzysztof Kozlowski            - const: phy
11060c24dbfSKrzysztof Kozlowski            - const: ref
11160c24dbfSKrzysztof Kozlowski
11260c24dbfSKrzysztof KozlowskiadditionalProperties: false
11360c24dbfSKrzysztof Kozlowski
11460c24dbfSKrzysztof Kozlowskiexamples:
11560c24dbfSKrzysztof Kozlowski  - |
11660c24dbfSKrzysztof Kozlowski    #include <dt-bindings/clock/exynos5420.h>
11760c24dbfSKrzysztof Kozlowski
11860c24dbfSKrzysztof Kozlowski    phy@12100000 {
11960c24dbfSKrzysztof Kozlowski        compatible = "samsung,exynos5420-usbdrd-phy";
12060c24dbfSKrzysztof Kozlowski        reg = <0x12100000 0x100>;
12160c24dbfSKrzysztof Kozlowski        #phy-cells = <1>;
12260c24dbfSKrzysztof Kozlowski        clocks = <&clock CLK_USBD300>, <&clock CLK_SCLK_USBPHY300>;
12360c24dbfSKrzysztof Kozlowski        clock-names = "phy", "ref";
12460c24dbfSKrzysztof Kozlowski        samsung,pmu-syscon = <&pmu_system_controller>;
12560c24dbfSKrzysztof Kozlowski        vbus-supply = <&usb300_vbus_reg>;
12660c24dbfSKrzysztof Kozlowski    };
127