Lines Matching defs:sdhci_host
20 struct sdhci_host { struct
22 const char *hw_name; /* Hardware bus name */
24 unsigned int quirks; /* Deviations from spec. */
91 unsigned int quirks2; /* More deviations from spec. */
93 int irq; /* Device IRQ */
94 void __iomem *ioaddr; /* Mapped address */
96 const struct sdhci_ops *ops; /* Low level hw interface */
98 struct regulator *vmmc; /* Power regulator */
101 struct mmc_host *mmc; /* MMC structure */
102 u64 dma_mask; /* custom DMA mask */
105 struct led_classdev led; /* LED control */
106 char led_name[32];
109 spinlock_t lock; /* Mutex */
111 int flags; /* Host attributes */
124 unsigned int version; /* SDHCI spec. version */
126 unsigned int max_clk; /* Max possible freq (MHz) */
127 unsigned int timeout_clk; /* Timeout freq (KHz) */
128 unsigned int clk_mul; /* Clock Muliplier value */
130 unsigned int clock; /* Current clock (MHz) */
131 u8 pwr; /* Current voltage */
133 bool runtime_suspended; /* Host is runtime suspended */
135 struct mmc_request *mrq; /* Current request */
136 struct mmc_command *cmd; /* Current command */
137 struct mmc_data *data; /* Current data request */
138 unsigned int data_early:1; /* Data finished before cmd */
140 struct sg_mapping_iter sg_miter; /* SG state for PIO */
141 unsigned int blocks; /* remaining PIO blocks */
143 int sg_count; /* Mapped sg entries */
145 u8 *adma_desc; /* ADMA descriptor table */
146 u8 *align_buffer; /* Bounce buffer */
148 dma_addr_t adma_addr; /* Mapped ADMA descr. table */
149 dma_addr_t align_addr; /* Mapped bounce buffer */
151 struct tasklet_struct card_tasklet; /* Tasklet structures */
152 struct tasklet_struct finish_tasklet;
154 struct timer_list timer; /* Timer for timeouts */
156 unsigned int caps; /* Alternative capabilities */
158 unsigned int ocr_avail_sdio; /* OCR bit masks */
159 unsigned int ocr_avail_sd;
160 unsigned int ocr_avail_mmc;
162 wait_queue_head_t buf_ready_int; /* Waitqueue for Buffer Read Ready interrupt */
163 unsigned int tuning_done; /* Condition flag set when CMD19 succeeds */
165 unsigned int tuning_count; /* Timer count for re-tuning */
166 unsigned int tuning_mode; /* Re-tuning mode supported by host */
168 struct timer_list tuning_timer; /* Timer for tuning */
170 unsigned long private[0] ____cacheline_aligned;