firmware-utils: add NEXX factory image support
authorblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 6 Oct 2014 04:52:01 +0000 (04:52 +0000)
committerblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 6 Oct 2014 04:52:01 +0000 (04:52 +0000)
This patch adds support to encode and decode images for certain types of
NEXX routers.

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@42784 3c298f89-4303-0410-b956-a3cf2f4a3e73

tools/firmware-utils/src/mkporayfw.c

index b4d5d78..8e0cf24 100644 (file)
@@ -58,6 +58,8 @@
 #define HWID_PORAY_X5_X6       0x35353335
 #define HWID_PORAY_X8          0x36353335
 #define HWID_PORAY_X1          0x38353335
+#define HWID_NEXX_WT15XXX      0x30353332
+#define HWID_NEXX_WT3020A      0x30323033
 
 /* Recognized XOR obfuscation keys */
 #define KEY_HAME               0
@@ -65,6 +67,8 @@
 #define KEY_PORAY_2            2
 #define KEY_PORAY_3            3
 #define KEY_PORAY_4            4
+#define KEY_NEXX_1             5
+#define KEY_NEXX_2             6
 
 /* XOR key length */
 #define KEY_LEN                        15
@@ -117,6 +121,8 @@ static uint8_t key[][KEY_LEN] = {
   {0xC9, 0x1C, 0x3A, 0x93, 0x92, 0x95, 0xC3, 0x63, 0xD0, 0xA3, 0x9C, 0x92, 0x2E, 0xE6, 0xC7},
   {0x19, 0x1B, 0x3A, 0x93, 0x92, 0x95, 0xC3, 0x63, 0xD0, 0xA3, 0x9C, 0x92, 0x2E, 0xE6, 0xC7},
   {0x79, 0x7B, 0x7A, 0x93, 0x92, 0x95, 0xC3, 0x63, 0xD0, 0xA3, 0x9C, 0x92, 0x2E, 0xE6, 0xC7},
+  {0x19, 0x1C, 0x4A, 0x93, 0x96, 0x95, 0xC3, 0x63, 0xD0, 0xA3, 0x9C, 0x92, 0x2E, 0x16, 0xC6},
+  {0x39, 0x1C, 0x4A, 0x93, 0x96, 0x95, 0xC3, 0x63, 0xD0, 0xA3, 0x9C, 0x92, 0x2E, 0x16, 0xC6},
 };
 
 static struct flash_layout layouts[] = {
@@ -198,6 +204,16 @@ static struct board_info boards[] = {
                .layout_id      = "8M",
                .key            = KEY_PORAY_1,
        }, {
+               .id             = "WT15XXX",
+               .hw_id          = HWID_NEXX_WT15XXX,
+               .layout_id      = "4M",
+               .key            = KEY_NEXX_1,
+       }, {
+               .id             = "WT3020A",
+               .hw_id          = HWID_NEXX_WT3020A,
+               .layout_id      = "4M",
+               .key            = KEY_NEXX_2,
+       }, {
                /* terminating entry */
        }
 };