|
@@ -251,3 +251,113 @@ static struct regulator_consumer_supply sdp3430_vsim_supplies[] = {
|
|
|
|
|
|
static struct regulator_consumer_supply sdp3430_vmmc2_supplies[] = {
|
|
|
REGULATOR_SUPPLY("vmmc", "omap_hsmmc.1"),
|
|
|
+};
|
|
|
+
|
|
|
+/*
|
|
|
+ * Apply all the fixed voltages since most versions of U-Boot
|
|
|
+ * don't bother with that initialization.
|
|
|
+ */
|
|
|
+
|
|
|
+/* VAUX1 for mainboard (irda and sub-lcd) */
|
|
|
+static struct regulator_init_data sdp3430_vaux1 = {
|
|
|
+ .constraints = {
|
|
|
+ .min_uV = 2800000,
|
|
|
+ .max_uV = 2800000,
|
|
|
+ .apply_uV = true,
|
|
|
+ .valid_modes_mask = REGULATOR_MODE_NORMAL
|
|
|
+ | REGULATOR_MODE_STANDBY,
|
|
|
+ .valid_ops_mask = REGULATOR_CHANGE_MODE
|
|
|
+ | REGULATOR_CHANGE_STATUS,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+/* VAUX2 for camera module */
|
|
|
+static struct regulator_init_data sdp3430_vaux2 = {
|
|
|
+ .constraints = {
|
|
|
+ .min_uV = 2800000,
|
|
|
+ .max_uV = 2800000,
|
|
|
+ .apply_uV = true,
|
|
|
+ .valid_modes_mask = REGULATOR_MODE_NORMAL
|
|
|
+ | REGULATOR_MODE_STANDBY,
|
|
|
+ .valid_ops_mask = REGULATOR_CHANGE_MODE
|
|
|
+ | REGULATOR_CHANGE_STATUS,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+/* VAUX3 for LCD board */
|
|
|
+static struct regulator_init_data sdp3430_vaux3 = {
|
|
|
+ .constraints = {
|
|
|
+ .min_uV = 2800000,
|
|
|
+ .max_uV = 2800000,
|
|
|
+ .apply_uV = true,
|
|
|
+ .valid_modes_mask = REGULATOR_MODE_NORMAL
|
|
|
+ | REGULATOR_MODE_STANDBY,
|
|
|
+ .valid_ops_mask = REGULATOR_CHANGE_MODE
|
|
|
+ | REGULATOR_CHANGE_STATUS,
|
|
|
+ },
|
|
|
+ .num_consumer_supplies = ARRAY_SIZE(sdp3430_vaux3_supplies),
|
|
|
+ .consumer_supplies = sdp3430_vaux3_supplies,
|
|
|
+};
|
|
|
+
|
|
|
+/* VAUX4 for OMAP VDD_CSI2 (camera) */
|
|
|
+static struct regulator_init_data sdp3430_vaux4 = {
|
|
|
+ .constraints = {
|
|
|
+ .min_uV = 1800000,
|
|
|
+ .max_uV = 1800000,
|
|
|
+ .apply_uV = true,
|
|
|
+ .valid_modes_mask = REGULATOR_MODE_NORMAL
|
|
|
+ | REGULATOR_MODE_STANDBY,
|
|
|
+ .valid_ops_mask = REGULATOR_CHANGE_MODE
|
|
|
+ | REGULATOR_CHANGE_STATUS,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+/* VMMC1 for OMAP VDD_MMC1 (i/o) and MMC1 card */
|
|
|
+static struct regulator_init_data sdp3430_vmmc1 = {
|
|
|
+ .constraints = {
|
|
|
+ .min_uV = 1850000,
|
|
|
+ .max_uV = 3150000,
|
|
|
+ .valid_modes_mask = REGULATOR_MODE_NORMAL
|
|
|
+ | REGULATOR_MODE_STANDBY,
|
|
|
+ .valid_ops_mask = REGULATOR_CHANGE_VOLTAGE
|
|
|
+ | REGULATOR_CHANGE_MODE
|
|
|
+ | REGULATOR_CHANGE_STATUS,
|
|
|
+ },
|
|
|
+ .num_consumer_supplies = ARRAY_SIZE(sdp3430_vmmc1_supplies),
|
|
|
+ .consumer_supplies = sdp3430_vmmc1_supplies,
|
|
|
+};
|
|
|
+
|
|
|
+/* VMMC2 for MMC2 card */
|
|
|
+static struct regulator_init_data sdp3430_vmmc2 = {
|
|
|
+ .constraints = {
|
|
|
+ .min_uV = 1850000,
|
|
|
+ .max_uV = 1850000,
|
|
|
+ .apply_uV = true,
|
|
|
+ .valid_modes_mask = REGULATOR_MODE_NORMAL
|
|
|
+ | REGULATOR_MODE_STANDBY,
|
|
|
+ .valid_ops_mask = REGULATOR_CHANGE_MODE
|
|
|
+ | REGULATOR_CHANGE_STATUS,
|
|
|
+ },
|
|
|
+ .num_consumer_supplies = ARRAY_SIZE(sdp3430_vmmc2_supplies),
|
|
|
+ .consumer_supplies = sdp3430_vmmc2_supplies,
|
|
|
+};
|
|
|
+
|
|
|
+/* VSIM for OMAP VDD_MMC1A (i/o for DAT4..DAT7) */
|
|
|
+static struct regulator_init_data sdp3430_vsim = {
|
|
|
+ .constraints = {
|
|
|
+ .min_uV = 1800000,
|
|
|
+ .max_uV = 3000000,
|
|
|
+ .valid_modes_mask = REGULATOR_MODE_NORMAL
|
|
|
+ | REGULATOR_MODE_STANDBY,
|
|
|
+ .valid_ops_mask = REGULATOR_CHANGE_VOLTAGE
|
|
|
+ | REGULATOR_CHANGE_MODE
|
|
|
+ | REGULATOR_CHANGE_STATUS,
|
|
|
+ },
|
|
|
+ .num_consumer_supplies = ARRAY_SIZE(sdp3430_vsim_supplies),
|
|
|
+ .consumer_supplies = sdp3430_vsim_supplies,
|
|
|
+};
|
|
|
+
|
|
|
+static struct twl4030_platform_data sdp3430_twldata = {
|
|
|
+ /* platform_data for children goes here */
|
|
|
+ .gpio = &sdp3430_gpio_data,
|
|
|
+ .keypad = &sdp3430_kp_data,
|