Re: [PATCH v4] drivers/staging: Gasket driver framework + Apex driver

From: Greg Kroah-Hartman
Date: Thu Jun 28 2018 - 11:35:36 EST


On Wed, Jun 20, 2018 at 07:24:41PM -0400, Simon Que wrote:
> The Gasket (Google ASIC Software, Kernel Extensions, and Tools) kernel
> framework is a generic, flexible system that supports thin kernel
> drivers. Gasket kernel drivers are expected to handle opening and
> closing devices, mmap'ing BAR space as requested, a small selection of
> ioctls, and handling page table translation (covered below). Any other
> functions should be handled by userspace code.
>
> The Gasket common module is not enough to run a device. In order to
> customize the Gasket code for a given piece of hardware, a device
> specific module must be created. At a minimum, this module must define a
> struct gasket_driver_desc containing the device-specific data for use by
> the framework; in addition, the module must declare an __init function
> that calls gasket_register_device with the module's gasket_driver_desc
> struct. Finally, the driver must define an exit function that calls
> gasket_unregister_device with the module's gasket_driver_desc struct.
>
> One of the core assumptions of the Gasket framework is that precisely
> one process is allowed to have an open write handle to the device node
> at any given time. (That process may, once it has one write handle, open
> any number of additional write handles.) This is accomplished by
> tracking open and close data for each driver instance.
>
> Signed-off-by: Rob Springer <rspringer@xxxxxxxxxx>
> Signed-off-by: John Joseph <jnjoseph@xxxxxxxxxx>
> Signed-off-by: Simon Que <sque@xxxxxxxxxxxx>

This patch does not apply against my staging-testing tree. Or against
4.18-rc1 either, what did you make it against?

Please rebase and resend so that I can apply it.

thanks,

greg k-h