aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLi Yang <leoli@freescale.com>2006-10-11 07:04:22 -0400
committerPaul Mackerras <paulus@samba.org>2006-10-16 01:53:30 -0400
commitf5a37b066165f9938a93653f6940f3dc85ce751d (patch)
tree0096aa8764289dbc609e8d875b4d108fcc9897dd
parent7d2bd30f67e231920091d55d0fffc3a4bf43e68a (diff)
[POWERPC] Fix MPC8360EMDS PB board support
MPC8360EMDS PB support is broken as some code was missing in last submission. This patch adds missing code and makes MPC8360EMDS PB support working. Signed-off-by: Li Yang <leoli@freescale.com> Signed-off-by: Kim Phillips <kim.phillips@freescale.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
-rw-r--r--arch/powerpc/platforms/83xx/Kconfig13
-rw-r--r--arch/powerpc/platforms/83xx/Makefile1
-rw-r--r--arch/powerpc/platforms/83xx/mpc8360e_pb.c19
3 files changed, 33 insertions, 0 deletions
diff --git a/arch/powerpc/platforms/83xx/Kconfig b/arch/powerpc/platforms/83xx/Kconfig
index 0975e94ac7c4..7edb6b461382 100644
--- a/arch/powerpc/platforms/83xx/Kconfig
+++ b/arch/powerpc/platforms/83xx/Kconfig
@@ -32,6 +32,13 @@ config MPC834x_ITX
32 Be aware that PCI initialization is the bootloader's 32 Be aware that PCI initialization is the bootloader's
33 responsiblilty. 33 responsiblilty.
34 34
35config MPC8360E_PB
36 bool "Freescale MPC8360E PB"
37 select DEFAULT_UIMAGE
38 select QUICC_ENGINE
39 help
40 This option enables support for the MPC836x EMDS Processor Board.
41
35endchoice 42endchoice
36 43
37config PPC_MPC832x 44config PPC_MPC832x
@@ -46,4 +53,10 @@ config MPC834x
46 select PPC_INDIRECT_PCI 53 select PPC_INDIRECT_PCI
47 default y if MPC834x_SYS || MPC834x_ITX 54 default y if MPC834x_SYS || MPC834x_ITX
48 55
56config PPC_MPC836x
57 bool
58 select PPC_UDBG_16550
59 select PPC_INDIRECT_PCI
60 default y if MPC8360E_PB
61
49endmenu 62endmenu
diff --git a/arch/powerpc/platforms/83xx/Makefile b/arch/powerpc/platforms/83xx/Makefile
index 9387a110d28a..e60fd7567fcd 100644
--- a/arch/powerpc/platforms/83xx/Makefile
+++ b/arch/powerpc/platforms/83xx/Makefile
@@ -5,3 +5,4 @@ obj-y := misc.o
5obj-$(CONFIG_PCI) += pci.o 5obj-$(CONFIG_PCI) += pci.o
6obj-$(CONFIG_MPC834x_SYS) += mpc834x_sys.o 6obj-$(CONFIG_MPC834x_SYS) += mpc834x_sys.o
7obj-$(CONFIG_MPC834x_ITX) += mpc834x_itx.o 7obj-$(CONFIG_MPC834x_ITX) += mpc834x_itx.o
8obj-$(CONFIG_MPC8360E_PB) += mpc8360e_pb.o
diff --git a/arch/powerpc/platforms/83xx/mpc8360e_pb.c b/arch/powerpc/platforms/83xx/mpc8360e_pb.c
index c0191900fc25..1a523c81c06e 100644
--- a/arch/powerpc/platforms/83xx/mpc8360e_pb.c
+++ b/arch/powerpc/platforms/83xx/mpc8360e_pb.c
@@ -30,6 +30,7 @@
30#include <linux/root_dev.h> 30#include <linux/root_dev.h>
31#include <linux/initrd.h> 31#include <linux/initrd.h>
32 32
33#include <asm/of_device.h>
33#include <asm/system.h> 34#include <asm/system.h>
34#include <asm/atomic.h> 35#include <asm/atomic.h>
35#include <asm/time.h> 36#include <asm/time.h>
@@ -141,6 +142,24 @@ static void __init mpc8360_sys_setup_arch(void)
141#endif 142#endif
142} 143}
143 144
145static int __init mpc8360_declare_of_platform_devices(void)
146{
147 struct device_node *np;
148
149 for (np = NULL; (np = of_find_compatible_node(np, "network",
150 "ucc_geth")) != NULL;) {
151 int ucc_num;
152 char bus_id[BUS_ID_SIZE];
153
154 ucc_num = *((uint *) get_property(np, "device-id", NULL)) - 1;
155 snprintf(bus_id, BUS_ID_SIZE, "ucc_geth.%u", ucc_num);
156 of_platform_device_create(np, bus_id, NULL);
157 }
158
159 return 0;
160}
161device_initcall(mpc8360_declare_of_platform_devices);
162
144void __init mpc8360_sys_init_IRQ(void) 163void __init mpc8360_sys_init_IRQ(void)
145{ 164{
146 165