Bus-Independent Device Accesses

Matthew Wilcox


      
     

Alan Cox


      
     

This documentation is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

For more details see the file COPYING in the source distribution of Linux.


Table of Contents

1. Introduction
2. Known Bugs And Assumptions
3. Memory Mapped IO
Getting Access to the Device
Accessing the device
4. Port Space Accesses
Port Space Explained
Accessing Port Space
5. Public Functions Provided
virt_to_phys — map virtual addresses to physical
phys_to_virt — map physical address to virtual
ioremap_nocache — map bus memory into CPU space
pci_iomap_range — create a virtual mapping cookie for a PCI BAR
pci_iomap — create a virtual mapping cookie for a PCI BAR