tplink-safeloader: fix C7v5 factory flashing from vendor fw > v1.1.x
[openwrt/openwrt.git] / tools / firmware-utils / src / tplink-safeloader.c
index deba84c6d1c143f07ff4a27682131c9ee2a4dc0a..ac71b3305ee68f19d08c05f3e0357b6345e883c2 100644 (file)
@@ -668,6 +668,50 @@ static struct device_info boards[] = {
                .last_sysupgrade_partition = "support-list",
        },
 
+       /** Firmware layout for the AD7200 */
+       {
+               .id = "AD7200",
+               .vendor = "",
+               .support_list =
+                       "SupportList:\r\n"
+                       "{product_name:Talon AD7200,product_ver:1.0.0,special_id:00000000}\r\n",
+               .part_trail = 0x00,
+               .soft_ver = NULL,
+
+               .partitions = {
+                       {"SBL1", 0x00000, 0x20000},
+                       {"MIBIB", 0x20000, 0x20000},
+                       {"SBL2", 0x40000, 0x20000},
+                       {"SBL3", 0x60000, 0x30000},
+                       {"DDRCONFIG", 0x90000, 0x10000},
+                       {"SSD", 0xa0000, 0x10000},
+                       {"TZ", 0xb0000, 0x30000},
+                       {"RPM", 0xe0000, 0x20000},
+                       {"fs-uboot", 0x100000, 0x70000},
+                       {"uboot-env", 0x170000, 0x40000},
+                       {"radio", 0x1b0000, 0x40000},
+                       {"os-image", 0x1f0000, 0x400000},
+                       {"file-system", 0x5f0000, 0x1900000},
+                       {"default-mac", 0x1ef0000, 0x00200},
+                       {"pin", 0x1ef0200, 0x00200},
+                       {"device-id", 0x1ef0400, 0x00200},
+                       {"product-info", 0x1ef0600, 0x0fa00},
+                       {"partition-table", 0x1f00000, 0x10000},
+                       {"soft-version", 0x1f10000, 0x10000},
+                       {"support-list", 0x1f20000, 0x10000},
+                       {"profile", 0x1f30000, 0x10000},
+                       {"default-config", 0x1f40000, 0x10000},
+                       {"user-config", 0x1f50000, 0x40000},
+                       {"qos-db", 0x1f90000, 0x40000},
+                       {"usb-config", 0x1fd0000, 0x10000},
+                       {"log", 0x1fe0000, 0x20000},
+                       {NULL, 0, 0}
+               },
+
+               .first_sysupgrade_partition = "os-image",
+               .last_sysupgrade_partition = "file-system"
+       },
+
        /** Firmware layout for the C2600 */
        {
                .id     = "C2600",
@@ -725,7 +769,8 @@ static struct device_info boards[] = {
                        "{product_name:Archer A7,product_ver:5.0.0,special_id:55530000}\n"
                        "{product_name:Archer A7,product_ver:5.0.0,special_id:43410000}\n"
                        "{product_name:Archer A7,product_ver:5.0.0,special_id:4A500000}\n"
-                       "{product_name:Archer A7,product_ver:5.0.0,special_id:54570000}\n",
+                       "{product_name:Archer A7,product_ver:5.0.0,special_id:54570000}\n"
+                       "{product_name:Archer A7,product_ver:5.0.0,special_id:52550000}\n",
                .part_trail = 0x00,
                .soft_ver = "soft_ver:1.0.0\n",
 
@@ -1217,7 +1262,7 @@ static struct device_info boards[] = {
                        "{product_name:Archer C7,product_ver:5.0.0,special_id:4B520000}\n",
 
                .part_trail = 0x00,
-               .soft_ver = "soft_ver:1.0.0\n",
+               .soft_ver = "soft_ver:7.0.0\n",
 
                /* We're using a dynamic kernel/rootfs split here */
                .partitions = {
@@ -1402,6 +1447,35 @@ static struct device_info boards[] = {
                .last_sysupgrade_partition = "file-system"
        },
 
+       /** Firmware layout for the EAP235-Wall v1 */
+       {
+               .id     = "EAP235-WALL-V1",
+               .support_list =
+                       "SupportList:\r\n"
+                       "EAP235-Wall(TP-Link|UN|AC1200-D):1.0\r\n",
+               .part_trail = PART_TRAIL_NONE,
+               .soft_ver = NULL,
+               .soft_ver_compat_level = 1,
+
+               .partitions = {
+                       {"fs-uboot", 0x00000, 0x80000},
+                       {"partition-table", 0x80000, 0x02000},
+                       {"default-mac", 0x90000, 0x01000},
+                       {"support-list", 0x91000, 0x00100},
+                       {"product-info", 0x91100, 0x00400},
+                       {"soft-version", 0x92000, 0x00100},
+                       {"firmware", 0xa0000, 0xd20000},
+                       {"user-config", 0xdc0000, 0x30000},
+                       {"mutil-log", 0xf30000, 0x80000},
+                       {"oops", 0xfb0000, 0x40000},
+                       {"radio", 0xff0000, 0x10000},
+                       {NULL, 0, 0}
+               },
+
+               .first_sysupgrade_partition = "os-image",
+               .last_sysupgrade_partition = "file-system"
+       },
+
        /** Firmware layout for the EAP245 v1 */
        {
                .id     = "EAP245-V1",