28.01.2013 Views

to download MULTI for Davinci Quick - Green Hills Software

to download MULTI for Davinci Quick - Green Hills Software

to download MULTI for Davinci Quick - Green Hills Software

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

v4.3.1<br />

<strong>Quick</strong><br />

Start<br />

Guide<br />

<strong>for</strong> DaVinci technology processors


<strong>Green</strong> <strong>Hills</strong> <strong>Software</strong> 30-day Evaluation License Agreement<br />

<strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc. (<strong>Green</strong> <strong>Hills</strong>) agrees <strong>to</strong> grant and user (“Licensee”) agrees <strong>to</strong> accept a non-transferable and non-exclusive license (“the License”) <strong>to</strong> use the<br />

computer programs: <strong>Green</strong> <strong>Hills</strong> C/C++ Compilers and <strong>MULTI</strong>® (“the Licensed Programs”), on the following terms and conditions:<br />

1. Consideration—For and in consideration of receiving the License, Licensee agrees <strong>to</strong> evaluate the Licensed Programs <strong>for</strong> the sole purpose of making a purchase<br />

decision, and <strong>to</strong> report <strong>to</strong> <strong>Green</strong> <strong>Hills</strong> problems encountered in their use. Licensee also agrees <strong>to</strong> prevent the disclosure of any and all results of Licensee’s use of<br />

Licensed Programs, including but not limited <strong>to</strong>, space per<strong>for</strong>mance, time per<strong>for</strong>mance, compile time per<strong>for</strong>mance, new features, bug fixes, defects, Bugs, documentation<br />

improvements, documentation errors, user interface, competitive analysis, comparison with competing products, etc.<br />

2. Ownership of Licensed Programs—Title and full ownership rights <strong>to</strong> the Licensed Programs under this 30 Day Evaluation License Agreement, including any installation,<br />

operations, or other manuals, remain with <strong>Green</strong> <strong>Hills</strong>. The Licensed Programs are agreed <strong>to</strong> be <strong>Green</strong> <strong>Hills</strong>’ proprietary in<strong>for</strong>mation and trade secret, whether or<br />

not any portion thereof is or may be validly copyrighted or patented.<br />

Licensee shall have the right <strong>to</strong> use the Licensed Programs or any portion thereof on this computer system located at the address of licensee above.<br />

Separate licenses, <strong>for</strong> additional consideration payable <strong>to</strong> <strong>Green</strong> <strong>Hills</strong>, shall be required <strong>for</strong> the use of the Licensed Programs on each additional central processing unit.<br />

Unless <strong>Green</strong> <strong>Hills</strong> declares otherwise in writing, Licensee shall not inhibit or otherwise disable any feature of the Licensed Programs, by modification of the licensed<br />

program or otherwise, which prints out or otherwise displays notices of <strong>Green</strong> <strong>Hills</strong>’ proprietary rights in the Licensed Programs, identifications of this 30 Day<br />

Evaluation License Agreement or the License granted hereunder, or the site at which Licensee may use the Licensed Programs pursuant <strong>to</strong> this 30 Day Evaluation<br />

License Agreement.<br />

No right <strong>to</strong> print, copy, or otherwise disclose the Licensed Programs or any portion thereof, in any <strong>for</strong>m whatsoever, is granted hereby.<br />

This 30 Day Evaluation License Agreement, the License granted hereunder, and the Licensed Programs may not be assigned, sub-licensed, or otherwise transferred by<br />

the Licensee without the prior written consent of <strong>Green</strong> <strong>Hills</strong>. Any assignment, sub-license, or transfer in violation of the <strong>for</strong>egoing sentence shall be null and void and<br />

shall, at the option of <strong>Green</strong> <strong>Hills</strong>, result in the au<strong>to</strong>matic termination of this 30 Day Evaluation License Agreement. Licensee shall take all reasonable steps <strong>to</strong> ensure<br />

the per<strong>for</strong>mance of this paragraph.<br />

3. Term and Termination—The license shall be effective from the date hereof and shall terminate thirty (30) days thereafter unless terminated earlier as provided<br />

herein.<br />

In the event Licensee neglected or fails <strong>to</strong> per<strong>for</strong>m or observe any of its obligations under this 30 Day Evaluation License Agreement, and fails <strong>to</strong> correct such breach<br />

within thirty (30) days after <strong>Green</strong> <strong>Hills</strong> gives Licensee notice of such breach, or if any assignment shall be made of its business <strong>for</strong> the benefit of credi<strong>to</strong>rs, or if a<br />

receiver, trustee in bankruptcy, or a similar officer shall be appointed <strong>to</strong> take charge of all or part of its property, or it is adjudged a bankrupt, this 30 Day Evaluation<br />

License Agreement and the License granted hereunder shall immediately terminate.<br />

4. Security—Licensee and all individuals having access <strong>to</strong> the Licensed Programs, on other than an “execute only” basis, acknowledge and agree:<br />

(a) <strong>to</strong> maintain the Licensed Programs in secure premises <strong>to</strong> prevent any unauthorized person from obtaining any part thereof; and<br />

(b) not <strong>to</strong> provide any copies or disclose any details of the Licensed Programs <strong>to</strong> unauthorized third parties without the prior written approval of <strong>Green</strong> <strong>Hills</strong>; and<br />

(c) not <strong>to</strong> create, not <strong>to</strong> attempt <strong>to</strong> create, and not <strong>to</strong> permit or help others <strong>to</strong> create, by disassembly or otherwise, source code <strong>for</strong> the Licensed Programs, and not <strong>to</strong><br />

translate the Licensed Programs in<strong>to</strong> any computer or natural language; and<br />

(d) not <strong>to</strong> allow any individual access <strong>to</strong> the Licensed Programs, on other than an “execute only” basis, until a signed acknowledgement of their obligations hereunder<br />

is obtained; and<br />

(e) <strong>to</strong> give <strong>Green</strong> <strong>Hills</strong> written notice of any unauthorized disclosure or use of the Licensed Programs as soon as they learn or become aware of it.<br />

5. Support Services—For a thirty (30) day period beginning on the date hereof, <strong>Green</strong> <strong>Hills</strong> will make reasonable ef<strong>for</strong>ts <strong>to</strong> correct any program errors in the Licensed<br />

Programs brought <strong>to</strong> its attention with written documented reports submitted by Licensee’s Designated Contact Person, except those resulting from alteration or misuse<br />

of the Licensed Programs. <strong>Green</strong> <strong>Hills</strong>, however, does not guarantee service results or represent or warrant that all program errors will be corrected.<br />

6. Warranty—<strong>Green</strong> <strong>Hills</strong> warrants that the Licensed Programs will be in good operating condition at the time of acceptance of Licensee and will con<strong>for</strong>m in all essential<br />

respects <strong>to</strong> the then currently published Program Description applicable <strong>to</strong> the Licensed Programs when it is shipped <strong>to</strong> Licensee.<br />

GREEN HILLS MAKES NO WARRANTIES, EXPRESS OR IMPLIED, AS TO MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR ANY OTHER MATTER OTHER THAN<br />

THE EXPRESS WARRANTIES CONTAINED IN THIS LICENSE AGREEMENT AND ANY AMENDMENT(S) HERETO. NO REPRESENTATION OR STATEMENT NOT EXPRESSLY<br />

CONTAINED IN THIS LICENSE AGREEMENT OR ANY AMENDMENT(S) HERETO SHALL BE BINDING UPON GREEN HILLS AS A WARRANTY OR OTHERWISE.<br />

<strong>Green</strong> <strong>Hills</strong> shall have no liability <strong>to</strong> Licensee <strong>for</strong> any losses or damages, direct or indirect, arising out of this 30 Day Evaluation License Agreement. In no event shall<br />

<strong>Green</strong> <strong>Hills</strong> be liable <strong>for</strong> any indirect, special, or consequential damages, such as, but not limited <strong>to</strong>, loss of anticipated profits or other economic loss in connection with<br />

Licensee’s use of the Licensed Programs. <strong>Green</strong> <strong>Hills</strong> shall not be liable <strong>for</strong> any loss, injury, damage, or expense caused by Licensee’s use of the Licensed Programs.<br />

<strong>Green</strong> <strong>Hills</strong> shall not be liable <strong>for</strong> any loss, injury, damage, or expense caused by Licensee’s misuse or negligent processing of the Licensed Programs.<br />

<strong>Green</strong> <strong>Hills</strong> shall not be held <strong>to</strong> any liability with respect <strong>to</strong> any claim by a third party on account of, or arising out of the use of the Licensed Programs.<br />

7. Patent/Copyright Infringement—<strong>Green</strong> <strong>Hills</strong> guarantees that Licensee’s purchase and use of the license furnished in this agreement, in the <strong>for</strong>m in which furnished<br />

<strong>to</strong> Licensee, will not infringe any valid United States or Foreign patent or copyright, and <strong>Green</strong> <strong>Hills</strong> agrees <strong>to</strong> defend any claim, action, or suit that may be<br />

brought against Licensee <strong>for</strong> patent or copyright infringement by reason of Licensee’s purchase or use of such license, and <strong>Green</strong> <strong>Hills</strong> also agrees <strong>to</strong> indemnify Licensee<br />

and hold Licensee harmless against all claims, judgments, decrees, damages, costs, and expenses recovered against Licensee or sustained by Licensee on account of any<br />

such actual or alleged infringement.<br />

8. Miscellaneous—The terms of this 30 Day Evaluation License Agreement may be modified only in writing signed by <strong>Green</strong> <strong>Hills</strong> and by Licensee.<br />

This 30 Day Evaluation License Agreement represents the entire agreement between the parties with respect <strong>to</strong> the use of the Licensed Programs and supercedes any<br />

previous oral or written communications, representations, understandings, or agreements with respect there<strong>to</strong>. No provision appearing on any purchase order, quotation<br />

<strong>for</strong>m or other <strong>for</strong>m originated by either party shall be applicable unless such provisions are expressly accepted in writing by both<br />

parties.<br />

Fees specified in this agreement are exclusive of sales and use taxes. Licensee shall pay any sales or use tax imposed as a result of the existence or operation of this<br />

agreement.<br />

Any dispute under this 30 Day Evaluation License Agreement shall be submitted <strong>to</strong> binding arbitration in Los Angeles County, Cali<strong>for</strong>nia, under the rules then prevailing<br />

of the American Arbitration Association. Judgment upon any award made in such arbitration may be entered and en<strong>for</strong>ced in any court of competent jurisdiction.<br />

This 30 Day Evaluation License Agreement shall be governed by the laws of the State of Cali<strong>for</strong>nia, U.S.A. Any judicial action taken by either party shall have its venue<br />

only in Los Angeles County, State of Cali<strong>for</strong>nia, U.S.A, in the State or Federal Court having jurisdiction of the subject matter of the action. The prevailing party in any<br />

legal action brought <strong>to</strong> en<strong>for</strong>ce or interpret this Agreement or <strong>for</strong> damages <strong>for</strong> its breach shall be entitled <strong>to</strong> an award of reasonable at<strong>to</strong>rney’s fees. If any provision<br />

hereof is invalid under any applicable statute or rule of law, it shall <strong>to</strong> that extent be deemed <strong>to</strong> be omitted.<br />

The waiver by any party <strong>to</strong> this 30 Day Evaluation License Agreement of any default or breach of the 30 Day Evaluation License Agreement shall not constitute a<br />

waiver of any subsequent default or breach of the same or of a different kind.<br />

2<br />

<strong>Quick</strong> Start Guide<br />

<strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc.<br />

<strong>Quick</strong> Start <strong>for</strong> <strong>MULTI</strong> and DaVinci technology processors<br />

<strong>MULTI</strong> v4.3.1 <strong>for</strong> DaVinci Technology Processors<br />

TABLE OF CONTENTS<br />

Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4<br />

Installing the <strong>Software</strong> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4<br />

Setting up <strong>MULTI</strong> <strong>for</strong> Linux Run Mode Debugging . . . . . . . . . . . . . . . . . . . . . . .4<br />

Creating a new Linux Application in <strong>MULTI</strong> . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6<br />

Setting up the <strong>Green</strong> <strong>Hills</strong> Probe <strong>for</strong> DaVinci . . . . . . . . . . . . . . . . . . . . . . . . . . . .11<br />

Debugging a Linux kernel image with <strong>MULTI</strong> . . . . . . . . . . . . . . . . . . . . . . . . . . .11<br />

Appendix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16<br />

Copyright © 2006 by <strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc. All rights reserved. No part of this publication may be reproduced, s<strong>to</strong>red in a retrieval<br />

system, or transmitted, in any <strong>for</strong>m or by any means, electronic, mechanical, pho<strong>to</strong>copying, recording, or otherwise, without prior written<br />

permission from <strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc.<br />

DISCLAIMER<br />

GREEN HILLS SOFTWARE, INC. MAKES NO REPRESENTATIONS OR WARRANTIES WITH RESPECT TO THE CONTENTS HEREOF AND SPECIFICALLY DIS-<br />

CLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE.<br />

Further, <strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc. reserves the right <strong>to</strong> revise this publication and <strong>to</strong> make changes from time <strong>to</strong> time in the content hereof without<br />

obligation of <strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc. <strong>to</strong> notify any person of such revision or changes. <strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, the <strong>Green</strong> <strong>Hills</strong> logo, <strong>MULTI</strong> and<br />

Ada<strong>MULTI</strong> are registered trademarks, and EventAnalyzer and ResourceAnalyzer are trademarks of <strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc. All other<br />

trademarks and registered trademarks are property of their respective companies.<br />

PubID: 0806<br />

August 25, 2006<br />

3


<strong>Quick</strong> Start <strong>for</strong> <strong>MULTI</strong> and DaVinci technology processors <strong>Quick</strong> Start <strong>for</strong> <strong>MULTI</strong> and DaVinci technology processors<br />

OVERVIEW<br />

This <strong>Quick</strong> Start Guide is a companion <strong>to</strong> the software provided with the DVEVM and the <strong>MULTI</strong><br />

integrated development environment.<br />

This documents provides high-level, step-by-step instructions <strong>for</strong> developers using <strong>MULTI</strong> with DaVinci<br />

technology processors <strong>for</strong> the first time. For more detailed instructions, users are directed <strong>to</strong> other manuals<br />

and documents provided by either Texas Instruments (TI) or <strong>Green</strong> <strong>Hills</strong> <strong>Software</strong> (GHS). This guide<br />

is written <strong>to</strong> support a Linux host development environment, since that is what is provided with the<br />

DVEVM. <strong>MULTI</strong> is also available <strong>for</strong> Windows host environments.<br />

INSTALLING THE SOFTWARE<br />

Install the TI and MontaVista software included with the DV-EVM be<strong>for</strong>e proceeding. See DVEVM<br />

Getting Started Guide (sprue66a.pdf) <strong>for</strong> details.<br />

Install <strong>MULTI</strong>. Please refer <strong>to</strong> the <strong>MULTI</strong>: Getting Started Guide (start.pdf) <strong>for</strong> in<strong>for</strong>mation on<br />

installing and licensing <strong>MULTI</strong>. Make sure that <strong>MULTI</strong> is in your PATH so that command line <strong>to</strong>ols<br />

that are used below such as dblink can be found.<br />

SETTING UP <strong>MULTI</strong> FOR LINUX RUN MODE DEBUGGING<br />

Details <strong>for</strong> this section are covered in <strong>MULTI</strong>: Developing <strong>for</strong> Embedded Linux on ARM (linux_arm.pdf).<br />

There is also a high level overview covered in the <strong>MULTI</strong> release notes (release_notes.pdf) found in the<br />

<strong>MULTI</strong> installation direc<strong>to</strong>ry. There is a script (dvevm_debug.sh) in the same installation direc<strong>to</strong>ry that<br />

au<strong>to</strong>mates much of this process and generates a <strong>MULTI</strong> project based on the DVEVM examples. This is<br />

the fastest way <strong>to</strong> get started debugging an application on DaVinci.<br />

The script provided with <strong>MULTI</strong> v4.3.1 has been validated with version 1_10_00_18 software from TI.<br />

For the most recent software updates, please check www.ghs.com/ti_quickstart.<br />

The script will ask you several questions and au<strong>to</strong>matically take you through all of the steps covered<br />

below. Be<strong>for</strong>e executing dvevm_debug.sh, please edit~/dvevm_1_10/Rules.make and be sure that the variables<br />

in that file are all pointing <strong>to</strong> the correct direc<strong>to</strong>ries. To verify that Rules.make is acceptable, compile<br />

the DVEVM demos using the 'make' command and run them on your DaVinci. For more in<strong>for</strong>mation<br />

on this procedure, please refer <strong>to</strong> your TI documentation.<br />

Also verify that you have write permissions <strong>to</strong> the following direc<strong>to</strong>ries and the files in those direc<strong>to</strong>ries:<br />

~/dvevm_1_10/<br />

~/dvevm_1_10/demos/decode/<br />

~/dvevm_1_10/demos/encode/<br />

~/dvevm_1_10/demos/encodedecode/<br />

~/workdir/filesys/usr/lib/ (<strong>for</strong> libc.so and libpthread.so)<br />

4<br />

<strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc.<br />

Use the following commands <strong>to</strong> execute the script:<br />

host $ cd /usr/ghs/multi431/linux86<br />

host $ ./dvevm_debug.sh<br />

NOTE: Running the above script lets you skip the following steps.<br />

The details of what happens behind the scenes in the script are important <strong>for</strong> setting up your development<br />

environment, so we will quickly cover them here.<br />

First setup a linux build direc<strong>to</strong>ry on your host that contains the cross <strong>to</strong>ols, headers and libraries that<br />

<strong>MULTI</strong> will use <strong>to</strong> build embedded linux applications. The script creates a direc<strong>to</strong>ry in your DVEVM<br />

software install direc<strong>to</strong>ry called multi_linux_build_dir. When you create new projects <strong>for</strong> embedded<br />

linux in <strong>MULTI</strong> you will be prompted <strong>to</strong> provide the path <strong>to</strong> this direc<strong>to</strong>ry.<br />

host $ cd ~/workdir/dvevm_1_10<br />

host $ mkdir multi_linux_build_dir<br />

host $ cd multi_linux_build_dir<br />

host $ ln –s /opt/mv_pro_4.0/MontaVista/pro/devkit/arm/v5t_le/armv5tl_MontaVista-linuxeabi/bin bin<br />

host $ ln –s ~/workdir/filesys/usr/include include<br />

host $ ln –s ~/workdir/filesys/lib lib<br />

host $ mkdir usr<br />

host $ cd usr<br />

host $ ln –s ~/workdir/filesys/usr/lib lib<br />

Next you must modify libc.so and libprthread.so such that the local MontaVista versions are used instead<br />

of the files from /usr.<br />

host $ cd ~/workdir/dvevm_1_10/multi_linux_build_dir/lib/usr<br />

Edit libc.so <strong>to</strong> have the following path in the GROUP line:<br />

GROUP ( ../../lib/libc.so.6 ../../lib/libc_nonshared.a )<br />

Edit libpthread.so <strong>to</strong> have the following path in the GROUP line:<br />

GROUP ( ../../lib/libpthread.so.0 ../../lib/libpthread_nonshared.a )<br />

The last thing <strong>to</strong> do is <strong>to</strong> copy the target resident debug agent that <strong>MULTI</strong> uses <strong>for</strong> run mode debug.<br />

This agent is called linuxserv and is located in /lib/lnxarm_davinci5/linuxserv<br />

host $ cp /usr/ghs/multi431/lib/lnxarm_davinci5/linuxserv ~/workdir/filesys/opt/dvevm<br />

<strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc.<br />

5


<strong>Quick</strong> Start <strong>for</strong> <strong>MULTI</strong> and DaVinci technology processors <strong>Quick</strong> Start <strong>for</strong> <strong>MULTI</strong> and DaVinci technology processors<br />

CREATING A NEW LINUX APPLICATION IN <strong>MULTI</strong><br />

1. From the <strong>MULTI</strong> Launcher choose File->Create New Project<br />

2. Make the selections shown below and click Next.<br />

3. Choose the <strong>for</strong>k debugging example<br />

4. Make sure <strong>to</strong> s<strong>to</strong>re it somewhere in your target files system hierarchy, click Next<br />

5. Specify the Linux build direc<strong>to</strong>ry that you created, then click Finish<br />

6. Build the application. Hit F7 or click the Build but<strong>to</strong>n<br />

6 <strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc.<br />

<strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc.<br />

7


<strong>Quick</strong> Start <strong>for</strong> <strong>MULTI</strong> and DaVinci technology processors <strong>Quick</strong> Start <strong>for</strong> <strong>MULTI</strong> and DaVinci technology processors<br />

7. Click the Debug but<strong>to</strong>n <strong>to</strong> launch the debugger<br />

8. Start linuxserv running on the target<br />

target $ cd /opt/dvevm<br />

target $ ./linuxserv –server 3112 –target_root_dir /home/green/workdir/filesys<br />

9. Establish a linuxserv connection <strong>to</strong> <strong>MULTI</strong>. See chapter 4 of <strong>MULTI</strong>: Developing <strong>for</strong> Embedded Linux<br />

on ARM (linux_arm.pdf) <strong>for</strong> details on setting up the Linuxserv connection in <strong>MULTI</strong>.<br />

Here is a screen shot of an example connection <strong>for</strong> DaVinci.<br />

8 <strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc.<br />

<strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc.<br />

9


<strong>Quick</strong> Start <strong>for</strong> <strong>MULTI</strong> and DaVinci technology processors <strong>Quick</strong> Start <strong>for</strong> <strong>MULTI</strong> and DaVinci technology processors<br />

10. Debug the application. As you step over the first line <strong>MULTI</strong> will open up a new debugger window <strong>for</strong><br />

you on the child process that was created by the <strong>for</strong>k() system call.<br />

SETTING UP THE GREEN HILLS PROBE FOR DAVINCI<br />

There are various ways <strong>to</strong> communicate with the <strong>Green</strong> <strong>Hills</strong> Probe and configure it <strong>for</strong> use with your<br />

DaVinci target. For details on how <strong>to</strong> connect <strong>to</strong> the probe and adjust the settings please consult the<br />

<strong>Green</strong> <strong>Hills</strong> Debug Probe User’s Guide. There is additional DaVinci EVM specific board in<strong>for</strong>mation in<br />

the board_info.pdf document that is located in \target\arm\davinci\board_info.pdf.<br />

The output below is an example working probe configuration <strong>for</strong> the DaVinci EVM. Please pay particular<br />

attention <strong>to</strong> the adapter, logic_high, and target settings below. This example uses the TI DSP target<br />

interface module with a 14 pin connec<strong>to</strong>r and 3.3V logic. This configuration requires the use of the<br />

Low Voltage Adapter with Adaptive Clocking <strong>for</strong> TI ARM based processors (14 pin-CTI-20 pin) from<br />

Spectrum Digital that converts the 1.8V logic on the DVEVM <strong>to</strong> 3.3V. The part number is 701212.<br />

The <strong>Green</strong> <strong>Hills</strong> Probe can also directly support 1.8V logic if you do not wish <strong>to</strong> use this adapter.<br />

Furthermore, if you have a 20pin-20pin adapter you can use an ARM target interface module with the<br />

probe instead of the TI DSP target interface module. This interface module provides the added functionality<br />

of exposing the SYSRESET line of the processor, which allows you <strong>to</strong> reset the board from the<br />

probe without having <strong>to</strong> cycle power.<br />

Note: The probe command t switches the probe between the various cores available<br />

through the JTAG. The currently selected core and it’s state is indicated in the command prompt.<br />

The numbering scheme is as follows:<br />

0 = icepick<br />

1 = ARM926<br />

2 = Embedded Trace Buffer<br />

3 = C64x+<br />

Here is an example of switching between cores:<br />

icepick[0,?] % t 1<br />

Selected core 1.<br />

arm926[1,c] %<br />

See Appendix A <strong>for</strong> complete listing of probe settings <strong>for</strong> this example.<br />

DEBUGGING A LINUX KERNEL IMAGE WITH <strong>MULTI</strong><br />

If you wish <strong>to</strong> debug a linux kernel image with <strong>MULTI</strong> you must build the kernel with debug in<strong>for</strong>mation<br />

included in the output file.<br />

Follow the steps in section 4 of the DVEVM Getting Started Guide (sprue66a.pdf) <strong>to</strong> install and setup<br />

the MontaVista Linux Kernel software. In section 4.6 “Building a New Linux Kernel” you will need <strong>to</strong><br />

pass an additional parameter in the make command line <strong>to</strong> build the linux kernel imagewith debug<br />

in<strong>for</strong>mation. In step 5 of section 4.6 use the following command line <strong>to</strong> build debug in<strong>for</strong>mation in<strong>to</strong><br />

the kernel image:<br />

host $ make ARCH=arm CROSS_COMPILE=arm_v5t_le- CONFIG_DEBUG_INFO=1 uImage<br />

10 <strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc. <strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc.<br />

11


<strong>Quick</strong> Start <strong>for</strong> <strong>MULTI</strong> and DaVinci technology processors<br />

You will also need <strong>to</strong> translate the dwarf debug in<strong>for</strong>mation generated by gcc <strong>to</strong> a debug <strong>for</strong>mat that<br />

<strong>MULTI</strong> understands. To do this run the following command:<br />

host $ dblink --scan_source -au<strong>to</strong>_translate vmlinux<br />

The dblink command will create the following files that <strong>MULTI</strong> uses when debugging the kernel:<br />

vmlinux.dla<br />

vmlinux.dnm<br />

Boot the kernel using one of the methods described in DVEVM Getting Started Guide. Once the kernel<br />

is up and running you will want <strong>to</strong> start a debugger on the vmlinux image and then attach <strong>to</strong> the target<br />

with a freeze mode connection. For details on configuring target connections with <strong>MULTI</strong> please<br />

refer <strong>to</strong> <strong>MULTI</strong>: Configuring Connections <strong>for</strong> ARM Targets and <strong>MULTI</strong>: Configuring Connections <strong>for</strong><br />

C6000 Targets.<br />

The following screen shots show how <strong>to</strong> create a connection <strong>to</strong> the ARM core through the <strong>Green</strong> <strong>Hills</strong><br />

Probe. It is also possible <strong>to</strong> debug using the Spectrum Digital XDS560 and XDS510 as well as the<br />

Blackhawk XDS560 probes with <strong>MULTI</strong>.<br />

1. Create a connection.<br />

12 <strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc.<br />

<strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc.<br />

<strong>Quick</strong> Start <strong>for</strong> <strong>MULTI</strong> and DaVinci technology processors<br />

2. In the Connection Edi<strong>to</strong>r Window, click on the Advanced tab <strong>to</strong> specify the ARM core <strong>for</strong> this<br />

connection.<br />

3. After you have created the connection, connect the debugger in Attach mode.<br />

13


<strong>Quick</strong> Start <strong>for</strong> <strong>MULTI</strong> and DaVinci technology processors<br />

4. After establishing the connection you can browse through the code using <strong>MULTI</strong> and put a breakpoint<br />

in the kernel. A safe place <strong>to</strong> do this is in the __schedule() function.<br />

14 <strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc.<br />

<strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc.<br />

<strong>Quick</strong> Start <strong>for</strong> <strong>MULTI</strong> and DaVinci technology processors<br />

5. From here you can open up the OSA Explorer <strong>to</strong> view internal linux kernel structures and the list of<br />

processes in the system. You can also open up a new debugger window on a specific process by double<br />

clicking on the process in the Task pane of the OSA window.<br />

For detailed in<strong>for</strong>mation on linux kernel debugging, including debugging kernel modules, please see<br />

chapter 6 in the <strong>MULTI</strong>: Developing <strong>for</strong> Embedded Linux on ARM (linux_arm.pdf) document.<br />

15


<strong>Quick</strong> Start <strong>for</strong> <strong>MULTI</strong> and DaVinci technology processors<br />

APPENDIX<br />

Example probe configuration <strong>for</strong> TI DSP interface module with 3.3V logic adapter:<br />

* <strong>Green</strong> <strong>Hills</strong> Probe <strong>for</strong> DaVinci, v1.12.0<br />

* Firmware built Apr 28 2006 14:35:40<br />

* Serial No: 6927<br />

* Part number 520-GP300-02A<br />

* <strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc<br />

* http://www.ghs.com<br />

*<br />

* Type 'info' <strong>to</strong> list probe in<strong>for</strong>mation.<br />

* Type 'setup' <strong>to</strong> set the current configuration.<br />

Type 'help' <strong>to</strong> list the online help.<br />

<strong>Green</strong> <strong>Hills</strong> Probe<br />

icepick[0,?] % set<br />

dhcp = off<br />

ip = 192.168.104.248<br />

netmask = 255.255.255.0<br />

gateway = 192.168.104.254<br />

single_mpserv_only = off<br />

adapter = au<strong>to</strong> [ti]<br />

clock = 15 MHz<br />

use_rtck = off<br />

rtck_use_timeout = on<br />

logic_high = 3.300000<br />

target = icepick(0:arm926 1:armetb 2:c64x_plus)<br />

checker = off<br />

power_detect = on<br />

user_but<strong>to</strong>n = tri-state<br />

user_string = <strong>Green</strong> <strong>Hills</strong> Probe<br />

baudrate = 115.2 kbaud<br />

rst_pulse = 300 ms<br />

rst_settle = 300 ms<br />

jrst_pulse = 300 ms<br />

jrst_settle = 300 ms<br />

rst_tap_then_sys = off<br />

minimize_scanchain = off<br />

use_max_reset = off<br />

icepick[0,?] % t 1<br />

Selected core 1.<br />

arm926[1,c] % set<br />

dhcp = off<br />

ip = 192.168.104.248<br />

netmask = 255.255.255.0<br />

16 <strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc.<br />

gateway = 192.168.104.254<br />

single_mpserv_only = off<br />

adapter = au<strong>to</strong> [ti]<br />

clock = 15 MHz<br />

use_rtck = off<br />

rtck_use_timeout = on<br />

logic_high = 3.300000<br />

target = icepick(0:arm926 1:armetb 2:c64x_plus)<br />

checker = off<br />

power_detect = on<br />

user_but<strong>to</strong>n = tri-state<br />

user_string = <strong>Green</strong> <strong>Hills</strong> Probe<br />

baudrate = 115.2 kbaud<br />

rst_pulse = 300 ms<br />

rst_settle = 300 ms<br />

jrst_pulse = 300 ms<br />

jrst_settle = 300 ms<br />

rst_tap_then_sys = off<br />

endianness = little<br />

fast_dl = off<br />

abort_check = on<br />

use_bkpt_inst = on<br />

use_hw_singlestep = off<br />

catch_por = off<br />

catch_reset = off<br />

catch_undef = off<br />

catch_swi = off<br />

catch_prefetch = off<br />

catch_abort = off<br />

catch_irq = off<br />

catch_fiq = off<br />

etm_version = 1<br />

moni<strong>to</strong>r_mode = off<br />

override_mmu = on<br />

<strong>for</strong>ce_dbgack = on<br />

simulate_singlestep = off<br />

arm926[1,c] % t 2<br />

Selected core 2.<br />

[2,?] % set<br />

dhcp = off<br />

ip = 192.168.104.248<br />

netmask = 255.255.255.0<br />

gateway = 192.168.104.254<br />

single_mpserv_only = off<br />

adapter = au<strong>to</strong> [ti]<br />

<strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc.<br />

<strong>Quick</strong> Start <strong>for</strong> <strong>MULTI</strong> and DaVinci technology processors<br />

17


<strong>Quick</strong> Start <strong>for</strong> <strong>MULTI</strong> and DaVinci technology processors<br />

clock = 15 MHz<br />

use_rtck = off<br />

rtck_use_timeout = on<br />

logic_high = 3.300000<br />

target = icepick(0:arm926 1:armetb 2:c64x_plus)<br />

checker = off<br />

power_detect = on<br />

user_but<strong>to</strong>n = tri-state<br />

user_string = <strong>Green</strong> <strong>Hills</strong> Probe<br />

baudrate = 115.2 kbaud<br />

rst_pulse = 300 ms<br />

rst_settle = 300 ms<br />

jrst_pulse = 300 ms<br />

jrst_settle = 300 ms<br />

rst_tap_then_sys = off<br />

endianness = little<br />

associated_core = 1<br />

[2,?] % t 3<br />

Selected core 3.<br />

c64x+[3,?] % set<br />

dhcp = off<br />

ip = 192.168.104.248<br />

netmask = 255.255.255.0<br />

gateway = 192.168.104.254<br />

single_mpserv_only = off<br />

adapter = au<strong>to</strong> [ti]<br />

clock = 15 MHz<br />

use_rtck = off<br />

rtck_use_timeout = on<br />

logic_high = 3.300000<br />

target = icepick(0:arm926 1:armetb 2:c64x_plus)<br />

checker = off<br />

power_detect = on<br />

user_but<strong>to</strong>n = tri-state<br />

user_string = <strong>Green</strong> <strong>Hills</strong> Probe<br />

baudrate = 115.2 kbaud<br />

rst_pulse = 300 ms<br />

rst_settle = 300 ms<br />

jrst_pulse = 300 ms<br />

jrst_settle = 300 ms<br />

rst_tap_then_sys = off<br />

endianness = little<br />

step_ints = off<br />

c64x+[3,?] %<br />

18 <strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc.<br />

<strong>Green</strong> <strong>Hills</strong> <strong>Software</strong>, Inc.<br />

<strong>Quick</strong> Start <strong>for</strong> <strong>MULTI</strong> and DaVinci technology processors<br />

19


Corporate Headquarters<br />

30 West Sola Street<br />

Santa Barbara, CA 93101<br />

ph: 805.965.6044<br />

fax: 805.965.6343<br />

email: sales@ghs.com<br />

www.ghs.com<br />

North American Sales Offices<br />

Arizona - Phoenix<br />

Tel: 602.953.6123<br />

Cali<strong>for</strong>nia - Los Angeles<br />

Tel: 805.965.6044<br />

Cali<strong>for</strong>nia - San Clemente<br />

Tel: 949.369.3950<br />

Cali<strong>for</strong>nia - Santa Clara<br />

Tel: 408.919.0800<br />

Canada - Ottawa<br />

Tel: 613.271.2115<br />

Colorado - Denver<br />

Tel: 303.740.8462<br />

Georgia - Atlanta<br />

Tel: 404.873.6285<br />

Illinois - Chicago<br />

Tel: 847.515.2418<br />

Massachusetts - Natick<br />

Tel: 508.655.5155<br />

Massachusetts - Topsfield<br />

Tel: 978.887.0051<br />

North Carolina - Mars Hill<br />

Tel: 828.689.8508<br />

Ohio - Day<strong>to</strong>n<br />

Tel: 937.848.8644<br />

Texas - Dallas<br />

Tel: 972.712.1407<br />

Washing<strong>to</strong>n - Bothell<br />

Tel: 425.402.3692<br />

International Offices<br />

Australia<br />

Tel: +61.4.3744.7638<br />

France<br />

Tel: +33.1.46.96.07.00<br />

Germany<br />

Tel: +49.721.98.62.580<br />

Israel<br />

Tel: +972.9.958.4060<br />

Japan<br />

Tel: +81.3.3576.5351<br />

Netherlands<br />

Tel: +31.33.4613363<br />

Sweden<br />

Tel: +46.46.211.33.70<br />

United Kingdom<br />

Tel: +44.1844.267950<br />

North American Safety<br />

Critical Products Sales Offices<br />

Cali<strong>for</strong>nia - Laguna <strong>Hills</strong><br />

Tel: 949.460.6442<br />

Florida - Palm Harbor<br />

Tel: 727.781.4909<br />

Technical Support<br />

North America Mountain/Pacific<br />

time, Australia, New Zealand<br />

support-west@ghs.com or<br />

1.877.GHS.TECH<br />

North America Eastern/Central<br />

time, South America<br />

support-east@ghs.com or<br />

1.877.GHS.TECH<br />

Europe, Africa, India<br />

support-nl@ghs.com or<br />

+31.33.4613363<br />

Japan, Taiwan, South Korea<br />

support@adac.co.jp or<br />

+86.10.62000988<br />

Safety Critical Technical Support<br />

support-ada@ghs.com or<br />

727.781.4909

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!