Re: [PATCH] mmc: rtsx_pci: Do not set MMC_CAP2_FULL_PWR_CYCLE

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 22 Aug 2019 16:05:22 -0700
Philip Langdale <philipl@xxxxxxxxx> wrote:

> So, what's actually wrong? Well, either the controller doesn't really 
> support the
> low voltage range, or the card doesn't. As my machine here only has a 
> microsd slot,
> I can't test with an MMCplus card to see if low voltage MMC would
> work. Without that
> I can't say whether we should remove the host flag or somehow
> blacklist low voltage
> range on these cards (or any SD card?)
> 
> Would love to get your thoughts.

I did more reading and thinking. In the MMC spec, a low-voltage (1.8V)
supporting card can run at 1.8V directly from start up (and this is
what the existing core logic does). But for SD cards, i think this is
not true. I read the Low-Voltage-Signaling announcement which says
there is a new negotiation mechanism but I can't find it documented in
the SD 6.0 spec (despite the announcement saying it's part of the SD
6.0 spec). That implies that direct bring up at low voltage doesn't
work like it does for an MMC card.

Also, again without seeing an actual spec, I'd guess this means that
having bit 7 set in OCR cannot be interpreted the same way for an SD
card as for an MMC card. Perhaps it should be read to mean that the LVS
negotiation process should be executed, but even that might be silly,
because the whole point of LVS is to support scenarios where only 1.8V
is usable - that means negotiation must be done with no prior
knowledge. So you can't read OCR until you already know that 1.8V is
supported.

So maybe the punchline here is that shared logic that will try and
bring up a card at 1.8V should be MMC only and for SD cards, the LVS
negotiation should be implemented instead.

Finally, this Sandisk A2 card doesn't have the LV logo on it, so I
don't know whether it would support 1.8V operation if the LVS
negotiation was done directly or not - and I don't know whether setting
bit 7 in OCR is correct for an LV compliant card.

Lots of open questions.

--phil



[Index of Archives]     [Linux Memonry Technology]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux