I'm assuming here that Raspbian is similar to regular Debian GNU/Linux, and that you are using dependency based booting (not systemd; though this can probably be adapted for systemd as well). That is, that your environment is similar to Debian Wheezy (which is the current stable release at the time of writing this answer).
During the boot process, /etc/init.d/kmod is started to load all modules listed in /etc/modules. By ensuring that your script has
kmod as a dependency, you can take advantage of this to ensure that the required kernel module(s) are loaded before your script executes.
To do that, you should add a
INIT INFO header to your script (this can be copied from another script) which lists
Required-Start (required while starting the service provided by the script) and
Required-Stop (required while stopping the service). You will also need to set
Default-Start and possibly
A good init script header might be something like:
### BEGIN INIT INFO
# Provides: mybootdisplay
# Required-Start: kmod
# Required-Stop: kmod
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
### END INIT INFO
# ... your magic goes down here ...
man 8 insserv for more details on the different info stanzas, and look at different existing init scripts for inspiration.
After creating your init script with an appropriate init info block, run
sudo update-rc.d mybootdisplay defaults to add /etc/init.d/mybootdisplay to the boot sequence.
As an alternative to the above, you could make your script specifically load the kernel module(s) needed by calling
insmod itself before running
fbi. That said, I'd personally prefer deferring to the normal init script for that, which means the above solution is likely better.