1*ebb5fd38SBrian Norris /* SPDX-License-Identifier: GPL-2.0-only */ 2*ebb5fd38SBrian Norris /* 3*ebb5fd38SBrian Norris * Copyright 2022 The Chromium OS Authors 4*ebb5fd38SBrian Norris * 5*ebb5fd38SBrian Norris * Support that applies to the combination of SDHCI and CQHCI, while not 6*ebb5fd38SBrian Norris * expressing a dependency between the two modules. 7*ebb5fd38SBrian Norris */ 8*ebb5fd38SBrian Norris 9*ebb5fd38SBrian Norris #ifndef __MMC_HOST_SDHCI_CQHCI_H__ 10*ebb5fd38SBrian Norris #define __MMC_HOST_SDHCI_CQHCI_H__ 11*ebb5fd38SBrian Norris 12*ebb5fd38SBrian Norris #include "cqhci.h" 13*ebb5fd38SBrian Norris #include "sdhci.h" 14*ebb5fd38SBrian Norris sdhci_and_cqhci_reset(struct sdhci_host * host,u8 mask)15*ebb5fd38SBrian Norrisstatic inline void sdhci_and_cqhci_reset(struct sdhci_host *host, u8 mask) 16*ebb5fd38SBrian Norris { 17*ebb5fd38SBrian Norris if ((host->mmc->caps2 & MMC_CAP2_CQE) && (mask & SDHCI_RESET_ALL) && 18*ebb5fd38SBrian Norris host->mmc->cqe_private) 19*ebb5fd38SBrian Norris cqhci_deactivate(host->mmc); 20*ebb5fd38SBrian Norris 21*ebb5fd38SBrian Norris sdhci_reset(host, mask); 22*ebb5fd38SBrian Norris } 23*ebb5fd38SBrian Norris 24*ebb5fd38SBrian Norris #endif /* __MMC_HOST_SDHCI_CQHCI_H__ */ 25