This message is from the T13 list server.
Hale, You started this thread by proposing a method for indicating start, some data, completion, and overrun. Your original proposal (in this thread) is in no way a fuel gauge, so get off your high-horse! If you wanted a word-count you should just say it and quit baiting the topic with partial solutions that add marginal value to what we already have. MKE. -----Original Message----- From: Hale Landis [mailto:[EMAIL PROTECTED]] Sent: Thursday, February 14, 2002 3:44 PM To: T13 List Server Subject: RE: [t13] a proposal - lets fix the DMA host problem This message is from the T13 list server. I am going to give up on trying to get any kind of reliable indication of how much data has been transferred by a host DMA engine. It is clear to me that many of you can not see the difference between status that says "the DMA engine is active" and status that says how much data has been transferred by that DMA engine. I can only assume you must have the same problem with those car fuel tank idiot lights and fuel tank gauges. The light tells you if the tank is not empty or if it is empty (the DMA engine is not active or it is active). The gauge tells you how much fuel is in the tank (how much data has been transferred by the DMA engine). If you want to build toy computers then don't provide the the "how much" status and continue to think that an "active" bit is all the host needs to determine how much of the host I/O buffer data has been used. But I will respond to a few specific comments... === On Wed, 13 Feb 2002 08:01:35 -0800, Eschmann, Michael K wrote: >When you first started this thread you said you wanted a simple state >machine that says something started moving, versus DMA PRD count hit, and >DMA PRD count exceeded? Adding a "something moved" indicator really doesn't >do what you are now saying, which is how much. I have tried for years to get host DMA engine to return the actual number of bytes transferred. But I have never been able to talk any host adapter designer into implementing the needed counter. So I am willing to live with something less (those XY bits I proposed). But it is clear that many people reading this just can't understand the difference between my XY bits and the existing DMA engine status bits. True there is some overlap in a few states of the two sets of bits but the existing status bits and my XY bits are really reporting different information to the host. === Tony Goodfellow said... >The states are: >Int Err Act > 0 0 0 No DMA transfer in progress > 0 0 1 DMA transfer in progress and the ATA device > has NOT asserted INTRQ. > 1 0 0 The device INTRQ and all the data defined by the > PRD has transferred (Normal case). But with U-DMA did the device attempt to send a few more bytes to the host before stopping? > 1 0 1 The device asserted INTRQ and completed the > command before the PRD completes (may be valid > for some ATAPI commands). How much data was transferred? Was any data transferred? === So I am done with this conversation. You seem to like building toys (and maybe that is all the consumer is willing to pay for?) and that is OK. I just think you should be honest and tell the IT people of the world that these are toys and should not be used for corporate mission critical data processing. *** Hale Landis *** www.ata-atapi.com *** Subscribe/Unsubscribe instructions can be found at www.t13.org. Subscribe/Unsubscribe instructions can be found at www.t13.org.
