---
name: "pci_iomap"
section: "9"
platform: "linux"
package: "linux-manual-4.9"
version: "4.9.228-1"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/pci_iomap"
---

# pci\_iomap(9)

create a virtual mapping cookie for a PCI BAR

## NAME

pci\_iomap - create a virtual mapping cookie for a PCI BAR

## SYNOPSIS

**void \_\_iomem \* pci\_iomap(struct pci\_dev \*** *dev***, int** *bar***, unsigned long** *maxlen***);**

## ARGUMENTS

*dev*

PCI device that owns the BAR

*bar*

BAR number

*maxlen*

length of the memory to map

## DESCRIPTION

Using this function you will get a \_\_iomem address to your device BAR. You can access it using ioread\*() and iowrite\*(). These functions hide the details if this is a MMIO or PIO address space and will just do what you expect from them in the correct way.

*maxlen* specifies the maximum length to map. If you want to get access to the complete BAR without checking for its length first, pass **0** here.

## AUTHORS

**Matthew Wilcox** \<matthew@wil.cx\>

Author.

**Alan Cox** \<alan@lxorguk.ukuu.org.uk\>

Author.

## COPYRIGHT
