* The PCI Library -- Access to i386 I/O ports on Solaris
*
* Copyright (c) 2003 Bill Moore <billm@eng.sun.com>
- * Copyright (c) 2003 Martin Mares <mj@ucw.cz>
+ * Copyright (c) 2003--2006 Martin Mares <mj@ucw.cz>
*
* Can be freely distributed and used under the terms of the GNU GPL.
*/
#include <sys/sysi86.h>
#include <sys/psw.h>
-static int intel_iopl_set = -1;
-
static int
-intel_setup_io(void)
+intel_setup_io(struct pci_access *a UNUSED)
{
- if (intel_iopl_set < 0)
- {
- if (sysi86(SI86V86, V86SC_IOPL, PS_IOPL) < 0)
- intel_iopl_set = 0;
- else
- intel_iopl_set = 1;
- }
- return intel_iopl_set;
+ return (sysi86(SI86V86, V86SC_IOPL, PS_IOPL) < 0) ? 0 : 1;
}
static inline void
-intel_cleanup_io(void)
+intel_cleanup_io(struct pci_access *a UNUSED)
{
- if (intel_iopl_set > 0)
- {
- /* FIXME: How to switch off I/O port access? */
- }
- intel_iopl_set = -1;
+ /* FIXME: How to switch off I/O port access? */
}
static inline u8
{
__asm__ __volatile__ ("outl (%w1)": :"a" (value), "Nd" (port));
}
+
+static inline void intel_io_lock(void)
+{
+}
+
+static inline void intel_io_unlock(void)
+{
+}