それぞれ市川大野と吉川のハードオフで見付けて少し迷った末に確保し、作業して投げ込んだものです。
まとめていきます。
仕様
大まかには既にサポート済のWSR-2533DHPL (DHP)とハードウェア構成が近く、一方でSPI-NORではなくRAW NANDを搭載するなどある程度変更されています。
WSR-2533DHPL2とDHPLSではほぼ同一のハードウェア構成。
法律の関係上、無線機能の使用は非推奨です。
共通
WSR-2533DHPL2
- UART: J4, 57600bps(三角マークから3.3V, GND, TX, RX)
WSR-2533DHPLS
- UART: J4, 115200bps(三角マークから3.3V, GND, TX, RX)
その他詳細については、雑記を参照。
OpenWrt化
WSR-2533DHPLとは異なり、factoryイメージを生成できている為、直接投入することが可能です。
- WSR-2533DHPL2/DHPLSを起動 なお、ルータモードに設定されていることを前提とする
http://192.168.11.1/
にアクセスし、ファームウェア更新ページに移動- OpenWrtのfactory.binイメージを選択し、更新実行ボタンを押下
- factory-uboot.binは使用しない
- Flashに書き込み後再起動され、OpenWrtが起動して完了
備考
WSR-2533DHPLやWSR-2533DHP2などと同様に、Flash内にOSイメージを2つ抱える構成となっている。それらの使用方法も変わらず原則として1つ目が使用される仕様であり、OpenWrtでもその様に扱う。
名前に "factory" と付くファームウェアファイルが2種類存在する。詳細はそれぞれのサポートコミットを参照。(WSR-2533DHPL2, WSR-2533DHPLS)
WSR-2533DHPL2はOpenWrtにおいて使用できるパーティションのサイズが
0x3D20000
(61.125 MiB) と比較的余裕があるものの、WSR-2533DHPLSは搭載している "ネット脅威ブロッカー" 機能関係に使用されると思われるパーティションにかなりのサイズを取られており、OpenWrtにおいて利用できるのは0x1800000
(24MiB) に留まる。
必然的に、OpenWrt導入後の空き領域も後者はだいぶ小さくなる。
作業時の色々
WSR-2533DHPL2とDHPLSではハードウェア構成にほとんど違いは無いながらも、一方で中身のソフトウェア面ではだいぶ違いが存在していた。
前述のパーティション構成はもちろんのこと、NAND Flash上でBadblock絡みの管理を行う仕組みが別々の世代であるほか、U-BootもWSR-2533DHPL2はDeviceTreeに対応せず、DHPLSでは対応しているものであった。恐らくDHPLSではメーカーファームウェア作成時のSDKが新しめのものに更新されている。Linux Kernel側もDHPL2はmachineベースであり、DHPLSはDeviceTreeベースとなっている。WSR-2533DHPL2とDHPLSでは "TRX" というファームウェア形式を使用しており、なおかつ他のWSRシリーズと同様に非標準の機種固有なMagic Numberを使用している。
これに対応する為、ramips/mt7621 subtargetで使用されていた、firmwareパーティションからkernelとrootfsの領域をそれぞれ切り出すドライバをOpenWrt独自のものから、Linux Kernelに存在しているMagic Numberの指定が可能なものへ切り替えを行った。ファームウェアの生成周りは mediatek/mt7622 subtargetに属しているサポート済のWSR-2533DHP2と同じコードが流用できる為、新規に書く量を抑えることができた。
WSR-2533DHPLSを先に確保した当時、他にも色々と作業を並行している状態だったことからしばらく放置していた結果、他の方がサポート作業を行いPRをオープンしていた。
ただ、NAND搭載機故に必要となる実装がされていなかったことからこちらで引き継ぐこととなり、その後確保していたWSR-2533DHPL2も併せてサポート作業を行い、同時に投げ込んだ。
色々
少々時間は要したものの、マージされたので一安心。
WSR-2533DHPLSはパーティション構成の関係上容量に若干難があるものの、選択肢が増えたので良し。