U-boot Drivers

This page is intended to give more details on the Xilinx drivers for U-boot, such as testing, how to use the drivers, etc. The drivers included in the u-boot tree are intended to run on ARM (Zynq,
Zynq Ultrascale+ MPSoC) and MicroBlaze u-boot

Driver Information

There are a number of drivers in the u-boot tree and they may work, but the following list of drivers are currently what's tested and users are encouraged to use these rather than others. Any other drivers, not in the mainline and only in the Xilinx tree, may be old and obsolete such that they could be removed at any time.

Component
Platform/IP core
Link
In Mainline
Location
Comment
i2c
Zynq and ZynqMP
i2c driver
Yes
drivers/i2c/zynq_i2c.c and
drivers/i2c/i2c-cdns.c

SD controller
Zynq and ZynqMP
mmc driver
Yes
drivers/mmc/zynq_sdhci.c

GEM
Zynq and ZynqMP
ethernet driver
Yes
drivers/net/zynq_gem.c

QSPI
Zynq and ZynqMP
qspi driver

drivers/spi/zynqmp_qspi.c and
drivers/spi/zynq_qspi.c
drivers/spi/zynqmp_qspi.c
is not in mainline
USB
Zynq and ZynqMP
usb driver
Yes
drivers/usb/host/xhci-zynqmp.c and
drivers/usb/host/ehci-zynq.c

nand
Zynq and ZynqMP
nand driver
Yes
drivers/mtd/nand/zynq_nand.c and
drivers/mtd/nand/arasan_nfc.c

gpio
Zynq and ZynqMP
gpio driver
Yes
drivers/gpio/zynq_gpio.c and

drivers/gpio/xilinx_gpio.c