| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
over iteration of their multicast address lists when synchronizing the
hardware address filter with the network stack-maintained list.
Problem reported by: Ed Maste (emaste at phaedrus dot sandvine dot ca>
MFC after: 1 week
|
|
|
|
| |
apporpriate place in the CIS, now that we have the CIS scanning code.
|
|
|
|
|
|
|
|
| |
Provide a backwards compatible way to have the extra macro by defining
PCCARD_API_LEVEL 5 before including pccarddevs for driver writers that
want/need to have the same driver on 5 and 6 with pccard attachments.
Approved by: re (dwhite)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
| |
(from a PC Card sense), so this should be a nop. The
pseudo-multifunction cards (eg Silicom ones) need a special driver
anyway..
|
| |
|
|
|
|
|
|
| |
Reviewed by: mdodd
Approved by: julian (mentor)
MFC after: 1 month
|
|
|
|
|
|
|
| |
the interface as IFF_NEEDSGIANT so if_start is run holding Giant.
Note: there are locking macros in if_exreg.h, but they appear to be
unused.
|
| |
|
| |
|
|
|
|
|
|
| |
Use bus space rather than direct inb/outb. Minor style changes while
I'm here. Extremely preliminary support for siliconix ethernet cards
(but more work is required).
|
|
|
|
|
|
| |
redundant includes and fix some of the include disordering.
Submitted by: bde
|
|
|
|
|
|
|
| |
the modules.
Also generate usbdevs.h automatically now, but a non-kernel file is
stopping that at the moment.
|
|
|
|
| |
for us.
|
|
|
|
|
|
|
|
|
|
|
|
| |
if the link-level address has been initialized already.
The majority of modern drivers never does this and works fine, which
makes me think that the check is totally unnecessary and a residue
of cut&paste from other drivers.
This change is done to simplify locking because now almost none of the
drivers uses this field. The exceptions are "ct" "ctau" and "cx"
where i am not sure if i can remove that part.
|
|
|
|
|
| |
Submitted by: Mark Santcroos <marks@ripe.net>
Reviewed by: imp, dfr, bde
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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)
|
| |
|
|
|
|
| |
Also some minor style cleanups.
|
|
|
|
| |
- Rename module datastructures in if_ex_isa.c to be more standard.
|
|
|
|
| |
- Add detach method to ISA front end.
|
| |
|
| |
|
|
|
|
| |
Submitted by: Craig Boston <craig@xfoil.gank.org>
|
|
|
|
| |
Approved by: trb
|
|
|
|
| |
Merge M_NOWAIT/M_DONTWAIT into a single flag M_NOWAIT.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
| |
fondling implementation details.
Created with: sed(1)
Reviewed by: md5(1)
|
|
|
|
|
| |
- Share the ex_stop() prototype in if_exvar.h
- Remove an unused local variable.
|
| |
|
|
|
|
|
|
|
| |
Olicom OC-2220 card, and maybe others.
Submitted by: iwasaki
Reviewed by: mdodd
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
coming later this week. Mitsuru IWASAKI provided a patch to -mobile which
I used to make sure I was doing the right thing but only a small part of
the actual patch was used.
|
|
|
|
| |
Remove ~60 unneeded #include <sys/malloc.h>
|
|
|
|
| |
some users have encountered.
|
|
|
|
|
|
|
|
|
| |
rest of the code in (so changing media actually works.)
Add a few more register definitions for use with this and other new code.
Print a few details in the probe message; this should be useful in
bug reports and such but should not add to the clutter.
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
but this is enough to get us going.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
layout. It seems that I cleaned it up a bit too much and confused a few
if () {
if () {
} else {
}
}
statements in the obvious manner.
This allows the driver to transmit packets again. *sigh*
|
|
|
|
|
|
| |
but didn't change bus_setup_intr() to pass the softc in.
Submitted by: Warner Losh <imp@village.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Generally clean things up.
- PnP now supported.
Will convert to bus_space, ifmedia and add a DEVICE_IDENTIFY() method
for autodetection. As it stands
device ex0 at isa0
should find a card if one is present.
I feel less dirty now.
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|