XCLMGMT (PCIe Management Physical Function) Driver Interfaces¶
PCIe Kernel Driver for Managament Physical Function
Interfaces exposed by xclmgmt driver are defined in file, mgmt-ioctl.h. Core functionality provided by xclmgmt driver is described in the following table:
# |
Functionality |
ioctl request code |
data format |
---|---|---|---|
1 |
FPGA image download |
XCLMGMT_IOCICAPDOWNLOAD_AXLF |
xclmgmt_ioc_bitstream_axlf |
2 |
CL frequency scaling |
XCLMGMT_IOCFREQSCALE |
xclmgmt_ioc_freqscaling |
3 |
PCIe hot reset |
XCLMGMT_IOCHOTRESET |
NA |
4 |
CL reset |
XCLMGMT_IOCOCLRESET |
NA |
5 |
Live boot FPGA from PROM |
XCLMGMT_IOCREBOOT |
NA |
6 |
Device sensors (current, voltage and temperature) |
NA |
hwmon (xclmgmt_microblaze and xclmgmt_sysmon) interface on sysfs |
7 |
Querying device errors |
XCLMGMT_IOCERRINFO |
xclErrorStatus |
- struct xclmgmt_ioc_info
Obtain information from the device used with XCLMGMT_IOCINFO ioctl
Definition
struct xclmgmt_ioc_info {
};
Members
Description
Note that this structure will be obsoleted in future and the same functionality will be exposed via sysfs nodes
- struct xclmgmt_ioc_bitstream_axlf
load xclbin (AXLF) device image used with XCLMGMT_IOCICAPDOWNLOAD_AXLF ioctl
Definition
struct xclmgmt_ioc_bitstream_axlf {
struct axlf * xclbin;
};
Members
xclbin
Pointer to user’s xclbin structure in memory
- struct xclmgmt_ioc_freqscaling
scale frequencies on the board using Xilinx clock wizard used with XCLMGMT_IOCFREQSCALE ioctl
Definition
struct xclmgmt_ioc_freqscaling {
unsigned ocl_region;
unsigned short ocl_target_freq;
};
Members
ocl_region
PR region (currently only 0 is supported)
ocl_target_freq
Array of requested frequencies, a value o zero in the array indicates leave untouched