traveo2_6m.cfg 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. #
  2. # Copyright (C) <2019-2024>
  3. # <Cypress Semiconductor Corporation (an Infineon company)>
  4. #
  5. # Configuration script for Cypress TRAVEO™II C-2D family of microcontrollers.
  6. # TRAVEO™II C-2D is a triple-core device with CM0+ and 2xCM7 cores. All cores share
  7. # the same Flash/RAM/MMIO address space.
  8. #
  9. source [find target/infineon/common/common_ifx.cfg]
  10. namespace import ifx::*
  11. # The following four lines can be used to override Flash Geometry of the target device
  12. # In this case configuration scripts will not perform any auto-detection and will use
  13. # predefined values.
  14. # If all these variables are set to zero, configuration scripts will attempt to detect
  15. # the type of target device by reading SiliconID from SFlash and matching it with MPN
  16. # database, see cympn.cfg file.
  17. set MAIN_LARGE_SECTOR_NUM 190
  18. set MAIN_SMALL_SECTOR_NUM 32
  19. set WORK_LARGE_SECTOR_NUM 48
  20. set WORK_SMALL_SECTOR_NUM 256
  21. # Reset configuration - use hardware XRES pin
  22. # If this line is commented-out OpenOCD will use SYSRESETREQ to reset the CM0+ core and
  23. # all peripherals. This will also reset CM4/CM7 cores.
  24. # reset_config srst_only srst_pulls_trst
  25. # Defines the name of the Target and allows to override it from the command line
  26. set_or_global CHIPNAME traveo2_6m
  27. set TARGET_VARIANT TVIIC2D6M
  28. echo "** Supported Flash Loaders: ***********************"
  29. echo "** SMIF0_LOADER: TV2_6M_SI_A0_SemperFlash.elf"
  30. echo "** TV2_6M_SI_A0_HyperFlash.elf"
  31. echo "** TV2_6M_SI_A0_DualQuadSPI.elf"
  32. echo "***************************************************"
  33. # External Memory configuration
  34. # The following variables can be set to '1' in the command line to enable corresponding
  35. # external memory banks:
  36. # set ENABLE_SEMPERFLASH_0 1
  37. # set ENABLE_HYPERFLASH_0 1
  38. # set ENABLE_DUALQUADSPI_0 1
  39. set_or_global ENABLE_SEMPERFLASH_0 0
  40. set_or_global ENABLE_HYPERFLASH_0 0
  41. set_or_global ENABLE_DUALQUADSPI_0 0
  42. # Default flash loaders, can be overriden from the command line
  43. set_or_global SEMPERFLASH_LOADER_0 TV2_6M_SI_A0_SemperFlash.elf
  44. set_or_global HYPERFLASH_LOADER_0 TV2_6M_SI_A0_HyperFlash.elf
  45. set_or_global DUALQUADSPI_LOADER_0 TV2_6M_SI_A0_DualQuadSPI.elf
  46. set_or_global HYPERRAM_LOADER_0 TV2_6M_SI_A0_HyperRAM.elf
  47. # Include common functionality script
  48. source [find target/infineon/cat1c/base_cytxxx.cfg]
  49. # Procedure to enable external HyperRAM
  50. # Script loads initialization code to target RAM and executes it
  51. # Initialization code is responsible for enabling external RAM and
  52. # mapping it to the CPU address space
  53. proc enable_hyperram_0 { {xip_base 0x64000000} } {
  54. global HYPERRAM_LOADER_0
  55. catch {
  56. load_image ../flm/cypress/traveo2/${HYPERRAM_LOADER_0} 0x28000800
  57. reg pc 0x28000800
  58. reg sp 0x28010000
  59. reg r0 $xip_base
  60. reg r1 0
  61. reg r2 3
  62. reg r9 0x28002800
  63. resume 0x28000800
  64. wait_halt
  65. mrw $xip_base
  66. echo "** HyperRAM mapped to address [format 0x%08X $xip_base]"
  67. }
  68. }