• Sujit Reddy Thumma's avatar
    [SCSI] ufs: Add support for host assisted background operations · 66ec6d59
    Sujit Reddy Thumma authored
    Background operations in the UFS device can be disabled by
    the host to reduce the response latency of transfer requests.
    Add support for enabling/disabling the background operations
    during runtime suspend/resume of the device.
    
    If the device is in critical need of BKOPS it will raise an
    URGENT_BKOPS exception which should be handled by the host to
    make sure the device performs as expected.
    
    During bootup, the BKOPS is enabled in the device by default.
    The disable of BKOPS is supported only when the driver supports
    runtime suspend/resume operations as the runtime PM framework
    provides a way to determine the device idleness and hence BKOPS
    can be managed effectively. During runtime resume the BKOPS is
    disabled to reduce latency and during runtime suspend the BKOPS
    is enabled to allow device to carry out idle time BKOPS.
    
    In some cases where the BKOPS is disabled during runtime resume
    and due to continuous data transfers the runtime suspend is not
    triggered, the BKOPS is enabled when the device raises a level-2
    exception (outstanding operations - performance impact).
    Signed-off-by: default avatarSujit Reddy Thumma <sthumma@codeaurora.org>
    Signed-off-by: default avatarSantosh Y <santoshsy@gmail.com>
    Signed-off-by: default avatarJames Bottomley <JBottomley@Parallels.com>
    66ec6d59
ufs.h 8.79 KB