找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 87032|回复: 66

高通 TP9343 (TL-WR882N) 芯片的一些参数

  [复制链接]
本帖最后由 hackpascal 于 2014-12-9 23:19 编辑

楼主近日购进一台 TP-LINK TL-WR882N v1 (拆机图 https://www.right.com.cn/forum/thread-143640-1-1.html)
使用的是 TP9343 芯片。因为没有任何关于它的资料,所以楼主对其原厂 U-Boot 进行了逆向分析,并做出不死 U-Boot,以获取芯片的参数。

TP9343 是 QCA9561 的阉割版,不带 PCI-E 和 USB 接口。
架构 MIPS 74K
主频 750MHz
23 个 GPIO
内置 4+1 百兆交换机 (FE) PHY

TL-WR882N v1 带 20dBm 的功放

TP9343 的 I/O 寄存器结构有些变化,和 QCA9558 不兼容。
固件已出:https://www.right.com.cn/forum/thread-154116-1-1.html

楼主的不死 U-Boot 输出:



不死 U-Boot 界面:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

评分

参与人数 7恩山币 +11 收起 理由
touc*** + 1 强大的恩山!(以下重复1万次)
ZBH*** + 1 土豪,我们做朋友吧!
sen*** + 1 怀揽白富美的屌丝露出了惊讶的眼神:哥,你太帅了!
为后天*** + 3 怀揽白富美的屌丝露出了惊讶的眼神:哥,你太帅了!
ypy*** + 1 一看就是觉得高端、大气、上档次!
ZHIZ*** + 3 一看就是觉得高端、大气、上档次!
a91*** + 1 一看就是觉得高端、大气、上档次!

查看全部评分

我的恩山、我的无线 The best wifi forum is right here.
楼主威武
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

楼主 还是写个不死MT7620 的吧
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

来自手机 | 显示全部楼层
顶!在没有任的资料的情况下一个星期就搞出来了,问下楼主9343跟9533(也是阉割版啊)有点什么不同?希望楼主编译出固件造福大众!

点评

9533 主频是 560MHz 的, MIPS 24K 架构 其他的好像差别不大  详情 回复 发表于 2014-7-1 00:14
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
ayer 发表于 2014-6-30 10:12
顶!在没有任的资料的情况下一个星期就搞出来了,问下楼主9343跟9533(也是阉割版啊)有点什么不同?希望楼 ...

9533 主频是 560MHz 的, MIPS 24K 架构
其他的好像差别不大
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

不知楼主是否研究过TP-LINK的vxworks系统,有一条信息请楼主核查一下
AP136_VxWorks_TPLINK_20130802=TP-LINK_XXXX=1001
楼主对atheros的芯片应该也是比较了解的,以下代码供楼主参考
  1. /*
  2. * Qualcomm Atheros AP136 reference board support

  3. */

  4. #include <linux/pci.h>
  5. #include <linux/ath9k_platform.h>

  6. #include "machtypes.h"
  7. #include "dev-gpio-buttons.h"
  8. #include "dev-leds-gpio.h"
  9. #include "dev-spi.h"
  10. #include "dev-usb.h"
  11. #include "dev-wmac.h"
  12. #include "pci.h"

  13. #define AP136_GPIO_LED_STATUS_RED        14
  14. #define AP136_GPIO_LED_STATUS_GREEN        19
  15. #define AP136_GPIO_LED_USB                4
  16. #define AP136_GPIO_LED_WLAN_2G                13
  17. #define AP136_GPIO_LED_WLAN_5G                12
  18. #define AP136_GPIO_LED_WPS_RED                15
  19. #define AP136_GPIO_LED_WPS_GREEN        20

  20. #define AP136_GPIO_BTN_WPS                16
  21. #define AP136_GPIO_BTN_RFKILL                21

  22. #define AP136_KEYS_POLL_INTERVAL        20        /* msecs */
  23. #define AP136_KEYS_DEBOUNCE_INTERVAL        (3 * AP136_KEYS_POLL_INTERVAL)

  24. #define AP136_WMAC_CALDATA_OFFSET 0x1000
  25. #define AP136_PCIE_CALDATA_OFFSET 0x5000

  26. static struct gpio_led ap136_leds_gpio[] __initdata = {
  27.         {
  28.                 .name                = "qca:green:status",
  29.                 .gpio                = AP136_GPIO_LED_STATUS_GREEN,
  30.                 .active_low        = 1,
  31.         },
  32.         {
  33.                 .name                = "qca:red:status",
  34.                 .gpio                = AP136_GPIO_LED_STATUS_RED,
  35.                 .active_low        = 1,
  36.         },
  37.         {
  38.                 .name                = "qca:green:wps",
  39.                 .gpio                = AP136_GPIO_LED_WPS_GREEN,
  40.                 .active_low        = 1,
  41.         },
  42.         {
  43.                 .name                = "qca:red:wps",
  44.                 .gpio                = AP136_GPIO_LED_WPS_RED,
  45.                 .active_low        = 1,
  46.         },
  47.         {
  48.                 .name                = "qca:red:wlan-2g",
  49.                 .gpio                = AP136_GPIO_LED_WLAN_2G,
  50.                 .active_low        = 1,
  51.         },
  52.         {
  53.                 .name                = "qca:red:usb",
  54.                 .gpio                = AP136_GPIO_LED_USB,
  55.                 .active_low        = 1,
  56.         }
  57. };

  58. static struct gpio_keys_button ap136_gpio_keys[] __initdata = {
  59.         {
  60.                 .desc                = "WPS button",
  61.                 .type                = EV_KEY,
  62.                 .code                = KEY_WPS_BUTTON,
  63.                 .debounce_interval = AP136_KEYS_DEBOUNCE_INTERVAL,
  64.                 .gpio                = AP136_GPIO_BTN_WPS,
  65.                 .active_low        = 1,
  66.         },
  67.         {
  68.                 .desc                = "RFKILL button",
  69.                 .type                = EV_KEY,
  70.                 .code                = KEY_RFKILL,
  71.                 .debounce_interval = AP136_KEYS_DEBOUNCE_INTERVAL,
  72.                 .gpio                = AP136_GPIO_BTN_RFKILL,
  73.                 .active_low        = 1,
  74.         },
  75. };

  76. static struct spi_board_info ap136_spi_info[] = {
  77.         {
  78.                 .bus_num        = 0,
  79.                 .chip_select        = 0,
  80.                 .max_speed_hz        = 25000000,
  81.                 .modalias        = "mx25l6405d",
  82.         }
  83. };

  84. static struct ath79_spi_platform_data ap136_spi_data = {
  85.         .bus_num        = 0,
  86.         .num_chipselect        = 1,
  87. };

  88. #ifdef CONFIG_PCI
  89. static struct ath9k_platform_data ap136_ath9k_data;

  90. static int ap136_pci_plat_dev_init(struct pci_dev *dev)
  91. {
  92.         if (dev->bus->number == 1 && (PCI_SLOT(dev->devfn)) == 0)
  93.                 dev->dev.platform_data = &ap136_ath9k_data;

  94.         return 0;
  95. }

  96. static void __init ap136_pci_init(u8 *eeprom)
  97. {
  98.         memcpy(ap136_ath9k_data.eeprom_data, eeprom,
  99.                sizeof(ap136_ath9k_data.eeprom_data));

  100.         ath79_pci_set_plat_dev_init(ap136_pci_plat_dev_init);
  101.         ath79_register_pci();
  102. }
  103. #else
  104. static inline void ap136_pci_init(u8 *eeprom) {}
  105. #endif /* CONFIG_PCI */

  106. static void __init ap136_setup(void)
  107. {
  108.         u8 *art = (u8 *) KSEG1ADDR(0x1fff0000);

  109.         ath79_register_leds_gpio(-1, ARRAY_SIZE(ap136_leds_gpio),
  110.                                  ap136_leds_gpio);
  111.         ath79_register_gpio_keys_polled(-1, AP136_KEYS_POLL_INTERVAL,
  112.                                         ARRAY_SIZE(ap136_gpio_keys),
  113.                                         ap136_gpio_keys);
  114.         ath79_register_spi(&ap136_spi_data, ap136_spi_info,
  115.                            ARRAY_SIZE(ap136_spi_info));
  116.         ath79_register_usb();
  117.         ath79_register_wmac(art + AP136_WMAC_CALDATA_OFFSET);
  118.         ap136_pci_init(art + AP136_PCIE_CALDATA_OFFSET);
  119. }

  120. MIPS_MACHINE(ATH79_MACH_AP136_010, "AP136-010",
  121.              "Atheros AP136-010 reference board",
  122.              ap136_setup);
复制代码




我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

TP9343,新一代广告无线路由神器,快搞出OPENWRT。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

24k  74k   有什么区别吗  这个问题已经困扰我N久了  。。。还有其他XXK的  求大神解释下

点评

打个比方,就是奔腾4和酷睿2的区别  详情 回复 发表于 2014-7-19 00:20
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
S沁雨寒S_风雪 发表于 2014-7-15 15:22
24k  74k   有什么区别吗  这个问题已经困扰我N久了  。。。还有其他XXK的  求大神解释下

打个比方,就是奔腾4和酷睿2的区别
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

来自手机 | 显示全部楼层
从TP9343的芯片照片上看,TP9343和QCA9533很象,感觉是QCA953x 系列的阉割超频版,不是QCA9588的阉割

点评

不能根据外观看 QCA953x已经是缩水版了 QCA953x 是 560MHz 24K 架构的 而 TP9343 是 750MHz 74K 架构,整体的性能和IO寄存器跟QCA9558很像 这是从内部分析得出的结论  详情 回复 发表于 2014-8-9 21:20
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
shellcode 发表于 2014-8-9 21:00
从TP9343的芯片照片上看,TP9343和QCA9533很象,感觉是QCA953x 系列的阉割超频版,不是QCA9588的阉割

不能根据外观看
QCA953x已经是缩水版了
QCA953x 是 560MHz 24K 架构的
而 TP9343 是 750MHz 74K 架构,整体的性能和IO寄存器跟QCA9558很像
这是从内部分析得出的结论

点评

和9533不像,经对比,应该是9561阉割产物,去掉了USB QCA9561 n/a MIPS 74Kc 750MHz bgn 3x3:3 PCIe host,USB 2.0 host, integrated FE switch TP9343 (Dragonfly) n/a MIPS 74Kc 750MHz bgn 3x3:3  详情 回复 发表于 2014-10-24 18:52
那短期看不到openwrt支持TP9343的可能性了吧 也没有看到TPLINK发布GPL代码  详情 回复 发表于 2014-8-9 22:30
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

来自手机 | 显示全部楼层
从编号看,TP9343可能是AR9344的阉割改进版

点评

不能这么看。。  发表于 2014-8-9 21:53
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

hackpascal 发表于 2014-8-9 21:20
不能根据外观看
QCA953x已经是缩水版了
QCA953x 是 560MHz 24K 架构的

那短期看不到openwrt支持TP9343的可能性了吧

也没有看到TPLINK发布GPL代码

点评

是      详情 回复 发表于 2014-8-9 22:50
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
shellcode 发表于 2014-8-9 22:30
那短期看不到openwrt支持TP9343的可能性了吧

也没有看到TPLINK发布GPL代码

是    

点评

我是小白。我也想请问个问题:AR9132和AR7240有什么不同?性能差距大吗?  详情 回复 发表于 2014-9-12 20:18
TP9343感觉是高通专门搞出来给TP-LINK用的。 现在不少TP-LINK的路由器都换成这个CPU了  详情 回复 发表于 2014-8-25 17:20
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报


TP9343感觉是高通专门搞出来给TP-LINK用的。
现在不少TP-LINK的路由器都换成这个CPU了
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-29 22:15

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表