[PATCH] powerpc: Create "rom" (MTD) device prpmc2800
Milton Miller
miltonm at bga.com
Sat Jun 2 14:30:32 EST 2007
On Sat Jun 2 09:20:22 EST 2007, Mark A. Greer wrote:
> Find the "rom" device for the prpmc2800 and create a device for it.
> The device will be picked up by the code in
> drivers/mtd/maps/physmap_of.c
> and will setup MTD on that FLASH device.
...
> /*
> + * Register a platform device for MTD.
> + */
> +static int __init prpmc2800_register_mtd(void)
> +{
> + struct device_node *np;
> +
> + np = of_find_compatible_node(NULL, "rom", "direct-mapped");
> + of_platform_device_create(np, np->name, NULL);
> +}
> +arch_initcall(prpmc2800_register_mtd);
>
I think "direct-mapped" as compatible is a bit too broad or vague.
The compatible is supposed to be useable to find and match a driver
without regard to the name of the node. Perhaps direct-mapped-rom?
(as opossed to a direct-mapped-ram, sram, or some width flash bank).
Actually, looking back at your device tree {1], your list several
properties for flash, including bank-width and partition names.
Perhaps first compatible should be direct-mapped-partitioned-flash,
direct-mapped-partitioned-rom, direct-mapped-rom (to me a
direct-mapped-rom driver would expose one section of address space
read-only). I'm assuming that your driver for this "direct-mapped"
device will look at these properties from the of device node and
call the mtd layer somewhat directly with their contents.
[1] http://ozlabs.org/pipermail/linuxppc-dev/2007-May/035858.html
milton
PS: I know you've posted this a few times. I'm just behind in
my reading and replying :-).
More information about the Linuxppc-dev
mailing list