Messages in this thread | | | Date | Tue, 24 Nov 2015 16:17:15 +0100 | Subject | Re: [PATCH 1/2] mmc: sdhci: set bus voltage before enabling bus power | From | Ulf Hansson <> |
| |
[...]
>> > This one to not write an invalid voltage in the power control register >> > even if we have an external regulator for vmmc. >> > >> >> As I stated earlier, according to the SDHCI spec in the section for >> the Power Control Register. Bit 0 needs to be set when communicating >> with the card as it will for >> example enable the clock. >> > > I am okay with bit 0. I don't want to change this part, it will be done > later in sdhci_set_power(). My concern is only about bit 3-1, I want to > go through the switch statement.
For those variants that have a VMMC and don't care about the other bits (1->3), it means executing code that isn't needed.
Instead, as I have been telling people several times by now, let's convert the "sdhci core" into a library, so each variant can pick and do what suite them best.
> >> I suspect if I apply your patch several sdhci variants would break, >> don't you think? > > I wouldn't sign it with my blood but I don't think so. It seems they > don't care about the SD bus Voltage since they work with an unsupported > voltage.
You may very well be right, that it doesn't break anything. But in this case I really don't want to take the risk.
As stated above, the proper solution would be that sdhci_set_power() should be split up in smaller pieces, where each piece may become a library function. Each host variant can then decide what to use.
Future wise, that would mean when changing a library function, it will affect the subset of the sdhci variants that actually use it and not *all* sdhci variants. Moreover it will lead to optimized code.
Kind regards Uffe
| |