aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mmc
diff options
context:
space:
mode:
authorAdrian Hunter <adrian.hunter@intel.com>2014-11-04 05:42:42 -0500
committerUlf Hansson <ulf.hansson@linaro.org>2014-11-10 06:40:51 -0500
commit76fe379acaeb857f91705f3bd5c6f69ec13872a9 (patch)
tree96a20d4da17bfc7497a617c0f459ba42fd59697d /include/linux/mmc
parent1c3d5f6ddcb915c0e702cf513bad4a3b1583f48f (diff)
mmc: sdhci: Parameterize ADMA sizes and alignment
In preparation for 64-bit ADMA, parameterize ADMA sizes and alignment. 64-bit ADMA has a larger descriptor because it contains a 64-bit address instead of a 32-bit address. Also data must be 8-byte aligned instead of 4-byte aligned. Consequently, sdhci_host members are added for descriptor, table, and buffer sizes and alignment. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Diffstat (limited to 'include/linux/mmc')
-rw-r--r--include/linux/mmc/sdhci.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/linux/mmc/sdhci.h b/include/linux/mmc/sdhci.h
index 933dbbb50742..2a72e9510833 100644
--- a/include/linux/mmc/sdhci.h
+++ b/include/linux/mmc/sdhci.h
@@ -158,9 +158,16 @@ struct sdhci_host {
158 void *adma_table; /* ADMA descriptor table */ 158 void *adma_table; /* ADMA descriptor table */
159 void *align_buffer; /* Bounce buffer */ 159 void *align_buffer; /* Bounce buffer */
160 160
161 size_t adma_table_sz; /* ADMA descriptor table size */
162 size_t align_buffer_sz; /* Bounce buffer size */
163
161 dma_addr_t adma_addr; /* Mapped ADMA descr. table */ 164 dma_addr_t adma_addr; /* Mapped ADMA descr. table */
162 dma_addr_t align_addr; /* Mapped bounce buffer */ 165 dma_addr_t align_addr; /* Mapped bounce buffer */
163 166
167 unsigned int desc_sz; /* ADMA descriptor size */
168 unsigned int align_sz; /* ADMA alignment */
169 unsigned int align_mask; /* ADMA alignment mask */
170
164 struct tasklet_struct finish_tasklet; /* Tasklet structures */ 171 struct tasklet_struct finish_tasklet; /* Tasklet structures */
165 172
166 struct timer_list timer; /* Timer for timeouts */ 173 struct timer_list timer; /* Timer for timeouts */