1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2# Copyright (c) 2020 MediaTek
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/phy/mediatek,ufs-phy.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: MediaTek Universal Flash Storage (UFS) M-PHY binding
9
10maintainers:
11  - Stanley Chu <stanley.chu@mediatek.com>
12  - Chunfeng Yun <chunfeng.yun@mediatek.com>
13
14description: |
15  UFS M-PHY nodes are defined to describe on-chip UFS M-PHY hardware macro.
16  Each UFS M-PHY node should have its own node.
17  To bind UFS M-PHY with UFS host controller, the controller node should
18  contain a phandle reference to UFS M-PHY node.
19
20properties:
21  $nodename:
22    pattern: "^ufs-phy@[0-9a-f]+$"
23
24  compatible:
25    const: mediatek,mt8183-ufsphy
26
27  reg:
28    maxItems: 1
29
30  clocks:
31    items:
32      - description: Unipro core control clock.
33      - description: M-PHY core control clock.
34
35  clock-names:
36    items:
37      - const: unipro
38      - const: mp
39
40  "#phy-cells":
41    const: 0
42
43required:
44  - compatible
45  - reg
46  - "#phy-cells"
47  - clocks
48  - clock-names
49
50additionalProperties: false
51
52examples:
53  - |
54    #include <dt-bindings/clock/mt8183-clk.h>
55    ufsphy: ufs-phy@11fa0000 {
56        compatible = "mediatek,mt8183-ufsphy";
57        reg = <0x11fa0000 0xc000>;
58        clocks = <&infracfg CLK_INFRA_UNIPRO_SCK>,
59                 <&infracfg CLK_INFRA_UFS_MP_SAP_BCLK>;
60        clock-names = "unipro", "mp";
61        #phy-cells = <0>;
62    };
63
64...
65