diff options
author | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2019-08-07 17:51:21 +1000 |
---|---|---|
committer | Sagi Grimberg <sagi@grimberg.me> | 2019-08-29 12:55:02 -0700 |
commit | 66341331ba0d2de4ff421cdc401a1e34de50502a (patch) | |
tree | b9eb97513ccd77c323a3a725a252e0c5e720ed9b /drivers/nvme/host/nvme.h | |
parent | nvme-pci: Add support for variable IO SQ element size (diff) | |
download | linux-dev-66341331ba0d2de4ff421cdc401a1e34de50502a.tar.xz linux-dev-66341331ba0d2de4ff421cdc401a1e34de50502a.zip |
nvme-pci: Add support for Apple 2018+ models
Based on reverse engineering and original patch by
Paul Pawlowski <paul@mrarm.io>
This adds support for Apple weird implementation of NVME in their
2018 or later machines. It accounts for the twice-as-big SQ entries
for the IO queues, and the fact that only interrupt vector 0 appears
to function properly.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Reviewed-by: Minwoo Im <minwoo.im.dev@gmail.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
Diffstat (limited to '')
-rw-r--r-- | drivers/nvme/host/nvme.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/nvme/host/nvme.h b/drivers/nvme/host/nvme.h index 9656f863ea40..21eb48d3385d 100644 --- a/drivers/nvme/host/nvme.h +++ b/drivers/nvme/host/nvme.h @@ -94,6 +94,16 @@ enum nvme_quirks { * Broken Write Zeroes. */ NVME_QUIRK_DISABLE_WRITE_ZEROES = (1 << 9), + + /* + * Use only one interrupt vector for all queues + */ + NVME_QUIRK_SINGLE_VECTOR = (1 << 10), + + /* + * Use non-standard 128 bytes SQEs. + */ + NVME_QUIRK_128_BYTES_SQES = (1 << 11), }; /* |