mirror of
https://review.coreboot.org/flashrom.git
synced 2025-04-27 07:02:34 +02:00
Add support for GNU Hurd
Corresponding to flashrom svn r1948. Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at> Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
This commit is contained in:
parent
d059535856
commit
8e6565449b
11
hwaccess.c
11
hwaccess.c
@ -33,12 +33,17 @@
|
|||||||
#include "flash.h"
|
#include "flash.h"
|
||||||
#include "hwaccess.h"
|
#include "hwaccess.h"
|
||||||
|
|
||||||
#if !(IS_LINUX || IS_MACOSX || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__) || defined(__DJGPP__) || defined(__LIBPAYLOAD__) || defined(__sun))
|
#if !(IS_LINUX || IS_MACOSX || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__) || defined(__DJGPP__) || defined(__LIBPAYLOAD__) || defined(__sun) || defined(__gnu_hurd__))
|
||||||
#error "Unknown operating system"
|
#error "Unknown operating system"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define USE_IOPL (IS_LINUX || IS_MACOSX || defined(__NetBSD__) || defined(__OpenBSD__))
|
#define USE_IOPL (IS_LINUX || IS_MACOSX || defined(__NetBSD__) || defined(__OpenBSD__))
|
||||||
#define USE_DEV_IO (defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__))
|
#define USE_DEV_IO (defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__))
|
||||||
|
#define USE_IOPERM (defined(__gnu_hurd__))
|
||||||
|
|
||||||
|
#if USE_IOPERM
|
||||||
|
#include <sys/io.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#if IS_X86 && USE_DEV_IO
|
#if IS_X86 && USE_DEV_IO
|
||||||
int io_fd;
|
int io_fd;
|
||||||
@ -82,6 +87,8 @@ static int release_io_perms(void *p)
|
|||||||
sysi86(SI86V86, V86SC_IOPL, 0);
|
sysi86(SI86V86, V86SC_IOPL, 0);
|
||||||
#elif USE_DEV_IO
|
#elif USE_DEV_IO
|
||||||
close(io_fd);
|
close(io_fd);
|
||||||
|
#elif USE_IOPERM
|
||||||
|
ioperm(0, 65536, 0);
|
||||||
#elif USE_IOPL
|
#elif USE_IOPL
|
||||||
iopl(0);
|
iopl(0);
|
||||||
#endif
|
#endif
|
||||||
@ -97,6 +104,8 @@ int rget_io_perms(void)
|
|||||||
if (sysi86(SI86V86, V86SC_IOPL, PS_IOPL) != 0) {
|
if (sysi86(SI86V86, V86SC_IOPL, PS_IOPL) != 0) {
|
||||||
#elif USE_DEV_IO
|
#elif USE_DEV_IO
|
||||||
if ((io_fd = open("/dev/io", O_RDWR)) < 0) {
|
if ((io_fd = open("/dev/io", O_RDWR)) < 0) {
|
||||||
|
#elif USE_IOPERM
|
||||||
|
if (ioperm(0, 65536, 1) != 0) {
|
||||||
#elif USE_IOPL
|
#elif USE_IOPL
|
||||||
if (iopl(3) != 0) {
|
if (iopl(3) != 0) {
|
||||||
#endif
|
#endif
|
||||||
|
3
os.h
3
os.h
@ -56,6 +56,9 @@
|
|||||||
// libpayload
|
// libpayload
|
||||||
#elif defined(__LIBPAYLOAD__)
|
#elif defined(__LIBPAYLOAD__)
|
||||||
#define __FLASHROM_OS__ "libpayload"
|
#define __FLASHROM_OS__ "libpayload"
|
||||||
|
// GNU Hurd
|
||||||
|
#elif defined(__gnu_hurd__)
|
||||||
|
#define __FLASHROM_OS__ "Hurd"
|
||||||
// Linux
|
// Linux
|
||||||
#elif defined(__linux__)
|
#elif defined(__linux__)
|
||||||
// There are various flags in use on Android apparently. __ANDROID__ seems to be the most trustworthy.
|
// There are various flags in use on Android apparently. __ANDROID__ seems to be the most trustworthy.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user