Navigation: Linux Kernel Driver DataBase - web LKDDB: Main index - I index

CONFIG_IXP4XX_INDIRECT_PCI: Use indirect PCI memory access

General informations

The Linux kernel configuration item CONFIG_IXP4XX_INDIRECT_PCI:

Help text

IXP4xx provides two methods of accessing PCI memory space:

1) A direct mapped window from 0x48000000 to 0x4BFFFFFF (64MB). To access PCI via this space, we simply ioremap() the BAR into the kernel and we can use the standard read[bwl]/write[bwl] macros. This is the preferred method due to speed but it limits the system to just 64MB of PCI memory. This can be problematic if using video cards and other memory-heavy devices.

2) If > 64MB of memory space is required, the IXP4xx can be configured to use indirect registers to access the whole PCI memory space. This currently allows for up to 1 GB (0x10000000 to 0x4FFFFFFF) of memory on the bus. The disadvantage of this is that every PCI access requires three local register accesses plus a spinlock, but in some cases the performance hit is acceptable. In addition, you cannot mmap() PCI devices in this case due to the indirect nature of the PCI window.

By default, the direct method is used. Choose this option if you need to use the indirect method instead. If you don't know what you need, leave this option unselected.



Raw data from LKDDb:


This page is automaticly generated with free (libre, open) software lkddb(see lkddb-sources).

The data is retrived from:

Automatic links from Google (and ads)

Custom Search

Popular queries:

Navigation: Linux Kernel Driver DataBase - web LKDDB: main index - I index

Automatically generated (in year 2022). See also LKDDb sources on GitLab