+
+/* 8MiB flash. The struct mtd_partition matches original Netgear WGT634U
+ firmware. */
+static struct mtd_partition wgt634u_partitions[] = {
+ {
+ .name = "cfe",
+ .offset = 0,
+ .size = 0x60000, /* 384k */
+ .mask_flags = MTD_WRITEABLE /* force read-only */
+ },
+ {
+ .name = "config",
+ .offset = 0x60000,
+ .size = 0x20000 /* 128k */
+ },
+ {
+ .name = "linux",
+ .offset = 0x80000,
+ .size = 0x140000 /* 1280k */
+ },
+ {
+ .name = "jffs",
+ .offset = 0x1c0000,
+ .size = 0x620000 /* 6272k */
+ },
+ {
+ .name = "nvram",
+ .offset = 0x7e0000,
+ .size = 0x20000 /* 128k */
+ },
+};
+
+static struct physmap_flash_data wgt634u_flash_data = {
+ .parts = wgt634u_partitions,
+ .nr_parts = ARRAY_SIZE(wgt634u_partitions)
+};
+
+static struct resource wgt634u_flash_resource = {
+ .flags = IORESOURCE_MEM,
+};
+
+static struct platform_device wgt634u_flash = {
+ .name = "physmap-flash",
+ .id = 0,
+ .dev = { .platform_data = &wgt634u_flash_data, },
+ .resource = &wgt634u_flash_resource,
+ .num_resources = 1,
+};
+
+/* Platform devices */
+static struct platform_device *wgt634u_devices[] __initdata = {
+ &wgt634u_flash,
+ &wgt634u_gpio_leds,
+};
+