On Mon, 19 Sep 2016 09:07:39 -0700 (PDT)
TsvetanUsunov <tsvetanusu...@gmail.com> wrote:

> Hi,
> We make our final touch of A64-OLinuXino PCB and there we add option eMMC 
> Flash to work on dual voltages 1.8V and 3.3V.
> The eMMC is connected to AXP803 pin.34 GPIO1/LDO. The problem is that when 
> A64 boots and AXP803 is not initialized it outputs default 0.8V then after 
> initialization driver takes care to drive it  1.8V or 3.3V.
> This makes impossible to boot from eMMC which is not good. We now think for 
> solution which to drive eMMC at 3.3V initially when AXP803 output is below 
> 1.8V but this adds unnecessary hardware complexity.
> For hardware point of view it will be much more simplier if dedigated A64 
> GPIO is used and initially is pulled down and after AXP803 is initialized 
> is pulled up.
> How would you suggest us to implement it? Will this additional GPIO create 
> troubles in eMMC driver philosophy?
> For the SDMMC we are still hesitating what to do as we don't know if the 
> card which will be inserted will support low voltage and higher speeds at 
> all. Also eMMC Flash and SDMMC card should be driven by separate voltages, 
> as they may work in any combinations.
> This means we need another AXP803 LDO and another GPIO for the SDMMC card.
> By the way the current eMMC from Micron we use has 11MB Write speed no 
> matter what is the voltage and this is written in the datasheet, so maybe 
> we should switch and add this dual voltage to the SD MMC where someone 
> could use SD MMC card supporting higher clocks?
> I would love to hear your opinion.


I have only skimmed through the JEDEC MMC standard, but got an
impression that it is perfectly safe to run dual voltage cards at
1.8V voltage all the time. At least that's how I'm interpreting
the first and the last paragraphs of the "7.4.2 Operating voltage
range validation" section of the JESD84-A44 MMC Version 4.4 standard.

Basically, it looks like when you are running with the 1.8V
voltage, you can do everything that is possible with 3.3V and
it just additionally allows higher speed modes (HS200).
Presumably also consuming less power.

The init sequence also involves starting the card with 3.3V. Then doing
the voltage negotiation. Then powering the card off, switching to 1.8V
and basically repeating the same steps. But if the card is 1.8V
capable, then the initial negotiation step looks redundant. It can
also run at 1.8V instead of 3.3V without affecting anything.

Thus it seems to be a ridiculous idea to implement the runtime
1.8V/3.3V voltage switching for a dual voltage capable eMMC chip
that is soldered to the PCB. You can probably just connect it to
a fixed 1.8V voltage regulator and be done with that.

The voltage switching and negotiation seems to be only useful
for removable SD cards, where you don't have any idea if the
connected SD card actually supports 1.8V or not.

But I'm not an eMMC expert, so please correct me if I got
everything wrong.

Best regards,
Siarhei Siamashka

You received this message because you are subscribed to the Google Groups 
"linux-sunxi" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to