Using VFIO vs. developing a kernel module
saiallforums at gmail.com
Thu May 27 23:23:05 AEST 2021
Our project has an FPGA connected to BMC as a PCIe endpoint. This
endpoint provides a set of registers via MMIO and an interrupt for
notifying completion of work. This endpoint also implements AER
We have two options to enable this endpoint.
1) Write a new kernel module with a character device interface for
2) Use VFIO infrastructure provided by Linux and write an user-space
I am reaching out to the community to check if there is any
recommended option, using VFIO vs. implementing a new kernel module,
or any previous experiences weighing in one option over the other.
A quick grep on https://github.com/openbmc/openbmc with CONFIG_VFIO
does not return any default configs using it.
More information about the openbmc