From 3bfb59f70d4bf8ca7b9e6a0bdbcacdbbebf41403 Mon Sep 17 00:00:00 2001 From: Andrew Schultz Date: Tue, 11 May 2004 18:06:50 -0400 Subject: Changes to fix bad DMA handling by disk when using scatter gather page mappings (writes still unverified, and read could probably be looked over a bit more too) dev/ide_disk.cc: dev/ide_disk.hh: Major changes to fix bogus handling of dma transfers. The read seems to work pretty well, but the write is unverfied until we can get a disk image that actually tries to write. dev/tsunami_pchip.cc: Change mask to properly mask 13 bits not 12 --HG-- extra : convert_revision : 08fe9bc32970e449cd045de479553a96a4e389d6 --- dev/tsunami_pchip.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'dev/tsunami_pchip.cc') diff --git a/dev/tsunami_pchip.cc b/dev/tsunami_pchip.cc index ea23cce08..dabf6bf40 100644 --- a/dev/tsunami_pchip.cc +++ b/dev/tsunami_pchip.cc @@ -263,7 +263,7 @@ TsunamiPChip::translatePciToDma(Addr busAddr) physmem->dma_addr(pteAddr, sizeof(uint64_t)), sizeof(uint64_t)); - dmaAddr = ((pteEntry & ~0x1) << 12) | (busAddr & 0xfff); + dmaAddr = ((pteEntry & ~0x1) << 12) | (busAddr & 0x1fff); } else { baMask = (wsm[i] & (0x7ff << 20)) | 0xfffff; -- cgit v1.2.3