1 /* SPDX-License-Identifier: BSD-3-Clause */ 2 3 #include <smbios.h> 4 5 #include "vpd.h" 6 #include "vpd_tables.h" 7 8 #define VPD_KEY_SYSTEM_SERIAL "serial_number" 9 #define VPD_KEY_MAINBOARD_SERIAL "mlb_serial_number" 10 #define VPD_SERIAL_LEN 64 11 smbios_system_serial_number(void)12const char *smbios_system_serial_number(void) 13 { 14 static char serial[VPD_SERIAL_LEN]; 15 if (vpd_gets(VPD_KEY_SYSTEM_SERIAL, serial, VPD_SERIAL_LEN, VPD_RO)) 16 return serial; 17 return ""; 18 } 19 smbios_mainboard_serial_number(void)20const char *smbios_mainboard_serial_number(void) 21 { 22 static char serial[VPD_SERIAL_LEN]; 23 if (vpd_gets(VPD_KEY_MAINBOARD_SERIAL, serial, VPD_SERIAL_LEN, VPD_RO)) 24 return serial; 25 return ""; 26 } 27