at91: add at91sam9263 chip register definition
[fw/openocd] / tcl / chip / atmel / at91 / at91sam9_init.cfg
index 47d22e0ac0cc1a838072bd34ff71ddf5fd3e34ec..d75d668809f61b0fa994fa9563f397ede5d45b87 100644 (file)
@@ -54,10 +54,19 @@ proc at91sam9_reset_init { config } {
        set rstc_mr_val [expr ($rstc_mr_val | $::AT91_RSTC_URSTEN)]
        mww $::AT91_RSTC_MR $rstc_mr_val        ;# user reset enable
 
-       set pdr_addr [expr ($::AT91_PIOC + $::PIO_PDR)]
-       mww $pdr_addr 0xffff0000                                ;# define PDC[31:16] as DATA[31:16]
-       set pudr_addr [expr ($::AT91_PIOC + $::PIO_PUDR)]
-       mww $pudr_addr 0xffff0000                               ;# no pull-up for D[31:16]
+       if { [info exists config(sdram_piod) ] } {
+               set pdr_addr    [expr ($::AT91_PIOD + $::PIO_PDR)]
+               set pudr_addr   [expr ($::AT91_PIOD + $::PIO_PUDR)]
+               set asr_addr    [expr ($::AT91_PIOD + $::PIO_ASR)]
+               mww $pdr_addr 0xffff0000                                ;# define PDC[31:16] as DATA[31:16]
+               mww $pudr_addr 0xffff0000                               ;# no pull-up for D[31:16]
+               mww $asr_addr 0xffff0000
+       } else {
+               set pdr_addr    [expr ($::AT91_PIOC + $::PIO_PDR)]
+               set pudr_addr   [expr ($::AT91_PIOC + $::PIO_PUDR)]
+               mww $pdr_addr 0xffff0000                                ;# define PDC[31:16] as DATA[31:16]
+               mww $pudr_addr 0xffff0000                               ;# no pull-up for D[31:16]
+       }
 
        mww $config(matrix_ebicsa_addr) $config(matrix_ebicsa_val)
        mww $::AT91_SDRAMC_MR   $::AT91_SDRAMC_MODE_NORMAL      ;# SDRAMC_MR Mode register