[RFC 2/3] Map GTA02 core voltage to vddarm supply

Rask Ingemann Lambertsen rask at sygehus.dk
Wed Apr 1 02:54:35 CEST 2009


   The main purpose of this patch is to make the supply name "vddarm"
available to the cpufreq driver. There are two unrelated changes (to be
split out) in this patch:

1) Allow core voltage down to 1.0 V.

2) Always enable the core voltage regulator. It somehow isn't enabled
anywhere else. I'm guessing the core's running on leakage current from
VDDalive when the kernel is booted.

 arch/arm/mach-s3c2442/mach-gta02.c |   16 +++++++++++++---
 1 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/arch/arm/mach-s3c2442/mach-gta02.c b/arch/arm/mach-s3c2442/mach-gta02.c
index e1f8b9b..f7cd406 100644
--- a/arch/arm/mach-s3c2442/mach-gta02.c
+++ b/arch/arm/mach-s3c2442/mach-gta02.c
@@ -540,6 +540,14 @@ static struct regulator_consumer_supply hcldo_consumers[] = {
 	},
 };
 
+
+/* This if so the cpufreq driver can find the core voltage regulator.  */
+static struct regulator_consumer_supply down1_consumers[] = {
+	{
+		.supply = "vddarm",
+	},
+};
+
 static char *gta02_batteries[] = {
 	"battery",
 };
@@ -579,13 +587,15 @@ struct pcf50633_platform_data gta02_pcf_pdata = {
 		[PCF50633_REGULATOR_DOWN1] = {
 			.constraints = {
 				.name = "CORE_1V3",
-				.min_uV = 1300000,
+				.min_uV = 1000000,
 				.max_uV = 1600000,
 				.valid_modes_mask = REGULATOR_MODE_NORMAL,
-				.boot_on = 1,
+				.valid_ops_mask = REGULATOR_CHANGE_VOLTAGE,
+				.always_on = 1,
 				.apply_uV = 1,
 			},
-			.num_consumer_supplies = 0,
+			.num_consumer_supplies = 1,
+			.consumer_supplies = down1_consumers,
 		},
 		[PCF50633_REGULATOR_DOWN2] = {
 			.constraints = {


-- 
Rask Ingemann Lambertsen
Danish law requires addresses in e-mail to be logged and stored for a year



More information about the openmoko-kernel mailing list