302 lines
9.0 KiB
Plaintext
302 lines
9.0 KiB
Plaintext
; --------------------------------------------------------------------------------
|
|
; @Title: ARMv8.3-A Specific Menu
|
|
; @Props: Released
|
|
; @Author: SIK, DAM, MJW, NEJ
|
|
; @Changelog: 2017-07-10 SIK
|
|
; 2020-04-08 DAM
|
|
; 2020-06-24 MJW
|
|
; 2023-06-02 NEJ
|
|
; @Manufacturer: ARM - ARM Ltd.
|
|
; @Core: ARMv83-A
|
|
; @Copyright: (C) 1989-2023 Lauterbach GmbH, licensed for use with TRACE32(R) only
|
|
; --------------------------------------------------------------------------------
|
|
; $Id: menarmv83a.men 17405 2024-01-27 15:26:06Z kwisniewski $
|
|
|
|
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]Peripherals"
|
|
(
|
|
menuitem "[:chip]ID Registers[AArch64]" "per , ""AArch64,ID Registers"""
|
|
menuitem "[:chip]System Control and Configuration[AArch64]" "per , ""AArch64,System Control and Configuration"""
|
|
menuitem "[:chip]System Instructions[AArch64]" "per , ""AArch64,System Instructions"""
|
|
menuitem "[:chip]Memory Management Unit[AArch64]" "per , ""AArch64,Memory Management Unit"""
|
|
menuitem "[:chip]Virtualization Extensions[AArch64]" "per , ""AArch64,Virtualization Extensions"""
|
|
menuitem "[:chip]Cache Control and Configuration[AArch64]" "per , ""AArch64,Cache Control and Configuration"""
|
|
menuitem "[:chip]System Performance Monitor[AArch64]" "per , ""AArch64,System Performance Monitor"""
|
|
menuitem "[:chip]System Timer Registers[AArch64]" "per , ""AArch64,System Timer Registers"""
|
|
menuitem "[:chip]Generic Interrupt Controller CPU Interface[AArch64]" "per , ""AArch64,Generic Interrupt Controller CPU Interface"""
|
|
menuitem "[:chip]Statistical Profiling Extension[AArch64]" "per , ""AArch64,Statistical Profiling Extension"""
|
|
menuitem "[:chip]Scalable Vector Extension[AArch64]" "per , ""AArch64,Scalable Vector Extension"""
|
|
separator
|
|
menuitem "[:chip]Debug Registers[AArch64]" "per , ""AArch64,Debug Registers"""
|
|
separator
|
|
menuitem "[:chip]Breakpoint Registers[AArch64]" "per , ""AArch64,Breakpoint Registers"""
|
|
menuitem "[:chip]Watchpoint Registers[AArch64]" "per , ""AArch64,Watchpoint Registers"""
|
|
separator
|
|
menuitem "[:chip]LORegions Registers[AArch64]" "per , ""AArch64,LORegions Registers"""
|
|
menuitem "[:chip]Memory System Resource Partitioning and Monitoring[AArch64]" "per , ""AArch64,Memory System Resource Partitioning and Monitoring"""
|
|
if (CPU.FEATURE("cp15"))
|
|
(
|
|
separator
|
|
menuitem "[:chip]ID Registers[AArch32]" "per , ""AArch32,ID Registers"""
|
|
menuitem "[:chip]System Control and Configuration[AArch32]" "per , ""AArch32,System Control and Configuration"""
|
|
menuitem "[:chip]Memory Management Unit[AArch32]" "per , ""AArch32,Memory Management Unit"""
|
|
menuitem "[:chip]Virtualization Extensions[AArch32]" "per , ""AArch32,Virtualization Extensions"""
|
|
menuitem "[:chip]Cache Control and Configuration[AArch32]" "per , ""AArch32,Cache Control and Configuration"""
|
|
menuitem "[:chip]System Performance Monitor[AArch32]" "per , ""AArch32,System Performance Monitor"""
|
|
menuitem "[:chip]System Timer Registers[AArch32]" "per , ""AArch32,System Timer Registers"""
|
|
menuitem "[:chip]Generic Interrupt Controller CPU Interface[AArch32]" "per , ""AArch32,Generic Interrupt Controller CPU Interface"""
|
|
separator
|
|
menuitem "[:chip]Debug Registers[AArch32]" "per , ""AArch32,Debug Registers"""
|
|
separator
|
|
menuitem "[:chip]Breakpoint Registers[AArch32]" "per , ""AArch32,Breakpoint Registers"""
|
|
menuitem "[:chip]Watchpoint Registers[AArch32]" "per , ""AArch32,Watchpoint Registers"""
|
|
separator
|
|
)
|
|
menuitem "[:chip]Multiprocessor cluster" "per , ""Multiprocessor cluster"""
|
|
if (COMP.AVAILABLE("MPAM"))
|
|
(
|
|
menuitem "[:chip]Memory System Resource Partitioning and Monitoring [MSC]" "per , ""Memory System Resource Partitioning and Monitoring"""
|
|
)
|
|
)
|
|
)
|
|
)
|