aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/pdq/if_fea.c
Commit message (Collapse)AuthorAgeFilesLines
* Remove EISA attachment (fea) from pdq driver. Remove vestiges ofWarner Losh2017-02-161-286/+0
| | | | | | | | TurboChannel and Q-Bus support while I'm here. Remove obsolete diagnostics from man page. Notes: svn path=/head/; revision=313834
* - Provide necessary includes.Gleb Smirnoff2013-10-291-1/+3
| | | | | | | | | | - Remove unnecessary includes. Sponsored by: Netflix Sponsored by: Nginx, Inc. Notes: svn path=/head/; revision=257324
* Remove extraneous semicolons, no functional changes.Martin Blapp2010-01-071-1/+1
| | | | | | | | Submitted by: Marc Balmer <marc@msys.ch> MFC after: 1 week Notes: svn path=/head/; revision=201758
* Several fixes to these drivers. Note that these two drivers are actuallyJohn Baldwin2009-11-191-20/+10
| | | | | | | | | | | | | | | | | | | | | | | just two different attachments (EISA and PCI) to a single driver. - Add real locking. Previously these drivers only acquired their lock in their interrupt handler or in the ioctl routine (but too broadly in the latter). No locking was used for the stack calling down into the driver via if_init() or if_start(), for device shutdown or detach. Also, the interrupt handler held the driver lock while calling if_input(). All this stuff should be fixed in the locking changes. - Really fix these drivers to handle if_alloc(). The front-end attachments were using if_initname() before the ifnet was allocated. Fix this by moving some of the duplicated logic from each driver into pdq_ifattach(). While here, make pdq_ifattach() return an error so that the driver just fails to attach if if_alloc() fails rather than panic'ing. Also, defer freeing the ifnet until the driver has stopped using it during detach. - Add a new private timer to drive the watchdog timer. - Pass the softc pointer to the interrupt handlers instead of the device_t so we can avoid the use of device_get_softc() and to better match what other drivers do. Notes: svn path=/head/; revision=199542
* 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 Approved by: re (implicit?) Notes: svn path=/head/; revision=166923
* - Make IFP2ENADDR() a pointer to IF_LLADDR() rather than anotherRuslan Ermilov2005-11-111-4/+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
* Stop embedding struct ifnet at the top of driver softcs. Instead theBrooks Davis2005-06-101-2/+2
| | | | | | | | | | | | | | | | | | | | | | | 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
* Convert callers to the new bus_alloc_resource_any(9) API.Nate Lawson2004-03-171-6/+6
| | | | | | | | 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-3/+2
| | | | | | | | | | | | | | | | 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
* Make this compile on alpha.Andrew Gallatin2003-07-311-1/+1
| | | | Notes: svn path=/head/; revision=118263
* - Express hard dependencies on bus (pci, isa, pccard) andMatthew N. Dodd2003-04-151-3/+3
| | | | | | | | | | | network layer (ether). - Don't abuse module names to facilitate ifconfig module loading; such abuse isn't really needed. (And if we do need type information associated with a module then we should make it explicit and not use hacks.) Notes: svn path=/head/; revision=113506
* Fix typo in the BSD copyright: s/withough/without/Jens Schweikhardt2002-06-021-1/+1
| | | | | | | | Spotted and suggested by: des MFC after: 3 weeks Notes: svn path=/head/; revision=97748
* - Merge the pdq driver (if_fpa and if_fea) from NetBSD.Matthew N. Dodd2002-03-291-71/+99
| | | | | | | | Among other things this gets us ifmedia support. - Update fddi_ifattach() to take an additional argument. Notes: svn path=/head/; revision=93383
* Remove __P.Alfred Perlstein2002-03-201-7/+7
| | | | Notes: svn path=/head/; revision=92739
* Use appropriate resource management accessors instead of directlyMatthew N. Dodd2000-10-181-1/+1
| | | | | | | | | referencing structure members. Use rman_get_size() instead of end - start + 1. Notes: svn path=/head/; revision=67268
* Pre 4.0 tidy up.Peter Wemm2000-01-141-1/+1
| | | | | | | | | | | | | | | Collect together the components of several drivers and export eisa from the i386-only area (It's not, it's on some alphas too). The code hasn't been updated to work on the Alpha yet, but that can come later. Repository copies were done a while ago. Moving these now keeps them in consistant place across the 4.x series as the newbusification progresses. Submitted by: mdodd Notes: svn path=/head/; revision=55953
* $Id$ -> $FreeBSD$Peter Wemm1999-08-281-1/+1
| | | | Notes: svn path=/head/; revision=50477
* Move the specification of EDGE/LEVEL triggered interrupts toMatthew N. Dodd1999-08-011-3/+3
| | | | | | | | | | | | | | | | | | | | eisa_add_intr() which now takes an additional arguement (one of EISA_TRIGGER_LEVEL or EISA_TRIGGER_EDGE). The flag RR_SHAREABLE has no effect when passed to bus_alloc_resource(dev, SYS_RES_IRQ, ...) in an EISA device context as the eisa_alloc_resource() call (bus_alloc_resource method) now deals with this flag directly, depending on the device ivars. This change does nothing more than move all the 'shared = inb(foo + iobsse)' nonesense to the device probe methods rather than the device attach. Also, print out 'edge' or 'level' in the IRQ announcement message. Reviewed by: dfr Notes: svn path=/head/; revision=49360
* Don't use at_shutdown() now that we have new_bus which lets usMatthew N. Dodd1999-07-311-8/+11
| | | | | | | | | specify a DEVICE_SHUTDOWN method instead. Reviewed by: me, since nobody else seems to run this hardware in -CURRENT Notes: svn path=/head/; revision=49301
* Convert the if_fea (DEC FDDI) driver to newbus since it has been brokenPeter Wemm1999-07-101-395/+165
| | | | | | | | | | for ages. This is the EISA wrapper for sys/dev/pdq/*. The pci bus driver is in sys/pci/if_fpa.c. Submitted by: "Matthew N. Dodd" <winter@jurai.net> Notes: svn path=/head/; revision=48741
* These two drivers have not been converted for newbus eisa yet.Peter Wemm1999-05-021-1/+4
| | | | Notes: svn path=/head/; revision=46332
* Silence warnings.Eivind Eklund1999-01-121-2/+2
| | | | Notes: svn path=/head/; revision=42546
* The previous commit was bogus. malloc(..., M_WAITOK) should not beBruce Evans1999-01-011-2/+6
| | | | | | | | | | used in device attach routines. At least for attaches at boot time, actually waiting, or actually failing for malloc(..., M_NOWAIT), are almost equally unlikely and harmless, but using M_WAITOK interferes with automatic detection of bogus M_WAITOK's. Notes: svn path=/head/; revision=42230
* malloc(xxx, yyy, M_WAITOK) does not fail. This probably explains whyEivind Eklund1998-12-091-6/+2
| | | | | | | the bug in the check had never been discovered. Notes: svn path=/head/; revision=41611
* Fixed printf format errors. Only one left in LINT on i386's.Bruce Evans1998-08-241-4/+4
| | | | Notes: svn path=/head/; revision=38505
* Removed unused #includes.Bruce Evans1998-02-201-8/+1
| | | | Notes: svn path=/head/; revision=33676
* Make INET a proper option.Eivind Eklund1998-01-081-2/+4
| | | | | | | | | | | | | | | This will not make any of object files that LINT create change; there might be differences with INET disabled, but hardly anything compiled before without INET anyway. Now the 'obvious' things will give a proper error if compiled without inet - ipx_ip, ipfw, tcp_debug. The only thing that _should_ work (but can't be made to compile reasonably easily) is sppp :-( This commit move struct arpcom from <netinet/if_ether.h> to <net/if_arp.h>. Notes: svn path=/head/; revision=32350
* Add shared EISA interrupt support.Justin T. Gibbs1997-09-211-2/+7
| | | | | | | Clean up the match routines so that they return const char * Notes: svn path=/head/; revision=29674
* Bruce wants the warning.Peter Wemm1997-09-141-2/+2
| | | | Notes: svn path=/head/; revision=29381
* Fix a warning.Peter Wemm1997-09-131-2/+2
| | | | Notes: svn path=/head/; revision=29325
* Removed unused #includes.Bruce Evans1997-07-201-28/+1
| | | | Notes: svn path=/head/; revision=27534
* Don't include <sys/ioctl.h> in the kernel. Stage 1: don't includeBruce Evans1997-03-241-2/+1
| | | | | | | | it when it is not used. In most cases, the reasons for including it went away when the special ioctl headers became self-sufficient. Notes: svn path=/head/; revision=24203
* This mega-merge brings Matt Thomas' 960801 FDDI driver (almost) upJoerg Wunsch1997-01-171-25/+10
| | | | | | | | | | | | | | | | to -current. Thanks goes to Ulrike Nitzsche <ulrike@ifw-dresden.de> for giving me a chance to test this. Only the PCI driver is tested though. One final patch will follow in a separate commit. This is so that everything up to here can be dragged into 2.2, if we decide so. Reviewed by: joerg Submitted by: Matt Thomas <matt@3am-software.com> Notes: svn path=/head/; revision=21830
* Finally import the 960801 of Matt Thomas' DEC FDDI driver. I'mJoerg Wunsch1997-01-171-0/+537
importing it onto a vendor branch first, in the hope that this will make future maintenance easier. The conflicts are (hopefully) unimportant. More commits that actually bring this into the source tree will follow. Submitted by: Matt Thomas (thomas@lkg.dec.com) Notes: svn path=/cvs2svn/branches/MATT_THOMAS/; revision=21826