aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc
diff options
context:
space:
mode:
authorValentine Barshak <vbarshak@ru.mvista.com>2007-10-30 12:57:39 -0400
committerJosh Boyer <jwboyer@linux.vnet.ibm.com>2007-12-23 14:23:18 -0500
commit6272175d2a0849ac36e3ea54c0b6949009532a75 (patch)
treeeb1edb67e63cfdbf97a2a353acca26d2cd681693 /arch/powerpc
parent3910cd8c11a883a5e4d644f24c56b9897dffb34c (diff)
[POWERPC] 4xx: 440GRx Rainier board support.
PowerPC 440GRx Rainier board support. Signed-off-by: Valentine Barshak <vbarshak@ru.mvista.com> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
Diffstat (limited to 'arch/powerpc')
-rw-r--r--arch/powerpc/platforms/44x/Kconfig14
-rw-r--r--arch/powerpc/platforms/44x/Makefile1
-rw-r--r--arch/powerpc/platforms/44x/rainier.c61
3 files changed, 76 insertions, 0 deletions
diff --git a/arch/powerpc/platforms/44x/Kconfig b/arch/powerpc/platforms/44x/Kconfig
index 3700c6aca78..aac548f25d8 100644
--- a/arch/powerpc/platforms/44x/Kconfig
+++ b/arch/powerpc/platforms/44x/Kconfig
@@ -44,6 +44,14 @@ config KATMAI
44 help 44 help
45 This option enables support for the AMCC PPC440SPe evaluation board. 45 This option enables support for the AMCC PPC440SPe evaluation board.
46 46
47config RAINIER
48 bool "Rainier"
49 depends on 44x
50 default n
51 select 440GRX
52 help
53 This option enables support for the AMCC PPC440GRX evaluation board.
54
47#config LUAN 55#config LUAN
48# bool "Luan" 56# bool "Luan"
49# depends on 44x 57# depends on 44x
@@ -74,6 +82,12 @@ config 440EPX
74 select IBM_NEW_EMAC_RGMII 82 select IBM_NEW_EMAC_RGMII
75 select IBM_NEW_EMAC_ZMII 83 select IBM_NEW_EMAC_ZMII
76 84
85config 440GRX
86 bool
87 select IBM_NEW_EMAC_EMAC4
88 select IBM_NEW_EMAC_RGMII
89 select IBM_NEW_EMAC_ZMII
90
77config 440GP 91config 440GP
78 bool 92 bool
79 select IBM_NEW_EMAC_ZMII 93 select IBM_NEW_EMAC_ZMII
diff --git a/arch/powerpc/platforms/44x/Makefile b/arch/powerpc/platforms/44x/Makefile
index 6f77034f421..a2a0dc13e9e 100644
--- a/arch/powerpc/platforms/44x/Makefile
+++ b/arch/powerpc/platforms/44x/Makefile
@@ -4,3 +4,4 @@ obj-$(CONFIG_TAISHAN) += taishan.o
4obj-$(CONFIG_BAMBOO) += bamboo.o 4obj-$(CONFIG_BAMBOO) += bamboo.o
5obj-$(CONFIG_SEQUOIA) += sequoia.o 5obj-$(CONFIG_SEQUOIA) += sequoia.o
6obj-$(CONFIG_KATMAI) += katmai.o 6obj-$(CONFIG_KATMAI) += katmai.o
7obj-$(CONFIG_RAINIER) += rainier.o
diff --git a/arch/powerpc/platforms/44x/rainier.c b/arch/powerpc/platforms/44x/rainier.c
new file mode 100644
index 00000000000..5a01bef2184
--- /dev/null
+++ b/arch/powerpc/platforms/44x/rainier.c
@@ -0,0 +1,61 @@
1/*
2 * Rainier board specific routines
3 *
4 * Valentine Barshak <vbarshak@ru.mvista.com>
5 * Copyright 2007 MontaVista Software Inc.
6 *
7 * Based on the Bamboo code by
8 * Josh Boyer <jwboyer@linux.vnet.ibm.com>
9 * Copyright 2007 IBM Corporation
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#include <linux/init.h>
17#include <asm/machdep.h>
18#include <asm/prom.h>
19#include <asm/udbg.h>
20#include <asm/time.h>
21#include <asm/uic.h>
22#include <asm/of_platform.h>
23#include "44x.h"
24
25static struct of_device_id rainier_of_bus[] = {
26 { .compatible = "ibm,plb4", },
27 { .compatible = "ibm,opb", },
28 { .compatible = "ibm,ebc", },
29 {},
30};
31
32static int __init rainier_device_probe(void)
33{
34 if (!machine_is(rainier))
35 return 0;
36
37 of_platform_bus_probe(NULL, rainier_of_bus, NULL);
38
39 return 0;
40}
41device_initcall(rainier_device_probe);
42
43static int __init rainier_probe(void)
44{
45 unsigned long root = of_get_flat_dt_root();
46
47 if (!of_flat_dt_is_compatible(root, "amcc,rainier"))
48 return 0;
49
50 return 1;
51}
52
53define_machine(rainier) {
54 .name = "Rainier",
55 .probe = rainier_probe,
56 .progress = udbg_progress,
57 .init_IRQ = uic_init_tree,
58 .get_irq = uic_get_irq,
59 .restart = ppc44x_reset_system,
60 .calibrate_decr = generic_calibrate_decr,
61};