158 lines
4.5 KiB
Plaintext
158 lines
4.5 KiB
Plaintext
; --------------------------------------------------------------------------------
|
|
; @Title: Simple demo script for R8A779G-CR52 on WhiteHawk (RAM)
|
|
; @Description:
|
|
; Loads the sieve demo application into RAM and sets up a demo debug
|
|
; scenario.
|
|
; Use this script for getting started.
|
|
; Prerequisites:
|
|
; * Connect Debug Cable/Combiprobe to CN1 (Main JTAG)
|
|
; * Set boot core to Cortex-R52 and main JTAG to CoreSight. This can either be
|
|
; done via a switch board or by programming the CPLD.
|
|
;
|
|
; Switch MD (Switch SW1 Pin[1:8]) settings. Mode switch board is connected to CN9 on the WhiteHawk-CPU board:
|
|
; * Cortex-R52 boot
|
|
; MD6 = 1 (SW1[1] = OFF)
|
|
; MD7 = 1 (SW1[2] = OFF)
|
|
; * SCIF download mode (not boot code is executed)
|
|
; (SW1[3] = OFF)
|
|
; MD8 = 1 (SW1[4] = OFF)
|
|
; MD4 = 1 (SW1[5] = OFF)
|
|
; MD3 = 1 (SW1[6] = OFF)
|
|
; MD2 = 1 (SW1[7] = OFF)
|
|
; MD1 = 1 (SW1[8] = OFF)
|
|
; * Normal boot:
|
|
; MD5 = 0 (SW2[1] = OFF)
|
|
; MD35 = 0 (SW2[2] = ON)
|
|
; * Main JTAG = CoreSight, Sub JTAG = Normal Function
|
|
; MDT0 = 0 (SW2[3] = ON)
|
|
; MD21 = 1 (SW2[4] = OFF)
|
|
; MD20 = 0 (SW2[5] = ON)
|
|
; MD11 = 0 (SW2[6] = ON)
|
|
; MD10 = 0 (SW2[7] = ON)
|
|
; (SW2[8] = OFF)
|
|
;
|
|
; @Keywords: ARM, Cortex-R52
|
|
; @Props: Confidential
|
|
; @Author: BES
|
|
; @Board: WhiteHawk
|
|
; @Chip: R8A779G
|
|
; @Copyright: (C) 1989-2022 Lauterbach GmbH, licensed for use with TRACE32(R) only
|
|
; --------------------------------------------------------------------------------
|
|
; $Id: r_carv4h-cr52_sieve_sram.cmm 19524 2022-06-20 07:59:40Z bschroefel $
|
|
|
|
;WinCLEAR
|
|
|
|
; --------------------------------------------------------------------------------
|
|
; Check prerequisites
|
|
IF VERSION.BUILD.BASE()<145267.
|
|
(
|
|
PRINT %ERROR "Please use more recent Software! Contact support@lauterbach.com."
|
|
ENDDO
|
|
)
|
|
|
|
; --------------------------------------------------------------------------------
|
|
; Initialize and start the debugger
|
|
;RESet
|
|
;SYStem.RESet
|
|
|
|
SYStem.CPU R8A779G-CR52
|
|
SYStem.MemAccess DAP
|
|
SYStem.JtagClock 10MHz
|
|
SYStem.Option.DUALPORT ON
|
|
SYStem.Mode.NoDebug
|
|
SYStem.Mode.Attach
|
|
|
|
;CORE.ASSIGN 1.
|
|
Trace.DISable
|
|
ETM.OFF
|
|
;SYStem.Up
|
|
|
|
;CORE 0.
|
|
|
|
Break
|
|
|
|
;GOSUB EnableATCM "0xE4000000"
|
|
|
|
; --------------------------------------------------------------------------------
|
|
; DRCR.RBE=0 (RPC Read cache = OFF) for flash region access
|
|
;Data.Set AD:0xEE20000C %LE %Long 0yXXXXxxxxXXXXxxxxXXXXxxx0XXXXxxxx
|
|
|
|
;Data.Set HD:0xE6170334 %LE %Long 0xE6300000
|
|
;Data.Set HD:0xE617033C %LE %Long 0xE6300000
|
|
;Data.Set HD:0xE617033C %LE %Long 0xE6300000
|
|
;Data.Set HD:0xE617033C %LE %Long 0xE6300011
|
|
|
|
;slee - Core1
|
|
;Data.Set HD:0xE6170374 %LE %Long 0xE6300000
|
|
;Data.Set HD:0xE617037C %LE %Long 0xE6300000
|
|
;Data.Set HD:0xE617037C %LE %Long 0xE6300000
|
|
;Data.Set HD:0xE617037C %LE %Long 0xE6300011
|
|
|
|
;slee - Core2
|
|
;Data.Set HD:0xE61703B4 %LE %Long 0xE6300000
|
|
;Data.Set HD:0xE61703BC %LE %Long 0xE6300000
|
|
;Data.Set HD:0xE61703BC %LE %Long 0xE6300000
|
|
;Data.Set HD:0xE61703BC %LE %Long 0xE6300011
|
|
|
|
; --------------------------------------------------------------------------------
|
|
; Load demo program (uses internal RAM only)
|
|
Data.LOAD.Elf "..\..\out\ADASPRK3.elf" /nocode
|
|
|
|
; ============= Core 0
|
|
Core.select 2
|
|
register.set pc intvect_CoreExceptions
|
|
Core.select 0
|
|
|
|
;register.set pc brsStartupEntryHyp
|
|
|
|
|
|
|
|
|
|
|
|
;register.set pc intvect_CoreExceptions
|
|
|
|
|
|
; --------------------------------------------------------------------------------
|
|
; Start program execution
|
|
;Go.direct main
|
|
;WAIT !STATE.RUN()
|
|
|
|
; --------------------------------------------------------------------------------
|
|
; Open some windows
|
|
;WinCLEAR
|
|
Mode.Hll
|
|
;WinPOS 0. 0. 116. 26.
|
|
;List.auto
|
|
;WinPOS 120. 0. 100. 8.
|
|
;Frame.view
|
|
;WinPOS 120. 14.
|
|
;Var.Watch
|
|
;Var.AddWatch %SpotLight ast flags
|
|
;WinPOS 120. 25.
|
|
;Register.view /SpotLight
|
|
;break.Set Det_ReportError
|
|
;break.Set Os_UnhandledExc
|
|
;break.Set BswM_PreInit
|
|
|
|
;break.Set McutClock
|
|
ENDDO
|
|
|
|
; ================================================================================
|
|
|
|
; --------------------------------------------------------------------------------
|
|
EnableATCM:
|
|
(
|
|
PRIVATE &addr
|
|
PARAMETERS &addr
|
|
|
|
; Enable ACTM
|
|
Data.Set C15:0x19 %Long (&addr&0xFFFFF000)|0x1B
|
|
; Enable MPU at EL2, region 0 only
|
|
;Data.Set C15:0x4001 %Long 0yXXXXxxxxXXXXxxxxXXXXxxxxXXXXxxx1
|
|
;Data.Set C15:0x4116 %Long 0x1
|
|
;Data.Set C15:0x4086 %Long (&addr&0xFFFFF000)
|
|
;Data.Set C15:0x4186 %Long (&addr&0xFFFFF000)+0x7FC1
|
|
; Init values for ATCM, 64-bit access required by TRM
|
|
Data.Set (&addr&0xFFFFF000)++0x7FFF %Quad 0x0
|
|
)
|
|
RETURN |