summaryrefslogtreecommitdiffstats
path: root/sys/dev/vx/if_vx.c
Commit message (Collapse)AuthorAgeFilesLines
* Stop embedding struct ifnet at the top of driver softcs. Instead thebrooks2005-06-101-27/+35
| | | | | | | | | | | | | | | | | | | | 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
* Remove bus_{mem,p}io.h and related code for a micro-optimization on i386nyan2005-05-291-1/+0
| | | | | | and amd64. The optimization is a trivial on recent machines. Reviewed by: -arch (imp, marcel, dfr)
* Fix up assignment of negative number to char. Char's are unsigned bygrehan2005-02-031-1/+1
| | | | | | default on PowerPC. Approved by: mdodd
* Start each of the license/copyright comments with /*-, minor shuffle of linesimp2005-01-061-1/+1
|
* ss if_vx through indent, and use ANSI function definitions, prior to addinggibbs2004-08-181-779/+764
| | | | | if_media and DMA support to the driver. The previous style was inconsistent making it difficult to emulate existing style.
* Since if_vx doesn't contain locking or run with INTR_MPSAFE, markrwatson2004-08-141-1/+2
| | | | the interface as IFF_NEEDSGIANT so if_start is run holding Giant.
* We don't need to initialize if_output, ether_ifattach() does itmux2004-05-231-1/+0
| | | | for us.
* Announce ethernet MAC addresss in ether_ifattach().mdodd2004-03-141-2/+0
|
* Replace the if_name and if_unit members of struct ifnet with new membersbrooks2003-10-311-4/+6
| | | | | | | | | | | | | 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)
* Start to minimize diffs between vx and ep. These latter is based on aimp2003-10-251-6/+6
| | | | | more advanced version of the chips supported by the former. Matt Dodd and I are working towards merging them, and this a step on that path.
* Use __FBSDID().obrien2003-08-241-1/+3
| | | | Also some minor style cleanups.
* Revert part of rev 1.43. We want to fail gracefully if there is no packetdes2003-06-081-0/+3
| | | | | | waiting in the interface queue. Submitted by: Yeasah Pell <yeasah@apocalypse.org>
* Introduce an M_ASSERTPKTHDR() macro which performs the very common taskdes2003-04-081-5/+2
| | | | | | | of asserting that an mbuf has a packet header. Use it instead of hand- rolled versions wherever applicable. Submitted by: Hiten Pandya <hiten@unixdaemons.com>
* Back out M_* changes, per decision of the TRB.imp2003-02-191-4/+4
| | | | Approved by: trb
* Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0.alfred2003-01-211-4/+4
| | | | Merge M_NOWAIT/M_DONTWAIT into a single flag M_NOWAIT.
* network interface driver changes:sam2002-11-141-12/+5
| | | | | | | | | | | | | | o don't strip the Ethernet header from inbound packets; pass packets up the stack intact (required significant changes to some drivers) o reference common definitions in net/ethernet.h (e.g. ETHER_ALIGN) o track ether_ifattach/ether_ifdetach API changes o track bpf changes (use BPF_TAP and BPF_MTAP) o track vlan changes (ifnet capabilities, revised processing scheme, etc.) o use if_input to pass packets "up" o call ether_ioctl for default handling of ioctls Reviewed by: many Approved by: re
* Fix mis-indentation.phk2002-10-021-3/+3
| | | | Spotted by: FlexeLint
* Use if_printf(ifp, "blah") instead of printf("vx%d: blah", ifp->if_unit).brooks2002-10-011-2/+2
|
* Increase size of ifnet.if_flags from 16 bits (short) to 32 bits (int). To avoidsobomax2002-08-181-1/+1
| | | | | | | breaking application ABI use unused ifreq.ifru_flags[1] for upper 16 bits in SIOCSIFFLAGS and SIOCGIFFLAGS ioctl's. Reviewed by: -hackers, -net
* Remove __P.alfred2002-03-201-17/+17
|
* Get rid of the twisted MFREE() macro entirely.dillon2002-02-051-14/+12
| | | | | Reviewed by: dg, bmilekic MFC after: 3 days
* Quiet a variable format-string warning.kris2001-07-191-1/+1
| | | | MFC after: 1 week
* Change m_devget()'s outdated and unused `offset' argument to actually meanbmilekic2001-06-201-4/+1
| | | | | | | | | | | | | | | | | | | | something: offset into the first mbuf of the target chain before copying the source data over. Make drivers using m_devget() with a first argument "data - ETHER_ALIGN" to use the offset argument to pass ETHER_ALIGN in. The way it was previously done is potentially dangerous if the source data was at the top of a page and the offset caused the previous page to be copied (if the previous page has not yet been appropriately mapped). The old `offset' argument in m_devget() is not used anywhere (it's always 0) and dates back to ~1995 (and earlier?) when support for ethernet trailers existed. With that support gone, it was merely collecting dust. Tested on alpha by: jlemon Partially submitted by: jlemon Reviewed by: jlemon MFC after: 3 weeks
* When I converted this driver, I neglected to deal with packet alignment.wpaul2000-12-071-0/+17
| | | | | | | We must force payload alignment to a longword boundary to make the alpha happy. This should stop the driver from trapping on the alpha when the interface is ifconfig'ed (actually, when the first frame is received).
* Update the vortex driver so that it no longer needs the PCI compatwpaul2000-11-071-111/+69
| | | | | | interface. In addition to using newbus, it also uses bus_space rather than inb/outb to make it MI. The grody static softc allocation stuff has been removed as well.
* Remove unneeded #include <machine/clock.h>phk2000-10-151-1/+0
|
* Make all Ethernet drivers attach using ether_ifattach() and detach usingarchie2000-07-131-4/+1
| | | | | | | | | ether_ifdetach(). The former consolidates the operations of if_attach(), ng_ether_attach(), and bpfattach(). The latter consolidates the corresponding detach operations. Reviewed by: julian, freebsd-net
* be sure to wipe out m_pkthdr when you set M_PKTHDR, you may see junk pointeritojun2000-07-041-1/+1
| | | | | in m_pkthdr portion. actually, we should not change pkthdr mbuf <-> non-pkthdr mbuf.
* Move code to handle BPF and bridging for incoming Ethernet packets outarchie2000-05-141-13/+4
| | | | | | | | | | | | | | | of the individual drivers and into the common routine ether_input(). Also, remove the (incomplete) hack for matching ethernet headers in the ip_fw code. The good news: net result of 1016 lines removed, and this should make bridging now work with *all* Ethernet drivers. The bad news: it's nearly impossible to test every driver, especially for bridging, and I was unable to get much testing help on the mailing lists. Reviewed by: freebsd-net
* This driver attempts to cache mbufs, and re-use them as headers insteadjlemon2000-05-121-0/+1
| | | | | | | | of using the MGETHDR macro all the time. When an mbuf is reused as a header, initialize csum_flags to zero as well, so the delayed_checksum call woks properly. Debbugging work done by: jmas
* Remove #if NVX > 0 and #if NEISA > 0 (and #include "eisa.h") as it's notpeter2000-01-291-3/+0
| | | | needed.
* Set ifq_maxlen to default (IFQ_MAXLEN).mdodd2000-01-161-0/+1
|
* Remove NBPF conditionality of bpf calls in most of our network drivers.phk1999-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.
* $Id$ -> $FreeBSD$peter1999-08-281-1/+1
|
* Rename bpfilter to bpf.des1999-07-061-6/+6
|
* Fix warnings preparing for -Wall -Wcast-qualdillon1999-01-271-4/+4
| | | | | Also disable one usb module in LINT due to fatal compilation errors, temporary.
* Switch type of vxintr instead of using the previous casts.eivind1999-01-121-4/+4
| | | | Requested by: bde
* Fixed printf format errors (only 1 left in GENERIC now).bde1998-07-131-2/+2
|
* This commit fixes various 64bit portability problems required fordfr1998-06-071-3/+3
| | | | | | | | | | FreeBSD/alpha. The most significant item is to change the command argument to ioctl functions from int to u_long. This change brings us inline with various other BSD versions. Driver writers may like to use (__FreeBSD_version == 300003) to detect this change. The prototype FreeBSD/alpha machdep will follow in a couple of days time.
* Add $Id$gpalmer1998-02-211-0/+2
|
* Provide a missing parameter to printf to stop the kernel from panicing.gpalmer1998-02-211-1/+1
|
* Removed unused #includes.bde1998-02-201-6/+0
|
* Make INET a proper option.eivind1998-01-081-4/+3
| | | | | | | | | | | | 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>.
* Remove a bunch of variables which were unused both in GENERIC and LINT.phk1997-11-071-1/+0
| | | | Found by: -Wunused
* To obey the traditional practice in mbuf chaining.itojun1997-10-011-10/+15
| | | | | PR: 4020 Reviewed by: hamada@astec.co.jp
* Convert to the new callout interface.gibbs1997-09-211-5/+13
| | | | Guard against scheduling more than one callout.
* Removed unused #includes.bde1997-06-141-16/+1
|
* Don't include <sys/ioctl.h> in the kernel. Stage 2: includebde1997-03-241-1/+1
| | | | <sys/sockio.h> instead of <sys/ioctl.h> in network files.
* Some of these cards are always in promiscous mode :-(phk1997-01-281-15/+12
| | | | | If you enable ip forwarding your net melts down. This is a workaround, probably not the correct fix.
* Use the new if_multiaddrs list for multicast addresses rather than thewollman1997-01-131-15/+9
| | | | | | | previous hackery involving struct in_ifaddr and arpcom. Get rid of the abominable multi_kludge. Update all network interfaces to use the new machanism. Distressingly few Ethernet drivers program the multicast filter properly (assuming the hardware has one, which it usually does).
OpenPOWER on IntegriCloud