1 Rockchip Dynamic Memory Controller Driver
3 - compatible: "rockchip,rk3288-dmc", "syscon"
4 - rockchip,cru: this driver should access cru regs, so need get cru here
5 - rockchip,grf: this driver should access grf regs, so need get grf here
6 - rockchip,pmu: this driver should access pmu regs, so need get pmu here
7 - rockchip,sgrf: this driver should access sgrf regs, so need get sgrf here
8 - rockchip,noc: this driver should access noc regs, so need get noc here
9 - reg: dynamic ram protocol controller(PCTL) address and phy controller(PHYCTL) address
10 - clock: must include clock specifiers corresponding to entries in the clock-names property.
11 - clock-output-names: from common clock binding to override the default output clock name
13 pclk_ddrupctl0: support clock for access protocol controller registers of channel 0
14 pclk_publ0: support clock for access phy controller registers of channel 0
15 pclk_ddrupctl1: support clock for access protocol controller registers of channel 1
16 pclk_publ1: support clock for access phy controller registers of channel 1
17 arm_clk: for get arm frequency
18 -logic-supply: this driver should adjust VDD_LOGIC according to dmc frequency, so need get logic-supply here
21 rockchip,odt-disable-freq: if ddr clock frequency low than odt-disable-freq,this driver should disable DDR ODT
22 rockchip,dll-disable-freq: if ddr clock frequency low than dll-disable-freq,this driver should disable DDR DLL
23 rockchip,sr-enable-freq: if ddr clock frequency high than sr-enable-freq,this driver should enable the automatic self refresh function
24 rockchip,pd-enable-freq: if ddr clock frequency high than pd-enable-freq,this driver should enable the automatic power down function
25 rockchip,auto-self-refresh-cnt: Self Refresh idle period. Memories are placed into Self-Refresh mode if the NIF is idle in Access state for auto-self-refresh-cnt * 32 * n_clk cycles.The automatic self refresh function is disabled when auto-self-refresh-cnt=0.
26 rockchip,auto-power-down-cnt: Power-down idle period. Memories are placed into power-down mode if the NIF is idle for auto-power-down-cnt n_clk cycles.The automatic power down function is disabled when auto-power-down-cnt=0.
27 rockchip,ddr-speed-bin: DDR3 type,AC timing parameters from the memory data-sheet
36 8.DDR3_1333J (10-10-10)
39 11.DDR3_1600J (10-10-10)
40 12.DDR3_1600K (11-11-11)
41 13.DDR3_1866J (10-10-10)
42 14.DDR3_1866K (11-11-11)
43 15.DDR3_1866L (12-12-12)
44 16.DDR3_1866M (13-13-13)
45 17.DDR3_2133K (11-11-11)
46 18.DDR3_2133L (12-12-12)
47 19.DDR3_2133M (13-13-13)
48 20.DDR3_2133N (14-14-14)
50 rockchip,trcd: tRCD,AC timing parameters from the memory data-sheet
51 rockchip,trp: tRP,AC timing parameters from the memory data-sheet
52 -rockchip,num-channels: number of SDRAM channels (1 or 2)
53 -rockchip,pctl-timing: parameters for the SDRAM setup, in this order:
88 -rockchip,phy-timing: PHY timing information in this order:
93 -rockchip,sdram-channel: SDRAM channel information, each 8 bits. Both channels
94 will be set up the same. The parameters are in this order:
103 - rockchip,sdram-params: SDRAM base parameters, in this order:
104 NOC timing - value for ddrtiming register
105 NOC activate - value for activate register
106 ddrconf - value for ddrconf register
108 DRAM type (3=DDR3, 6=LPDDR3)
109 stride - stride value for soc_con2 register
110 odt - 1 to enable DDR ODT, 0 to disable
114 compatible = "rockchip,rk3288-dmc", "syscon";
115 rockchip,cru = <&cru>;
116 rockchip,grf = <&grf>;
117 rockchip,pmu = <&pmu>;
118 rockchip,sgrf = <&sgrf>;
119 rockchip,noc = <&noc>;
120 reg = <0xff610000 0x3fc
124 clocks = <&cru PCLK_DDRUPCTL0>, <&cru PCLK_PUBL0>,
125 <&cru PCLK_DDRUPCTL1>, <&cru PCLK_PUBL1>,
127 clock-names = "pclk_ddrupctl0", "pclk_publ0",
128 "pclk_ddrupctl1", "pclk_publ1",
133 logic-supply = <&vdd_logic>;
135 rockchip,odt-disable-freq = <333000000>;
136 rockchip,dll-disable-freq = <333000000>;
137 rockchip,sr-enable-freq = <333000000>;
138 rockchip,pd-enable-freq = <666000000>;
139 rockchip,auto-self-refresh-cnt = <0>;
140 rockchip,auto-power-down-cnt = <64>;
141 rockchip,ddr-speed-bin = <21>;
142 rockchip,trcd = <10>;
145 rockchip,num-channels = <2>;
146 rockchip,pctl-timing = <0x29a 0x1f4 0xc8 0x42 0x4e 0x4 0xea 0xa
147 0x5 0x0 0xa 0x7 0x19 0x24 0xa 0x7
148 0x5 0xa 0x5 0x200 0x5 0x10 0x40 0x0
149 0x1 0x7 0x7 0x4 0xc 0x43 0x100 0x0
151 rockchip,phy-timing = <0x48f9aab4 0xea0910 0x1002c200
152 0xa60 0x40 0x10 0x0>;
153 rockchip,sdram-channel = /bits/ 8 <0x1 0xa 0x3 0x2 0x1 0x0 0xf 0xf>;
154 rockchip,sdram-params = <0x30B25564 0x627 3 666000000 3 9 1>;