Each device type in LAVA defines a template to describe the features of that device type, and how LAVA can use it. A device dictionary customises that template to include the data for one specific instance of that device. This includes details like the commands to connect specific serial ports for this device, commands to operate remote power control, device serial numbers and elements of the network topology for vland support.
Other fields can also be used in the templates. The only field which is compulsory is extends which links this device dictionary to a specific device type template.
Dictionary elements are shown in four blocks: commands, connections, vland and others.
sleep
.fastboot
to connect to this
device.fastboot
command.connection_list - the list of hardware ports which are configured for serial connections to the device.
connection_commands - a dictionary of the commands to start each connection.
connection_tags - Each connection can include tags
- extra pieces of
metadata to describe the connection.
There must always be one (and only one) connection with the primary
tag,
denoting the connection that will be used for firmware, bootloader and kernel
interaction.
Other tags may describe the type of connection, as extra information that
LAVA can use to determine how to close the connection cleanly when a job
finishes (e.g telnet
and ssh
).
See also
sysfs
path of
the interface associated with the interface label on that device.The “download” button present in the device dictionary page is used to download a YAML file of the device dictionary, which is the equivalent of contents returned by get-pipeline-device-config in lava-tool. This file is not intended for admin support and cannot be used to modify the device dictionary itself.