platform/kernel/linux-rpi.git
15 years agoiwl3945: use iwl3945_tx_cmd instead of iwl_tx_cmd
Winkler, Tomas [Mon, 22 Dec 2008 03:31:19 +0000 (11:31 +0800)]
iwl3945: use iwl3945_tx_cmd instead of iwl_tx_cmd

The patch replaces iwl_tx_cmd with iwl3945_tx_cmd to complete
transitions introduced by "iwlwifi: use iwl_cmd instead
of iwl3945_cmd"

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: switch to the iwl-core send_card_state routine
Samuel Ortiz [Mon, 22 Dec 2008 03:31:18 +0000 (11:31 +0800)]
iwl3945: switch to the iwl-core send_card_state routine

Switch iwl3945 to use iwl-core:send_card_state routine.

Signed-off-by: Samuel Ortiz <samuel.ortiz@intel.com>
Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: sync tx queue data structure with iwlagn
Samuel Ortiz [Mon, 22 Dec 2008 03:31:16 +0000 (11:31 +0800)]
iwl3945: sync tx queue data structure with iwlagn

We are now using the iwl_tx_queue for iwl3945. To reach that goal, we
included the 3945 specific tfd frame structure to iwl_tx_queue. This
has no effect on the current iwlagn code.

Signed-off-by: Samuel Ortiz <samuel.ortiz@intel.com>
Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: adding utils ops
Kolekar, Abhijeet [Mon, 22 Dec 2008 03:31:15 +0000 (11:31 +0800)]
iwl3945: adding utils ops

The patch implements iwl_hcmd_utils_ops for 3945.

Signed-off-by: Samuel Ortiz <samuel.ortiz@intel.com>
Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: rearrange 3945 tfd
Winkler, Tomas [Mon, 22 Dec 2008 03:31:14 +0000 (11:31 +0800)]
iwl3945: rearrange 3945 tfd

This patch moves 3945 TFD structures to iwl-3945-fh.h. It renames them
similarly to AGN naming. This patch also eliminates iwl3945_tx_info and
fixes endianity issue in iwl3945_tx_skb and iwl3945_enqueue_hcmd caused
by ugly casting.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: use iwl_rb_status
Winkler, Tomas [Fri, 19 Dec 2008 02:37:43 +0000 (10:37 +0800)]
iwl3945: use iwl_rb_status

This patch makes use of iwl_rb_status also in 3945. The structure
for 3945 is not the same but since only closed_rb_num filed is used
in both cases there is no reason to duplicate it.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: use iwl_get_hw_mode
Kolekar, Abhijeet [Fri, 19 Dec 2008 02:37:42 +0000 (10:37 +0800)]
iwl3945: use iwl_get_hw_mode

Use iwl_get_hw_mode for 3945.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: release resources before shutting down
Kolekar, Abhijeet [Fri, 19 Dec 2008 02:37:41 +0000 (10:37 +0800)]
iwl3945: release resources before shutting down

Release resource before shutting down and notify upper stack.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: simplify iwl3945_pci_probe
Kolekar, Abhijeet [Fri, 19 Dec 2008 02:37:40 +0000 (10:37 +0800)]
iwl3945: simplify iwl3945_pci_probe

The patch simplifies iwl3945_pci_probe. It also uses apm_ops for apm init.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: add set_pwr_src
Kolekar, Abhijeet [Fri, 19 Dec 2008 02:37:39 +0000 (10:37 +0800)]
iwl3945: add set_pwr_src

The patch adds 3945 iwl_lib_ops->set_pwr_src to the driver

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: add apm ops
Kolekar, Abhijeet [Fri, 19 Dec 2008 02:37:38 +0000 (10:37 +0800)]
iwl3945: add apm ops

The patch adds 3945 iwl_lib_ops->apm_ops to the driver.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: add load ucode op
Kolekar, Abhijeet [Fri, 19 Dec 2008 02:37:37 +0000 (10:37 +0800)]
iwl3945: add load ucode op

The patch adds 3945 iwl_lib_ops->load_ucode to the driver.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: cleanup and remove duplicate code
Kolekar, Abhijeet [Fri, 19 Dec 2008 02:37:36 +0000 (10:37 +0800)]
iwl3945: cleanup and remove duplicate code

The patch removes the following duplicate structures:

iwl3945_is_alive
iwl3945_is_ready
iwl3945_is_init
iwl3945_is_rfkill_sw
iwl3945_is_rfkill
iwl3945_reset_qos

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: use iwl_mod_params for 3945
Kolekar, Abhijeet [Fri, 19 Dec 2008 02:37:35 +0000 (10:37 +0800)]
iwl3945: use iwl_mod_params for 3945

Use iwl_mod_params for 3945.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwlwifi: use iwl_cmd instead of iwl3945_cmd
Winkler, Tomas [Fri, 19 Dec 2008 02:37:34 +0000 (10:37 +0800)]
iwlwifi: use iwl_cmd instead of iwl3945_cmd

This patch makes use of iwl_cmd instead of iwl3945_cmd and related
structures which were just the same.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwlwifi: replace IWL_ERROR with IWL_ERR
Winkler, Tomas [Fri, 19 Dec 2008 02:37:33 +0000 (10:37 +0800)]
iwlwifi: replace IWL_ERROR with IWL_ERR

IWL_ERR doesn't use hidden priv pointer.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwlwifi: replace IWL_WARNING with IWL_WARN
Winkler, Tomas [Fri, 19 Dec 2008 02:37:32 +0000 (10:37 +0800)]
iwlwifi: replace IWL_WARNING with IWL_WARN

IWL_WARN doesn't use hidden priv pointer.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwlwifi: clean up printing
Tomas Winkler [Fri, 19 Dec 2008 02:37:31 +0000 (10:37 +0800)]
iwlwifi: clean up printing

Use IWL_ macros where possible to unify debug output usage.
Define new unconditional printouts IWL_ERR, IWL_WARN, IWL_INFO,
and IWL_CRIT which don't use hidden priv pointer.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwlwifi: add more comments to IWL_DL_xx
Zhu Yi [Fri, 19 Dec 2008 02:37:30 +0000 (10:37 +0800)]
iwlwifi: add more comments to IWL_DL_xx

This adds more comments to IWL_DL_xx macros.

Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: use iwl-io.h and delete iwl-3945-io.h
Abhijeet Kolekar [Fri, 19 Dec 2008 02:37:29 +0000 (10:37 +0800)]
iwl3945: use iwl-io.h and delete iwl-3945-io.h

The patch deletes iwl-3945-io.h and uses iwl-io.h functions.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: replaces iwl3945_priv with iwl_priv
Abhijeet Kolekar [Fri, 19 Dec 2008 02:37:28 +0000 (10:37 +0800)]
iwl3945: replaces iwl3945_priv with iwl_priv

The patch replaces iwl3945_priv to iwl_priv. It adds 3945 specific
data members to iwl_priv.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: rename iwl3945_priv variables
Abhijeet Kolekar [Fri, 19 Dec 2008 02:37:27 +0000 (10:37 +0800)]
iwl3945: rename iwl3945_priv variables

The patch renames iwl3945 specific variables in iwl3945_priv
structure. iwl3945_priv structure differs with iwl_priv structure
with these variables. Goal of this patch is to make transition from
iwl3945_priv to iwl_priv smoothly.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: use iwl_hw_params in iwl3945_priv
Abhijeet Kolekar [Fri, 19 Dec 2008 02:37:26 +0000 (10:37 +0800)]
iwl3945: use iwl_hw_params in iwl3945_priv

The patch makes changed necessary to use iwl_hw_params to
replace iwl3945_driver_hw_info.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: use iwl_rx_queue in iwl3945
Abhijeet Kolekar [Fri, 19 Dec 2008 02:37:25 +0000 (10:37 +0800)]
iwl3945: use iwl_rx_queue in iwl3945

The patch replaces iwl3945_rx_queue with iwl_rx_queue.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: use iwl_rx_mem_buffer
Abhijeet Kolekar [Fri, 19 Dec 2008 02:37:24 +0000 (10:37 +0800)]
iwl3945: use iwl_rx_mem_buffer

The patch replaces iwl3945_rx_mem_buffer with iwl_rx_mem_buffer.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwlwifi: beautify code
Wu Fengguang [Fri, 19 Dec 2008 02:37:23 +0000 (10:37 +0800)]
iwlwifi: beautify code

This patch beautifies macros in iwl-debug.h.

Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: replace iwl3945_broadcast_addr with iwl_bcast_addr
Kolekar, Abhijeet [Fri, 19 Dec 2008 02:37:22 +0000 (10:37 +0800)]
iwl3945: replace iwl3945_broadcast_addr with iwl_bcast_addr

The patch replaces iwl3945_broadcast_addr with iwl_bcast_addr for 3945.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: remove duplicate structures from iwl-3945.h
Kolekar, Abhijeet [Fri, 19 Dec 2008 02:37:21 +0000 (10:37 +0800)]
iwl3945: remove duplicate structures from iwl-3945.h

The patch renames and deletes duplicate structure from iwl-3945.h.
The following structures are renamed with iwlwifi counterparts:

1) iwl3945_ac_qos
2) iwl3945_ucode
3) iwl3945_qos_capabity

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: move structures from iwl-3945.h to iwl-dev.h
Kolekar, Abhijeet [Fri, 19 Dec 2008 02:37:20 +0000 (10:37 +0800)]
iwl3945: move structures from iwl-3945.h to iwl-dev.h

The patch moves few structres from iwl-3945.h to iwl-dev.h.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: replace iwl_3945_cfg with iwl_cfg
Kolekar, Abhijeet [Fri, 19 Dec 2008 02:37:19 +0000 (10:37 +0800)]
iwl3945: replace iwl_3945_cfg with iwl_cfg

The patch replaces iwl_3945_cfg with iwl_cfg for 3945.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: include iwl-core.h
Kolekar, Abhijeet [Fri, 19 Dec 2008 02:37:18 +0000 (10:37 +0800)]
iwl3945: include iwl-core.h

Use iwl-core.h instead of iwl-3945-core.h.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: Change IWLWIFI_VERSION constant name
Kolekar, Abhijeet [Fri, 19 Dec 2008 02:37:17 +0000 (10:37 +0800)]
iwl3945: Change IWLWIFI_VERSION constant name

Change IWLWIFI_VERSION to IWL3945_VERSION.

Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwlwifi: emliminate iwl3945_mac_get_stats mac80211 handler
Winkler, Tomas [Fri, 19 Dec 2008 02:37:16 +0000 (10:37 +0800)]
iwlwifi: emliminate iwl3945_mac_get_stats mac80211 handler

This patch removes empty iwl3945_mac_get_stats mac80211 handler.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: iwl3945_queue and iwl3945_channel_info replacement
Samuel Ortiz [Fri, 19 Dec 2008 02:37:15 +0000 (10:37 +0800)]
iwl3945: iwl3945_queue and iwl3945_channel_info replacement

This patch replaces the queue and channel info 3945 structures with the iwl
ones.

The initial goal was to replace the channel info structure. Once we do that,
and then include iwl-dev.h instead of iwl-3945.h, we still get build errors
due to several routines and macro redefinitions. This is why this patch also
includes:
- TFD39_MAX_PAYLOAD definition for 3945.
- CMD_SIZE, CMD_HUGE, CMD_SKB duplication removal.
- iwl3945_queue replacement in order to also get rid of the duplicated
get_cmd_index routine.

Getting rid of any of those needs the iwl-dev.h inclusion which then creates
build errors due to definitions duplication. This is why we include all those
in the same patch.

Signed-off-by: Samuel Ortiz <samuel.ortiz@intel.com>
Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: Remove power related definitions from 3945 code
Samuel Ortiz [Fri, 19 Dec 2008 02:37:14 +0000 (10:37 +0800)]
iwl3945: Remove power related definitions from 3945 code

Most of the power (not TX power, but power management) structures and
definitions are duplicated accross iwl-power.h and iwl-3945.h. We should try
to only use the iwl header.

Signed-off-by: Samuel Ortiz <samuel.ortiz@intel.com>
Acked-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: Getting rid of iwl-3945-led.h
Samuel Ortiz [Fri, 19 Dec 2008 02:37:13 +0000 (10:37 +0800)]
iwl3945: Getting rid of iwl-3945-led.h

The duplicated LED definitions prevent one from including iwl-dev.h from the
3945 specific C files.
Moreover, we are sharing many definitions between iwl-3945-led.h and
iwl-led.h, so let's just use the iwl one. Note that this file will get more
cleanups once we share a common iwl_priv structure.

Signed-off-by: Samuel Ortiz <samuel.ortiz@intel.com>
Acked-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: Use iwl-agn-rs.h rates definitions.
Samuel Ortiz [Fri, 19 Dec 2008 02:37:12 +0000 (10:37 +0800)]
iwl3945: Use iwl-agn-rs.h rates definitions.

A lot of rate relates definition are shared between iwl-3945-rs.h and
iwl-agn-rs.h. Let's just use the agn version, and add the 3945 specific
constants there.

Signed-off-by: Samuel Ortiz <samuel.ortiz@intel.com>
Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: Have consistant and not redefined HW constants
Samuel Ortiz [Fri, 19 Dec 2008 02:37:11 +0000 (10:37 +0800)]
iwl3945: Have consistant and not redefined HW constants

SRAM addresses are different for 3945, 4065, and 5000, let's give them
different names.
Also, the RSSI_OFFSET is different for 3945 and 4965, thus they should be
named differently.

Signed-off-by: Samuel Ortiz <samuel.ortiz@intel.com>
Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: Getting rid of iwl3945_eeprom_channel
Samuel Ortiz [Fri, 19 Dec 2008 02:37:10 +0000 (10:37 +0800)]
iwl3945: Getting rid of iwl3945_eeprom_channel

The corresponding iwl structure is identical.

Signed-off-by: Samuel Ortiz <samuel.ortiz@intel.com>
Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: Remove DRV_NAME dependenies
Samuel Ortiz [Fri, 19 Dec 2008 02:37:09 +0000 (10:37 +0800)]
iwl3945: Remove DRV_NAME dependenies

As DRV_NAME is defined in 2 different header files, including both is not
possible.
This patch defines this constant from iwl3945-base.c and iwl-agn.c. It also
redefines the IWL_ERROR and IWL_WARNING macros to use dev_printk, as the
IWL_DEBUG_* macros do.

Signed-off-by: Samuel Ortiz <samuel.ortiz@intel.com>
Acked-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwl3945: Getting rid of iwl-3945-debug.h
Samuel Ortiz [Fri, 19 Dec 2008 02:37:08 +0000 (10:37 +0800)]
iwl3945: Getting rid of iwl-3945-debug.h

At the cost of adding a debug_level field to iwl3945_priv, we are now able to
get rid of iwl-3945-debug.h, and use iwl-debug.h instead.

Signed-off-by: Samuel Ortiz <samuel.ortiz@intel.com>
Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwlwifi: 3945 remove iwl-3945-commands.h
Tomas Winkler [Fri, 19 Dec 2008 02:37:07 +0000 (10:37 +0800)]
iwlwifi: 3945 remove iwl-3945-commands.h

This patch remove iwl-3945-commands.h
eliminating duplicated and moving all definitions to iwl-commands.h

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwlwifi: 3945 drop usage of union tsf
Tomas Winkler [Fri, 19 Dec 2008 02:37:06 +0000 (10:37 +0800)]
iwlwifi: 3945 drop usage of union tsf

This patch replaces union tsf with u64
This also allows to use iwl_error_res
and iwl_rxon_time_cmd instead of 3945 structures

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwlwifi: 3945 remove duplicated code from iwl-3945-commands.h
Tomas Winkler [Fri, 19 Dec 2008 02:37:05 +0000 (10:37 +0800)]
iwlwifi: 3945 remove duplicated code from iwl-3945-commands.h

This patch remove trivial (renames) commands and defines
from iwl-3945-commands.h

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwlwifi: use iwl-commands.h also in 3945
Tomas Winkler [Fri, 19 Dec 2008 02:37:04 +0000 (10:37 +0800)]
iwlwifi: use iwl-commands.h also in 3945

This patch uses iwl-commands.h also for iwl3945
more clean ups are required but this get to stage where it
compiles cleanly.
Most massive changes are in spectrum and power managment.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwlwifi: 3945 remove current_rate from station entry.
Winkler, Tomas [Fri, 19 Dec 2008 02:37:03 +0000 (10:37 +0800)]
iwlwifi: 3945 remove current_rate from station entry.

This patch removes current_rate from station_entry it was write only
variable

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Abhijeet Kolekar <abhijeet.kolekar@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwlwifi: 3945 unfold iwl-3945-commands.h
Tomas Winkler [Fri, 19 Dec 2008 02:37:02 +0000 (10:37 +0800)]
iwlwifi: 3945 unfold iwl-3945-commands.h

This patch unfolds includes of iwl-3945-commands.h

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwlwifi: 3945 extract flow handler definitions into iwl-3945-fh.h
Tomas Winkler [Fri, 19 Dec 2008 02:37:01 +0000 (10:37 +0800)]
iwlwifi: 3945 extract flow handler definitions into iwl-3945-fh.h

This patch moves 3945 definitions into iwl-3945-fh.h
It renames FH_ to FH39 to help inclusion of 3945 into iwlcore
framework

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agomac80211: Cancel the power save timer in ieee80211_stop.
Vivek Natarajan [Wed, 24 Dec 2008 08:34:37 +0000 (00:34 -0800)]
mac80211: Cancel the power save timer in ieee80211_stop.

Since the station info is flushed before calling set_disassoc
in ieee80211_stop, the power save timer is never cancelled
when the driver is unloaded. Hence the timer cancellation has
to be done in ieee80211_stop itself.

Signed-off-by: Vivek Natarajan <vnatarajan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agomac80211: Enhancements to dynamic power save.
Vivek Natarajan [Wed, 24 Dec 2008 02:39:02 +0000 (18:39 -0800)]
mac80211: Enhancements to dynamic power save.

This patch enables mac80211 to send a null frame and also to
check for tim in the beacon if dynamic power save is enabled.

Signed-off-by: Vivek Natarajan <vnatarajan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agomac80211: A couple of fixes to dynamic power save.
Vivek Natarajan [Wed, 24 Dec 2008 02:28:34 +0000 (18:28 -0800)]
mac80211: A couple of fixes to dynamic power save.

a) hw_config() should not be called from siwpower() for the drivers which do not support
   dynamic powersave.
b) IEEE80211_HW_NO_STACK_DYNAMIC_PS needs to be verified in set_associated() also before
   enabling the power save timers.

Signed-off-by: Vivek Natarajan <vnatarajan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agomac80211: Reset the power save timer from master_start_xmit.
Vivek Natarajan [Wed, 24 Dec 2008 02:17:19 +0000 (18:17 -0800)]
mac80211: Reset the power save timer from master_start_xmit.

When a null data frame is generated from mac80211,  it goes through
master_start_xmit and not through  subif_start_xmit. Hence for the
power save timer to be triggered while sending this null data frame
also, the timer has to be reset from master_start_xmit.

Signed-off-by: Vivek Natarajan <vnatarajan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agomac80211: Scale down to non-HT association with TKIP/WEP as pairwise cipher
Vasanthakumar Thiagarajan [Tue, 23 Dec 2008 16:00:50 +0000 (21:30 +0530)]
mac80211: Scale down to non-HT association with TKIP/WEP as pairwise cipher

As TKIP is not updated to new security needs which arise when
TKIP is used to encrypt A-MPDU aggregated data frames, IEEE802.11n
does not allow any cipher other than CCMP (Which has new extensions
defined) as pairwise cipher between HT peers.

When such configuration (TKIP/WEP in HT) is forced, we still
associate in non-HT mode (11a/b/g).

Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agowireless: Add channel/frequency conversions to ieee80211.h
David Kilroy [Tue, 23 Dec 2008 14:03:38 +0000 (14:03 +0000)]
wireless: Add channel/frequency conversions to ieee80211.h

Added mappings for FHSS, DSSS and OFDM channels - with macros to point
HR DSSS and ERP to the DSSS mappings. Currently just static inline
functions.

Use the new functions in the older fullmac drivers. This eliminates a
number of const static buffers and removes a couple of range checks that
are now redundant.

Signed-off-by: David Kilroy <kilroyd@googlemail.com>
Acked-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Acked-by: Richard Farina <sidhayn@gmail.com>
Acked-by: Jeroen Vreeken <pe1rxq@amsat.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoath5k: More EEPROM code updates
Nick Kossifidis [Mon, 22 Dec 2008 10:35:55 +0000 (12:35 +0200)]
ath5k: More EEPROM code updates

* Don't scale power values on RF5111 EEPROMs because they get out of
  bounds (power is u8, so multiplying power by 50 is too much and there
  is no reason to do so -we don't do it on other chips anyway-). HAL
  does it as a technique to handle 0.5 dbm steps but i believe it's not
  the right thing to do and certainly not the right place to do it. We
  'll work this out on interpolation code for all chips (0.5 or 0.25
  steps etc) in a generic way.

Signed-Off-by: Nick Kossifidis <mickflemm@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwlwifi: kill retry_rate sysfs for iwlagn
Winkler, Tomas [Mon, 22 Dec 2008 03:31:21 +0000 (11:31 +0800)]
iwlwifi: kill retry_rate sysfs for iwlagn

This patch kills retry_rate in sysfs for iwlagn. It's not used.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiwlwifi: move sysfs status entry to debugfs
Winkler, Tomas [Mon, 22 Dec 2008 03:31:20 +0000 (11:31 +0800)]
iwlwifi: move sysfs status entry to debugfs

This patch moves priv->status sysfs entry to debugfs. It is for
debugging only anyway.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agop54: enable proper frame injection
Christian Lamparter [Sun, 21 Dec 2008 21:52:10 +0000 (22:52 +0100)]
p54: enable proper frame injection

This patch enables frame injection in monitor mode for all p54 devices.
As a result, any user can finally use the aircrack-ng suite out of the box.

e.g:
aireplay-ng --test wlan0
Trying broadcast probe requests...
Injection is working!
Found 1 AP

Trying directed probe requests...
XX:XX:XX:XX:XX:XX - channel: i - 'SSID'
Ping (min/avg/max): 1.536ms/3.193ms/4.377ms Power: 193.00
30/30: 100%

Signed-off-by: Christian Lamparter <chunkeey@web.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agop54: label queues with their corresponding names
Christian Lamparter [Sun, 21 Dec 2008 19:54:34 +0000 (20:54 +0100)]
p54: label queues with their corresponding names

This patch introduce new shiny named labels for our 8 (4 - on old firmware) queues.

Signed-off-by: Christian Lamparter <chunkeey@web.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoath5k: Update EEPROM code
Nick Kossifidis [Sun, 21 Dec 2008 02:47:39 +0000 (04:47 +0200)]
ath5k: Update EEPROM code

*Read misc2...6 values from eeprom since we want to use them (fixes
 wrong power calibration info offset on RF2413+ chips)

*Initialize num_piers to 0 for RF2413 chips (note that we read 2GHz
 frequency piers while reading mode sections, we have to ignore them
 -usualy they are 0xff anyway but during my tests i got a 1 on b mode
 with no data- and use the newer eemap.

*Add some more comments (please forgive my poor English ;-( ) and
 some minor code cleanup

*Tested on 2425 and 2112 and has the same data with ath_info (i
 wrote some debug code on debug.c to print everything like ath_info
 but i haven't tested it yet on 5111 and it's full of > 80 col lines,
 if anyone wants to play with it let me know).

Signed-Off-by: Nick Kossifidis <mickflemm@gmail.com>
Acked-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agort2x00: Release rt2x00 2.3.0
Ivo van Doorn [Sat, 20 Dec 2008 10:00:49 +0000 (11:00 +0100)]
rt2x00: Release rt2x00 2.3.0

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agort2x00: Introduce RXDONE_SIGNAL_MASK mask
Ivo van Doorn [Sat, 20 Dec 2008 09:59:55 +0000 (10:59 +0100)]
rt2x00: Introduce RXDONE_SIGNAL_MASK mask

Improve error message reporting when a frame was received
with unknown rate. Instead of using the boolean check if
the frame is supposed to be a PLCP value or not, we should
add a new mask (RXDONE_SIGNAL_MASK) which returns the type
identification for a signal value (i.e. PLCP). At the moment
we only have 2 different types, but more will arrive when
support for 11n is added.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agort2x00: Allow drivers to pass the noise value during rxdone
Ivo van Doorn [Sat, 20 Dec 2008 09:59:29 +0000 (10:59 +0100)]
rt2x00: Allow drivers to pass the noise value during rxdone

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agort2x00: Remove ENTRY_TXD_OFDM_RATE
Ivo van Doorn [Sat, 20 Dec 2008 09:59:02 +0000 (10:59 +0100)]
rt2x00: Remove ENTRY_TXD_OFDM_RATE

The flag ENTRY_TXD_OFDM_RATE isn't flexible enough
to indicate which rate modulation should be used for
a frame. This will become a problem when 11n support
is added.

Remove the flag and replace it with an enum value which
can better indicate the exact rate modulation.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agort2x00: Move code into seperate functions
Ivo van Doorn [Sat, 20 Dec 2008 09:58:33 +0000 (10:58 +0100)]
rt2x00: Move code into seperate functions

Some functions have grown rapidly in size over the last time,
some of those functions (like the rt2x00queue_create_tx_descriptor)
will further increase in size soon, so it is best to start cutting
it into logical pieces.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agort2x00: Split EEPROM_NIC_TX_RX_FIXED
Ivo van Doorn [Sat, 20 Dec 2008 09:57:47 +0000 (10:57 +0100)]
rt2x00: Split EEPROM_NIC_TX_RX_FIXED

The 2 bits in EEPROM_NIC_TX_RX_FIXED each influence
a different antenna. We might as well split the
definition and directly read the correct bit.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agort2x00: Implement WDS support
Ivo van Doorn [Sat, 20 Dec 2008 09:57:02 +0000 (10:57 +0100)]
rt2x00: Implement WDS support

WDS support should be very easy to handle, mac80211 handles
everything for us, so all that is needed is to set the
support flags and handle it in the add_interface() callback.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agort2x00: Rename CONFIG_CRYPTO_COPY_IV
Ivo van Doorn [Sat, 20 Dec 2008 09:56:36 +0000 (10:56 +0100)]
rt2x00: Rename CONFIG_CRYPTO_COPY_IV

CONFIG_CRYPTO_COPY_IV is a bad name since it is part
of the driver requirements instead of a configuration option.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agort2x00: Add RFKILL support to rt2500usb and rt73usb
Ivo van Doorn [Sat, 20 Dec 2008 09:55:57 +0000 (10:55 +0100)]
rt2x00: Add RFKILL support to rt2500usb and rt73usb

Some very rare Ralink USB hardware exists which features
the RFKILL switch on the USB stick.
This patch adds the EEPROM check function to see if RFKILL
is supported and the polling function to rt2500usb and
rt73usb in order to support RFKILL for that hardware.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agort2x00: Add mesh support
Andrey Yurovsky [Sat, 20 Dec 2008 09:55:34 +0000 (10:55 +0100)]
rt2x00: Add mesh support

This adds initial support for Mesh Point mode.  For this we tell mac80211 that
we support NL80211_IFTYPE_MESH_POINT.  We also need to send beacons.  mac80211
will configure our RX filter accordingly.

Signed-off-by: Andrey Yurovsky <andrey@cozybit.com>
Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agort2x00: Restrict interface between rt2x00link and drivers
Ivo van Doorn [Sat, 20 Dec 2008 09:54:54 +0000 (10:54 +0100)]
rt2x00: Restrict interface between rt2x00link and drivers

Restrict drivers to only access link_qual structure during
link tuning. The contents of these fields are for the drivers
and all fields are allowed to be changed to values the driver
considers correct.

This means that some fields need to be moved outside of this
structure to restrict access only to rt2x00link itself.
This allows some code to be moved outside of the rt2x00.h header
and into rt2x00link.c.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agort2x00: Reduce calls to bbp_read()
Ivo van Doorn [Sat, 20 Dec 2008 09:54:22 +0000 (10:54 +0100)]
rt2x00: Reduce calls to bbp_read()

The link_tuner() function will always call bbp_read()
at the start of the function. Because this is an
indirect register access has some costs attached
to it (especially for USB hardware).

We already store the value read from the register
into the vgc_level value inside the link structure.
Instead of reading from the register we can read that
field directly and base the tuner on that value.

This reduces the time the registers are locked with
the csr_mutex and speeds up the link_tuner processing.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agort2x00: Move link tuning into seperate file
Ivo van Doorn [Sat, 20 Dec 2008 09:53:29 +0000 (10:53 +0100)]
rt2x00: Move link tuning into seperate file

Move link and antenna tuning into a seperate file named rt2x00link.c,
this makes the interface to the link tuner a lot cleaner.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agort2x00: Implement Powersaving
Ivo van Doorn [Sat, 20 Dec 2008 09:52:42 +0000 (10:52 +0100)]
rt2x00: Implement Powersaving

Listen to IEEE80211_CONF_PS to determine if the device
should drop into powersaving mode. This feature depends
on the dynamic power save functionality in mac80211.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agob43: Use 64bit atomic register access for TSF
Michael Buesch [Fri, 19 Dec 2008 21:51:57 +0000 (22:51 +0100)]
b43: Use 64bit atomic register access for TSF

On modern b43 devices with core rev >=3, the hardware guarantees us an
atomic 64bit read/write of the TSF, if we access the lower 32bits first.

Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agob43: Fixup set_key handling
Michael Buesch [Fri, 19 Dec 2008 20:30:52 +0000 (21:30 +0100)]
b43: Fixup set_key handling

This fixes the key handling for mac80211's new key->flags.
It also adds TX locking to the set_key handler and adds a comment why this is required.
This doesn't fix any known bugs.

Signed-off-by: Michael Buesch <mb@bu3sch.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
15 years agoiw_cxgb3: handle chip reset notifications
Divy Le Ray [Tue, 27 Jan 2009 06:22:19 +0000 (22:22 -0800)]
iw_cxgb3: handle chip reset notifications

Freeze activity when notified that the underlying chip
is getting reset on a EEH event or fatal error.

Signed-off-by: Divy Le Ray <divy@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agocxgb3: Notify fatal errors
Divy Le Ray [Tue, 27 Jan 2009 06:21:59 +0000 (22:21 -0800)]
cxgb3: Notify fatal errors

Set up a notification mechanism to inform upper layer modules
(iWARP, iSCSI) of a chip reset due to an EEH event or a fatal error.

Signed-off-by: Divy Le Ray <divy@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agosmsc911x: leave RX_STOP interrupt permanently enabled
Steve Glendinning [Tue, 27 Jan 2009 05:33:16 +0000 (21:33 -0800)]
smsc911x: leave RX_STOP interrupt permanently enabled

smsc911x_set_multicast_list currently performs the only non-atomic
read-modify-write of INT_EN.  This patch permanently enables the
RXSTOP_INT interrupt, and changes the ISR to only conditionally run the
multicast filter workaround code.

Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agosmc91x: struct net_device_ops
Magnus Damm [Tue, 27 Jan 2009 05:32:25 +0000 (21:32 -0800)]
smc91x: struct net_device_ops

Convert the smc91x driver to use struct net_device_ops.

Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agonet: struct device - replace bus_id with dev_name(), dev_set_name()
Kay Sievers [Tue, 27 Jan 2009 05:12:58 +0000 (21:12 -0800)]
net: struct device - replace bus_id with dev_name(), dev_set_name()

Signed-off-by: Kay Sievers <kay.sievers@vrfy.org>
Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agonet: pppoe - stop using proc internals
Cyrill Gorcunov [Tue, 27 Jan 2009 05:11:02 +0000 (21:11 -0800)]
net: pppoe - stop using proc internals

Alexey Dobriyan pointed that using PDE_NET outside the
proc code is plain bogus (thanks Alexey!). Fix it.

Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agopppol2tp: stop using proc internals
Alexey Dobriyan [Tue, 27 Jan 2009 05:10:08 +0000 (21:10 -0800)]
pppol2tp: stop using proc internals

PDE_NET usage in driver code is a sign and, indeed, switching
to seq_open_net/seq_release_net saves code and fixes bogus things, like
user triggerabble BUG_ON(!net) after maybe_get_net, and NULLifying ->private.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agoPhonet: use per-namespace devices list
remi.denis-courmont@nokia [Fri, 23 Jan 2009 03:00:30 +0000 (03:00 +0000)]
Phonet: use per-namespace devices list

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agoPhonet: remove useless locking in device cleanup
remi.denis-courmont@nokia [Fri, 23 Jan 2009 03:00:29 +0000 (03:00 +0000)]
Phonet: remove useless locking in device cleanup

Incoming packets and sockets are already gone.
The netdevice notifier is unregistered under the RTNL lock
There remains a race with the rtnetlink handlers unregistration, but it
is a generic RTNL issue that was already present before this change.

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agoPhonet: handle rtnetlink registration failure
remi.denis-courmont@nokia [Fri, 23 Jan 2009 03:00:28 +0000 (03:00 +0000)]
Phonet: handle rtnetlink registration failure

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agoPhonet: allow phonet_device_init() to fail, put it to __init section
remi.denis-courmont@nokia [Fri, 23 Jan 2009 03:00:27 +0000 (03:00 +0000)]
Phonet: allow phonet_device_init() to fail, put it to __init section

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agoPhonet: check destination before delivering packets locally
remi.denis-courmont@nokia [Fri, 23 Jan 2009 03:00:26 +0000 (03:00 +0000)]
Phonet: check destination before delivering packets locally

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agoPhonet: move to Networking options like other protocol stacks
remi.denis-courmont@nokia [Fri, 23 Jan 2009 03:00:25 +0000 (03:00 +0000)]
Phonet: move to Networking options like other protocol stacks

Signed-off-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agoixgbe: add support KX/KX4 device
Don Skidmore [Tue, 27 Jan 2009 04:57:51 +0000 (20:57 -0800)]
ixgbe: add support KX/KX4 device

And support for the KX/KX4 mezzanine card.  Device id 0x10B6.

Signed-off-by: Don Skidmore <donald.c.skidmore@intel.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agoixgbe: fix slow load times on 82598 nics
Don Skidmore [Tue, 27 Jan 2009 04:57:17 +0000 (20:57 -0800)]
ixgbe: fix slow load times on 82598 nics

Load times for NICs that use i2c to communicate with the phy were taking
~4.5 sec per port.  This fix first checks to see if the link is already
up before calling get_link_capabilities, since if it is we don't need
query the phy for link state.

Signed-off-by: Don Skidmore <donald.c.skidmore@intel.com>
Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agogre: optimize hash lookup
Timo Teras [Tue, 27 Jan 2009 04:56:10 +0000 (20:56 -0800)]
gre: optimize hash lookup

Instead of keeping candidate tunnel device from all categories,
keep only one candidate with best score. This optimizes stack
usage and speeds up exit code.

Signed-off-by: Timo Teras <timo.teras@iki.fi>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agoMerge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
David S. Miller [Tue, 27 Jan 2009 01:43:16 +0000 (17:43 -0800)]
Merge branch 'master' of /linux/kernel/git/davem/net-2.6

15 years agoMerge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Mon, 26 Jan 2009 23:12:47 +0000 (15:12 -0800)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm

* master.kernel.org:/home/rmk/linux-2.6-arm: (22 commits)
  [ARM] fix section-based ioremap
  [NET] am79c961a: fix spin_lock usage
  [ARM] omap: usb: thou shalt not provide empty release functions
  [ARM] omap: watchdog: allow OMAP watchdog driver on OMAP34xx platforms
  [ARM] 5369/1: omap mmc: Add new omap hsmmc controller for 2430 and 34xx, v3
  [ARM] clkdev: fix clock matching
  [ARM] 5370/1: at91: fix rm9200 watchdog
  [ARM] 5368/1: arch/arm/mach-davinci/usb.c buildfix
  [ARM] 5365/1: s3cmci: Use new include path of dma.h
  [ARM] fix StrongARM-11x0 page copy implementation
  [ARM] omap: ensure OMAP drivers pass a struct device to clk_get()
  ARM: OMAP: Fix compile for h3 MMC
  ARM: OMAP: Remove unused platform devices, v3
  ARM: OMAP: Fix ASoC by enabling writes to XCCR and RCCR McBSP registers, v3
  ARM: OMAP: Fix OSK ASoC by registering I2C board info for tlvaic23
  ARM: OMAP: remove duplicated #include's
  ARM: OMAP: Fix DMA CCR programming for request line > 63, v3
  ARM: OMAP: Fix gpio.c compile on 15xx with CONFIG_DEBUGFS
  ARM: OMAP: Fix compile for beagle
  ARM: OMAP: Fix gpio by switching to generic gpio calls, v2
  ...

15 years agoMerge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6
Linus Torvalds [Mon, 26 Jan 2009 23:11:41 +0000 (15:11 -0800)]
Merge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6

* 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
  i2c: Warn on deprecated binding model use
  eeprom: More consistent symbol names
  eeprom: Move 93cx6 eeprom driver to /drivers/misc/eeprom
  spi: Move at25 (for SPI eeproms) to /drivers/misc/eeprom
  i2c: Move old eeprom driver to /drivers/misc/eeprom
  i2c: Move at24 to drivers/misc/eeprom
  i2c: Quilt tree has moved
  i2c: Delete many unused adapter IDs
  i2c: Delete 10 unused driver IDs

15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes
Linus Torvalds [Mon, 26 Jan 2009 23:10:37 +0000 (15:10 -0800)]
Merge git://git./linux/kernel/git/sam/kbuild-fixes

* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes:
  kbuild: fix kbuild.txt typos
  kbuild: print usage with no arguments in scripts/config
  Revert "kbuild: strip generated symbols from *.ko"

15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Mon, 26 Jan 2009 23:09:20 +0000 (15:09 -0800)]
Merge git://git./linux/kernel/git/davem/net-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (92 commits)
  gianfar: Revive VLAN support
  vlan: Export symbols as non GPL symbols.
  bnx2x: tx_has_work should not wait for FW
  netxen: reduce memory footprint
  netxen: fix vlan tso/checksum offload
  net: Fix linux/if_frad.h's suitability for userspace.
  net: Move config NET_NS to from net/Kconfig to init/Kconfig
  isdn: Fix missing ifdef in isdn_ppp
  networking: document "nc" in addition to "netcat" in netconsole.txt
  e1000e: workaround hw errata
  af_key: initialize xfrm encap_oa
  virtio_net: Fix MAX_PACKET_LEN to support 802.1Q VLANs
  lcs: fix compilation for !CONFIG_IP_MULTICAST
  rtl8187: Add termination packet to prevent stall
  iwlwifi: fix rs_get_rate WARN_ON()
  p54usb: fix packet loss with first generation devices
  sctp: Fix another socket race during accept/peeloff
  sctp: Properly timestamp outgoing data chunks for rtx purposes
  sctp: Correctly start rtx timer on new packet transmissions.
  sctp: Fix crc32c calculations on big-endian arhes.
  ...

15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Mon, 26 Jan 2009 23:08:07 +0000 (15:08 -0800)]
Merge git://git./linux/kernel/git/davem/sparc-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
  sparc64: Fix DAX handling via userspace access from kernel.
  sparc64: Annotate sparc64 specific syscalls with SYSCALL_DEFINEx()
  [CVE-2009-0029] sparc: Enable syscall wrappers for 64-bit
  sparc64: Initialize FHC/CLOCK LED platform_device 'id' field correctly.
  sparc64: fix modpost failure
  sparc64: fix readout of cpu/fpu type

15 years agogianfar: Revive VLAN support
Anton Vorontsov [Mon, 26 Jan 2009 22:33:23 +0000 (14:33 -0800)]
gianfar: Revive VLAN support

commit 77ecaf2d5a8bfd548eed3f05c1c2e6573d5de4ba ("gianfar: Fix VLAN
HW feature related frame/buffer size calculation") wrongly removed
priv->vlgrp assignment, and now priv->vlgrp is always NULL.

This patch fixes the issue, plus fixes following sparse warning
introduced by the same commit:
gianfar.c:1406:13: warning: context imbalance in 'gfar_vlan_rx_register' - wrong count at exit

gfar_vlan_rx_register() checks for "if (old_grp == grp)" and tries
to return w/o dropping the lock.

According to net/8021q/vlan.c VLAN core issues rx_register() callback:
1. In register_vlan_dev() only on a newly created group;
2. In unregister_vlan_dev() only if the group becomes empty.

Thus the check in the gianfar driver isn't needed.

Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Acked-by: Andy Fleming <afleming@freescale.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agovlan: Export symbols as non GPL symbols.
Ben Greear [Mon, 26 Jan 2009 20:37:53 +0000 (12:37 -0800)]
vlan: Export symbols as non GPL symbols.

In previous kernels, any kernel module could get access to the
'real-device' and the VLAN-ID for a particular VLAN.  In more recent
kernels, the code was restructured such that this is hard to do
without accessing private .h files for any module that cannot use
GPL-only symbols.

Attached is a patch to once again allow non-GPL modules the ability to
access the real-device and VLAN id for VLANs.

Signed-off-by: Ben Greear <greearb@candelatech.com>
Acked-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>