- * 11/26/2000 -- disabled the existing code because it didn't work for
- * me in 2.4. Replaced with a significantly more primitive version
- * similar to the sun3 code. the old functionality was probably more
+ * 11/26/2000 -- disabled the existing code because it didn't work for
+ * me in 2.4. Replaced with a significantly more primitive version
+ * similar to the sun3 code. the old functionality was probably more
-#define dvma_entry_paddr(index) (iommu_pte[index] & IOMMU_ADDR_MASK)
-#define dvma_entry_vaddr(index,paddr) ((index << DVMA_PAGE_SHIFT) | \
+#define dvma_entry_paddr(index) (iommu_pte[index] & IOMMU_ADDR_MASK)
+#define dvma_entry_vaddr(index,paddr) ((index << DVMA_PAGE_SHIFT) | \
(paddr & (DVMA_PAGE_SIZE-1)))
#if 0
#define dvma_entry_set(index,addr) (iommu_pte[index] = \
(paddr & (DVMA_PAGE_SIZE-1)))
#if 0
#define dvma_entry_set(index,addr) (iommu_pte[index] = \
/* create a virtual mapping for a page assigned within the IOMMU
so that the cpu can reach it easily */
/* create a virtual mapping for a page assigned within the IOMMU
so that the cpu can reach it easily */
{
unsigned long end, index;
index = baddr >> DVMA_PAGE_SHIFT;
end = ((baddr+len) >> DVMA_PAGE_SHIFT);
{
unsigned long end, index;
index = baddr >> DVMA_PAGE_SHIFT;
end = ((baddr+len) >> DVMA_PAGE_SHIFT);
for(; index < end ; index++) {
#ifdef DEBUG
printk("freeing bus mapping %08x\n", index << DVMA_PAGE_SHIFT);
#endif
#if 0
for(; index < end ; index++) {
#ifdef DEBUG
printk("freeing bus mapping %08x\n", index << DVMA_PAGE_SHIFT);
#endif
#if 0