This is an automated email from Gerrit.

Oleksij Rempel ([email protected]) just uploaded a new patch set to 
Gerrit, which you can find at http://openocd.zylin.com/4385

-- gerrit

commit b0197bf6bc97af286d855d47af84c021e6ab43ff
Author: Oleksij Rempel <[email protected]>
Date:   Tue Jan 30 11:03:46 2018 +0100

    tcl/target/atheros_ar9331: add ddr2 support
    
    and provide ar9331_generic_ram_init
    
    Change-Id: Iea91d89b738088dcc64f29e6f1f1c8e47163e7f3
    Signed-off-by: Oleksij Rempel <[email protected]>

diff --git a/tcl/target/atheros_ar9331.cfg b/tcl/target/atheros_ar9331.cfg
index cd69183..137dc09 100644
--- a/tcl/target/atheros_ar9331.cfg
+++ b/tcl/target/atheros_ar9331.cfg
@@ -1,3 +1,5 @@
+source [find mem_helper.tcl]
+
 if { [info exists CHIPNAME] } {
        set _CHIPNAME $_CHIPNAME
 } else {
@@ -48,3 +50,54 @@ proc ar9331_ddr1_init {} {
        mww 0xb8000018 0xff     ;# DDR read and capture bit mask.
                                ;# Each bit represents a cycle of valid data.
 }
+
+proc ar9331_ddr2_init {} {
+       mww 0xb8000000 0x7fbc8cd0       ;# DDR_CONFIG - lots of DRAM confs
+       mww 0xb8000004 0x9dd0e6a8       ;# DDR_CONFIG2 - more DRAM confs
+
+       mww 0xb800008c 0x00000a59
+       mww 0xb8000010 0x00000008       ;# PRECHARGE ALL cycle
+
+       mww 0xb8000090 0x00000000
+       mww 0xb8000010 0x00000010       ;# EMR2S update cycle
+
+       mww 0xb8000094 0x00000000
+       mww 0xb8000010 0x00000020       ;# EMR3S update cycle
+
+       mww 0xb800000c 0x00000000
+       mww 0xb8000010 0x00000002       ;# EMRS update cycle
+
+       mww 0xb8000008 0x00000100
+       mww 0xb8000010 0x00000001       ;# MRS update cycle
+
+       mww 0xb8000010 0x00000008       ;# PRECHARGE ALL cycle
+
+       mww 0xb8000010 0x00000004
+       mww 0xb8000010 0x00000004       ;# AUTO REFRESH cycle
+
+       mww 0xb8000008 0x00000a33
+       mww 0xb8000010 0x00000001       ;# MRS update cycle
+
+       mww 0xb800000c 0x00000382
+       mww 0xb8000010 0x00000002       ;# EMRS update cycle
+
+       mww 0xb800000c 0x00000402
+       mww 0xb8000010 0x00000002       ;# EMRS update cycle
+
+       mww 0xb8000014 0x00004186       ;# DDR_REFRESH
+       mww 0xb800001c 0x00000008       ;# DDR_TAP_CTRL0
+       mww 0xb8000020 0x00000009       ;# DDR_TAP_CTRL1
+
+       ;# DDR read and capture bit mask.
+       ;# Each bit represents a cycle of valid data.
+       ;# 0xff: use 16-bit DDR
+       mww 0xb8000018 0x000000ff
+}
+
+proc ar9331_generic_ram_init {} {
+       if { [ mrw 0xb80600ac ]  & 0x2000 } {
+               ar9331_ddr2_init
+       } else {
+               ar9331_ddr1_init
+       }
+}

-- 

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
OpenOCD-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openocd-devel

Reply via email to