| |||
| Home > Programming flash memory > Registering a new flash algorithm | |||
To register flash algorithms, you must have a valid ARM® Compiler license file.
Before carrying out any flash programming operations you must
register your flash algorithm with the debugger. You can use the flash
list command to display all the registered flash algorithms.
Flash algorithms are comprised of one or more object files containing code that runs on the target to access the flash device. An XML file describes these object files along with some additional meta data. The XML file must be registered with the debugger before the flash algorithm can be used.
Before registering a flash algorithm you must ensure that you have a set of object files that are generated by compiling the algorithm source files.
To register a new flash algorithm:
Create an XML file that describes the algorithm that you want to register. The XML tags include the following:
idUnique name containing only alphanumeric characters, hyphens or underscore characters.
typeNOR or NAND. Used to represent the type of flash device.
byteOrderLE, BE8, or BE32. Used to represent the endianness of the flash device.
microlibTrue or false. Specifies whether to use the microlib C library or the standard C library.
nameUser-friendly name. You can specify multiple name tags with different language attributes.
paramDependent
on the algorithm. List consisting of key and defaultValue attributes
that are required by the algorithm.
objectDependent on the algorithm. Lists all the object files and relative paths to the XML file.
Example 13. Typical XML configuration file containing two devices
<flashDevices> <flashDevice id="IntegratorAPDevice" type="NOR" cpu="ARM7TDMI" byteOrder="LE" microLib="false"> <name value="Intel DT28F320S3 2Mx16 x2 x4" lang="en"/> <params> <param key="baseAddress" defaultValue="0x24000000"/> <param key="endAddress" defaultValue="0x24200000"/> </params> <objects> <object file="integratorAP\IntegratorAP.o"/> </objects> </flashDevice> <flashDevice id="IntegratorCPDeviceLE" type="NOR" cpu="ARM7TDMI" byteOrder="LE" microLib="false"> <name value="Intel DT28F640J3A 64Mbit x2 (le)" lang="en"/> <params> <param key="baseAddress" defaultValue="0x24000000"/> <param key="endAddress" defaultValue="0x24200000"/> </params> <objects> <object file="integratorCP\IntegratorCP-le.o"/> </objects> </flashDevice> </flashDevices>
Use the flash register command
to find algorithms that are described in XML files and register
them with the debugger. For example:
flash register "usr\algorithms" # Register flash algorithms from the # directory: usr\algorithms
ARM® DS-5™ Debugger Command Reference: