aboutsummaryrefslogtreecommitdiff
path: root/sys/contrib/dev/oltr
Commit message (Collapse)AuthorAgeFilesLines
* Remove the oltr(4) driver. No one responded to calls for testing onJohn Baldwin2008-07-0410-12482/+0
| | | | | | | | | | | current@ and stable@ for the locking patches. The driver can always be revived if someone tests it. This driver also sleeps in its if_init routine, so it likely doesn't really work at all anyway in modern releases. Notes: svn path=/head/; revision=180259
* Make oltr(4) MPSAFE:John Baldwin2008-07-044-145/+146
| | | | | | | | | | | | - Add a mutex to the softc and use it to protect the softc and device hardware. - Setup interrupt handler after interface attach. - Retire 'unit' from softc and use if_printf() instead. - Don't frob IFF_UP in the driver. - Use callout_() rather than timeout() and untimeout(). Notes: svn path=/head/; revision=180258
* o break newbus api: add a new argument of type driver_filter_t toPaolo Pisati2007-02-231-1/+1
| | | | | | | | | | | | | | | | bus_setup_intr() o add an int return code to all fast handlers o retire INTR_FAST/IH_FAST For more info: http://docs.freebsd.org/cgi/getmsg.cgi?fetch=465712+0+current/freebsd-current Reviewed by: many Approved by: re@ Notes: svn path=/head/; revision=166901
* Since DELAY() was moved, most <machine/clock.h> #includes have beenPoul-Henning Kamp2006-05-161-1/+0
| | | | | | | unnecessary. Notes: svn path=/head/; revision=158651
* - Store pointer to the link-level address right in "struct ifnet"Ruslan Ermilov2005-11-111-2/+2
| | | | | | | | | | | | | rather than in ifindex_table[]; all (except one) accesses are through ifp anyway. IF_LLADDR() works faster, and all (except one) ifaddr_byindex() users were converted to use ifp->if_addr. - Stop storing a (pointer to) Ethernet address in "struct arpcom", and drop the IFP2ENADDR() macro; all users have been converted to use IF_LLADDR() instead. Notes: svn path=/head/; revision=152315
* - Make IFP2ENADDR() a pointer to IF_LLADDR() rather than anotherRuslan Ermilov2005-11-111-2/+1
| | | | | | | | | | | copy of Ethernet address. - Change iso88025_ifattach() and fddi_ifattach() to accept MAC address as an argument, similar to ether_ifattach(), to make this work. Notes: svn path=/head/; revision=152296
* In detach method, move if_free() after bus_teardown_intr().Ruslan Ermilov2005-10-131-1/+2
| | | | Notes: svn path=/head/; revision=151297
* Fix "struct ifnet" leak if attach() fails in the middle.Ruslan Ermilov2005-09-161-0/+2
| | | | Notes: svn path=/head/; revision=150220
* Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE andRobert Watson2005-08-091-9/+10
| | | | | | | | | | | | | | | | | IFF_DRV_RUNNING, as well as the move from ifnet.if_flags to ifnet.if_drv_flags. Device drivers are now responsible for synchronizing access to these flags, as they are in if_drv_flags. This helps prevent races between the network stack and device driver in maintaining the interface flags field. Many __FreeBSD__ and __FreeBSD_version checks maintained and continued; some less so. Reviewed by: pjd, bz MFC after: 7 days Notes: svn path=/head/; revision=148887
* Stop embedding struct ifnet at the top of driver softcs. Instead theBrooks Davis2005-06-103-10/+18
| | | | | | | | | | | | | | | | | | | | | | | struct ifnet or the layer 2 common structure it was embedded in have been replaced with a struct ifnet pointer to be filled by a call to the new function, if_alloc(). The layer 2 common structure is also allocated via if_alloc() based on the interface type. It is hung off the new struct ifnet member, if_l2com. This change removes the size of these structures from the kernel ABI and will allow us to better manage them as interfaces come and go. Other changes of note: - Struct arpcom is no longer referenced in normal interface code. Instead the Ethernet address is accessed via the IFP2ENADDR() macro. To enforce this ac_enaddr has been renamed to _ac_enaddr. - The second argument to ether_ifattach is now always the mac address from driver private storage rather than sometimes being ac_enaddr. Reviewed by: sobomax, sam Notes: svn path=/head/; revision=147256
* - Split out PCI support.Matthew N. Dodd2005-02-034-306/+744
| | | | | | | | | - Add previously removed ISA support. Submitted by: David S. Madole <david AT madole.net> Notes: svn path=/head/; revision=141219
* Since if_oltr doesn't contain locking or run with INTR_MPSAFE, markRobert Watson2004-08-141-1/+1
| | | | | | | the interface as IFF_NEEDSGIANT so if_start is run holding Giant. Notes: svn path=/head/; revision=133705
* Add missing #include <sys/module.h>Poul-Henning Kamp2004-05-301-0/+1
| | | | Notes: svn path=/head/; revision=129882
* Eliminate support for FreeBSD 3.x and earlier now that we're in theWarner Losh2004-03-291-203/+0
| | | | | | | glide path for the 5.x branch. Notes: svn path=/head/; revision=127585
* Convert callers to the new bus_alloc_resource_any(9) API.Nate Lawson2004-03-171-1/+1
| | | | | | | | Submitted by: Mark Santcroos <marks@ripe.net> Reviewed by: imp, dfr, bde Notes: svn path=/head/; revision=127135
* Replace the if_name and if_unit members of struct ifnet with new membersBrooks Davis2003-10-311-2/+1
| | | | | | | | | | | | | | | | if_xname, if_dname, and if_dunit. if_xname is the name of the interface and if_dname/unit are the driver name and instance. This change paves the way for interface renaming and enhanced pseudo device creation and configuration symantics. Approved By: re (in principle) Reviewed By: njl, imp Tested On: i386, amd64, sparc64 Obtained From: NetBSD (if_xname) Notes: svn path=/head/; revision=121816
* Prefer new location of pci include files (which have only been in theWarner Losh2003-08-221-0/+5
| | | | | | | | tree for two or more years now), except in a few places where there's code to be compatible with older versions of FreeBSD. Notes: svn path=/head/; revision=119305
* Broke the warning that this driver uses pessimal (u_short) types forBruce Evans2003-08-061-2/+2
| | | | | | | | | i/o ports by calling the implementation-detail level below inb() and outb() instead of inb() and outb(). Unpessimizing the types is too hard since they are mainly used in microcode. Notes: svn path=/head/; revision=118529
* Catch up with recent infrastructure changes.Matthew N. Dodd2003-03-161-5/+0
| | | | Notes: svn path=/head/; revision=112309
* Register module dependencies.Matthew N. Dodd2003-03-151-0/+2
| | | | Notes: svn path=/head/; revision=112304
* G/C unused varilable.Matthew N. Dodd2003-03-151-1/+1
| | | | Notes: svn path=/head/; revision=112302
* Catch up with recent changes.Matthew N. Dodd2003-03-151-36/+5
| | | | Notes: svn path=/head/; revision=112301
* Back out M_* changes, per decision of the TRB.Warner Losh2003-02-191-4/+4
| | | | | | | Approved by: trb Notes: svn path=/head/; revision=111119
* Consolidate MIN/MAX macros into one place (param.h).Alfred Perlstein2003-02-021-1/+0
| | | | | | | Submitted by: Hiten Pandya <hiten@unixdaemons.com> Notes: svn path=/head/; revision=110232
* Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0.Alfred Perlstein2003-01-211-4/+4
| | | | | | | Merge M_NOWAIT/M_DONTWAIT into a single flag M_NOWAIT. Notes: svn path=/head/; revision=109623
* network interface and link layer changes:Sam Leffler2002-11-151-4/+9
| | | | | | | | | | | | | | | o on input don't strip the Ethernet header from packets o input packet handling is now done with if_input o track changes to ether_ifattach/ether_ifdetach API o track changes to bpf tapping o call ether_ioctl for default handling of ioctl's o use constants from net/ethernet.h where possible Reviewed by: many Approved by: re Notes: svn path=/head/; revision=106939
* Do only call oltr_stop() if we are not already in OL_STOPPED state.Joerg Wunsch2001-06-141-3/+14
| | | | | | | | | | | | | This avoids a null pointer deref panic in TRlldClose() inside the vendor-supplied object code. It's now possible to unload the driver at all. Implement deallocation of malloc()ed memory regions. MFC after: 2 months Notes: svn path=/head/; revision=78217
* Move configuration of work_memory to oltr_init() rather thanMatthew N. Dodd2001-03-081-43/+24
| | | | | | | | | | | oltr_pci_attach(). This only affects the OC-3139 and OC-3540. MFC candidate. PR: kern/24074 Notes: svn path=/head/; revision=73972
* Convert more malloc+bzero to malloc+M_ZERO.David Malone2000-12-081-2/+1
| | | | | | | | Submitted by: josh@zipperup.org Submitted by: Robert Drehmel <robd@gmx.net> Notes: svn path=/head/; revision=69781
* Remove unneeded #include <machine/clock.h>Poul-Henning Kamp2000-10-151-1/+0
| | | | Notes: svn path=/head/; revision=67164
* o Change TX_BUFFER_LEN from 512 to 2048.Larry Lile2000-10-101-6/+11
| | | | | | | | | | | | | | | o Remove bogus "spurious interrupt" message. o Ring buffer head and avail were incorrectly calculated. o Fix fragment count. o Fix ring entry for single station, default to 16Mbit. o Don't complain about long frames. Notes: svn path=/head/; revision=66903
* Fix a reference to an old FreeBSD 2.2 register name.Peter Wemm2000-05-281-3/+3
| | | | | | | s/PCI_COMMAND_STATUS_REG/PCIR_COMMAND/ Notes: svn path=/head/; revision=61044
* o Get basic if_media support working.Larry Lile2000-03-261-295/+272
| | | | | | | | | | o Add more diagnostic and status messages. o General clean up of old debug messages and small style fixes. Notes: svn path=/head/; revision=58641
* o Fix typo in the RapidFire 3540 adapter nameLarry Lile2000-03-191-3/+3
| | | | | | | | | | | | 4/16/100 -> 100/16/4 so that it matches all of the others. o Since we went to all the trouble of getting the correct working memory size actually use it. * Submitted by: Nikolai Saoukh <nms@otdel-1.org> Notes: svn path=/head/; revision=58297
* o Replace the old "oltr" driver with the completely re-writtenLarry Lile2000-03-185-7062/+9136
| | | | | | | | | | | | | | new-bus Olicom driver, previously known as "ol". The new driver unfortunately does not support ISA cards yet. o Update the microcode files, interface library and include files to the latest PowerMACH works version. Force even byte alignment of adapter microcode. o Roll in some of the patches from Nikolai Saoukh <nms@ethereal.ru>. Notes: svn path=/head/; revision=58267
* Remove a somewhat odd #if that is always true (NOLTR will be alwaysPeter Wemm2000-01-291-4/+0
| | | | | | | 1 or more if this file is being compiled) Notes: svn path=/head/; revision=56873
* Garbage collect oltr_pci_shutdownEivind Eklund1999-12-211-11/+0
| | | | Notes: svn path=/head/; revision=54935
* Fix a stray (ifdef'ed) reference to a non-existing file.Peter Wemm1999-11-291-4/+0
| | | | Notes: svn path=/head/; revision=53885
* Remove NBPF conditionality of bpf calls in most of our network drivers.Poul-Henning Kamp1999-09-251-9/+0
| | | | | | | | | | | | | | | This means that we will not have to have a bpf and a non-bpf version of our driver modules. This does not open any security hole, because the bpf core isn't loadable The drivers left unchanged are the "cross platform" drivers where the respective maintainers are urged to DTRT, whatever that may be. Add a couple of missing FreeBSD tags. Notes: svn path=/head/; revision=51646
* Clean $Log$ debris.Peter Wemm1999-09-061-2/+1
| | | | Notes: svn path=/head/; revision=50994
* $Id$ -> $FreeBSD$Peter Wemm1999-08-284-4/+4
| | | | Notes: svn path=/head/; revision=50480
* Rename bpfilter to bpf.Dag-Erling Smørgrav1999-07-061-6/+6
| | | | Notes: svn path=/head/; revision=48645
* Update to latest version of PowerMACH Works from Olicom.Larry Lile1999-07-055-5134/+5169
| | | | Notes: svn path=/head/; revision=48591
* Simplify the COMPAT_PCI_DRIVER/DATA_SET hack. We can add:Peter Wemm1999-05-091-5/+1
| | | | | | | | | | | #define COMPAT_PCI_DRIVER(name,data) DATA_SET(pcidevice_set,data) .. to 2.2.x and 3.x if people think it's worth it. Driver writers can do this if it's not defined. (The reason for this is that I'm trying to progressively eliminate use of linker_sets where it hurts modularity and runtime load capability, and these DATA_SET's keep getting in the way.) Notes: svn path=/head/; revision=46813
* Use COMPAT_PCI_DRIVER() for registration if it exists. This shouldn'tPeter Wemm1999-04-241-1/+5
| | | | | | | hurt the driver portability to 3.x too much for where drivers are shared. Notes: svn path=/head/; revision=46026
* As I understand it, these register_intr()'s shouldn't be here. The isaPeter Wemm1999-04-211-3/+1
| | | | | | | driver attaches the interupt itself. Notes: svn path=/head/; revision=45895
* Need to include /contrib/dev/oltr/... not dev/oltr/...Julian Elischer1999-03-101-2/+2
| | | | Notes: svn path=/head/; revision=44643
* Submitted by: Larry LileJulian Elischer1999-03-107-0/+10211
Move the Olicom token ring driver to the officially sanctionned location of /sys/contrib. Also fix some brokenness in the generic token ring support. Be warned that if_dl.h has been changed and SOME programs might like recompilation. Notes: svn path=/head/; revision=44627