According to official bootmodes documentation, the process of booting Raspberry Pi 3 off USB takes two seconds to wait for mass storage devices (MSD) to enumerate.
That article also says it is also possible to increase this timeout to five seconds by adding certain parameter to
config.txt file (
program_usb_timeout=1). But where should this file reside? Normally, it is placed next to
bootcode.bin, but while we're waiting for MSD to enumerate, we can't read files from it.
Should a SD card with
config.txt be inserted in Raspberry Pi before booting off USB in order to increase USB enumeration timeout to 5 seconds?
PS I've got another thought after I've written this question. Is USB enumeration timeout programmed into OTP area of BCM2837 along with enabling USB boot mode?