#
331722 |
|
29-Mar-2018 |
eadler |
Revert r330897:
This was intended to be a non-functional change. It wasn't. The commit message was thus wrong. In addition it broke arm, and merged crypto related code.
Revert with prejudice.
This revert skips files touched in r316370 since that commit was since MFCed. This revert also skips files that require $FreeBSD$ property changes.
Thank you to those who helped me get out of this mess including but not limited to gonzo, kevans, rgrimes.
Requested by: gjb (re)
|
#
330897 |
|
14-Mar-2018 |
eadler |
Partial merge of the SPDX changes
These changes are incomplete but are making it difficult to determine what other changes can/should be merged.
No objections from: pfg
|
#
315483 |
|
18-Mar-2017 |
kevlo |
MFC r315294: Fix unreachable code in wi_pci_resume().
PR: 217784 Submitted by: Svyatoslav <razmyslov at viva64.com> Found by: PVS-Studio
|
#
302408 |
|
07-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
295126 |
|
01-Feb-2016 |
glebius |
These files were getting sys/malloc.h and vm/uma.h with header pollution via sys/mbuf.h
|
#
287197 |
|
27-Aug-2015 |
glebius |
Replay r286410. Change KPI of how device drivers that provide wireless connectivity interact with the net80211 stack.
Historical background: originally wireless devices created an interface, just like Ethernet devices do. Name of an interface matched the name of the driver that created. Later, wlan(4) layer was introduced, and the wlanX interfaces become the actual interface, leaving original ones as "a parent interface" of wlanX. Kernelwise, the KPI between net80211 layer and a driver became a mix of methods that pass a pointer to struct ifnet as identifier and methods that pass pointer to struct ieee80211com. From user point of view, the parent interface just hangs on in the ifconfig list, and user can't do anything useful with it.
Now, the struct ifnet goes away. The struct ieee80211com is the only KPI between a device driver and net80211. Details:
- The struct ieee80211com is embedded into drivers softc. - Packets are sent via new ic_transmit method, which is very much like the previous if_transmit. - Bringing parent up/down is done via new ic_parent method, which notifies driver about any changes: number of wlan(4) interfaces, number of them in promisc or allmulti state. - Device specific ioctls (if any) are received on new ic_ioctl method. - Packets/errors accounting are done by the stack. In certain cases, when driver experiences errors and can not attribute them to any specific interface, driver updates ic_oerrors or ic_ierrors counters.
Details on interface configuration with new world order: - A sequence of commands needed to bring up wireless DOESN"T change. - /etc/rc.conf parameters DON'T change. - List of devices that can be used to create wlan(4) interfaces is now provided by net.wlan.devices sysctl.
Most drivers in this change were converted by me, except of wpi(4), that was done by Andriy Voskoboinyk. Big thanks to Kevin Lo for testing changes to at least 8 drivers. Thanks to pluknet@, Oliver Hartmann, Olivier Cochard, gjb@, mmoll@, op@ and lev@, who also participated in testing.
Reviewed by: adrian Sponsored by: Netflix Sponsored by: Nginx, Inc.
|
#
286437 |
|
07-Aug-2015 |
adrian |
Revert the wifi ifnet changes until things are more baked and tested.
* 286410 * 286413 * 286416
The initial commit broke a variety of debug and features that aren't in the GENERIC kernels but are enabled in other platforms.
|
#
286410 |
|
07-Aug-2015 |
glebius |
Change KPI of how device drivers that provide wireless connectivity interact with the net80211 stack.
Historical background: originally wireless devices created an interface, just like Ethernet devices do. Name of an interface matched the name of the driver that created. Later, wlan(4) layer was introduced, and the wlanX interfaces become the actual interface, leaving original ones as "a parent interface" of wlanX. Kernelwise, the KPI between net80211 layer and a driver became a mix of methods that pass a pointer to struct ifnet as identifier and methods that pass pointer to struct ieee80211com. From user point of view, the parent interface just hangs on in the ifconfig list, and user can't do anything useful with it.
Now, the struct ifnet goes away. The struct ieee80211com is the only KPI between a device driver and net80211. Details:
- The struct ieee80211com is embedded into drivers softc. - Packets are sent via new ic_transmit method, which is very much like the previous if_transmit. - Bringing parent up/down is done via new ic_parent method, which notifies driver about any changes: number of wlan(4) interfaces, number of them in promisc or allmulti state. - Device specific ioctls (if any) are received on new ic_ioctl method. - Packets/errors accounting are done by the stack. In certain cases, when driver experiences errors and can not attribute them to any specific interface, driver updates ic_oerrors or ic_ierrors counters.
Details on interface configuration with new world order: - A sequence of commands needed to bring up wireless DOESN"T change. - /etc/rc.conf parameters DON'T change. - List of devices that can be used to create wlan(4) interfaces is now provided by net.wlan.devices sysctl.
Most drivers in this change were converted by me, except of wpi(4), that was done by Andriy Voskoboinyk. Big thanks to Kevin Lo for testing changes to at least 8 drivers. Thanks to Olivier Cochard, gjb@, mmoll@, op@ and lev@, who also participated in testing. Details here:
https://wiki.freebsd.org/projects/ifnet/net80211
Still, drivers: ndis, wtap, mwl, ipw, bwn, wi, upgt, uath were not tested. Changes to mwl, ipw, bwn, wi, upgt are trivial and chances of problems are low. The wtap wasn't compilable even before this change. But the ndis driver is complex, and it is likely to be broken with this commit. Help with testing and debugging it is appreciated.
Differential Revision: D2655, D2740 Sponsored by: Nginx, Inc. Sponsored by: Netflix
|
#
257176 |
|
26-Oct-2013 |
glebius |
The r48589 promised to remove implicit inclusion of if_var.h soon. Prepare to this event, adding if_var.h to files that do need it. Also, include all includes that now are included due to implicit pollution via if_var.h
Sponsored by: Netflix Sponsored by: Nginx, Inc.
|
#
254263 |
|
12-Aug-2013 |
scottl |
Update PCI drivers to no longer look at the MEMIO-enabled bit in the PCI command register. The lazy BAR allocation code in FreeBSD sometimes disables this bit when it detects a range conflict, and will re-enable it on demand when a driver allocates the BAR. Thus, the bit is no longer a reliable indication of capability, and should not be checked. This results in the elimination of a lot of code from drivers, and also gives the opportunity to simplify a lot of drivers to use a helper API to set the busmaster enable bit.
This changes fixes some recent reports of disk controllers and their associated drives/enclosures disappearing during boot.
Submitted by: jhb Reviewed by: jfv, marius, achadd, achim MFC after: 1 day
|
#
181209 |
|
02-Aug-2008 |
imp |
Minor tweaks to names and comments now that I understand what's going on better.
|
#
178354 |
|
20-Apr-2008 |
sam |
Multi-bss (aka vap) support for 802.11 devices.
Note this includes changes to all drivers and moves some device firmware loading to use firmware(9) and a separate module (e.g. ral). Also there no longer are separate wlan_scan* modules; this functionality is now bundled into the wlan module.
Supported by: Hobnob and Marvell Reviewed by: many Obtained from: Atheros (some bits)
|
#
158651 |
|
16-May-2006 |
phk |
Since DELAY() was moved, most <machine/clock.h> #includes have been unnecessary.
|
#
148887 |
|
09-Aug-2005 |
rwatson |
Propagate rename of IFF_OACTIVE and IFF_RUNNING to IFF_DRV_OACTIVE and 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
|
#
142880 |
|
01-Mar-2005 |
imp |
Use BUS_PROBE_DEFAULT in preference to 0. Also for vx, return BUS_PROBE_LOW_PRIORITY in stead of ifdef for devices that xl and vx both support so that xl will snarf them on up.
|
#
139749 |
|
05-Jan-2005 |
imp |
Start each of the license/copyright comments with /*-, minor shuffle of lines
|
#
138571 |
|
08-Dec-2004 |
sam |
o Update for net80211 changes o Import some minor fixes from netbsd
|
#
127135 |
|
17-Mar-2004 |
njl |
Convert callers to the new bus_alloc_resource_any(9) API.
Submitted by: Mark Santcroos <marks@ripe.net> Reviewed by: imp, dfr, bde
|
#
119784 |
|
05-Sep-2003 |
sam |
o add experimental radiotap capture format o add netbsd logic to convert rssi to device-independent values
Obtained from: NetBSD (rssi conversion code)
|
#
119287 |
|
22-Aug-2003 |
imp |
Prefer new location of pci include files (which have only been in the tree for two or more years now), except in a few places where there's code to be compatible with older versions of FreeBSD.
|
#
118679 |
|
08-Aug-2003 |
marcel |
Add the PCI Id of the Intersil prism3 (mini-PCI) WLAN chip. The Vaio PCG-505BX (for example) has one of those:
wi0: <Intersil Prism3> mem 0xf8000000-0xf8000fff at device 2.0 on pci2 wi0: 802.11 address: 00:02:8a:94:d8:73 wi0: using RF:PRISM3(Mini-PCI) wi0: Intersil Firmware: Primary (1.1.1), Station (1.5.6) wi0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
|
#
118068 |
|
26-Jul-2003 |
jdp |
Fix a couple of bugs in the resume handler. Don't call the if_init function unless the device is configured up. Without this fix, the device ends up in the RUNNING state even though it is configured down. Also, check the RUNNING flag before calling the if_start function, in case the if_init function failed for one reason or another.
|
#
117768 |
|
19-Jul-2003 |
imp |
Add Addtron AWA-100 wireless PCI card
Submitted by: Robin Reagan Pr: 37526
|
#
116951 |
|
28-Jun-2003 |
sam |
update for new 802.11 support
|
#
116205 |
|
11-Jun-2003 |
imp |
Call wi_free() in all the relevant error cases.
|
#
113506 |
|
15-Apr-2003 |
mdodd |
- Express hard dependencies on bus (pci, isa, pccard) and 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.)
|
#
112360 |
|
18-Mar-2003 |
imp |
Add SMC 2602W pci card, from a post to mobile@
|
#
109323 |
|
15-Jan-2003 |
sam |
new wi driver that uses the 802.11 link layer code
Reviewed by: imp Obtained from: NetBSD (originally)
|
#
109259 |
|
14-Jan-2003 |
mdodd |
Suspend/resume support (mostly for MiniPCI Prism2.5 boards).
Reviewed by: imp
|
#
98220 |
|
14-Jun-2002 |
nsayer |
Add an entry for the US Robotics 2415.
PR: i386/38879 Submitted by: jordi_yc@lycos.es MFC after: 1 week
|
#
95754 |
|
29-Apr-2002 |
imp |
We don't need the card_if.h here. It breaks the building of kernels with wi but without pccard. Also remove an RCS id that I don't think we need.
|
#
95603 |
|
28-Apr-2002 |
imp |
Alphabetize descriptions and remove the "PCI" from the desciptions.
Suggested by: brooks
|
#
95559 |
|
27-Apr-2002 |
imp |
Better names for the PCI cards. The biggest change is that we now identify the Intersil Prism 2.5 PCI native card as that, rather than Linksys, the first folks to get it to market.
|
#
95534 |
|
26-Apr-2002 |
imp |
Make this driver compile for -stable also to prep for MFC
|
#
94687 |
|
14-Apr-2002 |
brooks |
Support the Siemens SpeedStream PCI card.
PR: kern/35988 Submitted by: Stephen Gunn <csg@waterspout.com>
|
#
94486 |
|
12-Apr-2002 |
imp |
unifdef -DWI_HOSTAP, like OpenBSD does
|
#
94405 |
|
11-Apr-2002 |
imp |
Integrate the hostap stuff that Thomas Skibo <skibo@packbell.net> wrote. This code was for 4.5-release, so I've ported it to -current and made a few minor tweaks. The biggest non-style tweak was to not make access point the default.
More changes will be needed to get this actually working, but I wanted to get a relatively pure baseline. This doesn't seem to break what works now.
|
#
93733 |
|
03-Apr-2002 |
imp |
Four fixes from NetBSD: 1) Properly detect the Symbol based cards (The 3Com Airconnect and their ilk) and only reset them *ONCE* ever. This appears to make them work, but more testing is needed. The tests that would wedge up my machine completely now appear to work, but I have not real access points handy. 2) Report both the Station firmware and the Primary firmware on Prism based cards. On Lucent based cards, only report the station firmware since that's all it supports. On symbol cards, report the symbol specific firmware name as its station firmware. 3) Better Prism 2.5 and 3 family names. We really need to go table driven for this. 4) Workaround for bugs in Intersil's firmware is only needed for at most 0.8.2 and earlier, since 0.8.3 and later appear to work.
Obtained from: NetBSD
|
#
93611 |
|
02-Apr-2002 |
imp |
First cut at breaking out the bus attachment from the bus independent part of the driver. Also, move the softc and some other stuff to if_wivar.h from if_wireg.h to make future merging activities easier.
|