diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/firmware-utils/src/tplink-safeloader.c | 33 |
1 files changed, 23 insertions, 10 deletions
diff --git a/tools/firmware-utils/src/tplink-safeloader.c b/tools/firmware-utils/src/tplink-safeloader.c index 2e204aa233..4938f74eec 100644 --- a/tools/firmware-utils/src/tplink-safeloader.c +++ b/tools/firmware-utils/src/tplink-safeloader.c @@ -163,6 +163,15 @@ static const struct flash_partition_entry c2600_partitions[] = { }; /** + The support list for CPE210/220 +*/ +static const char cpe210_support_list[] = + "SupportList:\r\n" + "CPE210(TP-LINK|UN|N300-2):1.0\r\n" + "CPE210(TP-LINK|UN|N300-2):1.1\r\n" + "CPE220(TP-LINK|UN|N300-2):1.0\r\n" + "CPE220(TP-LINK|UN|N300-2):1.1\r\n"; +/** The support list for CPE210/220/510/520 */ static const char cpe510_support_list[] = @@ -170,11 +179,7 @@ static const char cpe510_support_list[] = "CPE510(TP-LINK|UN|N300-5):1.0\r\n" "CPE510(TP-LINK|UN|N300-5):1.1\r\n" "CPE520(TP-LINK|UN|N300-5):1.0\r\n" - "CPE520(TP-LINK|UN|N300-5):1.1\r\n" - "CPE210(TP-LINK|UN|N300-2):1.0\r\n" - "CPE210(TP-LINK|UN|N300-2):1.1\r\n" - "CPE220(TP-LINK|UN|N300-2):1.0\r\n" - "CPE220(TP-LINK|UN|N300-2):1.1\r\n"; + "CPE520(TP-LINK|UN|N300-5):1.1\r\n"; /** The support list for C2600 @@ -511,12 +516,18 @@ static void * generate_sysupgrade_image_c2600(const struct flash_partition_entry } /** Generates an image for CPE210/220/510/520 and writes it to a file */ -static void do_cpe510(const char *output, const char *kernel_image, const char *rootfs_image, uint32_t rev, bool add_jffs2_eof, bool sysupgrade) { +static void do_cpe(const char *output, + const char *kernel_image, + const char *rootfs_image, + uint32_t rev, + bool add_jffs2_eof, + bool sysupgrade, + const char *support_list) { struct image_partition_entry parts[6] = {}; parts[0] = make_partition_table(cpe510_partitions); parts[1] = make_soft_version(rev); - parts[2] = make_support_list(cpe510_support_list,false); + parts[2] = make_support_list(support_list, false); parts[3] = read_file("os-image", kernel_image, false); parts[4] = read_file("file-system", rootfs_image, add_jffs2_eof); @@ -549,7 +560,7 @@ static void do_c2600(const char *output, const char *kernel_image, const char *r parts[0] = make_partition_table(c2600_partitions); parts[1] = make_soft_version(rev); - parts[2] = make_support_list(c2600_support_list,true); + parts[2] = make_support_list(c2600_support_list, true); parts[3] = read_file("os-image", kernel_image, false); parts[4] = read_file("file-system", rootfs_image, add_jffs2_eof); @@ -656,8 +667,10 @@ int main(int argc, char *argv[]) { if (!output) error(1, 0, "no output filename has been specified"); - if (strcmp(board, "CPE510") == 0) - do_cpe510(output, kernel_image, rootfs_image, rev, add_jffs2_eof, sysupgrade); + if (strcmp(board, "CPE210") == 0) + do_cpe(output, kernel_image, rootfs_image, rev, add_jffs2_eof, sysupgrade, cpe210_support_list); + else if (strcmp(board, "CPE510") == 0) + do_cpe(output, kernel_image, rootfs_image, rev, add_jffs2_eof, sysupgrade, cpe510_support_list); else if (strcmp(board, "C2600") == 0) do_c2600(output, kernel_image, rootfs_image, rev, add_jffs2_eof, sysupgrade); else |