mirror of
https://github.com/torvalds/linux.git
synced 2024-12-23 19:31:53 +00:00
c7cdba31ed
This device takes over an existing network device and produces a new one that appears like a wireless connection, returning enough canned responses to nl80211 to satisfy a standard connection manager. If necessary, it can also be set up one step removed from an existing network device, such as through a vlan/80211Q or macvlan connection to not disrupt the existing network interface. To use it to wrap a bare ethernet connection: ip link add link eth0 name wlan0 type virt_wifi You may have to rename or otherwise hide the eth0 from your connection manager, as the original network link will become unusuable and only the wireless wrapper will be functional. This can also be combined with vlan or macvlan links on top of eth0 to share the network between distinct links, but that requires support outside the machine for accepting vlan-tagged packets or packets from multiple MAC addresses. This is being used for Google's Remote Android Virtual Device project, which runs Android devices in virtual machines. The standard network interfaces provided inside the virtual machines are all ethernet. However, Android is not interested in ethernet devices and would rather connect to a wireless interface. This patch allows the virtual machine guest to treat one of its network connections as wireless rather than ethernet, satisfying Android's network connection requirements. We believe this is a generally useful driver for simulating wireless network connections in other environments where a wireless connection is desired by some userspace process but is not available. This is distinct from other testing efforts such as mac80211_hwsim by being a cfg80211 device instead of mac80211 device, allowing straight pass-through on the data plane instead of forcing packaging of ethernet data into mac80211 frames. Signed-off-by: A. Cody Schuffelen <schuffelen@google.com> Acked-by: Alistair Strachan <astrachan@google.com> Acked-by: Greg Hartman <ghartman@google.com> Acked-by: Tristan Muntsinger <muntsinger@google.com> [make it a tristate] Signed-off-by: Johannes Berg <johannes.berg@intel.com>
125 lines
3.8 KiB
Plaintext
125 lines
3.8 KiB
Plaintext
#
|
|
# Wireless LAN device configuration
|
|
#
|
|
|
|
menuconfig WLAN
|
|
bool "Wireless LAN"
|
|
depends on !S390
|
|
depends on NET
|
|
select WIRELESS
|
|
default y
|
|
---help---
|
|
This section contains all the pre 802.11 and 802.11 wireless
|
|
device drivers. For a complete list of drivers and documentation
|
|
on them refer to the wireless wiki:
|
|
|
|
http://wireless.kernel.org/en/users/Drivers
|
|
|
|
if WLAN
|
|
|
|
config WIRELESS_WDS
|
|
bool "mac80211-based legacy WDS support" if EXPERT
|
|
help
|
|
This option enables the deprecated WDS support, the newer
|
|
mac80211-based 4-addr AP/client support supersedes it with
|
|
a much better feature set (HT, VHT, ...)
|
|
|
|
We plan to remove this option and code, so if you find
|
|
that you have to enable it, please let us know on the
|
|
linux-wireless@vger.kernel.org mailing list, so we can
|
|
help you migrate to 4-addr AP/client (or, if it's really
|
|
necessary, give up on our plan of removing it).
|
|
|
|
source "drivers/net/wireless/admtek/Kconfig"
|
|
source "drivers/net/wireless/ath/Kconfig"
|
|
source "drivers/net/wireless/atmel/Kconfig"
|
|
source "drivers/net/wireless/broadcom/Kconfig"
|
|
source "drivers/net/wireless/cisco/Kconfig"
|
|
source "drivers/net/wireless/intel/Kconfig"
|
|
source "drivers/net/wireless/intersil/Kconfig"
|
|
source "drivers/net/wireless/marvell/Kconfig"
|
|
source "drivers/net/wireless/mediatek/Kconfig"
|
|
source "drivers/net/wireless/ralink/Kconfig"
|
|
source "drivers/net/wireless/realtek/Kconfig"
|
|
source "drivers/net/wireless/rsi/Kconfig"
|
|
source "drivers/net/wireless/st/Kconfig"
|
|
source "drivers/net/wireless/ti/Kconfig"
|
|
source "drivers/net/wireless/zydas/Kconfig"
|
|
source "drivers/net/wireless/quantenna/Kconfig"
|
|
|
|
config PCMCIA_RAYCS
|
|
tristate "Aviator/Raytheon 2.4GHz wireless support"
|
|
depends on PCMCIA
|
|
select WIRELESS_EXT
|
|
select WEXT_SPY
|
|
select WEXT_PRIV
|
|
---help---
|
|
Say Y here if you intend to attach an Aviator/Raytheon PCMCIA
|
|
(PC-card) wireless Ethernet networking card to your computer.
|
|
Please read the file <file:Documentation/networking/ray_cs.txt> for
|
|
details.
|
|
|
|
To compile this driver as a module, choose M here: the module will be
|
|
called ray_cs. If unsure, say N.
|
|
|
|
config PCMCIA_WL3501
|
|
tristate "Planet WL3501 PCMCIA cards"
|
|
depends on CFG80211 && PCMCIA
|
|
select WIRELESS_EXT
|
|
select WEXT_SPY
|
|
help
|
|
A driver for WL3501 PCMCIA 802.11 wireless cards made by Planet.
|
|
It has basic support for Linux wireless extensions and initial
|
|
micro support for ethtool.
|
|
|
|
config MAC80211_HWSIM
|
|
tristate "Simulated radio testing tool for mac80211"
|
|
depends on MAC80211
|
|
---help---
|
|
This driver is a developer testing tool that can be used to test
|
|
IEEE 802.11 networking stack (mac80211) functionality. This is not
|
|
needed for normal wireless LAN usage and is only for testing. See
|
|
Documentation/networking/mac80211_hwsim for more information on how
|
|
to use this tool.
|
|
|
|
To compile this driver as a module, choose M here: the module will be
|
|
called mac80211_hwsim. If unsure, say N.
|
|
|
|
config USB_NET_RNDIS_WLAN
|
|
tristate "Wireless RNDIS USB support"
|
|
depends on USB
|
|
depends on CFG80211
|
|
select USB_NET_DRIVERS
|
|
select USB_USBNET
|
|
select USB_NET_CDCETHER
|
|
select USB_NET_RNDIS_HOST
|
|
---help---
|
|
This is a driver for wireless RNDIS devices.
|
|
These are USB based adapters found in devices such as:
|
|
|
|
Buffalo WLI-U2-KG125S
|
|
U.S. Robotics USR5421
|
|
Belkin F5D7051
|
|
Linksys WUSB54GSv2
|
|
Linksys WUSB54GSC
|
|
Asus WL169gE
|
|
Eminent EM4045
|
|
BT Voyager 1055
|
|
Linksys WUSB54GSv1
|
|
U.S. Robotics USR5420
|
|
BUFFALO WLI-USB-G54
|
|
|
|
All of these devices are based on Broadcom 4320 chip which is the
|
|
only wireless RNDIS chip known to date.
|
|
|
|
If you choose to build a module, it'll be called rndis_wlan.
|
|
|
|
config VIRT_WIFI
|
|
tristate "Wifi wrapper for ethernet drivers"
|
|
depends on CFG80211
|
|
---help---
|
|
This option adds support for ethernet connections to appear as if they
|
|
are wifi connections through a special rtnetlink device.
|
|
|
|
endif # WLAN
|