Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
8a05ba08
K
Kernel
项目概览
openeuler
/
Kernel
1 年多 前同步成功
通知
8
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看板
提交
8a05ba08
编写于
5月 07, 2012
作者:
D
David S. Miller
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'master' of
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next
上级
ec47ea82
e1abc1bb
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
69 addition
and
29 deletion
+69
-29
drivers/net/ethernet/intel/e1000e/82571.c
drivers/net/ethernet/intel/e1000e/82571.c
+11
-1
drivers/net/ethernet/intel/e1000e/netdev.c
drivers/net/ethernet/intel/e1000e/netdev.c
+1
-1
drivers/net/ethernet/intel/e1000e/phy.c
drivers/net/ethernet/intel/e1000e/phy.c
+45
-26
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
+7
-0
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
+5
-1
未找到文件。
drivers/net/ethernet/intel/e1000e/82571.c
浏览文件 @
8a05ba08
...
...
@@ -999,7 +999,7 @@ static s32 e1000_set_d0_lplu_state_82571(struct e1000_hw *hw, bool active)
**/
static
s32
e1000_reset_hw_82571
(
struct
e1000_hw
*
hw
)
{
u32
ctrl
,
ctrl_ext
;
u32
ctrl
,
ctrl_ext
,
eecd
;
s32
ret_val
;
/*
...
...
@@ -1072,6 +1072,16 @@ static s32 e1000_reset_hw_82571(struct e1000_hw *hw)
*/
switch
(
hw
->
mac
.
type
)
{
case
e1000_82571
:
case
e1000_82572
:
/*
* REQ and GNT bits need to be cleared when using AUTO_RD
* to access the EEPROM.
*/
eecd
=
er32
(
EECD
);
eecd
&=
~
(
E1000_EECD_REQ
|
E1000_EECD_GNT
);
ew32
(
EECD
,
eecd
);
break
;
case
e1000_82573
:
case
e1000_82574
:
case
e1000_82583
:
...
...
drivers/net/ethernet/intel/e1000e/netdev.c
浏览文件 @
8a05ba08
...
...
@@ -56,7 +56,7 @@
#define DRV_EXTRAVERSION "-k"
#define DRV_VERSION "
1.11.3
" DRV_EXTRAVERSION
#define DRV_VERSION "
2.0.0
" DRV_EXTRAVERSION
char
e1000e_driver_name
[]
=
"e1000e"
;
const
char
e1000e_driver_version
[]
=
DRV_VERSION
;
...
...
drivers/net/ethernet/intel/e1000e/phy.c
浏览文件 @
8a05ba08
...
...
@@ -638,6 +638,45 @@ s32 e1000e_write_kmrn_reg_locked(struct e1000_hw *hw, u32 offset, u16 data)
return
__e1000_write_kmrn_reg
(
hw
,
offset
,
data
,
true
);
}
/**
* e1000_set_master_slave_mode - Setup PHY for Master/slave mode
* @hw: pointer to the HW structure
*
* Sets up Master/slave mode
**/
static
s32
e1000_set_master_slave_mode
(
struct
e1000_hw
*
hw
)
{
s32
ret_val
;
u16
phy_data
;
/* Resolve Master/Slave mode */
ret_val
=
e1e_rphy
(
hw
,
PHY_1000T_CTRL
,
&
phy_data
);
if
(
ret_val
)
return
ret_val
;
/* load defaults for future use */
hw
->
phy
.
original_ms_type
=
(
phy_data
&
CR_1000T_MS_ENABLE
)
?
((
phy_data
&
CR_1000T_MS_VALUE
)
?
e1000_ms_force_master
:
e1000_ms_force_slave
)
:
e1000_ms_auto
;
switch
(
hw
->
phy
.
ms_type
)
{
case
e1000_ms_force_master
:
phy_data
|=
(
CR_1000T_MS_ENABLE
|
CR_1000T_MS_VALUE
);
break
;
case
e1000_ms_force_slave
:
phy_data
|=
CR_1000T_MS_ENABLE
;
phy_data
&=
~
(
CR_1000T_MS_VALUE
);
break
;
case
e1000_ms_auto
:
phy_data
&=
~
CR_1000T_MS_ENABLE
;
/* fall-through */
default:
break
;
}
return
e1e_wphy
(
hw
,
PHY_1000T_CTRL
,
phy_data
);
}
/**
* e1000_copper_link_setup_82577 - Setup 82577 PHY for copper link
* @hw: pointer to the HW structure
...
...
@@ -659,7 +698,11 @@ s32 e1000_copper_link_setup_82577(struct e1000_hw *hw)
/* Enable downshift */
phy_data
|=
I82577_CFG_ENABLE_DOWNSHIFT
;
return
e1e_wphy
(
hw
,
I82577_CFG_REG
,
phy_data
);
ret_val
=
e1e_wphy
(
hw
,
I82577_CFG_REG
,
phy_data
);
if
(
ret_val
)
return
ret_val
;
return
e1000_set_master_slave_mode
(
hw
);
}
/**
...
...
@@ -895,31 +938,7 @@ s32 e1000e_copper_link_setup_igp(struct e1000_hw *hw)
return
ret_val
;
}
ret_val
=
e1e_rphy
(
hw
,
PHY_1000T_CTRL
,
&
data
);
if
(
ret_val
)
return
ret_val
;
/* load defaults for future use */
phy
->
original_ms_type
=
(
data
&
CR_1000T_MS_ENABLE
)
?
((
data
&
CR_1000T_MS_VALUE
)
?
e1000_ms_force_master
:
e1000_ms_force_slave
)
:
e1000_ms_auto
;
switch
(
phy
->
ms_type
)
{
case
e1000_ms_force_master
:
data
|=
(
CR_1000T_MS_ENABLE
|
CR_1000T_MS_VALUE
);
break
;
case
e1000_ms_force_slave
:
data
|=
CR_1000T_MS_ENABLE
;
data
&=
~
(
CR_1000T_MS_VALUE
);
break
;
case
e1000_ms_auto
:
data
&=
~
CR_1000T_MS_ENABLE
;
default:
break
;
}
ret_val
=
e1e_wphy
(
hw
,
PHY_1000T_CTRL
,
data
);
ret_val
=
e1000_set_master_slave_mode
(
hw
);
}
return
ret_val
;
...
...
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.c
浏览文件 @
8a05ba08
...
...
@@ -662,6 +662,13 @@ static int ixgbe_dcbnl_ieee_setpfc(struct net_device *dev,
return
-
ENOMEM
;
}
if
(
pfc
->
pfc_en
)
{
adapter
->
last_lfc_mode
=
adapter
->
hw
.
fc
.
current_mode
;
adapter
->
hw
.
fc
.
current_mode
=
ixgbe_fc_pfc
;
}
else
{
adapter
->
hw
.
fc
.
current_mode
=
adapter
->
last_lfc_mode
;
}
prio_tc
=
adapter
->
ixgbe_ieee_ets
->
prio_tc
;
memcpy
(
adapter
->
ixgbe_ieee_pfc
,
pfc
,
sizeof
(
*
adapter
->
ixgbe_ieee_pfc
));
return
ixgbe_dcb_hw_pfc_config
(
&
adapter
->
hw
,
pfc
->
pfc_en
,
prio_tc
);
...
...
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
浏览文件 @
8a05ba08
...
...
@@ -637,7 +637,11 @@ static void ixgbe_update_xoff_received(struct ixgbe_adapter *adapter)
clear_bit
(
__IXGBE_HANG_CHECK_ARMED
,
&
adapter
->
tx_ring
[
i
]
->
state
);
return
;
}
else
if
(
!
(
adapter
->
dcb_cfg
.
pfc_mode_enable
))
}
else
if
(((
adapter
->
dcbx_cap
&
DCB_CAP_DCBX_VER_CEE
)
&&
!
(
adapter
->
dcb_cfg
.
pfc_mode_enable
))
||
((
adapter
->
dcbx_cap
&
DCB_CAP_DCBX_VER_IEEE
)
&&
adapter
->
ixgbe_ieee_pfc
&&
!
(
adapter
->
ixgbe_ieee_pfc
->
pfc_en
)))
return
;
/* update stats for each tc, only valid with PFC enabled */
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录