This is a backport of the following commit from upstream. commit ce546fd2eacdbd8dc15f3d2ffd9a95661d082919 Author: Abhijeet Kolekar Date: Wed Nov 19 15:32:22 2008 -0800 iwl3945 : Fix ad-hoc mode for 3945 Patch fixes the ad-hoc mode by 1) Removing redundant clear_stations_table which prevented generation of beacons. 2) Setting assoc_id to 1. It was never set so preventing tx flow in iwl3945_tx_skb. Signed-off-by: Abhijeet Kolekar Signed-off-by: Reinette Chatre Signed-off-by: John W. Linville This patch should be considered part of bug 438388. Tested by Intel, Dan Williams and me with positive results. drivers/net/wireless/iwlwifi/iwl3945-base.c | 5 +---- 1 files changed, 1 insertion(+), 4 deletions(-) --- linux-2.6.18.noarch/drivers/net/wireless/iwlwifi/iwl3945-base.c.orig 2008-12-03 15:17:51.000000000 -0500 +++ linux-2.6.18.noarch/drivers/net/wireless/iwlwifi/iwl3945-base.c 2008-12-03 15:25:05.000000000 -0500 @@ -6398,10 +6398,7 @@ static void iwl3945_bg_post_associate(vo case IEEE80211_IF_TYPE_IBSS: - /* clear out the station table */ - iwl3945_clear_stations_table(priv); - - iwl3945_add_station(priv, iwl3945_broadcast_addr, 0, 0); + priv->assoc_id = 1; iwl3945_add_station(priv, priv->bssid, 0, 0); iwl3945_sync_sta(priv, IWL_STA_ID, (priv->band == IEEE80211_BAND_5GHZ) ?