Specifying board-specific information

When you modify an existing buildfile to use it for a new board, you must specify some board-specific information.

Most of the processor- and platform-specific code for the QNX Neutrino is in the kernel and startup programs, so only minimal changes are needed modify a buildfile for one board so that it can be used for another board. You need to specify for your board:

Note: For complete information about attributes and modifiers used in buildfiles, see the mkifs documentation in the Utilities Reference.

Specifying the processor

The buildfile's virtual attribute specifies the processor, the bootstrap loader, whether the image is compressed or uncompressed, and the operating system (see Buildfile syntax in this chapter). To specify the processor, simply modify this value for this attribute. For example, for an ARM little-endian, version 7 CPU, you might change the virtual attribute to:

[virtual=armle-v7,binary]

Specifying the startup program

QNX BSPs include a startup program for the board for which the BSP has been written. If you are using a board for which no QNX BSP currently exists, you can start with a BSP for a similar board and modify the startup program (as well as other BSP component, as needed). Be sure to include the correct startup program name in your buildfile. For example:

[virtual=armle-v7,binary] .bootstrap = {
	startup-abc123
	PATH=/proc/boot procnto-smp-instr -vv
    ...
}

For more information, see the chapter Startup Programs, and startup-* options in the QNX SDP Utilities Reference.

Specifying the serial device

If there is a QNX BSP for your board, then the BSP probably includes most (if not all) the dirvers you will need. If you don't have a QNX BSP for your board, you may need to modify existing QNX drivers so that they will work with your board. For more information, see the devc-* entries in the QNX SDP Utilities Reference, and Foundry27 at community.qnx.com/sf/sfmain/do/home.