Symbian3/PDK/Source/GUID-BC0936D7-7064-447D-83EF-68C65CF3D1B0.dita
author Dominic Pinkman <Dominic.Pinkman@Nokia.com>
Thu, 11 Mar 2010 18:02:22 +0000
changeset 3 46218c8b8afa
parent 1 25a17d01db0c
child 5 f345bda72bc4
permissions -rw-r--r--
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept id="GUID-BC0936D7-7064-447D-83EF-68C65CF3D1B0" xml:lang="en"><title> On-Target
Debugging</title><shortdesc>This document describes how to build a device driver to enable
stop mode debugging.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
<section id="GUID-664F0388-0A89-476F-B784-57E956C07779">       <title> On-target
debugging</title>       <p>Device Driver debugging is similar to kernel-mode
debugging, as drivers run as part of the Kernel. Debug versions of the drivers
can be debugged using debug tools such as Lauterbach through a JTAG interface
or an IDE. Other debug tools such as Metro TRK can also be used. </p> <p>Most
of the hardware platforms supported by Symbian platform are ICE-enabled. Kernel
developers and those porting the operating system to new hardware often have
access to development boards exposing the JTAG interface, which allows the
use of CPU-level debuggers. Using a host PC debugger, such as Carbide.c++
or CodeWarrior configured for remote debugging, a debug ROM image (including
drivers) can be downloaded to the target and debugged over a JTAG interface. </p> <p>For
debugging, debug versions drivers are built, and the ROM image is built to
include the kernel debug DLL, which enables kernel-side (stop mode) debugging.
This is done by using the <codeph>STOP_MODE_DEBUGGING</codeph> flag while
building the ROM image. For example: </p> <p><userinput>rom –v=h4hrp –I=armv5
–define=STOP_MODE_DEBUGGING</userinput> </p> <p>This includes the kernel extension <filepath>kdebug.dll</filepath> in
the ROM image, which provides a stop mode debugger API. </p> <p>When the ROM
image is downloaded to the target, the system boots up and the Kernel or driver
can be debugged using the host based IDE interface. Code can be stepped through
and halted, and memory on the target can be viewed. </p> <p>Symbian also provide
a debug monitor (sometimes called the crash debugger) to provide information
on Kernel crashes. See <xref href="GUID-26714A57-B6B4-5E81-B512-FB520718482B.dita">Debug
Monitor Tool</xref> for more details. </p>     </section>
</conbody></concept>