> -----Original Message----- > From: Fabio Estevam [mailto:fabio.estevam@xxxxxxxxxxxxx] > Sent: Thursday, February 14, 2013 8:35 PM > To: cjb@xxxxxxxxxx > Cc: Kevin Liu; linux-mmc@xxxxxxxxxxxxxxx; ulf.hansson@xxxxxxxxxx; Fabio Estevam > Subject: [PATCH v2] mmc: host: sdhci: Fix parameter of sdhci_do_start_signal_voltage_switch() > > Commit 3714f4315354 (mmc: sdhci: update signal voltage switch code) changed the > type of the second parameter of sdhci_do_start_signal_voltage_switch(), from > "struct mmc_ios *ios" to "int signal_voltage" which causes the following build > warning: > > drivers/mmc/host/sdhci.c:2044:2: warning: initialization from incompatible pointer type [enabled by default] > drivers/mmc/host/sdhci.c:2044:2: warning: (near initialization for 'sdhci_ops.start_signal_voltage_switch') [enabled by default] > > Use the previous type so that it matches the start_signal_voltage_switch() > definition from host.h. > > Signed-off-by: Fabio Estevam <fabio.estevam@xxxxxxxxxxxxx> > --- > Changes since v1: > - Fix it inside sdhci to avoid breakage on other mmc controllers > > drivers/mmc/host/sdhci.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c > index 735526b..51bbba4 100644 > --- a/drivers/mmc/host/sdhci.c > +++ b/drivers/mmc/host/sdhci.c > @@ -1675,7 +1675,7 @@ static void sdhci_enable_sdio_irq(struct mmc_host *mmc, int enable) > } > > static int sdhci_do_start_signal_voltage_switch(struct sdhci_host *host, > - int signal_voltage) > + struct mmc_ios *ios) > { > u16 ctrl; > int ret; > @@ -1689,7 +1689,7 @@ static int sdhci_do_start_signal_voltage_switch(struct sdhci_host *host, > > ctrl = sdhci_readw(host, SDHCI_HOST_CONTROL2); > > - switch (signal_voltage) { > + switch (ios->signal_voltage) { > case MMC_SIGNAL_VOLTAGE_330: > /* Set 1.8V Signal Enable in the Host Control2 register to 0 */ > ctrl &= ~SDHCI_CTRL_VDD_180; > @@ -1762,7 +1762,7 @@ static int sdhci_do_start_signal_voltage_switch(struct sdhci_host *host, > } > > static int sdhci_start_signal_voltage_switch(struct mmc_host *mmc, > - int signal_voltage) > + struct mmc_ios *ios) > { > struct sdhci_host *host = mmc_priv(mmc); > int err; > @@ -1770,7 +1770,7 @@ static int sdhci_start_signal_voltage_switch(struct mmc_host *mmc, > if (host->version < SDHCI_SPEC_300) > return 0; > sdhci_runtime_pm_get(host); > - err = sdhci_do_start_signal_voltage_switch(host, signal_voltage); > + err = sdhci_do_start_signal_voltage_switch(host, ios); > sdhci_runtime_pm_put(host); > return err; > } Fabio, Thanks a lot for finding this and quick fix! My original purpose is to change the argument type from ios to signal_voltage. But the code change for mmc core was not integrated into Johan's final patchset ([PATCH v6 5/5] mmc: core: Fixup signal voltage switch). So I still prefer your first version. I submit below patch for this just now: "[PATCH] mmc: core: update start_signal_voltage_switch argument type" Please help to reivew and can I add your name to the signoff? Chris, Can I suggest to combine my above patch with Fabio's patch? I think they are related. Thanks Kevin -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html