2.1 about the debugger ................................................................................................. 2-2
2.2 debugger concepts .................................................................................................. 2-4
2.3 launching the debugger from eclipse ..................................................................... 2-6
2.4 launching the debugger from the command-line console ....................................... 2-7
2.5 ds-5 debug perspective keyboard shortcuts ........................................................ 2-10
2.6 ds-5 debugger command-line console keyboard shortcuts ................................. 2-11
2.7 standards compliance in the ds-5 debugger ....................................................... 2-12
chapter 3 configuring and connecting to a target
3.1 types of target connections ..................................................................................... 3-2
3.2 configuring a connection to an rtsm model .......................................................... 3-3
3.3 configuring a connection to a linux target using gdbserver .................................... 3-5
3.4 configuring a connection to a linux kernel ............................................................. 3-7
3.5 configuring a connection to a bare-metal target ...................................................... 3-9
3.6 configuring an event viewer connection to a bare-metal target ........................... 3-11
3.7 about the target configuration import utility ........................................................... 3-13
3.8 adding a new platform ........................................................................................... 3-16
3.9 adding a new configuration database to ds-5 ...................................................... 3-18
3.10 exporting an existing launch configuration ............................................................ 3-20
3.11 importing an existing launch configuration ............................................................ 3-22
3.12 disconnecting from a target ................................................................................... 3-24
chapter 4 working with the target configuration editor
4.1 about the target configuration editor ........................................................................ 4-3
4.2 target configuration editor - overview tab ............................................................... 4-4
4.3 target configuration editor - memory tab ................................................................. 4-6
4.4 target configuration editor - peripherals tab ........................................................... 4-9
4.5 target configuration editor - registers tab ............................................................ 4-11
4.6 target configuration editor - group view tab ......................................................... 4-13
4.7 target configuration editor - enumerations tab ..................................................... 4-15
4.8 target configuration editor - configurations tab .................................................... 4-17
4.9 scenario demonstrating how to create a new target configuration file .................. 4-19
4.10 creating a memory map ........................................................................................ 4-21
4.11 creating a peripheral ............................................................................................. 4-22
4.12 creating a standalone register ............................................................................... 4-23
4.13 creating a peripheral register ................................................................................ 4-24
4.14 creating enumerations for use with a peripheral register ...................................... 4-25
4.15 assigning enumerations to a peripheral register ................................................... 4-26
4.16 creating remapping rules for a control register ..................................................... 4-27
4.17 creating a memory region for remapping by a control register ............................. 4-28
4.18 applying the map rules to the overlapping memory regions .................................. 4-29
4.19 creating a power domain for a target .................................................................... 4-31
4.20 creating a group list .............................................................................................. 4-32
4.21 importing an existing target configuration file ........................................................ 4-33
4.22 exporting a target configuration file ....................................................................... 4-35
chapter 5 controlling execution
5.1 about loading an image on to the target .................................................................. 5-2
5.2 about loading debug information into the debugger ................................................ 5-4
5.3 about passing arguments to main() ......................................................................... 5-6
5.4 running an image .................................................................................................... 5-7
5.5 about breakpoints and watchpoints ......................................................................... 5-8
5.6 setting an execution breakpoint ............................................................................ 5-11
5.7 setting a data watchpoint ...................................................................................... 5-13
5.8 setting a tracepoint ................................................................................................ 5-15
5.9 setting streamline start and stop points ................................................................ 5-16
5.10 setting a conditional breakpoint ............................................................................. 5-17
5.11 setting a breakpoint on a specific thread ............................................................... 5-20
5.12 pending breakpoints and watchpoints ................................................................... 5-22
5.13 exporting ds-5 breakpoint settings to a file ........................................................... 5-24
5.14 importing ds-5 breakpoint settings from a file ....................................................... 5-26
5.15 stepping through an application ............................................................................ 5-28
5.16 handling unix signals ............................................................................................ 5-30
5.17 handling processor exceptions .............................................................................. 5-32
5.18 configuring the debugger path substitution rules .................................................. 5-34
chapter 6 examining the target
6.1 examining the target execution environment ........................................................... 6-2
6.2 examining the call stack .......................................................................................... 6-4
6.3 about trace support ................................................................................................. 6-6
chapter 7 debugging embedded systems
7.1 about endianness .................................................................................................... 7-2
7.2 about accessing ahb, apb, and axi buses ........................................................... 7-3
7.3 about virtual and physical memory .......................................................................... 7-4
7.4 about debugging hypervisors .................................................................................. 7-5
7.5 about debugging big.little systems ..................................................................... 7-6
7.6 about debugging bare-metal symmetric multiprocessing systems .......................... 7-7
7.7 about debugging multi-threaded applications ........................................................ 7-10
7.8 about debugging shared libraries .......................................................................... 7-12
7.9 about debugging a linux kernel ............................................................................ 7-15
7.10 about debugging linux kernel modules ................................................................. 7-17
7.11 about debugging trustzone enabled targets ........................................................ 7-19
chapter 8 controlling runtime messages
8.1 about semihosting and top of memory .................................................................... 8-2
8.2 working with semihosting ........................................................................................ 8-4
8.3 enabling automatic semihosting support in the debugger ....................................... 8-5
8.4 controlling semihosting messages using the command-line console ..................... 8-6
8.5 controlling the output of logging messages ............................................................. 8-7
8.6 about log4j configuration files ................................................................................. 8-8
8.7 customizing the output of logging messages from the debugger ............................ 8-9
chapter 9 debugging with scripts
9.1 exporting ds-5 debugger commands generated during a debug session .............. 9-2
9.2 creating a ds-5 debugger script ............................................................................. 9-3
9.3 about jython scripts ................................................................................................ 9-4
9.4 jython script concepts and interfaces ...................................................................... 9-6
9.5 configuring a jython project in eclipse .................................................................... 9-8
9.6 creating a jython script ......................................................................................... 9-11
9.7 running a script ..................................................................................................... 9-13
9.8 creating a cmm-style script .................................................................................. 9-14
chapter 10 working with the snapshot viewer
10.1 about the snapshot viewer ................................................................................... 10-2
10.2 creating a snapshot viewer initialization file ......................................................... 10-5
10.3 connecting to the snapshot viewer ...................................................................... 10-8
10.4 considerations when creating debugger scripts for the snapshot viewer ............ 10-9
12.1 arm linux problems and solutions ....................................................................... 12-2
12.2 enabling internal logging from the debugger ......................................................... 12-3
12.3 target connection problems and solutions ............................................................ 12-4