1*af1d002fSLokesh Vutla /* 2*af1d002fSLokesh Vutla * (C) Copyright 2006-2008 3*af1d002fSLokesh Vutla * Texas Instruments, <www.ti.com> 4*af1d002fSLokesh Vutla * Richard Woodruff <r-woodruff2@ti.com> 5*af1d002fSLokesh Vutla * 6*af1d002fSLokesh Vutla * This program is free software; you can redistribute it and/or 7*af1d002fSLokesh Vutla * modify it under the terms of the GNU General Public License as 8*af1d002fSLokesh Vutla * published by the Free Software Foundation; either version 2 of 9*af1d002fSLokesh Vutla * the License, or (at your option) any later version. 10*af1d002fSLokesh Vutla * 11*af1d002fSLokesh Vutla * This program is distributed in the hope that it will be useful, 12*af1d002fSLokesh Vutla * but WITHOUT ANY WARRANTY; without even the implied warranty of 13*af1d002fSLokesh Vutla * MERCHANTABILITY or FITNESS FOR A PARTICULAR /PURPOSE. See the 14*af1d002fSLokesh Vutla * GNU General Public License for more details. 15*af1d002fSLokesh Vutla * 16*af1d002fSLokesh Vutla * You should have received a copy of the GNU General Public License 17*af1d002fSLokesh Vutla * along with this program; if not, write to the Free Software 18*af1d002fSLokesh Vutla * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 19*af1d002fSLokesh Vutla * MA 02111-1307 USA 20*af1d002fSLokesh Vutla */ 21*af1d002fSLokesh Vutla #ifndef _CLOCKS_H_ 22*af1d002fSLokesh Vutla #define _CLOCKS_H_ 23*af1d002fSLokesh Vutla 24*af1d002fSLokesh Vutla #define LDELAY 12000000 25*af1d002fSLokesh Vutla 26*af1d002fSLokesh Vutla #define S12M 12000000 27*af1d002fSLokesh Vutla #define S13M 13000000 28*af1d002fSLokesh Vutla #define S19_2M 19200000 29*af1d002fSLokesh Vutla #define S24M 24000000 30*af1d002fSLokesh Vutla #define S26M 26000000 31*af1d002fSLokesh Vutla #define S38_4M 38400000 32*af1d002fSLokesh Vutla 33*af1d002fSLokesh Vutla #define FCK_IVA2_ON 0x00000001 34*af1d002fSLokesh Vutla #define FCK_CORE1_ON 0x03fffe29 35*af1d002fSLokesh Vutla #define ICK_CORE1_ON 0x3ffffffb 36*af1d002fSLokesh Vutla #define ICK_CORE2_ON 0x0000001f 37*af1d002fSLokesh Vutla #define FCK_WKUP_ON 0x000000e9 38*af1d002fSLokesh Vutla #define ICK_WKUP_ON 0x0000003f 39*af1d002fSLokesh Vutla #define FCK_DSS_ON 0x00000005 40*af1d002fSLokesh Vutla #define ICK_DSS_ON 0x00000001 41*af1d002fSLokesh Vutla #define FCK_CAM_ON 0x00000001 42*af1d002fSLokesh Vutla #define ICK_CAM_ON 0x00000001 43*af1d002fSLokesh Vutla #define FCK_PER_ON 0x0003ffff 44*af1d002fSLokesh Vutla #define ICK_PER_ON 0x0003ffff 45*af1d002fSLokesh Vutla 46*af1d002fSLokesh Vutla /* Used to index into DPLL parameter tables */ 47*af1d002fSLokesh Vutla typedef struct { 48*af1d002fSLokesh Vutla unsigned int m; 49*af1d002fSLokesh Vutla unsigned int n; 50*af1d002fSLokesh Vutla unsigned int fsel; 51*af1d002fSLokesh Vutla unsigned int m2; 52*af1d002fSLokesh Vutla } dpll_param; 53*af1d002fSLokesh Vutla 54*af1d002fSLokesh Vutla struct dpll_per_36x_param { 55*af1d002fSLokesh Vutla unsigned int sys_clk; 56*af1d002fSLokesh Vutla unsigned int m; 57*af1d002fSLokesh Vutla unsigned int n; 58*af1d002fSLokesh Vutla unsigned int m2; 59*af1d002fSLokesh Vutla unsigned int m3; 60*af1d002fSLokesh Vutla unsigned int m4; 61*af1d002fSLokesh Vutla unsigned int m5; 62*af1d002fSLokesh Vutla unsigned int m6; 63*af1d002fSLokesh Vutla unsigned int m2div; 64*af1d002fSLokesh Vutla }; 65*af1d002fSLokesh Vutla 66*af1d002fSLokesh Vutla /* Following functions are exported from lowlevel_init.S */ 67*af1d002fSLokesh Vutla extern dpll_param *get_mpu_dpll_param(void); 68*af1d002fSLokesh Vutla extern dpll_param *get_iva_dpll_param(void); 69*af1d002fSLokesh Vutla extern dpll_param *get_core_dpll_param(void); 70*af1d002fSLokesh Vutla extern dpll_param *get_per_dpll_param(void); 71*af1d002fSLokesh Vutla extern dpll_param *get_per2_dpll_param(void); 72*af1d002fSLokesh Vutla 73*af1d002fSLokesh Vutla extern dpll_param *get_36x_mpu_dpll_param(void); 74*af1d002fSLokesh Vutla extern dpll_param *get_36x_iva_dpll_param(void); 75*af1d002fSLokesh Vutla extern dpll_param *get_36x_core_dpll_param(void); 76*af1d002fSLokesh Vutla extern dpll_param *get_36x_per_dpll_param(void); 77*af1d002fSLokesh Vutla 78*af1d002fSLokesh Vutla extern void *_end_vect, *_start; 79*af1d002fSLokesh Vutla 80*af1d002fSLokesh Vutla #endif 81