xref: /freebsd/sys/contrib/device-tree/Bindings/memory-controllers/starfive,jh7110-dmc.yaml (revision 1537cf73828a2db2a67622ccfff77383c7db6f07)
1*1537cf73SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*1537cf73SEmmanuel Vadot%YAML 1.2
3*1537cf73SEmmanuel Vadot---
4*1537cf73SEmmanuel Vadot$id: http://devicetree.org/schemas/memory-controllers/starfive,jh7110-dmc.yaml#
5*1537cf73SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*1537cf73SEmmanuel Vadot
7*1537cf73SEmmanuel Vadottitle: StarFive JH7110 DMC
8*1537cf73SEmmanuel Vadot
9*1537cf73SEmmanuel Vadotmaintainers:
10*1537cf73SEmmanuel Vadot  - E Shattow <e@freeshell.de>
11*1537cf73SEmmanuel Vadot
12*1537cf73SEmmanuel Vadotdescription:
13*1537cf73SEmmanuel Vadot  JH7110 DDR external memory interface LPDDR4/DDR4/DDR3/LPDDR3 32-bit at
14*1537cf73SEmmanuel Vadot  2133Mbps (up to 2800Mbps).
15*1537cf73SEmmanuel Vadot
16*1537cf73SEmmanuel Vadotproperties:
17*1537cf73SEmmanuel Vadot  compatible:
18*1537cf73SEmmanuel Vadot    items:
19*1537cf73SEmmanuel Vadot      - const: starfive,jh7110-dmc
20*1537cf73SEmmanuel Vadot
21*1537cf73SEmmanuel Vadot  reg:
22*1537cf73SEmmanuel Vadot    items:
23*1537cf73SEmmanuel Vadot      - description: controller registers
24*1537cf73SEmmanuel Vadot      - description: phy registers
25*1537cf73SEmmanuel Vadot
26*1537cf73SEmmanuel Vadot  clocks:
27*1537cf73SEmmanuel Vadot    maxItems: 1
28*1537cf73SEmmanuel Vadot
29*1537cf73SEmmanuel Vadot  clock-names:
30*1537cf73SEmmanuel Vadot    items:
31*1537cf73SEmmanuel Vadot      - const: pll
32*1537cf73SEmmanuel Vadot
33*1537cf73SEmmanuel Vadot  resets:
34*1537cf73SEmmanuel Vadot    items:
35*1537cf73SEmmanuel Vadot      - description: axi
36*1537cf73SEmmanuel Vadot      - description: osc
37*1537cf73SEmmanuel Vadot      - description: apb
38*1537cf73SEmmanuel Vadot
39*1537cf73SEmmanuel Vadot  reset-names:
40*1537cf73SEmmanuel Vadot    items:
41*1537cf73SEmmanuel Vadot      - const: axi
42*1537cf73SEmmanuel Vadot      - const: osc
43*1537cf73SEmmanuel Vadot      - const: apb
44*1537cf73SEmmanuel Vadot
45*1537cf73SEmmanuel Vadotrequired:
46*1537cf73SEmmanuel Vadot  - compatible
47*1537cf73SEmmanuel Vadot  - reg
48*1537cf73SEmmanuel Vadot  - clocks
49*1537cf73SEmmanuel Vadot  - clock-names
50*1537cf73SEmmanuel Vadot  - resets
51*1537cf73SEmmanuel Vadot  - reset-names
52*1537cf73SEmmanuel Vadot
53*1537cf73SEmmanuel VadotadditionalProperties: false
54*1537cf73SEmmanuel Vadot
55*1537cf73SEmmanuel Vadotexamples:
56*1537cf73SEmmanuel Vadot  - |
57*1537cf73SEmmanuel Vadot    #include <dt-bindings/clock/starfive,jh7110-crg.h>
58*1537cf73SEmmanuel Vadot    #include <dt-bindings/reset/starfive,jh7110-crg.h>
59*1537cf73SEmmanuel Vadot    soc {
60*1537cf73SEmmanuel Vadot      #address-cells = <2>;
61*1537cf73SEmmanuel Vadot      #size-cells = <2>;
62*1537cf73SEmmanuel Vadot
63*1537cf73SEmmanuel Vadot      memory-controller@15700000 {
64*1537cf73SEmmanuel Vadot        compatible = "starfive,jh7110-dmc";
65*1537cf73SEmmanuel Vadot        reg = <0x0 0x15700000 0x0 0x10000>,
66*1537cf73SEmmanuel Vadot              <0x0 0x13000000 0x0 0x10000>;
67*1537cf73SEmmanuel Vadot        clocks = <&syscrg JH7110_PLLCLK_PLL1_OUT>;
68*1537cf73SEmmanuel Vadot        clock-names = "pll";
69*1537cf73SEmmanuel Vadot        resets = <&syscrg JH7110_SYSRST_DDR_AXI>,
70*1537cf73SEmmanuel Vadot                 <&syscrg JH7110_SYSRST_DDR_OSC>,
71*1537cf73SEmmanuel Vadot                 <&syscrg JH7110_SYSRST_DDR_APB>;
72*1537cf73SEmmanuel Vadot        reset-names = "axi", "osc", "apb";
73*1537cf73SEmmanuel Vadot      };
74*1537cf73SEmmanuel Vadot    };
75