2011-02-22 03:27:26 +08:00
|
|
|
config IWLAGN
|
|
|
|
tristate "Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N (iwlagn) "
|
2010-01-23 06:22:52 +08:00
|
|
|
depends on PCI && MAC80211
|
2009-02-14 03:51:19 +08:00
|
|
|
select FW_LOADER
|
2011-01-22 07:26:39 +08:00
|
|
|
select NEW_LEDS
|
|
|
|
select LEDS_CLASS
|
|
|
|
select LEDS_TRIGGERS
|
|
|
|
select MAC80211_LEDS
|
2011-02-22 03:27:26 +08:00
|
|
|
---help---
|
|
|
|
Select to build the driver supporting the:
|
|
|
|
|
|
|
|
Intel Wireless WiFi Link Next-Gen AGN
|
|
|
|
|
|
|
|
This option enables support for use with the following hardware:
|
|
|
|
Intel Wireless WiFi Link 6250AGN Adapter
|
|
|
|
Intel 6000 Series Wi-Fi Adapters (6200AGN and 6300AGN)
|
|
|
|
Intel WiFi Link 1000BGN
|
|
|
|
Intel Wireless WiFi 5150AGN
|
|
|
|
Intel Wireless WiFi 5100AGN, 5300AGN, and 5350AGN
|
|
|
|
Intel 6005 Series Wi-Fi Adapters
|
|
|
|
Intel 6030 Series Wi-Fi Adapters
|
|
|
|
Intel Wireless WiFi Link 6150BGN 2 Adapter
|
|
|
|
Intel 100 Series Wi-Fi Adapters (100BGN and 130BGN)
|
|
|
|
Intel 2000 Series Wi-Fi Adapters
|
|
|
|
|
|
|
|
|
|
|
|
This driver uses the kernel's mac80211 subsystem.
|
|
|
|
|
|
|
|
In order to use this driver, you will need a microcode (uCode)
|
|
|
|
image for it. You can obtain the microcode from:
|
|
|
|
|
|
|
|
<http://intellinuxwireless.org/>.
|
|
|
|
|
|
|
|
The microcode is typically installed in /lib/firmware. You can
|
|
|
|
look in the hotplug script /etc/hotplug/firmware.agent to
|
|
|
|
determine which directory FIRMWARE_DIR is set to when the script
|
|
|
|
runs.
|
|
|
|
|
|
|
|
If you want to compile the driver as a module ( = code which can be
|
|
|
|
inserted in and removed from the running kernel whenever you want),
|
|
|
|
say M here and read <file:Documentation/kbuild/modules.txt>. The
|
|
|
|
module will be called iwlagn.
|
2008-03-26 07:33:36 +08:00
|
|
|
|
2010-08-13 03:15:55 +08:00
|
|
|
menu "Debugging Options"
|
2011-02-22 03:27:26 +08:00
|
|
|
depends on IWLAGN
|
2010-08-13 03:15:55 +08:00
|
|
|
|
2008-07-21 23:54:42 +08:00
|
|
|
config IWLWIFI_DEBUG
|
2011-02-22 03:27:26 +08:00
|
|
|
bool "Enable full debugging output in the iwlagn driver"
|
|
|
|
depends on IWLAGN
|
2008-07-21 23:54:42 +08:00
|
|
|
---help---
|
|
|
|
This option will enable debug tracing output for the iwlwifi drivers
|
|
|
|
|
|
|
|
This will result in the kernel module being ~100k larger. You can
|
|
|
|
control which debug output is sent to the kernel log by setting the
|
|
|
|
value in
|
|
|
|
|
|
|
|
/sys/class/net/wlan0/device/debug_level
|
|
|
|
|
|
|
|
This entry will only exist if this option is enabled.
|
|
|
|
|
|
|
|
To set a value, simply echo an 8-byte hex value to the same file:
|
|
|
|
|
|
|
|
% echo 0x43fff > /sys/class/net/wlan0/device/debug_level
|
|
|
|
|
|
|
|
You can find the list of debug mask values in:
|
|
|
|
drivers/net/wireless/iwlwifi/iwl-debug.h
|
|
|
|
|
|
|
|
If this is your first time using this driver, you should say Y here
|
|
|
|
as the debug information can assist others in helping you resolve
|
|
|
|
any problems you may encounter.
|
|
|
|
|
|
|
|
config IWLWIFI_DEBUGFS
|
2009-02-14 03:51:19 +08:00
|
|
|
bool "iwlagn debugfs support"
|
2011-02-22 03:27:26 +08:00
|
|
|
depends on IWLAGN && MAC80211_DEBUGFS
|
2008-07-21 23:54:42 +08:00
|
|
|
---help---
|
2010-05-07 03:18:41 +08:00
|
|
|
Enable creation of debugfs files for the iwlwifi drivers. This
|
|
|
|
is a low-impact option that allows getting insight into the
|
|
|
|
driver's state at runtime.
|
2008-07-21 23:54:42 +08:00
|
|
|
|
2010-08-13 01:24:07 +08:00
|
|
|
config IWLWIFI_DEBUG_EXPERIMENTAL_UCODE
|
|
|
|
bool "Experimental uCode support"
|
2011-02-22 03:27:26 +08:00
|
|
|
depends on IWLAGN && IWLWIFI_DEBUG
|
2010-08-13 01:24:07 +08:00
|
|
|
---help---
|
|
|
|
Enable use of experimental ucode for testing and debugging.
|
|
|
|
|
2009-10-03 04:44:02 +08:00
|
|
|
config IWLWIFI_DEVICE_TRACING
|
|
|
|
bool "iwlwifi device access tracing"
|
2011-02-22 03:27:26 +08:00
|
|
|
depends on IWLAGN
|
2009-10-03 04:44:02 +08:00
|
|
|
depends on EVENT_TRACING
|
|
|
|
help
|
|
|
|
Say Y here to trace all commands, including TX frames and IO
|
|
|
|
accesses, sent to the device. If you say yes, iwlwifi will
|
|
|
|
register with the ftrace framework for event tracing and dump
|
|
|
|
all this information to the ringbuffer, you may need to
|
|
|
|
increase the ringbuffer size. See the ftrace documentation
|
|
|
|
for more information.
|
|
|
|
|
|
|
|
When tracing is not enabled, this option still has some
|
|
|
|
(though rather small) overhead.
|
|
|
|
|
|
|
|
If unsure, say Y so we can help you better when problems
|
|
|
|
occur.
|
2010-08-13 03:15:55 +08:00
|
|
|
endmenu
|
2009-10-03 04:44:02 +08:00
|
|
|
|
iwlwifi: support the svtool messages interactions through nl80211 test mode
This patch adds the feature to support the test mode operation through
the generic netlink channel NL80211_CMD_TESTMODE between intel
wireless device iwlwifi and the user space application svtool.
The main purpose is to create a transportation layer between the iwlwifi
device and the user space application so that the interaction between the
user space application svtool and the iwlwifi device in the kernel space is
in a way of generic netlink messaging.
The detail specific functions are:
1. The function iwl_testmode_cmd() is added to digest the svtool test command
from the user space application. The svtool test commands are categorized to
three types : commands to be processed by the device ucode, commands to access
the registers, and commands to be processed at the driver level(such as reload
the ucode). iwl_testmode_cmd() dispatches the commands the corresponding handlers
and reply to user space regarding the command execution status. Extra data is
returned to the user space application if there's any.
2. The function iwl_testmode_ucode_rx_pkt() is added to multicast all the spontaneous
messages from the iwlwifi device to the user space. Regardless the message types,
whenever there is a valid spontaneous message received by the iwlwifi ISR,
iwl_testmode_ucode_rx_pkt() is invoked to multicast the message content to user
space. The message content is not attacked and the message parsing is left to
the user space application.
Implementation guidelines:
1. The generic netlink messaging for iwliwif test mode is through NL80211_CMD_TESTMODE
channel, therefore, the codes need to follow the regulations set by cfg80211.ko
to get the actual device instance ieee80211_ops via cfg80211.ko, so that the iwlwifi
device is indicated with ieee80211_ops and can be actually accessed.
Therefore, a callback iwl_testmode_cmd() is added to the structure
iwlagn_hw_ops in iwl-agn.c.
2. It intends to utilize those low level device access APIs from iwlwifi device driver
(ie. iwlagn.ko) rather than creating it's own set of device access functions.
For example, iwl_send_cmd(), iwl_read32(), iwl_write8(), and iwl_write32() are reused.
3. The main functions are maintained in new files instead of spreading all over the
existing iwlwifi driver files.
The new files added are :
drivers/net/wireless/iwlwifi/iwl-sv-open.c
- to handle the user space test mode application command
and reply the respective command status to the user space application.
- to multicast the spontaneous messages from device to user space.
drivers/net/wireless/iwlwifi/iwl-testmode.h
- the commonly referenced definitions for the TLVs used in
the generic netlink messages
Signed-off-by: Cindy H. Kao <cindy.h.kao@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
2011-05-07 01:40:15 +08:00
|
|
|
config IWLWIFI_DEVICE_SVTOOL
|
|
|
|
bool "iwlwifi device svtool support"
|
|
|
|
depends on IWLAGN
|
|
|
|
select NL80211_TESTMODE
|
|
|
|
help
|
|
|
|
This option enables the svtool support for iwlwifi device through
|
|
|
|
NL80211_TESTMODE. svtool is a software validation tool that runs in
|
|
|
|
the user space and interacts with the device in the kernel space
|
|
|
|
through the generic netlink message via NL80211_TESTMODE channel.
|