345 lines
10 KiB
Plaintext
345 lines
10 KiB
Plaintext
; --------------------------------------------------------------------------------
|
|
; @Title: STM32L0 Specific Menu
|
|
; @Props: Released
|
|
; @Author: KNO, BGA, STR, JAM
|
|
; @Changelog: 2016-11-07 BGA
|
|
; 2017-05-20 STR
|
|
; 2019-01-23 JAM
|
|
; @Manufacturer: STM - ST Microelectronics N.V.
|
|
; @Core: Cortex-M0+
|
|
; @Chip: STM32L011D3, STM32L011D4, STM32L011E3, STM32L011E4, STM32L011F3,
|
|
; STM32L011F4, STM32L011G3, STM32L011G4, STM32L011K3, STM32L011K4,
|
|
; STM32L021D4, STM32L021F4, STM32L021G4, STM32L021K4, STM32L031C4,
|
|
; STM32L031C6, STM32L031E4, STM32L031E6, STM32L031F4, STM32L031F6,
|
|
; STM32L031G4, STM32L031G6, STM32L031K4, STM32L031K6, STM32L041C6,
|
|
; STM32L041F6, STM32L041G6, STM32L041K6, STM32L071C8, STM32L071CB,
|
|
; STM32L071CZ, STM32L071K8, STM32L071KB, STM32L071KZ, STM32L071RB,
|
|
; STM32L071RZ, STM32L071V8, STM32L071VB, STM32L071VZ, STM32L072CB,
|
|
; STM32L072KB, STM32L072KZ, STM32L072RB, STM32L072RZ, STM32L072V8,
|
|
; STM32L072VB, STM32L072VZ, STM32L073CB, STM32L073CZ, STM32L073RB,
|
|
; STM32L073RZ, STM32L073V8, STM32L073VB, STM32L073VZ, STM32L081CZ,
|
|
; STM32L081KZ, STM32L082KB, STM32L082KZ, STM32L083CB, STM32L083CZ,
|
|
; STM32L083RB, STM32L083RZ
|
|
; @Copyright: (C) 1989-2019 Lauterbach GmbH, licensed for use with TRACE32(R) only
|
|
; --------------------------------------------------------------------------------
|
|
; $Id: menstm32l0.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-M0+)"
|
|
(
|
|
menuitem "[:chip]System Control" "per , ""Core Registers (Cortex-M0+),System Control"""
|
|
menuitem "[:chip]MPU;Memory Protection Unit" "per , ""Core Registers (Cortex-M0+),Memory Protection Unit (MPU)"""
|
|
menuitem "[:chip]NVIC;Nested Vectored Interrupt Controller" "per , ""Core Registers (Cortex-M0+),Nested Vectored Interrupt Controller (NVIC)"""
|
|
popup "[:chip]Debug"
|
|
(
|
|
menuitem "[:chip]Core Debug" "per , ""Core Registers (Cortex-M0+),Debug,Core Debug"""
|
|
menuitem "[:chip]BPU;Breakpoint Unit" "per , ""Core Registers (Cortex-M0+),Debug,Breakpoint Unit (BPU)"""
|
|
menuitem "[:chip]DWT;Data Watchpoint and Trace Unit" "per , ""Core Registers (Cortex-M0+),Debug,Data Watchpoint and Trace Unit (DWT)"""
|
|
)
|
|
)
|
|
separator
|
|
menuitem "Flash" "per , ""FLASH (Flash Memory and data EEPROM)"""
|
|
menuitem "CRC" "per , ""CRC (Cyclic redundancy check calculation unit)"""
|
|
menuitem "Firewall" "per , ""FW (Firewall)"""
|
|
menuitem "Power Control" "per , ""PWR (Power Control Register)"""
|
|
menuitem "RCC" "per , ""RCC (Reset and Clock Control)"""
|
|
if !CPUIS("STM32L0?1*")
|
|
(
|
|
menuitem "CRS" "per , ""CRS (Clock recovery system)"""
|
|
)
|
|
menuitem "GPIO" "per , ""GPIO (General Port Inputs and Outputs)"""
|
|
menuitem "SYSCFG" "per , ""SYSCFG (System configuration controller)"""
|
|
menuitem "DMA" "per , ""DMA (Direct memory access controller)"""
|
|
menuitem "EXTI" "per , ""EXTI (Extended interrupt and event controller)"""
|
|
menuitem "ADC" "per , ""ADC (Analog to Digital Converter)"""
|
|
if (!CPUIS("STM32L0?1*"))
|
|
(
|
|
menuitem "DAC" "per , ""DAC (Digital to Analog Converter)"""
|
|
)
|
|
if cpuis("STM32L0?3*")
|
|
(
|
|
menuitem "LCD" "per , ""LCD (Liquid crystal display controller)"""
|
|
)
|
|
if (cpuis("STM32L0?2*"))||(cpuis("STM32L0?3*"))
|
|
(
|
|
menuitem "TSC" "per , ""TSC (Touch sensing controller)"""
|
|
)
|
|
if (!cpuis("STM32L011*")&&!cpuis("STM32L031*")&&!cpuis("STM32L051*")&&!cpuis("STM32L052*")&&!cpuis("STM32L053*")&&!cpuis("STM32L071*")&&!cpuis("STM32L072*")&&!cpuis("STM32L073*"))
|
|
(
|
|
menuitem "AES" "per , ""AES (Advanced encryption standard hardware accelerator)"""
|
|
)
|
|
if (cpuis("STM32L0?2*"))||(cpuis("STM32L0?3*"))
|
|
(
|
|
menuitem "RNG" "per , ""RNG (Random number generator)"""
|
|
)
|
|
menuitem "General purpose timers" "per , ""General purpose timers"""
|
|
if ((cpu()!="STM32L011D3")&&(cpu()!="STM32L011D4")&&(cpu()!="STM32L011E3")&&(cpu()!="STM32L011E4")&&(cpu()!="STM32L011F3")&&(cpu()!="STM32L011F4")&&(cpu()!="STM32L011G3")&&(cpu()!="STM32L011G4")&&(cpu()!="STM32L011K3")&&(cpu()!="STM32L011K4")&&(cpu()!="STM32L021D4")&&(cpu()!="STM32L021F4")&&(cpu()!="STM32L021G4")&&(cpu()!="STM32L021K4")&&(cpu()!="STM32L031C4")&&(cpu()!="STM32L031C6")&&(cpu()!="STM32L031E4")&&(cpu()!="STM32L031E6")&&(cpu()!="STM32L031F4")&&(cpu()!="STM32L031F6")&&(cpu()!="STM32L031G4")&&(cpu()!="STM32L031G6")&&(cpu()!="STM32L031K4")&&(cpu()!="STM32L031K6")&&(cpu()!="STM32L041C6")&&(cpu()!="STM32L041F6")&&(cpu()!="STM32L041G6")&&(cpu()!="STM32L041K6"))
|
|
(
|
|
menuitem "Basic timers" "per , ""Basic timers"""
|
|
)
|
|
menuitem "LPTIM1" "per , ""LPTIM1 (Low power timer 1)"""
|
|
menuitem "IWDG" "per , ""IWDG (Independent watchdog)"""
|
|
menuitem "WWDG" "per , ""WWDG (System window watchdog)"""
|
|
menuitem "RTC" "per , ""RTC (Real time clock)"""
|
|
menuitem "I2C" "per , ""I2C (Inter-integrated circuit interface)"""
|
|
menuitem "USART" "per , ""USART (Universal synchronous asynchronous receiver transmitter)"""
|
|
if (!cpuis("STM32L051K*"))&&(!cpuis("STM32L052K*"))
|
|
(
|
|
menuitem "LPUART" "per , ""LPUART (Low-power universal asynchronous receiver transmitter)"""
|
|
)
|
|
if ((cpuis("STM32L011*"))||(cpuis("STM32L021*"))||(cpuis("STM32L041*"))||(cpuis("STM32L071K*"))||(cpuis("STM32L072K*"))||(cpuis("STM32L081K*"))||(cpuis("STM32L082K*")))
|
|
(
|
|
menuitem "SPI" "per , ""SPI (Serial peripheral interface)"""
|
|
)
|
|
if ((!cpuis("STM32L011*"))&&(!cpuis("STM32L021*"))&&(!cpuis("STM32L041*"))&&(!cpuis("STM32L071K*"))&&(!cpuis("STM32L072K*"))&&(!cpuis("STM32L081K*"))&&(!cpuis("STM32L082K*")))
|
|
(
|
|
menuitem "SPI/I2S" "per , ""SPI/I2S (Serial peripheral interface/Inter-IC sound)"""
|
|
)
|
|
if (cpuis("STM32L0?2*"))||(cpuis("STM32L0?3*"))
|
|
(
|
|
menuitem "USB" "per , ""USB (Universal Serial Bus)"""
|
|
)
|
|
menuitem "DBG" "per , ""DBG (Debug support)"""
|
|
menuitem "ESIG" "per , ""Device electronic signature"""
|
|
)
|
|
)
|