Messages in this thread | | | Date | Tue, 28 Aug 2018 10:38:17 +0000 | From | "Ahmed S. Darwish" <> | Subject | Re: [GIT PULL] Staging/IIO driver patches for 4.19-rc1 |
| |
[ re-send; forgotten lkml CC added; sorry ]
Hi,
On Sat, 18 Aug 2018 17:57:24 +0200, Greg KH wrote: [...] > addition of some new IIO drivers. Also added was a "gasket" driver from > Google that needs loads of work and the erofs filesystem. >
Why are we adding __a whole new in-kernel framework__ for developing basic user-space drivers?
We already have a frameowrk for that, and it's UIO. [1] The UIO code is a very stable and simple subsystem; it's also heavily used in the embedded industry..
I've looked at the gasket documentation [2], and the first user of this new in-kernel API [3], and this is almost replicating UIO it's not funny. [4] True, the gasket APIs adds some extra new conveniences (PCI BAR re-mapping, MSI, ..), but there's no technical reason this cannot be added to the UIO code instead.
More-over, the exposed user-space API is just some ioctls. So if google hase some shipped user-space code that is using this, hopefully the driver can still be re-implemented through UIO without changing these bits..
Thanks,
[1] https://www.kernel.org/doc/html/v4.18/driver-api/uio-howto.html [2] drivers/staging/gasket/gasket_core.h :: struct gasket_driver_desc [3] drivers/staging/gasket/apex_driver.c [4] include/linux/uio_driver.h
-- Darwi http://darwish.chasingpointers.com
| |