Commit f5a37b06 authored by Li Yang's avatar Li Yang Committed by Paul Mackerras

[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: default avatarLi Yang <leoli@freescale.com>
Signed-off-by: default avatarKim Phillips <kim.phillips@freescale.com>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent 7d2bd30f
...@@ -32,6 +32,13 @@ config MPC834x_ITX ...@@ -32,6 +32,13 @@ config MPC834x_ITX
Be aware that PCI initialization is the bootloader's Be aware that PCI initialization is the bootloader's
responsiblilty. responsiblilty.
config MPC8360E_PB
bool "Freescale MPC8360E PB"
select DEFAULT_UIMAGE
select QUICC_ENGINE
help
This option enables support for the MPC836x EMDS Processor Board.
endchoice endchoice
config PPC_MPC832x config PPC_MPC832x
...@@ -46,4 +53,10 @@ config MPC834x ...@@ -46,4 +53,10 @@ config MPC834x
select PPC_INDIRECT_PCI select PPC_INDIRECT_PCI
default y if MPC834x_SYS || MPC834x_ITX default y if MPC834x_SYS || MPC834x_ITX
config PPC_MPC836x
bool
select PPC_UDBG_16550
select PPC_INDIRECT_PCI
default y if MPC8360E_PB
endmenu endmenu
...@@ -5,3 +5,4 @@ obj-y := misc.o ...@@ -5,3 +5,4 @@ obj-y := misc.o
obj-$(CONFIG_PCI) += pci.o obj-$(CONFIG_PCI) += pci.o
obj-$(CONFIG_MPC834x_SYS) += mpc834x_sys.o obj-$(CONFIG_MPC834x_SYS) += mpc834x_sys.o
obj-$(CONFIG_MPC834x_ITX) += mpc834x_itx.o obj-$(CONFIG_MPC834x_ITX) += mpc834x_itx.o
obj-$(CONFIG_MPC8360E_PB) += mpc8360e_pb.o
...@@ -30,6 +30,7 @@ ...@@ -30,6 +30,7 @@
#include <linux/root_dev.h> #include <linux/root_dev.h>
#include <linux/initrd.h> #include <linux/initrd.h>
#include <asm/of_device.h>
#include <asm/system.h> #include <asm/system.h>
#include <asm/atomic.h> #include <asm/atomic.h>
#include <asm/time.h> #include <asm/time.h>
...@@ -141,6 +142,24 @@ static void __init mpc8360_sys_setup_arch(void) ...@@ -141,6 +142,24 @@ static void __init mpc8360_sys_setup_arch(void)
#endif #endif
} }
static int __init mpc8360_declare_of_platform_devices(void)
{
struct device_node *np;
for (np = NULL; (np = of_find_compatible_node(np, "network",
"ucc_geth")) != NULL;) {
int ucc_num;
char bus_id[BUS_ID_SIZE];
ucc_num = *((uint *) get_property(np, "device-id", NULL)) - 1;
snprintf(bus_id, BUS_ID_SIZE, "ucc_geth.%u", ucc_num);
of_platform_device_create(np, bus_id, NULL);
}
return 0;
}
device_initcall(mpc8360_declare_of_platform_devices);
void __init mpc8360_sys_init_IRQ(void) void __init mpc8360_sys_init_IRQ(void)
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment