diff options
author | Li Yang <leoli@freescale.com> | 2006-10-11 07:04:22 -0400 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2006-10-16 01:53:30 -0400 |
commit | f5a37b066165f9938a93653f6940f3dc85ce751d (patch) | |
tree | 0096aa8764289dbc609e8d875b4d108fcc9897dd | |
parent | 7d2bd30f67e231920091d55d0fffc3a4bf43e68a (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/Kconfig | 13 | ||||
-rw-r--r-- | arch/powerpc/platforms/83xx/Makefile | 1 | ||||
-rw-r--r-- | arch/powerpc/platforms/83xx/mpc8360e_pb.c | 19 |
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 | ||
35 | config 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 | |||
35 | endchoice | 42 | endchoice |
36 | 43 | ||
37 | config PPC_MPC832x | 44 | config 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 | ||
56 | config PPC_MPC836x | ||
57 | bool | ||
58 | select PPC_UDBG_16550 | ||
59 | select PPC_INDIRECT_PCI | ||
60 | default y if MPC8360E_PB | ||
61 | |||
49 | endmenu | 62 | endmenu |
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 | |||
5 | obj-$(CONFIG_PCI) += pci.o | 5 | obj-$(CONFIG_PCI) += pci.o |
6 | obj-$(CONFIG_MPC834x_SYS) += mpc834x_sys.o | 6 | obj-$(CONFIG_MPC834x_SYS) += mpc834x_sys.o |
7 | obj-$(CONFIG_MPC834x_ITX) += mpc834x_itx.o | 7 | obj-$(CONFIG_MPC834x_ITX) += mpc834x_itx.o |
8 | obj-$(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 | ||
145 | static 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 | } | ||
161 | device_initcall(mpc8360_declare_of_platform_devices); | ||
162 | |||
144 | void __init mpc8360_sys_init_IRQ(void) | 163 | void __init mpc8360_sys_init_IRQ(void) |
145 | { | 164 | { |
146 | 165 | ||