aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms/44x
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>2007-12-20 23:39:34 -0500
committerJosh Boyer <jwboyer@linux.vnet.ibm.com>2007-12-23 14:14:57 -0500
commit3de9c9cd22c69c6aa2e17d4dcf55dcf1260b5718 (patch)
tree1bb1665e7eda052017cd4b0c53a699883aa30691 /arch/powerpc/platforms/44x
parent190de005384204ba4dc339c3d05f8d40f6b16643 (diff)
[POWERPC] 4xx: Base support for 440SPe "Katmai" eval board
This adds base support for the Katmai board, including PCI-X and PCI-Express (but no RTC, nvram, etc... yet). Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Acked-by: Stefan Roese <sr@denx.de> Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
Diffstat (limited to 'arch/powerpc/platforms/44x')
-rw-r--r--arch/powerpc/platforms/44x/Kconfig14
-rw-r--r--arch/powerpc/platforms/44x/Makefile3
-rw-r--r--arch/powerpc/platforms/44x/katmai.c63
3 files changed, 79 insertions, 1 deletions
diff --git a/arch/powerpc/platforms/44x/Kconfig b/arch/powerpc/platforms/44x/Kconfig
index f9f65f90c9c2..3700c6aca782 100644
--- a/arch/powerpc/platforms/44x/Kconfig
+++ b/arch/powerpc/platforms/44x/Kconfig
@@ -34,6 +34,16 @@ config TAISHAN
34 This option enables support for the AMCC PPC440GX "Taishan" 34 This option enables support for the AMCC PPC440GX "Taishan"
35 evaluation board. 35 evaluation board.
36 36
37config KATMAI
38 bool "Katmai"
39 depends on 44x
40 default n
41 select 440SPe
42 select PCI
43 select PPC4xx_PCI_EXPRESS
44 help
45 This option enables support for the AMCC PPC440SPe evaluation board.
46
37#config LUAN 47#config LUAN
38# bool "Luan" 48# bool "Luan"
39# depends on 44x 49# depends on 44x
@@ -78,6 +88,10 @@ config 440GX
78config 440SP 88config 440SP
79 bool 89 bool
80 90
91config 440SPe
92 select IBM_NEW_EMAC_EMAC4
93 bool
94
81# 44x errata/workaround config symbols, selected by the CPU models above 95# 44x errata/workaround config symbols, selected by the CPU models above
82config IBM440EP_ERR42 96config IBM440EP_ERR42
83 bool 97 bool
diff --git a/arch/powerpc/platforms/44x/Makefile b/arch/powerpc/platforms/44x/Makefile
index 8b05589471d2..6f77034f421e 100644
--- a/arch/powerpc/platforms/44x/Makefile
+++ b/arch/powerpc/platforms/44x/Makefile
@@ -1,5 +1,6 @@
1obj-$(CONFIG_44x) := misc_44x.o 1obj-$(CONFIG_44x) := misc_44x.o
2obj-$(CONFIG_EBONY) += ebony.o 2obj-$(CONFIG_EBONY) += ebony.o
3obj-$(CONFIG_TAISHAN) += taishan.o 3obj-$(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
diff --git a/arch/powerpc/platforms/44x/katmai.c b/arch/powerpc/platforms/44x/katmai.c
new file mode 100644
index 000000000000..fd737d10f6e4
--- /dev/null
+++ b/arch/powerpc/platforms/44x/katmai.c
@@ -0,0 +1,63 @@
1/*
2 * Katmai board specific routines
3 *
4 * Benjamin Herrenschmidt <benh@kernel.crashing.org>
5 * Copyright 2007 IBM Corp.
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 <linux/of_platform.h>
18
19#include <asm/machdep.h>
20#include <asm/prom.h>
21#include <asm/udbg.h>
22#include <asm/time.h>
23#include <asm/uic.h>
24
25#include "44x.h"
26
27static struct of_device_id katmai_of_bus[] = {
28 { .compatible = "ibm,plb4", },
29 { .compatible = "ibm,opb", },
30 { .compatible = "ibm,ebc", },
31 {},
32};
33
34static int __init katmai_device_probe(void)
35{
36 if (!machine_is(katmai))
37 return 0;
38
39 of_platform_bus_probe(NULL, katmai_of_bus, NULL);
40
41 return 0;
42}
43device_initcall(katmai_device_probe);
44
45static int __init katmai_probe(void)
46{
47 unsigned long root = of_get_flat_dt_root();
48
49 if (!of_flat_dt_is_compatible(root, "amcc,katmai"))
50 return 0;
51
52 return 1;
53}
54
55define_machine(katmai) {
56 .name = "Katmai",
57 .probe = katmai_probe,
58 .progress = udbg_progress,
59 .init_IRQ = uic_init_tree,
60 .get_irq = uic_get_irq,
61 .restart = ppc44x_reset_system,
62 .calibrate_decr = generic_calibrate_decr,
63};