瀏覽代碼

mach-ux500: complete regulator constraints for MOP500 board

This board now has complete regulation constraints and can turn
off unused regulators. For the moment we need to wire VAUX1
(V-DISPLAY rail) always on since it somehow affects the external
MMC.

Cc: Liam Girdwood <lrg@slimlogic.co.uk>
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Linus Walleij 14 年之前
父節點
當前提交
db24520f90
共有 2 個文件被更改,包括 11 次插入1 次删除
  1. 8 1
      arch/arm/mach-ux500/board-mop500-regulators.c
  2. 3 0
      arch/arm/mach-ux500/board-mop500.c

+ 8 - 1
arch/arm/mach-ux500/board-mop500-regulators.c

@@ -272,7 +272,14 @@ struct regulator_init_data ab8500_regulators[AB8500_NUM_REGULATORS] = {
 			.max_uV = 2900000,
 			.valid_ops_mask = REGULATOR_CHANGE_VOLTAGE |
 					  REGULATOR_CHANGE_STATUS,
-			.boot_on = 1, /* must be on for display */
+			.boot_on = 1, /* display is on at boot */
+			/*
+			 * This voltage cannot be disabled right now because
+			 * it is somehow affecting the external MMC
+			 * functionality, though that typically will use
+			 * AUX3.
+			 */
+			.always_on = 1,
 		},
 		.num_consumer_supplies = ARRAY_SIZE(ab8500_vaux1_consumers),
 		.consumer_supplies = ab8500_vaux1_consumers,

+ 3 - 0
arch/arm/mach-ux500/board-mop500.c

@@ -458,6 +458,9 @@ static void __init mop500_init_machine(void)
 	i2c_register_board_info(0, mop500_i2c0_devices, i2c0_devs);
 	i2c_register_board_info(2, mop500_i2c2_devices,
 				ARRAY_SIZE(mop500_i2c2_devices));
+
+	/* This board has full regulator constraints */
+	regulator_has_full_constraints();
 }
 
 MACHINE_START(U8500, "ST-Ericsson MOP500 platform")