X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=lib%2Fi386-io-linux.h;h=b39b4eb8267d0585ab7bcdede85e7a9137812932;hb=8b122188dfd404984eb360e8d876682fe7eb1613;hp=ee119d25094608eb1ecc43be4f4c37951671e2f7;hpb=68245cfdf612741cb0916434a25ef86c408821c1;p=pciutils.git diff --git a/lib/i386-io-linux.h b/lib/i386-io-linux.h index ee119d2..b39b4eb 100644 --- a/lib/i386-io-linux.h +++ b/lib/i386-io-linux.h @@ -1,31 +1,30 @@ /* * The PCI Library -- Access to i386 I/O ports on Linux * - * Copyright (c) 1997--2003 Martin Mares + * Copyright (c) 1997--2006 Martin Mares * * Can be freely distributed and used under the terms of the GNU GPL. */ -#ifdef __GLIBC__ #include -#else -#include -#endif - -static int intel_iopl_set = -1; static int -intel_setup_io(void) +intel_setup_io(struct pci_access *a UNUSED) +{ + return (iopl(3) < 0) ? 0 : 1; +} + +static inline int +intel_cleanup_io(struct pci_access *a UNUSED) +{ + iopl(3); + return -1; +} + +static inline void intel_io_lock(void) { - if (intel_iopl_set < 0) - intel_iopl_set = (iopl(3) < 0) ? 0 : 1; - return intel_iopl_set; } -static inline void -intel_cleanup_io(void) +static inline void intel_io_unlock(void) { - if (intel_iopl_set > 0) - iopl(3); - intel_iopl_set = -1; }