# TK71 # JTAG adapter source [find interface/arm-usb-ocd.cfg] #source [find interface/jlink.cfg] #source [find interface/oocdlink.cfg] #interface ft2232 #ft2232_device_desc "Dual RS232" #ft2232_layout oocdlink #ft2232_vid_pid 0x0403 0x6010 #reset_config trst_and_srst #jtag_nsrst_delay 200 #jtag_ntrst_delay 200 # CPU core source [find target/feroceon.cfg] jtag_khz 3000 $_TARGETNAME configure \ -work-area-phys 0x10000000 \ -work-area-size 65536 \ -work-area-backup 0 #arm7_9 dcc_downloads enable # this assumes the hardware default peripherals location before u-Boot moves it #nand device orion feroceon.cpu 0xd8000000 set _FLASHNAME $_CHIPNAME.flash nand device $_FLASHNAME orion feroceon.cpu 0xd8000000 proc tk71_init { } { # We need to assert DBGRQ while holding nSRST down. # However DBGACK will be set only when nSRST is released. jtag_reset 0 1 feroceon.cpu arp_examine halt 0 jtag_reset 0 0 wait_halt # arm926ejs cp15 0 0 1 0 0x00052078 arm mcr 15 0 0 1 0 0x00052078 mww 0xD0001400 0x43000C30 # DDR SDRAM Configuration Register mww 0xD0001404 0x36543000 # 0x39543000 # Dunit Control Low Register # mww 0xD0001408 0x1101333b # DDR SDRAM Timing (Low) Register mww 0xD0001408 0x1101355b # DDR SDRAM Timing (Low) Register mww 0xD000140C 0x00000034 # DDR SDRAM Timing (High) Register # mww 0xD0001410 0x00000001 # DDR SDRAM Address Control Register mww 0xD0001410 0x00000000 # DDR SDRAM Address Control Register mww 0xD0001414 0x00000000 # DDR SDRAM Open Pages Control Register mww 0xD0001418 0x00000000 # DDR SDRAM Operation Register mww 0xD000141C 0x00000652 # X DDR SDRAM Mode Register mww 0xD0001420 0x00000042 # X DDR SDRAM Extended Mode Register mww 0xD0001424 0x0000f17f # Dunit Control High Register mww 0xD0001428 0x00085520 # 0x00074410 # Dunit Control High Register mww 0xD000147c 0x00008552 # 0x00007441 # Dunit Control High Register mww 0xD0001504 0x0FFFFFF1 # CS0n Size Register mww 0xD0001508 0x00000000 # CS1n Base Register mww 0xD000150C 0x00000000 # CS1n Size Register mww 0xD0001514 0x00000000 # CS2n Size Register mww 0xD000151C 0x00000000 # CS3n Size Register mww 0xD0001494 0x00110000 # DDR2 SDRAM ODT Control (Low) Register mww 0xD0001498 0x00000000 # DDR2 SDRAM ODT Control (High) REgister mww 0xD000149C 0x0000F80F # 0x0000F80F # X DDR2 Dunit ODT Control Register mww 0xD0001480 0x00000001 # DDR SDRAM Initialization Control Register mww 0xD0020204 0x00000000 # Main IRQ Interrupt Mask Register mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0020204 0x00000000 # " mww 0xD0010000 0x11000000 # MPP 0 to 7 mww 0xD0010004 0x00000000 # MPP 8 to 15 mww 0xD0010008 0x00000000 # MPP 16 to 23 mww 0xD0010418 0x003E07CF # NAND Read Parameters Register mww 0xD001041C 0x000F0F0F # NAND Write Parameters Register mww 0xD0010470 0x01C7D941 # NAND Flash Control Register } proc tk71_reflash_uboot { } { # reflash the u-Boot binary and reboot into it tk71_init nand probe 0 nand erase 0 0 4 nand write 0 uboot.bin 0 oob_softecc_kw resume } proc tk71_load_uboot { } { # load u-Boot into RAM and execute it tk71_init load_image /tmp/uboot.elf verify_image uboot.elf resume 0x00600000 }