blob: 514839c778eabb0e24d4c989cae0a9a2231eb70a [file] [log] [blame]
Dirk Behmea8b64502008-12-14 09:47:12 +01001/*
2 * (C) Copyright 2006-2008
3 * Texas Instruments, <www.ti.com>
4 * Richard Woodruff <r-woodruff2@ti.com>
5 *
Wolfgang Denk1a459662013-07-08 09:37:19 +02006 * SPDX-License-Identifier: GPL-2.0+
Dirk Behmea8b64502008-12-14 09:47:12 +01007 */
8#ifndef _CLOCKS_H_
9#define _CLOCKS_H_
10
11#define LDELAY 12000000
12
13#define S12M 12000000
14#define S13M 13000000
15#define S19_2M 19200000
16#define S24M 24000000
17#define S26M 26000000
18#define S38_4M 38400000
19
20#define FCK_IVA2_ON 0x00000001
21#define FCK_CORE1_ON 0x03fffe29
22#define ICK_CORE1_ON 0x3ffffffb
23#define ICK_CORE2_ON 0x0000001f
24#define FCK_WKUP_ON 0x000000e9
25#define ICK_WKUP_ON 0x0000003f
26#define FCK_DSS_ON 0x00000005
27#define ICK_DSS_ON 0x00000001
28#define FCK_CAM_ON 0x00000001
29#define ICK_CAM_ON 0x00000001
30#define FCK_PER_ON 0x0003ffff
31#define ICK_PER_ON 0x0003ffff
32
33/* Used to index into DPLL parameter tables */
34typedef struct {
35 unsigned int m;
36 unsigned int n;
37 unsigned int fsel;
38 unsigned int m2;
39} dpll_param;
40
Steve Sakoman7c281c92010-08-18 07:34:09 -070041struct dpll_per_36x_param {
42 unsigned int sys_clk;
43 unsigned int m;
44 unsigned int n;
45 unsigned int m2;
46 unsigned int m3;
47 unsigned int m4;
48 unsigned int m5;
49 unsigned int m6;
50 unsigned int m2div;
51};
52
Dirk Behmea8b64502008-12-14 09:47:12 +010053/* Following functions are exported from lowlevel_init.S */
54extern dpll_param *get_mpu_dpll_param(void);
55extern dpll_param *get_iva_dpll_param(void);
56extern dpll_param *get_core_dpll_param(void);
57extern dpll_param *get_per_dpll_param(void);
Alexander Holler7b897952011-04-19 09:27:55 -040058extern dpll_param *get_per2_dpll_param(void);
Dirk Behmea8b64502008-12-14 09:47:12 +010059
Steve Sakoman7c281c92010-08-18 07:34:09 -070060extern dpll_param *get_36x_mpu_dpll_param(void);
61extern dpll_param *get_36x_iva_dpll_param(void);
62extern dpll_param *get_36x_core_dpll_param(void);
63extern dpll_param *get_36x_per_dpll_param(void);
Naumann Andreasa704a6d2013-07-09 09:43:17 +020064extern dpll_param *get_36x_per2_dpll_param(void);
Steve Sakoman7c281c92010-08-18 07:34:09 -070065
Dirk Behmea8b64502008-12-14 09:47:12 +010066extern void *_end_vect, *_start;
67
68#endif