Skip to contentSkip to conversation

omap_hsmmc: remove 'UGLY HACK: workaround regulator framework bugs'

PATCH In review Adrian Hunter 1 participant 2 messages Aug 5, 2010

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 omap_hsmmc: remove 'UGLY HACK: workaround regulator framework bugs'

Quoted 1 line

From 4e0d37a810e92395390640f699feac5de42a9b02 Mon Sep 17 00:00:00 2001

From: Adrian Hunter <[email protected]>
Date: Thu, 5 Aug 2010 10:49:34 +0300
Subject: [PATCH] omap_hsmmc: remove 'UGLY HACK: workaround regulator framework bugs'

The framework is fixed. The hack can be removed.

---
drivers/mmc/host/omap_hsmmc.c | 19 -------------------

1 files changed, 0 insertions(+), 19 deletions(-)
drivers/mmc/host/omap_hsmmc.c +0 -0
index 4a8776f..6bdae60 100644
@@ -401,25 +401,6 @@ static int omap_hsmmc_reg_get(struct omap_hsmmc_host *host)
		/* Allow an aux regulator */
		reg = regulator_get(host->dev, "vmmc_aux");
		host->vcc_aux = IS_ERR(reg) ? NULL : reg;

-
- /*
- * UGLY HACK: workaround regulator framework bugs.
- * When the bootloader leaves a supply active, it's
- * initialized with zero usecount ... and we can't
- * disable it without first enabling it. Until the
- * framework is fixed, we need a workaround like this
- * (which is safe for MMC, but not in general).
- */
- if (regulator_is_enabled(host->vcc) > 0) {
- regulator_enable(host->vcc);
- regulator_disable(host->vcc);
- }
- if (host->vcc_aux) {
- if (regulator_is_enabled(reg) > 0) {
- regulator_enable(reg);
- regulator_disable(reg);
- }
- }

	}

	return 0;
Signature · 1 line
1.6.3.3
#1 lore raw

Adding Madhu to cc

Quoted 42 lines · Hunter Adrian (Nokia-MS/Helsinki)
Quoted 1 line

From 4e0d37a810e92395390640f699feac5de42a9b02 Mon Sep 17 00:00:00 2001

From: Adrian Hunter <[email protected]>
Date: Thu, 5 Aug 2010 10:49:34 +0300
Subject: [PATCH] omap_hsmmc: remove 'UGLY HACK: workaround regulator framework bugs'

The framework is fixed. The hack can be removed.

---
 drivers/mmc/host/omap_hsmmc.c |   19 -------------------
 1 files changed, 0 insertions(+), 19 deletions(-)
drivers/mmc/host/omap_hsmmc.c +0 -19
index 4a8776f..6bdae60 100644
@@ -401,25 +401,6 @@ static int omap_hsmmc_reg_get(struct omap_hsmmc_host *host)
 		/* Allow an aux regulator */
 		reg = regulator_get(host->dev, "vmmc_aux");
 		host->vcc_aux = IS_ERR(reg) ? NULL : reg;
-
-		/*
-		* UGLY HACK:  workaround regulator framework bugs.
-		* When the bootloader leaves a supply active, it's
-		* initialized with zero usecount ... and we can't
-		* disable it without first enabling it.  Until the
-		* framework is fixed, we need a workaround like this
-		* (which is safe for MMC, but not in general).
-		*/
-		if (regulator_is_enabled(host->vcc) > 0) {
-			regulator_enable(host->vcc);
-			regulator_disable(host->vcc);
-		}
-		if (host->vcc_aux) {
-			if (regulator_is_enabled(reg) > 0) {
-				regulator_enable(reg);
-				regulator_disable(reg);
-			}
-		}
 	}
 
 	return 0;