mirror of
https://github.com/u-boot/u-boot.git
synced 2024-11-28 23:23:30 +08:00
imx: mx6: implement mmc_get_env_dev
Implement mmc_get_env_dev, devno can be got from smbr1 of SRC. Introduce a weak function board_mmc_get_env_dev, different boards can implement it according to different sdhc controllers that used by the board. Signed-off-by: Peng Fan <peng.fan@nxp.com> Cc: Stefano Babic <sbabic@denx.de>
This commit is contained in:
parent
62d8cce9f3
commit
216d286c7e
@ -349,6 +349,38 @@ int arch_cpu_init(void)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef CONFIG_ENV_IS_IN_MMC
|
||||||
|
__weak int board_mmc_get_env_dev(int devno)
|
||||||
|
{
|
||||||
|
return CONFIG_SYS_MMC_ENV_DEV;
|
||||||
|
}
|
||||||
|
|
||||||
|
int mmc_get_env_dev(void)
|
||||||
|
{
|
||||||
|
struct src *src_regs = (struct src *)SRC_BASE_ADDR;
|
||||||
|
u32 soc_sbmr = readl(&src_regs->sbmr1);
|
||||||
|
u32 bootsel;
|
||||||
|
int devno;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Refer to
|
||||||
|
* "i.MX 6Dual/6Quad Applications Processor Reference Manual"
|
||||||
|
* Chapter "8.5.3.1 Expansion Device eFUSE Configuration"
|
||||||
|
* i.MX6SL/SX/UL has same layout.
|
||||||
|
*/
|
||||||
|
bootsel = (soc_sbmr & 0x000000FF) >> 6;
|
||||||
|
|
||||||
|
/* If not boot from sd/mmc, use default value */
|
||||||
|
if (bootsel != 1)
|
||||||
|
return CONFIG_SYS_MMC_ENV_DEV;
|
||||||
|
|
||||||
|
/* BOOT_CFG2[3] and BOOT_CFG2[4] */
|
||||||
|
devno = (soc_sbmr & 0x00001800) >> 11;
|
||||||
|
|
||||||
|
return board_mmc_get_env_dev(devno);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
int board_postclk_init(void)
|
int board_postclk_init(void)
|
||||||
{
|
{
|
||||||
set_ldo_voltage(LDO_SOC, 1175); /* Set VDDSOC to 1.175V */
|
set_ldo_voltage(LDO_SOC, 1175); /* Set VDDSOC to 1.175V */
|
||||||
|
Loading…
Reference in New Issue
Block a user