cvs commit: src/sys/ia64/ia64 sys_machdep.c src/sys/ia64/include sysarch.h

Marcel Moolenaar marcel at FreeBSD.org
Sun Oct 26 21:45:36 PST 2003


marcel      2003/10/26 21:45:35 PST

  FreeBSD src repository

  Modified files:
    sys/ia64/ia64        sys_machdep.c 
    sys/ia64/include     sysarch.h 
  Log:
  Add support for userland to access I/O port space. This is primarily
  added for XFree86. There are 2 reasons for doing this with sysarch():
  1. The memory mapped I/O space is not at a fixed physical address. An
     application has to use some interface to get the base address. It
     gets worse if the machine has multiple memory mapped I/O spaces.
  2. Access to the memory mapped I/O space needs to happen through a
     translation that is flagged as uncachable. There's no interface
     that allows a process to do uncached memory I/O, other than though
     /dev/mem (possibly).
  
  So, until we either disallow direct access to I/O or bus space from
  userland or have a better way of doing this, sysarch() has the least
  negative impact on existing interfaces.
  
  Revision  Changes    Path
  1.7       +70 -28    src/sys/ia64/ia64/sys_machdep.c
  1.2       +13 -12    src/sys/ia64/include/sysarch.h


More information about the cvs-src mailing list