Random cosmetic fixes (trivial).
- Fix typos. - Whitespace and consistency fixes. - Make "menuconfig" help easily readable in 80x25 terminals / xterms. - Use full/correct prototype for cbfs_and_run_core() everywhere. - More cosmetic fixes in license headers. Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de> Acked-by: Uwe Hermann <uwe@hermann-uwe.de> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@5146 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
parent
92b85aa71f
commit
548dbe7bc8
|
@ -5,8 +5,7 @@
|
|||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; version 2 of
|
||||
* the License.
|
||||
* published by the Free Software Foundation; version 2 of the License.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
|
@ -15,14 +14,13 @@
|
|||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
|
||||
* MA 02110-1301 USA
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
|
||||
#include <console/console.h>
|
||||
#include <cbfs.h>
|
||||
|
||||
void cbfs_and_run_core(char *filename, unsigned ebp)
|
||||
void cbfs_and_run_core(const char *filename, unsigned ebp)
|
||||
{
|
||||
u8 *dst;
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
2006/05/02 - stepan: move nrv2b to an extra file.
|
||||
*/
|
||||
|
||||
void cbfs_and_run_core(const char*, unsigned ebp);
|
||||
void cbfs_and_run_core(const char *filename, unsigned ebp);
|
||||
|
||||
static void copy_and_run(void)
|
||||
{
|
||||
|
|
|
@ -7,8 +7,7 @@
|
|||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; version 2 of
|
||||
* the License.
|
||||
* published by the Free Software Foundation; version 2 of the License.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
|
@ -17,11 +16,10 @@
|
|||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
|
||||
* MA 02110-1301 USA
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
|
||||
void cbfs_and_run_core(const char *, unsigned ebp);
|
||||
void cbfs_and_run_core(const char *filename, unsigned ebp);
|
||||
|
||||
static void copy_and_run(unsigned cpu_reset)
|
||||
{
|
||||
|
|
|
@ -59,15 +59,19 @@ config PCI_OPTION_ROM_RUN_REALMODE
|
|||
(only works on x86/x64 systems)
|
||||
|
||||
config PCI_OPTION_ROM_RUN_YABEL
|
||||
prompt "Secure Mode"
|
||||
prompt "Secure mode"
|
||||
bool
|
||||
help
|
||||
If you select this option, the x86emu CPU emulator will be used to
|
||||
execute PCI option ROMs.
|
||||
This option prevents option ROMs from doing dirty tricks with the
|
||||
system (such as installing SMM modules or hypervisors), but it is also
|
||||
significantly slower than the native option ROM initialization method.
|
||||
|
||||
This option prevents option ROMs from doing dirty tricks with the
|
||||
system (such as installing SMM modules or hypervisors), but it is
|
||||
also significantly slower than the native option ROM initialization
|
||||
method.
|
||||
|
||||
This is the default choice for non-x86 systems.
|
||||
|
||||
endchoice
|
||||
|
||||
# TODO: Describe better, and/or make a "choice" selection for this.
|
||||
|
@ -77,50 +81,65 @@ config YABEL_DEBUG_FLAGS
|
|||
default 0x0
|
||||
depends on PCI_OPTION_ROM_RUN_YABEL
|
||||
help
|
||||
Set CONFIG_YABEL_DEBUG_FLAGS is a binary switch that allows you
|
||||
CONFIG_YABEL_DEBUG_FLAGS is a binary switch that allows you
|
||||
to select the following items to debug. 1=on 0=off. After you
|
||||
decide what you want to debug create the binary value, convert to hex
|
||||
and set the Option (Ex. CONFIG_YABEL_DEBUG_FLAGS = 0x31FF //Debug All).
|
||||
decide what you want to debug create the binary value, convert to
|
||||
hex and set the option.
|
||||
|
||||
|-DEBUG_JMP - print info about JMP and RETF opcodes from x86emu
|
||||
||-DEBUG_TRACE_X86EMU - print _all_ opcodes that are executed by x86emu (WARNING: this will produce a LOT of output)
|
||||
Example for "debug all":
|
||||
CONFIG_YABEL_DEBUG_FLAGS = 0x31FF
|
||||
|
||||
|-DEBUG_JMP - Print info about JMP and RETF opcodes from x86emu
|
||||
||-DEBUG_TRACE_X86EMU - Print _all_ opcodes that are executed by
|
||||
|| x86emu (WARNING: this will produce a LOT
|
||||
|| of output)
|
||||
|||-Currently unused
|
||||
||||-Currently unused
|
||||
|||||-Currently unused
|
||||
||||||-DEBUG_PNP - Print Plug And Play access made by option rom
|
||||
||||||-DEBUG_PNP - Print Plug And Play accesses made by option ROM
|
||||
|||||||-DEBUG_DISK - Print Disk I/O related messages, currently unused
|
||||
||||||||-DEBUG_PMM - Print messages related to POST Memory Manager (PMM)
|
||||
|||||||||-DEBUG_VBE - Print messages related to VESA BIOS Extension (VBE) functions
|
||||
||||||||||-DEBUG_PRINT_INT10 - let INT10 (i.e. character output) calls print messages to Debug output
|
||||
||||||||-DEBUG_PMM - Print messages related to POST Memory
|
||||
|||||||| Manager (PMM)
|
||||
|||||||||-DEBUG_VBE - Print messages related to VESA BIOS Extension
|
||||
||||||||| (VBE) functions
|
||||
||||||||||-DEBUG_PRINT_INT10 - Let INT10 (i.e. character output)
|
||||
|||||||||| calls print messages to debug output
|
||||
|||||||||||-DEBUG_INTR - Print messages related to interrupt handling
|
||||
||||||||||||-DEBUG_CHECK_VMEM_ACCESS - Print messages related to accesse to certain areas of the virtual Memory (e.g. BDA (BIOS Data Area) or Interrupt Vectors)
|
||||
|||||||||||||-DEBUG_MEM - Print memory access made by option rom (NOTE: this also includes accesses to fetch instructions)
|
||||
||||||||||||||-DEBUG_IO - Print I/O access made by option rom
|
||||
11000111111111 - Max Binary Value, Debug All (WARNING: - This could run for hours)
|
||||
|
||||
DEBUG_IO 0x0001
|
||||
DEBUG_MEM 0x0002
|
||||
DEBUG_CHECK_VMEM_ACCESS 0x0004
|
||||
DEBUG_INTR 0x0008
|
||||
DEBUG_PRINT_INT10 0x0010
|
||||
DEBUG_VBE 0x0020
|
||||
DEBUG_PMM 0x0040
|
||||
DEBUG_DISK 0x0080
|
||||
DEBUG_PNP 0x0100
|
||||
DEBUG_TRACE_X86EMU 0x1000
|
||||
DEBUG_JMP 0x2000
|
||||
||||||||||||-DEBUG_CHECK_VMEM_ACCESS - Print messages related to
|
||||
|||||||||||| accesses to certain areas of
|
||||
|||||||||||| the virtual memory (e.g. BDA
|
||||
|||||||||||| (BIOS Data Area) or interrupt
|
||||
|||||||||||| vectors)
|
||||
|||||||||||||-DEBUG_MEM - Print memory accesses made by option ROM
|
||||
||||||||||||| (NOTE: this also includes accesses to
|
||||
||||||||||||| fetch instructions)
|
||||
||||||||||||||-DEBUG_IO - Print I/O accesses made by option ROM
|
||||
11000111111111 - Maximum binary value, i.e. "debug all"
|
||||
(WARNING: This could run for hours)
|
||||
|
||||
See debug.h for values 0 is no debug output, 0x31ff is _verbose_.
|
||||
DEBUG_IO 0x0001
|
||||
DEBUG_MEM 0x0002
|
||||
DEBUG_CHECK_VMEM_ACCESS 0x0004
|
||||
DEBUG_INTR 0x0008
|
||||
DEBUG_PRINT_INT10 0x0010
|
||||
DEBUG_VBE 0x0020
|
||||
DEBUG_PMM 0x0040
|
||||
DEBUG_DISK 0x0080
|
||||
DEBUG_PNP 0x0100
|
||||
DEBUG_TRACE_X86EMU 0x1000
|
||||
DEBUG_JMP 0x2000
|
||||
|
||||
See debug.h for values. 0 is no debug output, 0x31ff is _verbose_.
|
||||
|
||||
config YABEL_PCI_ACCESS_OTHER_DEVICES
|
||||
prompt "Allow option roms to acces other devices"
|
||||
prompt "Allow option ROMs to access other devices"
|
||||
bool
|
||||
depends on PCI_OPTION_ROM_RUN_YABEL
|
||||
help
|
||||
Per default, YABEL only allows option roms to access the PCI device
|
||||
Per default, YABEL only allows option ROMs to access the PCI device
|
||||
that they are associated with. However, this causes trouble for some
|
||||
onboard graphics chips whose option rom needs to reconfigure the
|
||||
north bridge.
|
||||
onboard graphics chips whose option ROM needs to reconfigure the
|
||||
north bridge.
|
||||
|
||||
config YABEL_VIRTMEM_LOCATION
|
||||
prompt "Location of YABEL's virtual memory"
|
||||
|
@ -132,16 +151,17 @@ config YABEL_VIRTMEM_LOCATION
|
|||
normally located at 16MB.
|
||||
|
||||
config YABEL_DIRECTHW
|
||||
prompt "Direct Hardware Access"
|
||||
prompt "Direct hardware access"
|
||||
bool
|
||||
depends on PCI_OPTION_ROM_RUN_YABEL
|
||||
help
|
||||
YABEL consists of two parts: It uses x86emu for the CPU emulation and
|
||||
additionally provides a PC system emulation that filters bad device and
|
||||
memory access (such as PCI config space access to other devices than the
|
||||
initialized one).
|
||||
additionally provides a PC system emulation that filters bad device
|
||||
and memory access (such as PCI config space access to other devices
|
||||
than the initialized one).
|
||||
|
||||
When choosing this option, x86emu will pass through all hardware
|
||||
accesses to memory and IO devices to the underlying memory and IO
|
||||
accesses to memory and I/O devices to the underlying memory and I/O
|
||||
addresses. While this option prevents option ROMs from doing dirty
|
||||
tricks with the CPU (such as installing SMM modules or hypervisors),
|
||||
they can still access all devices in the system.
|
||||
|
@ -153,8 +173,9 @@ config BOOTSPLASH
|
|||
depends on PCI_OPTION_ROM_RUN_YABEL
|
||||
help
|
||||
This option shows a graphical bootsplash screen. The grapics are
|
||||
loaded from the CBFS file bootsplash.jpg
|
||||
loaded from the CBFS file bootsplash.jpg.
|
||||
|
||||
# TODO: Turn this into a "choice".
|
||||
config FRAMEBUFFER_VESA_MODE
|
||||
prompt "VESA framebuffer video mode"
|
||||
hex
|
||||
|
@ -162,7 +183,7 @@ config FRAMEBUFFER_VESA_MODE
|
|||
depends on BOOTSPLASH
|
||||
help
|
||||
This option sets the resolution used for the coreboot framebuffer and
|
||||
bootsplash screen. Set to 0x117 for 1024x768x16. A diligent soul will
|
||||
bootsplash screen. Set to 0x117 for 1024x768x16. A diligent soul will
|
||||
some day make this a "choice".
|
||||
|
||||
config COREBOOT_KEEP_FRAMEBUFFER
|
||||
|
@ -171,10 +192,10 @@ config COREBOOT_KEEP_FRAMEBUFFER
|
|||
depends on BOOTSPLASH
|
||||
help
|
||||
This option keeps the framebuffer mode set after coreboot finishes
|
||||
execution. If this option is enabled, coreboot will pass a framebuffer
|
||||
entry in its coreboot table and the payload will need a framebuffer
|
||||
driver. If this option is disabled, coreboot will switch back to
|
||||
text mode before handing control to a payload.
|
||||
execution. If this option is enabled, coreboot will pass a
|
||||
framebuffer entry in its coreboot table and the payload will need a
|
||||
framebuffer driver. If this option is disabled, coreboot will switch
|
||||
back to text mode before handing control to a payload.
|
||||
|
||||
config CONSOLE_VGA_MULTI
|
||||
bool
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
* is expected to be information that cannot be discovered by
|
||||
* other means, such as quering the hardware directly.
|
||||
*
|
||||
* All of the information should be Position Independent Data.
|
||||
* All of the information should be Position Independent Data.
|
||||
* That is it should be safe to relocated any of the information
|
||||
* without it's meaning/correctnes changing. For table that
|
||||
* can reasonably be used on multiple architectures the data
|
||||
|
@ -31,8 +31,8 @@
|
|||
* table entries and be backwards compatible, but it is not required.
|
||||
*/
|
||||
|
||||
/* Since coreboot is usually compiled 32bit, gcc will align 64bit
|
||||
* types to 32bit boundaries. If the coreboot table is dumped on a
|
||||
/* Since coreboot is usually compiled 32bit, gcc will align 64bit
|
||||
* types to 32bit boundaries. If the coreboot table is dumped on a
|
||||
* 64bit system, a uint64_t would be aligned to 64bit boundaries,
|
||||
* breaking the table format.
|
||||
*
|
||||
|
@ -50,22 +50,20 @@ struct lb_uint64 {
|
|||
|
||||
static inline uint64_t unpack_lb64(struct lb_uint64 value)
|
||||
{
|
||||
uint64_t result;
|
||||
result = value.hi;
|
||||
result = (result << 32) + value.lo;
|
||||
return result;
|
||||
uint64_t result;
|
||||
result = value.hi;
|
||||
result = (result << 32) + value.lo;
|
||||
return result;
|
||||
}
|
||||
|
||||
static inline struct lb_uint64 pack_lb64(uint64_t value)
|
||||
{
|
||||
struct lb_uint64 result;
|
||||
result.lo = (value >> 0) & 0xffffffff;
|
||||
result.hi = (value >> 32) & 0xffffffff;
|
||||
return result;
|
||||
struct lb_uint64 result;
|
||||
result.lo = (value >> 0) & 0xffffffff;
|
||||
result.hi = (value >> 32) & 0xffffffff;
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
|
||||
struct lb_header
|
||||
{
|
||||
uint8_t signature[4]; /* LBIO */
|
||||
|
@ -178,19 +176,19 @@ struct lb_framebuffer {
|
|||
uint32_t tag;
|
||||
uint32_t size;
|
||||
|
||||
uint64_t physical_address;
|
||||
uint32_t x_resolution;
|
||||
uint32_t y_resolution;
|
||||
uint32_t bytes_per_line;
|
||||
uint8_t bits_per_pixel;
|
||||
uint8_t red_mask_pos;
|
||||
uint8_t red_mask_size;
|
||||
uint8_t green_mask_pos;
|
||||
uint8_t green_mask_size;
|
||||
uint8_t blue_mask_pos;
|
||||
uint8_t blue_mask_size;
|
||||
uint8_t reserved_mask_pos;
|
||||
uint8_t reserved_mask_size;
|
||||
uint64_t physical_address;
|
||||
uint32_t x_resolution;
|
||||
uint32_t y_resolution;
|
||||
uint32_t bytes_per_line;
|
||||
uint8_t bits_per_pixel;
|
||||
uint8_t red_mask_pos;
|
||||
uint8_t red_mask_size;
|
||||
uint8_t green_mask_pos;
|
||||
uint8_t green_mask_size;
|
||||
uint8_t blue_mask_pos;
|
||||
uint8_t blue_mask_size;
|
||||
uint8_t reserved_mask_pos;
|
||||
uint8_t reserved_mask_size;
|
||||
};
|
||||
|
||||
/* The following structures are for the cmos definitions table */
|
||||
|
@ -266,6 +264,4 @@ struct cmos_checksum {
|
|||
#define CHECKSUM_PCBIOS 1
|
||||
};
|
||||
|
||||
|
||||
|
||||
#endif /* COREBOOT_TABLES_H */
|
||||
|
|
|
@ -169,7 +169,7 @@ struct cbfs_stage *cbfs_find_file(const char *name, int type);
|
|||
int cbfs_check_magic(struct cbfs_file *file);
|
||||
struct cbfs_header *cbfs_master_header(void);
|
||||
struct cbfs_file *cbfs_find(const char *name);
|
||||
void cbfs_and_run_core(char* filename, unsigned int ebp);
|
||||
void cbfs_and_run_core(const char *filename, unsigned int ebp);
|
||||
|
||||
#endif
|
||||
|
||||
|
|
|
@ -1,12 +1,11 @@
|
|||
/*
|
||||
* This file is part of the coreboot project.
|
||||
*
|
||||
* Copyright (C) 2001 by Michael Schroeder
|
||||
*
|
||||
* Copyright (C) 2001 Michael Schroeder
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; version 2 of
|
||||
* the License.
|
||||
* published by the Free Software Foundation; version 2 of the License.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
|
@ -15,8 +14,7 @@
|
|||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
|
||||
* MA 02110-1301 USA
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
|
||||
/*
|
||||
|
|
|
@ -1,12 +1,11 @@
|
|||
/*
|
||||
* This file is part of the coreboot project.
|
||||
*
|
||||
* Copyright (C) 2001 by Michael Schroeder
|
||||
*
|
||||
* Copyright (C) 2001 Michael Schroeder
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; version 2 of
|
||||
* the License.
|
||||
* published by the Free Software Foundation; version 2 of the License.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
|
@ -15,8 +14,7 @@
|
|||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
|
||||
* MA 02110-1301 USA
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in New Issue