11aa78c1dSBrian Norris /* SPDX-License-Identifier: GPL-2.0-only */ 21aa78c1dSBrian Norris /* 31aa78c1dSBrian Norris * Copyright 2022 The Chromium OS Authors 41aa78c1dSBrian Norris * 51aa78c1dSBrian Norris * Support that applies to the combination of SDHCI and CQHCI, while not 61aa78c1dSBrian Norris * expressing a dependency between the two modules. 71aa78c1dSBrian Norris */ 81aa78c1dSBrian Norris 91aa78c1dSBrian Norris #ifndef __MMC_HOST_SDHCI_CQHCI_H__ 101aa78c1dSBrian Norris #define __MMC_HOST_SDHCI_CQHCI_H__ 111aa78c1dSBrian Norris 121aa78c1dSBrian Norris #include "cqhci.h" 131aa78c1dSBrian Norris #include "sdhci.h" 141aa78c1dSBrian Norris sdhci_and_cqhci_reset(struct sdhci_host * host,u8 mask)151aa78c1dSBrian Norrisstatic inline void sdhci_and_cqhci_reset(struct sdhci_host *host, u8 mask) 161aa78c1dSBrian Norris { 171aa78c1dSBrian Norris if ((host->mmc->caps2 & MMC_CAP2_CQE) && (mask & SDHCI_RESET_ALL) && 181aa78c1dSBrian Norris host->mmc->cqe_private) 191aa78c1dSBrian Norris cqhci_deactivate(host->mmc); 201aa78c1dSBrian Norris 211aa78c1dSBrian Norris sdhci_reset(host, mask); 221aa78c1dSBrian Norris } 231aa78c1dSBrian Norris 241aa78c1dSBrian Norris #endif /* __MMC_HOST_SDHCI_CQHCI_H__ */ 25