物好き者

物好き者が行ったことを載せています。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PageTop

LaFonera+を純正ファームに書き戻し4

LaFonera+を純正ファームに書き戻し3 で、フラッシュに書き込むファイルが確保できたので、書き込みをしていきます。

Redbootでloadしfis createを実行するのですが、パラメーターをどうするか決めないといけません。
純正ファームのフラッシュは、下記のようになっています。
RedBoot> fis list
Name FLASH addr Mem addr Length Entry point
RedBoot 0xA8000000 0xA8000000 0x00030000 0x00000000
rootfs 0xA8030000 0xA8030000 0x002C0000 0x00000000
vmlinux.bin.l7 0xA82F0000 0x80041000 0x000E0000 0x80041000
nvram 0xA83D0000 0xA83D0000 0x00010000 0x80041000
FIS directory 0xA87E0000 0xA87E0000 0x0000F000 0x00000000
RedBoot config 0xA87EF000 0xA87EF000 0x00001000 0x00000000

これをもとに、DD-WRTやOpenWRT・LaFonera純正ファームの書き込み方法とfis listの状態から、次のようなコマンドで書き込みました。

fis init
load -r -v -b 0x80041000 loader
fis create -b 0x80041000 -f 0xA8030000 -l 0x00010000 -e 0x80100000 loader
load -r -v -b 0x80041000 image
fis create -b 0x80041000 -f 0xA8040000 -l 0x00230004 -e 0x80040400 image
load -r -v -b 0x80041000 image2
fis create -b 0x80041000 -f 0xA8660000 -l 0x00140000 -e 0x80040400 image2


RedBoot> fis init
About to initialize [format] FLASH image system - continue (y/n)? y
*** Initialize FLASH Image System
... Erase from 0xa87e0000-0xa87f0000: .
... Program from 0x80ff0000-0x81000000 at 0xa87e0000: .
RedBoot> fis create -b 0x80041000 -f 0xA8030000 -l 0x00010000 -e 0x80100000 loader
... Erase from 0xa8030000-0xa8040000: .
... Program from 0x80041000-0x80051000 at 0xa8030000: .
... Erase from 0xa87e0000-0xa87f0000: .
... Program from 0x80ff0000-0x81000000 at 0xa87e0000: .
RedBoot> load -r -v -b 0x80041000 image
Using default protocol (TFTP)
|
Raw file loaded 0x80041000-0x80270fff, assumed entry at 0x80041000
RedBoot> fis create -b 0x80041000 -f 0xA8040000 -l 0x00230004 -e 0x80040400 image
... Erase from 0xa8040000-0xa8270004: ....................................
... Program from 0x80041000-0x80271004 at 0xa8040000: ....................................
... Erase from 0xa87e0000-0xa87f0000: .
... Program from 0x80ff0000-0x81000000 at 0xa87e0000: .
RedBoot> load -r -v -b 0x80041000 image2
Using default protocol (TFTP)
\
Raw file loaded 0x80041000-0x80180fff, assumed entry at 0x80041000
RedBoot> fis create -b 0x80041000 -f 0xA8660000 -l 0x00140000 -e 0x80040400 image2
... Erase from 0xa8660000-0xa87a0000: ....................
... Program from 0x80041000-0x80181000 at 0xa8660000: ....................
... Erase from 0xa87e0000-0xa87f0000: .
... Program from 0x80ff0000-0x81000000 at 0xa87e0000: .
RedBoot> fis list
Name FLASH addr Mem addr Length Entry point
RedBoot 0xA8000000 0xA8000000 0x00030000 0x00000000
loader 0xA8030000 0xA8030000 0x00010000 0x80100000
image 0xA8040000 0xA8040000 0x00230004 0x80040400
image2 0xA8660000 0xA8660000 0x00140000 0x80040400
FIS directory 0xA87E0000 0xA87E0000 0x0000F000 0x00000000
RedBoot config 0xA87EF000 0xA87EF000 0x00001000 0x00000000


元のフラッシュと同じ構成になったので、Redbootから元のコマンドで実行しました。
fis load -b 0x80100000 loader
go 0x80100000

LaFonera+が起動したたのですがが、sshとシリアル入力が出来なくっていました。
RedBootの起動コマンドを、LaFonera+のRedBoot設定変更を行いDD-WRT自動起動できるようにしました の方法で、上記のコマンドに戻してLaFonera+が自動で起動するようになりました。
RedBoot> fconfig -l -n
boot_script: true
boot_script_data:
.. fis load -l vmlinux.bin.l7
.. exec

boot_script_timeout: 2
bootp: false
bootp_my_gateway_ip: 0.0.0.0
bootp_my_ip: 192.168.1.1
bootp_my_ip_mask: 255.255.255.0
bootp_server_ip: 192.168.1.254
console_baud_rate: 115200
gdb_port: 9000
info_console_force: false
net_debug: false
RedBoot> fconfig
Run script at boot: true
Boot script:
.. fis load -l vmlinux.bin.l7
.. exec
Enter script, terminate with empty line
>> fis load -b 0x80100000 loader
>> go 0x80100000
>>
Boot script timeout (1000ms resolution): 2
Use BOOTP for network configuration: false
Gateway IP address:
Local IP address: 192.168.1.1
Local IP address mask: 255.255.255.0
Default server IP address: 192.168.1.254
Console baud rate: 115200
GDB connection port: 9000
Force console for special debug messages: false
Network debug at boot time: false
Update RedBoot non-volatile configuration - continue (y/n)? y
... Erase from 0xa87e0000-0xa87f0000: .
... Program from 0x80ff0000-0x81000000 at 0xa87e0000: .

あとは、LaFonera+へのアクセス方法 で行ったssh・シリアル入力が出来るように変更して完了です。

スポンサーサイト

PageTop

コメント


管理者にだけ表示を許可する
 

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。