aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorMyungJoo Ham <myungjoo.ham@samsung.com>2011-12-01 02:00:38 -0500
committerKukjin Kim <kgene.kim@samsung.com>2012-03-11 01:32:32 -0500
commitbae82bdfb1edb2d709bd4ba0bda1ed0bb474f5e1 (patch)
tree117b7a5b9774c5f07bbf6f8b302f45a4dc6a4250 /arch/arm
parent72bce7b10a2dad7f6cd766a0b11ad0cf2c16f6d5 (diff)
ARM: EXYNOS: support Exynos4210-bus Devfreq driver on Nuri board
Support varying voltages: - GPIODVS for Buck2 is removed. - Voltage ragne for Buck2 is widen. Support Buck2 regulator for Exynos4210-bus devfreq driver: - Added device name for buck2 regulator - Added exynos4210-busfreq platform device fro Nuri board. Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/mach-exynos/mach-nuri.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/arch/arm/mach-exynos/mach-nuri.c b/arch/arm/mach-exynos/mach-nuri.c
index 92e3cf0101c4..3b9f3ff5539c 100644
--- a/arch/arm/mach-exynos/mach-nuri.c
+++ b/arch/arm/mach-exynos/mach-nuri.c
@@ -436,7 +436,7 @@ static struct regulator_consumer_supply __initdata max8997_buck1_[] = {
436 REGULATOR_SUPPLY("vdd_arm", NULL), /* CPUFREQ */ 436 REGULATOR_SUPPLY("vdd_arm", NULL), /* CPUFREQ */
437}; 437};
438static struct regulator_consumer_supply __initdata max8997_buck2_[] = { 438static struct regulator_consumer_supply __initdata max8997_buck2_[] = {
439 REGULATOR_SUPPLY("vdd_int", NULL), /* CPUFREQ */ 439 REGULATOR_SUPPLY("vdd_int", "exynos4210-busfreq.0"), /* CPUFREQ */
440}; 440};
441static struct regulator_consumer_supply __initdata max8997_buck3_[] = { 441static struct regulator_consumer_supply __initdata max8997_buck3_[] = {
442 REGULATOR_SUPPLY("vdd", "mali_dev.0"), /* G3D of Exynos 4 */ 442 REGULATOR_SUPPLY("vdd", "mali_dev.0"), /* G3D of Exynos 4 */
@@ -749,7 +749,7 @@ static struct regulator_init_data __initdata max8997_buck2_data = {
749 .constraints = { 749 .constraints = {
750 .name = "VINT_1.1V_C210", 750 .name = "VINT_1.1V_C210",
751 .min_uV = 900000, 751 .min_uV = 900000,
752 .max_uV = 1100000, 752 .max_uV = 1200000,
753 .valid_ops_mask = REGULATOR_CHANGE_VOLTAGE, 753 .valid_ops_mask = REGULATOR_CHANGE_VOLTAGE,
754 .always_on = 1, 754 .always_on = 1,
755 .state_mem = { 755 .state_mem = {
@@ -964,7 +964,6 @@ static struct max8997_platform_data __initdata nuri_max8997_pdata = {
964 .regulators = nuri_max8997_regulators, 964 .regulators = nuri_max8997_regulators,
965 965
966 .buck125_gpios = { EXYNOS4_GPX0(5), EXYNOS4_GPX0(6), EXYNOS4_GPL0(0) }, 966 .buck125_gpios = { EXYNOS4_GPX0(5), EXYNOS4_GPX0(6), EXYNOS4_GPL0(0) },
967 .buck2_gpiodvs = true,
968 967
969 .buck1_voltage[0] = 1350000, /* 1.35V */ 968 .buck1_voltage[0] = 1350000, /* 1.35V */
970 .buck1_voltage[1] = 1300000, /* 1.3V */ 969 .buck1_voltage[1] = 1300000, /* 1.3V */
@@ -1301,6 +1300,11 @@ static struct s3c2410_platform_i2c nuri_i2c0_platdata __initdata = {
1301 .sda_delay = 200, 1300 .sda_delay = 200,
1302}; 1301};
1303 1302
1303/* DEVFREQ controlling memory/bus */
1304static struct platform_device exynos4_bus_devfreq = {
1305 .name = "exynos4210-busfreq",
1306};
1307
1304static struct platform_device *nuri_devices[] __initdata = { 1308static struct platform_device *nuri_devices[] __initdata = {
1305 /* Samsung Platform Devices */ 1309 /* Samsung Platform Devices */
1306 &s3c_device_i2c5, /* PMIC should initialize first */ 1310 &s3c_device_i2c5, /* PMIC should initialize first */
@@ -1342,6 +1346,7 @@ static struct platform_device *nuri_devices[] __initdata = {
1342 &cam_vt_cam15_fixed_rdev, 1346 &cam_vt_cam15_fixed_rdev,
1343 &cam_vdda_fixed_rdev, 1347 &cam_vdda_fixed_rdev,
1344 &cam_8m_12v_fixed_rdev, 1348 &cam_8m_12v_fixed_rdev,
1349 &exynos4_bus_devfreq,
1345}; 1350};
1346 1351
1347static void __init nuri_map_io(void) 1352static void __init nuri_map_io(void)