sdhci-s3c.c (aeb8f932080d62cdc305a7ccca9d60de34908b30) | sdhci-s3c.c (162d6f98005fce408efc5af73956c434ae08ef73) |
---|---|
1/* linux/drivers/mmc/host/sdhci-s3c.c 2 * 3 * Copyright 2008 Openmoko Inc. 4 * Copyright 2008 Simtec Electronics 5 * Ben Dooks <ben@simtec.co.uk> 6 * http://armlinux.simtec.co.uk/ 7 * 8 * SDHCI (HSMMC) support for Samsung SoC --- 595 unchanged lines hidden (view full) --- 604 mmc_of_parse(host->mmc); 605 606 ret = sdhci_add_host(host); 607 if (ret) { 608 dev_err(dev, "sdhci_add_host() failed\n"); 609 goto err_req_regs; 610 } 611 | 1/* linux/drivers/mmc/host/sdhci-s3c.c 2 * 3 * Copyright 2008 Openmoko Inc. 4 * Copyright 2008 Simtec Electronics 5 * Ben Dooks <ben@simtec.co.uk> 6 * http://armlinux.simtec.co.uk/ 7 * 8 * SDHCI (HSMMC) support for Samsung SoC --- 595 unchanged lines hidden (view full) --- 604 mmc_of_parse(host->mmc); 605 606 ret = sdhci_add_host(host); 607 if (ret) { 608 dev_err(dev, "sdhci_add_host() failed\n"); 609 goto err_req_regs; 610 } 611 |
612#ifdef CONFIG_PM_RUNTIME | 612#ifdef CONFIG_PM |
613 if (pdata->cd_type != S3C_SDHCI_CD_INTERNAL) 614 clk_disable_unprepare(sc->clk_io); 615#endif 616 return 0; 617 618 err_req_regs: 619 pm_runtime_disable(&pdev->dev); 620 --- 9 unchanged lines hidden (view full) --- 630static int sdhci_s3c_remove(struct platform_device *pdev) 631{ 632 struct sdhci_host *host = platform_get_drvdata(pdev); 633 struct sdhci_s3c *sc = sdhci_priv(host); 634 635 if (sc->ext_cd_irq) 636 free_irq(sc->ext_cd_irq, sc); 637 | 613 if (pdata->cd_type != S3C_SDHCI_CD_INTERNAL) 614 clk_disable_unprepare(sc->clk_io); 615#endif 616 return 0; 617 618 err_req_regs: 619 pm_runtime_disable(&pdev->dev); 620 --- 9 unchanged lines hidden (view full) --- 630static int sdhci_s3c_remove(struct platform_device *pdev) 631{ 632 struct sdhci_host *host = platform_get_drvdata(pdev); 633 struct sdhci_s3c *sc = sdhci_priv(host); 634 635 if (sc->ext_cd_irq) 636 free_irq(sc->ext_cd_irq, sc); 637 |
638#ifdef CONFIG_PM_RUNTIME | 638#ifdef CONFIG_PM |
639 if (sc->pdata->cd_type != S3C_SDHCI_CD_INTERNAL) 640 clk_prepare_enable(sc->clk_io); 641#endif 642 sdhci_remove_host(host, 1); 643 644 pm_runtime_dont_use_autosuspend(&pdev->dev); 645 pm_runtime_disable(&pdev->dev); 646 --- 15 unchanged lines hidden (view full) --- 662static int sdhci_s3c_resume(struct device *dev) 663{ 664 struct sdhci_host *host = dev_get_drvdata(dev); 665 666 return sdhci_resume_host(host); 667} 668#endif 669 | 639 if (sc->pdata->cd_type != S3C_SDHCI_CD_INTERNAL) 640 clk_prepare_enable(sc->clk_io); 641#endif 642 sdhci_remove_host(host, 1); 643 644 pm_runtime_dont_use_autosuspend(&pdev->dev); 645 pm_runtime_disable(&pdev->dev); 646 --- 15 unchanged lines hidden (view full) --- 662static int sdhci_s3c_resume(struct device *dev) 663{ 664 struct sdhci_host *host = dev_get_drvdata(dev); 665 666 return sdhci_resume_host(host); 667} 668#endif 669 |
670#ifdef CONFIG_PM_RUNTIME | 670#ifdef CONFIG_PM |
671static int sdhci_s3c_runtime_suspend(struct device *dev) 672{ 673 struct sdhci_host *host = dev_get_drvdata(dev); 674 struct sdhci_s3c *ourhost = to_s3c(host); 675 struct clk *busclk = ourhost->clk_io; 676 int ret; 677 678 ret = sdhci_runtime_suspend_host(host); --- 83 unchanged lines hidden --- | 671static int sdhci_s3c_runtime_suspend(struct device *dev) 672{ 673 struct sdhci_host *host = dev_get_drvdata(dev); 674 struct sdhci_s3c *ourhost = to_s3c(host); 675 struct clk *busclk = ourhost->clk_io; 676 int ret; 677 678 ret = sdhci_runtime_suspend_host(host); --- 83 unchanged lines hidden --- |