Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
Kernel
提交
bdad69b2
K
Kernel
项目概览
openeuler
/
Kernel
接近 2 年 前同步成功
通知
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看板
提交
bdad69b2
编写于
5月 23, 2006
作者:
J
Jeff Garzik
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'e1000-7.0.38-k4' of
git://lost.foo-projects.org/~ahkok/git/netdev-2.6
into upstream
上级
9528454f
440c052d
变更
5
显示空白变更内容
内联
并排
Showing
5 changed file
with
104 addition
and
135 deletion
+104
-135
drivers/net/e1000/Makefile
drivers/net/e1000/Makefile
+1
-1
drivers/net/e1000/e1000_ethtool.c
drivers/net/e1000/e1000_ethtool.c
+22
-22
drivers/net/e1000/e1000_hw.c
drivers/net/e1000/e1000_hw.c
+56
-56
drivers/net/e1000/e1000_hw.h
drivers/net/e1000/e1000_hw.h
+2
-2
drivers/net/e1000/e1000_main.c
drivers/net/e1000/e1000_main.c
+23
-54
未找到文件。
drivers/net/e1000/Makefile
浏览文件 @
bdad69b2
################################################################################
################################################################################
#
#
#
#
# Copyright(c) 1999 - 200
3
Intel Corporation. All rights reserved.
# Copyright(c) 1999 - 200
6
Intel Corporation. All rights reserved.
#
#
# This program is free software; you can redistribute it and/or modify it
# This program is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the Free
# under the terms of the GNU General Public License as published by the Free
...
...
drivers/net/e1000/e1000_ethtool.c
浏览文件 @
bdad69b2
drivers/net/e1000/e1000_hw.c
浏览文件 @
bdad69b2
...
@@ -2493,10 +2493,10 @@ e1000_config_fc_after_link_up(struct e1000_hw *hw)
...
@@ -2493,10 +2493,10 @@ e1000_config_fc_after_link_up(struct e1000_hw *hw)
*/
*/
if
(
hw
->
original_fc
==
e1000_fc_full
)
{
if
(
hw
->
original_fc
==
e1000_fc_full
)
{
hw
->
fc
=
e1000_fc_full
;
hw
->
fc
=
e1000_fc_full
;
DEBUGOUT
(
"Flow Control = FULL.
\
r\
n
"
);
DEBUGOUT
(
"Flow Control = FULL.
\n
"
);
}
else
{
}
else
{
hw
->
fc
=
e1000_fc_rx_pause
;
hw
->
fc
=
e1000_fc_rx_pause
;
DEBUGOUT
(
"Flow Control = RX PAUSE frames only.
\
r\
n
"
);
DEBUGOUT
(
"Flow Control = RX PAUSE frames only.
\n
"
);
}
}
}
}
/* For receiving PAUSE frames ONLY.
/* For receiving PAUSE frames ONLY.
...
@@ -2512,7 +2512,7 @@ e1000_config_fc_after_link_up(struct e1000_hw *hw)
...
@@ -2512,7 +2512,7 @@ e1000_config_fc_after_link_up(struct e1000_hw *hw)
(
mii_nway_lp_ability_reg
&
NWAY_LPAR_PAUSE
)
&&
(
mii_nway_lp_ability_reg
&
NWAY_LPAR_PAUSE
)
&&
(
mii_nway_lp_ability_reg
&
NWAY_LPAR_ASM_DIR
))
{
(
mii_nway_lp_ability_reg
&
NWAY_LPAR_ASM_DIR
))
{
hw
->
fc
=
e1000_fc_tx_pause
;
hw
->
fc
=
e1000_fc_tx_pause
;
DEBUGOUT
(
"Flow Control = TX PAUSE frames only.
\
r\
n
"
);
DEBUGOUT
(
"Flow Control = TX PAUSE frames only.
\n
"
);
}
}
/* For transmitting PAUSE frames ONLY.
/* For transmitting PAUSE frames ONLY.
*
*
...
@@ -2527,7 +2527,7 @@ e1000_config_fc_after_link_up(struct e1000_hw *hw)
...
@@ -2527,7 +2527,7 @@ e1000_config_fc_after_link_up(struct e1000_hw *hw)
!
(
mii_nway_lp_ability_reg
&
NWAY_LPAR_PAUSE
)
&&
!
(
mii_nway_lp_ability_reg
&
NWAY_LPAR_PAUSE
)
&&
(
mii_nway_lp_ability_reg
&
NWAY_LPAR_ASM_DIR
))
{
(
mii_nway_lp_ability_reg
&
NWAY_LPAR_ASM_DIR
))
{
hw
->
fc
=
e1000_fc_rx_pause
;
hw
->
fc
=
e1000_fc_rx_pause
;
DEBUGOUT
(
"Flow Control = RX PAUSE frames only.
\
r\
n
"
);
DEBUGOUT
(
"Flow Control = RX PAUSE frames only.
\n
"
);
}
}
/* Per the IEEE spec, at this point flow control should be
/* Per the IEEE spec, at this point flow control should be
* disabled. However, we want to consider that we could
* disabled. However, we want to consider that we could
...
@@ -2553,10 +2553,10 @@ e1000_config_fc_after_link_up(struct e1000_hw *hw)
...
@@ -2553,10 +2553,10 @@ e1000_config_fc_after_link_up(struct e1000_hw *hw)
hw
->
original_fc
==
e1000_fc_tx_pause
)
||
hw
->
original_fc
==
e1000_fc_tx_pause
)
||
hw
->
fc_strict_ieee
)
{
hw
->
fc_strict_ieee
)
{
hw
->
fc
=
e1000_fc_none
;
hw
->
fc
=
e1000_fc_none
;
DEBUGOUT
(
"Flow Control = NONE.
\
r\
n
"
);
DEBUGOUT
(
"Flow Control = NONE.
\n
"
);
}
else
{
}
else
{
hw
->
fc
=
e1000_fc_rx_pause
;
hw
->
fc
=
e1000_fc_rx_pause
;
DEBUGOUT
(
"Flow Control = RX PAUSE frames only.
\
r\
n
"
);
DEBUGOUT
(
"Flow Control = RX PAUSE frames only.
\n
"
);
}
}
/* Now we need to do one last check... If we auto-
/* Now we need to do one last check... If we auto-
...
@@ -2581,7 +2581,7 @@ e1000_config_fc_after_link_up(struct e1000_hw *hw)
...
@@ -2581,7 +2581,7 @@ e1000_config_fc_after_link_up(struct e1000_hw *hw)
return
ret_val
;
return
ret_val
;
}
}
}
else
{
}
else
{
DEBUGOUT
(
"Copper PHY and Auto Neg has not completed.
\
r\
n
"
);
DEBUGOUT
(
"Copper PHY and Auto Neg has not completed.
\n
"
);
}
}
}
}
return
E1000_SUCCESS
;
return
E1000_SUCCESS
;
...
@@ -2764,7 +2764,7 @@ e1000_check_for_link(struct e1000_hw *hw)
...
@@ -2764,7 +2764,7 @@ e1000_check_for_link(struct e1000_hw *hw)
hw
->
autoneg_failed
=
1
;
hw
->
autoneg_failed
=
1
;
return
0
;
return
0
;
}
}
DEBUGOUT
(
"NOT RXing /C/, disable AutoNeg and force link.
\
r\
n
"
);
DEBUGOUT
(
"NOT RXing /C/, disable AutoNeg and force link.
\n
"
);
/* Disable auto-negotiation in the TXCW register */
/* Disable auto-negotiation in the TXCW register */
E1000_WRITE_REG
(
hw
,
TXCW
,
(
hw
->
txcw
&
~
E1000_TXCW_ANE
));
E1000_WRITE_REG
(
hw
,
TXCW
,
(
hw
->
txcw
&
~
E1000_TXCW_ANE
));
...
@@ -2789,7 +2789,7 @@ e1000_check_for_link(struct e1000_hw *hw)
...
@@ -2789,7 +2789,7 @@ e1000_check_for_link(struct e1000_hw *hw)
else
if
(((
hw
->
media_type
==
e1000_media_type_fiber
)
||
else
if
(((
hw
->
media_type
==
e1000_media_type_fiber
)
||
(
hw
->
media_type
==
e1000_media_type_internal_serdes
))
&&
(
hw
->
media_type
==
e1000_media_type_internal_serdes
))
&&
(
ctrl
&
E1000_CTRL_SLU
)
&&
(
rxcw
&
E1000_RXCW_C
))
{
(
ctrl
&
E1000_CTRL_SLU
)
&&
(
rxcw
&
E1000_RXCW_C
))
{
DEBUGOUT
(
"RXing /C/, enable AutoNeg and stop forcing link.
\
r\
n
"
);
DEBUGOUT
(
"RXing /C/, enable AutoNeg and stop forcing link.
\n
"
);
E1000_WRITE_REG
(
hw
,
TXCW
,
hw
->
txcw
);
E1000_WRITE_REG
(
hw
,
TXCW
,
hw
->
txcw
);
E1000_WRITE_REG
(
hw
,
CTRL
,
(
ctrl
&
~
E1000_CTRL_SLU
));
E1000_WRITE_REG
(
hw
,
CTRL
,
(
ctrl
&
~
E1000_CTRL_SLU
));
...
@@ -2852,13 +2852,13 @@ e1000_get_speed_and_duplex(struct e1000_hw *hw,
...
@@ -2852,13 +2852,13 @@ e1000_get_speed_and_duplex(struct e1000_hw *hw,
if
(
status
&
E1000_STATUS_FD
)
{
if
(
status
&
E1000_STATUS_FD
)
{
*
duplex
=
FULL_DUPLEX
;
*
duplex
=
FULL_DUPLEX
;
DEBUGOUT
(
"Full Duplex
\
r\
n
"
);
DEBUGOUT
(
"Full Duplex
\n
"
);
}
else
{
}
else
{
*
duplex
=
HALF_DUPLEX
;
*
duplex
=
HALF_DUPLEX
;
DEBUGOUT
(
" Half Duplex
\
r\
n
"
);
DEBUGOUT
(
" Half Duplex
\n
"
);
}
}
}
else
{
}
else
{
DEBUGOUT
(
"1000 Mbs, Full Duplex
\
r\
n
"
);
DEBUGOUT
(
"1000 Mbs, Full Duplex
\n
"
);
*
speed
=
SPEED_1000
;
*
speed
=
SPEED_1000
;
*
duplex
=
FULL_DUPLEX
;
*
duplex
=
FULL_DUPLEX
;
}
}
...
...
drivers/net/e1000/e1000_hw.h
浏览文件 @
bdad69b2
drivers/net/e1000/e1000_main.c
浏览文件 @
bdad69b2
...
@@ -29,45 +29,6 @@
...
@@ -29,45 +29,6 @@
#include "e1000.h"
#include "e1000.h"
/* Change Log
* 7.0.33 3-Feb-2006
* o Added another fix for the pass false carrier bit
* 7.0.32 24-Jan-2006
* o Need to rebuild with noew version number for the pass false carrier
* fix in e1000_hw.c
* 7.0.30 18-Jan-2006
* o fixup for tso workaround to disable it for pci-x
* o fix mem leak on 82542
* o fixes for 10 Mb/s connections and incorrect stats
* 7.0.28 01/06/2006
* o hardware workaround to only set "speed mode" bit for 1G link.
* 7.0.26 12/23/2005
* o wake on lan support modified for device ID 10B5
* o fix dhcp + vlan issue not making it to the iAMT firmware
* 7.0.24 12/9/2005
* o New hardware support for the Gigabit NIC embedded in the south bridge
* o Fixes to the recycling logic (skb->tail) from IBM LTC
* 6.3.9 12/16/2005
* o incorporate fix for recycled skbs from IBM LTC
* 6.3.7 11/18/2005
* o Honor eeprom setting for enabling/disabling Wake On Lan
* 6.3.5 11/17/2005
* o Fix memory leak in rx ring handling for PCI Express adapters
* 6.3.4 11/8/05
* o Patch from Jesper Juhl to remove redundant NULL checks for kfree
* 6.3.2 9/20/05
* o Render logic that sets/resets DRV_LOAD as inline functions to
* avoid code replication. If f/w is AMT then set DRV_LOAD only when
* network interface is open.
* o Handle DRV_LOAD set/reset in cases where AMT uses VLANs.
* o Adjust PBA partioning for Jumbo frames using MTU size and not
* rx_buffer_len
* 6.3.1 9/19/05
* o Use adapter->tx_timeout_factor in Tx Hung Detect logic
* (e1000_clean_tx_irq)
* o Support for 8086:10B5 device (Quad Port)
*/
char
e1000_driver_name
[]
=
"e1000"
;
char
e1000_driver_name
[]
=
"e1000"
;
static
char
e1000_driver_string
[]
=
"Intel(R) PRO/1000 Network Driver"
;
static
char
e1000_driver_string
[]
=
"Intel(R) PRO/1000 Network Driver"
;
#ifndef CONFIG_E1000_NAPI
#ifndef CONFIG_E1000_NAPI
...
@@ -75,7 +36,7 @@ static char e1000_driver_string[] = "Intel(R) PRO/1000 Network Driver";
...
@@ -75,7 +36,7 @@ static char e1000_driver_string[] = "Intel(R) PRO/1000 Network Driver";
#else
#else
#define DRIVERNAPI "-NAPI"
#define DRIVERNAPI "-NAPI"
#endif
#endif
#define DRV_VERSION "7.0.38-k
2
"DRIVERNAPI
#define DRV_VERSION "7.0.38-k
4
"DRIVERNAPI
char
e1000_driver_version
[]
=
DRV_VERSION
;
char
e1000_driver_version
[]
=
DRV_VERSION
;
static
char
e1000_copyright
[]
=
"Copyright (c) 1999-2006 Intel Corporation."
;
static
char
e1000_copyright
[]
=
"Copyright (c) 1999-2006 Intel Corporation."
;
...
@@ -221,6 +182,7 @@ static void e1000_restore_vlan(struct e1000_adapter *adapter);
...
@@ -221,6 +182,7 @@ static void e1000_restore_vlan(struct e1000_adapter *adapter);
static
int
e1000_suspend
(
struct
pci_dev
*
pdev
,
pm_message_t
state
);
static
int
e1000_suspend
(
struct
pci_dev
*
pdev
,
pm_message_t
state
);
static
int
e1000_resume
(
struct
pci_dev
*
pdev
);
static
int
e1000_resume
(
struct
pci_dev
*
pdev
);
#endif
#endif
static
void
e1000_shutdown
(
struct
pci_dev
*
pdev
);
#ifdef CONFIG_NET_POLL_CONTROLLER
#ifdef CONFIG_NET_POLL_CONTROLLER
/* for netdump / net console */
/* for netdump / net console */
...
@@ -236,8 +198,9 @@ static struct pci_driver e1000_driver = {
...
@@ -236,8 +198,9 @@ static struct pci_driver e1000_driver = {
/* Power Managment Hooks */
/* Power Managment Hooks */
#ifdef CONFIG_PM
#ifdef CONFIG_PM
.
suspend
=
e1000_suspend
,
.
suspend
=
e1000_suspend
,
.
resume
=
e1000_resume
.
resume
=
e1000_resume
,
#endif
#endif
.
shutdown
=
e1000_shutdown
};
};
MODULE_AUTHOR
(
"Intel Corporation, <linux.nics@intel.com>"
);
MODULE_AUTHOR
(
"Intel Corporation, <linux.nics@intel.com>"
);
...
@@ -4605,6 +4568,12 @@ e1000_resume(struct pci_dev *pdev)
...
@@ -4605,6 +4568,12 @@ e1000_resume(struct pci_dev *pdev)
return
0
;
return
0
;
}
}
#endif
#endif
static
void
e1000_shutdown
(
struct
pci_dev
*
pdev
)
{
e1000_suspend
(
pdev
,
PMSG_SUSPEND
);
}
#ifdef CONFIG_NET_POLL_CONTROLLER
#ifdef CONFIG_NET_POLL_CONTROLLER
/*
/*
* Polling 'interrupt' - used by things like netconsole to send skbs
* Polling 'interrupt' - used by things like netconsole to send skbs
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录