• Heiko Stübner's avatar
    fb_defio: add first_io callback · 1f45f9db
    Heiko Stübner authored
    With this optional callback the driver is notified when the first page
    is entered into the pagelist and a new deferred_io call is scheduled.
    
    A possible use-case for this is runtime-pm. In the first_io call
    	pm_runtime_get()
    could be called, which starts an asynchronous runtime_resume of the
    device. In the deferred_io callback a call to
    	pm_runtime_barrier()
    makes the sure, the device is resumed by then and a
    	pm_runtime_put()
    may put the device back to sleep.
    
    Also, some SoCs may use the runtime-pm system to determine if they
    are able to enter deeper idle states. Therefore it is necessary to
    keep the use-count from the first written page until the conclusion
    of the screen update, to prevent the system from going to sleep before
    completing the pending update.
    
    Two users of defio were using kmalloc to allocate the structure.
    These allocations are changed to kzalloc, to prevent uninitialised
    .first_io members in those drivers.
    Signed-off-by: default avatarHeiko Stübner <heiko@sntech.de>
    Signed-off-by: default avatarFlorian Tobias Schandinat <FlorianSchandinat@gmx.de>
    1f45f9db
smscufx.c 53.5 KB