Re: [PATCH v2 06/11] mmc: sdhci: xenon: Use sdhci_set_power_and_voltage()

From: Nicolas Saenz Julienne
Date: Mon Mar 09 2020 - 06:54:04 EST


On Mon, 2020-03-09 at 09:20 +0200, Adrian Hunter wrote:
> > -static void xenon_set_power(struct sdhci_host *host, unsigned char mode,
> > - unsigned short vdd)
> > -{
> > - struct mmc_host *mmc = host->mmc;
> > - u8 pwr = host->pwr;
> > -
> > - sdhci_set_power_noreg(host, mode, vdd);
> > -
> > - if (host->pwr == pwr)
> > - return;
> > -
> > - if (host->pwr == 0)
> > - vdd = 0;
> > -
> > - if (!IS_ERR(mmc->supply.vmmc))
> > - mmc_regulator_set_ocr(mmc, mmc->supply.vmmc, vdd);
> > -}
>
> This code is different. The commit message should explain why it is
> equivalent. Has it been tested?

Yes, I should've pointed it out. The rationale behind including sdhci-xenon and
sdhci-pxav3 is based on xenon's original commit message (99c14fc360dbb):

mmc: sdhci-xenon: add set_power callback

Xenon sdh controller requests proper SD bus voltage select
bits programmed even with vmmc power supply. Any reserved
value(100b-000b) programmed in this field will lead to controller
ignore SD bus power bit and keep its value at zero.
Add set_power callback to handle this.

I can't test it, but it felt to me as the implementation differences are only
there as different people wrote the code. Ultimately, I'll be happy to drop
them from the series if you feel it's too much of an assumption, I can see how
the controllers could react badly to the ordering change. If not I can send a
v3 with fixed commit messages.

Regards,
Nicolas

Attachment: signature.asc
Description: This is a digitally signed message part