[U-Boot] [PATCH 09/13] mmc: sdhci: Make set_ios_post() return int

Faiz Abbas faiz_abbas at ti.com
Wed Jan 30 06:17:17 UTC 2019


Hi Tom,

On 30/01/19 7:50 AM, Tom Rini wrote:
> 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 at 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.

You're right. Missed the ret = during some refactoring. Will fix

Thanks,
Faiz


More information about the U-Boot mailing list