From af9898efd49bd39175217951389cddbb99bfa64b Mon Sep 17 00:00:00 2001 From: =?utf8?q?Andreas=20B=C3=B6hler?= Date: Sun, 15 Mar 2020 00:20:22 +0100 Subject: [PATCH] ath79: add support for TP-Link TL-WPA8630P v2 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit The TL-WPA8630P v2 is a HomePlug AV2 compatible device with a QCA9563 SoC and 2.4GHz and 5GHz WiFi modules. Specifications -------------- - QCA9563 750MHz, 2.4GHz WiFi - QCA9888 5GHz WiFi - 8MiB SPI Flash - 128MiB RAM - 3 GBit Ports (QCA8337) - PLC (QCA7550) MAC address assignment ---------------------- WiFi 2.4GHz and LAN share the same MAC address as printed on the label. 5GHz WiFi uses LAN-1, based on assumptions from similar devices. LAN Port assignment ------------------- While there are 3 physical LAN ports on the device, there will be 4 visible ports in OpenWrt. The fourth port (internal port 5) is used by the PowerLine Communication SoC and thus treated like a regular LAN port. Versions -------- Note that both TL-WPA8630 and TL-WPA8630P, as well as the different country-versions, differ in partitioning, and therefore shouldn't be cross-flashed. This adds support for the two known partitioning variants of the TL-WPA8630P, where the variants can be safely distinguished via the tplink-safeloader SupportList. For the non-P variants (TL-WPA8630), at least two additional partitioning schemes exist, and the same SupportList entry can have different partitioning. Thus, we don't support those officially (yet). Also note that the P version for Germany (DE) requires the international image version, but is properly protected by SupportList. In any case, please check the OpenWrt Wiki pages for the device before flashing anything! Installation ------------ Installation is possible from the OEM web interface. Make sure to install the latest OEM firmware first, so that the PLC firmware is at the latest version. However, please also check the Wiki page for hints according to altered partitioning between OEM firmware revisions. Additional thanks to Jon Davies and Joe Mullally for bringing order into the partitioning mess. Signed-off-by: Andreas Böhler [minor DTS adjustments, add label-mac-device, drop chosen, move common partitions to DTSI, rename de to int, add AU support strings, adjust TPLINK_BOARD_ID, create common node in generic-tp-link.mk, adjust commit message] Signed-off-by: Adrian Schmutzler --- src/tplink-safeloader.c | 72 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) diff --git a/src/tplink-safeloader.c b/src/tplink-safeloader.c index 0af1fe4..fa0e0bb 100644 --- a/src/tplink-safeloader.c +++ b/src/tplink-safeloader.c @@ -1380,6 +1380,78 @@ static struct device_info boards[] = { .last_sysupgrade_partition = "file-system" }, + /** Firmware layout for the TL-WPA8630P v2 (EU)*/ + { + .id = "TL-WPA8630P-V2-EU", + .vendor = "", + .support_list = + "SupportList:\n" + "{product_name:TL-WPA8630P,product_ver:2.0.0,special_id:45550000}\n", + .support_trail = '\x00', + .soft_ver = NULL, + + .partitions = { + {"factory-uboot", 0x00000, 0x20000}, + {"fs-uboot", 0x20000, 0x20000}, + {"firmware", 0x40000, 0x5e0000}, + {"partition-table", 0x620000, 0x02000}, + {"default-mac", 0x630000, 0x00020}, + {"pin", 0x630100, 0x00020}, + {"device-id", 0x630200, 0x00030}, + {"product-info", 0x631100, 0x01000}, + {"extra-para", 0x632100, 0x01000}, + {"soft-version", 0x640000, 0x01000}, + {"support-list", 0x641000, 0x01000}, + {"profile", 0x642000, 0x08000}, + {"user-config", 0x650000, 0x10000}, + {"default-config", 0x660000, 0x10000}, + {"default-nvm", 0x670000, 0xc0000}, + {"default-pib", 0x730000, 0x40000}, + {"radio", 0x7f0000, 0x10000}, + {NULL, 0, 0} + }, + + .first_sysupgrade_partition = "os-image", + .last_sysupgrade_partition = "file-system" + }, + + /** Firmware layout for the TL-WPA8630P v2 (INT)*/ + { + .id = "TL-WPA8630P-V2-INT", + .vendor = "", + .support_list = + "SupportList:\n" + "{product_name:TL-WPA8630P,product_ver:2.0.0,special_id:41550000}\n" + "{product_name:TL-WPA8630P,product_ver:2.0.0,special_id:44450000}\n" + "{product_name:TL-WPA8630P,product_ver:2.1.0,special_id:41550000}\n", + .support_trail = '\x00', + .soft_ver = NULL, + + .partitions = { + {"factory-uboot", 0x00000, 0x20000}, + {"fs-uboot", 0x20000, 0x20000}, + {"firmware", 0x40000, 0x5e0000}, + {"partition-table", 0x620000, 0x02000}, + {"extra-para", 0x632100, 0x01000}, + {"soft-version", 0x640000, 0x01000}, + {"support-list", 0x641000, 0x01000}, + {"profile", 0x642000, 0x08000}, + {"user-config", 0x650000, 0x10000}, + {"default-config", 0x660000, 0x10000}, + {"default-nvm", 0x670000, 0xc0000}, + {"default-pib", 0x730000, 0x40000}, + {"default-mac", 0x7e0000, 0x00020}, + {"pin", 0x7e0100, 0x00020}, + {"device-id", 0x7e0200, 0x00030}, + {"product-info", 0x7e1100, 0x01000}, + {"radio", 0x7f0000, 0x10000}, + {NULL, 0, 0} + }, + + .first_sysupgrade_partition = "os-image", + .last_sysupgrade_partition = "file-system" + }, + /** Firmware layout for the TL-WR1043 v5 */ { .id = "TLWR1043NV5", -- 2.30.2