42. DDR2記憶體初始化程式碼分析-5
阿新 • • 發佈:2020-12-27
技術標籤:U-boot
前面的Physical/DLL部分已經初始化完畢。接下來接著進行原來的第5步,初始化DMC0的其它部分,包括時序等。
// 3. 初始化DMC0 //step 5: ConControl auto refresh off ldr r1, =0x0FFF2010 str r1, [r0, #DMC_CONCONTROL] //step 6: MemControl BL=4, 1 chip, DDR2 type, dynamic self refresh, force precharge, dynamic power down off ldr r1, =DMC0_MEMCONTROL str r1, [r0, #DMC_MEMCONTROL] //step 7: MemConfig0 256MB config, 8 banks,Mapping Method[12:15]0:linear, 1:linterleaved, 2:Mixed ldr r1, =DMC0_MEMCONFIG_0 str r1, [r0, #DMC_MEMCONFIG0] //MemConfig1 ldr r1, =DMC0_MEMCONFIG_1 str r1, [r0, #DMC_MEMCONFIG1] //step 8:PrechConfig ldr r1, =0xFF000000 str r1, [r0, #DMC_PRECHCONFIG] //step 9:TimingAref 7.8us//133MHz=1038(0x40E), 100MHz=780(0x30C), 20MHz=156(0x9C), 10MHz=78(0x4E) ldr r1, =DMC0_TIMINGA_REF str r1, [r0, #DMC_TIMINGAREF] //TimingRow for //200MHz ldr r1, =DMC0_TIMING_ROW str r1, [r0, #DMC_TIMINGROW] //TimingData C