u-boot/drivers/mmc
Pantelis Antoniou 93bfd61677 mmc: Split mmc struct, rework mmc initialization (v2)
The way that struct mmc was implemented was a bit of a mess;
configuration and internal state all jumbled up in a single structure.

On top of that the way initialization is done with mmc_register leads
to a lot of duplicated code in drivers.

Typically the initialization got something like this in every driver.

	struct mmc *mmc = malloc(sizeof(struct mmc));
	memset(mmc, 0, sizeof(struct mmc);
	/* fill in fields of mmc struct */
	/* store private data pointer */
	mmc_register(mmc);

By using the new mmc_create call one just passes an mmc config struct
and an optional private data pointer like this:

	struct mmc = mmc_create(&cfg, priv);

All in tree drivers have been updated to the new form, and expect
mmc_register to go away before long.

Changes since v1:

* Use calloc instead of manually calling memset.
* Mark mmc_register as deprecated.

Signed-off-by: Pantelis Antoniou <panto@antoniou-consulting.com>
2014-03-24 12:58:56 +02:00
..
arm_pl180_mmci.c mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
arm_pl180_mmci.h mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
bcm2835_sdhci.c ARM: bcm2835: fix get_timer() to return ms 2013-04-04 08:14:54 +02:00
bfin_sdh.c mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
davinci_mmc.c mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
dw_mmc.c mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
exynos_dw_mmc.c MMC: DWMMC: Correct the CLKDIV register value 2014-02-07 17:42:26 +02:00
fsl_esdhc.c mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
fsl_esdhc_spl.c powerpc: mmc: Add corenet devices support in esdhc spl 2013-12-08 14:17:28 +02:00
ftsdc010_mci.c mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
ftsdc021_sdhci.c mmc: add Faraday FTSDC021 SDHCI controller support 2013-12-08 14:23:05 +02:00
gen_atmel_mci.c mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
kona_sdhci.c mmc: kona: Add Kona mmc driver 2014-02-22 19:30:41 +01:00
Makefile mmc: kona: Add Kona mmc driver 2014-02-22 19:30:41 +01:00
mmc.c mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
mmc_private.h mmc: don't support write & erase for SPL builds 2013-09-20 18:58:55 +03:00
mmc_spi.c mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
mmc_write.c mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
mv_sdhci.c mmc: sdhci: return error when failed add_sdhci(). 2013-05-06 16:26:24 -05:00
mxcmmc.c mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
mxsmmc.c mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
omap_hsmmc.c mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
pxa_mmc_gen.c mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
s5p_sdhci.c mmc: sdhci: use the SDHCI_QUIRK_USE_WIDE8 for samsung SoC 2013-09-17 20:03:43 +03:00
sdhci.c mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
sh_mmcif.c mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
sh_mmcif.h mmc: sh_mmcif: add support for Renesas MMCIF 2011-07-15 20:29:21 -05:00
socfpga_dw_mmc.c socfpga/dwmmc: Adding DesignWare MMC driver support for SOCFPGA 2014-01-09 11:53:55 +02:00
spear_sdhci.c Add GPL-2.0+ SPDX-License-Identifier to source files 2013-07-24 09:44:38 -04:00
tegra_mmc.c mmc: Split mmc struct, rework mmc initialization (v2) 2014-03-24 12:58:56 +02:00
zynq_sdhci.c mmc: zynq: Add OF initialization support 2014-03-04 09:27:35 -05:00