Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
031cf0e9
K
Kernel
项目概览
openeuler
/
Kernel
大约 1 年 前同步成功
通知
7
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
Kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
031cf0e9
编写于
1月 19, 2010
作者:
J
John W. Linville
浏览文件
操作
浏览文件
下载
差异文件
Merge
git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6
上级
730dd705
ad580db5
变更
17
隐藏空白更改
内联
并排
Showing
17 changed file
with
119 addition
and
29 deletion
+119
-29
drivers/net/wireless/iwlwifi/iwl-4965.c
drivers/net/wireless/iwlwifi/iwl-4965.c
+1
-1
drivers/net/wireless/iwlwifi/iwl-5000.c
drivers/net/wireless/iwlwifi/iwl-5000.c
+5
-0
drivers/net/wireless/iwlwifi/iwl-core.c
drivers/net/wireless/iwlwifi/iwl-core.c
+25
-20
drivers/net/wireless/iwlwifi/iwl-dev.h
drivers/net/wireless/iwlwifi/iwl-dev.h
+1
-1
drivers/net/wireless/iwlwifi/iwl-devtrace.c
drivers/net/wireless/iwlwifi/iwl-devtrace.c
+26
-0
drivers/net/wireless/iwlwifi/iwl-devtrace.h
drivers/net/wireless/iwlwifi/iwl-devtrace.h
+26
-0
drivers/net/wireless/iwmc3200wifi/commands.c
drivers/net/wireless/iwmc3200wifi/commands.c
+4
-0
drivers/net/wireless/iwmc3200wifi/commands.h
drivers/net/wireless/iwmc3200wifi/commands.h
+1
-0
drivers/net/wireless/p54/p54pci.c
drivers/net/wireless/p54/p54pci.c
+8
-0
drivers/net/wireless/zd1211rw/zd_usb.c
drivers/net/wireless/zd1211rw/zd_usb.c
+1
-0
net/mac80211/cfg.c
net/mac80211/cfg.c
+3
-0
net/mac80211/iface.c
net/mac80211/iface.c
+7
-3
net/mac80211/mlme.c
net/mac80211/mlme.c
+3
-1
net/mac80211/rc80211_pid_algo.c
net/mac80211/rc80211_pid_algo.c
+1
-1
net/mac80211/rx.c
net/mac80211/rx.c
+4
-0
net/wireless/core.c
net/wireless/core.c
+2
-2
net/wireless/sme.c
net/wireless/sme.c
+1
-0
未找到文件。
drivers/net/wireless/iwlwifi/iwl-4965.c
浏览文件 @
031cf0e9
...
...
@@ -1961,7 +1961,7 @@ static void iwl4965_rx_reply_tx(struct iwl_priv *priv,
struct
ieee80211_tx_info
*
info
;
struct
iwl4965_tx_resp
*
tx_resp
=
(
void
*
)
&
pkt
->
u
.
raw
[
0
];
u32
status
=
le32_to_cpu
(
tx_resp
->
u
.
status
);
int
tid
=
MAX_TID_COUNT
-
1
;
int
uninitialized_var
(
tid
)
;
int
sta_id
;
int
freed
;
u8
*
qc
=
NULL
;
...
...
drivers/net/wireless/iwlwifi/iwl-5000.c
浏览文件 @
031cf0e9
...
...
@@ -1600,6 +1600,7 @@ struct iwl_cfg iwl5300_agn_cfg = {
.
use_bsm
=
false
,
.
ht_greenfield_support
=
true
,
.
led_compensation
=
51
,
.
use_rts_for_ht
=
true
,
/* use rts/cts protection */
.
chain_noise_num_beacons
=
IWL_CAL_NUM_BEACONS
,
};
...
...
@@ -1623,6 +1624,7 @@ struct iwl_cfg iwl5100_bgn_cfg = {
.
use_bsm
=
false
,
.
ht_greenfield_support
=
true
,
.
led_compensation
=
51
,
.
use_rts_for_ht
=
true
,
/* use rts/cts protection */
.
chain_noise_num_beacons
=
IWL_CAL_NUM_BEACONS
,
};
...
...
@@ -1668,6 +1670,7 @@ struct iwl_cfg iwl5100_agn_cfg = {
.
use_bsm
=
false
,
.
ht_greenfield_support
=
true
,
.
led_compensation
=
51
,
.
use_rts_for_ht
=
true
,
/* use rts/cts protection */
.
chain_noise_num_beacons
=
IWL_CAL_NUM_BEACONS
,
};
...
...
@@ -1691,6 +1694,7 @@ struct iwl_cfg iwl5350_agn_cfg = {
.
use_bsm
=
false
,
.
ht_greenfield_support
=
true
,
.
led_compensation
=
51
,
.
use_rts_for_ht
=
true
,
/* use rts/cts protection */
.
chain_noise_num_beacons
=
IWL_CAL_NUM_BEACONS
,
};
...
...
@@ -1714,6 +1718,7 @@ struct iwl_cfg iwl5150_agn_cfg = {
.
use_bsm
=
false
,
.
ht_greenfield_support
=
true
,
.
led_compensation
=
51
,
.
use_rts_for_ht
=
true
,
/* use rts/cts protection */
.
chain_noise_num_beacons
=
IWL_CAL_NUM_BEACONS
,
};
...
...
drivers/net/wireless/iwlwifi/iwl-core.c
浏览文件 @
031cf0e9
...
...
@@ -2334,6 +2334,21 @@ static void iwl_ht_conf(struct iwl_priv *priv,
IWL_DEBUG_MAC80211
(
priv
,
"leave
\n
"
);
}
static
inline
void
iwl_set_no_assoc
(
struct
iwl_priv
*
priv
)
{
priv
->
assoc_id
=
0
;
iwl_led_disassociate
(
priv
);
/*
* inform the ucode that there is no longer an
* association and that no more packets should be
* sent
*/
priv
->
staging_rxon
.
filter_flags
&=
~
RXON_FILTER_ASSOC_MSK
;
priv
->
staging_rxon
.
assoc_id
=
0
;
iwlcore_commit_rxon
(
priv
);
}
#define IWL_DELAY_NEXT_SCAN_AFTER_ASSOC (HZ*6)
void
iwl_bss_info_changed
(
struct
ieee80211_hw
*
hw
,
struct
ieee80211_vif
*
vif
,
...
...
@@ -2465,20 +2480,8 @@ void iwl_bss_info_changed(struct ieee80211_hw *hw,
IWL_DELAY_NEXT_SCAN_AFTER_ASSOC
;
if
(
!
iwl_is_rfkill
(
priv
))
priv
->
cfg
->
ops
->
lib
->
post_associate
(
priv
);
}
else
{
priv
->
assoc_id
=
0
;
iwl_led_disassociate
(
priv
);
/*
* inform the ucode that there is no longer an
* association and that no more packets should be
* send
*/
priv
->
staging_rxon
.
filter_flags
&=
~
RXON_FILTER_ASSOC_MSK
;
priv
->
staging_rxon
.
assoc_id
=
0
;
iwlcore_commit_rxon
(
priv
);
}
}
else
iwl_set_no_assoc
(
priv
);
}
if
(
changes
&&
iwl_is_associated
(
priv
)
&&
priv
->
assoc_id
)
{
...
...
@@ -2493,12 +2496,14 @@ void iwl_bss_info_changed(struct ieee80211_hw *hw,
}
}
if
((
changes
&
BSS_CHANGED_BEACON_ENABLED
)
&&
vif
->
bss_conf
.
enable_beacon
)
{
memcpy
(
priv
->
staging_rxon
.
bssid_addr
,
bss_conf
->
bssid
,
ETH_ALEN
);
memcpy
(
priv
->
bssid
,
bss_conf
->
bssid
,
ETH_ALEN
);
iwlcore_config_ap
(
priv
);
if
(
changes
&
BSS_CHANGED_BEACON_ENABLED
)
{
if
(
vif
->
bss_conf
.
enable_beacon
)
{
memcpy
(
priv
->
staging_rxon
.
bssid_addr
,
bss_conf
->
bssid
,
ETH_ALEN
);
memcpy
(
priv
->
bssid
,
bss_conf
->
bssid
,
ETH_ALEN
);
iwlcore_config_ap
(
priv
);
}
else
iwl_set_no_assoc
(
priv
);
}
mutex_unlock
(
&
priv
->
mutex
);
...
...
drivers/net/wireless/iwlwifi/iwl-dev.h
浏览文件 @
031cf0e9
...
...
@@ -712,7 +712,7 @@ extern void iwl_txq_ctx_stop(struct iwl_priv *priv);
extern
int
iwl_queue_space
(
const
struct
iwl_queue
*
q
);
static
inline
int
iwl_queue_used
(
const
struct
iwl_queue
*
q
,
int
i
)
{
return
q
->
write_ptr
>
q
->
read_ptr
?
return
q
->
write_ptr
>
=
q
->
read_ptr
?
(
i
>=
q
->
read_ptr
&&
i
<
q
->
write_ptr
)
:
!
(
i
<
q
->
read_ptr
&&
i
>=
q
->
write_ptr
);
}
...
...
drivers/net/wireless/iwlwifi/iwl-devtrace.c
浏览文件 @
031cf0e9
/******************************************************************************
*
* Copyright(c) 2009 - 2010 Intel Corporation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of version 2 of the GNU General Public License as
* published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License along with
* this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
*
* The full GNU General Public License is included in this distribution in the
* file called LICENSE.
*
* Contact Information:
* Intel Linux Wireless <ilw@linux.intel.com>
* Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497
*
*****************************************************************************/
#include <linux/module.h>
/* sparse doesn't like tracepoint macros */
...
...
drivers/net/wireless/iwlwifi/iwl-devtrace.h
浏览文件 @
031cf0e9
/******************************************************************************
*
* Copyright(c) 2009 - 2010 Intel Corporation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of version 2 of the GNU General Public License as
* published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License along with
* this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
*
* The full GNU General Public License is included in this distribution in the
* file called LICENSE.
*
* Contact Information:
* Intel Linux Wireless <ilw@linux.intel.com>
* Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497
*
*****************************************************************************/
#if !defined(__IWLWIFI_DEVICE_TRACE) || defined(TRACE_HEADER_MULTI_READ)
#define __IWLWIFI_DEVICE_TRACE
...
...
drivers/net/wireless/iwmc3200wifi/commands.c
浏览文件 @
031cf0e9
...
...
@@ -973,6 +973,10 @@ int iwm_send_pmkid_update(struct iwm_priv *iwm,
memset
(
&
update
,
0
,
sizeof
(
struct
iwm_umac_pmkid_update
));
update
.
hdr
.
oid
=
UMAC_WIFI_IF_CMD_PMKID_UPDATE
;
update
.
hdr
.
buf_size
=
cpu_to_le16
(
sizeof
(
struct
iwm_umac_pmkid_update
)
-
sizeof
(
struct
iwm_umac_wifi_if
));
update
.
command
=
cpu_to_le32
(
command
);
if
(
pmksa
->
bssid
)
memcpy
(
&
update
.
bssid
,
pmksa
->
bssid
,
ETH_ALEN
);
...
...
drivers/net/wireless/iwmc3200wifi/commands.h
浏览文件 @
031cf0e9
...
...
@@ -463,6 +463,7 @@ struct iwm_umac_cmd_stop_resume_tx {
#define IWM_CMD_PMKID_FLUSH 3
struct
iwm_umac_pmkid_update
{
struct
iwm_umac_wifi_if
hdr
;
__le32
command
;
u8
bssid
[
ETH_ALEN
];
__le16
reserved
;
...
...
drivers/net/wireless/p54/p54pci.c
浏览文件 @
031cf0e9
...
...
@@ -197,6 +197,14 @@ static void p54p_check_rx_ring(struct ieee80211_hw *dev, u32 *index,
i
%=
ring_limit
;
continue
;
}
if
(
unlikely
(
len
>
priv
->
common
.
rx_mtu
))
{
if
(
net_ratelimit
())
dev_err
(
&
priv
->
pdev
->
dev
,
"rx'd frame size "
"exceeds length threshold.
\n
"
);
len
=
priv
->
common
.
rx_mtu
;
}
skb_put
(
skb
,
len
);
if
(
p54_rx
(
dev
,
skb
))
{
...
...
drivers/net/wireless/zd1211rw/zd_usb.c
浏览文件 @
031cf0e9
...
...
@@ -62,6 +62,7 @@ static struct usb_device_id usb_ids[] = {
{
USB_DEVICE
(
0x6891
,
0xa727
),
.
driver_info
=
DEVICE_ZD1211
},
/* ZD1211B */
{
USB_DEVICE
(
0x0053
,
0x5301
),
.
driver_info
=
DEVICE_ZD1211B
},
{
USB_DEVICE
(
0x0409
,
0x0248
),
.
driver_info
=
DEVICE_ZD1211B
},
{
USB_DEVICE
(
0x0411
,
0x00da
),
.
driver_info
=
DEVICE_ZD1211B
},
{
USB_DEVICE
(
0x0471
,
0x1236
),
.
driver_info
=
DEVICE_ZD1211B
},
{
USB_DEVICE
(
0x0471
,
0x1237
),
.
driver_info
=
DEVICE_ZD1211B
},
...
...
net/mac80211/cfg.c
浏览文件 @
031cf0e9
...
...
@@ -1389,6 +1389,9 @@ static int ieee80211_set_power_mgmt(struct wiphy *wiphy, struct net_device *dev,
struct
ieee80211_local
*
local
=
wdev_priv
(
dev
->
ieee80211_ptr
);
struct
ieee80211_conf
*
conf
=
&
local
->
hw
.
conf
;
if
(
sdata
->
vif
.
type
!=
NL80211_IFTYPE_STATION
)
return
-
EOPNOTSUPP
;
if
(
!
(
local
->
hw
.
flags
&
IEEE80211_HW_SUPPORTS_PS
))
return
-
EOPNOTSUPP
;
...
...
net/mac80211/iface.c
浏览文件 @
031cf0e9
...
...
@@ -684,21 +684,25 @@ static u16 ieee80211_monitor_select_queue(struct net_device *dev,
struct
ieee80211_local
*
local
=
sdata
->
local
;
struct
ieee80211_hdr
*
hdr
;
struct
ieee80211_radiotap_header
*
rtap
=
(
void
*
)
skb
->
data
;
u8
*
p
;
if
(
local
->
hw
.
queues
<
4
)
return
0
;
if
(
skb
->
len
<
4
||
skb
->
len
<
rtap
->
it_len
+
2
/* frame control */
)
skb
->
len
<
le16_to_cpu
(
rtap
->
it_len
)
+
2
/* frame control */
)
return
0
;
/* doesn't matter, frame will be dropped */
hdr
=
(
void
*
)((
u8
*
)
skb
->
data
+
rtap
->
it_len
);
hdr
=
(
void
*
)((
u8
*
)
skb
->
data
+
le16_to_cpu
(
rtap
->
it_len
)
);
if
(
!
ieee80211_is_data
(
hdr
->
frame_control
))
{
if
(
!
ieee80211_is_data
_qos
(
hdr
->
frame_control
))
{
skb
->
priority
=
7
;
return
ieee802_1d_to_ac
[
skb
->
priority
];
}
p
=
ieee80211_get_qos_ctl
(
hdr
);
skb
->
priority
=
*
p
&
IEEE80211_QOS_CTL_TAG1D_MASK
;
return
ieee80211_downgrade_queue
(
local
,
skb
);
}
...
...
net/mac80211/mlme.c
浏览文件 @
031cf0e9
...
...
@@ -1478,7 +1478,9 @@ static void ieee80211_sta_rx_queued_mgmt(struct ieee80211_sub_if_data *sdata,
rma
=
ieee80211_rx_mgmt_disassoc
(
sdata
,
mgmt
,
skb
->
len
);
break
;
case
IEEE80211_STYPE_ACTION
:
/* XXX: differentiate, can only happen for CSA now! */
if
(
mgmt
->
u
.
action
.
category
!=
WLAN_CATEGORY_SPECTRUM_MGMT
)
break
;
ieee80211_sta_process_chanswitch
(
sdata
,
&
mgmt
->
u
.
action
.
u
.
chan_switch
.
sw_elem
,
(
void
*
)
ifmgd
->
associated
->
priv
);
...
...
net/mac80211/rc80211_pid_algo.c
浏览文件 @
031cf0e9
...
...
@@ -190,7 +190,7 @@ static void rate_control_pid_sample(struct rc_pid_info *pinfo,
rate_control_pid_normalize
(
pinfo
,
sband
->
n_bitrates
);
/* Compute the proportional, integral and derivative errors. */
err_prop
=
(
pinfo
->
target
<<
RC_PID_ARITH_SHIFT
)
-
pf
;
err_prop
=
(
pinfo
->
target
-
pf
)
<<
RC_PID_ARITH_SHIFT
;
err_avg
=
spinfo
->
err_avg_sc
>>
pinfo
->
smoothing_shift
;
spinfo
->
err_avg_sc
=
spinfo
->
err_avg_sc
-
err_avg
+
err_prop
;
...
...
net/mac80211/rx.c
浏览文件 @
031cf0e9
...
...
@@ -1946,6 +1946,10 @@ ieee80211_rx_h_action(struct ieee80211_rx_data *rx)
}
break
;
default:
/* do not process rejected action frames */
if
(
mgmt
->
u
.
action
.
category
&
0x80
)
return
RX_DROP_MONITOR
;
return
RX_CONTINUE
;
}
...
...
net/wireless/core.c
浏览文件 @
031cf0e9
...
...
@@ -746,9 +746,9 @@ static int cfg80211_netdev_notifier_call(struct notifier_block * nb,
mutex_unlock
(
&
rdev
->
devlist_mtx
);
dev_put
(
dev
);
}
#ifdef CONFIG_CFG80211_WEXT
cfg80211_lock_rdev
(
rdev
);
mutex_lock
(
&
rdev
->
devlist_mtx
);
#ifdef CONFIG_CFG80211_WEXT
wdev_lock
(
wdev
);
switch
(
wdev
->
iftype
)
{
case
NL80211_IFTYPE_ADHOC
:
...
...
@@ -761,10 +761,10 @@ static int cfg80211_netdev_notifier_call(struct notifier_block * nb,
break
;
}
wdev_unlock
(
wdev
);
#endif
rdev
->
opencount
++
;
mutex_unlock
(
&
rdev
->
devlist_mtx
);
cfg80211_unlock_rdev
(
rdev
);
#endif
break
;
case
NETDEV_UNREGISTER
:
/*
...
...
net/wireless/sme.c
浏览文件 @
031cf0e9
...
...
@@ -656,6 +656,7 @@ void __cfg80211_disconnected(struct net_device *dev, const u8 *ie,
memset
(
&
wrqu
,
0
,
sizeof
(
wrqu
));
wrqu
.
ap_addr
.
sa_family
=
ARPHRD_ETHER
;
wireless_send_event
(
dev
,
SIOCGIWAP
,
&
wrqu
,
NULL
);
wdev
->
wext
.
connect
.
ssid_len
=
0
;
#endif
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录