diff options
author | Paul Kocialkowski <contact@paulk.fr> | 2017-11-22 14:22:59 +0100 |
---|---|---|
committer | Martin Roth <martinroth@google.com> | 2017-12-09 16:56:09 +0000 |
commit | 826713ff61a3204e32e1d7954e2c22917f30e8a5 (patch) | |
tree | e666116e3cb18c1525e8fd7938045ec35436955e | |
parent | 87f67bc69912c8725769481d70352eef894baa3a (diff) |
nvramtool: Add dummy cmos-hw-unix accessor implementation for non-x86
The default implementation uses inb/outb, that is not available on ARM
platforms and others. A dummy implementation allows building nvramtool
on these platforms.
Change-Id: I75e4a1a0cbd35ca40f7b108658686839ccf9784a
Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
Reviewed-on: https://review.coreboot.org/22562
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
-rw-r--r-- | util/nvramtool/accessors/cmos-hw-unix.c | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/util/nvramtool/accessors/cmos-hw-unix.c b/util/nvramtool/accessors/cmos-hw-unix.c index acefdf7cea..33d699415f 100644 --- a/util/nvramtool/accessors/cmos-hw-unix.c +++ b/util/nvramtool/accessors/cmos-hw-unix.c @@ -11,7 +11,7 @@ #define INW(x) __extension__ ({ u_int tmp = (x); inw(tmp); }) #define INL(x) __extension__ ({ u_int tmp = (x); inl(tmp); }) #else -#if defined(__GLIBC__) +#if defined(__GLIBC__) && (defined(__i386__) || defined(__x86_64__)) #include <sys/io.h> #endif #if (defined(__MACH__) && defined(__APPLE__)) @@ -77,6 +77,8 @@ static unsigned char cmos_hal_read(unsigned addr); static void cmos_hal_write(unsigned addr, unsigned char value); static void cmos_set_iopl(int level); +#if defined(__i386__) || defined(__x86_64__) + /* no need to initialize anything */ static void cmos_hal_init(__attribute__((unused)) void *data) { @@ -160,6 +162,32 @@ static void cmos_set_iopl(int level) #endif } +#else + +/* no need to initialize anything */ +static void cmos_hal_init(__attribute__((unused)) void *data) +{ + return; +} + +static unsigned char cmos_hal_read(__attribute__((unused)) unsigned index) +{ + return; +} + +static void cmos_hal_write(__attribute__((unused)) unsigned index, + __attribute__((unused)) unsigned char value) +{ + return; +} + +static void cmos_set_iopl(__attribute__((unused)) int level) +{ + return; +} + +#endif + cmos_access_t cmos_hal = { .init = cmos_hal_init, .read = cmos_hal_read, |