This patch series adds PXE booting support to U-boot. It adds aseries of DHCP options to allow U-boot DHCP requests to be compliant with RFC 4578, and a set of commands to provide PXELINUX like behavior.
The pxe commands provide a near subset of the functionality provided by the PXELINUX boot loader. This allows U-boot based systems to be controlled remotely using the same PXE based techniques that many non U-boot based servers use. As an example, support for the pxe commands is enabled for the ca9x4_ct_vxp config. Additional details for the pxe commands are available in the README.pxe file added as part of this patch series. This patch series adds support for RFC 4578 compliant DHCP request options, which enhance the ability of DHCP servers to respond differently to different clients. As an example, the last patch in this series enables support for the PXE DHCP options for the ca9x4_ct_vxp config. v4 of the patch series combines the previously separate DHCP options patches with the pxe options. It also renames the pxe commands to 'pxe' from 'pxecfg', and includes various other improvements and bug fixes. Special thanks to the Linaro and Ubuntu folks who tested the patches and sent me bug reports and fixes. Jason Hobbs (13): Add generic, reusable menu code common, menu: use abortboot for menu timeout common: add run_command2 for running simple or hush commands Add isblank cosmetic: remove unneeded curly braces Replace space and tab checks with isblank Add standard environment variables README lib: add uuid_str_to_bin for use with bootp and PXE uuid Add pxe command net: bootp: add PXE/RFC 4578 DHCP options support Convert ca9x4_ct_vxp to standard env variables arm: ca9x4_ct_vxp: enable pxe command support arm: ca9x4_ct_vxp: enable PXE BOOTP options support board/hymod/env.c | 9 +- common/Makefile | 2 + common/cmd_pxe.c | 1349 ++++++++++++++++++++++++++++++++++ common/command.c | 9 +- common/hush.c | 2 +- common/main.c | 69 +- common/menu.c | 417 +++++++++++ doc/README.menu | 119 +++ doc/README.pxe | 240 ++++++ doc/README.standard-env | 92 +++ drivers/bios_emulator/x86emu/debug.c | 7 +- examples/standalone/smc911x_eeprom.c | 5 +- include/common.h | 13 + include/configs/ca9x4_ct_vxp.h | 19 +- include/hush.h | 2 +- include/linux/ctype.h | 6 + include/menu.h | 30 + lib/Makefile | 1 + lib/hashtable.c | 4 +- lib/uuid.c | 85 +++ net/bootp.c | 40 + 21 files changed, 2463 insertions(+), 57 deletions(-) create mode 100644 common/cmd_pxe.c create mode 100644 common/menu.c create mode 100644 doc/README.menu create mode 100644 doc/README.pxe create mode 100644 doc/README.standard-env create mode 100644 include/menu.h create mode 100644 lib/uuid.c _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot