imx6: clock: Enable External Memory Interface [EIM] clock (eim_slow_clock)

This patch extends the imx6 clock code to enable or disable the EIM
slow clock, which in necessary when one wants to use EIM interface t
o read/write from external memory (e.g. NOR).

Signed-off-by: Lukasz Majewski <l.majewski@majess.pl>
This commit is contained in:
Lukasz Majewski 2016-11-28 07:18:14 +01:00 committed by Stefano Babic
parent 730d25443a
commit 4db4d42ee2
2 changed files with 15 additions and 0 deletions

View file

@ -1384,6 +1384,20 @@ void select_ldb_di_clock_source(enum ldb_di_clock clk)
} }
#endif #endif
#ifndef CONFIG_SYS_NO_FLASH
void enable_eim_clk(unsigned char enable)
{
u32 reg;
reg = __raw_readl(&imx_ccm->CCGR6);
if (enable)
reg |= MXC_CCM_CCGR6_EMI_SLOW_MASK;
else
reg &= ~MXC_CCM_CCGR6_EMI_SLOW_MASK;
__raw_writel(reg, &imx_ccm->CCGR6);
}
#endif
/***************************************************/ /***************************************************/
U_BOOT_CMD( U_BOOT_CMD(

View file

@ -79,4 +79,5 @@ void enable_qspi_clk(int qspi_num);
void enable_thermal_clk(void); void enable_thermal_clk(void);
void mxs_set_lcdclk(u32 base_addr, u32 freq); void mxs_set_lcdclk(u32 base_addr, u32 freq);
void select_ldb_di_clock_source(enum ldb_di_clock clk); void select_ldb_di_clock_source(enum ldb_di_clock clk);
void enable_eim_clk(unsigned char enable);
#endif /* __ASM_ARCH_CLOCK_H */ #endif /* __ASM_ARCH_CLOCK_H */