Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 38da06a7 authored by Gilad Broner's avatar Gilad Broner Committed by David Keitel
Browse files

scsi: ufs: update pm qos implementation



Current UFS PM QoS design and implementation do not seem to give
the desired increase in performance. This change revisits the
PM QoS implementation trying to improve performance by making
the following changes:
* de-couple voting from clock scaling decision so voting
  occurs from the first request and unvoting on the completion
  of the last request regardless to clock scaling state.
  Otherwise, suspending the PM QoS voting during the time it takes
  to decide on clock up-scaling, seems to degrade random access
  performance.
* vote on a per-cluster basis by inspecting the request object's
  cpu field. This follows the soft-irq allocation scheme in the
  block layer, so the cpu to which the block layer schedules the
  soft-irq will not be put into deep LPM.
  We should note that PM QoS voting using cpu mask for specific
  cpus is a feature of the qcom specific PM QoS implementation.

Change-Id: I427d202aeb45cd284a3bb128e26e519212614801
Signed-off-by: default avatarGilad Broner <gbroner@codeaurora.org>
Signed-off-by: default avatarKrishna Konda <kkonda@codeaurora.org>
[venkatg@codeaurora.org: resolved merge conflicts]
Signed-off-by: default avatarVenkat Gopalakrishnan <venkatg@codeaurora.org>
parent 58b61083
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment