Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
kernel_linux
提交
5b67b3c0
K
kernel_linux
项目概览
OpenHarmony
/
kernel_linux
上一次同步 3 年多
通知
13
Star
8
Fork
2
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
kernel_linux
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
5b67b3c0
编写于
11月 03, 2011
作者:
D
David S. Miller
浏览文件
操作
浏览文件
下载
差异文件
Merge
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net
上级
eea49cc9
c1a7e1eb
变更
8
隐藏空白更改
内联
并排
Showing
8 changed file
with
45 addition
and
46 deletion
+45
-46
drivers/net/ethernet/intel/e100.c
drivers/net/ethernet/intel/e100.c
+4
-0
drivers/net/ethernet/intel/e1000e/ich8lan.c
drivers/net/ethernet/intel/e1000e/ich8lan.c
+1
-2
drivers/net/ethernet/intel/igb/e1000_phy.c
drivers/net/ethernet/intel/igb/e1000_phy.c
+1
-1
drivers/net/ethernet/intel/ixgbe/ixgbe_common.c
drivers/net/ethernet/intel/ixgbe/ixgbe_common.c
+11
-9
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
+6
-4
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
+19
-29
drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.h
drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.h
+2
-0
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
+1
-1
未找到文件。
drivers/net/ethernet/intel/e100.c
浏览文件 @
5b67b3c0
...
...
@@ -2810,6 +2810,10 @@ static int __devinit e100_probe(struct pci_dev *pdev,
e100_get_defaults
(
nic
);
/* D100 MAC doesn't allow rx of vlan packets with normal MTU */
if
(
nic
->
mac
<
mac_82558_D101_A4
)
netdev
->
features
|=
NETIF_F_VLAN_CHALLENGED
;
/* locks must be initialized before calling hw_reset */
spin_lock_init
(
&
nic
->
cb_lock
);
spin_lock_init
(
&
nic
->
cmd_lock
);
...
...
drivers/net/ethernet/intel/e1000e/ich8lan.c
浏览文件 @
5b67b3c0
...
...
@@ -866,8 +866,7 @@ static s32 e1000_acquire_swflag_ich8lan(struct e1000_hw *hw)
if
(
test_and_set_bit
(
__E1000_ACCESS_SHARED_RESOURCE
,
&
hw
->
adapter
->
state
))
{
WARN
(
1
,
"e1000e: %s: contention for Phy access
\n
"
,
hw
->
adapter
->
netdev
->
name
);
e_dbg
(
"contention for Phy access
\n
"
);
return
-
E1000_ERR_PHY
;
}
...
...
drivers/net/ethernet/intel/igb/e1000_phy.c
浏览文件 @
5b67b3c0
...
...
@@ -1687,7 +1687,7 @@ s32 igb_get_cable_length_m88_gen2(struct e1000_hw *hw)
if
(
ret_val
)
goto
out
;
is_cm
=
!
(
phy_data
&
I347AT4_PCDC_CABLE_LENGTH_UNIT
);
is_cm
=
!
(
phy_data
2
&
I347AT4_PCDC_CABLE_LENGTH_UNIT
);
/* Populate the phy structure with cable length in meters */
phy
->
min_cable_length
=
phy_data
/
(
is_cm
?
100
:
1
);
...
...
drivers/net/ethernet/intel/ixgbe/ixgbe_common.c
浏览文件 @
5b67b3c0
...
...
@@ -3344,7 +3344,7 @@ static u8 ixgbe_calculate_checksum(u8 *buffer, u32 length)
static
s32
ixgbe_host_interface_command
(
struct
ixgbe_hw
*
hw
,
u32
*
buffer
,
u32
length
)
{
u32
hicr
,
i
;
u32
hicr
,
i
,
bi
;
u32
hdr_size
=
sizeof
(
struct
ixgbe_hic_hdr
);
u8
buf_len
,
dword_len
;
...
...
@@ -3398,9 +3398,9 @@ static s32 ixgbe_host_interface_command(struct ixgbe_hw *hw, u32 *buffer,
dword_len
=
hdr_size
>>
2
;
/* first pull in the header so we know the buffer length */
for
(
i
=
0
;
i
<
dword_len
;
i
++
)
{
buffer
[
i
]
=
IXGBE_READ_REG_ARRAY
(
hw
,
IXGBE_FLEX_MNG
,
i
);
le32_to_cpus
(
&
buffer
[
i
]);
for
(
bi
=
0
;
bi
<
dword_len
;
b
i
++
)
{
buffer
[
bi
]
=
IXGBE_READ_REG_ARRAY
(
hw
,
IXGBE_FLEX_MNG
,
b
i
);
le32_to_cpus
(
&
buffer
[
b
i
]);
}
/* If there is any thing in data position pull it in */
...
...
@@ -3414,12 +3414,14 @@ static s32 ixgbe_host_interface_command(struct ixgbe_hw *hw, u32 *buffer,
goto
out
;
}
/* Calculate length in DWORDs, add
one
for odd lengths */
dword_len
=
(
buf_len
+
1
)
>>
2
;
/* Calculate length in DWORDs, add
3
for odd lengths */
dword_len
=
(
buf_len
+
3
)
>>
2
;
/* Pull in the rest of the buffer (i is where we left off)*/
for
(;
i
<
buf_len
;
i
++
)
buffer
[
i
]
=
IXGBE_READ_REG_ARRAY
(
hw
,
IXGBE_FLEX_MNG
,
i
);
/* Pull in the rest of the buffer (bi is where we left off)*/
for
(;
bi
<=
dword_len
;
bi
++
)
{
buffer
[
bi
]
=
IXGBE_READ_REG_ARRAY
(
hw
,
IXGBE_FLEX_MNG
,
bi
);
le32_to_cpus
(
&
buffer
[
bi
]);
}
out:
return
ret_val
;
...
...
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
浏览文件 @
5b67b3c0
...
...
@@ -561,11 +561,12 @@ static int ixgbe_dcbnl_ieee_getets(struct net_device *dev,
struct
ixgbe_adapter
*
adapter
=
netdev_priv
(
dev
);
struct
ieee_ets
*
my_ets
=
adapter
->
ixgbe_ieee_ets
;
ets
->
ets_cap
=
adapter
->
dcb_cfg
.
num_tcs
.
pg_tcs
;
/* No IEEE PFC settings available */
if
(
!
my_ets
)
return
-
EINVAL
;
return
0
;
ets
->
ets_cap
=
adapter
->
dcb_cfg
.
num_tcs
.
pg_tcs
;
ets
->
cbs
=
my_ets
->
cbs
;
memcpy
(
ets
->
tc_tx_bw
,
my_ets
->
tc_tx_bw
,
sizeof
(
ets
->
tc_tx_bw
));
memcpy
(
ets
->
tc_rx_bw
,
my_ets
->
tc_rx_bw
,
sizeof
(
ets
->
tc_rx_bw
));
...
...
@@ -621,11 +622,12 @@ static int ixgbe_dcbnl_ieee_getpfc(struct net_device *dev,
struct
ieee_pfc
*
my_pfc
=
adapter
->
ixgbe_ieee_pfc
;
int
i
;
pfc
->
pfc_cap
=
adapter
->
dcb_cfg
.
num_tcs
.
pfc_tcs
;
/* No IEEE PFC settings available */
if
(
!
my_pfc
)
return
-
EINVAL
;
return
0
;
pfc
->
pfc_cap
=
adapter
->
dcb_cfg
.
num_tcs
.
pfc_tcs
;
pfc
->
pfc_en
=
my_pfc
->
pfc_en
;
pfc
->
mbc
=
my_pfc
->
mbc
;
pfc
->
delay
=
my_pfc
->
delay
;
...
...
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
浏览文件 @
5b67b3c0
...
...
@@ -3345,34 +3345,25 @@ static void ixgbe_configure_dcb(struct ixgbe_adapter *adapter)
hw
->
mac
.
ops
.
set_vfta
(
&
adapter
->
hw
,
0
,
0
,
true
);
/* reconfigure the hardware */
if
(
adapter
->
dcbx_cap
&
DCB_CAP_DCBX_VER_CEE
)
{
#ifdef IXGBE_FCOE
if
(
adapter
->
netdev
->
features
&
NETIF_F_FCOE_MTU
)
max_frame
=
max
(
max_frame
,
IXGBE_FCOE_JUMBO_FRAME_SIZE
);
if
(
adapter
->
netdev
->
features
&
NETIF_F_FCOE_MTU
)
max_frame
=
max
(
max_frame
,
IXGBE_FCOE_JUMBO_FRAME_SIZE
);
#endif
/* reconfigure the hardware */
if
(
adapter
->
dcbx_cap
&
DCB_CAP_DCBX_VER_CEE
)
{
ixgbe_dcb_calculate_tc_credits
(
hw
,
&
adapter
->
dcb_cfg
,
max_frame
,
DCB_TX_CONFIG
);
ixgbe_dcb_calculate_tc_credits
(
hw
,
&
adapter
->
dcb_cfg
,
max_frame
,
DCB_RX_CONFIG
);
ixgbe_dcb_hw_config
(
hw
,
&
adapter
->
dcb_cfg
);
}
else
{
struct
net_device
*
dev
=
adapter
->
netdev
;
if
(
adapter
->
ixgbe_ieee_ets
)
{
struct
ieee_ets
*
ets
=
adapter
->
ixgbe_ieee_ets
;
int
max_frame
=
dev
->
mtu
+
ETH_HLEN
+
ETH_FCS_LEN
;
ixgbe_dcb_hw_ets
(
&
adapter
->
hw
,
ets
,
max_frame
);
}
if
(
adapter
->
ixgbe_ieee_pfc
)
{
struct
ieee_pfc
*
pfc
=
adapter
->
ixgbe_ieee_pfc
;
u8
*
prio_tc
=
adapter
->
ixgbe_ieee_ets
->
prio_tc
;
ixgbe_dcb_hw_pfc_config
(
&
adapter
->
hw
,
pfc
->
pfc_en
,
prio_tc
);
}
}
else
if
(
adapter
->
ixgbe_ieee_ets
&&
adapter
->
ixgbe_ieee_pfc
)
{
ixgbe_dcb_hw_ets
(
&
adapter
->
hw
,
adapter
->
ixgbe_ieee_ets
,
max_frame
);
ixgbe_dcb_hw_pfc_config
(
&
adapter
->
hw
,
adapter
->
ixgbe_ieee_pfc
->
pfc_en
,
adapter
->
ixgbe_ieee_ets
->
prio_tc
);
}
/* Enable RSS Hash per TC */
...
...
@@ -6125,7 +6116,6 @@ static void ixgbe_sfp_link_config_subtask(struct ixgbe_adapter *adapter)
autoneg
=
hw
->
phy
.
autoneg_advertised
;
if
((
!
autoneg
)
&&
(
hw
->
mac
.
ops
.
get_link_capabilities
))
hw
->
mac
.
ops
.
get_link_capabilities
(
hw
,
&
autoneg
,
&
negotiation
);
hw
->
mac
.
autotry_restart
=
false
;
if
(
hw
->
mac
.
ops
.
setup_link
)
hw
->
mac
.
ops
.
setup_link
(
hw
,
autoneg
,
negotiation
,
true
);
...
...
@@ -7589,13 +7579,6 @@ static int __devinit ixgbe_probe(struct pci_dev *pdev,
goto
err_eeprom
;
}
/* power down the optics for multispeed fiber and 82599 SFP+ fiber */
if
(
hw
->
mac
.
ops
.
disable_tx_laser
&&
((
hw
->
phy
.
multispeed_fiber
)
||
((
hw
->
mac
.
ops
.
get_media_type
(
hw
)
==
ixgbe_media_type_fiber
)
&&
(
hw
->
mac
.
type
==
ixgbe_mac_82599EB
))))
hw
->
mac
.
ops
.
disable_tx_laser
(
hw
);
setup_timer
(
&
adapter
->
service_timer
,
&
ixgbe_service_timer
,
(
unsigned
long
)
adapter
);
...
...
@@ -7693,6 +7676,13 @@ static int __devinit ixgbe_probe(struct pci_dev *pdev,
if
(
err
)
goto
err_register
;
/* power down the optics for multispeed fiber and 82599 SFP+ fiber */
if
(
hw
->
mac
.
ops
.
disable_tx_laser
&&
((
hw
->
phy
.
multispeed_fiber
)
||
((
hw
->
mac
.
ops
.
get_media_type
(
hw
)
==
ixgbe_media_type_fiber
)
&&
(
hw
->
mac
.
type
==
ixgbe_mac_82599EB
))))
hw
->
mac
.
ops
.
disable_tx_laser
(
hw
);
/* carrier off reporting is important to ethtool even BEFORE open */
netif_carrier_off
(
netdev
);
...
...
drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.h
浏览文件 @
5b67b3c0
...
...
@@ -42,10 +42,12 @@ int ixgbe_ndo_set_vf_spoofchk(struct net_device *netdev, int vf, bool setting);
int
ixgbe_ndo_get_vf_config
(
struct
net_device
*
netdev
,
int
vf
,
struct
ifla_vf_info
*
ivi
);
void
ixgbe_check_vf_rate_limit
(
struct
ixgbe_adapter
*
adapter
);
#ifdef CONFIG_PCI_IOV
void
ixgbe_disable_sriov
(
struct
ixgbe_adapter
*
adapter
);
void
ixgbe_enable_sriov
(
struct
ixgbe_adapter
*
adapter
,
const
struct
ixgbe_info
*
ii
);
int
ixgbe_check_vf_assignment
(
struct
ixgbe_adapter
*
adapter
);
#endif
#endif
/* _IXGBE_SRIOV_H_ */
...
...
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
浏览文件 @
5b67b3c0
...
...
@@ -54,7 +54,7 @@ char ixgbevf_driver_name[] = "ixgbevf";
static
const
char
ixgbevf_driver_string
[]
=
"Intel(R) 10 Gigabit PCI Express Virtual Function Network Driver"
;
#define DRV_VERSION "2.
1
.0-k"
#define DRV_VERSION "2.
2
.0-k"
const
char
ixgbevf_driver_version
[]
=
DRV_VERSION
;
static
char
ixgbevf_copyright
[]
=
"Copyright (c) 2009 - 2010 Intel Corporation."
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录