http://continue-to-challenge.blogspot.jp/2016/11/fon2405e_28.html
またまた魔が差して、 他の基板からMX25L6405D (8192 Kbytes)を引っぺがして交換してみた。
もともと乗っていたのがMX25L8006Eだから上位品?。
すんなりU-Bootでのファーム書き換えはできた。
せっかくなので、OpenwrtからスピンオフしたというLEDEを導入してみることにした。
手順0 フラッシュ交換メモ
忘れそうなので・・・。
0.u-boot他を旧フラッシュからバックアップ
cat /dev/mtdblock0 > /tmp/mtdblock0.img <Uboot>3と4はu-bootから書き込むからここではバックアップしない
cat /dev/mtdblock1 > /tmp/mtdblock1.img <Config>
cat /dev/mtdblock2 > /tmp/mtdblock2.img <RF>
mtdblock0-2.imgはPCに退避させておく
1.u-bootの起動メニューで「2」入力しコンソール?に入る
2.通電状態でフラッシュ交換する(ハイリスク!)
3.ファーム書き換えを実行
KernelとRootFSが書き換えられ、その後linuxのブートに入る
4.新フラッシュにu-boot他を書き込む
cp /tmp/mtdblock0.img /dev/mtdblock0今思えばu-bootさえ書き込めれば、あとはLEDE書き込むから
cp /tmp/mtdblock1.img /dev/mtdblock1
cp /tmp/mtdblock2.img /dev/mtdblock2
別にやらなくても良かった。
手順1 LEDEのカーネルソース入手
基本的には以下の手順だけど
https://lede-project.org/docs/guide-developer/the-source-code
https://lede-project.org/docs/guide-developer/use-buildsystem
具体的な手順は次のような感じ。簡単だね。
git clone https://git.lede-project.org/source.git
./scripts/feeds update -a
./scripts/feeds install -a
手順2 FON2405E用にカスタマイズ・Device Tree Source (dts)を作成
オリジナルのFON2405Eとは違うのでFON2405EKAI(改)とした。
変更点をpatchにしてみた。
完成するまでは紆余曲折あって大変だったけど。 改めてみると変更点って大したこと無いね。
(実は9月末くらいから悩みながらやっていた)
手順3 カーネルイメージ作成
適宜、設定を行う
make menuconfigそして
make kernel_menuconfig
make -j4 V=99
lede-ramips-rt305x-fon2405ekai-initramfs-kernel.bin
lede-ramips-rt305x-fon2405ekai-squashfs-sysupgrade.bin
が作成される
手順4 ファームアップ
まずは、u-bootからファームアップを行う
lede-ramips-rt305x-fon2405ekai-initramfs-kernel.bin
を使う。
これで起動すると・・・。
[ 4.689131] m25p80 spi0.0: mx25l6405d (8192 Kbytes)と、rootfsがない状態になる。
[ 4.699191] 3 ofpart partitions found on MTD device spi0.0
[ 4.710330] Creating 3 MTD partitions on "spi0.0":
[ 4.720086] 0x000000000000-0x000000010000 : "u-boot"
[ 4.733996] 0x000000010000-0x000000020000 : "devconf"
[ 4.749129] 0x000000020000-0x0000007d0000 : "firmware"
設定変更しても反映されない悲しい状態。
どうやらsysupgradeにて再度ファームアップが必要みたい(たぶん)。
sysupgrade -v /tmp/lede-ramips-rt305x-fon2405ekai-squashfs-sysupgrade.bin
このあと起動すると
[ 0.614392] m25p80 spi0.0: mx25l6405d (8192 Kbytes)となった。やったー。
[ 0.624447] 3 ofpart partitions found on MTD device spi0.0
[ 0.635587] Creating 3 MTD partitions on "spi0.0":
[ 0.645343] 0x000000000000-0x000000010000 : "u-boot"
[ 0.659229] 0x000000010000-0x000000020000 : "devconf"
[ 0.674223] 0x000000020000-0x0000007d0000 : "firmware"
[ 1.385424] 2 uimage-fw partitions found on MTD device firmware
[ 1.397553] 0x000000020000-0x000000147454 : "kernel"
[ 1.411314] 0x000000147454-0x0000007d0000 : "rootfs"
[ 1.426108] mtd: device 4 (rootfs) set to be root filesystem
[ 1.439008] 1 squashfs-split partitions found on MTD device rootfs
[ 1.451676] 0x000000331000-0x0000007d0000 : "rootfs_data"
Luciも開けた!
諦めずにやってよかったー。
//SST26VF032bもどうにかしないと
<参考>
https://wiki.openwrt.org/doc/devel/add.new.platform
https://wiki.openwrt.org/doc/devel/add.new.device
https://wiki.openwrt.org/doc/howto/build
https://wiki.openwrt.org/doc/techref/flash.layout
https://lede-project.org/docs/user-guide/extroot_configuration
http://rainbowdevil.jp/?p=1247
http://www.srchack.org/article.php?story=20150829103857687
0 件のコメント:
コメントを投稿