1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>Bus-Independent Device Accesses</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="Bus-Independent Device Accesses"><link rel="next" href="intro.html" title="Chapter&#160;1.&#160;Introduction"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Bus-Independent Device Accesses</th></tr><tr><td width="20%" align="left">&#160;</td><th width="60%" align="center">&#160;</th><td width="20%" align="right">&#160;<a accesskey="n" href="intro.html">Next</a></td></tr></table><hr></div><div class="book"><div class="titlepage"><div><div><h1 class="title"><a name="DoingIO"></a>Bus-Independent Device Accesses</h1></div><div><div class="authorgroup"><div class="author"><h3 class="author"><span class="firstname">Matthew</span> <span class="surname">Wilcox</span></h3><div class="affiliation"><div class="address"><p><br>
2&#160;&#160;&#160;&#160;&#160;&#160;<code class="email">&lt;<a class="email" href="mailto:matthew@wil.cx">matthew@wil.cx</a>&gt;</code><br>
3&#160;&#160;&#160;&#160;&#160;</p></div></div></div></div></div><div><div class="authorgroup"><div class="author"><h3 class="author"><span class="firstname">Alan</span> <span class="surname">Cox</span></h3><div class="affiliation"><div class="address"><p><br>
4&#160;&#160;&#160;&#160;&#160;&#160;<code class="email">&lt;<a class="email" href="mailto:alan@lxorguk.ukuu.org.uk">alan@lxorguk.ukuu.org.uk</a>&gt;</code><br>
5&#160;&#160;&#160;&#160;&#160;</p></div></div></div></div></div><div><p class="copyright">Copyright &#169; 2001 Matthew Wilcox</p></div><div><div class="legalnotice"><a name="idp1109572676"></a><p>
6     This documentation is free software; you can redistribute
7     it and/or modify it under the terms of the GNU General Public
8     License as published by the Free Software Foundation; either
9     version 2 of the License, or (at your option) any later
10     version.
11   </p><p>
12     This program is distributed in the hope that it will be
13     useful, but WITHOUT ANY WARRANTY; without even the implied
14     warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
15     See the GNU General Public License for more details.
16   </p><p>
17     You should have received a copy of the GNU General Public
18     License along with this program; if not, write to the Free
19     Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
20     MA 02111-1307 USA
21   </p><p>
22     For more details see the file COPYING in the source
23     distribution of Linux.
24   </p></div></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="chapter"><a href="intro.html">1. Introduction</a></span></dt><dt><span class="chapter"><a href="bugs.html">2. Known Bugs And Assumptions</a></span></dt><dt><span class="chapter"><a href="mmio.html">3. Memory Mapped IO</a></span></dt><dd><dl><dt><span class="sect1"><a href="mmio.html#getting_access_to_the_device">Getting Access to the Device</a></span></dt><dt><span class="sect1"><a href="accessing_the_device.html">Accessing the device</a></span></dt></dl></dd><dt><span class="chapter"><a href="port_space_accesses.html">4. Port Space Accesses</a></span></dt><dd><dl><dt><span class="sect1"><a href="port_space_accesses.html#port_space_explained">Port Space Explained</a></span></dt><dt><span class="sect1"><a href="accessing_port_space.html">Accessing Port Space</a></span></dt></dl></dd><dt><span class="chapter"><a href="pubfunctions.html">5. Public Functions Provided</a></span></dt><dd><dl><dt><span class="refentrytitle"><a href="API-virt-to-phys.html"><span class="phrase">virt_to_phys</span></a></span><span class="refpurpose"> &#8212; 
25  map virtual addresses to physical
26 </span></dt><dt><span class="refentrytitle"><a href="API-phys-to-virt.html"><span class="phrase">phys_to_virt</span></a></span><span class="refpurpose"> &#8212; 
27     map physical address to virtual
28 </span></dt><dt><span class="refentrytitle"><a href="API-ioremap-nocache.html"><span class="phrase">ioremap_nocache</span></a></span><span class="refpurpose"> &#8212; 
29     map bus memory into CPU space
30 </span></dt><dt><span class="refentrytitle"><a href="API-pci-iomap-range.html"><span class="phrase">pci_iomap_range</span></a></span><span class="refpurpose"> &#8212; 
31  create a virtual mapping cookie for a PCI BAR
32 </span></dt><dt><span class="refentrytitle"><a href="API-pci-iomap.html"><span class="phrase">pci_iomap</span></a></span><span class="refpurpose"> &#8212; 
33     create a virtual mapping cookie for a PCI BAR
34 </span></dt></dl></dd></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left">&#160;</td><td width="20%" align="center">&#160;</td><td width="40%" align="right">&#160;<a accesskey="n" href="intro.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">&#160;</td><td width="20%" align="center">&#160;</td><td width="40%" align="right" valign="top">&#160;Chapter&#160;1.&#160;Introduction</td></tr></table></div></body></html>
35