This patchset supports some dfl device drivers written in userspace. In the patchset v1, the "driver_override" interface should be used to bind the DFL UIO driver to DFL devices. But there is concern that the "driver_override" interface is not OK itself. So in v2, we use a new matching algorithem. The "driver_override" interface is abandoned, the DFL UIO driver matches any DFL device which could not be handled by other DFL drivers. So the DFL UIO driver could be used for new DFL devices which are not supported by kernel, also it will not impact the devices which are already got supported. Main changes from v1: - switch to the new matching algorithem. It matches DFL devices which could not be handled by other DFL drivers. - refacor the code about device resources filling. - add the documentation. Main changes from v2: - split the match ops changes in dfl.c to an independent patch. - move the declarations needed for dfl-uio-pdev from include/linux/dfl.h to driver/fpga/dfl.h - some minor fixes. Xu Yilun (3): fpga: dfl: add the match() ops for dfl driver fpga: dfl: add the userspace I/O device support for DFL devices Documentation: fpga: dfl: Add description for DFL UIO support Documentation/fpga/dfl.rst | 27 +++++++++++ drivers/fpga/Kconfig | 10 ++++ drivers/fpga/Makefile | 1 + drivers/fpga/dfl-uio-pdev.c | 110 ++++++++++++++++++++++++++++++++++++++++++++ drivers/fpga/dfl.c | 22 +++++++-- drivers/fpga/dfl.h | 5 ++ include/linux/dfl.h | 3 ++ 7 files changed, 173 insertions(+), 5 deletions(-) create mode 100644 drivers/fpga/dfl-uio-pdev.c -- 2.7.4