GNU GRUB network boot - can I use romqnx?

Hi all

After a lot of testing and compiling I know have something that almost does
a QNX 4 network boot. I have a client with PXE that issues boot requests,
which are handled by a FreeBSD dhcpd daemon (compiled for QNX 4.25), the PXE
client then downloads GNU pxegrub via TFTP and after that I’m pretty much
stuck :slight_smile:

pxegrub is a stage 2 boot loader and it’s running OK on my client, it starts
by downloading a boot menu from the server and the entry I’m interested in
is of course the entry I’ve added for QNX. For those familiar with GRUB,
here’s my entry in my menu.lst file;

#For booting QNX
title QNX
kernel /boot/images/dhcp.7.rom

The QNX boot image is downloaded OK to the client, but the final and most
important step is for the client to start executing the QNX image. The
compiled image is supposed to do a QNX network boot from my #2 QNX node,
here is the build file;

$ /boot/sys/boot -v

$ Proc32 -l 7

$ Slib32

$ Slib16

$ Net -n 7 -m “2 1 00A024 4FB36C”

$ Net.ether82557

$ sinit -r //2/ TERM=qnx TZ=std01

(yes this is node #7 and #2 is the server, those are the nodes that are
availble for me to test this…)

The image will be loaded at 0x100000 on the client, therefore I’ve used
romqnx -R 0x100000 images/dhcp.7 images/dhcp.7.rom

Unfortunately pxegrub does not recognize the QNX image, so I’m trying to do
some patching for this to work. So far I havent’ succeeded. My questions are


  1. When dhcp.7.rom is loaded on the client at 0x100000, can I just do a
    “jmp” to address 0x100000 and the QNX kernel will start? If not, what is the
    entry address for a romqnx image?

  2. … or - does the QNX OS loader (as written to disk by dinit) start the
    QNX kernel with some arguments that I will need to supply, even for a romqnx

Please excuse my ignorance regarding romqnx, I’ve never used it before.

Thanks in advance,
P-O Håkansson