X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=include%2Fasm-sparc64%2Fpbm.h;h=92999631c81966a7a310d6b718955b83fd378fbe;hb=c7b5ebbddf7bcd3651947760f423e3783bbe6573;hp=0cddbd2bf2c6e1caf62bd9fcce1e4f9ef8e70821;hpb=a2c21200f1c81b08cb55e417b68150bba439b646;p=linux-2.6.git diff --git a/include/asm-sparc64/pbm.h b/include/asm-sparc64/pbm.h index 0cddbd2bf..92999631c 100644 --- a/include/asm-sparc64/pbm.h +++ b/include/asm-sparc64/pbm.h @@ -70,6 +70,13 @@ struct pci_iommu { */ u32 lowest_consistent_map; + /* In order to deal with some buggy third-party PCI bridges that + * do wrong prefetching, we never mark valid mappings as invalid. + * Instead we point them at this dummy page. + */ + unsigned long dummy_page; + unsigned long dummy_page_pa; + /* If PBM_NCLUSTERS is ever decreased to 4 or lower, * or if largest supported page_table_sz * 8K goes above * 2GB, you must increase the size of the type of @@ -93,6 +100,8 @@ struct pci_iommu { u32 dma_addr_mask; }; +extern void pci_iommu_table_init(struct pci_iommu *, int); + /* This describes a PCI bus module's streaming buffer. */ struct pci_strbuf { int strbuf_enabled; /* Present and using it? */