diff options
author | Matthew Wilcox <matthew.r.wilcox@intel.com> | 2011-03-22 15:55:45 -0400 |
---|---|---|
committer | Matthew Wilcox <matthew.r.wilcox@intel.com> | 2011-11-04 15:53:01 -0400 |
commit | 7f53f9d2424533256ae86f7df5661a17de743de8 (patch) | |
tree | 93dc08a0de9ac52dca9479dc6c36808f431c1988 /drivers/block | |
parent | 8ef700678f65e2eef1c3a94cdedb79d757608392 (diff) |
NVMe: Correct the Controller Configuration settings
The arbitration field was extended by one bit, shifting the shutdown
notification bits by one. Also, the SQ/CQ entry size was made
configurable for future extensions.
Reported-by: Paul Luse <paul.e.luse@intel.com>
Signed-off-by: Matthew Wilcox <matthew.r.wilcox@intel.com>
Diffstat (limited to 'drivers/block')
-rw-r--r-- | drivers/block/nvme.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/block/nvme.c b/drivers/block/nvme.c index d3eeca5a3c4c..014a7f6e39bc 100644 --- a/drivers/block/nvme.c +++ b/drivers/block/nvme.c | |||
@@ -905,6 +905,7 @@ static int __devinit nvme_configure_admin_queue(struct nvme_dev *dev) | |||
905 | dev->ctrl_config = NVME_CC_ENABLE | NVME_CC_CSS_NVM; | 905 | dev->ctrl_config = NVME_CC_ENABLE | NVME_CC_CSS_NVM; |
906 | dev->ctrl_config |= (PAGE_SHIFT - 12) << NVME_CC_MPS_SHIFT; | 906 | dev->ctrl_config |= (PAGE_SHIFT - 12) << NVME_CC_MPS_SHIFT; |
907 | dev->ctrl_config |= NVME_CC_ARB_RR | NVME_CC_SHN_NONE; | 907 | dev->ctrl_config |= NVME_CC_ARB_RR | NVME_CC_SHN_NONE; |
908 | dev->ctrl_config |= NVME_CC_IOSQES | NVME_CC_IOCQES; | ||
908 | 909 | ||
909 | writel(0, &dev->bar->cc); | 910 | writel(0, &dev->bar->cc); |
910 | writel(aqa, &dev->bar->aqa); | 911 | writel(aqa, &dev->bar->aqa); |