Add support to enable/disable builtin GbE (again)
This requires a new system agent binary (v6 / v11 on haswell). Note that the existing system agent binaries are long time obsolete and won't work with current coreboot, so this update is overdue. Change-Id: I48d8649576ca84d2b85ab082ce06f3462e189059 Signed-off-by: Stefan Reinauer <reinauer@google.com> Reviewed-on: http://review.coreboot.org/3568 Tested-by: build bot (Jenkins) Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
This commit is contained in:
parent
e44a89f6fd
commit
1cc3416f5f
|
@ -148,6 +148,7 @@ void main(unsigned long bist)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
struct pei_data pei_data = {
|
struct pei_data pei_data = {
|
||||||
|
.pei_version = PEI_VERSION,
|
||||||
.mchbar = DEFAULT_MCHBAR,
|
.mchbar = DEFAULT_MCHBAR,
|
||||||
.dmibar = DEFAULT_DMIBAR,
|
.dmibar = DEFAULT_DMIBAR,
|
||||||
.epbar = DEFAULT_EPBAR,
|
.epbar = DEFAULT_EPBAR,
|
||||||
|
|
|
@ -183,6 +183,7 @@ void main(unsigned long bist)
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
struct pei_data pei_data = {
|
struct pei_data pei_data = {
|
||||||
|
pei_version: PEI_VERSION,
|
||||||
mchbar: DEFAULT_MCHBAR,
|
mchbar: DEFAULT_MCHBAR,
|
||||||
dmibar: DEFAULT_DMIBAR,
|
dmibar: DEFAULT_DMIBAR,
|
||||||
epbar: DEFAULT_EPBAR,
|
epbar: DEFAULT_EPBAR,
|
||||||
|
|
|
@ -31,7 +31,7 @@
|
||||||
#define PEI_DATA_H
|
#define PEI_DATA_H
|
||||||
|
|
||||||
typedef void (*tx_byte_func)(unsigned char byte);
|
typedef void (*tx_byte_func)(unsigned char byte);
|
||||||
#define PEI_VERSION 10
|
#define PEI_VERSION 11
|
||||||
|
|
||||||
struct pei_data
|
struct pei_data
|
||||||
{
|
{
|
||||||
|
@ -53,6 +53,7 @@ struct pei_data
|
||||||
uint8_t spd_addresses[4];
|
uint8_t spd_addresses[4];
|
||||||
int boot_mode;
|
int boot_mode;
|
||||||
int ec_present;
|
int ec_present;
|
||||||
|
int gbe_enable;
|
||||||
// 0 = leave channel enabled
|
// 0 = leave channel enabled
|
||||||
// 1 = disable dimm 0 on channel
|
// 1 = disable dimm 0 on channel
|
||||||
// 2 = disable dimm 1 on channel
|
// 2 = disable dimm 1 on channel
|
||||||
|
|
|
@ -118,8 +118,7 @@ config HAVE_MRC
|
||||||
config MRC_FILE
|
config MRC_FILE
|
||||||
string "Intel System Agent path and filename"
|
string "Intel System Agent path and filename"
|
||||||
depends on HAVE_MRC
|
depends on HAVE_MRC
|
||||||
default "systemagent-ivybridge.bin" if NORTHBRIDGE_INTEL_IVYBRIDGE
|
default "systemagent-r6.bin"
|
||||||
default "systemagent-sandybridge.bin" if NORTHBRIDGE_INTEL_SANDYBRIDGE
|
|
||||||
help
|
help
|
||||||
The path and filename of the file to use as System Agent
|
The path and filename of the file to use as System Agent
|
||||||
binary.
|
binary.
|
||||||
|
|
|
@ -35,12 +35,7 @@ smm-$(CONFIG_HAVE_SMI_HANDLER) += finalize.c
|
||||||
# We don't ship that, but booting without it is bound to fail
|
# We don't ship that, but booting without it is bound to fail
|
||||||
cbfs-files-$(CONFIG_HAVE_MRC) += mrc.bin
|
cbfs-files-$(CONFIG_HAVE_MRC) += mrc.bin
|
||||||
mrc.bin-file := $(call strip_quotes,$(CONFIG_MRC_FILE))
|
mrc.bin-file := $(call strip_quotes,$(CONFIG_MRC_FILE))
|
||||||
ifeq ($(CONFIG_NORTHBRIDGE_INTEL_IVYBRIDGE),y)
|
|
||||||
mrc.bin-position := 0xfffa0000
|
mrc.bin-position := 0xfffa0000
|
||||||
endif
|
|
||||||
ifeq ($(CONFIG_NORTHBRIDGE_INTEL_SANDYBRIDGE),y)
|
|
||||||
mrc.bin-position := 0xfffe0000
|
|
||||||
endif
|
|
||||||
mrc.bin-type := 0xab
|
mrc.bin-type := 0xab
|
||||||
|
|
||||||
$(obj)/mrc.cache:
|
$(obj)/mrc.cache:
|
||||||
|
|
|
@ -38,7 +38,7 @@ typedef struct {
|
||||||
} pch_usb3_controller_settings;
|
} pch_usb3_controller_settings;
|
||||||
|
|
||||||
typedef void (*tx_byte_func)(unsigned char byte);
|
typedef void (*tx_byte_func)(unsigned char byte);
|
||||||
#define PEI_VERSION 5
|
#define PEI_VERSION 6
|
||||||
|
|
||||||
struct pei_data
|
struct pei_data
|
||||||
{
|
{
|
||||||
|
@ -61,6 +61,7 @@ struct pei_data
|
||||||
uint8_t ts_addresses[4];
|
uint8_t ts_addresses[4];
|
||||||
int boot_mode;
|
int boot_mode;
|
||||||
int ec_present;
|
int ec_present;
|
||||||
|
int gbe_enable;
|
||||||
// 0 = leave channel enabled
|
// 0 = leave channel enabled
|
||||||
// 1 = disable dimm 0 on channel
|
// 1 = disable dimm 0 on channel
|
||||||
// 2 = disable dimm 1 on channel
|
// 2 = disable dimm 1 on channel
|
||||||
|
|
Loading…
Reference in New Issue