1 /* 2 * 3 * (c) 2009 Ilya Yanok, Emcraft Systems <yanok@emcraft.com> 4 * 5 * Modified for mx25 by John Rigby <jrigby@gmail.com> 6 * 7 * See file CREDITS for list of people who contributed to this 8 * project. 9 * 10 * This program is free software; you can redistribute it and/or 11 * modify it under the terms of the GNU General Public License as 12 * published by the Free Software Foundation; either version 2 of 13 * the License, or (at your option) any later version. 14 * 15 * This program is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU General Public License for more details. 19 * 20 * You should have received a copy of the GNU General Public License 21 * along with this program; if not, write to the Free Software 22 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 23 * MA 02111-1307 USA 24 */ 25 26 #ifndef __ASM_ARCH_CLOCK_H 27 #define __ASM_ARCH_CLOCK_H 28 29 #include <common.h> 30 31 #ifdef CONFIG_MX25_HCLK_FREQ 32 #define MXC_HCLK CONFIG_MX25_HCLK_FREQ 33 #else 34 #define MXC_HCLK 24000000 35 #endif 36 37 #ifdef CONFIG_MX25_CLK32 38 #define MXC_CLK32 CONFIG_MX25_CLK32 39 #else 40 #define MXC_CLK32 32768 41 #endif 42 43 enum mxc_clock { 44 /* PER clocks (do not change order) */ 45 MXC_CSI_CLK, 46 MXC_EPIT_CLK, 47 MXC_ESAI_CLK, 48 MXC_ESDHC1_CLK, 49 MXC_ESDHC2_CLK, 50 MXC_GPT_CLK, 51 MXC_I2C_CLK, 52 MXC_LCDC_CLK, 53 MXC_NFC_CLK, 54 MXC_OWIRE_CLK, 55 MXC_PWM_CLK, 56 MXC_SIM1_CLK, 57 MXC_SIM2_CLK, 58 MXC_SSI1_CLK, 59 MXC_SSI2_CLK, 60 MXC_UART_CLK, 61 /* Other clocks */ 62 MXC_ARM_CLK, 63 MXC_AHB_CLK, 64 MXC_IPG_CLK, 65 MXC_CSPI_CLK, 66 MXC_FEC_CLK, 67 MXC_CLK_NUM 68 }; 69 70 unsigned int mxc_get_clock(enum mxc_clock clk); 71 72 #define imx_get_uartclk() mxc_get_clock(MXC_UART_CLK) 73 #define imx_get_fecclk() mxc_get_clock(MXC_FEC_CLK) 74 75 #endif /* __ASM_ARCH_CLOCK_H */ 76