03.08.2013 Views

CodeWarrior Development Studio for Power Architecture Netcomm

CodeWarrior Development Studio for Power Architecture Netcomm

CodeWarrior Development Studio for Power Architecture Netcomm

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>Power</strong> <strong>Architecture</strong> <strong>Netcomm</strong> v10.0.1<br />

Release Note<br />

<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong><br />

<strong>Power</strong> <strong>Architecture</strong> <strong>Netcomm</strong> v10.0.1<br />

Table of Contents<br />

1 About This Release ................................................................................................. 2<br />

1.1 Version In<strong>for</strong>mation ........................................................................................... 2<br />

1.2 Getting Help ...................................................................................................... 2<br />

1.2.1 Documentation ........................................................................................... 2<br />

1.3 New in this Release .......................................................................................... 4<br />

1.3.1 Product Level Features .............................................................................. 4<br />

1.3.2 Documentation ........................................................................................... 4<br />

1.3.3 Debugger ................................................................................................... 4<br />

1.3.4 Software Analysis ...................................................................................... 5<br />

2 Important Usage Notes and Known Limitations .................................................... 5<br />

2.1 General ............................................................................................................. 5<br />

2.1.1 In the event of a Crash of <strong>CodeWarrior</strong> in Linux ......................................... 5<br />

2.1.2 Using <strong>CodeWarrior</strong> on 64-bit Linux Hosts .................................................. 6<br />

2.2 Debugger .......................................................................................................... 6<br />

2.2.1 Trace/Profiling Effects on Debugging Function ........................................... 6<br />

2.2.2 Supported GTAP connections: ................................................................... 6<br />

2.2.3 Aurora initialization ..................................................................................... 6<br />

2.2.4 Import Elf Wizard ....................................................................................... 6<br />

2.2.5 Cache support P2020 ................................................................................ 6<br />

2.2.6 Cache support P4080 ................................................................................ 7<br />

2.2.7 Multi-core reset .......................................................................................... 7<br />

2.3 Software Analysis ............................................................................................. 7<br />

2.3.1 General ...................................................................................................... 7<br />

2.3.2 Trace Collection ......................................................................................... 7<br />

2.3.3 Per<strong>for</strong>mance Analysis Tools ....................................................................... 8<br />

3 System Requirements ............................................................................................. 8<br />

4 Who Should Use this Release? .............................................................................. 8<br />

5 Who Should NOT Use this Release? ...................................................................... 8<br />

6 Errata ........................................................................................................................ 9<br />

6.1 Known Errata in this Release ............................................................................ 9<br />

Freescale Confidential Proprietary<br />

1


<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>Power</strong> <strong>Architecture</strong> <strong>Netcomm</strong> v10.0.1<br />

1 About This Release<br />

The 10.0.1 release of <strong>CodeWarrior</strong> <strong>for</strong> <strong>Power</strong> <strong>Architecture</strong> <strong>Development</strong> <strong>Studio</strong> is the first release<br />

that is generally available.<br />

1.1 Version In<strong>for</strong>mation<br />

This release note provides important in<strong>for</strong>mation <strong>for</strong> users of <strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong><br />

<strong>for</strong> <strong>Power</strong> <strong>Architecture</strong> <strong>Netcomm</strong>, 10.0.1. This product targets the P4080 (rev’s 1 and 2), P4040,<br />

P2020 and P2010 processors. You are encouraged to read this document to become familiar with<br />

this release’s supported targets, new features, errata with workarounds, and other useful<br />

in<strong>for</strong>mation.<br />

1.2 Getting Help<br />

1.2.1 Documentation<br />

Please be aware of the abundant documentation available <strong>for</strong> <strong>CodeWarrior</strong> <strong>for</strong> <strong>Power</strong><br />

<strong>Architecture</strong>.<br />

1.2.1.1 Quick Starts<br />

<strong>CodeWarrior</strong> <strong>for</strong> <strong>Power</strong> <strong>Architecture</strong> Processors<br />

Explains how to install <strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> and how to create and debug a<br />

simple project that targets a simulator.<br />

Targeting the P4080DS Board<br />

Explains how to set up the P4080DS board, install <strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong>, and<br />

use this software to create, build, and debug a simple P4080DS project.<br />

Debugging a Linux Application<br />

Explains how to configure your system <strong>for</strong> Linux application debugging, how to create a<br />

project that generates a Linux application, and how to debug this application.<br />

Debugging U-Boot<br />

Explains how to configure and build U-Boot on a Linux machine, how to configure Simics to<br />

use the new U-Boot image, and how to use the <strong>CodeWarrior</strong> tools to debug this image.<br />

Debugging Under the Hypervisor<br />

Explains how to configure and build hypervisor support on a Linux machine and how to<br />

debug bareboard applications under the hypervisor.<br />

Debugging the Linux Kernel Under the Hypervisor<br />

Explains how to configure and build hypervisor support on a Linux machine and how to<br />

debug the Linux kernel under the hypervisor.<br />

Using Ethernet TAP Probe<br />

Explains how to set up and use the Ethernet TAP probe.<br />

<strong>CodeWarrior</strong> IDE - Quick Reference Card<br />

Lists keyboard shortcuts and defines the purpose of major <strong>CodeWarrior</strong> IDE user interface<br />

elements.<br />

Freescale Confidential Proprietary<br />

2


<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>Power</strong> <strong>Architecture</strong> <strong>Netcomm</strong> v10.0.1<br />

1.2.1.2 Cheat Sheets<br />

Making C/C++ the IDE's Default Perspective<br />

Shows you how to make the C/C++ perspective the default IDE perspective.<br />

Using the Flash Programmer<br />

Shows you how to use the flash programmer to manipulate flash memory.<br />

Importing Resources Using the Import Wizard<br />

A set of cheat sheets that shows you how to import various resources into the IDE:<br />

o Importing Archive Files<br />

o Importing Breakpoints<br />

o Importing Classic <strong>CodeWarrior</strong> Projects<br />

o Importing Existing Projects into Workspace<br />

o Importing Preferences<br />

o Importing Resources from Local File System<br />

o Importing Team Project Set<br />

Creating and Debugging a <strong>Power</strong> <strong>Architecture</strong> Project<br />

Shows you how to create and debug a <strong>Power</strong> <strong>Architecture</strong> project using the New Project wizard.<br />

Modifying Build Properties<br />

Guides you through the process of modifying build properties to better suit your needs.<br />

Burning U-Boot to Flash <strong>for</strong> P4080DS<br />

Guides you through the process of burning U-Boot to Flash <strong>for</strong> P4080DS.<br />

1.2.1.3 Further Help<br />

If you have questions, issues, or want to provide feedback, please use the Freescale online<br />

support web page. To use this page, follow these steps:<br />

1. In a web browser, go to http://www.freescale.com/TechSupport.<br />

Freescale’s Technical Support web page appears.<br />

2. On this page, click the Submit a service request online link.<br />

The New Service Request — Category/Topic page appears.<br />

3. From the Category dropdown menu, select Technical Request.<br />

4. From the Topic dropdown menu, select <strong>CodeWarrior</strong> (or other appropriate topic).<br />

5. Click Next.<br />

The New Service Request — SR Details page appears.<br />

6. In this page, enter the requested in<strong>for</strong>mation.<br />

At a minimum, enter in<strong>for</strong>mation in each field marked by an *.<br />

7. Click Submit.<br />

If you are already logged in, the Service Request Confirmation page appears. Go to<br />

the last step.<br />

If you are not already logged in, the Log-in page appears.<br />

8. If you are a registered member, login with your user name and password.<br />

The Service Request Confirmation page appears. Go to the last step.<br />

9. If you have not yet registered,<br />

Freescale Confidential Proprietary<br />

3


<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>Power</strong> <strong>Architecture</strong> <strong>Netcomm</strong> v10.0.1<br />

a. If you want to become registered member, click Register Now and complete the<br />

registration process.<br />

The Service Request Confirmation page appears.<br />

b. If you do not want to register, supply your contact in<strong>for</strong>mation in the I do not want<br />

to register - Provide contact in<strong>for</strong>mation <strong>for</strong>m and click Submit.<br />

10. Click Done.<br />

The Service Request Confirmation page appears.<br />

Your service request is submitted.<br />

1.3 New in this Release<br />

1.3.1 Product Level Features<br />

Improved Linux host support including<br />

Extensive testing on Ubuntu 9.10, 32-bit host<br />

Win 7, 32-bit tested<br />

1.3.2 Documentation<br />

1.3.2.1 Tracing and Profiling User Guide<br />

Added description <strong>for</strong> OceaN, EPU, RCPM, NXC Trace Profile configurations<br />

Added description <strong>for</strong> Hardware Tracepoints<br />

1.3.2.2 Application note, AN4212 – Using LTTng UST on P4080DS <strong>Development</strong> Board<br />

Explains how to enable LTTng UST in the P4080 Board Support Package (BSP).<br />

1.3.2.3 CheatSheets:<br />

Creating and Configuring Per<strong>for</strong>mance Analysis Project<br />

Shows how to create and configure a Per<strong>for</strong>mance Analysis project<br />

Creating, Debugging, Collecting, and Viewing Trace Data<br />

Shows how to create, debug, collect, and view trace data on the P4080/P4040 target<br />

1.3.2.4 <strong>CodeWarrior</strong> <strong>for</strong> <strong>Power</strong> <strong>Architecture</strong> Processors 10 Targeting Manual<br />

Explained the build settings in detail in a separate chapter<br />

Updates to the Working with Projects chapter based on the new targets introduced with this<br />

release<br />

Made updates to the import wizard both in targeting manual and quick starts<br />

Updated Quick Starts<br />

1.3.3 Debugger<br />

P2010 DS bare-board and Linux support<br />

P2010 RDB bare-board and Linux support<br />

Freescale Confidential Proprietary<br />

4


<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>Power</strong> <strong>Architecture</strong> <strong>Netcomm</strong> v10.0.1<br />

P4040: Linux kernel and Hypervisor debug support<br />

Support <strong>for</strong> P4080/P4040 Linux BSP release 2.2<br />

Support <strong>for</strong> P4080/ P4040 Linux BSP Fail-over release<br />

Multi-board support (Limitation: no support <strong>for</strong> P4080 due to MTWX43800)<br />

1.3.4 Software Analysis<br />

1.3.4.1 Trace Collection<br />

Nexus Trace collection to DDR, NPC, or Gigabit Tap<br />

Support Nexus tracing from Core, DDR, QMan, OceaN<br />

Linux LTTng User Space Trace (Linux host only) - See application note <strong>for</strong> LTTng UST <strong>for</strong><br />

more detail – AN4212)<br />

LTTng Linux Trace support updates <strong>for</strong> latest FSL BSP v2.2<br />

Support <strong>for</strong> Gigabit Tap collection via aurora from CW UI.<br />

Improvements to trace events viewer find/filter capability.<br />

Additional support <strong>for</strong> P4040.<br />

1.3.4.2 Per<strong>for</strong>mance Analysis<br />

Additional UI filters added:<br />

Metrics Tree, Low Level Events<br />

Hide Filterer leaf nodes with no in<strong>for</strong>mation.<br />

Metrics improvements<br />

Support <strong>for</strong> user defined metrics.<br />

Additional support <strong>for</strong> P4040.<br />

2 Important Usage Notes and Known Limitations<br />

This section describes some issues that are more likely to be encountered, and how to avoid or<br />

work around them. Additional in<strong>for</strong>mation on errata and work-arounds can be found in the Errata<br />

section of this document.<br />

2.1 General<br />

2.1.1 In the event of a Crash of <strong>CodeWarrior</strong> in Linux<br />

When running <strong>CodeWarrior</strong> in Linux, in the unlikely event that you have encountered a<br />

crash of the Debugger Engine in <strong>CodeWarrior</strong>, you may need to do the following.<br />

a) Close <strong>CodeWarrior</strong> and kill any “cwde” processes that may still be left running. (kill<br />

)<br />

b) Navigate to the filesystem's /tmp directory.<br />

c) If any files exist of the <strong>for</strong>m “CWDebuggerEngineSCS-x-” they should<br />

be deleted. (rm –f /tmp/CWDebuggerEngineSCS*)<br />

Freescale Confidential Proprietary<br />

5


<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>Power</strong> <strong>Architecture</strong> <strong>Netcomm</strong> v10.0.1<br />

2.1.2 Using <strong>CodeWarrior</strong> on 64-bit Linux Hosts<br />

For 64-bit Linux hosts <strong>CodeWarrior</strong> Connection Server (CCS) requires installation of 32bit<br />

X11 libraries in order to launch. Please ensure libXpm is installed on the system<br />

prior to use.<br />

2.2 Debugger<br />

2.2.1 Trace/Profiling Effects on Debugging Function<br />

Enabling Trace or Profiling was found, in some cases, to have negative consequences<br />

<strong>for</strong> debugging functions. In general, the debugging problems can be avoided if profiling<br />

and trace are disabled if they are not needed during basic debugging.<br />

2.2.2 Supported GTAP connections:<br />

JTAG over JTAG cable and JTAG over Aurora cable are supported.<br />

Limitation: Debugging using Aurora connection is not supported (Aurora cannot be initialized <strong>for</strong><br />

debug).<br />

2.2.3 Aurora initialization<br />

Supported only with Silicon Rev 1<br />

Limitation: Tracing is supported only when the debugger is connected. The Aurora connection is<br />

also stopped when the debugger disconnects.<br />

2.2.4 Import Elf Wizard<br />

Limitation: A dtb file cannot be imported within the wizard and the user has to do this from GUI.<br />

Also SMP cores cannot be selected.<br />

Limitation: No existing RSE can be chosen inside the wizard (a new one will be created every<br />

time). The RSE can be chosen after project creation from GUI.<br />

2.2.5 Cache support P2020<br />

e500v2 core: The memory window is not updated after a write operation in data cache. This<br />

is by design – no attempt to read data cache is done when reading memory, only the<br />

instruction cache. It is done this way because data cache is coherent, while instruction cache<br />

is not.<br />

e500v2 core: A cache line gets invalidated, when its content has been changed through the<br />

memory window; this is the expected behavior since when a transaction is produced by SAP<br />

(as well as any other bus master) the cache snooping mechanism invalidates the appropriate<br />

line.<br />

Opening Cache window: Valid lines can appear in Cache Viewer even if the cache is<br />

enabled or disabled. This is by design, the line status does not depend on whether cache is<br />

enabled or not.<br />

Freescale Confidential Proprietary<br />

6


<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>Power</strong> <strong>Architecture</strong> <strong>Netcomm</strong> v10.0.1<br />

2.2.6 Cache support P4080<br />

2.2.6.1 L1 Data Cache <strong>for</strong> Memory Reads <strong>for</strong> P4080<br />

L1 Data cache allocates lines <strong>for</strong> memory reads of code around the PC; in order not to have that<br />

code in the cache, a cache inhibited read should be done or SAP should be used.<br />

2.2.7 Multi-core reset<br />

MTWX42123 Reset command from debugger shell can only be used to reset the entire system.<br />

For per-core reset, the GUI reset dialog should be used.<br />

2.3 Software Analysis<br />

2.3.1 General<br />

The Software Analysis tools only support the P4080 and P4040 processors.<br />

Enabling Trace and Profiling was found, in some cases, to have negative consequences <strong>for</strong><br />

some debugging functions. In general, the debugging problems can be avoided if profiling<br />

and trace are disabled in the Trace and Profile tab in the Launch Configuration, if they are not<br />

needed during basic debugging.<br />

2.3.2 Trace Collection<br />

1. Tracing is supported only when the debugger is connected to the target.<br />

2. Within the Jython console in <strong>CodeWarrior</strong> there is no standard out being shown when scripts<br />

are invoked. To workaround this limitation capture the decoded output using “out=”<br />

argument to GetBufferTrace or GetProbeTrace scripts.<br />

3. When using the GetBufferTrace.py or GetProbeTrace.py scripts to collect and decode trace<br />

data, please edit your debug launch configuration and uncheck the 'Enable Trace and Profile'<br />

setting.<br />

4. If collecting program trace from a P4080 rev2 processor, edit the file(s) listed below and set the<br />

value of the 'Trace Predicate Instructions' attribute to '1', <strong>for</strong> each core that outputs program<br />

trace data:<br />

If collecting trace using the graphical user interface:<br />

\PA\cdde\sasdk\data\fsl.configs.sa.nexusdecoder\NexusDecoderP4080Internal.xml<br />

If collecting trace using the GetBufferTrace.py or GetProbeTrace.py scripts:<br />

\PA\cdde\sasdk\data\fsl.configs.sa.nexusdecoder\NexusDecoderP4080.xml<br />

Freescale Confidential Proprietary<br />

7


<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>Power</strong> <strong>Architecture</strong> <strong>Netcomm</strong> v10.0.1<br />

Note: In order to check whether your P4080 processor is rev1 or rev2, check the content<br />

of the e500mc's special purpose register called SVR, in the <strong>CodeWarrior</strong> register view. If<br />

the SVR register's value masked with 0xfff0fff0 is equal to 0x82000010 the processor's<br />

revision is rev1, otherwise it is rev2. For more details please consult the P4080<br />

Reference Manual.<br />

5. The trace settings are applied to the target using the active debug launch configurations.<br />

Currently the multiple active debug launch configurations associated with different P4080<br />

boards are not supported, please make sure that all active debug launch configurations are<br />

using the same P4080 board, when collecting trace data.<br />

6. U-boot in the FSL BSP (on P4080rev1) disables the aurora lanes used <strong>for</strong> Nexus trace<br />

support with the Gigabit TAP. To collect trace to Gigabit TAP probe you must enable at least<br />

2 lanes <strong>for</strong> Aurora.<br />

7. Sometimes, collecting to the NPC Buffer via the <strong>CodeWarrior</strong> Eclipse environment is not<br />

currently working. Collecting to the NPC buffer via the scripting environment (GetBufferTrace)<br />

is working.<br />

2.3.3 Per<strong>for</strong>mance Analysis Tools<br />

The "Generate a Configuration Access Log" operation, found on the Analyze Tab, requires that<br />

the "Save configuration with each captured data" options be checked on the Options Tab.<br />

The Per<strong>for</strong>mance Analysis Events viewer will be empty when initially opened. Upon completion<br />

of each collection operation it will display the collected counter data.<br />

3 System Requirements<br />

Recommended Configuration<br />

3GHz Intel® Pentium® P4 processor or better. Dual-core processor preferable.<br />

Microsoft® Windows XP<br />

2GB RAM (Step speed on machines with 1GB RAM is significantly slower)<br />

1GB free disk space<br />

Note: 500MB of free space is required on the OS drive, regardless of the free space available<br />

on the destination drive.<br />

4 Who Should Use this Release?<br />

Users developing <strong>for</strong> the P4080<br />

5 Who Should NOT Use this Release?<br />

Users developing <strong>for</strong> <strong>Power</strong>Quicc, 8xxx, 7xxx, 7xx, 6xx or 5xx based processors. These<br />

developers should use the previous (non-Eclipse based) versions of the tools.<br />

Freescale Confidential Proprietary<br />

8


<strong>CodeWarrior</strong> <strong>Development</strong> <strong>Studio</strong> <strong>for</strong> <strong>Power</strong> <strong>Architecture</strong> <strong>Netcomm</strong> v10.0.1<br />

6 Errata<br />

6.1 Known Errata in this Release<br />

Please check the Documentation tab in the <strong>CodeWarrior</strong> <strong>for</strong> <strong>Power</strong> <strong>Architecture</strong> section<br />

of the Freescale website <strong>for</strong> updated lists of known errata and addressed errata:<br />

http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=CW_DSPA&<br />

Freescale Confidential Proprietary<br />

9

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

Saved successfully!

Ooh no, something went wrong!