mb/msi/ms7d25: Populate SMBIOS product name based on CNVi presence

MSI PRO Z690-A WIFI DDR4 and MSI PRO Z690-A DDR4 are basically the
same boards, except the latter has no WiFi populated. Check the CNVi
WiFi presence and return correct SMBIOS product name string.

TEST=Check SMBIOS product name on both WiFi and non-WiFi variants in
Linux.

Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: I5fedbce413dfb6a589a406d1e34e3e114ca6a40f
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68078
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
diff --git a/src/mainboard/msi/ms7d25/mainboard.c b/src/mainboard/msi/ms7d25/mainboard.c
index 2d46887..9c3a3ae 100644
--- a/src/mainboard/msi/ms7d25/mainboard.c
+++ b/src/mainboard/msi/ms7d25/mainboard.c
@@ -2,6 +2,7 @@
 
 #include <acpi/acpi.h>
 #include <device/device.h>
+#include <soc/pci_devs.h>
 #include <soc/ramstage.h>
 #include <smbios.h>
 #include <string.h>
@@ -32,6 +33,19 @@
 	return "MS-7D25";
 }
 
+const char *smbios_mainboard_product_name(void)
+{
+	/* Currently we support DDR4 variants, but e.g. DDR5 can be added later */
+	if (CONFIG(BOARD_MSI_Z690_A_PRO_WIFI_DDR4)) {
+		if (is_devfn_enabled(PCH_DEVFN_CNVI_WIFI))
+			return "PRO Z690-A WIFI DDR4(MS-7D25)";
+		else
+			return "PRO Z690-A DDR4(MS-7D25)";
+	}
+
+	return CONFIG_MAINBOARD_PART_NUMBER;
+}
+
 /* Only baseboard serial number is populated */
 const char *smbios_system_serial_number(void)
 {