Add Kconfig support for PCI option ROMS.
authorMyles Watson <mylesgw@gmail.com>
Fri, 28 Aug 2009 14:36:12 +0000 (14:36 +0000)
committerMyles Watson <mylesgw@gmail.com>
Fri, 28 Aug 2009 14:36:12 +0000 (14:36 +0000)
Signed-off-by: Myles Watson <mylesgw@gmail.com>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4609 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1

Makefile
src/devices/Kconfig
src/devices/Makefile.inc
util/x86emu/Makefile.inc
util/x86emu/yabel/Makefile.inc [new file with mode: 0644]
util/x86emu/yabel/biosemu.c
util/x86emu/yabel/compat/Makefile.inc [new file with mode: 0644]

index 76ff1538fdd9681a7a140e65bb2fb598427f4f40..eefa9c2a7a8535e162f157ffdaac10f5d8919521 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -215,6 +215,7 @@ printall:
 OBJS     := $(patsubst %,$(obj)/%,$(TARGETS-y))
 INCLUDES := -I$(top)/src -I$(top)/src/include -I$(obj) -I$(top)/src/arch/$(ARCHDIR-y)/include 
 INCLUDES += -I$(shell $(CC) -print-search-dirs | head -n 1 | cut -d' ' -f2)include
+INCLUDES += -I$(top)/util/x86emu/include
 INCLUDES += -include $(obj)/build.h
 
 try-run= $(shell set -e; \
index 2b58f91751d25fbb0c5ddbdb8276c34dc6db3712..37ff9b927cc015b35313d226b0ccdc4383a8dc2d 100644 (file)
 menu "Devices"
 
 config VGA_ROM_RUN
-       bool
+       bool "Run VGA Option ROMs"
        help
-         Execute PCI/AGP option ROMs if available. This is required to
-         enable PCI/AGP VGA plugin cards.
+         Execute VGA option ROMs if found. This is required to enable PCI/AGP
+         VGA plugin cards.
 
-choice
-       prompt "Execute PCI option ROMs"
-       default PCI_OPTION_ROM_RUN_REALMODE
+config PCI_ROM_RUN
+       bool "Run non-VGA Option ROMs"
        help
-         Execute PCI/AGP option ROMs if available. You can choose to
-         execute PCI option ROMs natively (32bit x86 system required),
-         in an emulator (x86emu), or ignore option ROM execution.
+         Execute non-VGA PCI option ROMs if found.
 
-config PCI_OPTION_ROM_RUN_REALMODE
-       prompt "Run VGA ROMs"
-       bool
-       select VGA_ROM_RUN
-       help
-         Execute PCI/AGP option ROMs if available. This is required to
-         enable PCI/AGP VGA plugin cards.
+choice
+        prompt "Option ROM Execution"
+        default  PCI_OPTION_ROM_RUN_REALMODE
+       depends on PCI_ROM_RUN || VGA_ROM_RUN
+        help
+          You can choose to execute PCI option ROMs natively (32bit x86 system
+         required) or in an emulator (x86emu or YABEL).
+
+       config PCI_OPTION_ROM_RUN_REALMODE
+               prompt "Real mode"
+               bool
+
+       config PCI_OPTION_ROM_RUN_YABEL
+               prompt "YABEL"
+               bool
+
+       config PCI_OPTION_ROM_RUN_X86EMU
+               prompt "X86EMU"
+               bool
+endchoice
 
-config NO_RUN
-       prompt "Do NOT run VGA ROMs"
-       bool
+config YABEL_DEBUG_FLAGS
+       prompt "Hex value for debug flags"
+       hex
+       default 0x0
+       depends on PCI_OPTION_ROM_RUN_YABEL
        help
-         Do not execute PCI/AGP option ROMs.
-
-endchoice
+         See debug.h for values 0 is no debug output, 0x31ff is _verbose_.
 
 endmenu
 
index 9ef4e69517c4c8e7244346ec5271d14c359dac58..0c6677a57b5fda551bc89659a282aeb42bf4eaad 100644 (file)
@@ -12,8 +12,8 @@ obj-y += pci_ops.o
 obj-y += smbus_ops.o
 
 ifeq ($(CONFIG_PCI_ROM_RUN),y)
-obj-$(CONFIG_PCI_ROM_RUN) += pci_rom.o
-subdirs-$(CONFIG_PCI_ROM_RUN) += ../../util/x86emu
+obj-y += pci_rom.o
+subdirs-y += ../../util/x86emu
 else
 obj-$(CONFIG_VGA_ROM_RUN) += pci_rom.o
 subdirs-$(CONFIG_VGA_ROM_RUN) += ../../util/x86emu
index 52a69b17a8ff05085750c3fea0bb0883d31b3050..b5c3eb4b7c42891be0375db80eaaa9677612c0ef 100644 (file)
 ##
 
 subdirs-$(CONFIG_PCI_OPTION_ROM_RUN_X86EMU) += x86emu
-obj-$(CONFIG_PCI_OPTION_ROM_RUN_X86EMU) += biosemu.c
+obj-$(CONFIG_PCI_OPTION_ROM_RUN_X86EMU) += biosemu.o
 subdirs-$(CONFIG_PCI_OPTION_ROM_RUN_X86EMU) += pcbios
 
 obj-$(CONFIG_PCI_OPTION_ROM_RUN_REALMODE) += x86.o
 obj-$(CONFIG_PCI_OPTION_ROM_RUN_REALMODE) += x86_asm.o
 obj-$(CONFIG_PCI_OPTION_ROM_RUN_REALMODE) += x86_interrupts.o
+
+subdirs-$(CONFIG_PCI_OPTION_ROM_RUN_YABEL) += x86emu
+subdirs-$(CONFIG_PCI_OPTION_ROM_RUN_YABEL) += yabel
diff --git a/util/x86emu/yabel/Makefile.inc b/util/x86emu/yabel/Makefile.inc
new file mode 100644 (file)
index 0000000..fc6a8a0
--- /dev/null
@@ -0,0 +1,8 @@
+obj-y += biosemu.o
+obj-y += debug.o
+obj-y += device.o
+obj-y += interrupt.o
+obj-y += io.o
+obj-y += mem.o
+obj-y += pmm.o
+subdirs-y += compat
index 74772e86429bfd45d8e8731b3a8ebac7d46d3383..04c440d0a67ea60213ce77131feeab0aa62b91f0 100644 (file)
@@ -56,8 +56,6 @@ static X86EMU_pioFuncs my_pio_funcs = {
 /* interrupt function override array (see biosemu.h) */
 yabel_handleIntFunc yabel_intFuncArray[256];
 
-void dump(u8 * addr, u32 len);
-
 /* main entry into YABEL biosemu, arguments are:
  * *biosmem = pointer to virtual memory
  * biosmem_size = size of the virtual memory
diff --git a/util/x86emu/yabel/compat/Makefile.inc b/util/x86emu/yabel/compat/Makefile.inc
new file mode 100644 (file)
index 0000000..00080f5
--- /dev/null
@@ -0,0 +1 @@
+obj-y += functions.o