diff options
Diffstat (limited to 'arch/powerpc/sysdev/rom.c')
-rw-r--r-- | arch/powerpc/sysdev/rom.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/arch/powerpc/sysdev/rom.c b/arch/powerpc/sysdev/rom.c new file mode 100644 index 000000000000..bf5b3f10e6c6 --- /dev/null +++ b/arch/powerpc/sysdev/rom.c | |||
@@ -0,0 +1,31 @@ | |||
1 | /* | ||
2 | * ROM device registration | ||
3 | * | ||
4 | * (C) 2006 MontaVista Software, Inc. This file is licensed under | ||
5 | * the terms of the GNU General Public License version 2. This program | ||
6 | * is licensed "as is" without any warranty of any kind, whether express | ||
7 | * or implied. | ||
8 | */ | ||
9 | |||
10 | #include <linux/kernel.h> | ||
11 | #include <asm/of_device.h> | ||
12 | |||
13 | static int __init powerpc_flash_init(void) | ||
14 | { | ||
15 | struct device_node *node = NULL; | ||
16 | |||
17 | /* | ||
18 | * Register all the devices which type is "rom" | ||
19 | */ | ||
20 | while ((node = of_find_node_by_type(node, "rom")) != NULL) { | ||
21 | if (node->name == NULL) { | ||
22 | printk(KERN_WARNING "powerpc_flash_init: found 'rom' " | ||
23 | "device, but with no name, skipping...\n"); | ||
24 | continue; | ||
25 | } | ||
26 | of_platform_device_create(node, node->name, NULL); | ||
27 | } | ||
28 | return 0; | ||
29 | } | ||
30 | |||
31 | arch_initcall(powerpc_flash_init); | ||