Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
cloud-kernel
提交
03747377
cloud-kernel
项目概览
openanolis
/
cloud-kernel
1 年多 前同步成功
通知
161
Star
36
Fork
7
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
10
列表
看板
标记
里程碑
合并请求
2
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
cloud-kernel
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
10
Issue
10
列表
看板
标记
里程碑
合并请求
2
合并请求
2
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
03747377
编写于
9月 07, 2012
作者:
J
John W. Linville
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'for-john' of
git://git.kernel.org/pub/scm/linux/kernel/git/iwlwifi/iwlwifi-next
上级
4a3e12fd
c5d47221
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
37 addition
and
39 deletion
+37
-39
drivers/net/wireless/iwlwifi/dvm/commands.h
drivers/net/wireless/iwlwifi/dvm/commands.h
+2
-1
drivers/net/wireless/iwlwifi/dvm/dev.h
drivers/net/wireless/iwlwifi/dvm/dev.h
+1
-0
drivers/net/wireless/iwlwifi/dvm/rx.c
drivers/net/wireless/iwlwifi/dvm/rx.c
+11
-0
drivers/net/wireless/iwlwifi/iwl-devtrace.h
drivers/net/wireless/iwlwifi/iwl-devtrace.h
+21
-13
drivers/net/wireless/iwlwifi/iwl-eeprom-parse.h
drivers/net/wireless/iwlwifi/iwl-eeprom-parse.h
+0
-2
drivers/net/wireless/iwlwifi/pcie/tx.c
drivers/net/wireless/iwlwifi/pcie/tx.c
+2
-23
未找到文件。
drivers/net/wireless/iwlwifi/dvm/commands.h
浏览文件 @
03747377
...
...
@@ -1055,8 +1055,9 @@ struct iwl_wep_cmd {
#define RX_RES_PHY_FLAGS_MOD_CCK_MSK cpu_to_le16(1 << 1)
#define RX_RES_PHY_FLAGS_SHORT_PREAMBLE_MSK cpu_to_le16(1 << 2)
#define RX_RES_PHY_FLAGS_NARROW_BAND_MSK cpu_to_le16(1 << 3)
#define RX_RES_PHY_FLAGS_ANTENNA_MSK 0x
f
0
#define RX_RES_PHY_FLAGS_ANTENNA_MSK 0x
7
0
#define RX_RES_PHY_FLAGS_ANTENNA_POS 4
#define RX_RES_PHY_FLAGS_AGG_MSK cpu_to_le16(1 << 7)
#define RX_RES_STATUS_SEC_TYPE_MSK (0x7 << 8)
#define RX_RES_STATUS_SEC_TYPE_NONE (0x0 << 8)
...
...
drivers/net/wireless/iwlwifi/dvm/dev.h
浏览文件 @
03747377
...
...
@@ -771,6 +771,7 @@ struct iwl_priv {
u8
agg_tids_count
;
struct
iwl_rx_phy_res
last_phy_res
;
u32
ampdu_ref
;
bool
last_phy_res_valid
;
/*
...
...
drivers/net/wireless/iwlwifi/dvm/rx.c
浏览文件 @
03747377
...
...
@@ -667,6 +667,7 @@ static int iwlagn_rx_reply_rx_phy(struct iwl_priv *priv,
struct
iwl_rx_packet
*
pkt
=
rxb_addr
(
rxb
);
priv
->
last_phy_res_valid
=
true
;
priv
->
ampdu_ref
++
;
memcpy
(
&
priv
->
last_phy_res
,
pkt
->
data
,
sizeof
(
struct
iwl_rx_phy_res
));
return
0
;
...
...
@@ -981,6 +982,16 @@ static int iwlagn_rx_reply_rx(struct iwl_priv *priv,
if
(
phy_res
->
phy_flags
&
RX_RES_PHY_FLAGS_SHORT_PREAMBLE_MSK
)
rx_status
.
flag
|=
RX_FLAG_SHORTPRE
;
if
(
phy_res
->
phy_flags
&
RX_RES_PHY_FLAGS_AGG_MSK
)
{
/*
* We know which subframes of an A-MPDU belong
* together since we get a single PHY response
* from the firmware for all of them
*/
rx_status
.
flag
|=
RX_FLAG_AMPDU_DETAILS
;
rx_status
.
ampdu_reference
=
priv
->
ampdu_ref
;
}
/* Set up the HT phy flags */
if
(
rate_n_flags
&
RATE_MCS_HT_MSK
)
rx_status
.
flag
|=
RX_FLAG_HT
;
...
...
drivers/net/wireless/iwlwifi/iwl-devtrace.h
浏览文件 @
03747377
...
...
@@ -29,6 +29,7 @@
#include <linux/tracepoint.h>
#include <linux/device.h>
#include "iwl-trans.h"
#if !defined(CONFIG_IWLWIFI_DEVICE_TRACING) || defined(__CHECKER__)
...
...
@@ -237,27 +238,34 @@ TRACE_EVENT(iwlwifi_dbg,
#define TRACE_SYSTEM iwlwifi
TRACE_EVENT
(
iwlwifi_dev_hcmd
,
TP_PROTO
(
const
struct
device
*
dev
,
u32
flags
,
const
void
*
hcmd0
,
size_t
len0
,
const
void
*
hcmd1
,
size_t
len1
,
const
void
*
hcmd2
,
size_t
len2
),
TP_ARGS
(
dev
,
flags
,
hcmd0
,
len0
,
hcmd1
,
len1
,
hcmd2
,
len2
),
TP_PROTO
(
const
struct
device
*
dev
,
struct
iwl_host_cmd
*
cmd
,
u16
total_size
,
const
void
*
hdr
,
size_t
hdr_len
),
TP_ARGS
(
dev
,
cmd
,
total_size
,
hdr
,
hdr_len
),
TP_STRUCT__entry
(
DEV_ENTRY
__dynamic_array
(
u8
,
hcmd0
,
len0
)
__dynamic_array
(
u8
,
hcmd1
,
len1
)
__dynamic_array
(
u8
,
hcmd2
,
len2
)
__dynamic_array
(
u8
,
hcmd
,
total_size
)
__field
(
u32
,
flags
)
),
TP_fast_assign
(
int
i
,
offset
=
hdr_len
;
DEV_ASSIGN
;
memcpy
(
__get_dynamic_array
(
hcmd0
),
hcmd0
,
len0
);
memcpy
(
__get_dynamic_array
(
hcmd1
),
hcmd1
,
len1
);
memcpy
(
__get_dynamic_array
(
hcmd2
),
hcmd2
,
len2
);
__entry
->
flags
=
flags
;
__entry
->
flags
=
cmd
->
flags
;
memcpy
(
__get_dynamic_array
(
hcmd
),
hdr
,
hdr_len
);
for
(
i
=
0
;
i
<
IWL_MAX_CMD_TFDS
;
i
++
)
{
if
(
!
cmd
->
len
[
i
])
continue
;
if
(
!
(
cmd
->
dataflags
[
i
]
&
IWL_HCMD_DFL_NOCOPY
))
continue
;
memcpy
((
u8
*
)
__get_dynamic_array
(
hcmd
)
+
offset
,
cmd
->
data
[
i
],
cmd
->
len
[
i
]);
offset
+=
cmd
->
len
[
i
];
}
),
TP_printk
(
"[%s] hcmd %#.2x (%ssync)"
,
__get_str
(
dev
),
((
u8
*
)
__get_dynamic_array
(
hcmd
0
))[
0
],
__get_str
(
dev
),
((
u8
*
)
__get_dynamic_array
(
hcmd
))[
0
],
__entry
->
flags
&
CMD_ASYNC
?
"a"
:
""
)
);
...
...
drivers/net/wireless/iwlwifi/iwl-eeprom-parse.h
浏览文件 @
03747377
...
...
@@ -85,8 +85,6 @@ struct iwl_eeprom_data {
int
n_hw_addrs
;
u8
hw_addr
[
ETH_ALEN
];
u16
radio_config
;
u8
calib_version
;
__le16
calib_voltage
;
...
...
drivers/net/wireless/iwlwifi/pcie/tx.c
浏览文件 @
03747377
...
...
@@ -522,11 +522,6 @@ static int iwl_enqueue_hcmd(struct iwl_trans *trans, struct iwl_host_cmd *cmd)
bool
had_nocopy
=
false
;
int
i
;
u32
cmd_pos
;
#ifdef CONFIG_IWLWIFI_DEVICE_TRACING
const
void
*
trace_bufs
[
IWL_MAX_CMD_TFDS
+
1
]
=
{};
int
trace_lens
[
IWL_MAX_CMD_TFDS
+
1
]
=
{};
int
trace_idx
;
#endif
copy_size
=
sizeof
(
out_cmd
->
hdr
);
cmd_size
=
sizeof
(
out_cmd
->
hdr
);
...
...
@@ -628,11 +623,6 @@ static int iwl_enqueue_hcmd(struct iwl_trans *trans, struct iwl_host_cmd *cmd)
dma_unmap_len_set
(
out_meta
,
len
,
copy_size
);
iwlagn_txq_attach_buf_to_tfd
(
trans
,
txq
,
phys_addr
,
copy_size
,
1
);
#ifdef CONFIG_IWLWIFI_DEVICE_TRACING
trace_bufs
[
0
]
=
&
out_cmd
->
hdr
;
trace_lens
[
0
]
=
copy_size
;
trace_idx
=
1
;
#endif
for
(
i
=
0
;
i
<
IWL_MAX_CMD_TFDS
;
i
++
)
{
if
(
!
cmd
->
len
[
i
])
...
...
@@ -651,25 +641,14 @@ static int iwl_enqueue_hcmd(struct iwl_trans *trans, struct iwl_host_cmd *cmd)
iwlagn_txq_attach_buf_to_tfd
(
trans
,
txq
,
phys_addr
,
cmd
->
len
[
i
],
0
);
#ifdef CONFIG_IWLWIFI_DEVICE_TRACING
trace_bufs
[
trace_idx
]
=
cmd
->
data
[
i
];
trace_lens
[
trace_idx
]
=
cmd
->
len
[
i
];
trace_idx
++
;
#endif
}
out_meta
->
flags
=
cmd
->
flags
;
txq
->
need_update
=
1
;
/* check that tracing gets all possible blocks */
BUILD_BUG_ON
(
IWL_MAX_CMD_TFDS
+
1
!=
3
);
#ifdef CONFIG_IWLWIFI_DEVICE_TRACING
trace_iwlwifi_dev_hcmd
(
trans
->
dev
,
cmd
->
flags
,
trace_bufs
[
0
],
trace_lens
[
0
],
trace_bufs
[
1
],
trace_lens
[
1
],
trace_bufs
[
2
],
trace_lens
[
2
]);
#endif
trace_iwlwifi_dev_hcmd
(
trans
->
dev
,
cmd
,
cmd_size
,
&
out_cmd
->
hdr
,
copy_size
);
/* start timer if queue currently empty */
if
(
q
->
read_ptr
==
q
->
write_ptr
&&
trans_pcie
->
wd_timeout
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录