diff options
Diffstat (limited to 'arch/arm/mach-omap2/board-omap4panda.c')
| -rw-r--r-- | arch/arm/mach-omap2/board-omap4panda.c | 161 | 
1 files changed, 17 insertions, 144 deletions
diff --git a/arch/arm/mach-omap2/board-omap4panda.c b/arch/arm/mach-omap2/board-omap4panda.c index 0cfe2005cb5..9aaa9605766 100644 --- a/arch/arm/mach-omap2/board-omap4panda.c +++ b/arch/arm/mach-omap2/board-omap4panda.c @@ -41,7 +41,6 @@  #include <plat/usb.h>  #include <plat/mmc.h>  #include <video/omap-panel-generic-dpi.h> -#include "timer-gp.h"  #include "hsmmc.h"  #include "control.h" @@ -155,14 +154,6 @@ static struct omap_musb_board_data musb_board_data = {  	.power			= 100,  }; -static struct twl4030_usb_data omap4_usbphy_data = { -	.phy_init	= omap4430_phy_init, -	.phy_exit	= omap4430_phy_exit, -	.phy_power	= omap4430_phy_power, -	.phy_set_clock	= omap4430_phy_set_clk, -	.phy_suspend	= omap4430_phy_suspend, -}; -  static struct omap2_hsmmc_info mmc[] = {  	{  		.mmc		= 1, @@ -182,24 +173,16 @@ static struct omap2_hsmmc_info mmc[] = {  	{}	/* Terminator */  }; -static struct regulator_consumer_supply omap4_panda_vmmc_supply[] = { -	{ -		.supply = "vmmc", -		.dev_name = "omap_hsmmc.0", -	}, -}; - -static struct regulator_consumer_supply omap4_panda_vmmc5_supply = { -	.supply = "vmmc", -	.dev_name = "omap_hsmmc.4", +static struct regulator_consumer_supply omap4_panda_vmmc5_supply[] = { +	REGULATOR_SUPPLY("vmmc", "omap_hsmmc.4"),  };  static struct regulator_init_data panda_vmmc5 = {  	.constraints = {  		.valid_ops_mask = REGULATOR_CHANGE_STATUS,  	}, -	.num_consumer_supplies = 1, -	.consumer_supplies = &omap4_panda_vmmc5_supply, +	.num_consumer_supplies = ARRAY_SIZE(omap4_panda_vmmc5_supply), +	.consumer_supplies = omap4_panda_vmmc5_supply,  };  static struct fixed_voltage_config panda_vwlan = { @@ -274,128 +257,8 @@ static int __init omap4_twl6030_hsmmc_init(struct omap2_hsmmc_info *controllers)  	return 0;  } -static struct regulator_init_data omap4_panda_vaux2 = { -	.constraints = { -		.min_uV			= 1200000, -		.max_uV			= 2800000, -		.apply_uV		= true, -		.valid_modes_mask	= REGULATOR_MODE_NORMAL -					| REGULATOR_MODE_STANDBY, -		.valid_ops_mask	 = REGULATOR_CHANGE_VOLTAGE -					| REGULATOR_CHANGE_MODE -					| REGULATOR_CHANGE_STATUS, -	}, -}; - -static struct regulator_init_data omap4_panda_vaux3 = { -	.constraints = { -		.min_uV			= 1000000, -		.max_uV			= 3000000, -		.apply_uV		= true, -		.valid_modes_mask	= REGULATOR_MODE_NORMAL -					| REGULATOR_MODE_STANDBY, -		.valid_ops_mask	 = REGULATOR_CHANGE_VOLTAGE -					| REGULATOR_CHANGE_MODE -					| REGULATOR_CHANGE_STATUS, -	}, -}; - -/* VMMC1 for MMC1 card */ -static struct regulator_init_data omap4_panda_vmmc = { -	.constraints = { -		.min_uV			= 1200000, -		.max_uV			= 3000000, -		.apply_uV		= true, -		.valid_modes_mask	= REGULATOR_MODE_NORMAL -					| REGULATOR_MODE_STANDBY, -		.valid_ops_mask	 = REGULATOR_CHANGE_VOLTAGE -					| REGULATOR_CHANGE_MODE -					| REGULATOR_CHANGE_STATUS, -	}, -	.num_consumer_supplies  = 1, -	.consumer_supplies      = omap4_panda_vmmc_supply, -}; - -static struct regulator_init_data omap4_panda_vpp = { -	.constraints = { -		.min_uV			= 1800000, -		.max_uV			= 2500000, -		.apply_uV		= true, -		.valid_modes_mask	= REGULATOR_MODE_NORMAL -					| REGULATOR_MODE_STANDBY, -		.valid_ops_mask	 = REGULATOR_CHANGE_VOLTAGE -					| REGULATOR_CHANGE_MODE -					| REGULATOR_CHANGE_STATUS, -	}, -}; - -static struct regulator_init_data omap4_panda_vana = { -	.constraints = { -		.min_uV			= 2100000, -		.max_uV			= 2100000, -		.valid_modes_mask	= REGULATOR_MODE_NORMAL -					| REGULATOR_MODE_STANDBY, -		.valid_ops_mask	 = REGULATOR_CHANGE_MODE -					| REGULATOR_CHANGE_STATUS, -	}, -}; - -static struct regulator_init_data omap4_panda_vcxio = { -	.constraints = { -		.min_uV			= 1800000, -		.max_uV			= 1800000, -		.valid_modes_mask	= REGULATOR_MODE_NORMAL -					| REGULATOR_MODE_STANDBY, -		.valid_ops_mask	 = REGULATOR_CHANGE_MODE -					| REGULATOR_CHANGE_STATUS, -	}, -}; - -static struct regulator_init_data omap4_panda_vdac = { -	.constraints = { -		.min_uV			= 1800000, -		.max_uV			= 1800000, -		.valid_modes_mask	= REGULATOR_MODE_NORMAL -					| REGULATOR_MODE_STANDBY, -		.valid_ops_mask	 = REGULATOR_CHANGE_MODE -					| REGULATOR_CHANGE_STATUS, -	}, -}; - -static struct regulator_init_data omap4_panda_vusb = { -	.constraints = { -		.min_uV			= 3300000, -		.max_uV			= 3300000, -		.apply_uV		= true, -		.valid_modes_mask	= REGULATOR_MODE_NORMAL -					| REGULATOR_MODE_STANDBY, -		.valid_ops_mask	 =	REGULATOR_CHANGE_MODE -					| REGULATOR_CHANGE_STATUS, -	}, -}; - -static struct regulator_init_data omap4_panda_clk32kg = { -	.constraints = { -		.valid_ops_mask		= REGULATOR_CHANGE_STATUS, -	}, -}; - -static struct twl4030_platform_data omap4_panda_twldata = { -	.irq_base	= TWL6030_IRQ_BASE, -	.irq_end	= TWL6030_IRQ_END, - -	/* Regulators */ -	.vmmc		= &omap4_panda_vmmc, -	.vpp		= &omap4_panda_vpp, -	.vana		= &omap4_panda_vana, -	.vcxio		= &omap4_panda_vcxio, -	.vdac		= &omap4_panda_vdac, -	.vusb		= &omap4_panda_vusb, -	.vaux2		= &omap4_panda_vaux2, -	.vaux3		= &omap4_panda_vaux3, -	.clk32kg	= &omap4_panda_clk32kg, -	.usb		= &omap4_usbphy_data, -}; +/* Panda board uses the common PMIC configuration */ +static struct twl4030_platform_data omap4_panda_twldata;  /*   * Display monitor features are burnt in their EEPROM as EDID data. The EEPROM @@ -409,6 +272,16 @@ static struct i2c_board_info __initdata panda_i2c_eeprom[] = {  static int __init omap4_panda_i2c_init(void)  { +	omap4_pmic_get_config(&omap4_panda_twldata, TWL_COMMON_PDATA_USB, +			TWL_COMMON_REGULATOR_VDAC | +			TWL_COMMON_REGULATOR_VAUX2 | +			TWL_COMMON_REGULATOR_VAUX3 | +			TWL_COMMON_REGULATOR_VMMC | +			TWL_COMMON_REGULATOR_VPP | +			TWL_COMMON_REGULATOR_VANA | +			TWL_COMMON_REGULATOR_VCXIO | +			TWL_COMMON_REGULATOR_VUSB | +			TWL_COMMON_REGULATOR_CLK32KG);  	omap4_pmic_init("twl6030", &omap4_panda_twldata);  	omap_register_i2c_bus(2, 400, NULL, 0);  	/* @@ -716,5 +589,5 @@ MACHINE_START(OMAP4_PANDA, "OMAP4 Panda board")  	.init_early	= omap4_panda_init_early,  	.init_irq	= gic_init_irq,  	.init_machine	= omap4_panda_init, -	.timer		= &omap_timer, +	.timer		= &omap4_timer,  MACHINE_END  |