From 81d62c436202553cd783f8470333e4af2f01547d Mon Sep 17 00:00:00 2001 From: Florian Fainelli Date: Thu, 6 Dec 2012 22:40:17 +0000 Subject: [adm8668] replace the custom mtd driver with a partition parser Signed-off-by: Florian Fainelli git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34554 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../adm8668/files/arch/mips/adm8668/platform.c | 27 ++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'target/linux/adm8668/files/arch') diff --git a/target/linux/adm8668/files/arch/mips/adm8668/platform.c b/target/linux/adm8668/files/arch/mips/adm8668/platform.c index 5030565a2c..264eaf4858 100644 --- a/target/linux/adm8668/files/arch/mips/adm8668/platform.c +++ b/target/linux/adm8668/files/arch/mips/adm8668/platform.c @@ -1,4 +1,6 @@ /* + * Infineon/ADMTek 8668 (WildPass) platform devices support + * * Copyright (C) 2010 Scott Nicholas * Copyright (C) 2012 Florian Fainelli * @@ -11,6 +13,7 @@ #include #include #include +#include #include #include #include @@ -89,9 +92,33 @@ static struct platform_device adm8668_eth1_device = { .num_resources = ARRAY_SIZE(eth1_resources), }; +static const char *nor_probe_types[] = { "adm8668part", NULL }; + +static struct physmap_flash_data nor_flash_data = { + .width = 2, + .part_probe_types = nor_probe_types, +}; + +static struct resource nor_resources[] = { + { + .start = ADM8668_SMEM1_BASE, + .end = ADM8668_SMEM1_BASE + 0x800000 - 1, + .flags = IORESOURCE_MEM, + }, +}; + +static struct platform_device adm8668_nor_device = { + .name = "physmap-flash", + .id = -1, + .resource = nor_resources, + .num_resources = ARRAY_SIZE(nor_resources), + .dev.platform_data = &nor_flash_data, +}; + static struct platform_device *adm8668_devs[] = { &adm8668_eth0_device, &adm8668_eth1_device, + &adm8668_nor_device, }; int __devinit adm8668_devs_register(void) -- cgit v1.2.3