The Alveo U250 platform utilizes the DFX-2RP shell, which is different from other platforms. To utilize the user FPGA bitstream, programming of a secondary partition is required in some cases.
If you examine the U250 device using xbutil and get the output, it will indicate a base shell.
/opt/xilinx/xrt/bin/xbutil examine
System Configuration
OS Name : Linux
Release : 5.15.0-69-generic
Version : #76~20.04.1-Ubuntu SMP Mon Mar 20 15:54:19 UTC 2023
Machine : x86_64
CPU Cores : 4
Memory : 64313 MB
Distribution : Ubuntu 20.04.5 LTS
GLIBC : 2.31
Model : Standard PC (Q35 + ICH9, 2009)
XRT
Version : 2.14.354
Branch : 2022.2
Hash : 43926231f7183688add2dccfd391b36a1f000bea
Hash Date : 2022-10-08 09:49:58
XOCL : 2.14.354, 43926231f7183688add2dccfd391b36a1f000bea
XCLMGMT : 2.14.354, 43926231f7183688add2dccfd391b36a1f000bea
Devices present
BDF : Shell Platform UUID Device ID Device Ready*
--------------------------------------------------------------------------------------------------------------------
[0000:3e:00.1] : xilinx_u250_gen3x16_base_3 48810C9D-1786-0EF5-3E9E-529E8B14CE39 user(inst=128) Yes
Then, you need to program the secondary partition manually using the following command:
sudo /opt/xilinx/xrt/bin/xbmgmt program --shell /opt/xilinx/firmware/u250/gen3x16/xdma-shell/partition.xsabin --device
Programming shell on device [0000:3e:00.0]...
Partition file: /opt/xilinx/firmware/u250/gen3x16/xdma-shell/partition.xsabin
Programmed shell successfully
In case of error happened, After collecting the dmesg output, you can reboot the node by
sudo reboot
After reboot, you still need to program the secondary partition using the above command.