[U-Boot] pxe incompatibility with x86
Ian Campbell
Ian.Campbell at citrix.com
Tue Oct 15 12:08:56 CEST 2013
Hi,
I've noticed what appears to be an incompatibility between u-boot's pxe
support and the x86 pxelinux stuff. I'm running on a Calxeda midway but
AFAICT this not specific to the platform. It seems that Rob and Jason
are both involved in u-boot pxe support as well as being from Calxeda so
I guess I don't have to be too sure either way ;-)
syslinux/README says:
Note that all filename references are relative to the directory
pxelinux.0 lives in.
And u-boots emulation of pxelinux's behaviour seems to implement
this for loading pxelinux.cfg but not for loading any files referenced
by the config. This seems to have been related to
https://bugs.launchpad.net/ubuntu/+source/u-boot-linaro/+bug/927781
The Xen.org osstest infrastructure has in dhcpd.conf:
filename "pxe/syslinux.0"
and runs a tftp server exporting /tftpboot with all the files
in /tftpboot/pxe.
This leads to:
TFTP from server 10.80.248.135; our IP address is 10.80.229.106; sending through
gateway 10.80.224.1
Filename 'pxe/syslinux.0'.
Load address: 0x800000
Loading: ##
done
Bytes transferred = 26793 (68a9 hex)
[...]
TFTP from server 10.80.248.135; our IP address is 10.80.229.106; sending through
gateway 10.80.224.1
Filename 'pxe/pxelinux.cfg/01-fc-2f-40-11-72-5c'.
Load address: 0x700000
Loading: #
done
Bytes transferred = 513 (201 hex)
Config file found
However the config file contains:
serial 0 115200
timeout 5
label overwrite
menu label ^Overwrite
menu default
kernel /ianc/osstest/debian-installer/armhf/2013-09-23-wheezy/linux.armmp [...]
append [...] initrd=/ianc/osstest/tmp/marilith-n4--initrd.gz [...]
leading to:
Retrieving file: /ianc/osstest/tmp/marilith-n4--initrd.gz
Using xgmac0 device
TFTP from server 10.80.248.135; our IP address is 10.80.229.106; sending through gateway 10.80.224.1
Filename '/ianc/osstest/tmp/marilith-n4--initrd.gz'.
Load address: 0x4000000
Loading: *
TFTP error: 'File not found' (1)
The actual path to the initrd is /tftpboot/pxe/ianc/osstest/... IOW
the /pxe prefix has been dropped.
I think this differs from how real pxelinux on x86 behaves, at least
judging from the osstest setup...
Cheers,
Ian.
More information about the U-Boot
mailing list