Files
Gen4_R-Car_Trace32/2_Trunk/demo/arm/kernel/vlx/vlx.cmm
2025-10-14 09:52:32 +09:00

95 lines
2.8 KiB
Plaintext

; --------------------------------------------------------------------------------
; @Title: VLX Demo for TRACE32 Hypervisor Awareness
; @Description:
;
; This batchfile attaches to a running VLX system.
; It serves as an example and needs to be adapted.
;
; @Keywords: Awareness, Hypervisor, VLX
; @Author: DIE
; @Copyright: (C) 1989-2022 Lauterbach GmbH, licensed for use with TRACE32(R) only
; --------------------------------------------------------------------------------
; $Id: vlx.cmm 18850 2022-01-26 18:41:29Z bschroefel $
; Reset debugger
RESet
; Configure debugger
SYStem.CPU EXYNOS8890
CORE.ASSIGN 2. 4. 6. 8. 1. 3. 5. 7.
SYStem.JtagClock 10.MHz
; enable machine ids and space ids
SYStem.Option MACHINESPACES ON
SYStem.Option MMUSPACES ON
; allow access to higher level SPRs
SYStem.Option DBGSPR ON
; Attach to running target and halt it
SYStem.Attach
if STATE.RUN()
BREAK
; --------------------------------------------------------------------------------
; Hypervisor setup
; Load symbol file of hypervisor to machine id 0
Data.LOAD.Elf hypervisor H:0:::0::0 /nocode
; Declare MMU format for hypervisor
MMU.FORMAT STD /Machine 0
TRANSlation.Create H:0:::0--0xffffffff 0x0
TRANSlation.COMMON H:0:::0--0xffffffff
TRANSlation.TableWalk ON
TRANSlation.ON
; Load VLX hypervisor awareness
EXTension.LOAD ~~/demo/arm/kernel/vlx/vlx.t32 /MACHINE 0
EXTension.ACCESS H: vlx
; --------------------------------------------------------------------------------
; Guest setup for VM2
; Load symbols of VM2
Data.LOAD.Elf vmlinux-vm2 N:2:::0 /nocode /noclear /NAME vm2
; Declare MMU format of VM2
MMU.FORMAT LINUXSWAP3 \\vm2\\swapper_pg_dir /MACHINE 2
; Check MMU.List PageTable symbol.secaddress(\\vm2\.head.text) /machine 2
TRANSlation.Create N:2:::0xFFFFFFC000080000--0xFFFFFFC07FFFFFFF I:2:::0x80080000
TRANSlation.Create N:2:::0xFFFFFFC890000000--0xFFFFFFC8FFFFFFFF I:2:::0x910000000
TRANSlation.COMMON N:2:::0xFFFF000000000000--0xFFFFFFFFFFFFFFFF
; Load Linux awareness for VM2
EXTension.LOAD ~~/demo/arm/kernel/linux/linux-3.x/linux3.t32 /MACHINE 2 /NAME "VM2"
TASK.VM2.Option MMUCHECK OFF
; --------------------------------------------------------------------------------
; Guest setup for VM3
; Load symbols of VM3
Data.LOAD.Elf vmlinux-vm3 N:3:::0 /nocode /noclear /NAME vm3
; Declare MMU format of VM3
MMU.FORMAT LINUXSWAP3 \\vm3\\swapper_pg_dir /MACHINE 3
; Check MMU.List PageTable symbol.secaddress(\\vm3\.head.text) /machine 3
TRANSlation.Create N:3:::0xFFFFFFC000080000--0xFFFFFFC01FFFFFFF I:3:::0xA0080000
TRANSlation.Create N:3:::0xFFFFFFC7E0000000--0xFFFFFFC7FFFFFFFF I:3:::0x880000000
TRANSlation.COMMON N:3:::0xFFFF000000000000--0xFFFFFFFFFFFFFFFF
; Load Linux awareness for VM3
EXTension.LOAD ~~/demo/arm/kernel/linux/linux-3.x/linux3.t32 /MACHINE 3 /NAME "VM3"
TASK.VM3.Option MMUCHECK OFF
; Re-evaluate registers
Register.REFRESH
ENDDO