|
|
|
@ -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[] = { |
|
|
|
@ -197,6 +203,16 @@ static struct board_info boards[] = { |
|
|
|
|
.hw_id = HWID_PORAY_X1, |
|
|
|
|
.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 */ |
|
|
|
|
} |
|
|
|
|