libpayload: Some more compatibility (for flashrom)

libpci defines an arbitrary set of PCI vendor IDs, flashrom uses the
Intel definition. Add it.

flashrom also requires inttypes.h, so add the OpenBSD version

Change-Id: I9bffd8193f635c375ac4d6b6eae8d3d876b95f5f
Signed-off-by: Patrick Georgi <patrick.georgi@secunet.com>
Reviewed-on: http://review.coreboot.org/154
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
This commit is contained in:
Patrick Georgi
2011-07-26 12:51:59 +02:00
committed by Patrick Georgi
parent 8bbdb61113
commit c643fdd157
5 changed files with 466 additions and 2 deletions

View File

@ -32,6 +32,7 @@
#include <libpayload.h>
#include <string.h>
#include <ctype.h>
#include <inttypes.h>
#include <errno.h>
/**
@ -486,9 +487,9 @@ long atol(const char *nptr)
* @return An unsigned integer representation of the string
*/
unsigned long int strtoul(const char *ptr, char **endptr, int base)
unsigned long long int strtoull(const char *ptr, char **endptr, int base)
{
int ret = 0;
unsigned long long int ret = 0;
if (endptr != NULL)
*endptr = (char *) ptr;
@ -535,6 +536,14 @@ unsigned long int strtoul(const char *ptr, char **endptr, int base)
return ret;
}
unsigned long int strtoul(const char *ptr, char **endptr, int base)
{
unsigned long long val = strtoull(ptr, endptr, base);
if (val > UINT32_MAX) return UINT32_MAX;
return val;
}
/**
* Determine the number of leading characters in s that match characters in a
* @param s A pointer to the string to analyse