mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-28 15:41:40 +00:00
arm: omap5+: Add board specific ldo powering
It is not necessary all omap5+ based uses the same PMIC to poweron mmc. So add support for enabling mmc based on board. Reviewed-by: Tom Rini <trini@konsulko.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
This commit is contained in:
parent
bce2629887
commit
91d3e90668
3 changed files with 20 additions and 10 deletions
|
@ -174,4 +174,5 @@ int omap_mmc_init(int dev_index, uint host_caps_mask, uint f_max, int cd_gpio,
|
|||
int wp_gpio);
|
||||
|
||||
void vmmc_pbias_config(uint voltage);
|
||||
void board_mmc_poweron_ldo(uint voltage);
|
||||
#endif /* OMAP_MMC_H_ */
|
||||
|
|
|
@ -455,10 +455,14 @@ void v7_arch_cp15_set_acr(u32 acr, u32 cpu_midr, u32 cpu_rev_comb,
|
|||
}
|
||||
|
||||
#if defined(CONFIG_PALMAS_POWER)
|
||||
__weak void board_mmc_poweron_ldo(uint voltage)
|
||||
{
|
||||
palmas_mmc1_poweron_ldo(voltage);
|
||||
}
|
||||
|
||||
void vmmc_pbias_config(uint voltage)
|
||||
{
|
||||
u32 value = 0;
|
||||
struct vcores_data const *vcores = *omap_vcores;
|
||||
|
||||
value = readl((*ctrl)->control_pbias);
|
||||
value &= ~SDCARD_PWRDNZ;
|
||||
|
@ -467,15 +471,7 @@ void vmmc_pbias_config(uint voltage)
|
|||
value &= ~SDCARD_BIAS_PWRDNZ;
|
||||
writel(value, (*ctrl)->control_pbias);
|
||||
|
||||
if (vcores->core.pmic->i2c_slave_addr == 0x60) {
|
||||
if (voltage == LDO_VOLT_3V0)
|
||||
voltage = 0x19;
|
||||
else if (voltage == LDO_VOLT_1V8)
|
||||
voltage = 0xa;
|
||||
lp873x_mmc1_poweron_ldo(voltage);
|
||||
} else {
|
||||
palmas_mmc1_poweron_ldo(voltage);
|
||||
}
|
||||
board_mmc_poweron_ldo(voltage);
|
||||
|
||||
value = readl((*ctrl)->control_pbias);
|
||||
value |= SDCARD_BIAS_PWRDNZ;
|
||||
|
|
|
@ -710,6 +710,19 @@ int board_mmc_init(bd_t *bis)
|
|||
omap_mmc_init(1, 0, 0, -1, -1);
|
||||
return 0;
|
||||
}
|
||||
|
||||
void board_mmc_poweron_ldo(uint voltage)
|
||||
{
|
||||
if (board_is_dra71x_evm()) {
|
||||
if (voltage == LDO_VOLT_3V0)
|
||||
voltage = 0x19;
|
||||
else if (voltage == LDO_VOLT_1V8)
|
||||
voltage = 0xa;
|
||||
lp873x_mmc1_poweron_ldo(voltage);
|
||||
} else {
|
||||
palmas_mmc1_poweron_ldo(voltage);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_USB_DWC3
|
||||
|
|
Loading…
Reference in a new issue