| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  *  linux/drivers/mmc/host/sdhci.c - Secure Digital Host Controller Interface dr
      iver | 2  *  linux/drivers/mmc/host/sdhci.c - Secure Digital Host Controller Interface dr
      iver | 
| 3  * | 3  * | 
| 4  *  Copyright (C) 2005-2008 Pierre Ossman, All Rights Reserved. | 4  *  Copyright (C) 2005-2008 Pierre Ossman, All Rights Reserved. | 
| 5  * | 5  * | 
| 6  * This program is free software; you can redistribute it and/or modify | 6  * This program is free software; you can redistribute it and/or modify | 
| 7  * it under the terms of the GNU General Public License as published by | 7  * it under the terms of the GNU General Public License as published by | 
| 8  * the Free Software Foundation; either version 2 of the License, or (at | 8  * the Free Software Foundation; either version 2 of the License, or (at | 
| 9  * your option) any later version. | 9  * your option) any later version. | 
| 10  * | 10  * | 
| (...skipping 1636 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1647 int sdhci_suspend_host(struct sdhci_host *host, pm_message_t state) | 1647 int sdhci_suspend_host(struct sdhci_host *host, pm_message_t state) | 
| 1648 { | 1648 { | 
| 1649         int ret = 0; | 1649         int ret = 0; | 
| 1650         struct mmc_host *mmc = host->mmc; | 1650         struct mmc_host *mmc = host->mmc; | 
| 1651 | 1651 | 
| 1652         sdhci_disable_card_detection(host); | 1652         sdhci_disable_card_detection(host); | 
| 1653 | 1653 | 
| 1654         if (mmc->card && (mmc->card->type != MMC_TYPE_SDIO)) | 1654         if (mmc->card && (mmc->card->type != MMC_TYPE_SDIO)) | 
| 1655                 ret = mmc_suspend_host(host->mmc); | 1655                 ret = mmc_suspend_host(host->mmc); | 
| 1656 | 1656 | 
|  | 1657         /* Save the original intmask to restore later */ | 
|  | 1658         host->save_intmask = sdhci_readl(host, SDHCI_INT_ENABLE); | 
| 1657         sdhci_mask_irqs(host, SDHCI_INT_ALL_MASK); | 1659         sdhci_mask_irqs(host, SDHCI_INT_ALL_MASK); | 
| 1658 | 1660 | 
| 1659         if (host->vmmc) | 1661         if (host->vmmc) | 
| 1660                 ret = regulator_disable(host->vmmc); | 1662                 ret = regulator_disable(host->vmmc); | 
| 1661 | 1663 | 
| 1662         if (host->irq) | 1664         if (host->irq) | 
| 1663                 disable_irq(host->irq); | 1665                 disable_irq(host->irq); | 
| 1664 | 1666 | 
| 1665         return ret; | 1667         return ret; | 
| 1666 } | 1668 } | 
| (...skipping 21 matching lines...) Expand all  Loading... | 
| 1688                 enable_irq(host->irq); | 1690                 enable_irq(host->irq); | 
| 1689 | 1691 | 
| 1690         sdhci_init(host, (host->mmc->pm_flags & MMC_PM_KEEP_POWER)); | 1692         sdhci_init(host, (host->mmc->pm_flags & MMC_PM_KEEP_POWER)); | 
| 1691         mmiowb(); | 1693         mmiowb(); | 
| 1692 | 1694 | 
| 1693         if (mmc->card && (mmc->card->type != MMC_TYPE_SDIO)) | 1695         if (mmc->card && (mmc->card->type != MMC_TYPE_SDIO)) | 
| 1694                 ret = mmc_resume_host(host->mmc); | 1696                 ret = mmc_resume_host(host->mmc); | 
| 1695 | 1697 | 
| 1696         sdhci_enable_card_detection(host); | 1698         sdhci_enable_card_detection(host); | 
| 1697 | 1699 | 
|  | 1700         /* Restore the original intmask */ | 
|  | 1701         sdhci_unmask_irqs(host, host->save_intmask); | 
|  | 1702 | 
| 1698         return ret; | 1703         return ret; | 
| 1699 } | 1704 } | 
| 1700 | 1705 | 
| 1701 EXPORT_SYMBOL_GPL(sdhci_resume_host); | 1706 EXPORT_SYMBOL_GPL(sdhci_resume_host); | 
| 1702 | 1707 | 
| 1703 void sdhci_enable_irq_wakeups(struct sdhci_host *host) | 1708 void sdhci_enable_irq_wakeups(struct sdhci_host *host) | 
| 1704 { | 1709 { | 
| 1705         u8 val; | 1710         u8 val; | 
| 1706         val = sdhci_readb(host, SDHCI_WAKE_UP_CONTROL); | 1711         val = sdhci_readb(host, SDHCI_WAKE_UP_CONTROL); | 
| 1707         val |= SDHCI_WAKE_ON_INT; | 1712         val |= SDHCI_WAKE_ON_INT; | 
| (...skipping 409 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 2117 module_init(sdhci_drv_init); | 2122 module_init(sdhci_drv_init); | 
| 2118 module_exit(sdhci_drv_exit); | 2123 module_exit(sdhci_drv_exit); | 
| 2119 | 2124 | 
| 2120 module_param(debug_quirks, uint, 0444); | 2125 module_param(debug_quirks, uint, 0444); | 
| 2121 | 2126 | 
| 2122 MODULE_AUTHOR("Pierre Ossman <pierre@ossman.eu>"); | 2127 MODULE_AUTHOR("Pierre Ossman <pierre@ossman.eu>"); | 
| 2123 MODULE_DESCRIPTION("Secure Digital Host Controller Interface core driver"); | 2128 MODULE_DESCRIPTION("Secure Digital Host Controller Interface core driver"); | 
| 2124 MODULE_LICENSE("GPL"); | 2129 MODULE_LICENSE("GPL"); | 
| 2125 | 2130 | 
| 2126 MODULE_PARM_DESC(debug_quirks, "Force certain quirks."); | 2131 MODULE_PARM_DESC(debug_quirks, "Force certain quirks."); | 
| OLD | NEW | 
|---|