ROCK 4 SEのシリアルコンソールから、u-bootのシェルに入って、
env set fdtdefault rockchip/rk3399-rock-4-se
env save
とかやったら、eMMCに書いてくれたのはいいんだけど、1回だけちゃんと起動したので念のためもう一と再起動したら、なぜかボード自体の電源が入らなくなった。
で、全部いったん外して、電源を入れなおしたら復活した。こえぇよ。
ROCK 4 SEのシリアルコンソールから、u-bootのシェルに入って、
env set fdtdefault rockchip/rk3399-rock-4-se
env save
とかやったら、eMMCに書いてくれたのはいいんだけど、1回だけちゃんと起動したので念のためもう一と再起動したら、なぜかボード自体の電源が入らなくなった。
で、全部いったん外して、電源を入れなおしたら復活した。こえぇよ。
うーん。shutdown -p nowの後の挙動がデフォルトのdtbを置き換える前と違うなあ。USB-PDの制御チップ関連らしい。給電のネゴシエーションが始まらないようだ。
とおもったら、env print -aしたら、fdtfileのパスがおかしい。このままセーブしたんかい俺...。
パスをちゃんと直しても、自分で作ったdtbファイルを指定するとshutdown -p nowのあとにUSB-PDの受電ICがリセットされて、少なくともシリアルコンソールを外すまでだめだ。
なんか、シリアルコンソールのUSB-UARTのGNDを外すとUSB-PDのICにリセットがかかるなあ?? それをしない限り、u-bootを全くいじってないボードでも、いじってる方のボードでも、いじってる方でdtbを元に戻しても挙動は同じだ。
シリアルコンソールをつないでいると、ROCK 4 SEの電源のUSB-PDのICがリセットされないで電源供給が始まらない問題、どうも完全に相性問題なのが判明したというか。データ送信なしでUARTは3.3Vを出してるから、そいつが回りこむんだな。で、USBシリアル変換ICによっては、USBがつながってるときに2Vぐらいしか出してないやつがいて、そいつならUSB-PCのICにリセットがかかって初期化が始まる。
自分用のサーバにUSBケーブルを刺したらそのまま落ちて、CMOSクリアとかデバイス全部引き抜きとかでも起動しなくなって、メモリをつけるとPOSTが先に進まないという症状が起きてた。
別のマシンのマザーボード+CPUを奪ってきて丸ごと換装する手術を行ってサーバを復活させて、ダメになったはずのマザーの死体検案書を作るかと思って適当な電源もってきてPWRピンをショートさせたらなぜか起動した。
結局元に戻した。
サーバをやってるPCにUSBケーブルをぶっ刺しただけでなぜか落ちた挙句に、起動しなくなるとか、何が何だかわからん。