cq_host            35 drivers/mmc/host/cqhci.c static inline u8 *get_desc(struct cqhci_host *cq_host, u8 tag)
cq_host            37 drivers/mmc/host/cqhci.c 	return cq_host->desc_base + (tag * cq_host->slot_sz);
cq_host            40 drivers/mmc/host/cqhci.c static inline u8 *get_link_desc(struct cqhci_host *cq_host, u8 tag)
cq_host            42 drivers/mmc/host/cqhci.c 	u8 *desc = get_desc(cq_host, tag);
cq_host            44 drivers/mmc/host/cqhci.c 	return desc + cq_host->task_desc_len;
cq_host            47 drivers/mmc/host/cqhci.c static inline dma_addr_t get_trans_desc_dma(struct cqhci_host *cq_host, u8 tag)
cq_host            49 drivers/mmc/host/cqhci.c 	return cq_host->trans_desc_dma_base +
cq_host            50 drivers/mmc/host/cqhci.c 		(cq_host->mmc->max_segs * tag *
cq_host            51 drivers/mmc/host/cqhci.c 		 cq_host->trans_desc_len);
cq_host            54 drivers/mmc/host/cqhci.c static inline u8 *get_trans_desc(struct cqhci_host *cq_host, u8 tag)
cq_host            56 drivers/mmc/host/cqhci.c 	return cq_host->trans_desc_base +
cq_host            57 drivers/mmc/host/cqhci.c 		(cq_host->trans_desc_len * cq_host->mmc->max_segs * tag);
cq_host            60 drivers/mmc/host/cqhci.c static void setup_trans_desc(struct cqhci_host *cq_host, u8 tag)
cq_host            65 drivers/mmc/host/cqhci.c 	link_temp = get_link_desc(cq_host, tag);
cq_host            66 drivers/mmc/host/cqhci.c 	trans_temp = get_trans_desc_dma(cq_host, tag);
cq_host            68 drivers/mmc/host/cqhci.c 	memset(link_temp, 0, cq_host->link_desc_len);
cq_host            69 drivers/mmc/host/cqhci.c 	if (cq_host->link_desc_len > 8)
cq_host            72 drivers/mmc/host/cqhci.c 	if (tag == DCMD_SLOT && (cq_host->mmc->caps2 & MMC_CAP2_CQE_DCMD)) {
cq_host            79 drivers/mmc/host/cqhci.c 	if (cq_host->dma64) {
cq_host            90 drivers/mmc/host/cqhci.c static void cqhci_set_irqs(struct cqhci_host *cq_host, u32 set)
cq_host            92 drivers/mmc/host/cqhci.c 	cqhci_writel(cq_host, set, CQHCI_ISTE);
cq_host            93 drivers/mmc/host/cqhci.c 	cqhci_writel(cq_host, set, CQHCI_ISGE);
cq_host           101 drivers/mmc/host/cqhci.c static void cqhci_dumpregs(struct cqhci_host *cq_host)
cq_host           103 drivers/mmc/host/cqhci.c 	struct mmc_host *mmc = cq_host->mmc;
cq_host           108 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_CAP),
cq_host           109 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_VER));
cq_host           111 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_CFG),
cq_host           112 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_CTL));
cq_host           114 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_IS),
cq_host           115 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_ISTE));
cq_host           117 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_ISGE),
cq_host           118 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_IC));
cq_host           120 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_TDLBA),
cq_host           121 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_TDLBAU));
cq_host           123 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_TDBR),
cq_host           124 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_TCN));
cq_host           126 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_DQS),
cq_host           127 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_DPT));
cq_host           129 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_TCLR),
cq_host           130 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_SSC1));
cq_host           132 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_SSC2),
cq_host           133 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_CRDCT));
cq_host           135 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_RMEM),
cq_host           136 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_TERRI));
cq_host           138 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_CRI),
cq_host           139 drivers/mmc/host/cqhci.c 		   cqhci_readl(cq_host, CQHCI_CRA));
cq_host           141 drivers/mmc/host/cqhci.c 	if (cq_host->ops->dumpregs)
cq_host           142 drivers/mmc/host/cqhci.c 		cq_host->ops->dumpregs(mmc);
cq_host           162 drivers/mmc/host/cqhci.c static int cqhci_host_alloc_tdl(struct cqhci_host *cq_host)
cq_host           167 drivers/mmc/host/cqhci.c 	if (cq_host->caps & CQHCI_TASK_DESC_SZ_128) {
cq_host           168 drivers/mmc/host/cqhci.c 		cqhci_writel(cq_host, cqhci_readl(cq_host, CQHCI_CFG) |
cq_host           170 drivers/mmc/host/cqhci.c 		cq_host->task_desc_len = 16;
cq_host           172 drivers/mmc/host/cqhci.c 		cq_host->task_desc_len = 8;
cq_host           180 drivers/mmc/host/cqhci.c 	if (cq_host->dma64) {
cq_host           181 drivers/mmc/host/cqhci.c 		if (cq_host->quirks & CQHCI_QUIRK_SHORT_TXFR_DESC_SZ)
cq_host           182 drivers/mmc/host/cqhci.c 			cq_host->trans_desc_len = 12;
cq_host           184 drivers/mmc/host/cqhci.c 			cq_host->trans_desc_len = 16;
cq_host           185 drivers/mmc/host/cqhci.c 		cq_host->link_desc_len = 16;
cq_host           187 drivers/mmc/host/cqhci.c 		cq_host->trans_desc_len = 8;
cq_host           188 drivers/mmc/host/cqhci.c 		cq_host->link_desc_len = 8;
cq_host           192 drivers/mmc/host/cqhci.c 	cq_host->slot_sz = cq_host->task_desc_len + cq_host->link_desc_len;
cq_host           194 drivers/mmc/host/cqhci.c 	cq_host->desc_size = cq_host->slot_sz * cq_host->num_slots;
cq_host           196 drivers/mmc/host/cqhci.c 	cq_host->data_size = cq_host->trans_desc_len * cq_host->mmc->max_segs *
cq_host           197 drivers/mmc/host/cqhci.c 		cq_host->mmc->cqe_qdepth;
cq_host           200 drivers/mmc/host/cqhci.c 		 mmc_hostname(cq_host->mmc), cq_host->desc_size, cq_host->data_size,
cq_host           201 drivers/mmc/host/cqhci.c 		 cq_host->slot_sz);
cq_host           209 drivers/mmc/host/cqhci.c 	cq_host->desc_base = dmam_alloc_coherent(mmc_dev(cq_host->mmc),
cq_host           210 drivers/mmc/host/cqhci.c 						 cq_host->desc_size,
cq_host           211 drivers/mmc/host/cqhci.c 						 &cq_host->desc_dma_base,
cq_host           213 drivers/mmc/host/cqhci.c 	if (!cq_host->desc_base)
cq_host           216 drivers/mmc/host/cqhci.c 	cq_host->trans_desc_base = dmam_alloc_coherent(mmc_dev(cq_host->mmc),
cq_host           217 drivers/mmc/host/cqhci.c 					      cq_host->data_size,
cq_host           218 drivers/mmc/host/cqhci.c 					      &cq_host->trans_desc_dma_base,
cq_host           220 drivers/mmc/host/cqhci.c 	if (!cq_host->trans_desc_base) {
cq_host           221 drivers/mmc/host/cqhci.c 		dmam_free_coherent(mmc_dev(cq_host->mmc), cq_host->desc_size,
cq_host           222 drivers/mmc/host/cqhci.c 				   cq_host->desc_base,
cq_host           223 drivers/mmc/host/cqhci.c 				   cq_host->desc_dma_base);
cq_host           224 drivers/mmc/host/cqhci.c 		cq_host->desc_base = NULL;
cq_host           225 drivers/mmc/host/cqhci.c 		cq_host->desc_dma_base = 0;
cq_host           230 drivers/mmc/host/cqhci.c 		 mmc_hostname(cq_host->mmc), cq_host->desc_base, cq_host->trans_desc_base,
cq_host           231 drivers/mmc/host/cqhci.c 		(unsigned long long)cq_host->desc_dma_base,
cq_host           232 drivers/mmc/host/cqhci.c 		(unsigned long long)cq_host->trans_desc_dma_base);
cq_host           234 drivers/mmc/host/cqhci.c 	for (; i < (cq_host->num_slots); i++)
cq_host           235 drivers/mmc/host/cqhci.c 		setup_trans_desc(cq_host, i);
cq_host           240 drivers/mmc/host/cqhci.c static void __cqhci_enable(struct cqhci_host *cq_host)
cq_host           242 drivers/mmc/host/cqhci.c 	struct mmc_host *mmc = cq_host->mmc;
cq_host           245 drivers/mmc/host/cqhci.c 	cqcfg = cqhci_readl(cq_host, CQHCI_CFG);
cq_host           250 drivers/mmc/host/cqhci.c 		cqhci_writel(cq_host, cqcfg, CQHCI_CFG);
cq_host           258 drivers/mmc/host/cqhci.c 	if (cq_host->caps & CQHCI_TASK_DESC_SZ_128)
cq_host           261 drivers/mmc/host/cqhci.c 	cqhci_writel(cq_host, cqcfg, CQHCI_CFG);
cq_host           263 drivers/mmc/host/cqhci.c 	cqhci_writel(cq_host, lower_32_bits(cq_host->desc_dma_base),
cq_host           265 drivers/mmc/host/cqhci.c 	cqhci_writel(cq_host, upper_32_bits(cq_host->desc_dma_base),
cq_host           268 drivers/mmc/host/cqhci.c 	cqhci_writel(cq_host, cq_host->rca, CQHCI_SSC2);
cq_host           270 drivers/mmc/host/cqhci.c 	cqhci_set_irqs(cq_host, 0);
cq_host           274 drivers/mmc/host/cqhci.c 	cqhci_writel(cq_host, cqcfg, CQHCI_CFG);
cq_host           278 drivers/mmc/host/cqhci.c 	if (cq_host->ops->enable)
cq_host           279 drivers/mmc/host/cqhci.c 		cq_host->ops->enable(mmc);
cq_host           284 drivers/mmc/host/cqhci.c 	cqhci_set_irqs(cq_host, CQHCI_IS_MASK);
cq_host           286 drivers/mmc/host/cqhci.c 	cq_host->activated = true;
cq_host           289 drivers/mmc/host/cqhci.c static void __cqhci_disable(struct cqhci_host *cq_host)
cq_host           293 drivers/mmc/host/cqhci.c 	cqcfg = cqhci_readl(cq_host, CQHCI_CFG);
cq_host           295 drivers/mmc/host/cqhci.c 	cqhci_writel(cq_host, cqcfg, CQHCI_CFG);
cq_host           297 drivers/mmc/host/cqhci.c 	cq_host->mmc->cqe_on = false;
cq_host           299 drivers/mmc/host/cqhci.c 	cq_host->activated = false;
cq_host           304 drivers/mmc/host/cqhci.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host           306 drivers/mmc/host/cqhci.c 	if (cq_host->enabled)
cq_host           307 drivers/mmc/host/cqhci.c 		__cqhci_disable(cq_host);
cq_host           322 drivers/mmc/host/cqhci.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host           325 drivers/mmc/host/cqhci.c 	if (cq_host->enabled)
cq_host           328 drivers/mmc/host/cqhci.c 	cq_host->rca = card->rca;
cq_host           330 drivers/mmc/host/cqhci.c 	err = cqhci_host_alloc_tdl(cq_host);
cq_host           334 drivers/mmc/host/cqhci.c 	__cqhci_enable(cq_host);
cq_host           336 drivers/mmc/host/cqhci.c 	cq_host->enabled = true;
cq_host           339 drivers/mmc/host/cqhci.c 	cqhci_dumpregs(cq_host);
cq_host           347 drivers/mmc/host/cqhci.c static u32 cqhci_read_ctl(struct cqhci_host *cq_host)
cq_host           349 drivers/mmc/host/cqhci.c 	return cqhci_readl(cq_host, CQHCI_CTL);
cq_host           354 drivers/mmc/host/cqhci.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host           358 drivers/mmc/host/cqhci.c 	if (!cq_host->enabled || !mmc->cqe_on || cq_host->recovery_halt)
cq_host           361 drivers/mmc/host/cqhci.c 	if (cq_host->ops->disable)
cq_host           362 drivers/mmc/host/cqhci.c 		cq_host->ops->disable(mmc, false);
cq_host           364 drivers/mmc/host/cqhci.c 	cqhci_writel(cq_host, CQHCI_HALT, CQHCI_CTL);
cq_host           366 drivers/mmc/host/cqhci.c 	err = readx_poll_timeout(cqhci_read_ctl, cq_host, reg,
cq_host           378 drivers/mmc/host/cqhci.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host           380 drivers/mmc/host/cqhci.c 	if (!cq_host->enabled)
cq_host           385 drivers/mmc/host/cqhci.c 	__cqhci_disable(cq_host);
cq_host           387 drivers/mmc/host/cqhci.c 	dmam_free_coherent(mmc_dev(mmc), cq_host->data_size,
cq_host           388 drivers/mmc/host/cqhci.c 			   cq_host->trans_desc_base,
cq_host           389 drivers/mmc/host/cqhci.c 			   cq_host->trans_desc_dma_base);
cq_host           391 drivers/mmc/host/cqhci.c 	dmam_free_coherent(mmc_dev(mmc), cq_host->desc_size,
cq_host           392 drivers/mmc/host/cqhci.c 			   cq_host->desc_base,
cq_host           393 drivers/mmc/host/cqhci.c 			   cq_host->desc_dma_base);
cq_host           395 drivers/mmc/host/cqhci.c 	cq_host->trans_desc_base = NULL;
cq_host           396 drivers/mmc/host/cqhci.c 	cq_host->desc_base = NULL;
cq_host           398 drivers/mmc/host/cqhci.c 	cq_host->enabled = false;
cq_host           466 drivers/mmc/host/cqhci.c 			       struct cqhci_host *cq_host, int tag)
cq_host           471 drivers/mmc/host/cqhci.c 	bool dma64 = cq_host->dma64;
cq_host           483 drivers/mmc/host/cqhci.c 	desc = get_trans_desc(cq_host, tag);
cq_host           492 drivers/mmc/host/cqhci.c 		desc += cq_host->trans_desc_len;
cq_host           506 drivers/mmc/host/cqhci.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host           522 drivers/mmc/host/cqhci.c 	task_desc = (__le64 __force *)get_desc(cq_host, cq_host->dcmd_slot);
cq_host           523 drivers/mmc/host/cqhci.c 	memset(task_desc, 0, cq_host->task_desc_len);
cq_host           531 drivers/mmc/host/cqhci.c 	if (cq_host->ops->update_dcmd_desc)
cq_host           532 drivers/mmc/host/cqhci.c 		cq_host->ops->update_dcmd_desc(mmc, mrq, &data);
cq_host           564 drivers/mmc/host/cqhci.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host           567 drivers/mmc/host/cqhci.c 	if (!cq_host->enabled) {
cq_host           573 drivers/mmc/host/cqhci.c 	if (!cq_host->activated)
cq_host           574 drivers/mmc/host/cqhci.c 		__cqhci_enable(cq_host);
cq_host           577 drivers/mmc/host/cqhci.c 		cqhci_writel(cq_host, 0, CQHCI_CTL);
cq_host           580 drivers/mmc/host/cqhci.c 		if (cqhci_readl(cq_host, CQHCI_CTL) && CQHCI_HALT) {
cq_host           584 drivers/mmc/host/cqhci.c 		if (cq_host->ops->enable)
cq_host           585 drivers/mmc/host/cqhci.c 			cq_host->ops->enable(mmc);
cq_host           589 drivers/mmc/host/cqhci.c 		task_desc = (__le64 __force *)get_desc(cq_host, tag);
cq_host           592 drivers/mmc/host/cqhci.c 		err = cqhci_prep_tran_desc(mrq, cq_host, tag);
cq_host           602 drivers/mmc/host/cqhci.c 	spin_lock_irqsave(&cq_host->lock, flags);
cq_host           604 drivers/mmc/host/cqhci.c 	if (cq_host->recovery_halt) {
cq_host           609 drivers/mmc/host/cqhci.c 	cq_host->slot[tag].mrq = mrq;
cq_host           610 drivers/mmc/host/cqhci.c 	cq_host->slot[tag].flags = 0;
cq_host           612 drivers/mmc/host/cqhci.c 	cq_host->qcnt += 1;
cq_host           615 drivers/mmc/host/cqhci.c 	cqhci_writel(cq_host, 1 << tag, CQHCI_TDBR);
cq_host           616 drivers/mmc/host/cqhci.c 	if (!(cqhci_readl(cq_host, CQHCI_TDBR) & (1 << tag)))
cq_host           620 drivers/mmc/host/cqhci.c 	spin_unlock_irqrestore(&cq_host->lock, flags);
cq_host           631 drivers/mmc/host/cqhci.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host           633 drivers/mmc/host/cqhci.c 	if (!cq_host->recovery_halt) {
cq_host           634 drivers/mmc/host/cqhci.c 		cq_host->recovery_halt = true;
cq_host           636 drivers/mmc/host/cqhci.c 		wake_up(&cq_host->wait_queue);
cq_host           659 drivers/mmc/host/cqhci.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host           664 drivers/mmc/host/cqhci.c 	spin_lock(&cq_host->lock);
cq_host           666 drivers/mmc/host/cqhci.c 	terri = cqhci_readl(cq_host, CQHCI_TERRI);
cq_host           672 drivers/mmc/host/cqhci.c 	if (cq_host->recovery_halt)
cq_host           675 drivers/mmc/host/cqhci.c 	if (!cq_host->qcnt) {
cq_host           684 drivers/mmc/host/cqhci.c 		slot = &cq_host->slot[tag];
cq_host           693 drivers/mmc/host/cqhci.c 		slot = &cq_host->slot[tag];
cq_host           700 drivers/mmc/host/cqhci.c 	if (!cq_host->recovery_halt) {
cq_host           706 drivers/mmc/host/cqhci.c 			slot = &cq_host->slot[tag];
cq_host           716 drivers/mmc/host/cqhci.c 	spin_unlock(&cq_host->lock);
cq_host           721 drivers/mmc/host/cqhci.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host           722 drivers/mmc/host/cqhci.c 	struct cqhci_slot *slot = &cq_host->slot[tag];
cq_host           733 drivers/mmc/host/cqhci.c 	if (cq_host->recovery_halt) {
cq_host           740 drivers/mmc/host/cqhci.c 	cq_host->qcnt -= 1;
cq_host           758 drivers/mmc/host/cqhci.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host           760 drivers/mmc/host/cqhci.c 	status = cqhci_readl(cq_host, CQHCI_IS);
cq_host           761 drivers/mmc/host/cqhci.c 	cqhci_writel(cq_host, status, CQHCI_IS);
cq_host           770 drivers/mmc/host/cqhci.c 		comp_status = cqhci_readl(cq_host, CQHCI_TCN);
cq_host           771 drivers/mmc/host/cqhci.c 		cqhci_writel(cq_host, comp_status, CQHCI_TCN);
cq_host           775 drivers/mmc/host/cqhci.c 		spin_lock(&cq_host->lock);
cq_host           777 drivers/mmc/host/cqhci.c 		for_each_set_bit(tag, &comp_status, cq_host->num_slots) {
cq_host           784 drivers/mmc/host/cqhci.c 		if (cq_host->waiting_for_idle && !cq_host->qcnt) {
cq_host           785 drivers/mmc/host/cqhci.c 			cq_host->waiting_for_idle = false;
cq_host           786 drivers/mmc/host/cqhci.c 			wake_up(&cq_host->wait_queue);
cq_host           789 drivers/mmc/host/cqhci.c 		spin_unlock(&cq_host->lock);
cq_host           793 drivers/mmc/host/cqhci.c 		wake_up(&cq_host->wait_queue);
cq_host           796 drivers/mmc/host/cqhci.c 		wake_up(&cq_host->wait_queue);
cq_host           802 drivers/mmc/host/cqhci.c static bool cqhci_is_idle(struct cqhci_host *cq_host, int *ret)
cq_host           807 drivers/mmc/host/cqhci.c 	spin_lock_irqsave(&cq_host->lock, flags);
cq_host           808 drivers/mmc/host/cqhci.c 	is_idle = !cq_host->qcnt || cq_host->recovery_halt;
cq_host           809 drivers/mmc/host/cqhci.c 	*ret = cq_host->recovery_halt ? -EBUSY : 0;
cq_host           810 drivers/mmc/host/cqhci.c 	cq_host->waiting_for_idle = !is_idle;
cq_host           811 drivers/mmc/host/cqhci.c 	spin_unlock_irqrestore(&cq_host->lock, flags);
cq_host           818 drivers/mmc/host/cqhci.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host           821 drivers/mmc/host/cqhci.c 	wait_event(cq_host->wait_queue, cqhci_is_idle(cq_host, &ret));
cq_host           829 drivers/mmc/host/cqhci.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host           831 drivers/mmc/host/cqhci.c 	struct cqhci_slot *slot = &cq_host->slot[tag];
cq_host           835 drivers/mmc/host/cqhci.c 	spin_lock_irqsave(&cq_host->lock, flags);
cq_host           840 drivers/mmc/host/cqhci.c 		*recovery_needed = cq_host->recovery_halt;
cq_host           842 drivers/mmc/host/cqhci.c 	spin_unlock_irqrestore(&cq_host->lock, flags);
cq_host           847 drivers/mmc/host/cqhci.c 		cqhci_dumpregs(cq_host);
cq_host           853 drivers/mmc/host/cqhci.c static bool cqhci_tasks_cleared(struct cqhci_host *cq_host)
cq_host           855 drivers/mmc/host/cqhci.c 	return !(cqhci_readl(cq_host, CQHCI_CTL) & CQHCI_CLEAR_ALL_TASKS);
cq_host           860 drivers/mmc/host/cqhci.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host           864 drivers/mmc/host/cqhci.c 	cqhci_set_irqs(cq_host, CQHCI_IS_TCL);
cq_host           866 drivers/mmc/host/cqhci.c 	ctl = cqhci_readl(cq_host, CQHCI_CTL);
cq_host           868 drivers/mmc/host/cqhci.c 	cqhci_writel(cq_host, ctl, CQHCI_CTL);
cq_host           870 drivers/mmc/host/cqhci.c 	wait_event_timeout(cq_host->wait_queue, cqhci_tasks_cleared(cq_host),
cq_host           873 drivers/mmc/host/cqhci.c 	cqhci_set_irqs(cq_host, 0);
cq_host           875 drivers/mmc/host/cqhci.c 	ret = cqhci_tasks_cleared(cq_host);
cq_host           884 drivers/mmc/host/cqhci.c static bool cqhci_halted(struct cqhci_host *cq_host)
cq_host           886 drivers/mmc/host/cqhci.c 	return cqhci_readl(cq_host, CQHCI_CTL) & CQHCI_HALT;
cq_host           891 drivers/mmc/host/cqhci.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host           895 drivers/mmc/host/cqhci.c 	if (cqhci_halted(cq_host))
cq_host           898 drivers/mmc/host/cqhci.c 	cqhci_set_irqs(cq_host, CQHCI_IS_HAC);
cq_host           900 drivers/mmc/host/cqhci.c 	ctl = cqhci_readl(cq_host, CQHCI_CTL);
cq_host           902 drivers/mmc/host/cqhci.c 	cqhci_writel(cq_host, ctl, CQHCI_CTL);
cq_host           904 drivers/mmc/host/cqhci.c 	wait_event_timeout(cq_host->wait_queue, cqhci_halted(cq_host),
cq_host           907 drivers/mmc/host/cqhci.c 	cqhci_set_irqs(cq_host, 0);
cq_host           909 drivers/mmc/host/cqhci.c 	ret = cqhci_halted(cq_host);
cq_host           927 drivers/mmc/host/cqhci.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host           931 drivers/mmc/host/cqhci.c 	WARN_ON(!cq_host->recovery_halt);
cq_host           935 drivers/mmc/host/cqhci.c 	if (cq_host->ops->disable)
cq_host           936 drivers/mmc/host/cqhci.c 		cq_host->ops->disable(mmc, true);
cq_host           956 drivers/mmc/host/cqhci.c static void cqhci_recover_mrq(struct cqhci_host *cq_host, unsigned int tag)
cq_host           958 drivers/mmc/host/cqhci.c 	struct cqhci_slot *slot = &cq_host->slot[tag];
cq_host           967 drivers/mmc/host/cqhci.c 	cq_host->qcnt -= 1;
cq_host           977 drivers/mmc/host/cqhci.c 	mmc_cqe_request_done(cq_host->mmc, mrq);
cq_host           980 drivers/mmc/host/cqhci.c static void cqhci_recover_mrqs(struct cqhci_host *cq_host)
cq_host           984 drivers/mmc/host/cqhci.c 	for (i = 0; i < cq_host->num_slots; i++)
cq_host           985 drivers/mmc/host/cqhci.c 		cqhci_recover_mrq(cq_host, i);
cq_host          1000 drivers/mmc/host/cqhci.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host          1007 drivers/mmc/host/cqhci.c 	WARN_ON(!cq_host->recovery_halt);
cq_host          1022 drivers/mmc/host/cqhci.c 		cqcfg = cqhci_readl(cq_host, CQHCI_CFG);
cq_host          1024 drivers/mmc/host/cqhci.c 		cqhci_writel(cq_host, cqcfg, CQHCI_CFG);
cq_host          1026 drivers/mmc/host/cqhci.c 		cqhci_writel(cq_host, cqcfg, CQHCI_CFG);
cq_host          1034 drivers/mmc/host/cqhci.c 	cqhci_recover_mrqs(cq_host);
cq_host          1036 drivers/mmc/host/cqhci.c 	WARN_ON(cq_host->qcnt);
cq_host          1038 drivers/mmc/host/cqhci.c 	spin_lock_irqsave(&cq_host->lock, flags);
cq_host          1039 drivers/mmc/host/cqhci.c 	cq_host->qcnt = 0;
cq_host          1040 drivers/mmc/host/cqhci.c 	cq_host->recovery_halt = false;
cq_host          1042 drivers/mmc/host/cqhci.c 	spin_unlock_irqrestore(&cq_host->lock, flags);
cq_host          1047 drivers/mmc/host/cqhci.c 	cqhci_writel(cq_host, CQHCI_IS_HAC | CQHCI_IS_TCL, CQHCI_IS);
cq_host          1049 drivers/mmc/host/cqhci.c 	cqhci_set_irqs(cq_host, CQHCI_IS_MASK);
cq_host          1068 drivers/mmc/host/cqhci.c 	struct cqhci_host *cq_host;
cq_host          1079 drivers/mmc/host/cqhci.c 	cq_host = devm_kzalloc(&pdev->dev, sizeof(*cq_host), GFP_KERNEL);
cq_host          1080 drivers/mmc/host/cqhci.c 	if (!cq_host)
cq_host          1082 drivers/mmc/host/cqhci.c 	cq_host->mmio = devm_ioremap(&pdev->dev,
cq_host          1085 drivers/mmc/host/cqhci.c 	if (!cq_host->mmio) {
cq_host          1091 drivers/mmc/host/cqhci.c 	return cq_host;
cq_host          1095 drivers/mmc/host/cqhci.c static unsigned int cqhci_ver_major(struct cqhci_host *cq_host)
cq_host          1097 drivers/mmc/host/cqhci.c 	return CQHCI_VER_MAJOR(cqhci_readl(cq_host, CQHCI_VER));
cq_host          1100 drivers/mmc/host/cqhci.c static unsigned int cqhci_ver_minor(struct cqhci_host *cq_host)
cq_host          1102 drivers/mmc/host/cqhci.c 	u32 ver = cqhci_readl(cq_host, CQHCI_VER);
cq_host          1107 drivers/mmc/host/cqhci.c int cqhci_init(struct cqhci_host *cq_host, struct mmc_host *mmc,
cq_host          1112 drivers/mmc/host/cqhci.c 	cq_host->dma64 = dma64;
cq_host          1113 drivers/mmc/host/cqhci.c 	cq_host->mmc = mmc;
cq_host          1114 drivers/mmc/host/cqhci.c 	cq_host->mmc->cqe_private = cq_host;
cq_host          1116 drivers/mmc/host/cqhci.c 	cq_host->num_slots = NUM_SLOTS;
cq_host          1117 drivers/mmc/host/cqhci.c 	cq_host->dcmd_slot = DCMD_SLOT;
cq_host          1125 drivers/mmc/host/cqhci.c 	cq_host->slot = devm_kcalloc(mmc_dev(mmc), cq_host->num_slots,
cq_host          1126 drivers/mmc/host/cqhci.c 				     sizeof(*cq_host->slot), GFP_KERNEL);
cq_host          1127 drivers/mmc/host/cqhci.c 	if (!cq_host->slot) {
cq_host          1132 drivers/mmc/host/cqhci.c 	spin_lock_init(&cq_host->lock);
cq_host          1134 drivers/mmc/host/cqhci.c 	init_completion(&cq_host->halt_comp);
cq_host          1135 drivers/mmc/host/cqhci.c 	init_waitqueue_head(&cq_host->wait_queue);
cq_host          1138 drivers/mmc/host/cqhci.c 		mmc_hostname(mmc), cqhci_ver_major(cq_host),
cq_host          1139 drivers/mmc/host/cqhci.c 		cqhci_ver_minor(cq_host));
cq_host          1145 drivers/mmc/host/cqhci.c 	       mmc_hostname(mmc), cqhci_ver_major(cq_host),
cq_host          1146 drivers/mmc/host/cqhci.c 	       cqhci_ver_minor(cq_host), err);
cq_host           231 drivers/mmc/host/cqhci.h int cqhci_init(struct cqhci_host *cq_host, struct mmc_host *mmc, bool dma64);
cq_host          1249 drivers/mmc/host/sdhci-esdhc-imx.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host          1288 drivers/mmc/host/sdhci-esdhc-imx.c 	cqhci_writel(cq_host, 0, CQHCI_CTL);
cq_host          1289 drivers/mmc/host/sdhci-esdhc-imx.c 	if (cqhci_readl(cq_host, CQHCI_CTL) && CQHCI_HALT)
cq_host          1440 drivers/mmc/host/sdhci-esdhc-imx.c 	struct cqhci_host *cq_host;
cq_host          1537 drivers/mmc/host/sdhci-esdhc-imx.c 		cq_host = devm_kzalloc(&pdev->dev, sizeof(*cq_host), GFP_KERNEL);
cq_host          1538 drivers/mmc/host/sdhci-esdhc-imx.c 		if (!cq_host) {
cq_host          1543 drivers/mmc/host/sdhci-esdhc-imx.c 		cq_host->mmio = host->ioaddr + ESDHC_CQHCI_ADDR_OFFSET;
cq_host          1544 drivers/mmc/host/sdhci-esdhc-imx.c 		cq_host->ops = &esdhc_cqhci_ops;
cq_host          1546 drivers/mmc/host/sdhci-esdhc-imx.c 		err = cqhci_init(cq_host, host->mmc, false);
cq_host           692 drivers/mmc/host/sdhci-of-arasan.c 	struct cqhci_host *cq_host;
cq_host           703 drivers/mmc/host/sdhci-of-arasan.c 	cq_host = devm_kzalloc(host->mmc->parent,
cq_host           704 drivers/mmc/host/sdhci-of-arasan.c 			       sizeof(*cq_host), GFP_KERNEL);
cq_host           705 drivers/mmc/host/sdhci-of-arasan.c 	if (!cq_host) {
cq_host           710 drivers/mmc/host/sdhci-of-arasan.c 	cq_host->mmio = host->ioaddr + SDHCI_ARASAN_CQE_BASE_ADDR;
cq_host           711 drivers/mmc/host/sdhci-of-arasan.c 	cq_host->ops = &sdhci_arasan_cqhci_ops;
cq_host           715 drivers/mmc/host/sdhci-of-arasan.c 		cq_host->caps |= CQHCI_TASK_DESC_SZ_128;
cq_host           717 drivers/mmc/host/sdhci-of-arasan.c 	ret = cqhci_init(cq_host, host->mmc, dma64);
cq_host           823 drivers/mmc/host/sdhci-pci-core.c 	struct cqhci_host *cq_host;
cq_host           831 drivers/mmc/host/sdhci-pci-core.c 	cq_host = devm_kzalloc(dev, sizeof(*cq_host), GFP_KERNEL);
cq_host           832 drivers/mmc/host/sdhci-pci-core.c 	if (!cq_host) {
cq_host           837 drivers/mmc/host/sdhci-pci-core.c 	cq_host->mmio = host->ioaddr + 0x200;
cq_host           838 drivers/mmc/host/sdhci-pci-core.c 	cq_host->quirks |= CQHCI_QUIRK_SHORT_TXFR_DESC_SZ;
cq_host           839 drivers/mmc/host/sdhci-pci-core.c 	cq_host->ops = &glk_cqhci_ops;
cq_host           843 drivers/mmc/host/sdhci-pci-core.c 		cq_host->caps |= CQHCI_TASK_DESC_SZ_128;
cq_host           845 drivers/mmc/host/sdhci-pci-core.c 	ret = cqhci_init(cq_host, host->mmc, dma64);
cq_host          1130 drivers/mmc/host/sdhci-tegra.c static void tegra_cqhci_writel(struct cqhci_host *cq_host, u32 val, int reg)
cq_host          1132 drivers/mmc/host/sdhci-tegra.c 	struct mmc_host *mmc = cq_host->mmc;
cq_host          1146 drivers/mmc/host/sdhci-tegra.c 	    cqhci_readl(cq_host, CQHCI_CTL) & CQHCI_HALT) {
cq_host          1148 drivers/mmc/host/sdhci-tegra.c 		writel(val, cq_host->mmio + reg);
cq_host          1152 drivers/mmc/host/sdhci-tegra.c 			ctrl = cqhci_readl(cq_host, CQHCI_CTL);
cq_host          1161 drivers/mmc/host/sdhci-tegra.c 			writel(val, cq_host->mmio + reg);
cq_host          1163 drivers/mmc/host/sdhci-tegra.c 		writel(val, cq_host->mmio + reg);
cq_host          1181 drivers/mmc/host/sdhci-tegra.c 	struct cqhci_host *cq_host = mmc->cqe_private;
cq_host          1190 drivers/mmc/host/sdhci-tegra.c 	if (!cq_host->activated) {
cq_host          1191 drivers/mmc/host/sdhci-tegra.c 		val = cqhci_readl(cq_host, CQHCI_CFG);
cq_host          1193 drivers/mmc/host/sdhci-tegra.c 			cqhci_writel(cq_host, (val & ~CQHCI_ENABLE),
cq_host          1197 drivers/mmc/host/sdhci-tegra.c 			cqhci_writel(cq_host, val, CQHCI_CFG);
cq_host          1207 drivers/mmc/host/sdhci-tegra.c 	val = cqhci_readl(cq_host, CQHCI_SSC1);
cq_host          1209 drivers/mmc/host/sdhci-tegra.c 	cqhci_writel(cq_host, val, CQHCI_SSC1);
cq_host          1460 drivers/mmc/host/sdhci-tegra.c 	struct cqhci_host *cq_host;
cq_host          1475 drivers/mmc/host/sdhci-tegra.c 	cq_host = devm_kzalloc(host->mmc->parent,
cq_host          1476 drivers/mmc/host/sdhci-tegra.c 				sizeof(*cq_host), GFP_KERNEL);
cq_host          1477 drivers/mmc/host/sdhci-tegra.c 	if (!cq_host) {
cq_host          1482 drivers/mmc/host/sdhci-tegra.c 	cq_host->mmio = host->ioaddr + SDHCI_TEGRA_CQE_BASE_ADDR;
cq_host          1483 drivers/mmc/host/sdhci-tegra.c 	cq_host->ops = &sdhci_tegra_cqhci_ops;
cq_host          1487 drivers/mmc/host/sdhci-tegra.c 		cq_host->caps |= CQHCI_TASK_DESC_SZ_128;
cq_host          1489 drivers/mmc/host/sdhci-tegra.c 	ret = cqhci_init(cq_host, host->mmc, dma64);