Driver Commands
The tables below provide a summary of driver commands.
The tables list any additional libraries and binaries that are required. Default required libraries, such as libc.so and libgcc_s.so.1 aren't listed, but should be included in your buildfile.
Some of the drivers are commented out in the buildfile. To use these drivers on the target hardware, you may need to uncomment them in the buildfile, rebuild the image, and load the image onto the board.
The order that the drivers are started in the provided buildfile is one way to start them. The order that you start the drivers is completely customizable and is often specific to the requirements of your system. For example, if you need an audible sound to play immediately, you must start the audio driver earlier than other drivers. It's important to recognize that the order you choose impacts the boot time.
- For more information on best practices for building an embedded system and optimizing boot times for your system, see the Building Embedded Systems and the Boot Optimization guides in the QNX Software Development Platform 8.0 documentation.
-
For more information about the drivers and commands listed here,
see the QNX OS Utilities Reference.
This chapter provides information about BSP-specific options for any of the
commands and drivers that aren't described in the Utilities Reference.
In some cases, the driver or command is specific to this BSP,
in which cases, you'll find the information in the chapter
BSP-specific Drivers and Utilities
.
Here's the list of drivers available for this board and the order they appear in the
provided buildfile. In some cases, the driver or command is specific to this BSP, in which
case you will find the information in the BSP-specific Drivers and Utilities
chapter
of this guide.
Startup
| Device | Startup |
| Command | startup-versal-ve2302 -u -vv -D 0xFF010000.0.100000000.16 |
| Required binaries | startup-versal-ve2302 |
| Required libraries | libstartup.a |
| Source location | $BSP_ROOT_DIR/src/hardware/startup/boards/versal (common), $BSP_ROOT_DIR/src/hardware/startup/boards/versal/ve2302 (board-specific) |
For more information about the common options available for the startup-* command, see the Utilities Reference in the QNX SDP 8.0 documentation.
Clock controller
| Device | Clock controller |
| Command | clock-versal -v |
| Required binaries | clock-versal |
| Required libraries | libsecpol.so |
| Source location | $BSP_ROOT_DIR/src/hardware/support/versal/clock |
For more information about clock-versal, see the clock-versal
section in the
BSP-specific Drivers and Utilities
chapter of this guide.
Inter-integrated Circuit (I2C)
| Device | I2C0, I2C1, and I2C2 |
| Command | i2c-xzynq-versal -p0xFF020000 -i46 --u0
i2c-xzynq-versal -p0xFF030000 -i47 --u1 i2c-xzynq-versal -p0xF1000000 -i155 --u2 |
| Required binaries | i2c-xzynq-versal, isendrecv, isend |
| Required libraries | libsecpol.so |
| Source location | $BSP_ROOT_DIR/src/hardware/i2c/xzynq |
For more information about i2c-xzynq-versal driver, see the i2c-xzynq-versal
section in the
BSP-specific Drivers and Utilities
chapter of this guide.
Real-time clock (RTC)
| Device | RTC |
| Command | rtc hw |
| Required binaries | rtc, date |
| Required libraries | libc.so, libgcc_s.so |
| Source location | $BSP_ROOT_DIR/src/utils/rtc |
For more information about rtc, see the rtc
section in the
BSP-specific Drivers and Utilities
chapter of this guide.
Serial
| Device | Serial (UART2) |
| Command | devc-serpl011 -e -F -c $(get-uart-clk-versal -u1) -b115200 -u2 0xFF010000^2,51 |
| Required binaries | devc-serpl011, get-uart-clk-versal |
| Required libraries | libsecpol.so |
| Source location | $BSP_ROOT_DIR/src/hardware/devc/serpl011 |
For information about the devc-serpl011 driver,
see devc-serpl011
section in the
BSP-specific Drivers and Utilities
chapter of this guide.
Block Drivers (SDMMC + RAM)
| Device | SD card/eMMC interface and RAM block driver |
| Command (devb-sdmmc-*) | devb-sdmmc-xzynq sdio addr=0xF1050000,irq=160,timing=~hs devb-sdmmc-xzynq sdio addr=0xf1040000,irq=158,emmc disk name=emmc |
| Command (devb-ram) | devb-ram ram capacity=256,address=0xfffc0000 disk name=ocm |
| Required binaries | devb-sdmmc-xzynq, devb-ram |
| Required libraries | libcam.so, io-blk.so, cam-disk.so, cam-cdrom.so, fs-qnx6.so, fs-dos.so |
| Source location | $BSP_ROOT_DIR/src/hardware/devb/sdmmc |
For more information about this driver, see the "devb-*" section in the QNX OS Utilities Reference guide of the QNX Software Development Platform 8.0 documentation.
For information about the board-specific options for devb-sdmmc-xzynq,
see devb-sdmmc-xzynq
section in the
BSP-specific Drivers and Utilities
chapter of this guide.
USB XHCI driver
| Device | USB host |
| Command | io-usb-otg -d hcd-xzynq-xhci ioport=0xFE200000,irq=54,nousb3 |
| Required binaries | io-usb-otg, usb, devb-umass |
| Required libraries | devu-hcd-xzynq-xhci.so libhiddi.so libusbdi.so libpci.so libusbdci.so |
| Source location | Prebuilt Only |
For more information about io-usb-otg, see the "io-usb-otg" section in the QNX OS Utilities Reference guide of the QNX Software Development Platform 8.0 documentation.
For information about the devu-hcd-xzynq-xhci.so driver,
see devu-hcd-xzynq-xhci.so
section in the
BSP-specific Drivers and Utilities
chapter of this guide.
Network
| Device | Ethernet |
| Command | io-sock -m phy -m fdt -m phy_fdt -d marvell_phy -d cgem -m usb -d axe -d axge -d cdce -d smsc |
| Required binaries | io-sock, if_up, dhcpcd, dhcpcd-run-hooks, ifconfig, pfctl |
| Required libraries | devs-cgem.so, devs-marvell_phy.so, devs-axe.so, devs-axge.so, devs-cdce.so, devs-smsc.so, libsocket.so, libjail.so, libsecpol.so, mods-phy.so, mods-pci.so, mods-usb.so, mods-fdt.so, mods-phy_fdt.so, qcrypto-openssl-3.so, libtracelog.so, libqcrypto |
| Source location | Prebuilt Only |
For more information about the devs-cgem.so network driver, see the
devs-cgem.so
section in the
BSP-specific Drivers and Utilities
chapter of this guide.
Get UART clock utility
| Device | Utility to get UART clock frequency from clock controller |
| Command | See
Serial |
| Required binaries | get-uart-clk-versal |
| Required libraries | |
| Source location | $BSP_ROOT_DIR/src/hardware/support/versal/get-uart-clk |
For more information about get-uart-clk-versal utility, see the get-uart-clk-versal
section in the
BSP-specific Drivers and Utilities
chapter of this guide.
