diff options
author | Patrice Chotard <patrice.chotard@st.com> | 2017-10-23 10:57:30 +0200 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2017-11-17 07:44:13 -0500 |
commit | cb0060e8360fe75c98b2c21740fde80a8e1f62ec (patch) | |
tree | 5bd5ba845b6541589a9cb68b860b88bcc96db01a | |
parent | 39e709611df05505ada013a37c5254b4c671b847 (diff) |
mmc: arm_pl180_mmci: update arm_pl180_mmci_init() prototype
Update arm_pl180_mmci_init() prototype by adding struct mmc**
param. This is needed before converting this driver to driver model
in order to use arm_pl180_mmci_init() in driver model and in none
driver model implementation
Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
-rw-r--r-- | board/armltd/vexpress/vexpress_common.c | 3 | ||||
-rw-r--r-- | drivers/mmc/arm_pl180_mmci.c | 10 | ||||
-rw-r--r-- | drivers/mmc/arm_pl180_mmci.h | 2 |
3 files changed, 8 insertions, 7 deletions
diff --git a/board/armltd/vexpress/vexpress_common.c b/board/armltd/vexpress/vexpress_common.c index 89ab8f7a59..37b8d7f4f5 100644 --- a/board/armltd/vexpress/vexpress_common.c +++ b/board/armltd/vexpress/vexpress_common.c @@ -76,6 +76,7 @@ int cpu_mmc_init(bd_t *bis) (void) bis; #ifdef CONFIG_ARM_PL180_MMCI struct pl180_mmc_host *host; + struct mmc *mmc; host = malloc(sizeof(struct pl180_mmc_host)); if (!host) @@ -91,7 +92,7 @@ int cpu_mmc_init(bd_t *bis) host->clock_in = ARM_MCLK; host->clock_min = ARM_MCLK / (2 * (SDI_CLKCR_CLKDIV_INIT_V1 + 1)); host->clock_max = CONFIG_ARM_PL180_MMCI_CLOCK_FREQ; - rc = arm_pl180_mmci_init(host); + rc = arm_pl180_mmci_init(host, &mmc); #endif return rc; } diff --git a/drivers/mmc/arm_pl180_mmci.c b/drivers/mmc/arm_pl180_mmci.c index ddf8383f1c..7898b0dd70 100644 --- a/drivers/mmc/arm_pl180_mmci.c +++ b/drivers/mmc/arm_pl180_mmci.c @@ -348,9 +348,8 @@ static const struct mmc_ops arm_pl180_mmci_ops = { * Set initial clock and power for mmc slot. * Initialize mmc struct and register with mmc framework. */ -int arm_pl180_mmci_init(struct pl180_mmc_host *host) +int arm_pl180_mmci_init(struct pl180_mmc_host *host, struct mmc **mmc) { - struct mmc *mmc; u32 sdi_u32; writel(host->pwr_init, &host->base->power); @@ -373,11 +372,12 @@ int arm_pl180_mmci_init(struct pl180_mmc_host *host) else host->cfg.b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT; - mmc = mmc_create(&host->cfg, host); - if (mmc == NULL) + *mmc = mmc_create(&host->cfg, host); + if (!*mmc) return -1; - debug("registered mmc interface number is:%d\n", mmc->block_dev.devnum); + debug("registered mmc interface number is:%d\n", + (*mmc)->block_dev.devnum); return 0; } diff --git a/drivers/mmc/arm_pl180_mmci.h b/drivers/mmc/arm_pl180_mmci.h index f23bd391ee..6e232f7df2 100644 --- a/drivers/mmc/arm_pl180_mmci.h +++ b/drivers/mmc/arm_pl180_mmci.h @@ -190,6 +190,6 @@ struct pl180_mmc_host { struct mmc_config cfg; }; -int arm_pl180_mmci_init(struct pl180_mmc_host *); +int arm_pl180_mmci_init(struct pl180_mmc_host *host, struct mmc **mmc); #endif |