Skip to content
Snippets Groups Projects
Commit cf202d26 authored by Nitin Garg's avatar Nitin Garg Committed by Stefano Babic
Browse files

mx6: clock: Add thermal clock enable function


Add api to check and enable pll3 as required
for thermal sensor driver.

Signed-off-by: default avatarYe.Li <B37916@freescale.com>
Signed-off-by: default avatarNitin Garg <nitin.garg@freescale.com>
parent 02a32a92
No related branches found
No related tags found
No related merge requests found
......@@ -673,6 +673,36 @@ void hab_caam_clock_enable(unsigned char enable)
}
#endif
static void enable_pll3(void)
{
struct anatop_regs __iomem *anatop =
(struct anatop_regs __iomem *)ANATOP_BASE_ADDR;
/* make sure pll3 is enabled */
if ((readl(&anatop->usb1_pll_480_ctrl) &
BM_ANADIG_USB1_PLL_480_CTRL_LOCK) == 0) {
/* enable pll's power */
writel(BM_ANADIG_USB1_PLL_480_CTRL_POWER,
&anatop->usb1_pll_480_ctrl_set);
writel(0x80, &anatop->ana_misc2_clr);
/* wait for pll lock */
while ((readl(&anatop->usb1_pll_480_ctrl) &
BM_ANADIG_USB1_PLL_480_CTRL_LOCK) == 0)
;
/* disable bypass */
writel(BM_ANADIG_USB1_PLL_480_CTRL_BYPASS,
&anatop->usb1_pll_480_ctrl_clr);
/* enable pll output */
writel(BM_ANADIG_USB1_PLL_480_CTRL_ENABLE,
&anatop->usb1_pll_480_ctrl_set);
}
}
void enable_thermal_clk(void)
{
enable_pll3();
}
unsigned int mxc_get_clock(enum mxc_clock clk)
{
switch (clk) {
......
......@@ -66,4 +66,5 @@ int enable_spi_clk(unsigned char enable, unsigned spi_num);
void enable_ipu_clock(void);
int enable_fec_anatop_clock(enum enet_freq freq);
void enable_enet_clk(unsigned char enable);
void enable_thermal_clk(void);
#endif /* __ASM_ARCH_CLOCK_H */
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment