Pull acpica into release branch
[pandora-kernel.git] / arch / ppc / syslib / ibm440gx_common.h
1 /*
2  * PPC440GX system library
3  *
4  * Eugene Surovegin <eugene.surovegin@zultys.com> or <ebs@ebshome.net>
5  * Copyright (c) 2003, 2004 Zultys Technologies
6  *
7  * This program is free software; you can redistribute  it and/or modify it
8  * under  the terms of  the GNU General  Public License as published by the
9  * Free Software Foundation;  either version 2 of the  License, or (at your
10  * option) any later version.
11  *
12  */
13 #ifdef __KERNEL__
14 #ifndef __PPC_SYSLIB_IBM440GX_COMMON_H
15 #define __PPC_SYSLIB_IBM440GX_COMMON_H
16
17 #ifndef __ASSEMBLY__
18
19 #include <linux/config.h>
20 #include <linux/init.h>
21 #include <linux/seq_file.h>
22 #include <syslib/ibm44x_common.h>
23
24 /*
25  * Please, refer to the Figure 14.1 in 440GX user manual
26  *
27  * if internal UART clock is used, ser_clk is ignored
28  */
29 void ibm440gx_get_clocks(struct ibm44x_clocks*, unsigned int sys_clk,
30         unsigned int ser_clk) __init;
31
32 /* common 440GX platform init */
33 void ibm440gx_platform_init(unsigned long r3, unsigned long r4, unsigned long r5,
34                             unsigned long r6, unsigned long r7) __init;
35
36 /* Enable L2 cache */
37 void ibm440gx_l2c_enable(void) __init;
38
39 /* Disable L2 cache */
40 void ibm440gx_l2c_disable(void) __init;
41
42 /* Enable/disable L2 cache for a particular chip revision */
43 void ibm440gx_l2c_setup(struct ibm44x_clocks*) __init;
44
45 /* Get Ethernet Group */
46 int ibm440gx_get_eth_grp(void) __init;
47
48 /* Set Ethernet Group */
49 void ibm440gx_set_eth_grp(int group) __init;
50
51 /* Enable TAH devices */
52 void ibm440gx_tah_enable(void) __init;
53
54 /* Add L2C info to /proc/cpuinfo */
55 int ibm440gx_show_cpuinfo(struct seq_file*);
56
57 #endif /* __ASSEMBLY__ */
58 #endif /* __PPC_SYSLIB_IBM440GX_COMMON_H */
59 #endif /* __KERNEL__ */