; -------------------------------------------------------------------------------- ; @Title: ATSAMAD5x Specific Menu ; @Props: Released ; @Author: BAN ; @Changelog: 2017-11-03 BAN ; @Manufacturer: ATMEL - Atmel Corporation ; @Core: Cortex-M4 ; @Chip: ATSAMD51G18A, ATSAMD51G19A, ATSAMD51J18A, ATSAMD51J19A ; ATSAMD51J20A, ATSAMD51N19A, ATSAMD51N20A, ATSAMD51P19A ; ATSAMD51P20A ; @Copyright: (C) 1989-2017 Lauterbach GmbH, licensed for use with TRACE32(R) only ; -------------------------------------------------------------------------------- ; $Id: menatsamd5x.men 16339 2023-07-03 13:30:14Z pegold $ add menu ( IF SOFTWARE.BUILD.BASE()>=69655. ( popup "&CPU" ( separator IF CPU.FEATURE(MMU) ( popup "[:mmu]MMU" ( menuitem "[:mmureg]MMU Control" "MMU.view" separator menuitem "[:mmu]MMU Table Dump" "MMU.DUMP.PageTable" menuitem "[:mmu]MMU Table List" "MMU.List.PageTable" separator IF CPU.FEATURE(ITLBDUMP) ( menuitem "[:mmu]ITLB Dump" "MMU.DUMP.ITLB" ) IF CPU.FEATURE(DTLBDUMP) ( menuitem "[:mmu]DTLB Dump" "MMU.DUMP.DTLB" ) IF CPU.FEATURE(TLB0DUMP) ( menuitem "[:mmu]TLB0 Dump (Associative)" "MMU.DUMP.TLB0" ) IF CPU.FEATURE(TLB1DUMP) ( menuitem "[:mmu]TLB1 Dump (Lockable)" "MMU.DUMP.TLB1" ) ) ) IF COMPonent.AVAILable("SMMU") ( popup "[:mmu]SMMU" ( menuitem "[:chip]SMMU1 Registers" ( PRIVATE &name &name=SMMU.COMPonentNAME(COMPonent.Base("SMMU1",0.)) SMMU.Register.Global &(name) ) menuitem "[:mmureg]SMMU1 StreamMapTable" ( PRIVATE &name &name=SMMU.COMPonentNAME(COMPonent.Base("SMMU1",0.)) SMMU.StreamMapTable &(name) ) IF COMPonent.AVAILable("SMMU2") ( separator menuitem "[:chip]SMMU2 Registers" ( PRIVATE &name &name=SMMU.COMPonentNAME(COMPonent.Base("SMMU2",0.)) SMMU.Register.Global &(name) ) menuitem "[:mmureg]SMMU2 StreamMapTable" ( PRIVATE &name &name=SMMU.COMPonentNAME(COMPonent.Base("SMMU2",0.)) SMMU.StreamMapTable &(name) ) ) IF COMPonent.AVAILable("SMMU3") ( separator menuitem "[:chip]SMMU3 Registers" ( PRIVATE &name &name=SMMU.COMPonentNAME(COMPonent.Base("SMMU3",0.)) SMMU.Register.Global &(name) ) menuitem "[:mmureg]SMMU3 StreamMapTable" ( PRIVATE &name &name=SMMU.COMPonentNAME(COMPonent.Base("SMMU3",0.)) SMMU.StreamMapTable &(name) ) ) IF COMPonent.AVAILable("SMMU4") ( separator menuitem "[:chip]SMMU4 Registers" ( PRIVATE &name &name=SMMU.COMPonentNAME(COMPonent.Base("SMMU4",0.)) SMMU.Register.Global &(name) ) menuitem "[:mmureg]SMMU4 StreamMapTable" ( PRIVATE &name &name=SMMU.COMPonentNAME(COMPonent.Base("SMMU4",0.)) SMMU.StreamMapTable &(name) ) ) IF COMPonent.AVAILable("SMMU5") ( separator menuitem "[:chip]SMMU5 Registers" ( PRIVATE &name &name=SMMU.COMPonentNAME(COMPonent.Base("SMMU5",0.)) SMMU.Register.Global &(name) ) menuitem "[:mmureg]SMMU5 StreamMapTable" ( PRIVATE &name &name=SMMU.COMPonentNAME(COMPonent.Base("SMMU5",0.)) SMMU.StreamMapTable &(name) ) ) IF COMPonent.AVAILable("SMMU6") ( separator menuitem "[:chip]SMMU6 Registers" ( PRIVATE &name &name=SMMU.COMPonentNAME(COMPonent.Base("SMMU6",0.)) SMMU.Register.Global &(name) ) menuitem "[:mmureg]SMMU6 StreamMapTable" ( PRIVATE &name &name=SMMU.COMPonentNAME(COMPonent.Base("SMMU6",0.)) SMMU.StreamMapTable &(name) ) ) ) ) IF CPU.FEATURE(L1ICACHE)||CPU.FEATURE(L1DCACHE)||CPU.FEATURE(L2CACHE) ( popup "[:cache]Cache" ( IF CPU.FEATURE(L1ICACHEDUMP) ( menuitem "[:cache]ICACHE Dump" "CACHE.DUMP IC" menuitem "[:cache]ICACHE List" "CACHE.List IC" menuitem "[:cache]ICACHE List Functions" "CACHE.ListFunc.IC" ) IF CPU.FEATURE(L1DCACHEDUMP) ( separator menuitem "[:cache]DCACHE Dump" "CACHE.DUMP DC" menuitem "[:cache]DCACHE List" "CACHE.List DC" menuitem "[:cache]DCACHE List Variables" "CACHE.ListVar.DC" ) IF CPU.FEATURE(L2CACHEDUMP) ( separator menuitem "[:cache]L2CACHE Dump" "CACHE.DUMP L2" menuitem "[:cache]L2CACHE List" "CACHE.List L2" menuitem "[:cache]L2CACHE List Variables" "CACHE.ListVar.L2" ) ) ) ) popup "&Trace" ( separator IF COMPonent.AVAILable("ITM") ( popup "ITM" ( default menuitem "[:oconfig]ITM settings..." "ITM.state" separator menuitem "[:alist]ITMTrace List" "ITMTrace.List" ) ) IF COMPonent.AVAILable("STM") ( popup "STM" ( default menuitem "[:oconfig]STM settings..." "STM.state" separator menuitem "[:alist]STMTrace List" "STMTrace.List" ) ) IF COMPonent.AVAILable("HTM") ( popup "HTM" ( default menuitem "[:oconfig]HTM settings..." "HTM.state" separator menuitem "[:alist]HTMTrace List" "HTMTrace.List" ) ) IF COMPonent.AVAILable("TPIU") ( menuitem "[:oconfig]TPIU settings..." "TPIU.state" ) IF COMPonent.AVAILable("ETR") ( menuitem "[:oconfig]ETR settings..." ( PRIVATE &pdd &pdd=OS.PDD() DO "&pdd/etc/embedded_trace_router/etr_utility.cmm" ) ) ) popup "&Misc" ( popup "Tools" ( IF CPUIS64BIT()||CPU.FEATURE("SPR") ( menuitem "ARM System Register Converter" ( DO "~~/demo/arm/etc/systemregister/systemregister_converter.cmm" ) ) IF CPU.FEATURE("C15") ( menuitem "ARM Coprocessor Converter" ( DO "~~/demo/arm/etc/coprocessor/coprocessor_converter.cmm" ) ) ) ) popup "&Perf" ( IF CPU.FEATURE(BMC) ( before "Reset" menuitem "[:bmc]Benchmark Counters" "BMC.state" before "Reset" separator ) ) ) popup "Peripherals" ( popup "[:chip]Core Registers (Cortex-M4F)" ( menuitem "[:chip]System Control" "per , ""Core Registers (Cortex-M4F),System Control""" menuitem "[:chip]MPU;Memory Protection Unit" "per , ""Core Registers (Cortex-M4F),Memory Protection Unit""" menuitem "[:chip]NVIC;Nested Vectored Interrupt Controller" "per , ""Core Registers (Cortex-M4F),Nested Vectored Interrupt Controller""" menuitem "[:chip]FPU;Floating-point Unit" "per , ""Core Registers (Cortex-M4F),Floating-point Unit""" popup "[:chip]Debug" ( menuitem "[:chip]Core Debug" "per , ""Core Registers (Cortex-M4F),Debug,Core Debug""" menuitem "[:chip]FPB;Flash Patch and Breakpoint Unit" "per , ""Core Registers (Cortex-M4F),Debug,Flash Patch and Breakpoint Unit (FPB)""" menuitem "[:chip]DWT;Data Watchpoint and Trace Unit" "per , ""Core Registers (Cortex-M4F),Debug,Data Watchpoint and Trace Unit (DWT)""" ) ) separator menuitem "CMCC;(Cortex M Cache Controller)" "per , ""CMCC (Cortex M Cache Controller)""" menuitem "DSU;(Device Service Unit)" "per , ""DSU (Device Service Unit)""" menuitem "GCLK;(Generic Clock Controller)" "per , ""GCLK (Generic Clock Controller)""" menuitem "MCLK;(Main Clock)" "per , ""MCLK (Main Clock)""" menuitem "RSTC;(Reset Controller)" "per , ""RSTC (Reset Controller)""" menuitem "RAMECC;(RAM Error Correction Code)" "per , ""RAMECC (RAM Error Correction Code [ECC])""" menuitem "PM;(Power Manager)" "per , ""PM (Power Manager)""" menuitem "SUPC;(Supply Controller)" "per , ""SUPC (Supply Controller)""" menuitem "RTC;(Real-Time Counter)" "per , ""RTC (Real-Time Counter)""" menuitem "DMAC;(Direct Memory Access Controller)" "per , ""DMAC (Direct Memory Access Controller)""" menuitem "EIC;(External Interrupt Controller)" "per , ""EIC (External Interrupt Controller)""" menuitem "NVMCTRL;(Non-Volatile Memory Controller)" "per , ""NVMCTRL (Non-Volatile Memory Controller)""" menuitem "ICM;(Integrity Check Monitor)" "per , ""ICM (Integrity Check Monitor)""" menuitem "PAC;(Peripheral Access Controller)" "per , ""PAC (Peripheral Access Controller)""" menuitem "OSCCTRL;(Oscillators Controller)" "per , ""OSCCTRL (Oscillators Controller)""" menuitem "OSC32KCTRL;(32KHz Oscillators Controller)" "per , ""OSC32KCTRL (32KHz Oscillators Controller)""" menuitem "FREQM;(Frequency Meter)" "per , ""FREQM (Frequency Meter)""" menuitem "EVSYS;(Event System)" "per , ""EVSYS (Event System)""" popup "PORT;I/O Pin Controller" ( menuitem "PORTA" "per , ""PORT (I/O Pin Controller),PORTA""" menuitem "PORTB" "per , ""PORT (I/O Pin Controller),PORTB""" if (CPUIS("ATSAMD5?N*")||CPUIS("ATSAMD5?P*")) ( menuitem "PORTC" "per , ""PORT (I/O Pin Controller),PORTC""" ) if (CPUIS("ATSAMD5?P*")) ( menuitem "PORTD" "per , ""PORT (I/O Pin Controller),PORTD""" ) ) popup "SERCOM;Serial Communication Interface" ( menuitem "SERCOM0" "per , ""SERCOM (Serial Communication Interface),SERCOM0""" menuitem "SERCOM1" "per , ""SERCOM (Serial Communication Interface),SERCOM1""" menuitem "SERCOM2" "per , ""SERCOM (Serial Communication Interface),SERCOM2""" menuitem "SERCOM3" "per , ""SERCOM (Serial Communication Interface),SERCOM3""" menuitem "SERCOM4" "per , ""SERCOM (Serial Communication Interface),SERCOM4""" menuitem "SERCOM5" "per , ""SERCOM (Serial Communication Interface),SERCOM5""" if (!(CPUIS("ATSAMD5?J*")||CPUIS("ATSAMD5?G*"))) ( menuitem "SERCOM6" "per , ""SERCOM (Serial Communication Interface),SERCOM6""" menuitem "SERCOM7" "per , ""SERCOM (Serial Communication Interface),SERCOM7""" ) ) menuitem "QSPI;(Quad Serial Peripheral Interface)" "per , ""QSPI (Quad Serial Peripheral Interface)""" menuitem "USB;(Universal Serial Bus)" "per , ""USB (Universal Serial Bus)""" popup "SDHC;(SD/MMC Host Controller" ( menuitem "SDHC0" "per , ""SDHC (SD/MMC Host Controller),SDHC0""" if (!(CPUIS("ATSAMD5?J*")||CPUIS("ATSAMD5?G*"))) ( menuitem "SDHC1" "per , ""SDHC (SD/MMC Host Controller),SDHC1""" ) ) menuitem "CCL;(Configurable Custom Logic)" "per , ""CCL (Configurable Custom Logic)""" menuitem "AES;(Advanced Encryption Standard)" "per , ""AES (Advanced Encryption Standard)""" menuitem "TRNG;(True Random Number Generator)" "per , ""TRNG (True Random Number Generator)""" popup "ADC;Analog-to-Digital Converter" ( menuitem "ADC0" "per , ""ADC (Analog-to-Digital Converter),ADC0""" menuitem "ADC1" "per , ""ADC (Analog-to-Digital Converter),ADC1""" ) menuitem "AC;(Analog Comparators)" "per , ""AC (Analog Comparators)""" menuitem "DAC;(Digital-to-Analog Converter)" "per , ""DAC (Digital-to-Analog Converter)""" popup "TC;Timer/Counter" ( menuitem "TC0" "per , ""TC (Timer/Counter),TC0""" menuitem "TC1" "per , ""TC (Timer/Counter),TC1""" menuitem "TC2" "per , ""TC (Timer/Counter),TC2""" menuitem "TC3" "per , ""TC (Timer/Counter),TC3""" if (!CPUIS("ATSAMD5?G*")) ( menuitem "TC4" "per , ""TC (Timer/Counter),TC4""" menuitem "TC5" "per , ""TC (Timer/Counter),TC5""" if (!CPUIS("ATSAMD5?J*")) ( menuitem "TC6" "per , ""TC (Timer/Counter),TC6""" menuitem "TC7" "per , ""TC (Timer/Counter),TC7""" ) ) ) popup "TCC;Timer/Counter for Control Applications" ( menuitem "TCC0" "per , ""TCC (Timer/Counter for Control Applications),TCC0""" menuitem "TCC1" "per , ""TCC (Timer/Counter for Control Applications),TCC1""" menuitem "TCC2" "per , ""TCC (Timer/Counter for Control Applications),TCC2""" if (!CPUIS("ATSAMD5?G*")) ( menuitem "TCC3" "per , ""TCC (Timer/Counter for Control Applications),TCC3""" menuitem "TCC4" "per , ""TCC (Timer/Counter for Control Applications),TCC4""" ) ) if (!CPUIS("ATSAMD5?G*")) ( menuitem "I2S;(Inter-IC Sound Controller)" "per , ""I2S (Inter-IC Sound Controller)""" ) menuitem "PCC;(Parallel Capture Controller)" "per , ""PCC (Parallel Capture Controller)""" menuitem "PDEC;(Position Decoder)" "per , ""PDEC (Position Decoder)""" ) )