Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 6 Feb 1996 18:11:24 -0800 (PST)
From:      Julian Elischer <julian@ref.tfs.com>
To:        hasty@rah.star-gate.com (Amancio Hasty Jr.)
Cc:        fwmiller@cs.UMD.EDU, hackers@FreeBSD.org
Subject:   Re: PCI programming
Message-ID:  <199602070211.SAA01772@ref.tfs.com>
In-Reply-To: <199602062125.NAA00383@rah.star-gate.com> from "Amancio Hasty Jr." at Feb 6, 96 01:25:36 pm

next in thread | previous in thread | raw e-mail | index | archive | help
Unfortunatly you can't do this per-se.

> 
>  > Hello!
>  > 
>  > I was given your name by a Peter Dufault.  He told me that you had been
>  > doing some work with PCI-to-PCI data transfers.  I am interested in
>  > streaming some data from an Adaptec AHA-2940 PCI SCSI adapter directly
>  > to a PCI Ethernet card.  I wonder if you might help me with a couple of
>  > questions?
>  > 
>  > Is there a particular Ethernet card I should get, e. g. one of the DEC
>  > Tulip based cards perhaps?

 Both these devices are Bus Masters..
neither contains  accessible ram.
you can't really pass data directly from one master to another.

you need a RAM scratch pad that both devices can access.

instead of asking how a particular solution can be inplimented..
I would ask you to actually state the original problem you are trying to solve..
(video server?)
Unfortunatly You can't just 'Pipe" data into an ethernet card.
each packet has to be 'bracketted' by control (source and destination)
information, and such things as IP headers etc.

I've done quite a bit in this field.. My employer here produces systems that use 
Direct Disk-to-Net technologies, but we use our
own hardware. The ethernet cards have 4MB of RAM on them (up to 16MB)
and the SCSI drivers DMA directly into that ram.
We then send the data one packet at a time..
(you can see some fractions of the disk part in bt.c, in #ifdef TFS :)
I have some definite ideas in how to do this better
but it's about iten 4356 on my list of things to do.

summary:
You need the data to land on some RAM somewhere, in between the two DMA
masters.. the problem is in knowing when that ram is free and can be 
re-used..


+----------------------------------+       ______ _  __
|   __--_|\  Julian Elischer       |       \     U \/ / On assignment
|  /       \ julian@ref.tfs.com    +------>x   USA    \ in a very strange
| (   OZ    ) 300 lakeside Dr. oakland CA. \___   ___ | country !
+- X_.---._/  USA+(510) 645-3137(wk)           \_/   \\            
          v




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