2M flash烧录固件问题

llddpp2004
帖子: 29
注册: 周五 6月 23, 2017 3:46 pm

2M flash烧录固件问题

帖子llddpp2004 » 周一 2月 26, 2018 3:14 pm

flash容量2M
刷入 raw目录下ar9331 bootloader 【superwrt_boot_ar9331_20180118.img】
利用pc工具,然后进入bootloader 上传 【superwrt-qca-qca9k-tiny_v0.6.9_20180118.spkg】
再次进入 bootloader,debug

Device Info

Version: SuperWRT Boot 1.3.9-g1f151c8a-dirty (Jan 18 2018 - 09:48:29)
CPU: AR9331
Flash: 2 MB (Flash ID: ef4015 / Erase Size: 4k)
DRAM: 64 MB
Frequency: CPU 400MHz / RAM 400MHz / AHB 200MHz
Device UID: 00000000000000000000000000000000
MAC: 02:54:65:72:72:61
Firmware: FW/tiny/0.6.9/qca/qca9k/743d934195
Custom(/License):
Partions:
0x00000000-0x0001c000[0x0001c000] uboot
0x0001c000-0x0001d000[0x00001000] SBI
0x0001d000-0x0001e000[0x00001000] CAL
0x0001e000-0x00020000[0x00002000] custom
0x00020000-0x00028000[0x00008000] config
0x00028000-0x00200000[0x001d8000] firmware


现在的问题是修改mac和art~!
mac的Flash addr应该如何写
art的Flash addr又应该如何写,art的大小应该不是64k,是4K么?

llddpp2004
帖子: 29
注册: 周五 6月 23, 2017 3:46 pm

Re: 2M flash烧录固件问题

帖子llddpp2004 » 周二 2月 27, 2018 12:51 am

使用tp目录下的bootloader【superwrt_boot_tl_mr11u_v2_20180118.img】
Device Info

Version: SuperWRT Boot 1.3.9-g1f151c8a-dirty (Jan 18 2018 - 09:48:29)
CPU: AR9331
Flash: 2 MB (Flash ID: ef4015 / Erase Size: 4k)
DRAM: 64 MB
Frequency: CPU 400MHz / RAM 400MHz / AHB 200MHz
SBI Info: TP MR11U v2/terra@superwrt.com/2017-08-29
Device UID: none
WLAN0 info: cal:0xff1000, mac:0x1fc00 (ff:ff:ff:ff:ff:ff)
MAC: 02:54:65:72:72:61
Firmware: FW/tiny/0.6.9/qca/qca9k/743d934195
Custom(/License):
Partions:
0x00000000-0x0001c000[0x0001c000] uboot
0x0001c000-0x0001d000[0x00001000] SBI
0x0001d000-0x0001e000[0x00001000] CAL
0x0001e000-0x00020000[0x00002000] custom
0x00020000-0x00028000[0x00008000] config
0x00028000-0x00200000[0x001d8000] firmware

cal的位置为ff1000,这个已经超出了2M flash的容量,是不是这个bootloader的校准信息位置有问题,
partions部分cal是0x0001d000-0x0001e000[0x00001000] CAL
2k art(0202开头)写入1d000则启动只能进入bootloader,无法进入firmware

terra
Site Admin
帖子: 524
注册: 周二 11月 24, 2015 9:02 pm

Re: 2M flash烧录固件问题

帖子terra » 周二 2月 27, 2018 8:46 am

llddpp2004 写了:使用tp目录下的bootloader【superwrt_boot_tl_mr11u_v2_20180118.img】
Device Info

Version: SuperWRT Boot 1.3.9-g1f151c8a-dirty (Jan 18 2018 - 09:48:29)
CPU: AR9331
Flash: 2 MB (Flash ID: ef4015 / Erase Size: 4k)
DRAM: 64 MB
Frequency: CPU 400MHz / RAM 400MHz / AHB 200MHz
SBI Info: TP MR11U v2/terra@superwrt.com/2017-08-29
Device UID: none
WLAN0 info: cal:0xff1000, mac:0x1fc00 (ff:ff:ff:ff:ff:ff)
MAC: 02:54:65:72:72:61
Firmware: FW/tiny/0.6.9/qca/qca9k/743d934195
Custom(/License):
Partions:
0x00000000-0x0001c000[0x0001c000] uboot
0x0001c000-0x0001d000[0x00001000] SBI
0x0001d000-0x0001e000[0x00001000] CAL
0x0001e000-0x00020000[0x00002000] custom
0x00020000-0x00028000[0x00008000] config
0x00028000-0x00200000[0x001d8000] firmware

cal的位置为ff1000,这个已经超出了2M flash的容量,是不是这个bootloader的校准信息位置有问题,
partions部分cal是0x0001d000-0x0001e000[0x00001000] CAL
2k art(0202开头)写入1d000则启动只能进入bootloader,无法进入firmware

仔细阅读Wiki:http://superwrt.com/wiki/using/modify_mac_cal

llddpp2004
帖子: 29
注册: 周五 6月 23, 2017 3:46 pm

Re: 2M flash烧录固件问题

帖子llddpp2004 » 周二 2月 27, 2018 11:28 am

terra 写了:
llddpp2004 写了:使用tp目录下的bootloader【superwrt_boot_tl_mr11u_v2_20180118.img】
Device Info

Version: SuperWRT Boot 1.3.9-g1f151c8a-dirty (Jan 18 2018 - 09:48:29)
CPU: AR9331
Flash: 2 MB (Flash ID: ef4015 / Erase Size: 4k)
DRAM: 64 MB
Frequency: CPU 400MHz / RAM 400MHz / AHB 200MHz
SBI Info: TP MR11U v2/terra@superwrt.com/2017-08-29
Device UID: none
WLAN0 info: cal:0xff1000, mac:0x1fc00 (ff:ff:ff:ff:ff:ff)
MAC: 02:54:65:72:72:61
Firmware: FW/tiny/0.6.9/qca/qca9k/743d934195
Custom(/License):
Partions:
0x00000000-0x0001c000[0x0001c000] uboot
0x0001c000-0x0001d000[0x00001000] SBI
0x0001d000-0x0001e000[0x00001000] CAL
0x0001e000-0x00020000[0x00002000] custom
0x00020000-0x00028000[0x00008000] config
0x00028000-0x00200000[0x001d8000] firmware

cal的位置为ff1000,这个已经超出了2M flash的容量,是不是这个bootloader的校准信息位置有问题,
partions部分cal是0x0001d000-0x0001e000[0x00001000] CAL
2k art(0202开头)写入1d000则启动只能进入bootloader,无法进入firmware

仔细阅读Wiki:http://superwrt.com/wiki/using/modify_mac_cal



mac地址已经改了,写入1fc00

但art不行,2M flash,依据partions,cal只有4K容量,只能使用2K 的art,而按照文档中的说明写入“WLAN0 info: cal:0xff1000, mac:0x1fc00 (ff:ff:ff:ff:ff:ff)”所指明的ff1000,直接导致reboot后无法进入固件界面(未写入art前是可以进入固件界面,只是无线不可用),启动后直接进入到bootloader,

注意到
“WLAN0 info: cal:0xff1000, mac:0x1fc00 (ff:ff:ff:ff:ff:ff)”与partions中的0x0001d000-0x0001e000[0x00001000] CAL的cal地址似乎是不一致的,所以按教程文档中的方法修改art可能会出现问题,但写入1d000也未启动成功,依旧是直接进入bootloader而不是固件

经对按教程文档写入ff1000地址的2k art 前后的编程器固件的比较,实际写入2M flash 地址为1f1000,并未写入按partions显示的“0x0001d000[/color]-0x0001e000[0x00001000] CAL”,而在写入前,这一地址(1f1000)是有数据存在,写入后造成了之前的数据被覆盖,该部分(1f1000)按partions显示,是firmware占用的部分,从而造成了写入art后firmware的损坏


另一个问题是简单的将2k art写入 partions显示的1d000,尽管该部分写入前没有数据,但也同样不能启动固件,

以上仅是个人分析,实在是没有其他方法解决没有无线的问题,若分析有问题,希望能提供一个含有art的2M编程器固件,这样可以直接找到art位置进行替换

terra
Site Admin
帖子: 524
注册: 周二 11月 24, 2015 9:02 pm

Re: 2M flash烧录固件问题

帖子terra » 周三 2月 28, 2018 8:47 am

llddpp2004 写了:
terra 写了:
llddpp2004 写了:使用tp目录下的bootloader【superwrt_boot_tl_mr11u_v2_20180118.img】
Device Info

Version: SuperWRT Boot 1.3.9-g1f151c8a-dirty (Jan 18 2018 - 09:48:29)
CPU: AR9331
Flash: 2 MB (Flash ID: ef4015 / Erase Size: 4k)
DRAM: 64 MB
Frequency: CPU 400MHz / RAM 400MHz / AHB 200MHz
SBI Info: TP MR11U v2/terra@superwrt.com/2017-08-29
Device UID: none
WLAN0 info: cal:0xff1000, mac:0x1fc00 (ff:ff:ff:ff:ff:ff)
MAC: 02:54:65:72:72:61
Firmware: FW/tiny/0.6.9/qca/qca9k/743d934195
Custom(/License):
Partions:
0x00000000-0x0001c000[0x0001c000] uboot
0x0001c000-0x0001d000[0x00001000] SBI
0x0001d000-0x0001e000[0x00001000] CAL
0x0001e000-0x00020000[0x00002000] custom
0x00020000-0x00028000[0x00008000] config
0x00028000-0x00200000[0x001d8000] firmware

cal的位置为ff1000,这个已经超出了2M flash的容量,是不是这个bootloader的校准信息位置有问题,
partions部分cal是0x0001d000-0x0001e000[0x00001000] CAL
2k art(0202开头)写入1d000则启动只能进入bootloader,无法进入firmware

仔细阅读Wiki:http://superwrt.com/wiki/using/modify_mac_cal



mac地址已经改了,写入1fc00

但art不行,2M flash,依据partions,cal只有4K容量,只能使用2K 的art,而按照文档中的说明写入“WLAN0 info: cal:0xff1000, mac:0x1fc00 (ff:ff:ff:ff:ff:ff)”所指明的ff1000,直接导致reboot后无法进入固件界面(未写入art前是可以进入固件界面,只是无线不可用),启动后直接进入到bootloader,

注意到
“WLAN0 info: cal:0xff1000, mac:0x1fc00 (ff:ff:ff:ff:ff:ff)”与partions中的0x0001d000-0x0001e000[0x00001000] CAL的cal地址似乎是不一致的,所以按教程文档中的方法修改art可能会出现问题,但写入1d000也未启动成功,依旧是直接进入bootloader而不是固件

经对按教程文档写入ff1000地址的2k art 前后的编程器固件的比较,实际写入2M flash 地址为1f1000,并未写入按partions显示的“0x0001d000[/color]-0x0001e000[0x00001000] CAL”,而在写入前,这一地址(1f1000)是有数据存在,写入后造成了之前的数据被覆盖,该部分(1f1000)按partions显示,是firmware占用的部分,从而造成了写入art后firmware的损坏


另一个问题是简单的将2k art写入 partions显示的1d000,尽管该部分写入前没有数据,但也同样不能启动固件,

以上仅是个人分析,实在是没有其他方法解决没有无线的问题,若分析有问题,希望能提供一个含有art的2M编程器固件,这样可以直接找到art位置进行替换

你的不是MR11U设备吧?MR11U自带的是4M的Flash。用4M就不会有问题了。

llddpp2004
帖子: 29
注册: 周五 6月 23, 2017 3:46 pm

Re: 2M flash烧录固件问题

帖子llddpp2004 » 周三 2月 28, 2018 11:28 am

[/quote]
你的不是MR11U设备吧?MR11U自带的是4M的Flash。用4M就不会有问题了。[/quote]

不是mr11u,是mw155r 改的,之前使用4M flash写入tiny版本的是没有问题,
现在做的是 想在”2M flash和16M内存配置“中使用tiny,
看wiki文档【http://superwrt.com/wiki/develop/partitions】中是有2M flash,

缺省分区格式

2M Flash(Support 4k erase):

112k(uboot),4k(SBI),4k(CAL),8k(custom),32k(config),1888k(firmware)
"
在结构上,确实看到2M和4M、8M、16M的结构有所不同,特别是cal的位置,

但并未看到有说明对2M和4M的flash的bootloader有区别的说明,在下载目录也没有看到有区别,
但将mr11u的boot写入2Mflash和4Mflash看到的partions信息是不同的,所以有猜测是自动识别闪存容量和分区结构,

那么现在的问题是如何在2Mflash中正常启动,在写入bootloader,firmware,修改mac后,系统是可以正常进入固件界面的,只是没有无线,问题出现在写入art的这个步骤

现在想知道,ar9331的2M+16M的方案,如何才能正常使用superwrt,因为ar9331的路由有很大一部分就是2M+16M的配置,可以直接利用,

myqvod
帖子: 1
注册: 周二 5月 30, 2017 2:18 pm

Re: 2M flash烧录固件问题

帖子myqvod » 周三 2月 28, 2018 1:13 pm

这是我自己的!
附件
WR710N_2m+16m.rar
bootloader和art
(90.73 KiB) 下载 522 次

llddpp2004
帖子: 29
注册: 周五 6月 23, 2017 3:46 pm

Re: 2M flash烧录固件问题

帖子llddpp2004 » 周三 2月 28, 2018 1:58 pm

myqvod 写了:这是我自己的!


非常感谢,
我想问下,可否分享下ar9331的 bootloader的配置模板,我自己做了几次,都不行,启动不了,没找到参考样板的资料 :(

llddpp2004
帖子: 29
注册: 周五 6月 23, 2017 3:46 pm

Re: 2M flash烧录固件问题

帖子llddpp2004 » 周三 2月 28, 2018 3:06 pm

myqvod 写了:这是我自己的!


很遗憾,启动不了,我自己定制的也启动不了,
网站提供的mr11u却可以启动,不过没有提供参考模板,看来还得在这个bootloader的基础上进行修改
还是等作者能不能提供解决方法吧
ar9331方案主要路由是tl-74X系列和mw15X系列,fw15X系列
我的是mw155R机型,和tl-wr740 v5 v6 、741系列,742系列、745系列的pcb基本是一样的,

不过不管怎么说还是感谢

goldenbow
帖子: 4
注册: 周一 5月 16, 2016 11:20 am

Re: 2M flash烧录固件问题

帖子goldenbow » 周一 5月 14, 2018 12:39 pm

terra 写了:
llddpp2004 写了:使用tp目录下的bootloader【superwrt_boot_tl_mr11u_v2_20180118.img】
Device Info

Version: SuperWRT Boot 1.3.9-g1f151c8a-dirty (Jan 18 2018 - 09:48:29)
CPU: AR9331
Flash: 2 MB (Flash ID: ef4015 / Erase Size: 4k)
DRAM: 64 MB
Frequency: CPU 400MHz / RAM 400MHz / AHB 200MHz
SBI Info: TP MR11U v2/terra@superwrt.com/2017-08-29
Device UID: none
WLAN0 info: cal:0xff1000, mac:0x1fc00 (ff:ff:ff:ff:ff:ff)
MAC: 02:54:65:72:72:61
Firmware: FW/tiny/0.6.9/qca/qca9k/743d934195
Custom(/License):
Partions:
0x00000000-0x0001c000[0x0001c000] uboot
0x0001c000-0x0001d000[0x00001000] SBI
0x0001d000-0x0001e000[0x00001000] CAL
0x0001e000-0x00020000[0x00002000] custom
0x00020000-0x00028000[0x00008000] config
0x00028000-0x00200000[0x001d8000] firmware

cal的位置为ff1000,这个已经超出了2M flash的容量,是不是这个bootloader的校准信息位置有问题,
partions部分cal是0x0001d000-0x0001e000[0x00001000] CAL
2k art(0202开头)写入1d000则启动只能进入bootloader,无法进入firmware

仔细阅读Wiki:http://superwrt.com/wiki/using/modify_mac_cal



有个地方没搞明白:
2m固件的cal分区不是4k吗,怎么得刷2k的校验信息而不是4k(不是从原固件的0x0202开始的4k吗)


回到 “路由器系统”