
On Mon, Jan 28, 2019 at 12:15:27PM +0530, Faiz Abbas wrote:
Make set_ios_post() return int to faciliate error handling in platform drivers.
Signed-off-by: Faiz Abbas faiz4000@gmail.com
drivers/mmc/sdhci.c | 6 +++++- drivers/mmc/xenon_sdhci.c | 4 +++- include/sdhci.h | 2 +- 3 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c index 635f5396c4..b7b7ff6f7d 100644 --- a/drivers/mmc/sdhci.c +++ b/drivers/mmc/sdhci.c @@ -461,6 +461,7 @@ static int sdhci_set_ios(struct mmc *mmc) #endif u32 ctrl; struct sdhci_host *host = mmc->priv;
int ret;
if (host->ops && host->ops->set_control_reg) host->ops->set_control_reg(host);
@@ -500,8 +501,11 @@ static int sdhci_set_ios(struct mmc *mmc) sdhci_writeb(host, ctrl, SDHCI_HOST_CONTROL);
/* If available, call the driver specific "post" set_ios() function */
- if (host->ops && host->ops->set_ios_post)
if (host->ops && host->ops->set_ios_post) { host->ops->set_ios_post(host);
if (ret)
return ret;
}
return 0;
}
Isn't something going to complain about either unused or uninitialized (or, both) variables? In fact, re-reading this and follow-up patches, I think you forgot to turn: host->ops->set_ios_post(host); in to: ret = host->ops->set_ios_post(host); above. And could probably simplfy the whole thing to: if (host->ops && host->ops->set_ios_post) return host->ops->set_ios_post(host);
return 0;
Or is there more to the function that I'm missing? That's just based on the patch context alone.