• Home
  • Raw
  • Download

Lines Matching +full:no +full:- +full:mmc

6 pre-fetch makes the cache overhead relatively significant. If the DMA
8 transfer, the DMA preparation overhead would not affect the MMC performance.
9 The intention of non-blocking (asynchronous) MMC requests is to minimize the
10 time between when an MMC request ends and another MMC request begins.
11 Using mmc_wait_for_req(), the MMC controller is idle while dma_map_sg and
12 dma_unmap_sg are processing. Using non-blocking MMC requests makes it
14 MMC request.
16 MMC block driver
19 The mmc_blk_issue_rw_rq() in the MMC block driver is made non-blocking.
22 a request and how fast the memory is. The faster the MMC/SD is the
32 https://wiki.linaro.org/WorkingGroups/Kernel/Specs/StoragePerfMMC-async-req
34 MMC core API extension
38 It starts a new MMC command request for a host. The function isn't
39 truly non-blocking. If there is an ongoing async request it waits
41 doesn't wait for the new request to complete. If there is no ongoing
44 MMC host extensions
47 There are two optional members in the mmc_host_ops -- pre_req() and
48 post_req() -- that the host driver may implement in order to move work
57 with the previous transfer, since there is no previous request.
58 The argument is_first_req in pre_req() indicates that there is no previous
66 if (is_first_req && req->size > threshold)
67 /* start MMC transfer for the complete transfer size */
71 * Begin to prepare DMA while cmd is being processed by MMC.
73 * to prepare as the "MMC process command time".
74 * If prepare time exceeds MMC cmd time
79 dma_issue_pending(req->dma_desc);
83 * The second issue_pending should be called before MMC runs out
84 * of the first chunk. If the MMC runs out of the first data chunk
87 dma_issue_pending(req->dma_desc);