summaryrefslogtreecommitdiffstats
path: root/target/linux/ifxmips/files/arch
diff options
context:
space:
mode:
authorblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-12-25 13:26:41 +0000
committerblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-12-25 13:26:41 +0000
commita69c163d3209fcb43c480b8a4bbaa4bf60076ba7 (patch)
tree2b4fff0fb79f16697c5d4625113e35e2161d0aed /target/linux/ifxmips/files/arch
parent19e718d6f13de130351459aa598ee8c898d60461 (diff)
turned ifxmips mtd driver into a platform device
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@9926 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/ifxmips/files/arch')
-rw-r--r--target/linux/ifxmips/files/arch/mips/ifxmips/board.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/target/linux/ifxmips/files/arch/mips/ifxmips/board.c b/target/linux/ifxmips/files/arch/mips/ifxmips/board.c
index 05a0715d1..f048321bd 100644
--- a/target/linux/ifxmips/files/arch/mips/ifxmips/board.c
+++ b/target/linux/ifxmips/files/arch/mips/ifxmips/board.c
@@ -71,6 +71,29 @@ static struct platform_device ifxmips_mii[] =
.name = "ifxmips_mii0",
},
};
+
+static struct physmap_flash_data ifxmips_mtd_data = {
+ .width = 2,
+};
+
+static struct resource ifxmips_mtd_resource = {
+ .start = IFXMIPS_FLASH_START,
+ .end = IFXMIPS_FLASH_START + IFXMIPS_FLASH_MAX - 1,
+ .flags = IORESOURCE_MEM,
+};
+
+static struct platform_device ifxmips_mtd[] =
+{
+ {
+ .id = 0,
+ .name = "ifxmips_mtd",
+ .dev = {
+ .platform_data = &ifxmips_mtd_data,
+ },
+ .num_resources = 1,
+ .resource = &ifxmips_mtd_resource,
+ },
+};
const char*
get_system_type (void)
@@ -102,6 +125,7 @@ int __init ifxmips_init_devices(void)
ifxmips_devs[dev++] = ifxmips_led;
ifxmips_devs[dev++] = ifxmips_gpio;
ifxmips_devs[dev++] = ifxmips_mii;
+ ifxmips_devs[dev++] = ifxmips_mtd;
return platform_add_devices(ifxmips_devs, dev);
}