aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/nvme
diff options
context:
space:
mode:
authorJavier González <jg@lightnvm.io>2016-11-28 22:38:54 +0100
committerJens Axboe <axboe@fb.com>2016-11-29 12:12:51 -0700
commitbb3149792e0ed52cf5f457dda4c9bf9c5bda1542 (patch)
tree1b85ed6347013add8d1aa00c912e6674210b27c5 /drivers/nvme
parentnvme: lightnvm: attach lightnvm sysfs to nvme block device (diff)
downloadlinux-dev-bb3149792e0ed52cf5f457dda4c9bf9c5bda1542.tar.xz
linux-dev-bb3149792e0ed52cf5f457dda4c9bf9c5bda1542.zip
lightnvm: enable to send hint to erase command
Erases might be subject to host hints. An example is multi-plane programming to erase blocks in parallel. Enable targets to specify this hint. Signed-off-by: Javier González <javier@cnexlabs.com> Signed-off-by: Matias Bjørling <m@bjorling.me> Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'drivers/nvme')
-rw-r--r--drivers/nvme/host/lightnvm.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/nvme/host/lightnvm.c b/drivers/nvme/host/lightnvm.c
index f23e6fefd262..037dff5951d4 100644
--- a/drivers/nvme/host/lightnvm.c
+++ b/drivers/nvme/host/lightnvm.c
@@ -526,6 +526,7 @@ static int nvme_nvm_erase_block(struct nvm_dev *dev, struct nvm_rq *rqd)
c.erase.nsid = cpu_to_le32(ns->ns_id);
c.erase.spba = cpu_to_le64(rqd->ppa_addr.ppa);
c.erase.length = cpu_to_le16(rqd->nr_ppas - 1);
+ c.erase.control = cpu_to_le16(rqd->flags);
return nvme_submit_sync_cmd(q, (struct nvme_command *)&c, NULL, 0);
}