1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/mtd/ti,am654-hbmc.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: HyperBus Memory Controller (HBMC) on TI's K3 family of SoCs
8
9maintainers:
10  - Vignesh Raghavendra <vigneshr@ti.com>
11
12properties:
13  compatible:
14    const: ti,am654-hbmc
15
16  reg:
17    maxItems: 2
18
19  power-domains: true
20  '#address-cells': true
21  '#size-cells': true
22  ranges: true
23
24  mux-controls:
25    description: MMIO mux controller node to select b/w OSPI and HBMC.
26
27  clocks:
28    maxItems: 1
29
30patternProperties:
31  "^flash@[0-1],[0-9a-f]+$":
32    type: object
33
34required:
35  - compatible
36  - reg
37  - ranges
38  - clocks
39  - '#address-cells'
40  - '#size-cells'
41
42additionalProperties: false
43
44examples:
45  - |
46    bus {
47        #address-cells = <2>;
48        #size-cells = <2>;
49
50        hbmc: memory-controller@47034000 {
51            compatible = "ti,am654-hbmc";
52            reg = <0x0 0x47034000 0x0 0x100>,
53                  <0x5 0x00000000 0x1 0x0000000>;
54            ranges = <0x0 0x0 0x5 0x00000000 0x4000000>, /* CS0 - 64MB */
55                     <0x1 0x0 0x5 0x04000000 0x4000000>; /* CS1 - 64MB */
56            clocks = <&k3_clks 102 0>;
57            #address-cells = <2>;
58            #size-cells = <1>;
59            power-domains = <&k3_pds 55>;
60            mux-controls = <&hbmc_mux 0>;
61
62            flash@0,0 {
63                compatible = "cypress,hyperflash", "cfi-flash";
64                reg = <0x0 0x0 0x4000000>;
65                #address-cells = <1>;
66                #size-cells = <1>;
67            };
68        };
69    };
70