forcedeth: multicast fix
[powerpc.git] / drivers / scsi / oktagon_esp.c
index c116a6a..8e5eadb 100644 (file)
@@ -133,7 +133,7 @@ int oktagon_esp_detect(struct scsi_host_template *tpnt)
                eregs = (struct ESP_regs *)(address + OKTAGON_ESP_ADDR);
 
                /* This line was 5 lines lower */
-               esp = esp_allocate(tpnt, (void *)board+OKTAGON_ESP_ADDR);
+               esp = esp_allocate(tpnt, (void *)board + OKTAGON_ESP_ADDR, 0);
 
                /* we have to shift the registers only one bit for oktagon */
                esp->shift = 1;
@@ -550,8 +550,7 @@ void dma_mmu_get_scsi_one(struct NCR_ESP *esp, Scsi_Cmnd *sp)
 
 void dma_mmu_get_scsi_sgl(struct NCR_ESP *esp, Scsi_Cmnd *sp)
 {
-        sp->SCp.ptr = page_address(sp->SCp.buffer->page)+
-                     sp->SCp.buffer->offset;
+        sp->SCp.ptr = sg_virt(sp->SCp.buffer);
 }
 
 void dma_mmu_release_scsi_one(struct NCR_ESP *esp, Scsi_Cmnd *sp)
@@ -564,8 +563,7 @@ void dma_mmu_release_scsi_sgl(struct NCR_ESP *esp, Scsi_Cmnd *sp)
 
 void dma_advance_sg(Scsi_Cmnd *sp)
 {
-       sp->SCp.ptr = page_address(sp->SCp.buffer->page)+
-                     sp->SCp.buffer->offset;
+       sp->SCp.ptr = sg_virt(sp->SCp.buffer);
 }