Using VFIO vs. developing a kernel module

sainath grandhi saiallforums at
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
user-space interaction.
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 with CONFIG_VFIO
does not return any default configs using it.

Please advise.

More information about the openbmc mailing list