USB boot issue

I’m trying to create a bootable USB flash drive (mass storage device) using
QNX4.25 and the QNX4.25 RTOS USB 2.0 Beta drivers. The problem I’m having is
during the execution of the boot image upon booting off the USB drive. When
the ‘io-usb’ command runs to create the USB stack, there is about a two
second delay after the creation of the USB stack before the Fsys.umass
driver can successfully recognize any connected USB devices. I’m able to
create this delay using the ‘sleep’ command when I boot off the hard disk,
but due to the round-robin scheduling done during the execution of the boot
image, using the ‘sleep’ command is ineffective. The Fsys.umass driver has a
command line option ‘umass wait=time’ that claims to force the driver to
wait ‘time’ number of seconds for the USB stack, but this also doesn’t solve
the problem. What I’m looking for is some way to delay execution of the
Fsys.umass command despite the time-slice exuction performed as part of the
round-robin scheduling of process execution of the programs contained in the
boot image. Any help would be immensely appreciated. Thanks!

-Craig

“Craig Atkinson” <craig.atkinson@guidant.com> wrote in message
news:d9960f$ic6$1@inn.qnx.com

I’m trying to create a bootable USB flash drive (mass storage device)
using
QNX4.25 and the QNX4.25 RTOS USB 2.0 Beta drivers. The problem I’m having
is
during the execution of the boot image upon booting off the USB drive.
When
the ‘io-usb’ command runs to create the USB stack, there is about a two
second delay after the creation of the USB stack before the Fsys.umass
driver can successfully recognize any connected USB devices. I’m able to
create this delay using the ‘sleep’ command when I boot off the hard disk,
but due to the round-robin scheduling done during the execution of the
boot
image, using the ‘sleep’ command is ineffective. The Fsys.umass driver has
a
command line option ‘umass wait=time’ that claims to force the driver to
wait ‘time’ number of seconds for the USB stack, but this also doesn’t
solve
the problem. What I’m looking for is some way to delay execution of the
Fsys.umass command despite the time-slice exuction performed as part of
the
round-robin scheduling of process execution of the programs contained in
the
boot image.

That’s not because of round-robin scheduling, that’s because all commands in
the boot file are started “in the background”, just like if you would use &
in a shell. If scheduling was off nothing would work in the first place :wink:

Any help would be immensely appreciated. Thanks!

-Craig

Craig, I have a team of QNX developers who work with embedded systems,
specifically in the Med device area. I think one of them could
help…let me check. Mean time keep me informed if you think
Guidant could use any help.

Mike