--- a/arch/arm/mach-orion5x/wrt350n-v2-setup.c
+++ b/arch/arm/mach-orion5x/wrt350n-v2-setup.c
@@ -134,11 +134,11 @@ static struct mtd_partition wrt350n_v2_n
 	{
 		.name		= "kernel",
 		.offset		= 0x00000000,
-		.size		= 0x00760000,
+		.size		= 0x00140000,	// change to kernel mtd size here (1/3)
 	}, {
 		.name		= "rootfs",
-		.offset		= 0x001a0000,
-		.size		= 0x005c0000,
+		.offset		= 0x00140000,	// change to kernel mtd size here (2/3)
+		.size		= 0x00610000,	// adopt to kernel mtd size here (3/3) = 0x00750000 - <kernel mtd size>
 	}, {
 		.name		= "lang",
 		.offset		= 0x00760000,
@@ -151,6 +151,14 @@ static struct mtd_partition wrt350n_v2_n
 		.name		= "u-boot",
 		.offset		= 0x007c0000,
 		.size		= 0x00040000,
+	}, {
+		.name		= "eRcOmM_do_not_touch",
+		.offset		= 0x00750000,
+		.size		= 0x00010000,	// erasesize
+	}, {
+		.name		= "image",	// for sysupgrade
+		.offset		= 0x00000000,
+		.size		= 0x00750000,
 	},
 };
 
