[syslinux] Serial console with pxelinux on Soekris net4501
Steve R. Brudenell
sbrudene at andrew.cmu.edu
Fri Apr 2 10:04:39 PST 2004
Hello,
I have a Soekris net4501, which I'm PXE booting using pxelinux. Everything
seems to be working splendidly, except for the fact that I can't seem to make
pxelinux understand use the net4501's serial console port correctly.
The net4501 uses the serial console as its primary interface; I'm using a null
modem cable and minicom to operate with it. At boot, its startup messages go
out over the serial console and everything works as it should, until the
point where it gets to finding pxelinux.0 from my tftp server. As soon as the
bios finds and loads it, I get garbage over minicom that looks like this:
3;01H3;97HP3;01HX3;01HE3;01HL3;01HI3;01HN3;01HU3;01HX3;01H
3;01H23;01H.3;01H03;HM
I know it's finding pxelinux.0 and the configuration file corresponding to my
machine (I've gone so far as to watch traffic with ethereal to determine
this). It even finds my kernel image and boots it fine, although this seems
to only be true because the config file has a short timeout.
I have it configured to boot up automatically on a short timeout using the
serial console, and that works fine. It would seem that this is a problem
with speed or flow control, but I've been up and down the configuration to no
avail.
My tftp server (hpa's 0.34) looks like this:
/tftpboot/pxelinux.0 ; pxelinux 2.09-pre13
/tftpboot/pxelinux.cfg/01-00-00-24-c1-c2-68 ; named by mac address
/tftpboot/asmodean/bzImage ; vanilla 2.4.25, config for net4501
The configuration file looks like this:
serial 0 9600 0x303
timeout 20
prompt 1
default asmodean/bzImage ip=dhcp root=/dev/nfs console=ttyS0,9600n81
DHCP (3.0pl2) configured for this host:
filename "pxelinux.0";
next-server my-tftp-server;
root-path net4501-nfs-share;
(the root-path option is there so that the kernel need only run its
autoconfiguration to find its nfsroot share -- seems an elegant solution
imo...)
Minicom (2.00.0) is configured for: 9600 8N1, hardware flow control.
The net4501's bios is set up to use the serial console at 9600, and as you can
see, I told my kernel to use it at this same speed, and tried to tell
pxelinux to do it also. The flow control value of 0x303 is only there because
the /usr/share/doc's said that this is a "common value" corresponding to
"null modem cable detection." I've also tried: "serial 0 9600 0", "serial 0
9600", and "serial 0" (since 9600 is the default speed). All of these produce
identical results. Everything works but pxelinux's output on the serial
console.
I've hunted up and down the 'net looking for others who have had similar
problems. I've found websites of people who have used identical setups (i.e.,
a net4501 using pxelinux), and for them it seems to just work. I even copied
their config files verbatim (how much does line termination matter in config
files?) ... I got nothin'.
Is there anyone out there who has had a similar problem? Please help :/
~Steve
More information about the Syslinux
mailing list