下位版のWN-GX300GRに続き、上位版のWN-AX1167GRについてもサポート作業を行い、upstreamへマージされました。この機種についてもまとめます。
なお、先行してWN-AX1167GRのサポート作業を行っていた某氏よりパッチ案やログ等頂き、それを引き継いで完成させたものです。多謝。
なお、この機種についてはまだリリースバージョン用の openwrt-18.06 branch へは取り込まれないそうです。
仕様
これもMT7621です。シングルコアのMT7621Sを搭載するWN-GX300GRに対し、上位モデルという位置づけからかデュアルコアの "MT7621A" が搭載されています。
また、基板自体はWN-GX300GRと共通のため、SoCとFlash、無線周り以外はほぼ共通です。
- SoC: MediaTek MT7621A (880MHz, 2C4T)
- RAM: DDR2 SDRAM 64MB
- Flash: SPI Flash 16MB
- WAN/LAN: 1000Mbps x1 / 1000Mbps x4
- UART: 115200bps(RJ45側からVcc, GND, TX, RX)
その他ハードウェアやKernel等細かい点の詳細については、雑記ブログにメモしてあるのでそちらを参照。
OpenWrt化
WN-GX300GRでは制約によりfactoryファームは断念しましたが、WN-AX1167GRでは若干注意は必要なもののfactoryファームを生成できました。
- アップデートページへアクセス
PC側のIPアドレスを192.168.0.0/24のいずれかに設定してWN-AX1167GRと接続し、WN-AX1167GRに電源ケーブルを接続して通常起動。
起動したら、192.168.0.1
へブラウザでアクセスし、ファームウェア更新ページを開く。OpenWrtのfactoryファームを選択してアップデートを実行する。 - OpenWrt上でsysupgrade
"1." の手順でfactoryファームがFlashに書き込まれた後、OpenWrtで起動してくる。
SSH等でOpenWrtのコンソールに入り、 [sourcecode]mtd erase firmware[/sourcecode] を実行したうえでWN-AX1167GRのsysupgradeファームを使用してsysupgradeを実行する。
例: [sourcecode]sysupgrade openwrt-ramips-mt7621-iodata_wn-ax1167gr-squashfs-sysupgrade.bin[/sourcecode] - 完了
2分前後掛かるものの、Flashへの書き込みが完了して再起動する。
備考
- WN-GX300GRと同様に、OpenWrtでのシリアルコンソールのBaudrateは115200bpsに設定。
理由もGX300GRと同じで、U-BootとOpenWrtのbaud rateを合わせるため。 - WN-GX300GRでは2つあるOS用パーティション("Kernel", "app")それぞれが4MB弱しか確保されておらず、そのためOpenWrtでfactoryファームを作ろうとすると完全に不足してしまった。それに対してWN-AX1167GRでは7.5MBほど確保できるため、ある程度余裕をもってfactoryファームを生成できる。
ただしこのfactoryファームの実態はinitramfsファームであり、再起動すると設定は消える。このため、factoryファームを投入後sysupgradeでsysupgradeファームを書き込む必要がある。 - WN-GX300GRと同様に、OpenWrtでは2つあるOSイメージ用パーティションを結合して1つとして扱うようにした。ただし、メーカーファームでは何故か未使用の領域があり(データは00 or FF)、メーカーファームへ戻すバイナリを作成する際はメーカーファームでの "Kernel" の後ろに 0x20000 、"app" の後ろに 0x10000 の空データを追加して OpenWrt における "firmware" のサイズに合わせる。
firmware (OpenWrt)
(0xF30000 = 15,552k)Kernel (unused) app (unused) 0x60000
- 0x7E00000x7E0000
- 0x8000000x800000
- 0xF800000xF80000
- 0xF900000x780000
(7,680k)0x20000
(128k)0x780000
(7,680k)0x10000
(64k)firmware.bin
などとし、 [sourcecode] mtd write firmware.bin firmware [/sourcecode] とすることでメーカーファームに書き戻すことが可能。
メーカー公式サイトで公開されているアップデート用ファームでもできそうだけど未検証。 - MT7621ではHW NATが実装されているため、WN-GX300GRでもNATのCPU負荷をかなり抑えることが可能。
- WN-AX1167GR2がGRとハード構成が同一であるかは未確認。
雑感
今回はfactoryの作り方や、factoryからsysupgradeした後にU-Bootが起動するパーティションとして2番目を指定した場合ブートが止まってしまうのでは、というメンテナ氏の疑問もあり(ごもっとも)、少々議論したうえで、WN-AX1167GRでは上手くfallbackしてくれるということなどをcommit messageに追加することになった。
その他は特に大きな問題は無し。良かった。