Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 27 Apr 2010 12:20:17 GMT
From:      Alexander Motin <mav@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 177397 for review
Message-ID:  <201004271220.o3RCKHth006451@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://p4web.freebsd.org/@@177397?ac=10

Change 177397 by mav@mav_mavtest on 2010/04/27 12:20:15

	Make sure EDMA disabled for ATAPI DMA commands.

Affected files ...

.. //depot/projects/scottl-camlock/src/sys/dev/mvs/mvs.c#15 edit

Differences ...

==== //depot/projects/scottl-camlock/src/sys/dev/mvs/mvs.c#15 (text+ko) ====

@@ -1111,6 +1111,7 @@
 			mvs_set_edma_mode(dev, MVS_EDMA_ON);
 		} else {
 			ch->numpslots++;
+			mvs_set_edma_mode(dev, MVS_EDMA_OFF);
 		}
 		if (ccb->ataio.cmd.flags &
 		    (CAM_ATAIO_CONTROL | CAM_ATAIO_NEEDRESULT)) {
@@ -1129,9 +1130,11 @@
 		     cdb[0] == 0x88 ||
 		     cdb[0] == 0x8a ||
 		     cdb[0] == 0xa8 ||
-		     cdb[0] == 0xaa)) {
+		     cdb[0] == 0xaa ||
+		     cdb[0] == 0xbe)) {
 			ch->basic_dma = 1;
 		}
+		mvs_set_edma_mode(dev, MVS_EDMA_OFF);
 	}
 	if (ch->numpslots == 0 || ch->basic_dma) {
 		void *buf;
@@ -1147,10 +1150,8 @@
 		}
 		bus_dmamap_load(ch->dma.data_tag, slot->dma.data_map,
 		    buf, size, mvs_dmasetprd, slot, 0);
-	} else {
-		mvs_set_edma_mode(dev, MVS_EDMA_OFF);
+	} else
 		mvs_legacy_execute_transaction(slot);
-	}
 }
 
 /* Locked by busdma engine. */



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201004271220.o3RCKHth006451>