summaryrefslogtreecommitdiff
path: root/vpddecode.c
diff options
context:
space:
mode:
authorJean Delvare <jdelvare@suse.de>2004-03-19 19:23:36 +0000
committerJean Delvare <jdelvare@suse.de>2004-03-19 19:23:36 +0000
commit9096b1c68cd2b7e8d48b6c4fcc3a8cb993aaded1 (patch)
treee4828969458e5a13734d917670edd6a2b7dbadc6 /vpddecode.c
parent50e3b1d9e7746905ef859a671cbf2a3617931846 (diff)
downloaddmidecode-git-9096b1c68cd2b7e8d48b6c4fcc3a8cb993aaded1.tar.gz
Add product ID "2A" (Rafael Avila de Espindola).
Diffstat (limited to 'vpddecode.c')
-rw-r--r--vpddecode.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/vpddecode.c b/vpddecode.c
index bb2ff71..3933180 100644
--- a/vpddecode.c
+++ b/vpddecode.c
@@ -132,6 +132,8 @@ static const char *product_name(const char *id)
"1T", "Thinkpad G40",
"20", "Netvista 6792 or 6823", /* added 2003-10-09,
updated 2004-02-23 */
+ "2A", "Thinkcentre M50", /* added 2004-03-19,
+ reported by Rafael Avila de Espindola */
NULL, "Unknown, please report!"
};
@@ -172,11 +174,14 @@ static int decode(const u8 *p)
if(!(p[5]>=0x46 && checksum(p, 0x46))
/* Some Netvista seem to work with this. */
&& !(checksum(p, 0x30))
- /* The Thinkpad checksum does *not* include the first 13 bytes. */
+ /* The Thinkpad/Thinkcentre checksum does *not* include the first
+ 13 bytes. */
&& !(checksum(p+0x0D, 0x30-0x0D)))
+ {
/* A few systems have a bad checksum (xSeries 330, 335 and 345 with
early BIOS) but the record is otherwise valid. */
printf("Bad checksum! Please report.\n");
+ }
print_entry("BIOS Build ID", p+0x0D, 9);
printf("Product Name: %s\n", product_name((const char *)(p+0x0D)));