|
@@ -361,3 +361,65 @@ static struct twl4030_platform_data sdp3430_twldata = {
|
|
|
/* platform_data for children goes here */
|
|
|
.gpio = &sdp3430_gpio_data,
|
|
|
.keypad = &sdp3430_kp_data,
|
|
|
+
|
|
|
+ .vaux1 = &sdp3430_vaux1,
|
|
|
+ .vaux2 = &sdp3430_vaux2,
|
|
|
+ .vaux3 = &sdp3430_vaux3,
|
|
|
+ .vaux4 = &sdp3430_vaux4,
|
|
|
+ .vmmc1 = &sdp3430_vmmc1,
|
|
|
+ .vmmc2 = &sdp3430_vmmc2,
|
|
|
+ .vsim = &sdp3430_vsim,
|
|
|
+};
|
|
|
+
|
|
|
+static int __init omap3430_i2c_init(void)
|
|
|
+{
|
|
|
+ /* i2c1 for PMIC only */
|
|
|
+ omap3_pmic_get_config(&sdp3430_twldata,
|
|
|
+ TWL_COMMON_PDATA_USB | TWL_COMMON_PDATA_BCI |
|
|
|
+ TWL_COMMON_PDATA_MADC | TWL_COMMON_PDATA_AUDIO,
|
|
|
+ TWL_COMMON_REGULATOR_VDAC | TWL_COMMON_REGULATOR_VPLL2);
|
|
|
+ sdp3430_twldata.vdac->constraints.apply_uV = true;
|
|
|
+ sdp3430_twldata.vpll2->constraints.apply_uV = true;
|
|
|
+ sdp3430_twldata.vpll2->constraints.name = "VDVI";
|
|
|
+
|
|
|
+ omap3_pmic_init("twl4030", &sdp3430_twldata);
|
|
|
+
|
|
|
+ /* i2c2 on camera connector (for sensor control) and optional isp1301 */
|
|
|
+ omap_register_i2c_bus(2, 400, NULL, 0);
|
|
|
+ /* i2c3 on display connector (for DVI, tfp410) */
|
|
|
+ omap_register_i2c_bus(3, 400, NULL, 0);
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+#if defined(CONFIG_SMC91X) || defined(CONFIG_SMC91X_MODULE)
|
|
|
+
|
|
|
+static struct omap_smc91x_platform_data board_smc91x_data = {
|
|
|
+ .cs = 3,
|
|
|
+ .flags = GPMC_MUX_ADD_DATA | GPMC_TIMINGS_SMC91C96 |
|
|
|
+ IORESOURCE_IRQ_LOWLEVEL,
|
|
|
+};
|
|
|
+
|
|
|
+static void __init board_smc91x_init(void)
|
|
|
+{
|
|
|
+ if (omap_rev() > OMAP3430_REV_ES1_0)
|
|
|
+ board_smc91x_data.gpio_irq = 6;
|
|
|
+ else
|
|
|
+ board_smc91x_data.gpio_irq = 29;
|
|
|
+
|
|
|
+ gpmc_smc91x_init(&board_smc91x_data);
|
|
|
+}
|
|
|
+
|
|
|
+#else
|
|
|
+
|
|
|
+static inline void board_smc91x_init(void)
|
|
|
+{
|
|
|
+}
|
|
|
+
|
|
|
+#endif
|
|
|
+
|
|
|
+static void enable_board_wakeup_source(void)
|
|
|
+{
|
|
|
+ /* T2 interrupt line (keypad) */
|
|
|
+ omap_mux_init_signal("sys_nirq",
|
|
|
+ OMAP_WAKEUP_EN | OMAP_PIN_INPUT_PULLUP);
|
|
|
+}
|