Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Linux-御风守护者
linux
提交
de02d72b
L
linux
项目概览
Linux-御风守护者
/
linux
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
L
linux
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
de02d72b
编写于
5月 10, 2010
作者:
D
David S. Miller
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'master' of
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6
上级
f0ecde14
79733a86
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
37 addition
and
8 deletion
+37
-8
drivers/net/wireless/ath/ar9170/usb.c
drivers/net/wireless/ath/ar9170/usb.c
+11
-0
drivers/net/wireless/ath/ar9170/usb.h
drivers/net/wireless/ath/ar9170/usb.h
+1
-0
drivers/net/wireless/iwlwifi/iwl-commands.h
drivers/net/wireless/iwlwifi/iwl-commands.h
+3
-1
drivers/net/wireless/iwlwifi/iwl-scan.c
drivers/net/wireless/iwlwifi/iwl-scan.c
+18
-5
drivers/net/wireless/iwlwifi/iwl3945-base.c
drivers/net/wireless/iwlwifi/iwl3945-base.c
+2
-1
net/mac80211/mlme.c
net/mac80211/mlme.c
+2
-1
未找到文件。
drivers/net/wireless/ath/ar9170/usb.c
浏览文件 @
de02d72b
...
...
@@ -727,12 +727,16 @@ static void ar9170_usb_firmware_failed(struct ar9170_usb *aru)
{
struct
device
*
parent
=
aru
->
udev
->
dev
.
parent
;
complete
(
&
aru
->
firmware_loading_complete
);
/* unbind anything failed */
if
(
parent
)
down
(
&
parent
->
sem
);
device_release_driver
(
&
aru
->
udev
->
dev
);
if
(
parent
)
up
(
&
parent
->
sem
);
usb_put_dev
(
aru
->
udev
);
}
static
void
ar9170_usb_firmware_finish
(
const
struct
firmware
*
fw
,
void
*
context
)
...
...
@@ -761,6 +765,8 @@ static void ar9170_usb_firmware_finish(const struct firmware *fw, void *context)
if
(
err
)
goto
err_unrx
;
complete
(
&
aru
->
firmware_loading_complete
);
usb_put_dev
(
aru
->
udev
);
return
;
err_unrx:
...
...
@@ -858,6 +864,7 @@ static int ar9170_usb_probe(struct usb_interface *intf,
init_usb_anchor
(
&
aru
->
tx_pending
);
init_usb_anchor
(
&
aru
->
tx_submitted
);
init_completion
(
&
aru
->
cmd_wait
);
init_completion
(
&
aru
->
firmware_loading_complete
);
spin_lock_init
(
&
aru
->
tx_urb_lock
);
aru
->
tx_pending_urbs
=
0
;
...
...
@@ -877,6 +884,7 @@ static int ar9170_usb_probe(struct usb_interface *intf,
if
(
err
)
goto
err_freehw
;
usb_get_dev
(
aru
->
udev
);
return
request_firmware_nowait
(
THIS_MODULE
,
1
,
"ar9170.fw"
,
&
aru
->
udev
->
dev
,
GFP_KERNEL
,
aru
,
ar9170_usb_firmware_step2
);
...
...
@@ -896,6 +904,9 @@ static void ar9170_usb_disconnect(struct usb_interface *intf)
return
;
aru
->
common
.
state
=
AR9170_IDLE
;
wait_for_completion
(
&
aru
->
firmware_loading_complete
);
ar9170_unregister
(
&
aru
->
common
);
ar9170_usb_cancel_urbs
(
aru
);
...
...
drivers/net/wireless/ath/ar9170/usb.h
浏览文件 @
de02d72b
...
...
@@ -71,6 +71,7 @@ struct ar9170_usb {
unsigned
int
tx_pending_urbs
;
struct
completion
cmd_wait
;
struct
completion
firmware_loading_complete
;
int
readlen
;
u8
*
readbuf
;
...
...
drivers/net/wireless/iwlwifi/iwl-commands.h
浏览文件 @
de02d72b
...
...
@@ -2621,7 +2621,9 @@ struct iwl_ssid_ie {
#define PROBE_OPTION_MAX_3945 4
#define PROBE_OPTION_MAX 20
#define TX_CMD_LIFE_TIME_INFINITE cpu_to_le32(0xFFFFFFFF)
#define IWL_GOOD_CRC_TH cpu_to_le16(1)
#define IWL_GOOD_CRC_TH_DISABLED 0
#define IWL_GOOD_CRC_TH_DEFAULT cpu_to_le16(1)
#define IWL_GOOD_CRC_TH_NEVER cpu_to_le16(0xffff)
#define IWL_MAX_SCAN_SIZE 1024
#define IWL_MAX_CMD_SIZE 4096
#define IWL_MAX_PROBE_REQUEST 200
...
...
drivers/net/wireless/iwlwifi/iwl-scan.c
浏览文件 @
de02d72b
...
...
@@ -813,16 +813,29 @@ static void iwl_bg_request_scan(struct work_struct *data)
rate
=
IWL_RATE_1M_PLCP
;
rate_flags
=
RATE_MCS_CCK_MSK
;
}
scan
->
good_CRC_th
=
0
;
scan
->
good_CRC_th
=
IWL_GOOD_CRC_TH_DISABLED
;
}
else
if
(
priv
->
scan_bands
&
BIT
(
IEEE80211_BAND_5GHZ
))
{
band
=
IEEE80211_BAND_5GHZ
;
rate
=
IWL_RATE_6M_PLCP
;
/*
* If active scaning is requested but a certain channel
* is marked passive, we can do active scanning if we
* detect transmissions.
* If active scanning is requested but a certain channel is
* marked passive, we can do active scanning if we detect
* transmissions.
*
* There is an issue with some firmware versions that triggers
* a sysassert on a "good CRC threshold" of zero (== disabled),
* on a radar channel even though this means that we should NOT
* send probes.
*
* The "good CRC threshold" is the number of frames that we
* need to receive during our dwell time on a channel before
* sending out probes -- setting this to a huge value will
* mean we never reach it, but at the same time work around
* the aforementioned issue. Thus use IWL_GOOD_CRC_TH_NEVER
* here instead of IWL_GOOD_CRC_TH_DISABLED.
*/
scan
->
good_CRC_th
=
is_active
?
IWL_GOOD_CRC_TH
:
0
;
scan
->
good_CRC_th
=
is_active
?
IWL_GOOD_CRC_TH_DEFAULT
:
IWL_GOOD_CRC_TH_NEVER
;
/* Force use of chains B and C (0x6) for scan Rx for 4965
* Avoid A (0x1) because of its off-channel reception on A-band.
...
...
drivers/net/wireless/iwlwifi/iwl3945-base.c
浏览文件 @
de02d72b
...
...
@@ -2967,7 +2967,8 @@ static void iwl3945_bg_request_scan(struct work_struct *data)
* is marked passive, we can do active scanning if we
* detect transmissions.
*/
scan
->
good_CRC_th
=
is_active
?
IWL_GOOD_CRC_TH
:
0
;
scan
->
good_CRC_th
=
is_active
?
IWL_GOOD_CRC_TH_DEFAULT
:
IWL_GOOD_CRC_TH_DISABLED
;
band
=
IEEE80211_BAND_5GHZ
;
}
else
{
IWL_WARN
(
priv
,
"Invalid scan band count
\n
"
);
...
...
net/mac80211/mlme.c
浏览文件 @
de02d72b
...
...
@@ -2030,7 +2030,8 @@ int ieee80211_mgd_deauth(struct ieee80211_sub_if_data *sdata,
continue
;
if
(
wk
->
type
!=
IEEE80211_WORK_DIRECT_PROBE
&&
wk
->
type
!=
IEEE80211_WORK_AUTH
)
wk
->
type
!=
IEEE80211_WORK_AUTH
&&
wk
->
type
!=
IEEE80211_WORK_ASSOC
)
continue
;
if
(
memcmp
(
req
->
bss
->
bssid
,
wk
->
filter_ta
,
ETH_ALEN
))
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录