18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ci%YAML 1.2
38c2ecf20Sopenharmony_ci---
48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/ufs/ti,j721e-ufs.yaml#
58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_cititle: TI J721e UFS Host Controller Glue Driver
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_cimaintainers:
108c2ecf20Sopenharmony_ci  - Vignesh Raghavendra <vigneshr@ti.com>
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ciproperties:
138c2ecf20Sopenharmony_ci  compatible:
148c2ecf20Sopenharmony_ci    items:
158c2ecf20Sopenharmony_ci      - const: ti,j721e-ufs
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ci  reg:
188c2ecf20Sopenharmony_ci    maxItems: 1
198c2ecf20Sopenharmony_ci    description: address of TI UFS glue registers
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_ci  clocks:
228c2ecf20Sopenharmony_ci    maxItems: 1
238c2ecf20Sopenharmony_ci    description: phandle to the M-PHY clock
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ci  power-domains:
268c2ecf20Sopenharmony_ci    maxItems: 1
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ci  assigned-clocks:
298c2ecf20Sopenharmony_ci    maxItems: 1
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ci  assigned-clock-parents:
328c2ecf20Sopenharmony_ci    maxItems: 1
338c2ecf20Sopenharmony_ci
348c2ecf20Sopenharmony_ci  "#address-cells":
358c2ecf20Sopenharmony_ci    const: 2
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ci  "#size-cells":
388c2ecf20Sopenharmony_ci    const: 2
398c2ecf20Sopenharmony_ci
408c2ecf20Sopenharmony_ci  ranges: true
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_cirequired:
438c2ecf20Sopenharmony_ci  - compatible
448c2ecf20Sopenharmony_ci  - reg
458c2ecf20Sopenharmony_ci  - clocks
468c2ecf20Sopenharmony_ci  - power-domains
478c2ecf20Sopenharmony_ci
488c2ecf20Sopenharmony_cipatternProperties:
498c2ecf20Sopenharmony_ci  "^ufs@[0-9a-f]+$":
508c2ecf20Sopenharmony_ci    type: object
518c2ecf20Sopenharmony_ci    description: |
528c2ecf20Sopenharmony_ci      Cadence UFS controller node must be the child node. Refer
538c2ecf20Sopenharmony_ci      Documentation/devicetree/bindings/ufs/cdns,ufshc.txt for binding
548c2ecf20Sopenharmony_ci      documentation of child node
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_ciadditionalProperties: false
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_ciexamples:
598c2ecf20Sopenharmony_ci  - |
608c2ecf20Sopenharmony_ci    #include <dt-bindings/interrupt-controller/irq.h>
618c2ecf20Sopenharmony_ci    #include <dt-bindings/interrupt-controller/arm-gic.h>
628c2ecf20Sopenharmony_ci
638c2ecf20Sopenharmony_ci    bus {
648c2ecf20Sopenharmony_ci        #address-cells = <2>;
658c2ecf20Sopenharmony_ci        #size-cells = <2>;
668c2ecf20Sopenharmony_ci
678c2ecf20Sopenharmony_ci        ufs-wrapper@4e80000 {
688c2ecf20Sopenharmony_ci            compatible = "ti,j721e-ufs";
698c2ecf20Sopenharmony_ci            reg = <0x0 0x4e80000 0x0 0x100>;
708c2ecf20Sopenharmony_ci            power-domains = <&k3_pds 277>;
718c2ecf20Sopenharmony_ci            clocks = <&k3_clks 277 1>;
728c2ecf20Sopenharmony_ci            assigned-clocks = <&k3_clks 277 1>;
738c2ecf20Sopenharmony_ci            assigned-clock-parents = <&k3_clks 277 4>;
748c2ecf20Sopenharmony_ci
758c2ecf20Sopenharmony_ci            ranges = <0x0 0x0 0x0 0x4e80000 0x0 0x14000>;
768c2ecf20Sopenharmony_ci            #address-cells = <2>;
778c2ecf20Sopenharmony_ci            #size-cells = <2>;
788c2ecf20Sopenharmony_ci
798c2ecf20Sopenharmony_ci            ufs@4000 {
808c2ecf20Sopenharmony_ci                compatible = "cdns,ufshc-m31-16nm", "jedec,ufs-2.0";
818c2ecf20Sopenharmony_ci                reg = <0x0 0x4000 0x0 0x10000>;
828c2ecf20Sopenharmony_ci                interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
838c2ecf20Sopenharmony_ci                freq-table-hz = <19200000 19200000>;
848c2ecf20Sopenharmony_ci                power-domains = <&k3_pds 277>;
858c2ecf20Sopenharmony_ci                clocks = <&k3_clks 277 1>;
868c2ecf20Sopenharmony_ci                assigned-clocks = <&k3_clks 277 1>;
878c2ecf20Sopenharmony_ci                assigned-clock-parents = <&k3_clks 277 4>;
888c2ecf20Sopenharmony_ci                clock-names = "core_clk";
898c2ecf20Sopenharmony_ci            };
908c2ecf20Sopenharmony_ci        };
918c2ecf20Sopenharmony_ci    };
92