Thread (10 messages) 10 messages, 3 authors, 2012-02-21

Re: [PATCH v4 2/2] mmc: core: Support packed command for eMMC4.5 device

From: Namjae Jeon <hidden>
Date: 2012-02-21 02:08:47
Also in: lkml

2012/2/21  [off-list ref]:
quoted
@@ -1262,21 +1608,32 @@ static int mmc_blk_issue_rw_rq(struct mmc_queue
*mq, struct request *rqc)
      int ret = 1, disable_multi = 0, retry = 0, type;
      enum mmc_blk_status status;
      struct mmc_queue_req *mq_rq;
-     struct request *req;
+     struct request *req, *prq;
      struct mmc_async_req *areq;
+     u8 reqs = 0;

      if (!rqc && !mq->mqrq_prev->req)
              return 0;

+     if (rqc)
+             reqs = mmc_blk_prep_packed_list(mq, rqc);
+
      do {
              if (rqc) {
-                     mmc_blk_rw_rq_prep(mq->mqrq_cur, card, 0, mq);
+                     if (reqs >= card->host->packed_min)
In case host->packed_min will be set to a value bigger than 2 you will
loose all the requests that were added to the packed list. If you want to
support dynamic number of min packed requests you need to move the packed
list preparation to queue.c where you can issue the fetched requests one
after another, when (reqs < card->host->packed_min).
I don't understand why packed list preparation should be moved to
queue.c for dynamic number of packed min.
we can change packed min value via sysfs without compiling.
Would you explain more ?
quoted
+                             mmc_blk_packed_hdr_wrq_prep(mq->mqrq_cur, card, mq, reqs);
+                     else
+                             mmc_blk_rw_rq_prep(mq->mqrq_cur, card, 0, mq);
Thanks,
Maya Erez
Consultant for Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum

--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help