This commit was manufactured by cvs2svn to create branch 'vserver'.
[linux-2.6.git] / arch / ppc / platforms / rpx8260.c
1 /*
2  * arch/ppc/platforms/rpx8260.c
3  *
4  * RPC EP8260 platform support
5  *
6  * Author: Dan Malek <dan@embeddededge.com>
7  * Derived from: pq2ads_setup.c by Kumar
8  *
9  * Copyright 2004 Embedded Edge, LLC
10  *
11  * This program is free software; you can redistribute  it and/or modify it
12  * under  the terms of  the GNU General  Public License as published by the
13  * Free Software Foundation;  either version 2 of the  License, or (at your
14  * option) any later version.
15  */
16
17 #include <linux/config.h>
18 #include <linux/seq_file.h>
19
20 #include <asm/mpc8260.h>
21 #include <asm/machdep.h>
22
23 static void (*callback_setup_arch)(void);
24
25 extern unsigned char __res[sizeof(bd_t)];
26
27 extern void m8260_init(unsigned long r3, unsigned long r4,
28         unsigned long r5, unsigned long r6, unsigned long r7);
29
30 static int
31 ep8260_show_cpuinfo(struct seq_file *m)
32 {
33         bd_t    *binfo = (bd_t *)__res;
34
35         seq_printf(m, "vendor\t\t: RPC\n"
36                       "machine\t\t: EP8260 PPC\n"
37                       "\n"
38                       "mem size\t\t: 0x%08x\n"
39                       "console baud\t\t: %d\n"
40                       "\n",
41                       binfo->bi_memsize,
42                       binfo->bi_baudrate);
43         return 0;
44 }
45
46 static void __init
47 ep8260_setup_arch(void)
48 {
49         printk("RPC EP8260 Port\n");
50         callback_setup_arch();
51 }
52
53 void __init
54 platform_init(unsigned long r3, unsigned long r4, unsigned long r5,
55               unsigned long r6, unsigned long r7)
56 {
57         /* Generic 8260 platform initialization */
58         m8260_init(r3, r4, r5, r6, r7);
59
60         /* Anything special for this platform */
61         ppc_md.show_cpuinfo     = ep8260_show_cpuinfo;
62
63         callback_setup_arch     = ppc_md.setup_arch;
64         ppc_md.setup_arch       = ep8260_setup_arch;
65 }