device/dram: Move SPD manufacturer names out of arch/x86
Move SPD manufacturer ID decoding to device/dram. Will be used by the
following patch outside of SMBIOS scope as well.
Change-Id: Iec175cd6ab1d20761da955785e4bc0e87ae02dbb
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/50544
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
diff --git a/src/device/dram/spd.c b/src/device/dram/spd.c
new file mode 100644
index 0000000..9a9a767
--- /dev/null
+++ b/src/device/dram/spd.c
@@ -0,0 +1,37 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+
+#include <device/dram/spd.h>
+
+const char *spd_manufacturer_name(const uint16_t mod_id)
+{
+ switch (mod_id) {
+ case 0x9b85:
+ return "Crucial";
+ case 0x4304:
+ return "Ramaxel";
+ case 0x4f01:
+ return "Transcend";
+ case 0x9801:
+ return "Kingston";
+ case 0x987f:
+ return "Hynix";
+ case 0x9e02:
+ return "Corsair";
+ case 0xb004:
+ return "OCZ";
+ case 0xad80:
+ return "Hynix/Hyundai";
+ case 0x3486:
+ return "Super Talent";
+ case 0xcd04:
+ return "GSkill";
+ case 0xce80:
+ return "Samsung";
+ case 0xfe02:
+ return "Elpida";
+ case 0x2c80:
+ return "Micron";
+ default:
+ return NULL;
+ }
+}