summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Daly <jeffd@silicom-usa.com>2022-01-06 16:16:46 -0500
committerFelix Held <felix-coreboot@felixheld.de>2022-03-08 15:04:03 +0000
commit1e4d9d573c59b68b16927db9f8db9af83338de2f (patch)
treecbb79a66a0bbab69023897b4f1f50076b76709c2
parentabd4b96eb4f73b220d9ec61ada582fcc79d2eb46 (diff)
sb/intel/common/firmware: Hook up adding 10GbE LAN firmware
Add ability to use ifdtool to add LAN firmware to image using Kconfig Signed-off-by: Jeff Daly <jeffd@silicom-usa.com> Change-Id: Id45ab4b69a85a5f8e52c0c4b130b6d729222b4c3 Reviewed-on: https://review.coreboot.org/c/coreboot/+/60877 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Angel Pons <th3fanbus@gmail.com>
-rw-r--r--src/southbridge/intel/common/firmware/Kconfig35
-rw-r--r--src/southbridge/intel/common/firmware/Makefile.inc17
2 files changed, 51 insertions, 1 deletions
diff --git a/src/southbridge/intel/common/firmware/Kconfig b/src/southbridge/intel/common/firmware/Kconfig
index 2de86de855..45d8be87c3 100644
--- a/src/southbridge/intel/common/firmware/Kconfig
+++ b/src/southbridge/intel/common/firmware/Kconfig
@@ -146,6 +146,41 @@ config EC_BIN_PATH
depends on HAVE_EC_BIN
default "3rdparty/blobs/mainboard/\$(MAINBOARDDIR)/ec.bin"
+config MAINBOARD_USES_IFD_10GBE_0_REGION
+ def_bool n
+
+config HAVE_10GBE_0_BIN
+ bool "Add 10GbE Firmware Region 0"
+ depends on HAVE_IFD_BIN && MAINBOARD_USES_IFD_10GBE_0_REGION
+ help
+ The 10GbE region firmware file for LAN device 0.
+
+ Select this if you are going to use the 10GbE 0 region and have the
+ firmware. The firmware will be added to final image through ifdtool.
+
+config 10GBE_0_BIN_PATH
+ string "Path to 10GbE region 0 firmware"
+ depends on HAVE_10GBE_0_BIN
+ default "3rdparty/blobs/mainboard/\$(MAINBOARDDIR)/10gbe0.bin"
+
+config MAINBOARD_USES_IFD_10GBE_1_REGION
+ def_bool n
+ depends on MAINBOARD_USES_IFD_10GBE_0_REGION
+
+config HAVE_10GBE_1_BIN
+ bool "Add 10GbE Firmware Region 1"
+ depends on HAVE_IFD_BIN && MAINBOARD_USES_IFD_10GBE_1_REGION
+ help
+ The 10GbE region firmware file for LAN device 1.
+
+ Select this if you are going to use the 10GbE 1 region and have the
+ firmware. The firmware will be added to final image through ifdtool.
+
+config 10GBE_1_BIN_PATH
+ string "Path to 10GbE region 1 firmware"
+ depends on HAVE_10GBE_1_BIN
+ default "3rdparty/blobs/mainboard/\$(MAINBOARDDIR)/10gbe1.bin"
+
choice
prompt "Protect flash regions" if HAVE_IFD_BIN
default UNLOCK_FLASH_REGIONS if HAVE_IFD_BIN
diff --git a/src/southbridge/intel/common/firmware/Makefile.inc b/src/southbridge/intel/common/firmware/Makefile.inc
index 693bafb7a8..ba1d3b1d67 100644
--- a/src/southbridge/intel/common/firmware/Makefile.inc
+++ b/src/southbridge/intel/common/firmware/Makefile.inc
@@ -86,7 +86,22 @@ ifeq ($(CONFIG_HAVE_EC_BIN),y)
-O $(obj)/coreboot.pre \
$(obj)/coreboot.pre
endif
-
+ifeq ($(CONFIG_HAVE_10GBE_0_BIN),y)
+ printf " IFDTOOL 10gbe0.bin -> coreboot.pre\n"
+ $(objutil)/ifdtool/ifdtool \
+ $(IFDTOOL_USE_CHIPSET) \
+ -i 10GbE_0:$(CONFIG_10GBE_0_BIN_PATH) \
+ -O $(obj)/coreboot.pre \
+ $(obj)/coreboot.pre
+endif
+ifeq ($(CONFIG_HAVE_10GBE_1_BIN),y)
+ printf " IFDTOOL 10gbe1.bin -> coreboot.pre\n"
+ $(objutil)/ifdtool/ifdtool \
+ $(IFDTOOL_USE_CHIPSET) \
+ -i 10GbE_1:$(CONFIG_10GBE_1_BIN_PATH) \
+ -O $(obj)/coreboot.pre \
+ $(obj)/coreboot.pre
+endif
ifeq ($(CONFIG_LOCK_MANAGEMENT_ENGINE),y)
printf " IFDTOOL Locking Management Engine\n"
$(objutil)/ifdtool/ifdtool \