mini fix to reliably compile inteltool on darwin, and on Linux both on x86/x86_64.
Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4190 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
diff --git a/util/inteltool/cpu.c b/util/inteltool/cpu.c
index bde93de..c1972b7 100644
--- a/util/inteltool/cpu.c
+++ b/util/inteltool/cpu.c
@@ -32,6 +32,7 @@
{
unsigned int ret;
unsigned int dummy2, dummy3, dummy4;
+#if DARWIN
asm volatile (
"pushl %%ebx \n"
"cpuid \n"
@@ -41,6 +42,14 @@
: "a" (op)
: "cc"
);
+#else
+ asm volatile (
+ "cpuid"
+ : "=a" (ret), "=b" (dummy2), "=c" (dummy3), "=d" (dummy4)
+ : "a" (op)
+ : "cc"
+ );
+#endif
return ret;
}
diff --git a/util/inteltool/inteltool.c b/util/inteltool/inteltool.c
index c8fa6ac..d7bd6c0 100644
--- a/util/inteltool/inteltool.c
+++ b/util/inteltool/inteltool.c
@@ -57,7 +57,7 @@
fd_mem, (off_t) phys_addr);
if (virt_addr == MAP_FAILED) {
- printf("Error mapping physical memory 0x%08x[0x%x]\n", phys_addr, len);
+ printf("Error mapping physical memory 0x%08lx[0x%x]\n", phys_addr, len);
return NULL;
}