1. 28 5月, 2014 1 次提交
  2. 07 9月, 2013 2 次提交
  3. 26 8月, 2013 3 次提交
    • S
      [SCSI] ufs: Add support for host assisted background operations · 66ec6d59
      Sujit Reddy Thumma 提交于
      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: NSujit Reddy Thumma <sthumma@codeaurora.org>
      Signed-off-by: NSantosh Y <santoshsy@gmail.com>
      Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
      66ec6d59
    • D
      [SCSI] ufs: Set fDeviceInit flag to initiate device initialization · 68078d5c
      Dolev Raviv 提交于
      Allow UFS device to complete its initialization and accept
      SCSI commands by setting fDeviceInit flag. The device may take
      time for this operation and hence the host should poll until
      fDeviceInit flag is toggled to zero. This step is mandated by
      UFS device specification for device initialization completion.
      Signed-off-by: NDolev Raviv <draviv@codeaurora.org>
      Signed-off-by: NSujit Reddy Thumma <sthumma@codeaurora.org>
      Signed-off-by: NSantosh Y <santoshsy@gmail.com>
      Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
      68078d5c
    • S
      [SCSI] ufs: Add support for sending NOP OUT UPIU · 5a0b0cb9
      Sujit Reddy Thumma 提交于
      As part of device initialization sequence, sending NOP OUT UPIU and
      waiting for NOP IN UPIU response is mandatory. This confirms that the
      device UFS Transport (UTP) layer is functional and the host can configure
      the device with further commands. Add support for sending NOP OUT UPIU to
      check the device connection path and test whether the UTP layer on the
      device side is functional during initialization.
      
      A tag is acquired from the SCSI tag map space in order to send the device
      management command. When the tag is acquired by internal command the scsi
      command is rejected with host busy flag in order to requeue the request.
      To avoid frequent collisions between internal commands and scsi commands
      the device management command tag is allocated in the opposite direction
      w.r.t block layer tag allocation.
      Signed-off-by: NSujit Reddy Thumma <sthumma@codeaurora.org>
      Signed-off-by: NDolev Raviv <draviv@codeaurora.org>
      Signed-off-by: NSantosh Y <santoshsy@gmail.com>
      Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
      5a0b0cb9
  4. 29 6月, 2013 3 次提交
  5. 26 2月, 2013 1 次提交