mmc: msm_sdcc: optimize sampling clock tuning procedure

SDCC-Card tuning sequence comprises of 16 phases. When the
card is detected for the first time the entire tuning
sequence should be implemented to determine the optimum phase
and lock the DLL. However, if the card is transitioning out
of low power mode or when the clock frequency is changed
dynamically, there is no need to carry out tuning sequence
for all 16 phases. It is sufficient to try with the last
successful tuning phase first. This reduces the overhead
involved in executing the entire tuning operation.

In case if the last successful tuning phase has failed,
tuning for all phases needs to be carried out to figure
out optimum phase.

Change-Id: I78ea074a9bdeb5686c96debfcde3490d50beaf09
Signed-off-by: Sujit Reddy Thumma <sthumma@codeaurora.org>
2 files changed