blob: 38ffbf7262b4c483290f46af5ee0cc7560de10e8 [file] [log] [blame]
############################################################
#
# Copyright Altera 2013
# All Rights Reserved
# File: uboot.ds
#
############################################################
#
# This is an ARM DS5 debugger script that is intended to help folks run and
# debug uboot. It loads the preloader (a.k.a. spl) into onchip ram, runs it
# to setup DDR, then loads uboot, lets uboot run a bit to calculate relocation
# offset, and finally reloads symbol table with calculated offset in the
# relocated code.
#
#
# load and run the preloader
#
source -v "$sdir/preloader.ds"
#
# now load unrelocated uboot into ddr
#
loadfile "$sdir/uboot-socfpga/u-boot"
# set pc to start of uboot
start
#
# set breakpoint at start of code that relocates uboot
tbreak relocate_code
cont
wait 60s
#
#
# now reload the symbol table with runtime calculated relocation offset.
# register r8 is uboot's "global data" pointer.
#
symbol-file "$sdir/uboot-socfpga/u-boot" ((gd_t*)$r8)->reloc_off
#
# Now set a break in the board_init_r (from uboot). It must be a hardware
# breakpoint because this is after relocation.
#
thbreak board_init_r
cont
wait 60s