diff options
author | Erwan Velu <erwan.velu@free.fr> | 2009-04-10 21:53:00 +0200 |
---|---|---|
committer | Erwan Velu <erwan.velu@free.fr> | 2009-04-10 21:53:00 +0200 |
commit | c31b535638176cf076b8a5adaac6f711cea0eb41 (patch) | |
tree | d32b4971ff54daaf6c8a8ef526baad871837d702 /com32/gplinclude | |
parent | abeec3a3772f316136b9f9edcfe1c810e3b7baac (diff) | |
download | syslinux-c31b535638176cf076b8a5adaac6f711cea0eb41.tar.gz |
VPD: Adding the Virtual Product Data detection
Impact: It's now possible to reach VPD's info
Calling vpd_decode() populate a VPD structure to display :
- VPD's base address
- Bios Build ID
- Bios Release Date
- Bios Version
- Box Serial Number
- Motherboard Serial Number
- Machine Type/Model
- Default Flash Filename
Diffstat (limited to 'com32/gplinclude')
-rw-r--r-- | com32/gplinclude/vpd/vpd.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/com32/gplinclude/vpd/vpd.h b/com32/gplinclude/vpd/vpd.h new file mode 100644 index 00000000..4bb1afc9 --- /dev/null +++ b/com32/gplinclude/vpd/vpd.h @@ -0,0 +1,33 @@ +/* ----------------------------------------------------------------------- * + * + * Copyright 2006 Erwan Velu - All Rights Reserved + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, Inc., 53 Temple Place Ste 330, + * Boston MA 02111-1307, USA; either version 2 of the License, or + * (at your option) any later version; incorporated herein by reference. + * + * ----------------------------------------------------------------------- */ + +#ifndef VPD_H +#define VPD_H +#include <inttypes.h> +#include <stdbool.h> + +enum {VPD_TABLE_PRESENT = 100, ENOVPDTABLE}; + +typedef struct { + char bios_build_id[10]; + char box_serial_number[8]; + char motherboard_serial_number[12]; + char machine_type_model[8]; + char bios_release_date[9]; + char default_flash_filename[13]; + char bios_version[255]; + char base_address[6]; + bool filled; +} s_vpd; + +int vpd_decode(s_vpd *vpd); +#endif |