diff options
Diffstat (limited to 'roms/u-boot/arch/arm/include/asm/arch-mxs/clock.h')
-rw-r--r-- | roms/u-boot/arch/arm/include/asm/arch-mxs/clock.h | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/roms/u-boot/arch/arm/include/asm/arch-mxs/clock.h b/roms/u-boot/arch/arm/include/asm/arch-mxs/clock.h new file mode 100644 index 00000000..fc9d75b5 --- /dev/null +++ b/roms/u-boot/arch/arm/include/asm/arch-mxs/clock.h @@ -0,0 +1,54 @@ +/* + * Freescale i.MX23/i.MX28 Clock + * + * Copyright (C) 2011 Marek Vasut <marek.vasut@gmail.com> + * on behalf of DENX Software Engineering GmbH + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#ifndef __CLOCK_H__ +#define __CLOCK_H__ + +enum mxc_clock { + MXC_ARM_CLK = 0, + MXC_AHB_CLK, + MXC_IPG_CLK, + MXC_EMI_CLK, + MXC_GPMI_CLK, + MXC_IO0_CLK, + MXC_IO1_CLK, + MXC_XTAL_CLK, + MXC_SSP0_CLK, +#ifdef CONFIG_MX28 + MXC_SSP1_CLK, + MXC_SSP2_CLK, + MXC_SSP3_CLK, +#endif +}; + +enum mxs_ioclock { + MXC_IOCLK0 = 0, + MXC_IOCLK1, +}; + +enum mxs_sspclock { + MXC_SSPCLK0 = 0, +#ifdef CONFIG_MX28 + MXC_SSPCLK1, + MXC_SSPCLK2, + MXC_SSPCLK3, +#endif +}; + +uint32_t mxc_get_clock(enum mxc_clock clk); + +void mxs_set_ioclk(enum mxs_ioclock io, uint32_t freq); +void mxs_set_sspclk(enum mxs_sspclock ssp, uint32_t freq, int xtal); +void mxs_set_ssp_busclock(unsigned int bus, uint32_t freq); +void mxs_set_lcdclk(uint32_t freq); + +/* Compatibility with the FEC Ethernet driver */ +#define imx_get_fecclk() mxc_get_clock(MXC_AHB_CLK) + +#endif /* __CLOCK_H__ */ |