platform: msm_shared: Retry on data timeout error

As per SDHC spec data timeout & data complete can be set together.
For some controllers its observed that data timeout is set on issuing
erase command and after sometime when the actual erase happens data
complete interrupt is set. If data timeout is set, retry and look
for the controller to set data complete interrupt.
And also correct the interger overflow in erase_timeout calculation.

Change-Id: Id82f37c5b25f632793a5e56e7a1932d86d0581e6
2 files changed