mmc: tegra: Refactor frequency tuning code
authorPavan Kunapuli <pkunapuli@nvidia.com>
Fri, 16 Aug 2013 14:07:38 +0000 (19:07 +0530)
committerMrutyunjay Sawant <msawant@nvidia.com>
Mon, 19 Aug 2013 17:38:09 +0000 (10:38 -0700)
commit8c226304c0e23a7609013846921fb2728dd95a96
treedfb05a690bff0f78b82b53c6a8143bb88237c292
parent6fbfe39b4d89e7ac22f519778cdaba36b7f5a5e1
mmc: tegra: Refactor frequency tuning code

Chip specific tuning frequency list.
Support low, high and max frequencies for each chip.
Generic tuning constraints update procedure for better scalability.

Synchronization between multiple devices for setting core voltage
constraints during tuning.
When tuning is being run for any interface, avoid data transfers on all
interfaces that are yet to finish tuning. This would avoid data errors
due to core voltage fluctuations as a result of tuning vcore constraints.

Fixed tuning status update as per the core voltage set status and tuning
window status.

If the verification of an already tuned best tap value fails, force
retuning.

Option to easily configure support for any two frequencies when DFS is
enabled. Simplified procedure to support higher tuning frequency count.

Modularize tuning code for better scalability, maintainability and
readability.

Bug 1330567

Change-Id: I98533a3ceb661b5b54c8903341181ad0009f4dfb
Signed-off-by: Pavan Kunapuli <pkunapuli@nvidia.com>
Reviewed-on: http://git-master/r/260568
GVS: Gerrit_Virtual_Submit
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
arch/arm/mach-tegra/include/mach/sdhci.h
drivers/mmc/host/sdhci-tegra.c
drivers/mmc/host/sdhci.c
drivers/mmc/host/sdhci.h