Xref: utzoo comp.dcom.lans:8054 comp.sys.novell:1486 Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sun-barr!newstop!sun!amdcad!brahms!ching From: ching@brahms.amd.com (Mike Ching) Newsgroups: comp.dcom.lans,comp.sys.novell Subject: Re: HELP !!! needed on ethernet driver s/w Message-ID: <1991May10.232251.24011@amd.com> Date: 10 May 91 23:22:51 GMT References: <1991May7.233920.7888@engin.umich.edu> <1991May8.030725.3387@netcom.COM> <1991May8.165555.16300@jetsun.weitek.COM> Sender: usenet@amd.com (NNTP Posting) Organization: Advanced Micro Devices; Sunnyvale, CA Lines: 30 In article <1991May8.165555.16300@jetsun.weitek.COM> paulc@jetsun.WEITEK.COM (Paul Chai) writes: >If there are any kind souls out there fluent in ethernet s/w drivers >in particular with the AMD LANCE chip, i need help with the following >questions??? Any help would be highly appreciated!! >Questions: > 1. Is it reasonable/doable to insist memory buffers start on a quadword/word > address rather than any arbitrary byte address??? The receive/transmit > descriptor rings are after all on quadword address boundary. It is undesirable to insist that memory buffers start on quadword addresses since it would probably require a data copy to comply with the requirement. Word alignment is less of a problem since headers are an even number of bytes. The alignment requirement of the descriptor rings is not much of a restriction since control structures will rarely cause this copying overhead. > 2. ON ethernet Read/Write DMA transfers, you have the following data > pattern "....,addr,data,addr,data,.....,addr,data" . Is it safe to assume > in a contiguous transfer ie. HOLD- continously asserted that all the > addresses are consecutive eg. 10,12,14,16,...etc??? This would enable > one to only need to buffer the first address. Most existing DMA controllers including the one in the LANCE do transfers only to consecutive addresses. However software does not have access to the transactions on the memory bus so I'm not sure how relevant this is. > 3. What is the appropriate way of draining data to memory during a DMA > write transfer??? Wait for a Lance interrupt to do it ??? I don't understand this question. The LANCE writes the data into memory. There is no need to drain anything. Mike Ching AMD Field Applications