Merge with /pub/scm/linux/kernel/git/torvalds/linux-2.6.git
[linux-2.6] / arch / ppc / syslib / ibm44x_common.h
1 /*
2  * arch/ppc/kernel/ibm44x_common.h
3  *
4  * PPC44x system library
5  *
6  * Eugene Surovegin <eugene.surovegin@zultys.com> or <ebs@ebshome.net>
7  * Copyright (c) 2003, 2004 Zultys Technologies
8  *
9  * This program is free software; you can redistribute  it and/or modify it
10  * under  the terms of  the GNU General  Public License as published by the
11  * Free Software Foundation;  either version 2 of the  License, or (at your
12  * option) any later version.
13  *
14  */
15 #ifdef __KERNEL__
16 #ifndef __PPC_SYSLIB_IBM44x_COMMON_H
17 #define __PPC_SYSLIB_IBM44x_COMMON_H
18
19 #ifndef __ASSEMBLY__
20
21 /*
22  * All clocks are in Hz
23  */
24 struct ibm44x_clocks {
25         unsigned int vco;       /* VCO, 0 if system PLL is bypassed */
26         unsigned int cpu;       /* CPUCoreClk */
27         unsigned int plb;       /* PLBClk */
28         unsigned int opb;       /* OPBClk */
29         unsigned int ebc;       /* PerClk */
30         unsigned int uart0;
31         unsigned int uart1;
32 #ifdef CONFIG_440EP
33         unsigned int uart2;
34         unsigned int uart3;
35 #endif
36 };
37
38 /* common 44x platform init */
39 void ibm44x_platform_init(unsigned long r3, unsigned long r4, unsigned long r5,
40                           unsigned long r6, unsigned long r7) __init;
41
42 /* initialize decrementer and tick-related variables */
43 void ibm44x_calibrate_decr(unsigned int freq) __init;
44
45 #endif /* __ASSEMBLY__ */
46 #endif /* __PPC_SYSLIB_IBM44x_COMMON_H */
47 #endif /* __KERNEL__ */