xref: /freebsd-src/sys/contrib/device-tree/Bindings/memory-controllers/rockchip,rk3399-dmc.yaml (revision 84943d6f38e936ac3b7a3947ca26eeb27a39f938)
1d5b0e70fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2d5b0e70fSEmmanuel Vadot# %YAML 1.2
3d5b0e70fSEmmanuel Vadot---
4d5b0e70fSEmmanuel Vadot$id: http://devicetree.org/schemas/memory-controllers/rockchip,rk3399-dmc.yaml#
5d5b0e70fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6d5b0e70fSEmmanuel Vadot
7d5b0e70fSEmmanuel Vadottitle: Rockchip rk3399 DMC (Dynamic Memory Controller) device
8d5b0e70fSEmmanuel Vadot
9d5b0e70fSEmmanuel Vadotmaintainers:
10d5b0e70fSEmmanuel Vadot  - Brian Norris <briannorris@chromium.org>
11d5b0e70fSEmmanuel Vadot
12d5b0e70fSEmmanuel Vadotproperties:
13d5b0e70fSEmmanuel Vadot  compatible:
14d5b0e70fSEmmanuel Vadot    enum:
15d5b0e70fSEmmanuel Vadot      - rockchip,rk3399-dmc
16d5b0e70fSEmmanuel Vadot
17d5b0e70fSEmmanuel Vadot  devfreq-events:
18d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/phandle
19d5b0e70fSEmmanuel Vadot    description:
20d5b0e70fSEmmanuel Vadot      Node to get DDR loading. Refer to
21*84943d6fSEmmanuel Vadot      Documentation/devicetree/bindings/devfreq/event/rockchip,dfi.yaml.
22d5b0e70fSEmmanuel Vadot
23d5b0e70fSEmmanuel Vadot  clocks:
24d5b0e70fSEmmanuel Vadot    maxItems: 1
25d5b0e70fSEmmanuel Vadot
26d5b0e70fSEmmanuel Vadot  clock-names:
27d5b0e70fSEmmanuel Vadot    items:
28d5b0e70fSEmmanuel Vadot      - const: dmc_clk
29d5b0e70fSEmmanuel Vadot
30d5b0e70fSEmmanuel Vadot  operating-points-v2: true
31d5b0e70fSEmmanuel Vadot
32d5b0e70fSEmmanuel Vadot  center-supply:
33d5b0e70fSEmmanuel Vadot    description:
34d5b0e70fSEmmanuel Vadot      DMC regulator supply.
35d5b0e70fSEmmanuel Vadot
36d5b0e70fSEmmanuel Vadot  rockchip,pmu:
37d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/phandle
38d5b0e70fSEmmanuel Vadot    description:
39d5b0e70fSEmmanuel Vadot      Phandle to the syscon managing the "PMU general register files".
40d5b0e70fSEmmanuel Vadot
41d5b0e70fSEmmanuel Vadot  interrupts:
42d5b0e70fSEmmanuel Vadot    maxItems: 1
43d5b0e70fSEmmanuel Vadot    description:
44d5b0e70fSEmmanuel Vadot      The CPU interrupt number. It should be a DCF interrupt. When DDR DVFS
45d5b0e70fSEmmanuel Vadot      finishes, a DCF interrupt is triggered.
46d5b0e70fSEmmanuel Vadot
47d5b0e70fSEmmanuel Vadot  rockchip,ddr3_speed_bin:
48d5b0e70fSEmmanuel Vadot    deprecated: true
49d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
50d5b0e70fSEmmanuel Vadot    description:
51d5b0e70fSEmmanuel Vadot      For values, reference include/dt-bindings/clock/rk3399-ddr.h. Selects the
52d5b0e70fSEmmanuel Vadot      DDR3 cl-trp-trcd type. It must be set according to "Speed Bin" in DDR3
53d5b0e70fSEmmanuel Vadot      datasheet; DO NOT use a smaller "Speed Bin" than specified for the DDR3
54d5b0e70fSEmmanuel Vadot      being used.
55d5b0e70fSEmmanuel Vadot
56d5b0e70fSEmmanuel Vadot  rockchip,pd_idle:
57d5b0e70fSEmmanuel Vadot    deprecated: true
58d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
59d5b0e70fSEmmanuel Vadot    description:
60d5b0e70fSEmmanuel Vadot      Configure the PD_IDLE value. Defines the power-down idle period in which
61d5b0e70fSEmmanuel Vadot      memories are placed into power-down mode if bus is idle for PD_IDLE DFI
62d5b0e70fSEmmanuel Vadot      clock cycles.
63d5b0e70fSEmmanuel Vadot      See also rockchip,pd-idle-ns.
64d5b0e70fSEmmanuel Vadot
65d5b0e70fSEmmanuel Vadot  rockchip,sr_idle:
66d5b0e70fSEmmanuel Vadot    deprecated: true
67d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
68d5b0e70fSEmmanuel Vadot    description:
69d5b0e70fSEmmanuel Vadot      Configure the SR_IDLE value. Defines the self-refresh idle period in
70d5b0e70fSEmmanuel Vadot      which memories are placed into self-refresh mode if bus is idle for
71d5b0e70fSEmmanuel Vadot      SR_IDLE * 1024 DFI clock cycles (DFI clocks freq is half of DRAM clock).
72d5b0e70fSEmmanuel Vadot      See also rockchip,sr-idle-ns.
73d5b0e70fSEmmanuel Vadot    default: 0
74d5b0e70fSEmmanuel Vadot
75d5b0e70fSEmmanuel Vadot  rockchip,sr_mc_gate_idle:
76d5b0e70fSEmmanuel Vadot    deprecated: true
77d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
78d5b0e70fSEmmanuel Vadot    description:
79d5b0e70fSEmmanuel Vadot      Defines the memory self-refresh and controller clock gating idle period.
80d5b0e70fSEmmanuel Vadot      Memories are placed into self-refresh mode and memory controller clock
81d5b0e70fSEmmanuel Vadot      arg gating started if bus is idle for sr_mc_gate_idle*1024 DFI clock
82d5b0e70fSEmmanuel Vadot      cycles.
83d5b0e70fSEmmanuel Vadot      See also rockchip,sr-mc-gate-idle-ns.
84d5b0e70fSEmmanuel Vadot
85d5b0e70fSEmmanuel Vadot  rockchip,srpd_lite_idle:
86d5b0e70fSEmmanuel Vadot    deprecated: true
87d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
88d5b0e70fSEmmanuel Vadot    description:
89d5b0e70fSEmmanuel Vadot      Defines the self-refresh power down idle period in which memories are
90d5b0e70fSEmmanuel Vadot      placed into self-refresh power down mode if bus is idle for
91d5b0e70fSEmmanuel Vadot      srpd_lite_idle * 1024 DFI clock cycles. This parameter is for LPDDR4
92d5b0e70fSEmmanuel Vadot      only.
93d5b0e70fSEmmanuel Vadot      See also rockchip,srpd-lite-idle-ns.
94d5b0e70fSEmmanuel Vadot
95d5b0e70fSEmmanuel Vadot  rockchip,standby_idle:
96d5b0e70fSEmmanuel Vadot    deprecated: true
97d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
98d5b0e70fSEmmanuel Vadot    description:
99d5b0e70fSEmmanuel Vadot      Defines the standby idle period in which memories are placed into
100d5b0e70fSEmmanuel Vadot      self-refresh mode. The controller, pi, PHY and DRAM clock will be gated
101d5b0e70fSEmmanuel Vadot      if bus is idle for standby_idle * DFI clock cycles.
102d5b0e70fSEmmanuel Vadot      See also rockchip,standby-idle-ns.
103d5b0e70fSEmmanuel Vadot
104d5b0e70fSEmmanuel Vadot  rockchip,dram_dll_dis_freq:
105d5b0e70fSEmmanuel Vadot    deprecated: true
106d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
107d5b0e70fSEmmanuel Vadot    description: |
108d5b0e70fSEmmanuel Vadot      Defines the DDR3 DLL bypass frequency in MHz. When DDR frequency is less
109d5b0e70fSEmmanuel Vadot      than DRAM_DLL_DISB_FREQ, DDR3 DLL will be bypassed.
110d5b0e70fSEmmanuel Vadot      Note: if DLL was bypassed, the odt will also stop working.
111d5b0e70fSEmmanuel Vadot
112d5b0e70fSEmmanuel Vadot  rockchip,phy_dll_dis_freq:
113d5b0e70fSEmmanuel Vadot    deprecated: true
114d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
115d5b0e70fSEmmanuel Vadot    description: |
116d5b0e70fSEmmanuel Vadot      Defines the PHY dll bypass frequency in MHz (Mega Hz). When DDR frequency
117d5b0e70fSEmmanuel Vadot      is less than DRAM_DLL_DISB_FREQ, PHY DLL will be bypassed.
118d5b0e70fSEmmanuel Vadot      Note: PHY DLL and PHY ODT are independent.
119d5b0e70fSEmmanuel Vadot
120d5b0e70fSEmmanuel Vadot  rockchip,auto_pd_dis_freq:
121d5b0e70fSEmmanuel Vadot    deprecated: true
122d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
123d5b0e70fSEmmanuel Vadot    description:
124d5b0e70fSEmmanuel Vadot      Defines the auto PD disable frequency in MHz.
125d5b0e70fSEmmanuel Vadot
126d5b0e70fSEmmanuel Vadot  rockchip,ddr3_odt_dis_freq:
127d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
128d5b0e70fSEmmanuel Vadot    minimum: 1000000  # In case anyone thought this was MHz.
129d5b0e70fSEmmanuel Vadot    description:
130d5b0e70fSEmmanuel Vadot      When the DRAM type is DDR3, this parameter defines the ODT disable
131d5b0e70fSEmmanuel Vadot      frequency in Hz. When the DDR frequency is less then ddr3_odt_dis_freq,
132d5b0e70fSEmmanuel Vadot      the ODT on the DRAM side and controller side are both disabled.
133d5b0e70fSEmmanuel Vadot
134d5b0e70fSEmmanuel Vadot  rockchip,ddr3_drv:
135d5b0e70fSEmmanuel Vadot    deprecated: true
136d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
137d5b0e70fSEmmanuel Vadot    description:
138d5b0e70fSEmmanuel Vadot      When the DRAM type is DDR3, this parameter defines the DRAM side drive
139d5b0e70fSEmmanuel Vadot      strength in ohms.
140d5b0e70fSEmmanuel Vadot    default: 40
141d5b0e70fSEmmanuel Vadot
142d5b0e70fSEmmanuel Vadot  rockchip,ddr3_odt:
143d5b0e70fSEmmanuel Vadot    deprecated: true
144d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
145d5b0e70fSEmmanuel Vadot    description:
146d5b0e70fSEmmanuel Vadot      When the DRAM type is DDR3, this parameter defines the DRAM side ODT
147d5b0e70fSEmmanuel Vadot      strength in ohms.
148d5b0e70fSEmmanuel Vadot    default: 120
149d5b0e70fSEmmanuel Vadot
150d5b0e70fSEmmanuel Vadot  rockchip,phy_ddr3_ca_drv:
151d5b0e70fSEmmanuel Vadot    deprecated: true
152d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
153d5b0e70fSEmmanuel Vadot    description:
154d5b0e70fSEmmanuel Vadot      When the DRAM type is DDR3, this parameter defines the phy side CA line
155aa1a8ff2SEmmanuel Vadot      (including command line, address line and clock line) drive strength.
156d5b0e70fSEmmanuel Vadot    default: 40
157d5b0e70fSEmmanuel Vadot
158d5b0e70fSEmmanuel Vadot  rockchip,phy_ddr3_dq_drv:
159d5b0e70fSEmmanuel Vadot    deprecated: true
160d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
161d5b0e70fSEmmanuel Vadot    description:
162d5b0e70fSEmmanuel Vadot      When the DRAM type is DDR3, this parameter defines the PHY side DQ line
163d5b0e70fSEmmanuel Vadot      (including DQS/DQ/DM line) drive strength.
164d5b0e70fSEmmanuel Vadot    default: 40
165d5b0e70fSEmmanuel Vadot
166d5b0e70fSEmmanuel Vadot  rockchip,phy_ddr3_odt:
167d5b0e70fSEmmanuel Vadot    deprecated: true
168d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
169d5b0e70fSEmmanuel Vadot    description:
170d5b0e70fSEmmanuel Vadot      When the DRAM type is DDR3, this parameter defines the PHY side ODT
171d5b0e70fSEmmanuel Vadot      strength.
172d5b0e70fSEmmanuel Vadot    default: 240
173d5b0e70fSEmmanuel Vadot
174d5b0e70fSEmmanuel Vadot  rockchip,lpddr3_odt_dis_freq:
175d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
176d5b0e70fSEmmanuel Vadot    minimum: 1000000  # In case anyone thought this was MHz.
177d5b0e70fSEmmanuel Vadot    description:
178d5b0e70fSEmmanuel Vadot      When the DRAM type is LPDDR3, this parameter defines then ODT disable
179d5b0e70fSEmmanuel Vadot      frequency in Hz. When DDR frequency is less then ddr3_odt_dis_freq, the
180d5b0e70fSEmmanuel Vadot      ODT on the DRAM side and controller side are both disabled.
181d5b0e70fSEmmanuel Vadot
182d5b0e70fSEmmanuel Vadot  rockchip,lpddr3_drv:
183d5b0e70fSEmmanuel Vadot    deprecated: true
184d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
185d5b0e70fSEmmanuel Vadot    description:
186d5b0e70fSEmmanuel Vadot      When the DRAM type is LPDDR3, this parameter defines the DRAM side drive
187d5b0e70fSEmmanuel Vadot      strength in ohms.
188d5b0e70fSEmmanuel Vadot    default: 34
189d5b0e70fSEmmanuel Vadot
190d5b0e70fSEmmanuel Vadot  rockchip,lpddr3_odt:
191d5b0e70fSEmmanuel Vadot    deprecated: true
192d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
193d5b0e70fSEmmanuel Vadot    description:
194d5b0e70fSEmmanuel Vadot      When the DRAM type is LPDDR3, this parameter defines the DRAM side ODT
195d5b0e70fSEmmanuel Vadot      strength in ohms.
196d5b0e70fSEmmanuel Vadot    default: 240
197d5b0e70fSEmmanuel Vadot
198d5b0e70fSEmmanuel Vadot  rockchip,phy_lpddr3_ca_drv:
199d5b0e70fSEmmanuel Vadot    deprecated: true
200d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
201d5b0e70fSEmmanuel Vadot    description:
202d5b0e70fSEmmanuel Vadot      When the DRAM type is LPDDR3, this parameter defines the PHY side CA line
203d5b0e70fSEmmanuel Vadot      (including command line, address line and clock line) drive strength.
204d5b0e70fSEmmanuel Vadot    default: 40
205d5b0e70fSEmmanuel Vadot
206d5b0e70fSEmmanuel Vadot  rockchip,phy_lpddr3_dq_drv:
207d5b0e70fSEmmanuel Vadot    deprecated: true
208d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
209d5b0e70fSEmmanuel Vadot    description:
210d5b0e70fSEmmanuel Vadot      When the DRAM type is LPDDR3, this parameter defines the PHY side DQ line
211d5b0e70fSEmmanuel Vadot      (including DQS/DQ/DM line) drive strength.
212d5b0e70fSEmmanuel Vadot    default: 40
213d5b0e70fSEmmanuel Vadot
214d5b0e70fSEmmanuel Vadot  rockchip,phy_lpddr3_odt:
215d5b0e70fSEmmanuel Vadot    deprecated: true
216d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
217d5b0e70fSEmmanuel Vadot    description:
218d5b0e70fSEmmanuel Vadot      When dram type is LPDDR3, this parameter define the phy side odt
219d5b0e70fSEmmanuel Vadot      strength, default value is 240.
220d5b0e70fSEmmanuel Vadot
221d5b0e70fSEmmanuel Vadot  rockchip,lpddr4_odt_dis_freq:
222d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
223d5b0e70fSEmmanuel Vadot    minimum: 1000000  # In case anyone thought this was MHz.
224d5b0e70fSEmmanuel Vadot    description:
225d5b0e70fSEmmanuel Vadot      When the DRAM type is LPDDR4, this parameter defines the ODT disable
226d5b0e70fSEmmanuel Vadot      frequency in Hz. When the DDR frequency is less then ddr3_odt_dis_freq,
227d5b0e70fSEmmanuel Vadot      the ODT on the DRAM side and controller side are both disabled.
228d5b0e70fSEmmanuel Vadot
229d5b0e70fSEmmanuel Vadot  rockchip,lpddr4_drv:
230d5b0e70fSEmmanuel Vadot    deprecated: true
231d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
232d5b0e70fSEmmanuel Vadot    description:
233d5b0e70fSEmmanuel Vadot      When the DRAM type is LPDDR4, this parameter defines the DRAM side drive
234d5b0e70fSEmmanuel Vadot      strength in ohms.
235d5b0e70fSEmmanuel Vadot    default: 60
236d5b0e70fSEmmanuel Vadot
237d5b0e70fSEmmanuel Vadot  rockchip,lpddr4_dq_odt:
238d5b0e70fSEmmanuel Vadot    deprecated: true
239d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
240d5b0e70fSEmmanuel Vadot    description:
241d5b0e70fSEmmanuel Vadot      When the DRAM type is LPDDR4, this parameter defines the DRAM side ODT on
242d5b0e70fSEmmanuel Vadot      DQS/DQ line strength in ohms.
243d5b0e70fSEmmanuel Vadot    default: 40
244d5b0e70fSEmmanuel Vadot
245d5b0e70fSEmmanuel Vadot  rockchip,lpddr4_ca_odt:
246d5b0e70fSEmmanuel Vadot    deprecated: true
247d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
248d5b0e70fSEmmanuel Vadot    description:
249d5b0e70fSEmmanuel Vadot      When the DRAM type is LPDDR4, this parameter defines the DRAM side ODT on
250d5b0e70fSEmmanuel Vadot      CA line strength in ohms.
251d5b0e70fSEmmanuel Vadot    default: 40
252d5b0e70fSEmmanuel Vadot
253d5b0e70fSEmmanuel Vadot  rockchip,phy_lpddr4_ca_drv:
254d5b0e70fSEmmanuel Vadot    deprecated: true
255d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
256d5b0e70fSEmmanuel Vadot    description:
257d5b0e70fSEmmanuel Vadot      When the DRAM type is LPDDR4, this parameter defines the PHY side CA line
258d5b0e70fSEmmanuel Vadot      (including command address line) drive strength.
259d5b0e70fSEmmanuel Vadot    default: 40
260d5b0e70fSEmmanuel Vadot
261d5b0e70fSEmmanuel Vadot  rockchip,phy_lpddr4_ck_cs_drv:
262d5b0e70fSEmmanuel Vadot    deprecated: true
263d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
264d5b0e70fSEmmanuel Vadot    description:
265d5b0e70fSEmmanuel Vadot      When the DRAM type is LPDDR4, this parameter defines the PHY side clock
266d5b0e70fSEmmanuel Vadot      line and CS line drive strength.
267d5b0e70fSEmmanuel Vadot    default: 80
268d5b0e70fSEmmanuel Vadot
269d5b0e70fSEmmanuel Vadot  rockchip,phy_lpddr4_dq_drv:
270d5b0e70fSEmmanuel Vadot    deprecated: true
271d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
272d5b0e70fSEmmanuel Vadot    description:
273d5b0e70fSEmmanuel Vadot      When the DRAM type is LPDDR4, this parameter defines the PHY side DQ line
274d5b0e70fSEmmanuel Vadot      (including DQS/DQ/DM line) drive strength.
275d5b0e70fSEmmanuel Vadot    default: 80
276d5b0e70fSEmmanuel Vadot
277d5b0e70fSEmmanuel Vadot  rockchip,phy_lpddr4_odt:
278d5b0e70fSEmmanuel Vadot    deprecated: true
279d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
280d5b0e70fSEmmanuel Vadot    description:
281d5b0e70fSEmmanuel Vadot      When the DRAM type is LPDDR4, this parameter defines the PHY side ODT
282d5b0e70fSEmmanuel Vadot      strength.
283d5b0e70fSEmmanuel Vadot    default: 60
284d5b0e70fSEmmanuel Vadot
285d5b0e70fSEmmanuel Vadot  rockchip,pd-idle-ns:
286d5b0e70fSEmmanuel Vadot    description:
287d5b0e70fSEmmanuel Vadot      Configure the PD_IDLE value in nanoseconds. Defines the power-down idle
288d5b0e70fSEmmanuel Vadot      period in which memories are placed into power-down mode if bus is idle
289d5b0e70fSEmmanuel Vadot      for PD_IDLE nanoseconds.
290d5b0e70fSEmmanuel Vadot
291d5b0e70fSEmmanuel Vadot  rockchip,sr-idle-ns:
292d5b0e70fSEmmanuel Vadot    description:
293d5b0e70fSEmmanuel Vadot      Configure the SR_IDLE value in nanoseconds. Defines the self-refresh idle
294d5b0e70fSEmmanuel Vadot      period in which memories are placed into self-refresh mode if bus is idle
295d5b0e70fSEmmanuel Vadot      for SR_IDLE nanoseconds.
296d5b0e70fSEmmanuel Vadot    default: 0
297d5b0e70fSEmmanuel Vadot
298d5b0e70fSEmmanuel Vadot  rockchip,sr-mc-gate-idle-ns:
299d5b0e70fSEmmanuel Vadot    description:
300d5b0e70fSEmmanuel Vadot      Defines the memory self-refresh and controller clock gating idle period in nanoseconds.
301d5b0e70fSEmmanuel Vadot      Memories are placed into self-refresh mode and memory controller clock
302d5b0e70fSEmmanuel Vadot      arg gating started if bus is idle for sr_mc_gate_idle nanoseconds.
303d5b0e70fSEmmanuel Vadot
304d5b0e70fSEmmanuel Vadot  rockchip,srpd-lite-idle-ns:
305d5b0e70fSEmmanuel Vadot    description:
306d5b0e70fSEmmanuel Vadot      Defines the self-refresh power down idle period in which memories are
307d5b0e70fSEmmanuel Vadot      placed into self-refresh power down mode if bus is idle for
308aa1a8ff2SEmmanuel Vadot      srpd_lite_idle nanoseconds. This parameter is for LPDDR4 only.
309d5b0e70fSEmmanuel Vadot
310d5b0e70fSEmmanuel Vadot  rockchip,standby-idle-ns:
311d5b0e70fSEmmanuel Vadot    description:
312d5b0e70fSEmmanuel Vadot      Defines the standby idle period in which memories are placed into
313d5b0e70fSEmmanuel Vadot      self-refresh mode. The controller, pi, PHY and DRAM clock will be gated
314d5b0e70fSEmmanuel Vadot      if bus is idle for standby_idle nanoseconds.
315d5b0e70fSEmmanuel Vadot
316d5b0e70fSEmmanuel Vadot  rockchip,pd-idle-dis-freq-hz:
317d5b0e70fSEmmanuel Vadot    description:
318d5b0e70fSEmmanuel Vadot      Defines the power-down idle disable frequency in Hz. When the DDR
319d5b0e70fSEmmanuel Vadot      frequency is greater than pd-idle-dis-freq, power-down idle is disabled.
320d5b0e70fSEmmanuel Vadot      See also rockchip,pd-idle-ns.
321d5b0e70fSEmmanuel Vadot
322d5b0e70fSEmmanuel Vadot  rockchip,sr-idle-dis-freq-hz:
323d5b0e70fSEmmanuel Vadot    description:
324d5b0e70fSEmmanuel Vadot      Defines the self-refresh idle disable frequency in Hz. When the DDR
325d5b0e70fSEmmanuel Vadot      frequency is greater than sr-idle-dis-freq, self-refresh idle is
326d5b0e70fSEmmanuel Vadot      disabled. See also rockchip,sr-idle-ns.
327d5b0e70fSEmmanuel Vadot
328d5b0e70fSEmmanuel Vadot  rockchip,sr-mc-gate-idle-dis-freq-hz:
329d5b0e70fSEmmanuel Vadot    description:
330d5b0e70fSEmmanuel Vadot      Defines the self-refresh and memory-controller clock gating disable
331d5b0e70fSEmmanuel Vadot      frequency in Hz. When the DDR frequency is greater than
332d5b0e70fSEmmanuel Vadot      sr-mc-gate-idle-dis-freq, the clock will not be gated when idle. See also
333d5b0e70fSEmmanuel Vadot      rockchip,sr-mc-gate-idle-ns.
334d5b0e70fSEmmanuel Vadot
335d5b0e70fSEmmanuel Vadot  rockchip,srpd-lite-idle-dis-freq-hz:
336d5b0e70fSEmmanuel Vadot    description:
337d5b0e70fSEmmanuel Vadot      Defines the self-refresh power down idle disable frequency in Hz. When
338d5b0e70fSEmmanuel Vadot      the DDR frequency is greater than srpd-lite-idle-dis-freq, memory will
339d5b0e70fSEmmanuel Vadot      not be placed into self-refresh power down mode when idle. See also
340d5b0e70fSEmmanuel Vadot      rockchip,srpd-lite-idle-ns.
341d5b0e70fSEmmanuel Vadot
342d5b0e70fSEmmanuel Vadot  rockchip,standby-idle-dis-freq-hz:
343d5b0e70fSEmmanuel Vadot    description:
344d5b0e70fSEmmanuel Vadot      Defines the standby idle disable frequency in Hz. When the DDR frequency
345d5b0e70fSEmmanuel Vadot      is greater than standby-idle-dis-freq, standby idle is disabled. See also
346d5b0e70fSEmmanuel Vadot      rockchip,standby-idle-ns.
347d5b0e70fSEmmanuel Vadot
348d5b0e70fSEmmanuel Vadotrequired:
349d5b0e70fSEmmanuel Vadot  - compatible
350d5b0e70fSEmmanuel Vadot  - devfreq-events
351d5b0e70fSEmmanuel Vadot  - clocks
352d5b0e70fSEmmanuel Vadot  - clock-names
353d5b0e70fSEmmanuel Vadot  - operating-points-v2
354d5b0e70fSEmmanuel Vadot  - center-supply
355d5b0e70fSEmmanuel Vadot
356d5b0e70fSEmmanuel VadotadditionalProperties: false
357d5b0e70fSEmmanuel Vadot
358d5b0e70fSEmmanuel Vadotexamples:
359d5b0e70fSEmmanuel Vadot  - |
360d5b0e70fSEmmanuel Vadot    #include <dt-bindings/clock/rk3399-cru.h>
361d5b0e70fSEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
362d5b0e70fSEmmanuel Vadot    memory-controller {
363d5b0e70fSEmmanuel Vadot      compatible = "rockchip,rk3399-dmc";
364d5b0e70fSEmmanuel Vadot      devfreq-events = <&dfi>;
365d5b0e70fSEmmanuel Vadot      rockchip,pmu = <&pmu>;
366d5b0e70fSEmmanuel Vadot      interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
367d5b0e70fSEmmanuel Vadot      clocks = <&cru SCLK_DDRC>;
368d5b0e70fSEmmanuel Vadot      clock-names = "dmc_clk";
369d5b0e70fSEmmanuel Vadot      operating-points-v2 = <&dmc_opp_table>;
370d5b0e70fSEmmanuel Vadot      center-supply = <&ppvar_centerlogic>;
371d5b0e70fSEmmanuel Vadot      rockchip,pd-idle-ns = <160>;
372d5b0e70fSEmmanuel Vadot      rockchip,sr-idle-ns = <10240>;
373d5b0e70fSEmmanuel Vadot      rockchip,sr-mc-gate-idle-ns = <40960>;
374d5b0e70fSEmmanuel Vadot      rockchip,srpd-lite-idle-ns = <61440>;
375d5b0e70fSEmmanuel Vadot      rockchip,standby-idle-ns = <81920>;
376d5b0e70fSEmmanuel Vadot      rockchip,ddr3_odt_dis_freq = <333000000>;
377d5b0e70fSEmmanuel Vadot      rockchip,lpddr3_odt_dis_freq = <333000000>;
378d5b0e70fSEmmanuel Vadot      rockchip,lpddr4_odt_dis_freq = <333000000>;
379d5b0e70fSEmmanuel Vadot      rockchip,pd-idle-dis-freq-hz = <1000000000>;
380d5b0e70fSEmmanuel Vadot      rockchip,sr-idle-dis-freq-hz = <1000000000>;
381d5b0e70fSEmmanuel Vadot      rockchip,sr-mc-gate-idle-dis-freq-hz = <1000000000>;
382d5b0e70fSEmmanuel Vadot      rockchip,srpd-lite-idle-dis-freq-hz = <0>;
383d5b0e70fSEmmanuel Vadot      rockchip,standby-idle-dis-freq-hz = <928000000>;
384d5b0e70fSEmmanuel Vadot    };
385