mmc: pic32_sdhci: move the code to pic32_sdhci.c
This code is used for only pic32_sdhci controller. To remove the "#ifdef", moves to pic32_sdhci.c. And use the get_cd callback function. Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
This commit is contained in:
		
							parent
							
								
									62358a988e
								
							
						
					
					
						commit
						5e96217f04
					
				|  | @ -15,6 +15,20 @@ | ||||||
| 
 | 
 | ||||||
| DECLARE_GLOBAL_DATA_PTR; | DECLARE_GLOBAL_DATA_PTR; | ||||||
| 
 | 
 | ||||||
|  | static int pci32_sdhci_get_cd(struct sdhci_host *host) | ||||||
|  | { | ||||||
|  | 	/* PIC32 SDHCI CD errata:
 | ||||||
|  | 	 * - set CD_TEST and clear CD_TEST_INS bit | ||||||
|  | 	 */ | ||||||
|  | 	sdhci_writeb(host, SDHCI_CTRL_CD_TEST, SDHCI_HOST_CONTROL); | ||||||
|  | 
 | ||||||
|  | 	return 0; | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | static const struct sdhci_ops pic32_sdhci_ops = { | ||||||
|  | 	.get_cd	= pci32_sdhci_get_cd, | ||||||
|  | }; | ||||||
|  | 
 | ||||||
| static int pic32_sdhci_probe(struct udevice *dev) | static int pic32_sdhci_probe(struct udevice *dev) | ||||||
| { | { | ||||||
| 	struct sdhci_host *host = dev_get_priv(dev); | 	struct sdhci_host *host = dev_get_priv(dev); | ||||||
|  | @ -33,6 +47,7 @@ static int pic32_sdhci_probe(struct udevice *dev) | ||||||
| 	host->quirks	= SDHCI_QUIRK_NO_HISPD_BIT | SDHCI_QUIRK_NO_CD; | 	host->quirks	= SDHCI_QUIRK_NO_HISPD_BIT | SDHCI_QUIRK_NO_CD; | ||||||
| 	host->bus_width	= fdtdec_get_int(gd->fdt_blob, dev->of_offset, | 	host->bus_width	= fdtdec_get_int(gd->fdt_blob, dev->of_offset, | ||||||
| 					"bus-width", 4); | 					"bus-width", 4); | ||||||
|  | 	host->ops = &pic32_sdhci_ops; | ||||||
| 
 | 
 | ||||||
| 	ret = fdtdec_get_int_array(gd->fdt_blob, dev->of_offset, | 	ret = fdtdec_get_int_array(gd->fdt_blob, dev->of_offset, | ||||||
| 				   "clock-freq-min-max", f_min_max, 2); | 				   "clock-freq-min-max", f_min_max, 2); | ||||||
|  |  | ||||||
|  | @ -485,12 +485,8 @@ static int sdhci_init(struct mmc *mmc) | ||||||
| 	sdhci_set_power(host, fls(mmc->cfg->voltages) - 1); | 	sdhci_set_power(host, fls(mmc->cfg->voltages) - 1); | ||||||
| 
 | 
 | ||||||
| 	if (host->quirks & SDHCI_QUIRK_NO_CD) { | 	if (host->quirks & SDHCI_QUIRK_NO_CD) { | ||||||
| #if defined(CONFIG_PIC32_SDHCI) | 		if (host->ops->get_cd) | ||||||
| 		/* PIC32 SDHCI CD errata:
 | 			host->ops->get_cd(host); | ||||||
| 		 * - set CD_TEST and clear CD_TEST_INS bit |  | ||||||
| 		 */ |  | ||||||
| 		sdhci_writeb(host, SDHCI_CTRL_CD_TEST, SDHCI_HOST_CONTROL); |  | ||||||
| #endif |  | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	/* Enable only interrupts served by the SD controller */ | 	/* Enable only interrupts served by the SD controller */ | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue