ラズパイ3BのUSB起動設定
ラズパイ3BのUSB起動を有効とするには、Raspberry Pi SoCのOTP(One-Time Programmable)メモリにビットを設定するそうである。
OTPは一度だけ書き込み可能なメモリなので、加えた変更は永続的で元に戻すことは出来ないようである。
OTP memoryとは、一度だけ書き込み可能なメモリで、メモリ内のヒューズを焼き切ってデータを書き換えるようなメモリのことだそうである。
このメモリに書き込むことにより、新しいブートモードが有効になるらしい。
これは/boot/config.txtの最後に「program_usb_boot_mode=1」を書き込んで起動することで実現できるようである。
まず現在のOTPメモリを確認する。
$ vcgencmd otp_dump | grep 17:
17:1020000a
/boot/config.txt の最後に「program_usb_boot_mode=1」の行を追加する。
そのうえで再起動
$ sudo reboot
再起動で/boot/config.txtの内容が反映され、
pi@raspberrypi:~ $ vcgencmd otp_dump | grep 17:
17:3020000a
17:1020000aが17:3020000aとなりOTPビットは正常にプログラムされた。
これで/boot/config.txtの最後の行の役目は終わったので削除する。
再度シャットダウンし電源を切った状態でSDメモリー抜くとともにシステムをインストールしたUSBメモリーを挿してから電源を投入す。
無事USBメモリーから起動できたら目出たし目出たしである。