Configuration files in board-specific directories define how partitions and the final target image are configured and
assembled.
These board-specific and board-variant-specific configuration files
list the configuration files mksysimage.py must use to
generate a target image, and specify the boot and partition configurations for the final
target image.
For example, the
$QNX_DEPLOYMENT_WORKSPACE/infra/boards/rcarh3spre.ext/
directory has:
- the ifs directory, which has media-specific configuration (e.g., fileset) files, and build
(*.build) files
- the mksysimage.py directory, which has the board-specific mksysimage.py
configuration file (e.g., rcarh3spre-mksysimage.cfg), and
build configuration files
- lists of profile and fileset files
The mksysimage.py configuration files
The files in the mksysimage.py directory (e.g., rcarh3spre-mksysimage.cfg,
rcarh3spre-mksysimage.cfg) are the top-level configuration files.
They describe how the filesets specified by the os.xml and
dos.xml files fit into a filesystem that
mksysimage.py generates and incorporates into a disk image.
For example, rcarh3spre-mksysimage.cfg looks like this:
[sd]
qnx-ifs=rcarh3spre-sd.ifs
image-profiles=os.xml,dos.xml
image-config=rcarh3spre-sd.cfg
[sd-emmc-boot]
qnx-ifs=rcarh3spre-sd-emmc.ifs
image-profiles=dos.xml
image-config=rcarh3spre-sd-emmc-boot.cfg
[sd-emmc-system]
qnx-ifs=rcarh3spre-sd-emmc.ifs
image-profiles=os.xml
image-config=rcarh3spre-sd-emmc-system.cfg
The contents of this configuration file reveal an SD image variant for a
Renesas R-Car H3 Starter Kit Premier (R-Car H3 Starter) board (sd),
which defines the following:
- qnx-ifs
- The ifs image name used as the default bootup IFS
(rcarh3spre-sd-ifs).
- os.xml and dos.xml
- The profiles used to generate the image files (see Profiles).
- rcarh3spre-sd.cfg
- The configuration file that specifies the partition sizes and
configuration, and the configuration and assembly of the final
target image file (see The system image geometry configuration files below).
The system image geometry configuration files
A variant-specific configuration file specifies the following:
-
[disk]
- This section doesn't specify a partition, but determines the size of the image and of the
partitions. This section is required, must not be empty, must appear first in the file, and must be
called [disk].
- heads
- The number of heads for the data medium used.
- sectors_per_track
- The number of sectors for each track for the data medium used.
- cylinders
- The number of cylinders for the data medium.
- sector_size
- The size of the sectors used to store the data.
-
[partition_name]
- A partition in the image. In the example below, [boot] is the first partition and
contains boot information.
-
path
- Identifies the mountpoint of the partition.
-
type
- Identifies the type of partition.
-
num_sectors
- The number of sectors for the partition.
- order
- The order for the specified partition in the image. If the order is 1, it's the
bootable partition.
For example, the contents of a variant-specific configuration file might look like this:
[disk]
heads=64
sectors_per_track=32
cylinders=3724
sector_size=512
[boot]
path=/dos
type=12
num_sectors=262144
order=1
[base]
path=/base
type=179
num_sectors=2039808
order=2
[data]
path=/
type=178
num_sectors=5322752
order=3
The previous example specifies three partitions:
- [boot] is of type 12 (FAT), has a partition
order of 1 (it's the first partition in the image), and is located at /dos.
The configuration file used with
mksysimage.py will indicate that this first partition is the boot
ifs, and that the ifs file will be renamed to
qnx-ifs.
- [base] is of type 179 (QNX Power-Safe), has a partition order of 2, and is located at
/base.
- [data] is of type 178 (QNX Power-Safe), has a partition order of 3, and is located at
/ (the root).