OTPを書き換えてUSB起動にする(Raspberry Pi 3Bまで) - Naohiro2g/Raspberry-Pi-Projects GitHub Wiki
Raspberry Pi 3B+では、出荷時からこの状態。
USB起動が無効になっていることを確認する
vcgencmd otp_dump | grep 17:
17:1020000a ← 無効(最上位桁が1)
config.txtを編集して再起動する
sudo nano /boot/config.txt
最終行に2行書き込む。
# Enable USB Boot
program_usb_boot_mode=1
再起動で、OTP: One Time Programmableメモリーが書き換わる。
USB起動が有効になったことを確認する
$ vcgencmd otp_dump | grep 17:
17:3020000a ← 有効(最上位桁が3)
config.txtを再び編集、設定行をコメントアウトしておく。
# Enable USB Boot
#program_usb_boot_mode=1
program_usb_boot_timeout=1 を書くと、タイムアウトが2秒から5秒に延長される。HDDだとスピンアップ時間が必要だが、SSDの場合は不要。
逆に、10秒くらいあるSDカードスロットのタイムアウト待ちを短くする方法。 カーネルのバージョンが一致しているSDカードをスロットに入れておくと良いらしい。 https://dbpro.xyz/6177
カーネル更新時が面倒。。 SSD無しで起動、カーネルのアップデート(というか、apt update/dist-upgradeかな?)