You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

56 lines
1.5 KiB

  1. #Script for AT91EB40a
  2. #Atmel ties SRST & TRST together, at which point it makes
  3. #no sense to use TRST, but use TMS instead.
  4. #
  5. #The annoying thing with tying SRST & TRST together is that
  6. #there is no way to halt the CPU *before and during* the
  7. #SRST reset, which means that the CPU will run a number
  8. #of cycles before it can be halted(as much as milliseconds).
  9. reset_config srst_only srst_pulls_trst
  10. #jtag scan chain
  11. #format L IRC IRCM IDCODE (Length, IR Capture, IR Capture Mask, IDCODE)
  12. jtag_device 4 0x1 0xf 0xe
  13. #target configuration
  14. target arm7tdmi little 0 arm7tdmi-s_r4
  15. # speed up memory downloads
  16. arm7 fast_memory_access enable
  17. arm7_9 dcc_downloads enable
  18. #flash driver
  19. flash bank ecosflash 0x01000000 0x200000 2 2 0 ecos/at91eb40a.elf
  20. # required for usable performance. Used for lots of
  21. # other things than flash programming.
  22. working_area 0 0x00000000 0x20000 nobackup
  23. #force hardware values - we're running out of flash more
  24. #often than not. The user can disable this in his
  25. #subsequent config script.
  26. arm7_9 force_hw_bkpts enable
  27. set reset_count 0
  28. proc target_reset_0 {} {
  29. global reset_count
  30. # Reset script for AT91EB40a
  31. reg cpsr 0x000000D3
  32. mww 0xFFE00020 0x1
  33. mww 0xFFE00024 0x00000000
  34. mww 0xFFE00000 0x01002539
  35. mww 0xFFFFF124 0xFFFFFFFF
  36. mww 0xffff0010 0x100
  37. mww 0xffff0034 0x100
  38. set reset_count [expr $reset_count+1]
  39. echo "Testing reset $reset_count !"
  40. }
  41. proc target_pre_reset_0 {} {
  42. global reset_count
  43. set reset_count [expr $reset_count+1]
  44. echo "Testing pre_reset $reset_count !"
  45. }