diff options
Diffstat (limited to 'arch/arm/mach-omap2/twl-common.c')
| -rw-r--r-- | arch/arm/mach-omap2/twl-common.c | 53 | 
1 files changed, 53 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/twl-common.c b/arch/arm/mach-omap2/twl-common.c index cf80f4cad72..9e8decf14a2 100644 --- a/arch/arm/mach-omap2/twl-common.c +++ b/arch/arm/mach-omap2/twl-common.c @@ -56,6 +56,37 @@ static struct twl4030_usb_data omap4_usb_pdata = {  	.phy_suspend	= omap4430_phy_suspend,  }; +static struct twl4030_usb_data omap3_usb_pdata = { +	.usb_mode	= T2_USB_MODE_ULPI, +}; + +static int omap3_batt_table[] = { +/* 0 C */ +30800, 29500, 28300, 27100, +26000, 24900, 23900, 22900, 22000, 21100, 20300, 19400, 18700, 17900, +17200, 16500, 15900, 15300, 14700, 14100, 13600, 13100, 12600, 12100, +11600, 11200, 10800, 10400, 10000, 9630,  9280,  8950,  8620,  8310, +8020,  7730,  7460,  7200,  6950,  6710,  6470,  6250,  6040,  5830, +5640,  5450,  5260,  5090,  4920,  4760,  4600,  4450,  4310,  4170, +4040,  3910,  3790,  3670,  3550 +}; + +static struct twl4030_bci_platform_data omap3_bci_pdata = { +	.battery_tmp_tbl	= omap3_batt_table, +	.tblsize		= ARRAY_SIZE(omap3_batt_table), +}; + +static struct twl4030_madc_platform_data omap3_madc_pdata = { +	.irq_line	= 1, +}; + +static struct twl4030_codec_audio_data omap3_audio; + +static struct twl4030_codec_data omap3_codec_pdata = { +	.audio_mclk = 26000000, +	.audio = &omap3_audio, +}; +  static struct regulator_init_data omap4_vdac_idata = {  	.constraints = {  		.min_uV			= 1800000, @@ -207,3 +238,25 @@ void __init omap4_pmic_get_config(struct twl4030_platform_data *pmic_data,  	    !pmic_data->clk32kg)  		pmic_data->clk32kg = &omap4_clk32kg_idata;  } + +void __init omap3_pmic_get_config(struct twl4030_platform_data *pmic_data, +				  u32 pdata_flags, u32 regulators_flags) +{ +	if (!pmic_data->irq_base) +		pmic_data->irq_base = TWL4030_IRQ_BASE; +	if (!pmic_data->irq_end) +		pmic_data->irq_end = TWL4030_IRQ_END; + +	/* Common platform data configurations */ +	if (pdata_flags & TWL_COMMON_PDATA_USB && !pmic_data->usb) +		pmic_data->usb = &omap3_usb_pdata; + +	if (pdata_flags & TWL_COMMON_PDATA_BCI && !pmic_data->bci) +		pmic_data->bci = &omap3_bci_pdata; + +	if (pdata_flags & TWL_COMMON_PDATA_MADC && !pmic_data->madc) +		pmic_data->madc = &omap3_madc_pdata; + +	if (pdata_flags & TWL_COMMON_PDATA_AUDIO && !pmic_data->codec) +		pmic_data->codec = &omap3_codec_pdata; +}  |