rpms/kernel/devel linux-2.6-e1000e-add-support-for-82567LM-3-and-82567LF-3-ICH10D-parts.patch, 1.1, 1.2 linux-2.6-e1000e-add-support-for-new-82574L-part.patch, 1.2, 1.3 linux-2.6-e1000e-add-support-for-the-82567LM-4-device.patch, 1.1, 1.2
Kyle McMartin
kyle at fedoraproject.org
Thu Oct 2 12:49:47 UTC 2008
Author: kyle
Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv11671
Modified Files:
linux-2.6-e1000e-add-support-for-82567LM-3-and-82567LF-3-ICH10D-parts.patch
linux-2.6-e1000e-add-support-for-new-82574L-part.patch
linux-2.6-e1000e-add-support-for-the-82567LM-4-device.patch
Log Message:
rediff moar e1000e patches
linux-2.6-e1000e-add-support-for-82567LM-3-and-82567LF-3-ICH10D-parts.patch:
Index: linux-2.6-e1000e-add-support-for-82567LM-3-and-82567LF-3-ICH10D-parts.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/linux-2.6-e1000e-add-support-for-82567LM-3-and-82567LF-3-ICH10D-parts.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- linux-2.6-e1000e-add-support-for-82567LM-3-and-82567LF-3-ICH10D-parts.patch 10 Sep 2008 16:59:58 -0000 1.1
+++ linux-2.6-e1000e-add-support-for-82567LM-3-and-82567LF-3-ICH10D-parts.patch 2 Oct 2008 12:49:17 -0000 1.2
@@ -39,7 +39,7 @@
/* NVM Addressing bits based on type (0-small, 1-large) */
#define E1000_EECD_ADDR_BITS 0x00000400
diff --git a/drivers/net/e1000e/e1000.h b/drivers/net/e1000e/e1000.h
-index ac4e506..ef66dc4 100644
+index f0c48a2..ea38a8e 100644
--- a/drivers/net/e1000e/e1000.h
+++ b/drivers/net/e1000e/e1000.h
@@ -98,6 +98,7 @@ enum e1000_boards {
@@ -50,7 +50,7 @@
};
struct e1000_queue_stats {
-@@ -374,6 +375,7 @@ extern struct e1000_info e1000_82572_info;
+@@ -375,6 +376,7 @@ extern struct e1000_info e1000_82572_info;
extern struct e1000_info e1000_82573_info;
extern struct e1000_info e1000_ich8_info;
extern struct e1000_info e1000_ich9_info;
@@ -58,7 +58,7 @@
extern struct e1000_info e1000_es2_info;
extern s32 e1000e_read_pba_num(struct e1000_hw *hw, u32 *pba_num);
-@@ -446,6 +448,7 @@ extern s32 e1000e_get_cable_length_m88(struct e1000_hw *hw);
+@@ -448,6 +450,7 @@ extern s32 e1000e_get_cable_length_m88(struct e1000_hw *hw);
extern s32 e1000e_get_phy_info_m88(struct e1000_hw *hw);
extern s32 e1000e_read_phy_reg_m88(struct e1000_hw *hw, u32 offset, u16 *data);
extern s32 e1000e_write_phy_reg_m88(struct e1000_hw *hw, u32 offset, u16 data);
@@ -67,10 +67,10 @@
extern s32 e1000e_determine_phy_address(struct e1000_hw *hw);
extern s32 e1000e_write_phy_reg_bm(struct e1000_hw *hw, u32 offset, u16 data);
diff --git a/drivers/net/e1000e/ethtool.c b/drivers/net/e1000e/ethtool.c
-index e21c9e0..a89498d 100644
+index 5ed8e13..cea4907 100644
--- a/drivers/net/e1000e/ethtool.c
+++ b/drivers/net/e1000e/ethtool.c
-@@ -781,6 +781,7 @@ static int e1000_reg_test(struct e1000_adapter *adapter, u64 *data)
+@@ -784,6 +784,7 @@ static int e1000_reg_test(struct e1000_adapter *adapter, u64 *data)
case e1000_82573:
case e1000_ich8lan:
case e1000_ich9lan:
@@ -78,7 +78,7 @@
toggle = 0x7FFFF033;
break;
default:
-@@ -833,7 +834,9 @@ static int e1000_reg_test(struct e1000_adapter *adapter, u64 *data)
+@@ -836,7 +837,9 @@ static int e1000_reg_test(struct e1000_adapter *adapter, u64 *data)
REG_PATTERN_TEST(E1000_TIDV, 0x0000FFFF, 0x0000FFFF);
for (i = 0; i < mac->rar_entry_count; i++)
REG_PATTERN_TEST_ARRAY(E1000_RA, ((i << 1) + 1),
@@ -89,7 +89,7 @@
for (i = 0; i < mac->mta_reg_count; i++)
REG_PATTERN_TEST_ARRAY(E1000_MTA, i, 0xFFFFFFFF, 0xFFFFFFFF);
-@@ -905,12 +908,23 @@ static int e1000_intr_test(struct e1000_adapter *adapter, u64 *data)
+@@ -908,12 +911,23 @@ static int e1000_intr_test(struct e1000_adapter *adapter, u64 *data)
/* Test each interrupt */
for (i = 0; i < 10; i++) {
@@ -138,7 +138,7 @@
enum e1000_media_type {
diff --git a/drivers/net/e1000e/ich8lan.c b/drivers/net/e1000e/ich8lan.c
-index b5fc2c9..0e76bb0 100644
+index 52068bc..34ab593 100644
--- a/drivers/net/e1000e/ich8lan.c
+++ b/drivers/net/e1000e/ich8lan.c
@@ -43,7 +43,8 @@
@@ -151,7 +151,7 @@
* 82567LM-4 Gigabit Network Connection
*/
-@@ -158,12 +159,15 @@ static s32 e1000_check_polarity_ife_ich8lan(struct e1000_hw *hw);
+@@ -172,12 +173,15 @@ static s32 e1000_check_polarity_ife_ich8lan(struct e1000_hw *hw);
static s32 e1000_erase_flash_bank_ich8lan(struct e1000_hw *hw, u32 bank);
static s32 e1000_retry_write_flash_byte_ich8lan(struct e1000_hw *hw,
u32 offset, u8 byte);
@@ -167,7 +167,7 @@
static inline u16 __er16flash(struct e1000_hw *hw, unsigned long reg)
{
-@@ -898,6 +902,56 @@ static s32 e1000_set_d3_lplu_state_ich8lan(struct e1000_hw *hw, bool active)
+@@ -912,6 +916,56 @@ static s32 e1000_set_d3_lplu_state_ich8lan(struct e1000_hw *hw, bool active)
}
/**
@@ -224,7 +224,7 @@
* e1000_read_nvm_ich8lan - Read word(s) from the NVM
* @hw: pointer to the HW structure
* @offset: The offset (in bytes) of the word(s) to read.
-@@ -913,6 +967,7 @@ static s32 e1000_read_nvm_ich8lan(struct e1000_hw *hw, u16 offset, u16 words,
+@@ -927,6 +981,7 @@ static s32 e1000_read_nvm_ich8lan(struct e1000_hw *hw, u16 offset, u16 words,
struct e1000_dev_spec_ich8lan *dev_spec = &hw->dev_spec.ich8lan;
u32 act_offset;
s32 ret_val;
@@ -232,7 +232,7 @@
u16 i, word;
if ((offset >= nvm->word_size) || (words > nvm->word_size - offset) ||
-@@ -925,10 +980,11 @@ static s32 e1000_read_nvm_ich8lan(struct e1000_hw *hw, u16 offset, u16 words,
+@@ -939,10 +994,11 @@ static s32 e1000_read_nvm_ich8lan(struct e1000_hw *hw, u16 offset, u16 words,
if (ret_val)
return ret_val;
@@ -248,7 +248,7 @@
act_offset += offset;
for (i = 0; i < words; i++) {
-@@ -1076,6 +1132,29 @@ static s32 e1000_read_flash_word_ich8lan(struct e1000_hw *hw, u32 offset,
+@@ -1090,6 +1146,29 @@ static s32 e1000_read_flash_word_ich8lan(struct e1000_hw *hw, u32 offset,
}
/**
@@ -278,7 +278,7 @@
* e1000_read_flash_data_ich8lan - Read byte or word from NVM
* @hw: pointer to the HW structure
* @offset: The offset (in bytes) of the byte or word to read.
-@@ -1206,7 +1285,7 @@ static s32 e1000_update_nvm_checksum_ich8lan(struct e1000_hw *hw)
+@@ -1220,7 +1299,7 @@ static s32 e1000_update_nvm_checksum_ich8lan(struct e1000_hw *hw)
{
struct e1000_nvm_info *nvm = &hw->nvm;
struct e1000_dev_spec_ich8lan *dev_spec = &hw->dev_spec.ich8lan;
@@ -287,7 +287,7 @@
s32 ret_val;
u16 data;
-@@ -1226,7 +1305,11 @@ static s32 e1000_update_nvm_checksum_ich8lan(struct e1000_hw *hw)
+@@ -1240,7 +1319,11 @@ static s32 e1000_update_nvm_checksum_ich8lan(struct e1000_hw *hw)
* write to bank 0 etc. We also need to erase the segment that
* is going to be written
*/
@@ -300,7 +300,7 @@
new_bank_offset = nvm->flash_bank_size;
old_bank_offset = 0;
e1000_erase_flash_bank_ich8lan(hw, 1);
-@@ -2190,13 +2273,14 @@ void e1000e_gig_downshift_workaround_ich8lan(struct e1000_hw *hw)
+@@ -2248,13 +2331,14 @@ void e1000e_gig_downshift_workaround_ich8lan(struct e1000_hw *hw)
* 'LPLU Enabled' and 'Gig Disable' to force link speed negotiation
* to a lower speed.
*
@@ -317,7 +317,7 @@
phy_ctrl = er32(PHY_CTRL);
phy_ctrl |= E1000_PHY_CTRL_D0A_LPLU |
E1000_PHY_CTRL_GBE_DISABLE;
-@@ -2254,6 +2338,39 @@ static s32 e1000_led_off_ich8lan(struct e1000_hw *hw)
+@@ -2312,6 +2396,39 @@ static s32 e1000_led_off_ich8lan(struct e1000_hw *hw)
}
/**
@@ -357,7 +357,7 @@
* e1000_clear_hw_cntrs_ich8lan - Clear statistical counters
* @hw: pointer to the HW structure
*
-@@ -2303,7 +2420,7 @@ static struct e1000_phy_operations ich8_phy_ops = {
+@@ -2361,7 +2478,7 @@ static struct e1000_phy_operations ich8_phy_ops = {
.check_reset_block = e1000_check_reset_block_ich8lan,
.commit_phy = NULL,
.force_speed_duplex = e1000_phy_force_speed_duplex_ich8lan,
@@ -366,7 +366,7 @@
.get_cable_length = e1000e_get_cable_length_igp_2,
.get_phy_info = e1000_get_phy_info_ich8lan,
.read_phy_reg = e1000e_read_phy_reg_igp,
-@@ -2358,3 +2475,20 @@ struct e1000_info e1000_ich9_info = {
+@@ -2416,3 +2533,20 @@ struct e1000_info e1000_ich9_info = {
.nvm_ops = &ich8_nvm_ops,
};
@@ -388,7 +388,7 @@
+ .nvm_ops = &ich8_nvm_ops,
+};
diff --git a/drivers/net/e1000e/netdev.c b/drivers/net/e1000e/netdev.c
-index c3d7411..2d9bcb0 100644
+index c752725..a5665ea 100644
--- a/drivers/net/e1000e/netdev.c
+++ b/drivers/net/e1000e/netdev.c
@@ -58,6 +58,7 @@ static const struct e1000_info *e1000_info_tbl[] = {
@@ -427,7 +427,7 @@
* tweak tx_queue_len according to speed/duplex
* and adjust the timeout factor
*/
-@@ -4776,6 +4798,9 @@ static struct pci_device_id e1000_pci_tbl[] = {
+@@ -4780,6 +4802,9 @@ static struct pci_device_id e1000_pci_tbl[] = {
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_ICH10_R_BM_LF), board_ich9lan },
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_ICH10_R_BM_V), board_ich9lan },
@@ -534,5 +534,5 @@
/**
--
-1.5.4.1
+1.5.5.1
linux-2.6-e1000e-add-support-for-new-82574L-part.patch:
Index: linux-2.6-e1000e-add-support-for-new-82574L-part.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/linux-2.6-e1000e-add-support-for-new-82574L-part.patch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- linux-2.6-e1000e-add-support-for-new-82574L-part.patch 2 Oct 2008 12:38:36 -0000 1.2
+++ linux-2.6-e1000e-add-support-for-new-82574L-part.patch 2 Oct 2008 12:49:17 -0000 1.3
@@ -10,17 +10,18 @@
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher at intel.com>
Signed-off-by: Jeff Garzik <jgarzik at redhat.com>
---
- 82571.c | 153 +++++++++++++++++++++--
- defines.h | 13 +
- e1000.h | 28 ++++
- es2lan.c | 2
- ethtool.c | 38 ++++-
- hw.h | 11 +
- ich8lan.c | 18 ++
- lib.c | 7 -
- netdev.c | 405 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-------
- param.c | 27 ++++
- phy.c | 109 ++++++++++++++++
+---
+ drivers/net/e1000e/82571.c | 153 +++++++++++++++--
+ drivers/net/e1000e/defines.h | 13 ++
+ drivers/net/e1000e/e1000.h | 28 +++-
+ drivers/net/e1000e/es2lan.c | 2 +-
+ drivers/net/e1000e/ethtool.c | 38 +++-
+ drivers/net/e1000e/hw.h | 11 +-
+ drivers/net/e1000e/ich8lan.c | 18 ++-
+ drivers/net/e1000e/lib.c | 7 +-
+ drivers/net/e1000e/netdev.c | 405 +++++++++++++++++++++++++++++++++++++-----
+ drivers/net/e1000e/param.c | 27 +++
+ drivers/net/e1000e/phy.c | 109 +++++++++++-
11 files changed, 736 insertions(+), 75 deletions(-)
diff --git a/drivers/net/e1000e/82571.c b/drivers/net/e1000e/82571.c
@@ -357,7 +358,7 @@
+};
+
diff --git a/drivers/net/e1000e/defines.h b/drivers/net/e1000e/defines.h
-index 14b0e6c..a0c378a 100644
+index 4b21fa9..48f79ec 100644
--- a/drivers/net/e1000e/defines.h
+++ b/drivers/net/e1000e/defines.h
@@ -71,9 +71,11 @@
@@ -405,7 +406,7 @@
/* Interrupt Cause Set */
#define E1000_ICS_LSC E1000_ICR_LSC /* Link Status Change */
diff --git a/drivers/net/e1000e/e1000.h b/drivers/net/e1000e/e1000.h
-index f0c48a2..43443d3 100644
+index ea38a8e..4c8769f 100644
--- a/drivers/net/e1000e/e1000.h
+++ b/drivers/net/e1000e/e1000.h
@@ -62,6 +62,11 @@ struct e1000_info;
@@ -428,7 +429,7 @@
board_80003es2lan,
board_ich8lan,
board_ich9lan,
-@@ -146,6 +152,12 @@ struct e1000_ring {
+@@ -147,6 +153,12 @@ struct e1000_ring {
/* array of buffer information structs */
struct e1000_buffer *buffer_info;
@@ -441,7 +442,7 @@
struct sk_buff *rx_skb_top;
struct e1000_queue_stats stats;
-@@ -274,6 +286,9 @@ struct e1000_adapter {
+@@ -275,6 +287,9 @@ struct e1000_adapter {
u32 test_icr;
u32 msg_enable;
@@ -451,7 +452,7 @@
u32 eeprom_wol;
u32 wol;
-@@ -307,6 +322,7 @@ struct e1000_info {
+@@ -308,6 +323,7 @@ struct e1000_info {
#define FLAG_HAS_JUMBO_FRAMES (1 << 7)
#define FLAG_READ_ONLY_NVM (1 << 8)
#define FLAG_IS_ICH (1 << 9)
@@ -459,7 +460,7 @@
#define FLAG_HAS_SMART_POWER_DOWN (1 << 11)
#define FLAG_IS_QUAD_PORT_A (1 << 12)
#define FLAG_IS_QUAD_PORT (1 << 13)
-@@ -365,6 +381,8 @@ extern int e1000e_setup_tx_resources(struct e1000_adapter *adapter);
+@@ -366,6 +382,8 @@ extern int e1000e_setup_tx_resources(struct e1000_adapter *adapter);
extern void e1000e_free_rx_resources(struct e1000_adapter *adapter);
extern void e1000e_free_tx_resources(struct e1000_adapter *adapter);
extern void e1000e_update_stats(struct e1000_adapter *adapter);
@@ -468,15 +469,15 @@
extern unsigned int copybreak;
-@@ -373,6 +391,7 @@ extern char *e1000e_get_hw_dev_name(struct e1000_hw *hw);
+@@ -374,6 +392,7 @@ extern char *e1000e_get_hw_dev_name(struct e1000_hw *hw);
extern struct e1000_info e1000_82571_info;
extern struct e1000_info e1000_82572_info;
extern struct e1000_info e1000_82573_info;
+extern struct e1000_info e1000_82574_info;
extern struct e1000_info e1000_ich8_info;
extern struct e1000_info e1000_ich9_info;
- extern struct e1000_info e1000_es2_info;
-@@ -452,6 +471,8 @@ extern enum e1000_phy_type e1000e_get_phy_type_from_id(u32 phy_id);
+ extern struct e1000_info e1000_ich10_info;
+@@ -455,6 +474,8 @@ extern enum e1000_phy_type e1000e_get_phy_type_from_id(u32 phy_id);
extern s32 e1000e_determine_phy_address(struct e1000_hw *hw);
extern s32 e1000e_write_phy_reg_bm(struct e1000_hw *hw, u32 offset, u16 data);
extern s32 e1000e_read_phy_reg_bm(struct e1000_hw *hw, u32 offset, u16 *data);
@@ -485,7 +486,7 @@
extern void e1000e_phy_force_speed_duplex_setup(struct e1000_hw *hw, u16 *phy_ctrl);
extern s32 e1000e_write_kmrn_reg(struct e1000_hw *hw, u32 offset, u16 data);
extern s32 e1000e_read_kmrn_reg(struct e1000_hw *hw, u32 offset, u16 *data);
-@@ -522,7 +543,12 @@ static inline s32 e1000_get_phy_info(struct e1000_hw *hw)
+@@ -525,7 +546,12 @@ static inline s32 e1000_get_phy_info(struct e1000_hw *hw)
return hw->phy.ops.get_phy_info(hw);
}
@@ -513,7 +514,7 @@
.cleanup_led = e1000e_cleanup_led_generic,
.clear_hw_cntrs = e1000_clear_hw_cntrs_80003es2lan,
diff --git a/drivers/net/e1000e/ethtool.c b/drivers/net/e1000e/ethtool.c
-index 5ed8e13..67b8cef 100644
+index cea4907..14de3b7 100644
--- a/drivers/net/e1000e/ethtool.c
+++ b/drivers/net/e1000e/ethtool.c
@@ -571,6 +571,7 @@ static int e1000_set_eeprom(struct net_device *netdev,
@@ -531,8 +532,8 @@
+ case e1000_82574:
case e1000_ich8lan:
case e1000_ich9lan:
- toggle = 0x7FFFF033;
-@@ -887,10 +889,18 @@ static int e1000_intr_test(struct e1000_adapter *adapter, u64 *data)
+ case e1000_ich10lan:
+@@ -890,10 +892,18 @@ static int e1000_intr_test(struct e1000_adapter *adapter, u64 *data)
u32 shared_int = 1;
u32 irq = adapter->pdev->irq;
int i;
@@ -552,7 +553,7 @@
/* Hook up test interrupt handler just for this test */
if (!request_irq(irq, &e1000_test_intr, IRQF_PROBE_SHARED, netdev->name,
netdev)) {
-@@ -898,7 +908,8 @@ static int e1000_intr_test(struct e1000_adapter *adapter, u64 *data)
+@@ -901,7 +911,8 @@ static int e1000_intr_test(struct e1000_adapter *adapter, u64 *data)
} else if (request_irq(irq, &e1000_test_intr, IRQF_SHARED,
netdev->name, netdev)) {
*data = 1;
@@ -562,7 +563,7 @@
}
e_info("testing %s interrupt\n", (shared_int ? "shared" : "unshared"));
-@@ -977,7 +988,14 @@ static int e1000_intr_test(struct e1000_adapter *adapter, u64 *data)
+@@ -991,7 +1002,14 @@ static int e1000_intr_test(struct e1000_adapter *adapter, u64 *data)
/* Unhook test interrupt handler */
free_irq(irq, netdev);
@@ -578,7 +579,7 @@
}
static void e1000_free_desc_rings(struct e1000_adapter *adapter)
-@@ -1758,11 +1776,13 @@ static void e1000_led_blink_callback(unsigned long data)
+@@ -1772,11 +1790,13 @@ static void e1000_led_blink_callback(unsigned long data)
static int e1000_phys_id(struct net_device *netdev, u32 data)
{
struct e1000_adapter *adapter = netdev_priv(netdev);
@@ -593,7 +594,7 @@
if (!adapter->blink_timer.function) {
init_timer(&adapter->blink_timer);
adapter->blink_timer.function =
-@@ -1772,16 +1792,16 @@ static int e1000_phys_id(struct net_device *netdev, u32 data)
+@@ -1786,16 +1806,16 @@ static int e1000_phys_id(struct net_device *netdev, u32 data)
mod_timer(&adapter->blink_timer, jiffies);
msleep_interruptible(data * 1000);
del_timer_sync(&adapter->blink_timer);
@@ -616,7 +617,7 @@
return 0;
}
diff --git a/drivers/net/e1000e/hw.h b/drivers/net/e1000e/hw.h
-index 74f263a..dfc43af 100644
+index 5d2acc5..f66ed37 100644
--- a/drivers/net/e1000e/hw.h
+++ b/drivers/net/e1000e/hw.h
@@ -65,7 +65,11 @@ enum e1e_registers {
@@ -639,9 +640,9 @@
#define E1000_DEV_ID_80003ES2LAN_COPPER_DPT 0x1096
#define E1000_DEV_ID_80003ES2LAN_SERDES_DPT 0x1098
-@@ -357,12 +362,15 @@ enum e1e_registers {
- #define E1000_DEV_ID_ICH10_R_BM_LF 0x10CD
- #define E1000_DEV_ID_ICH10_R_BM_V 0x10CE
+@@ -360,12 +365,15 @@ enum e1e_registers {
+ #define E1000_DEV_ID_ICH10_D_BM_LM 0x10DE
+ #define E1000_DEV_ID_ICH10_D_BM_LF 0x10DF
+#define E1000_REVISION_4 4
+
@@ -655,7 +656,7 @@
e1000_80003es2lan,
e1000_ich8lan,
e1000_ich9lan,
-@@ -696,8 +704,7 @@ struct e1000_host_mng_command_info {
+@@ -700,8 +708,7 @@ struct e1000_host_mng_command_info {
/* Function pointers and static data for the MAC. */
struct e1000_mac_operations {
@@ -666,10 +667,10 @@
s32 (*cleanup_led)(struct e1000_hw *);
void (*clear_hw_cntrs)(struct e1000_hw *);
diff --git a/drivers/net/e1000e/ich8lan.c b/drivers/net/e1000e/ich8lan.c
-index d8efba8..67ffdfc 100644
+index 34ab593..e1d2d30 100644
--- a/drivers/net/e1000e/ich8lan.c
+++ b/drivers/net/e1000e/ich8lan.c
-@@ -431,6 +431,22 @@ static void e1000_release_swflag_ich8lan(struct e1000_hw *hw)
+@@ -436,6 +436,22 @@ static void e1000_release_swflag_ich8lan(struct e1000_hw *hw)
}
/**
@@ -692,7 +693,7 @@
* e1000_check_reset_block_ich8lan - Check if PHY reset is blocked
* @hw: pointer to the HW structure
*
-@@ -2340,7 +2356,7 @@ static void e1000_clear_hw_cntrs_ich8lan(struct e1000_hw *hw)
+@@ -2458,7 +2474,7 @@ static void e1000_clear_hw_cntrs_ich8lan(struct e1000_hw *hw)
}
static struct e1000_mac_operations ich8_mac_ops = {
@@ -728,7 +729,7 @@
/**
diff --git a/drivers/net/e1000e/netdev.c b/drivers/net/e1000e/netdev.c
-index 1f767fe..14b8e26 100644
+index a5665ea..c441a78 100644
--- a/drivers/net/e1000e/netdev.c
+++ b/drivers/net/e1000e/netdev.c
@@ -55,6 +55,7 @@ static const struct e1000_info *e1000_info_tbl[] = {
@@ -739,7 +740,7 @@
[board_80003es2lan] = &e1000_es2_info,
[board_ich8lan] = &e1000_ich8_info,
[board_ich9lan] = &e1000_ich9_info,
-@@ -1179,8 +1180,8 @@ static irqreturn_t e1000_intr(int irq, void *data)
+@@ -1180,8 +1181,8 @@ static irqreturn_t e1000_intr(int irq, void *data)
struct net_device *netdev = data;
struct e1000_adapter *adapter = netdev_priv(netdev);
struct e1000_hw *hw = &adapter->hw;
@@ -749,7 +750,7 @@
if (!icr)
return IRQ_NONE; /* Not our interrupt */
-@@ -1236,6 +1237,263 @@ static irqreturn_t e1000_intr(int irq, void *data)
+@@ -1237,6 +1238,263 @@ static irqreturn_t e1000_intr(int irq, void *data)
return IRQ_HANDLED;
}
@@ -1013,7 +1014,7 @@
/**
* e1000_request_irq - initialize interrupts
*
-@@ -1245,29 +1503,33 @@ static irqreturn_t e1000_intr(int irq, void *data)
+@@ -1246,29 +1504,33 @@ static irqreturn_t e1000_intr(int irq, void *data)
static int e1000_request_irq(struct e1000_adapter *adapter)
{
struct net_device *netdev = adapter->netdev;
@@ -1064,7 +1065,7 @@
return err;
}
-@@ -1275,11 +1537,21 @@ static void e1000_free_irq(struct e1000_adapter *adapter)
+@@ -1276,11 +1538,21 @@ static void e1000_free_irq(struct e1000_adapter *adapter)
{
struct net_device *netdev = adapter->netdev;
@@ -1090,7 +1091,7 @@
}
/**
-@@ -1290,6 +1562,8 @@ static void e1000_irq_disable(struct e1000_adapter *adapter)
+@@ -1291,6 +1563,8 @@ static void e1000_irq_disable(struct e1000_adapter *adapter)
struct e1000_hw *hw = &adapter->hw;
ew32(IMC, ~0);
@@ -1099,7 +1100,7 @@
e1e_flush();
synchronize_irq(adapter->pdev->irq);
}
-@@ -1301,7 +1575,12 @@ static void e1000_irq_enable(struct e1000_adapter *adapter)
+@@ -1302,7 +1576,12 @@ static void e1000_irq_enable(struct e1000_adapter *adapter)
{
struct e1000_hw *hw = &adapter->hw;
@@ -1113,7 +1114,7 @@
e1e_flush();
}
-@@ -1551,9 +1830,8 @@ void e1000e_free_rx_resources(struct e1000_adapter *adapter)
+@@ -1552,9 +1831,8 @@ void e1000e_free_rx_resources(struct e1000_adapter *adapter)
* traffic pattern. Constants in this function were computed
* based on theoretical maximum wire speed and thresholds were set based
* on testing data as well as attempting to minimize response time
@@ -1125,7 +1126,7 @@
**/
static unsigned int e1000_update_itr(struct e1000_adapter *adapter,
u16 itr_setting, int packets,
-@@ -1661,11 +1939,37 @@ set_itr_now:
+@@ -1662,11 +1940,37 @@ set_itr_now:
min(adapter->itr + (new_itr >> 2), new_itr) :
new_itr;
adapter->itr = new_itr;
@@ -1164,7 +1165,7 @@
* e1000_clean - NAPI Rx polling callback
* @napi: struct associated with this polling callback
* @budget: amount of packets driver is allowed to process this poll
-@@ -1673,12 +1977,17 @@ set_itr_now:
+@@ -1674,12 +1978,17 @@ set_itr_now:
static int e1000_clean(struct napi_struct *napi, int budget)
{
struct e1000_adapter *adapter = container_of(napi, struct e1000_adapter, napi);
@@ -1182,7 +1183,7 @@
/*
* e1000_clean is called per-cpu. This lock protects
* tx_ring from being cleaned by multiple cpus
-@@ -1690,6 +1999,7 @@ static int e1000_clean(struct napi_struct *napi, int budget)
+@@ -1691,6 +2000,7 @@ static int e1000_clean(struct napi_struct *napi, int budget)
spin_unlock(&adapter->tx_queue_lock);
}
@@ -1190,7 +1191,7 @@
adapter->clean_rx(adapter, &work_done, budget);
if (tx_cleaned)
-@@ -1700,7 +2010,10 @@ static int e1000_clean(struct napi_struct *napi, int budget)
+@@ -1701,7 +2011,10 @@ static int e1000_clean(struct napi_struct *napi, int budget)
if (adapter->itr_setting & 3)
e1000_set_itr(adapter);
netif_rx_complete(poll_dev, napi);
@@ -1202,7 +1203,7 @@
}
return work_done;
-@@ -2496,6 +2809,8 @@ int e1000e_up(struct e1000_adapter *adapter)
+@@ -2497,6 +2810,8 @@ int e1000e_up(struct e1000_adapter *adapter)
clear_bit(__E1000_DOWN, &adapter->state);
napi_enable(&adapter->napi);
@@ -1211,7 +1212,7 @@
e1000_irq_enable(adapter);
/* fire a link change interrupt to start the watchdog */
-@@ -2579,13 +2894,10 @@ static int __devinit e1000_sw_init(struct e1000_adapter *adapter)
+@@ -2580,13 +2895,10 @@ static int __devinit e1000_sw_init(struct e1000_adapter *adapter)
adapter->max_frame_size = netdev->mtu + ETH_HLEN + ETH_FCS_LEN;
adapter->min_frame_size = ETH_ZLEN + ETH_FCS_LEN;
@@ -1228,7 +1229,7 @@
spin_lock_init(&adapter->tx_queue_lock);
-@@ -2596,12 +2908,6 @@ static int __devinit e1000_sw_init(struct e1000_adapter *adapter)
+@@ -2597,12 +2909,6 @@ static int __devinit e1000_sw_init(struct e1000_adapter *adapter)
set_bit(__E1000_DOWN, &adapter->state);
return 0;
@@ -1241,7 +1242,7 @@
}
/**
-@@ -2643,6 +2949,7 @@ static int e1000_test_msi_interrupt(struct e1000_adapter *adapter)
+@@ -2644,6 +2950,7 @@ static int e1000_test_msi_interrupt(struct e1000_adapter *adapter)
/* free the real vector and request a test handler */
e1000_free_irq(adapter);
@@ -1249,7 +1250,7 @@
/* Assume that the test fails, if it succeeds then the test
* MSI irq handler will unset this flag */
-@@ -2673,6 +2980,7 @@ static int e1000_test_msi_interrupt(struct e1000_adapter *adapter)
+@@ -2674,6 +2981,7 @@ static int e1000_test_msi_interrupt(struct e1000_adapter *adapter)
rmb();
if (adapter->flags & FLAG_MSI_TEST_FAILED) {
@@ -1257,7 +1258,7 @@
err = -EIO;
e_info("MSI interrupt test failed!\n");
}
-@@ -2686,7 +2994,7 @@ static int e1000_test_msi_interrupt(struct e1000_adapter *adapter)
+@@ -2687,7 +2995,7 @@ static int e1000_test_msi_interrupt(struct e1000_adapter *adapter)
/* okay so the test worked, restore settings */
e_dbg("%s: MSI interrupt test succeeded!\n", netdev->name);
msi_test_failed:
@@ -1266,7 +1267,7 @@
e1000_request_irq(adapter);
return err;
}
-@@ -2796,7 +3104,7 @@ static int e1000_open(struct net_device *netdev)
+@@ -2797,7 +3105,7 @@ static int e1000_open(struct net_device *netdev)
* ignore e1000e MSI messages, which means we need to test our MSI
* interrupt now
*/
@@ -1275,7 +1276,7 @@
err = e1000_test_msi(adapter);
if (err) {
e_err("Interrupt allocation failed\n");
-@@ -2988,7 +3296,8 @@ void e1000e_update_stats(struct e1000_adapter *adapter)
+@@ -2989,7 +3297,8 @@ void e1000e_update_stats(struct e1000_adapter *adapter)
adapter->stats.algnerrc += er32(ALGNERRC);
adapter->stats.rxerrc += er32(RXERRC);
@@ -1285,7 +1286,7 @@
adapter->stats.cexterr += er32(CEXTERR);
adapter->stats.tsctc += er32(TSCTC);
adapter->stats.tsctfc += er32(TSCTFC);
-@@ -3315,7 +3624,10 @@ link_up:
+@@ -3337,7 +3646,10 @@ link_up:
}
/* Cause software interrupt to ensure Rx ring is cleaned */
@@ -1297,7 +1298,7 @@
/* Force detection of hung controller every watchdog period */
adapter->detect_tx_hung = 1;
-@@ -4032,6 +4344,7 @@ static int e1000_suspend(struct pci_dev *pdev, pm_message_t state)
+@@ -4054,6 +4366,7 @@ static int e1000_suspend(struct pci_dev *pdev, pm_message_t state)
e1000e_down(adapter);
e1000_free_irq(adapter);
}
@@ -1305,7 +1306,7 @@
retval = pci_save_state(pdev);
if (retval)
-@@ -4158,6 +4471,7 @@ static int e1000_resume(struct pci_dev *pdev)
+@@ -4180,6 +4493,7 @@ static int e1000_resume(struct pci_dev *pdev)
pci_enable_wake(pdev, PCI_D3hot, 0);
pci_enable_wake(pdev, PCI_D3cold, 0);
@@ -1313,7 +1314,7 @@
if (netif_running(netdev)) {
err = e1000_request_irq(adapter);
if (err)
-@@ -4708,6 +5022,7 @@ static void __devexit e1000_remove(struct pci_dev *pdev)
+@@ -4730,6 +5044,7 @@ static void __devexit e1000_remove(struct pci_dev *pdev)
if (!e1000_check_reset_block(&adapter->hw))
e1000_phy_hw_reset(&adapter->hw);
@@ -1321,7 +1322,7 @@
kfree(adapter->tx_ring);
kfree(adapter->rx_ring);
-@@ -4749,6 +5064,8 @@ static struct pci_device_id e1000_pci_tbl[] = {
+@@ -4771,6 +5086,8 @@ static struct pci_device_id e1000_pci_tbl[] = {
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_82573E_IAMT), board_82573 },
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_82573L), board_82573 },
@@ -1376,7 +1377,7 @@
const struct e1000_option opt = {
.type = enable_option,
diff --git a/drivers/net/e1000e/phy.c b/drivers/net/e1000e/phy.c
-index b133dcf..5e988c9 100644
+index 16724f8..6cd333a 100644
--- a/drivers/net/e1000e/phy.c
+++ b/drivers/net/e1000e/phy.c
@@ -476,7 +476,9 @@ s32 e1000e_copper_link_setup_m88(struct e1000_hw *hw)
@@ -1409,7 +1410,7 @@
/* Commit the changes. */
ret_val = e1000e_commit_phy(hw);
if (ret_val)
-@@ -1969,6 +1983,99 @@ out:
+@@ -2054,6 +2068,99 @@ out:
}
/**
@@ -1509,3 +1510,6 @@
* e1000_access_phy_wakeup_reg_bm - Read BM PHY wakeup register
* @hw: pointer to the HW structure
* @offset: register offset to be read or written
+--
+1.5.5.1
+
linux-2.6-e1000e-add-support-for-the-82567LM-4-device.patch:
Index: linux-2.6-e1000e-add-support-for-the-82567LM-4-device.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/linux-2.6-e1000e-add-support-for-the-82567LM-4-device.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- linux-2.6-e1000e-add-support-for-the-82567LM-4-device.patch 10 Sep 2008 16:59:58 -0000 1.1
+++ linux-2.6-e1000e-add-support-for-the-82567LM-4-device.patch 2 Oct 2008 12:49:17 -0000 1.2
@@ -28,7 +28,7 @@
#define E1000_DEV_ID_ICH9_IGP_M 0x10BF
#define E1000_DEV_ID_ICH9_IGP_M_V 0x10CB
diff --git a/drivers/net/e1000e/ich8lan.c b/drivers/net/e1000e/ich8lan.c
-index 9e38452..b5fc2c9 100644
+index d8efba8..52068bc 100644
--- a/drivers/net/e1000e/ich8lan.c
+++ b/drivers/net/e1000e/ich8lan.c
@@ -44,6 +44,7 @@
@@ -40,10 +40,10 @@
#include <linux/netdevice.h>
diff --git a/drivers/net/e1000e/netdev.c b/drivers/net/e1000e/netdev.c
-index d266510..c3d7411 100644
+index 1f767fe..c752725 100644
--- a/drivers/net/e1000e/netdev.c
+++ b/drivers/net/e1000e/netdev.c
-@@ -4767,6 +4767,7 @@ static struct pci_device_id e1000_pci_tbl[] = {
+@@ -4771,6 +4771,7 @@ static struct pci_device_id e1000_pci_tbl[] = {
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_ICH9_IFE_GT), board_ich9lan },
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_ICH9_IGP_AMT), board_ich9lan },
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_ICH9_IGP_C), board_ich9lan },
@@ -52,5 +52,5 @@
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_ICH9_IGP_M_AMT), board_ich9lan },
{ PCI_VDEVICE(INTEL, E1000_DEV_ID_ICH9_IGP_M_V), board_ich9lan },
--
-1.5.4.1
+1.5.5.1
More information about the scm-commits
mailing list