From owner-freebsd-questions Wed Mar 27 09:55:37 1996 Return-Path: owner-questions Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id JAA13865 for questions-outgoing; Wed, 27 Mar 1996 09:55:37 -0800 (PST) Received: from phaeton.artisoft.com (phaeton.Artisoft.COM [198.17.250.211]) by freefall.freebsd.org (8.7.3/8.7.3) with SMTP id JAA13859 for ; Wed, 27 Mar 1996 09:55:33 -0800 (PST) Received: (from terry@localhost) by phaeton.artisoft.com (8.6.11/8.6.9) id KAA01545; Wed, 27 Mar 1996 10:53:53 -0700 From: Terry Lambert Message-Id: <199603271753.KAA01545@phaeton.artisoft.com> Subject: Re: Token Ring card driver support ? To: hvt@vie.co.at (anton horvath) Date: Wed, 27 Mar 1996 10:53:53 -0700 (MST) Cc: freebsd-questions@FreeBSD.org In-Reply-To: <199603271013.LAA01109@oz.vie.co.at> from "anton horvath" at Mar 27, 96 11:13:12 am X-Mailer: ELM [version 2.4 PL24] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-questions@FreeBSD.org X-Loop: FreeBSD.org Precedence: bulk > I would be interested to know how the chances are for a TokenRing > Card hardware support. > > If something is planned or in work, it would be helpful to hear, > when eventually it would be usable ? The following people are known to be interested in working on, or actively developing token ring support: Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers. ] ============================================================================= ] From: "MSX.GRACEFE" ] ============================================================================= ] I am interested in helping out in the development of a working token ring ] driver for FreeBSD - which mailing lists should I subscribe to? ] ] ] ============================================================================= ] From: "Yaser K. Doleh" ] ============================================================================= ] I started writting a device driver for an IBM Token Ring card. ] I am doing this just to learn how to write a device driver nothing more. ] ] here are some of the problems I ran into and I was wordering if somebody ] can point me to the write direction of where to find more information. ] ] When I put an entry in the kernel config like ] ] device tr0 at isa? port 0xA20 net irq 11 iomem 0xde000 vector trintr ] ] Does this means the routine "trintr" will called when the card generate ] an interrupt ? ] I don't seem to be able to get this routine called. I think I followed ] what the IBM manual says but no interrupts. So from the BSD kernel ] point of view what is my check list to make sure my "trintr" gets ] called. ] ] How can I tell the kernel that this is a network device ? ] The kernel does not seem to recongnize the device as a network device ? ] i.e. when I boot with -c the device is not listed under network devices. ] ] I used the ix driver as a starting point and basicly changed what the functions ] do. I even attached the driver to the ethernet code just to experiment. ] I can ifconfig the interface, my ioctl function is called and I can ] ping the interface itself (normal since this has nothing to do with ] my driver). ] ] I am also thinking of really hooking the driver to the ethernet code ] and just convert tokenring<->ethernet in my driver. So to the machine ] it will look like this is an ethernet driver but to the network ] it will look like its a tokenring. ] ] Any hints of comments are really appreciated. ] ] Very truly yours ] Yaser Doleh ] Yaser@Doleh.Com ] ] ] ] ============================================================================= ] From: Eric Varsanyi ] ============================================================================= ] ] You also need to deal with 802.5 source routing and the various ] flavors of broadcast on token ring (local ring, single-route, and ] all-routes). Token ring MAC headers are of variable length so it ] makes sense to create a new set of routines to deal with it ] (if_tokensubr.c for instance) instead of trying to use the ] ethernet routines and tranlate in the driver. ] ] An easy way to handle the source route<->IP mappings is to use arp ] to cache the source routes (don't forget to update the 'netstat' ] and 'arp' commands too). For arp on a multi-ring network it seems ] the best strategy is to cache the source route to the first reply ] received and ignore the next few (the first route found this way ] should be the shortest). EOM