From: Matias Bjørling <m@bjorling.me>
Date: Tue, 12 Jan 2016 06:49:26 +0000 (+0100)
Subject: lightnvm: sectors first in ppa list
X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=556755e941837ebc4b4859dd7f74f2ed2dd00fc7;p=linux.git

lightnvm: sectors first in ppa list

The Westlake controller requires that the PPA list has sectors defined
sequentially. Currently, the PPA list is created with planes first, then
sectors. Change this to sectors first, then planes.

Signed-off-by: Matias Bjørling <m@bjorling.me>
Signed-off-by: Jens Axboe <axboe@fb.com>
---

diff --git a/drivers/lightnvm/core.c b/drivers/lightnvm/core.c
index fa1a052c4737a..0c8f42fc5f01e 100644
--- a/drivers/lightnvm/core.c
+++ b/drivers/lightnvm/core.c
@@ -245,10 +245,10 @@ int nvm_set_rqd_ppalist(struct nvm_dev *dev, struct nvm_rq *rqd,
 		return -ENOMEM;
 	}
 
-	for (i = 0; i < nr_ppas; i++) {
-		for (pl_idx = 0; pl_idx < plane_cnt; pl_idx++) {
+	for (pl_idx = 0; pl_idx < plane_cnt; pl_idx++) {
+		for (i = 0; i < nr_ppas; i++) {
 			ppas[i].g.pl = pl_idx;
-			rqd->ppa_list[(i * plane_cnt) + pl_idx] = ppas[i];
+			rqd->ppa_list[(pl_idx * nr_ppas) + i] = ppas[i];
 		}
 	}