Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 197686df authored by David Gibson's avatar David Gibson Committed by Paul Mackerras
Browse files

[POWERPC] Abolish powerpc_flash_init()



powerpc_flash_init() implements a broken way of probing for flash
devices supported by the physmap_of driver.  It finds all nodes in the
device tree with device_type=="rom" and instantiates of_platform
devices for them.  This is fundamentally incompatible with the normal
and correct way of probing for of_platform_bus_probe().  Platforms
which relied on powerpc_flash_init()s behaviour (none are in-tree)
will have to update their platform probing code to correctly probe
busses containing flash devices.

Signed-off-by: default avatarDavid Gibson <david@gibson.dropbear.id.au>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent d9b55a03
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -28,7 +28,6 @@ endif

# Temporary hack until we have migrated to asm-powerpc
ifeq ($(ARCH),powerpc)
obj-$(CONFIG_MTD)		+= rom.o
obj-$(CONFIG_CPM2)		+= cpm2_common.o cpm2_pic.o
obj-$(CONFIG_8xx)		+= mpc8xx_pic.o commproc.o
obj-$(CONFIG_UCODE_PATCH)	+= micropatch.o

arch/powerpc/sysdev/rom.c

deleted100644 → 0
+0 −32
Original line number Diff line number Diff line
/*
 * ROM device registration
 *
 * (C) 2006 MontaVista Software, Inc. This file is licensed under
 * the terms of the GNU General Public License version 2. This program
 * is licensed "as is" without any warranty of any kind, whether express
 * or implied.
 */

#include <linux/kernel.h>
#include <asm/of_device.h>
#include <asm/of_platform.h>

static int __init powerpc_flash_init(void)
{
	struct device_node *node = NULL;

	/*
	 * Register all the devices which type is "rom"
	 */
	while ((node = of_find_node_by_type(node, "rom")) != NULL) {
		if (node->name == NULL) {
			printk(KERN_WARNING "powerpc_flash_init: found 'rom' "
				"device, but with no name, skipping...\n");
			continue;
		}
		of_platform_device_create(node, node->name, NULL);
	}
	return 0;
}

arch_initcall(powerpc_flash_init);