Back to index

glibc  2.9
Enumerations | Functions
io.h File Reference
#include <features.h>
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Enumerations

enum  __pciconfig_iobase_which {
  IOBASE_HOSE = 0, IOBASE_SPARSE_MEM = 1, IOBASE_DENSE_MEM = 2, IOBASE_SPARSE_IO = 3,
  IOBASE_DENSE_IO = 4
}

Functions

__BEGIN_DECLS int ioperm (unsigned long int __from, unsigned long int __num, int __turn_on) __THROW
int iopl (int __level) __THROW
unsigned long int _bus_base (void) __THROW __attribute__((const ))
unsigned long int bus_base (void) __THROW __attribute__((const ))
unsigned long _bus_base_sparse (void) __THROW __attribute__((const ))
unsigned long bus_base_sparse (void) __THROW __attribute__((const ))
int _hae_shift (void) __THROW __attribute__((const ))
int hae_shift (void) __THROW __attribute__((const ))
long pciconfig_iobase (enum __pciconfig_iobase_which __which, unsigned long int __bus, unsigned long int __dfn) __THROW __attribute__((const ))
int pciconfig_read (unsigned long int __bus, unsigned long int __dfn, unsigned long int __off, unsigned long int __len, unsigned char *__buf) __THROW
int pciconfig_write (unsigned long int __bus, unsigned long int __dfn, unsigned long int __off, unsigned long int __len, unsigned char *__buf) __THROW
unsigned int inb (unsigned long __port) __THROW
unsigned int inw (unsigned long __port) __THROW
unsigned int inl (unsigned long __port) __THROW
void outb (unsigned char __b, unsigned long __port) __THROW
void outw (unsigned short __w, unsigned long __port) __THROW
void outl (unsigned int __l, unsigned long __port) __THROW

Enumeration Type Documentation

Enumerator:
IOBASE_HOSE 
IOBASE_SPARSE_MEM 
IOBASE_DENSE_MEM 
IOBASE_SPARSE_IO 
IOBASE_DENSE_IO 

Definition at line 58 of file io.h.

{
  IOBASE_HOSE = 0,          /* Return hose index. */
  IOBASE_SPARSE_MEM = 1,    /* Return physical memory addresses.  */
  IOBASE_DENSE_MEM = 2,
  IOBASE_SPARSE_IO = 3,
  IOBASE_DENSE_IO = 4
};

Function Documentation

unsigned long int _bus_base ( void  ) const
unsigned long _bus_base_sparse ( void  ) const
int _hae_shift ( void  ) const
unsigned long int bus_base ( void  ) const
unsigned long bus_base_sparse ( void  ) const
int hae_shift ( void  ) const
unsigned int inb ( unsigned long  __port)
unsigned int inl ( unsigned long  __port)
unsigned int inw ( unsigned long  __port)
__BEGIN_DECLS int ioperm ( unsigned long int  __from,
unsigned long int  __num,
int  __turn_on 
)

Definition at line 25 of file ioperm.c.

{
#if ! HAVE_I386_IO_PERM_MODIFY
  return __hurd_fail (ENOSYS);
#else
  error_t err;
  device_t devmaster;

  /* With the device master port we get a capability that represents
     this range of io ports.  */
  err = __get_privileged_ports (NULL, &devmaster);
  if (! err)
    {
      io_perm_t perm;
      err = __i386_io_perm_create (devmaster, from, from + num - 1, &perm);
      __mach_port_deallocate (__mach_task_self (), devmaster);
      if (! err)
       {
         /* Now we add or remove that set from our task's bitmap.  */
         err = __i386_io_perm_modify (__mach_task_self (), perm, turn_on);
         __mach_port_deallocate (__mach_task_self (), perm);
       }

      if (err == MIG_BAD_ID)       /* Old kernels don't have these RPCs.  */
       err = ENOSYS;
    }

  return err ? __hurd_fail (err) : 0;
#endif
}
int iopl ( int  __level)
void outb ( unsigned char  __b,
unsigned long  __port 
)
void outl ( unsigned int  __l,
unsigned long  __port 
)
void outw ( unsigned short  __w,
unsigned long  __port 
)
long pciconfig_iobase ( enum __pciconfig_iobase_which  __which,
unsigned long int  __bus,
unsigned long int  __dfn 
) const
int pciconfig_read ( unsigned long int  __bus,
unsigned long int  __dfn,
unsigned long int  __off,
unsigned long int  __len,
unsigned char *  __buf 
)
int pciconfig_write ( unsigned long int  __bus,
unsigned long int  __dfn,
unsigned long int  __off,
unsigned long int  __len,
unsigned char *  __buf 
)