blob: 78c246a2fdae9453d7a1bb58de335653f4a61963 [file] [log] [blame]
;/*it is used for attaching while zx297510evb running*/
;do ./boot_attach_CortexA9.cmm
GLOBAL &VMLINUX_PATH
GLOBAL &SOURCE_PATH
GLOBAL &DDR_BASE
&SOURCE_PATH="..\..\linux_plat\base\linux\kernels\linux-3.4.5"
&VMLINUX_PATH="..\..\linux_plat\base\linux\kernels\linux-3.4.5\vmlinux"
&DDR_BASE=0x20440000
area.reset
sYmbol.RESet
MMU.RESet
; setup of ICD
print "initializing..."
SYStem.CPU CortexA53 ; ;ZX297520v3 CortexA53 core
SYStem.Option MMUSPACES ON ; enable space ids to virtual addresses
SYStem.JtagClock 3.0MHz ; use adaptive clocking for most speed
system.option resbreak off
system.option enreset off
Sys.Config.COREBASE 0x80410000 ;
Sys.Config.CTIBASE 0x80420000
Sys.Config.debugaccessport 0
Sys.Mode PREPARE
wait 0.1s
sys.mode attach
SETUP.IMASKASM ON ; lock interrupts while single stepping
; Load the Linux kernel symbols into the debugger
print "loading Linux kernel symbols..."
;Data.LOAD.Elf &VMLINUX_PATH /gnu /nocode /SourcePATH ..\..\..\..\
Data.LOAD.Elf &VMLINUX_PATH /gnu /nocode /strippart "linux-3.4.5" /SourcePATH ..\linux-3.4.5
; Map the virtual kernel symbols to physical addresses
; to give the debugger access to it before CPU MMU is
; initialized
MMU.FORMAT LINUX swapper_pg_dir 0xc0040000--0xc30fffff &DDR_BASE
TRANSlation.COMMON 0xbf000000--0xffffffff ; common area for kernel and processes
TRANSlation.TableWalk ON ;debugger uses table walk to decode virtual address
TRANSlation.ON ;switch on debugger address translation
; set source path
print "set source path ..."
sYmbol.SourcePATH.RESet
sYmbol.SourcePATH.SetBaseDir &SOURCE_PATH
sYmbol.SourcePATH.SetRecurseDir &SOURCE_PATH\arch\arm
sYmbol.SourcePATH.SetRecurseDir &SOURCE_PATH\arch\arm\mach-zx297520v3
sYmbol.SourcePATH.SetRecurseDir &SOURCE_PATH\init
sYmbol.SourcePATH.SetRecurseDir &SOURCE_PATH\kernel
;sYmbol.SourcePATH.SetRecurseDir &SOURCE_PATH\drivers\base
;sYmbol.SourcePATH.SetRecurseDir &SOURCE_PATH\drivers\tty
;sYmbol.SourcePATH.SetRecurseDir &SOURCE_PATH\drivers\gpio
;sYmbol.SourcePATH.SetRecurseDir &SOURCE_PATH\drivers\i2c
;sYmbol.SourcePATH.SetRecurseDir &SOURCE_PATH\drivers\usb
;sYmbol.SourcePATH.SetRecurseDir &SOURCE_PATH\drivers\mmc
;sYmbol.SourcePATH.SetRecurseDir &SOURCE_PATH\mm
sYmbol.SourcePATH.SetRecurseDir &SOURCE_PATH\drivers
; Initialize Linux Awareness
; Note that the Linux awareness needs the kernel symbols to work
print "initializing multitask support..."
TASK.CONFIG .\linux ; loads Linux awareness (linux.t32)
MENU.ReProgram .\linux ; loads Linux menu (linux.men)
HELP.FILTER.Add rtoslinux ; add linux awareness manual to help filter
MENU.ReProgram .\sys\board ; add board tools
; Group kernel area to be displayed with red bar
GROUP.Create "kernel" 0xc0000000--0xffffffff /RED
GROUP.Create "module" 0xbf000000--0xbfffffff /blue
; Ok, we're done, let's start Linux
break
enddo