]> git.baikalelectronics.ru Git - kernel.git/commit
[POWERPC] DMA 4GB boundary protection
authorJake Moilanen <moilanen@austin.ibm.com>
Thu, 29 Mar 2007 13:44:02 +0000 (08:44 -0500)
committerPaul Mackerras <paulus@samba.org>
Thu, 12 Apr 2007 17:55:13 +0000 (03:55 +1000)
commit1748f120fb9008a629a7ea95c4c104bc1c95a36d
tree47908de09d2e7d55d82a3b9d2e47b34b2c7f8133
parentfe3b53bc6219aad37b5460ffa9ccf73bed9c9cdf
[POWERPC] DMA 4GB boundary protection

There are many adapters which cannot handle DMAing across any 4 GB
boundary.  For instance, the latest Emulex adapters.

This normally is not an issue as firmware gives dma-windows under
4gigs.  However, some of the new System-P boxes have dma-windows above
4gigs, and this present a problem.

During initialization of the IOMMU tables, the last entry at each 4GB
boundary is marked as used.  Thus no mappings can cross the boundary.
If a table ends at a 4GB boundary, the entry is not marked as used.

A boot option to remove this 4GB protection is given w/ protect4gb=off.
This exposes the potential issue for driver and hardware development
purposes.

Signed-off-by: Jake Moilanen <moilanen@austin.ibm.com>
Acked-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Paul Mackerras <paulus@samba.org>
arch/powerpc/kernel/iommu.c