From 64a7ed6dfae7e8d780930aad153f15e2c48753c3 Mon Sep 17 00:00:00 2001 From: Siyuan Wang Date: Wed, 3 Apr 2013 17:02:58 +0800 Subject: Add PXE ROM selection to Kconfig menu Adding a pxe rom manually is inconvenient. With this patch, PXE ROM can be added automatically by selecting PXE_ROM in Kconfig. I have tested this patch on AMD Parmer and Thatcher with iPXE. iPXE would be a boot device in Seabios when pressing F12. iPXE works well with coreboot and Seabios. Change-Id: I2c4fc73fd9ae6c979f0af2290d410935f600e2c8 Signed-off-by: Siyuan Wang Signed-off-by: Siyuan Wang Reviewed-on: http://review.coreboot.org/3013 Reviewed-by: Paul Menzel Tested-by: build bot (Jenkins) Reviewed-by: Marc Jones Reviewed-by: Ronald G. Minnich --- src/arch/x86/Makefile.inc | 3 +++ src/device/Kconfig | 31 +++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+) (limited to 'src') diff --git a/src/arch/x86/Makefile.inc b/src/arch/x86/Makefile.inc index bbf2336043..ee2bc4713d 100644 --- a/src/arch/x86/Makefile.inc +++ b/src/arch/x86/Makefile.inc @@ -112,6 +112,9 @@ ifeq ($(CONFIG_INCLUDE_CONFIG_FILE),y) endif ifeq ($(CONFIG_VBOOT_VERIFY_FIRMWARE),y) $(CBFSTOOL) $@.tmp add-stage -f $(VBOOT_STUB_ELF) -n $(CONFIG_CBFS_PREFIX)/vboot -c $(CBFS_COMPRESS_FLAG) +endif +ifeq ($(CONFIG_PXE_ROM),y) + $(CBFSTOOL) $@.tmp add -f $(CONFIG_PXE_ROM_FILE) -n pci$(CONFIG_PXE_ROM_ID).rom -t raw endif mv $@.tmp $@ @printf " CBFSPRINT $(subst $(obj)/,,$(@))\n\n" diff --git a/src/device/Kconfig b/src/device/Kconfig index 159bc0e76b..ca2fb33028 100644 --- a/src/device/Kconfig +++ b/src/device/Kconfig @@ -467,3 +467,34 @@ config BOOTSPLASH_FILE The path and filename of the file to use as graphical bootsplash screen. The file format has to be jpg. endmenu + +menu "PXE ROM" +config PXE_ROM + bool "Add a PXE ROM image" + help + Select this option if you have a PXE ROM image that you would + like to add to your ROM. + +config PXE_ROM_FILE + string "PXE ROM filename" + depends on PXE_ROM + default "pxe.rom" + help + The path and filename of the file to use as PXE ROM. + +config PXE_ROM_ID + string "network card PCI IDs" + depends on PXE_ROM + default "10ec,8168" + help + The comma-separated PCI vendor and device ID that would associate + your PXE ROM to your network card. + + Example: 10ec,8168 + + In the above example 10ec is the PCI vendor ID (in hex, but without + the "0x" prefix) and 8168 specifies the PCI device ID of the + network card (also in hex, without "0x" prefix). + + Under GNU/Linux you can run `lspci -nn` to list the IDs of your PCI devices. +endmenu -- cgit v1.2.3