ARM® RealView® Developer Suite v2.2 Release Notes

You are strongly recommended to read through the following release notes before completing install of the ARM RealView Developer Suite version 2.2 (RVDS).

Contents

General Information
What's New In This Release
Obtaining and Installing Your Licence
Getting Support and Updates to RVDS 2.2
Installation Information
Installing on Red Hat Enterprise Linux version 3
Typical and Custom Installations
Changes to Use of Environment Variables for Linux and Solaris Users
Supported Browsers for Online Help
RealView Compilation Tools v2.2 (RVCT) Release Notes
Changes to ARM/Thumb Assembler Language
RealView Debugger v1.8 (RVD) Release Notes
Should I use RealView Debugger Project Manager or CodeWarrior for RVDS?
Which RealView ICE Version should I use?
Which Multi-ICE Version should I use?
Which MultiTrace Version should I use?
Important Note for SUN Solaris Users
Important Note for Red Hat Linux Users Regarding Motif
Known Issues in RVD v1.8
CodeWarrior for RVDS Release Notes (Windows only)

 RealView ARMulator ISS 1.4.1 (RVISS) Release Notes
New Processor Models Supported In This Release
Installing Exception Handlers
Extensions to the Pagetables Module
ARM11 Models Release Notes
ARM eXtended Debugger 1.3.1 (AXD) Release Notes (Windows only)



General Information

What's New In This Release

For details of the new features available in this release, together with information about Add-On Options, Frequently Asked Questions and other products in the ARM RealView range, read the product pages at http://www.arm.com/products/DevTools/RealViewDevSuite.html.

Return to Top

Obtaining and Installing Your Licence

Before you can use RVDS, you must obtain a valid license file:

Windows Users
Windows users should use the License Wizard found in the ARM section of the Start Menu. This provides step-by-step instructions on installing your license file.

Solaris and Linux Users
Solaris and Linux users, and Windows users requiring further information, should consult the ARM FLEXlm License Management Guide in the product documentation for details of how to request and install a permanent license file.

For more assistance with the installation of your license, please consult our License Management FAQ within the Technical Support area of the ARM web site at http://www.arm.com/support/licensemanagement.html.

If you need additional help with registering or with obtaining your license, please contact us at mailto:license.support@arm.com with a detailed description of your problem. Please make sure that you provide your product serial number, plus your ARM web licensing system username and password.

Return to Top

Getting Support and Updates to RVDS 2.2

Technical support in the use of RVDS should be obtained from your supplier. Your supplier's details will be in your license file, and will be displayed when you enter 'armcc --help' at the command line. For further information on obtaining support, please refer to: http://www.arm.com/support/obtaining.html.

Patches and updates to RVDS 2.2 are made available at http://www.arm.com/support/downloads/index.html

Return to Top



Installation Information

This release has been tested on the following list of platforms and service packs. Return to Top

Installing on Red Hat Enterprise Linux version 3

Installing under Red Hat Enterprise Linux Version 3 requires the compatibility rpm compat-libstdc++-7.3-2.96.118. This can be installed by using the "Add/Remove Applications" application. The Red Hat distribution CD's will be needed to complete the installation:

Click on Red Hat Icon
Click on System Settings
Click on Add/Remove Applications
Select package "Legacy Software Development" which can be found under the section titled "Development"
Complete the installation by following the on screen instructions.

Return to Top

Typical and Custom Installations

You can install either a Typical or a Custom installation. In a Custom installation, the "RealView Developer Suite - Utilities (required)" component should always be installed, otherwise the Uninstaller and other utilities will not be installed.

The following components of the "custom" installation are installed by a "typical" installation Return to Top

Changes to Use of Environment Variables for Linux and Solaris Users

From RVDS 2.2 onwards, the installer no longer writes to ~/.login and ~/.profile scripts. The new scheme provides a tool called armenv that can generate sourceable shell scripts. This tool is described in the Getting Started Guide

Quick Start

The installer will generate a sourceable script file that sets up the environment for this product, for both sh and csh shells, located in the base of the installation directory:
<Location installed>/RVDS22env.sh
<Location installed>/RVDS22env.csh
which will work with non-custom installations. For custom installations, a shell-independent file will be generated in the base of the installation directory named

<Location installed>/arm_install_<DATE>.sh

Each of the above files can add the new environment to the current shell via the source command

Return to Top

Supported Browsers for Online Help
The Online Help supplied with the product will function incorrectly with browsers pre-dating the following releases:
- Opera 6 and earlier
- Netscape 4 and earlier
- Konqueror 3.0.3 and earlier
- Internet Explorer 4 and earlier
 
Please upgrade to later versions of these browsers to use the online help.

Return to Top



RealView Compilation Tools 2.2 Release Notes

The RVCT Essentials Guide describes differences between RVCT 2.2 and previous releases, and can be found in the supplied product documentation.

Changes to ARM/Thumb Assembler Language
Significant additions have been made to the ARM assembly language, primarily to accommodate the new Thumb2 architecture. This is documented in the RVCT Assembler Guide. In addition to the Assembler Changes listed in Section 2.11 of the RVCT Assembler Guide, the mnemonic SWI ("Software Interrupt") has been renamed SVC ("Supervisor Call"). The disassemblers in the compiler (armcc) and fromelf by default now show, for example:
        SVC      0x123456  ; formerly SWI

To produce disassembly in the old syntax (similar to RVCT2.1) use the switch --no_unified_syntax. This option will not be supported in future releases.

The old mnemonic, SWI, is still accepted by the assembler and is the only syntax displayed by the debuggers.

Return to Top

--dwarf3
This release introduces the new option --dwarf3.  The size of the debug tables produced by this option is larger than those produced by the --dwarf2 option.  --dwarf2 remains the default option for the default debug table format.

Linker Relocations
The RVCT 2.2 linker relocations have been enhanced to support the ABI for the ARM Architecture. The linker will attempt to diagnose ABI incompatibilities in the relocation information. Furthermore the linker will attempt to diagnose range and interworking problems with short range 2-byte sized branches. The extra diagnostics are listed here:
Error 6802 if it detects a 2-byte sized branch to a symbol defined in the same section but of different state
Warning 6803 if it detects a 2-byte sized branch to a symbol defined in a different section
Downgradeable Error 6805 if it detects a branch to an absolute symbol which is not of type STT_FUNC
Warning 6806 if it detects a Branch to a symbol defined in a different section which is not of type STT_FUNC
Downgradeable Error 6807 if it detects a 4-byte sized branch to a symbol defined in the same section but of different state
Warning 6830 if it detects a difference between the state implied by the type of the symbol and the state implied by the closest previous mapping symbol.
You are most likely to see these diagnostics for objects produced by older versions of the tools. They can also be triggered by assembly language.

Return to Top



RealView Debugger v1.8 Release Notes

The RVD Essentials Guide describes differences between RVD 1.8 and previous releases, and can be found in the supplied product documentation.

Should I use RealView Debugger Project Manager or CodeWarrior for RVDS?
To ease migration from ADS to RVDS, the CodeWarrior IDE has been re-introduced to RVDS2.2 including provision of conversion utilities for ADS users with existing projects
 
The RVD Project Manager is now not recommended for new designs - developers should use CodeWarrior (for Windows hosts only) or make files
 
The RVD Project Manager will continue to be supported in RVDS2.2 and any service pack releases to allow developers to plan migration of existing projects.

Return to Top

Which RealView ICE Version Should I Use? 
RVDS 2.2 has been tested for use with RVI 1.2 and later releases. If you do not have RealView ICE v1.2, please contact your supplier to obtain this free upgrade.

Return to Top

Which Multi-ICE Version Should I Use? 
Users of Multi-ICE are recommended to upgrade to the latest patch release of Multi-ICE software, available from http://www.arm.com/support/downloads/index.html.

Return to Top

Which MultiTrace Version should I Use? 
Install the MultiTrace patch from the ARM website, http://www.arm.com/support/downloads/index.html, otherwise you may receive the following error when programming the ETM:

"Error calling a trace capture device function"

This can result in unexpected behavior.

Return to Top

Important Note for SUN Solaris Users
RVD requires the 'make' developer utility program to be available. During installation of the Solaris Operating Environment, the Entire or Developer Software Group should be selected. Alternatively, the developer tools package, SUNWbtool, can be installed. Consult the Solaris OE documentation on how to do this. In either case, the developer tools directory, /usr/ccs/bin, needs to be added to the user's PATH before running RVD.

Return to Top

Important Notes for Red Hat Linux users regarding Motif

1. You need Openmotif21-2.1.30 in order to use RVD. Red Hat Enterprise Linux version 3 includes openmotif21-2.1.30-8.i386.rpm. To check whether this RPM is installed on your machine use the rpm command:

      $ rpm -q -a | grep openmotif

If it is installed, you will see openmotif21-2.1.30-n in the list of RPM packages (where n is the release number).

If it is not installed, you can obtain it from the Red Hat installation CDs. It is also widely available on the web. A good place to search for RPMs is http://rpmfind.net/. Use openmotif21 as the search string and you will see the RPM listed by Linux release, including the Red Hat releases. Simply download it ready for installation. To install it, become superuser and use the command:

      $ rpm -ivh openmotif21-2.1.30-n.i386.rpm

2. When using RVD on Red Hat Linux, avoid reducing the size of dialog boxes. This is a known Motif problem whereby a crash occurs if a dialog box is reduced below a minimum size. The specifics of the problem are described in bug reference number 1131 at http://bugs.motifzone.com/

Return to Top

Known Issues in RVD v1.8

Using BCD files from RVD 1.6 or earlier product releases (DE 329280)

Using a BCD file from RVD 1.6 or earlier product releases may cause your processor to stop on connect or disconnect from a target when using RVD with RVI. Please use BCD files supplied with RVD 1.8 to avoid this problem.

RVD may fail to start on Linux or Solaris if the machine was previously used by a different user (DE 333523)

If RVD won’t start and displays the following error message:
 
      Cannot open pipe: /tmp/.RVMasterMsg/.MasterSock.<hostname>:<DISPLAY#>
 
This is because RVD creates socket files, of the format  /tmp/.RVMasterMsg/.MasterSock.<hostname>, for its own internal communications. This file will have been created previously by another user running on the same host and using the same X-Display as you are currently using. The permissions on this file will have been set to only allow the user that created the file to access it. Before you can run RVD this file will have to be removed, either by the user that created the file, or by the root user on the machine that you are running RVD on.

Demand Loading in the Data Navigator Pane
The Data Navigator may not show the names of all the local variables that are contained within an image. This is because RVD defers the loading of debug information for each source file until the source file is actually accessed during debugging. If a source file is not accessed during debugging, i.e. it is not stepped into, then none of the information about any of its local variables will be loaded.

Switching code windows in Running System Debug (DE 336342)
Switching from RSD to HSD with a code window attached to a thread on a breakpoint will cause the threads information to be incorrectly displayed when switching back to RSD.
 
It is advisable to unattach any such threads before switching to HSD.

Writing to flash from memory window erases rest of block (DE 288759)

If the address visible in the memory window is in flash and the user changes one or more values, the remaining data in the flash block will be erased. In order to avoid this, the user should ensure that "Use current values for Unspecified data in block" is ticked.

See the RVD User Guide chapter 7, section 7.4.4 Using the Flash Memory Control.

Uninstalling RVD may remove user files (DE 314397)

If files are inserted into the directory structure installed by RVD, for example user-customized flash method files (.fme), these files may be erased when RVD is uninstalled.

Users should always make a copy of any user files added into the RVD directories.

RVISS emulated clock speed in Hz (DE 295209)

For RVISS, the emulated frequency can only be entered in Hertz (Hz), not MegaHertz (MHz) as was possible in ADS.

See the Target Configuration Guide chapter 4, section 4.4.2 Configuring RealView ARMulator ISS - Clock.

Creating a new connection when already connected may cause RVD to crash (DE 314784)

Attempting to create a new connection in RVD when connected to another target may cause the debugger to crash or become unusable. There is a simple workaround: All connections should be defined before attempting to attach to a target.

Cannot create a new connection when the name contains spaces (DE 260264 & 236411)

When creating a new connection, or modifying an existing connection, the name used must not contain any spaces. Similarly, when using 'connect' from the command line, the connection name used must not contain any spaces.

Change in behavior of Cancel in Disconnect - Defining Mode (DE 314799)

Contrary to the documentation, when attempting to disconnect using the Disconnect Defining Mode dialog, selecting 'Cancel' now aborts the disconnection.
Note: The matching Connect Defining Mode dialog still behaves as documented and connects to the target even though 'Cancel' is selected.

Vector_catch is not set immediately when reconnecting to a running target (DE 293709)

If you reconnect, using Running System Debug (RSD), to a debug target that is still running, the vector_catch is not set on the target until it stops. If the user then inserts an RSD break, RVD will catch the exception and halt the core instead of behaving as expected and letting the core run.

In order to catch (say) the undefined exceptions while in RSD, type the following on the command-line:
      > bglobal, enable UND

Copying data from the Analysis window can cause RVD to crash (DE 318184)

If data is copied from the Analysis window without selecting anything, RVD will crash when the mouse is moved to another window.

Always select data in the analysis window using the mouse before copying.

Locals tab not updating on clicking on callstack entry (DE 224310)

There is a known problem in the callstack pane concerning the updating of data in tab. The problem occurs when a tab being brought to the front is not updated correctly. A typical scenario is where the user changes the current stack frame in the callstack window and then switches to look at the locals tabs. The locals tab may not have been updated.

There are two workarounds. The user can have two panes open, one showing the callstack tab, the other showing locals. In this case the locals pane is updated correctly. Additionally the user can force an update on the locals tab when it is brought to the top using the 'Update Window Now' menu option.

RVD uses a make tool which might conflict with 3rd party make programs (DE 287514)

On Windows systems, RVD provides a version of make. This tool will consume any makefile which uses standard syntax. If you have another application that uses makefiles with non-standard syntax, you may experience problems because the RVD make tool will appear earlier in the PATH.

Highlevel step from 0 might appear to cause lockup (DE 141909)

Using high-level step to get to main() after loading a program may give the impression that RVD has locked up. This is because the high-level step is actually made from low-level steps and if your application has a lot of initialization, RVD can take a long time to reach main. To fix this, insert a breakpoint at main(), run to the breakpoint and then remove it.

Return to Top



CodeWarrior for RVDS Release Notes (Windows Only)
  1. CodeWarrior v5.6.1 is supplied with this release of RVDS. You can read release notes for this product at the following location:
    <Install Directory>\ARM\IDEs\CodeWarrior\5.6\1592\win_32-pentium\Release Notes\
  2. By default code and data sizes are not shown beside the source files in the project window to speed up build times (they appear as -1). To re-enable this feature, go to the RealView Target panel and select Show Object Sizes.
  3. The makefile exporter is not fully functional in this release
  4. The output directory in the project stationary is based on the target name. By default for the supplied stationary it is Debug and Release. If you rename your target you may wish to also rename your output directory (DE 326608)
  5. The batch file runner may occasionally report the following error message after successfully executing: "Link Error   : An error occurred trying to execute batch file." This can be safely ignored (DE 327479).
Return to Top



RealView ARMulator ISS 1.4.1 Release Notes

New Processor Models Supported In This Release
RVDS 2.2 includes new models for ARM968E-S, ARM1156T2-S and ARM1176JZ-S.

Return to Top

Installing Exception Handlers
The RVISS peripheral models can add new exception handlers to the core using the function ARMulif_InstallExceptionHandler. This allows the peripheral model to handle an exception itself. An example of this is the semihosting model handling the SWI vector. The RVISS models store exception handlers as a linked list that is iterated over from start to end when an exception occurs.

On ARM7 / ARM9 and StrongARM models: The new exception handler is added to the end of the list. The list is iterated over and all exception handlers are called. If any return true the built in exception handlers are not taken.

On ARM10 / ARM11 / XScale models: The new exception handler is added to the start of the list. When an exception occurs the core iterates over the list from the beginning so the handler installed last will be called first. It stops iterating if a handler returns TRUE.

Return to Top

Extensions to the Pagetables Module
The pagetables module has been extended to support the memory protection unit used by ARM1156T2-S and ARM1156T2F-S processors.

The memory regions are defined in peripherals.ami in a similar way to the existing regions. The regions are defined as MPURegions[n]. Up to16 regions are supported. For more details about these please consult the ARM1156T2-S Technical Reference Manual.

An example of a 4GB, cacheable and bufferable region is shown below.

{ MPURegion[0]
PhysicalBase=0
Size=4GB
Cacheable=Yes
Shareable=No
Bufferable=Yes
AccessPermissions=3
TEX=0
Execute_Never=0
}

PhysicalBase defines the base address for the region, Size the size of the region, and the remaining variables are used to create the access control register for that region.

Return to Top

ARM11 Models Release Notes
Running images linked using BE32 on ARM11 processors
Images linked using the BE32 option should be run on the _BE32 variant of any ARM11 processor model. All other images should be run on the ordinary model.

ARM1136JF-S and ARM1136J-S Models
The following restrictions apply to ARM1136JF-S and ARM1136J-S models:
1. VFP:
ARM1136JF-S already includes a VFP11. Any VFP option you choose in RVD will be ignored (except if it is the FPA/FPE option that will be rejected)
ARM1136J-S does not include a VFP and should not be used with any VFP option as it will potentially produce incorrect results. The VFPv2 Fast-mode will fail to connect with a message claiming (incorrectly) that it is trying to connect to an ARM7 core. The VFPv2 will connect but may result in incorrect operation. FPA/FPE option will be rejected.
2. The caches are not modelled accurately enough to show aliasing effects for cache sizes greater than 16kB.
3. Under RVD the Invalidate by Range operations that are new to the v6 Architecture are shown as 64 bit registers. The high 32 bits of this register is the start address and the low 32 bits are the end address.
4. The following registers are unmodelled:
Register Debugger symbol in RVD
Data Memory Remap Register @CP15_D_MEM_REMAP
Instruction Memory Remap Register @CP15_I_MEM_REMAP
DMA Memory Remap Register @CP15_DMA_MEM_REMAP
Peripheral Port Memory Remap Register @CP15_PERPH_MEM_REMAP
Instruction Cache Master Valid Register @CP15_ICACHE_MASTER_VALID_REGISTER_0/7
Instruction SmartCache Master Valid Register @CP15_ISMARTCACHE_MASTER_VALID_REGISTER_0/7
Data Cache Master Valid Register @CP15_DCACHE_MASTER_VALID_REGISTER_0/7
Data SmartCache Master Valid Register @CP15_DSMARTCACHE_MASTER_VALID_REGISTER_0/7
Main TLB VA Register @CP15_TLB_MAIN_VA
Main TLB PA Register @CP15_TLB_MAIN_PA
Main TLB Attribute Register @CP15_TLB_MAIN_ATT


Return to Top

Accessing RVISS through AXD 1.3.1 (DE 316342)
Under some circumstances, it is possible to get "DBE Warning 0041: an unspecified debug toolbox call failed." after re-configuring RVISS. You can recover by choosing restart in the error box. If you wish to reload the current image, you will have to do this manually, for example by pressing the "reload" button.

Return to Top



AXD 1.3.1 Release Notes (Windows Only)

Running Multiple Versions of AXD
It is possible to install multiple versions of AXD, for example the RVDS 2.2 AXD and the ADS 1.2.1 AXD, but only one version of AXD can be "active" on a single machine at any one time. ARM provides a utility called SuiteSwitcher which allows you to easily switch between different versions of AXD on the same machine. You can download the utility here:
http://www.arm.com/support/downloads/Utilities.html

Alternatively if you wish to use two different versions of AXD on the same machine, it is necessary to manually activate the appropriate version of AXD by running "register.bat" in the directory containing the particular AXD.EXE that you wish to activate. Failure to do this can result in a dialog containing the following: "remote_a.sdi has unexpected Product Version. Expected 2.0, got 1.2. Please contact your supplier."

Using vbscript.dll
The AXD command line interface (CLI) requires the system library vbscript.dll to be registered. This should be registered automatically on all Windows systems, but if you get the error "Script Engine has not been registered" when trying to use the AXD CLI, you can register it manually by typing the following at a Windows command prompt:

    %SystemRoot%\system32\regsvr32.exe %SystemRoot%\system32\vbscript.dll

Return to Top



Release Notes End