> On Jun 4, 2016, at 11:24 AM, Johnny Billquist <[email protected]> wrote:
>
> I'm not sure exactly which chip is on the controller itself, but that's not
> really so relevant. You do not talk directly to the chip anyway. The Pro
> controller is called DECNA, and it has it's own programming interface. But
> documentation for it exist, so it's mostly a question of someone taking the
> time to implement it.
The chip is an Intel 82586, which is a horribly bad design using queues to give
descriptors to the device, misdesigned so that sometimes you'd give a
descriptor to it just as it thinks it has nothing left to do so it ends up with
an entry on the queue that it isn't processing. (This is a design error that
Dijkstra identified, described, and solved, nearly 20 years earlier.)
Yes, the DECNA is a whole card with more stuff on it, but you're still talking
directly to the 82586. The way the CNA works is that it implements a dual port
memory on-card, visible from the Pro bus. You program the 82586 to do its
thing to/from that memory, and access the packets from host software by looking
at that chunk of address space. It doesn't seem all that hard. The 82586 data
sheet is available online, and the DECNA is documented in the Pro technical
manual (on Bitsavers). I've also seen an 82586 driver in C in some Unix
version somewhere (BSD 2.11???).
paul
_______________________________________________
Simh mailing list
[email protected]
http://mailman.trailing-edge.com/mailman/listinfo/simh