summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorPradeep Goudagunta <pgoudagunta@nvidia.com>2011-05-12 16:52:53 +0530
committerVarun Colbert <vcolbert@nvidia.com>2011-05-13 18:41:25 -0700
commit198f5cacc75fa8fea0fb0d06ff2ad03430fbb1fd (patch)
treeabfeebadab2b7c4f0faf3e4c8b8c8b4b51203ada /arch
parentd07c7dc33e61018a6c744979392aaef96b2375be (diff)
ARM: tegra: enterprise: sdhci: Initial changes
Enterprise board uses SDMMC3 slot for External SD and SDMMC1 slot for WiFi. Bug 822432 Change-Id: Ifa13d69fa65f974c8457b9ffec231579b356a810 Reviewed-on: http://git-master/r/30514 Reviewed-by: Daniel Willemsen <dwillemsen@nvidia.com> Tested-by: Daniel Willemsen <dwillemsen@nvidia.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-tegra/board-enterprise-sdhci.c41
1 files changed, 6 insertions, 35 deletions
diff --git a/arch/arm/mach-tegra/board-enterprise-sdhci.c b/arch/arm/mach-tegra/board-enterprise-sdhci.c
index 71994dca1ef3..1bceb6e06f38 100644
--- a/arch/arm/mach-tegra/board-enterprise-sdhci.c
+++ b/arch/arm/mach-tegra/board-enterprise-sdhci.c
@@ -35,7 +35,6 @@
#define ENTERPRISE_WLAN_PWR TEGRA_GPIO_PD4
#define ENTERPRISE_WLAN_RST TEGRA_GPIO_PD3
#define ENTERPRISE_SD_CD TEGRA_GPIO_PI5
-#define ENTERPRISE_SD_WP TEGRA_GPIO_PT3
static void (*wifi_status_cb)(int card_present, void *dev_id);
static void *wifi_status_cb_devid;
@@ -98,8 +97,7 @@ static struct resource sdhci_resource3[] = {
},
};
-
-static struct tegra_sdhci_platform_data tegra_sdhci_platform_data2 = {
+static struct tegra_sdhci_platform_data tegra_sdhci_platform_data0 = {
.clk_id = NULL,
.force_hs = 0,
.register_status_notify = enterprise_wifi_status_register,
@@ -128,7 +126,7 @@ static struct tegra_sdhci_platform_data tegra_sdhci_platform_data2 = {
.is_8bit_supported = false,
};
-static struct tegra_sdhci_platform_data tegra_sdhci_platform_data0 = {
+static struct tegra_sdhci_platform_data tegra_sdhci_platform_data2 = {
.clk_id = NULL,
.force_hs = 1,
.cd_gpio = -1,
@@ -136,7 +134,7 @@ static struct tegra_sdhci_platform_data tegra_sdhci_platform_data0 = {
.power_gpio = -1,
.tap_delay = 6,
.is_voltage_switch_supported = true,
- .vdd_rail_name = "vddio_sdmmc1",
+ .vdd_rail_name = "vddio_sdmmc3",
.slot_rail_name = "vddio_sd_slot",
.vdd_max_uv = 3320000,
.vdd_min_uv = 3280000,
@@ -211,27 +209,6 @@ static int enterprise_sd_cd_gpio_init(void)
return 0;
}
-static int enterprise_sd_wp_gpio_init(void)
-{
- unsigned int rc = 0;
-
- rc = gpio_request(ENTERPRISE_SD_WP, "write_protect");
- if (rc) {
- pr_err("Write protect gpio request failed:%d\n", rc);
- return rc;
- }
-
- tegra_gpio_enable(ENTERPRISE_SD_WP);
-
- rc = gpio_direction_input(ENTERPRISE_SD_WP);
- if (rc) {
- pr_err("Unable to configure direction for write protect gpio:%d\n", rc);
- return rc;
- }
-
- return 0;
-}
-
static int enterprise_wifi_status_register(
void (*callback)(int card_present, void *dev_id),
void *dev_id)
@@ -299,20 +276,14 @@ int __init enterprise_sdhci_init(void)
{
unsigned int rc = 0;
platform_device_register(&tegra_sdhci_device3);
- platform_device_register(&tegra_sdhci_device2);
- /* Fix ME: The gpios have to enabled for hot plug support */
rc = enterprise_sd_cd_gpio_init();
if (!rc) {
- tegra_sdhci_platform_data0.cd_gpio = ENTERPRISE_SD_CD;
- tegra_sdhci_platform_data0.cd_gpio_polarity = 0;
- }
- rc = enterprise_sd_wp_gpio_init();
- if (!rc) {
- tegra_sdhci_platform_data0.wp_gpio = ENTERPRISE_SD_WP;
- tegra_sdhci_platform_data0.wp_gpio_polarity = 1;
+ tegra_sdhci_platform_data2.cd_gpio = ENTERPRISE_SD_CD;
+ tegra_sdhci_platform_data2.cd_gpio_polarity = 0;
}
+ platform_device_register(&tegra_sdhci_device2);
platform_device_register(&tegra_sdhci_device0);
enterprise_wifi_init();