Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart
[sfrench/cifs-2.6.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 /* Enable L2 cache */
33 void ibm440gx_l2c_enable(void) __init;
34
35 /* Disable L2 cache */
36 void ibm440gx_l2c_disable(void) __init;
37
38 /* Enable/disable L2 cache for a particular chip revision */
39 void ibm440gx_l2c_setup(struct ibm44x_clocks*) __init;
40
41 /* Get Ethernet Group */
42 int ibm440gx_get_eth_grp(void) __init;
43
44 /* Set Ethernet Group */
45 void ibm440gx_set_eth_grp(int group) __init;
46
47 /* Enable TAH devices */
48 void ibm440gx_tah_enable(void) __init;
49
50 /* Add L2C info to /proc/cpuinfo */
51 int ibm440gx_show_cpuinfo(struct seq_file*);
52
53 #endif /* __ASSEMBLY__ */
54 #endif /* __PPC_SYSLIB_IBM440GX_COMMON_H */
55 #endif /* __KERNEL__ */