staging: gasket: TODO: re-implement using UIO

The gasket in-kernel framework, recently introduced under staging,
re-implements what is already long-time provided by the UIO
subsystem, with extra PCI BAR remapping and MSI conveniences.

Before moving it out of staging, make sure we add the new bits to
the UIO framework instead, then transform its signle client, the
Apex driver, to a proper UIO driver (uio_driver.h).

Link: https://lkml.kernel.org/r/20180828103817.GB1397@do-kernel

Signed-off-by: Ahmed S. Darwish <darwish.07@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Ahmed S. Darwish 2018-09-10 15:28:37 +00:00 committed by Greg Kroah-Hartman
parent f8ff6b2d4a
commit 3835841577

View File

@ -1,9 +1,22 @@
This is a list of things that need to be done to get this driver out of the
staging directory.
- Implement the gasket framework's functionality through UIO instead of
introducing a new user-space drivers framework that is quite similar.
UIO provides the necessary bits to implement user-space drivers. Meanwhile
the gasket APIs adds some extra conveniences like PCI BAR mapping, and
MSI interrupts. Add these features to the UIO subsystem, then re-implement
the Apex driver as a basic UIO driver instead (include/linux/uio_driver.h)
- Document sysfs files with Documentation/ABI/ entries.
- Use misc interface instead of major number for driver version description.
- Add descriptions of module_param's
- apex_get_status() should actually check status.
- "drivers" should never be dealing with "raw" sysfs calls or mess around with
kobjects at all. The driver core should handle all of this for you
automaically. There should not be a need for raw attribute macros.