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