summaryrefslogtreecommitdiff
path: root/hwaccess.h
diff options
context:
space:
mode:
authoroxygene <oxygene@2b7e53f0-3cfb-0310-b3e9-8179ed1497e1>2010-09-30 17:03:32 +0000
committeroxygene <oxygene@2b7e53f0-3cfb-0310-b3e9-8179ed1497e1>2010-09-30 17:03:32 +0000
commitd83d4070bfc116a32ca7b365cd7a614e1b6202ed (patch)
treef79ff036266bb09b180f27b3552dd30116a221e4 /hwaccess.h
parent198af25a1f5570d9d7351f1bbfdc3e38e975fc27 (diff)
downloadflashrom-d83d4070bfc116a32ca7b365cd7a614e1b6202ed.tar.gz
Add support for building flashrom against libpayload.
This doesn't include changes to the frontend which must be done separately, so this won't work out of the box. This code was tested on hardware. Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de> Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> git-svn-id: https://code.coreboot.org/svn/flashrom/trunk@1184 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'hwaccess.h')
-rw-r--r--hwaccess.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/hwaccess.h b/hwaccess.h
index 2d17326..45629d2 100644
--- a/hwaccess.h
+++ b/hwaccess.h
@@ -292,7 +292,7 @@ static inline uint32_t inl(uint16_t port)
#endif
#endif
-#if !defined(__DARWIN__) && !defined(__FreeBSD__) && !defined(__DragonFly__)
+#if !defined(__DARWIN__) && !defined(__FreeBSD__) && !defined(__DragonFly__) && !defined(__LIBPAYLOAD__)
typedef struct { uint32_t hi, lo; } msr_t;
msr_t rdmsr(int addr);
int wrmsr(int addr, msr_t msr);
@@ -307,6 +307,16 @@ typedef struct { uint32_t hi, lo; } msr_t;
msr_t freebsd_rdmsr(int addr);
int freebsd_wrmsr(int addr, msr_t msr);
#endif
+#if defined(__LIBPAYLOAD__)
+#include <arch/io.h>
+#include <arch/msr.h>
+typedef struct { uint32_t hi, lo; } msr_t;
+msr_t libpayload_rdmsr(int addr);
+int libpayload_wrmsr(int addr, msr_t msr);
+#undef rdmsr
+#define rdmsr libpayload_rdmsr
+#define wrmsr libpayload_wrmsr
+#endif
#elif defined(__powerpc__) || defined(__powerpc64__) || defined(__ppc__) || defined(__ppc64__)