Skip to content

nvme: APST support

Andy Lutomirski linux-nvme 4 versions – New

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v4 Latest2 patches 0 repliesNew
  2. v32 patches 0 repliesSuperseded
  3. v22 patches 0 repliesSuperseded
Earlier versions · 1
VersionPostedPatchesRepliesStatus
v13 patches0 repliesSuperseded

Changes in v4 from the cover letter

- Initialize APST in nvme_init_identify() (hch)

Patches in v4 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/2nvme: Add a quirk mechanism that uses identify_ctrldrivers/nvme/host/core.c drivers/nvme/host/nvme.h+65 -00 replies
2/2nvme: Enable autonomous power state transitionsdrivers/nvme/host/core.c drivers/nvme/host/nvme.h include/linux/nvme.h+171 -01 reply

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v4 yet.

Read the v4 thread

Cover letter [PATCH v4 0/2] [PATCH v4 0/2] nvme: APST support

As far as I can tell, APST works fine on every NVMe device I'm aware of with the single exception of a particular Samsung device. This series enables APST by default but quirks it off on the offending Samsung device. Some Samsung engineers are taking a look, and, depending on what they find, we may be able to change the quirk to work around the bug rather than disabling APST outright.

I think it would be nice to queue this up for 4.11.

Changes from v3:

- Initialize APST in nvme_init_identify() (hch)

Changes from v2:

- Remove a stray newline.
- Use switch when translating pm_qos args to latency (Christoph)
- I did *not* change the initialization sequence. If we want to do that, can it be a followup patch?

Changes from v1:

- Fix a totally wrong comment in the quirk code (me)
- Add a comment about not redetecting quirks after reset (Keith)
- Rearrange the series to avoid bisection problems (Jens)

Once fully applied, v1 and v2 only differ in their comments.

Changes from before:

- Rebased to linux-block/for-next.
- I added a quirk for the known-bad Samsung device.
- It's fully integrated with dev_pm_qos.
- I now program APST after all the queues are set up, which seems safer. (This didn't fix the Samsung problem, though.)

Andy Lutomirski (2):
nvme: Add a quirk mechanism that uses identify_ctrl
nvme: Enable autonomous power state transitions

 drivers/nvme/host/core.c | 218 +++++++++++++++++++++++++++++++++++++++++++++++
 drivers/nvme/host/nvme.h |  12 +++
 include/linux/nvme.h     |   6 ++
 3 files changed, 236 insertions(+)
Signature · 1 line
2.9.3