mb/supermicro/x11-lga1151-series: add support of X11SSH-LN4F to X11SSH-F

The X11SSH-LN4F and X11SSH-F are very similiar. They both use the same
PCB and use the same Supermicro BIOS ID. The X11SSH-LN4F has 4 NICs in
difference to the X11SSH-F which only has 2 NICs. The two additional
NICs aren't populated on the X11SSH-F. Enable the PCIe root ports
connected to the two additional Intel NICs.

Signed-off-by: Alexander Couzens <lynxis@fe80.eu>
Change-Id: Id4e66be47ceef75905ba760b8d5a14284e130f63
Reviewed-on: https://review.coreboot.org/c/coreboot/+/51330
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Michael Niewöhner <foss@mniewoehner.de>
diff --git a/Documentation/mainboard/supermicro/x11-lga1151-series/x11-lga1151-series.md b/Documentation/mainboard/supermicro/x11-lga1151-series/x11-lga1151-series.md
index 495ae09..692e5e3 100644
--- a/Documentation/mainboard/supermicro/x11-lga1151-series/x11-lga1151-series.md
+++ b/Documentation/mainboard/supermicro/x11-lga1151-series/x11-lga1151-series.md
@@ -7,7 +7,7 @@
 ## Supported boards
 
 - [X11SSH-TF](x11ssh-tf/x11ssh-tf.md)
-- [X11SSH-F](x11ssh-f/x11ssh-f.md)
+- [X11SSH-F/LN4F](x11ssh-f/x11ssh-f.md)
 - [X11SSM-F](x11ssm-f/x11ssm-f.md)
 
 ## Required proprietary blobs
diff --git a/Documentation/mainboard/supermicro/x11-lga1151-series/x11ssh-f/x11ssh-f.md b/Documentation/mainboard/supermicro/x11-lga1151-series/x11ssh-f/x11ssh-f.md
index f009bbe..35b552f 100644
--- a/Documentation/mainboard/supermicro/x11-lga1151-series/x11ssh-f/x11ssh-f.md
+++ b/Documentation/mainboard/supermicro/x11-lga1151-series/x11ssh-f/x11ssh-f.md
@@ -1,6 +1,6 @@
-# Supermicro X11SSH-F
+# Supermicro X11SSH-F/X11SSH-LN4F
 
-This section details how to run coreboot on the [Supermicro X11SSH-F].
+This section details how to run coreboot on the [Supermicro X11SSH-F] or [Supermicro X11SSH-LN4F].
 
 ## Flashing coreboot
 
@@ -43,6 +43,11 @@
 - S3 resume not working (vendor and coreboot)
 - SeaBIOS cannot make use of VGA on Aspeed (even if IGD is disabled)
 
+## Difference between X11SSH-F and X11SSH-LN4F
+
+The PCB is identical. The X11SSH-F has 2 NICs, the X11SSH-LN4F has 4 NICs.
+So the X11SSH-F just doesn't have 2 NICs populated.
+
 ## ToDo
 
 - Fix known issues
@@ -60,7 +65,8 @@
 +------------------+--------------------------------------------------+
 | Super I/O        | ASPEED AST2400                                   |
 +------------------+--------------------------------------------------+
-| Ethernet         | 2x Intel I210-AT 1 GbE                           |
+| Ethernet         | 2x Intel I210-AT 1 GbE (for X11SSH-F)            |
+|                  | 4x Intel I210-AT 1 GbE (for X11SSH-LN4F)         |
 |                  | 1x dedicated BMC                                 |
 +------------------+--------------------------------------------------+
 | PCIe slots       | 1x 3.0 x8                                        |
@@ -95,6 +101,7 @@
 - [Board manual]
 
 [Supermicro X11SSH-F]: https://www.supermicro.com/en/products/motherboard/X11SSH-F
+[Supermicro X11SSH-LN4F]: https://www.supermicro.com/en/products/motherboard/X11SSH-LN4F
 [Board manual]: https://www.supermicro.com/manuals/motherboard/C236/MNL-1778.pdf
 [AST2400]: https://www.aspeedtech.com/products.php?fPath=20&rId=376
 [IPMI]: ../../../../drivers/ipmi_kcs.md
diff --git a/Documentation/security/vboot/list_vboot.md b/Documentation/security/vboot/list_vboot.md
index 6372a4a..5a4a66c 100644
--- a/Documentation/security/vboot/list_vboot.md
+++ b/Documentation/security/vboot/list_vboot.md
@@ -254,7 +254,7 @@
 ## Supermicro
 - X11SSH-TF
 - X11SSM-F
-- X11SSH-F
+- X11SSH-F/X11SSH-LN4F
 
 ## UP
 - Squared
diff --git a/src/mainboard/supermicro/x11-lga1151-series/Kconfig b/src/mainboard/supermicro/x11-lga1151-series/Kconfig
index b7057b0..3342b04 100644
--- a/src/mainboard/supermicro/x11-lga1151-series/Kconfig
+++ b/src/mainboard/supermicro/x11-lga1151-series/Kconfig
@@ -25,7 +25,7 @@
 	string
 	default "X11SSH-TF"	if BOARD_SUPERMICRO_X11SSH_TF
 	default "X11SSM-F"	if BOARD_SUPERMICRO_X11SSM_F
-	default "X11SSH-F"	if BOARD_SUPERMICRO_X11SSH_F
+	default "X11SSH-F/LN4F"	if BOARD_SUPERMICRO_X11SSH_F
 
 config MAINBOARD_DIR
 	string
diff --git a/src/mainboard/supermicro/x11-lga1151-series/Kconfig.name b/src/mainboard/supermicro/x11-lga1151-series/Kconfig.name
index 7cb19ae..0f488a9 100644
--- a/src/mainboard/supermicro/x11-lga1151-series/Kconfig.name
+++ b/src/mainboard/supermicro/x11-lga1151-series/Kconfig.name
@@ -7,5 +7,5 @@
 	select BOARD_SUPERMICRO_BASEBOARD_X11_LGA1151_SERIES
 
 config BOARD_SUPERMICRO_X11SSH_F
-	bool "X11SSH-F"
+	bool "X11SSH-F/LN4F"
 	select BOARD_SUPERMICRO_BASEBOARD_X11_LGA1151_SERIES
diff --git a/src/mainboard/supermicro/x11-lga1151-series/variants/x11ssh-f/overridetree.cb b/src/mainboard/supermicro/x11-lga1151-series/variants/x11ssh-f/overridetree.cb
index c3f4bf1..35825f8 100644
--- a/src/mainboard/supermicro/x11-lga1151-series/variants/x11ssh-f/overridetree.cb
+++ b/src/mainboard/supermicro/x11-lga1151-series/variants/x11ssh-f/overridetree.cb
@@ -67,6 +67,14 @@
 			register "PcieRpEnable[1]" = "1"
 			device pci 00.0 on end	# GbE
 		end
+		device pci 1c.2 on	# PCI Express Port 3 only on -LN4F
+			register "PcieRpEnable[2]" = "1"
+			device pci 00.0 on end	# GbE
+		end
+		device pci 1c.3 on	# PCI Express Port 4 only on -LN4F
+			register "PcieRpEnable[3]" = "1"
+			device pci 00.0 on end	# GbE
+		end
 		device pci 1c.4 on	# PCI Express Port 5
 			register "PcieRpEnable[4]" = "1"
 			smbios_slot_desc "SlotTypeM2Socket3" "SlotLengthOther" "M.2 2280" "SlotDataBusWidth2X"