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.
Here's the list of drivers available for this board and the order they appear in the provided buildfile:
Clock controller
Device | Clock controller |
Command | clock-xzynq |
Required binaries | clock-xzynq |
Required libraries | libsecpol.so |
Source location | $BSP_ROOT_DIR/src/hardware/support/xzynq/clock |
For more information about clock-xzynq, see the clock-xzynq
section in the
BSP-specific Drivers and Utilities
chapter of this guide.
Flash driver
Device | NOR Flash (QSPI) |
Command | devf-xzynq-qspi -v -s verbose=2,numcs=1,soc=input_clk=80000000:bus_speed=40000000: irq=47:base_addr=0xFF0F0100:delay_addr=0xFF180390: rst_addr=0xFF5E0238:clk_id=21 |
Required binaries | devf-xzynq-qspi, flashctl |
Required libraries | libsecpol.so |
Source location | $BSP_ROOT_DIR/src/hardware/flash/boards/xzynq-qspi |
For information about the devf-xzynq-qspi driver,
see devf-xzynq-qspi
section in the
BSP-specific Drivers and Utilities
chapter of this guide.
Inter-integrated Circuit (I2C)
Device | I2C1 |
Command | i2c-xzynq -p 0xFF030000 -i 50 --u1 & |
Required binaries | i2c-xzynq, isendrecv, isend |
Required libraries | libsecpol.so |
Source location | $BSP_ROOT_DIR/src/hardware/i2c/xzynq |
For more information about i2c-xzynq driver, see the i2c-xzynq
section in the
BSP-specific Drivers and Utilities
chapter of this guide.
Network
Device | Ethernet |
Command | io-sock -m phy -m fdt -d adinphy -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-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, devs-adinphy.so, qcrypto-openssl-3.so, libtracelog.so, libqcrypto |
Source location | Prebuilt Only |
Serial
Device | Serial (UART1) |
Command | devc-serxzynq -e -F -S 0xFF000000,53 0xFF010000,54 |
Required binaries | devc-serxzynq |
Required libraries | libsecpol.so |
Source location | $BSP_ROOT_DIR/src/hardware/devc/serxzynq |
For information about the devc-serxzynq driver,
see devc-serxzynq
section in the
BSP-specific Drivers and Utilities
chapter of this guide.
SPI
Device | SPI (SPI0, SPI1) |
Command | spi-xzynq-ultrascale |
Required binaries | spi-xzynq-ultrascale |
Required libraries | libsecpol.so |
Configuration files | /etc/system/config/spi/spi.conf |
Source location | $BSP_ROOT_DIR/src/hardware/spi/xzynq |
For information about the spi-xzynq-ultrascale driver,
see spi-xzynq-ultrascale
section in the
BSP-specific Drivers and Utilities
chapter of this guide.
Startup
Device | Startup |
Command | startup-xzynq-kd240 -v |
Required binaries | startup-xzynq-kd240 |
Required libraries | |
Source location | $BSP_ROOT_DIR/src/hardware/startup/boards/xzynq/kd240 |
In addition to the common options available for the startup-* command as described in the Utilities Reference in the QNX SDP 8.0 documentation, this driver supports these options:
- -a <AXI INTC base address>,<GIC IRQ #>[,<GIC IRQ trigger mode>]
-
Configure the AXI INTC controller(s) present in the PL image. <GIC IRQ trigger mode> should be 0 for level-triggered (the default)
or 1 for edge-triggered. A maximum of 4 INTC controllers can be configured.
Ex:
Configure an INTC with base address 0x80042000 connected to level-triggered GIC IRQ 141. Also configure a second INTC with base address 0x80043000 connected to edge-triggered GIC IRQ 142.startup-xzynq-kd240 -v -a0x80042000,141 -a0x80043000,142,1
USB XHCI driver
Device | USB host |
Command | io-usb-otg -d hcd-xzynq-xhci ioport=0xFE200000,irq=97 |
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.
Flex CAN Controller
Device | Flex CAN |
Command | devcan-xzynq mpsoccan1 |
Required binaries | devcan-xzynq |
Required libraries | N/A |
Source location | $BSP_ROOT_DIR/src/hardware/can/xzynq |
For more information about devcan-xzynq, see the devcan-xzynq
section in the
BSP-specific Drivers and Utilities
chapter of this guide.