|
@@ -282,3 +282,169 @@ static struct regulator_init_data aquila_ldo16_data = {
|
|
|
.apply_uV = 1,
|
|
|
.always_on = 1,
|
|
|
},
|
|
|
+};
|
|
|
+
|
|
|
+static struct regulator_init_data aquila_ldo17_data = {
|
|
|
+ .constraints = {
|
|
|
+ .name = "CAM_8M_1.8V",
|
|
|
+ .min_uV = 1800000,
|
|
|
+ .max_uV = 1800000,
|
|
|
+ .apply_uV = 1,
|
|
|
+ .always_on = 1,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+/* BUCK */
|
|
|
+static struct regulator_consumer_supply buck1_consumer =
|
|
|
+ REGULATOR_SUPPLY("vddarm", NULL);
|
|
|
+
|
|
|
+static struct regulator_consumer_supply buck2_consumer =
|
|
|
+ REGULATOR_SUPPLY("vddint", NULL);
|
|
|
+
|
|
|
+static struct regulator_init_data aquila_buck1_data = {
|
|
|
+ .constraints = {
|
|
|
+ .name = "VARM_1.2V",
|
|
|
+ .min_uV = 1200000,
|
|
|
+ .max_uV = 1200000,
|
|
|
+ .apply_uV = 1,
|
|
|
+ .valid_ops_mask = REGULATOR_CHANGE_VOLTAGE |
|
|
|
+ REGULATOR_CHANGE_STATUS,
|
|
|
+ },
|
|
|
+ .num_consumer_supplies = 1,
|
|
|
+ .consumer_supplies = &buck1_consumer,
|
|
|
+};
|
|
|
+
|
|
|
+static struct regulator_init_data aquila_buck2_data = {
|
|
|
+ .constraints = {
|
|
|
+ .name = "VINT_1.2V",
|
|
|
+ .min_uV = 1200000,
|
|
|
+ .max_uV = 1200000,
|
|
|
+ .apply_uV = 1,
|
|
|
+ .valid_ops_mask = REGULATOR_CHANGE_VOLTAGE |
|
|
|
+ REGULATOR_CHANGE_STATUS,
|
|
|
+ },
|
|
|
+ .num_consumer_supplies = 1,
|
|
|
+ .consumer_supplies = &buck2_consumer,
|
|
|
+};
|
|
|
+
|
|
|
+static struct regulator_init_data aquila_buck3_data = {
|
|
|
+ .constraints = {
|
|
|
+ .name = "VCC_1.8V",
|
|
|
+ .min_uV = 1800000,
|
|
|
+ .max_uV = 1800000,
|
|
|
+ .apply_uV = 1,
|
|
|
+ .state_mem = {
|
|
|
+ .enabled = 1,
|
|
|
+ },
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+static struct regulator_init_data aquila_buck4_data = {
|
|
|
+ .constraints = {
|
|
|
+ .name = "CAM_CORE_1.2V",
|
|
|
+ .min_uV = 1200000,
|
|
|
+ .max_uV = 1200000,
|
|
|
+ .apply_uV = 1,
|
|
|
+ .always_on = 1,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+static struct max8998_regulator_data aquila_regulators[] = {
|
|
|
+ { MAX8998_LDO2, &aquila_ldo2_data },
|
|
|
+ { MAX8998_LDO3, &aquila_ldo3_data },
|
|
|
+ { MAX8998_LDO4, &aquila_ldo4_data },
|
|
|
+ { MAX8998_LDO5, &aquila_ldo5_data },
|
|
|
+ { MAX8998_LDO6, &aquila_ldo6_data },
|
|
|
+ { MAX8998_LDO7, &aquila_ldo7_data },
|
|
|
+ { MAX8998_LDO8, &aquila_ldo8_data },
|
|
|
+ { MAX8998_LDO9, &aquila_ldo9_data },
|
|
|
+ { MAX8998_LDO10, &aquila_ldo10_data },
|
|
|
+ { MAX8998_LDO11, &aquila_ldo11_data },
|
|
|
+ { MAX8998_LDO12, &aquila_ldo12_data },
|
|
|
+ { MAX8998_LDO13, &aquila_ldo13_data },
|
|
|
+ { MAX8998_LDO14, &aquila_ldo14_data },
|
|
|
+ { MAX8998_LDO15, &aquila_ldo15_data },
|
|
|
+ { MAX8998_LDO16, &aquila_ldo16_data },
|
|
|
+ { MAX8998_LDO17, &aquila_ldo17_data },
|
|
|
+ { MAX8998_BUCK1, &aquila_buck1_data },
|
|
|
+ { MAX8998_BUCK2, &aquila_buck2_data },
|
|
|
+ { MAX8998_BUCK3, &aquila_buck3_data },
|
|
|
+ { MAX8998_BUCK4, &aquila_buck4_data },
|
|
|
+};
|
|
|
+
|
|
|
+static struct max8998_platform_data aquila_max8998_pdata = {
|
|
|
+ .num_regulators = ARRAY_SIZE(aquila_regulators),
|
|
|
+ .regulators = aquila_regulators,
|
|
|
+ .buck1_set1 = S5PV210_GPH0(3),
|
|
|
+ .buck1_set2 = S5PV210_GPH0(4),
|
|
|
+ .buck2_set3 = S5PV210_GPH0(5),
|
|
|
+ .buck1_voltage1 = 1200000,
|
|
|
+ .buck1_voltage2 = 1200000,
|
|
|
+ .buck1_voltage3 = 1200000,
|
|
|
+ .buck1_voltage4 = 1200000,
|
|
|
+ .buck2_voltage1 = 1200000,
|
|
|
+ .buck2_voltage2 = 1200000,
|
|
|
+};
|
|
|
+#endif
|
|
|
+
|
|
|
+static struct regulator_consumer_supply wm8994_fixed_voltage0_supplies[] = {
|
|
|
+ REGULATOR_SUPPLY("DBVDD", "5-001a"),
|
|
|
+ REGULATOR_SUPPLY("AVDD2", "5-001a"),
|
|
|
+ REGULATOR_SUPPLY("CPVDD", "5-001a"),
|
|
|
+};
|
|
|
+
|
|
|
+static struct regulator_consumer_supply wm8994_fixed_voltage1_supplies[] = {
|
|
|
+ REGULATOR_SUPPLY("SPKVDD1", "5-001a"),
|
|
|
+ REGULATOR_SUPPLY("SPKVDD2", "5-001a"),
|
|
|
+};
|
|
|
+
|
|
|
+static struct regulator_init_data wm8994_fixed_voltage0_init_data = {
|
|
|
+ .constraints = {
|
|
|
+ .always_on = 1,
|
|
|
+ },
|
|
|
+ .num_consumer_supplies = ARRAY_SIZE(wm8994_fixed_voltage0_supplies),
|
|
|
+ .consumer_supplies = wm8994_fixed_voltage0_supplies,
|
|
|
+};
|
|
|
+
|
|
|
+static struct regulator_init_data wm8994_fixed_voltage1_init_data = {
|
|
|
+ .constraints = {
|
|
|
+ .always_on = 1,
|
|
|
+ },
|
|
|
+ .num_consumer_supplies = ARRAY_SIZE(wm8994_fixed_voltage1_supplies),
|
|
|
+ .consumer_supplies = wm8994_fixed_voltage1_supplies,
|
|
|
+};
|
|
|
+
|
|
|
+static struct fixed_voltage_config wm8994_fixed_voltage0_config = {
|
|
|
+ .supply_name = "VCC_1.8V_PDA",
|
|
|
+ .microvolts = 1800000,
|
|
|
+ .gpio = -EINVAL,
|
|
|
+ .init_data = &wm8994_fixed_voltage0_init_data,
|
|
|
+};
|
|
|
+
|
|
|
+static struct fixed_voltage_config wm8994_fixed_voltage1_config = {
|
|
|
+ .supply_name = "V_BAT",
|
|
|
+ .microvolts = 3700000,
|
|
|
+ .gpio = -EINVAL,
|
|
|
+ .init_data = &wm8994_fixed_voltage1_init_data,
|
|
|
+};
|
|
|
+
|
|
|
+static struct platform_device wm8994_fixed_voltage0 = {
|
|
|
+ .name = "reg-fixed-voltage",
|
|
|
+ .id = 0,
|
|
|
+ .dev = {
|
|
|
+ .platform_data = &wm8994_fixed_voltage0_config,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+static struct platform_device wm8994_fixed_voltage1 = {
|
|
|
+ .name = "reg-fixed-voltage",
|
|
|
+ .id = 1,
|
|
|
+ .dev = {
|
|
|
+ .platform_data = &wm8994_fixed_voltage1_config,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+static struct regulator_consumer_supply wm8994_avdd1_supply =
|
|
|
+ REGULATOR_SUPPLY("AVDD1", "5-001a");
|
|
|
+
|
|
|
+static struct regulator_consumer_supply wm8994_dcvdd_supply =
|