Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752379AbXA0UGM (ORCPT ); Sat, 27 Jan 2007 15:06:12 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752372AbXA0UGM (ORCPT ); Sat, 27 Jan 2007 15:06:12 -0500 Received: from mga03.intel.com ([143.182.124.21]:21857 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752375AbXA0UGJ (ORCPT ); Sat, 27 Jan 2007 15:06:09 -0500 X-ExtLoop1: 1 X-IronPort-AV: i="4.13,246,1167638400"; d="scan'208"; a="173738121:sNHT22388632" Message-ID: <45BBB0AF.4040709@intel.com> Date: Sat, 27 Jan 2007 12:06:07 -0800 From: Auke Kok User-Agent: Mail/News 1.5.0.9 (X11/20061228) MIME-Version: 1.0 To: Andrew Morton CC: Jeff Garzik , Linux Kernel Mailing List , NetDev , Jesse Brandeburg , cramerj Subject: [PATCH -MM]: updated e1000 - new hardware initialization code (replacement patch) Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 4119 Lines: 98 Andrew, Please pull: git-pull git://lost.foo-projects.org/~ahkok/git/netdev-2.6 upstream-mm to receive an updated version of the new e1000 hardware initialization code. This version incorporates both previously sent patches and replaces them, as well as adding some minor extra kdoc headers. The patch applies cleanly against jgarzik's netdev-2.6 #upstream commit 5ad0d383ddbf0d2fce43b8aac267a6c299fd2dff. the patch is also available in monolithic form over http: http://foo-projects.org/~sofar/e1000_git_new_device_init_code.patch.bz2 (166kb) or http://foo-projects.org/~sofar/e1000_git_new_device_init_code.patch (1.2mb) Cheers, Auke --- e1000: New device initialization code, fixes From: Jeb Cramer This rewrite of the hardware initialization code splits up the driver low-level initialization code per chipset family. Several families exist with different initialization code per chipset, revision, and this allows us later to select only enable certain devices in the driver. The current code enables all previous drivers and thus doesn't change anything to the user, but is radically different internally. Mac and phy layers are also split, and everything is grouped in an API layer that the driver uses to interface the hardware. Support was added for a PCI-e 4-port Fibre version of the PRO/1000 PT quad port adapter (device 0x10a5). MTU changes on a downed interface require a phy commit to enact the new size immediately. Replace hard coded RAR numbers with constant. Add several function description and fix some small copy+paste errors in others. Fix link speed detection on PCI adapters showing wrong PCI bus speed. Fix laa detection. Rewrite tbi static for 82543. Fix mta list overflow. Don't unmap skb's twice in occasions, but set dma=0. Flatten dhcp generic function for readability. Change force phy speed duplex setup to be void and static. Signed-off-by: Jesse Brandeburg Signed-off-by: Bruce Allan Signed-off-by: Jeb Cramer Signed-off-by: Jeff Kirsher Signed-off-by: Auke Kok --- drivers/net/e1000/Makefile | 19 drivers/net/e1000/e1000.h | 97 drivers/net/e1000/e1000_80003es2lan.c | 1377 +++++ drivers/net/e1000/e1000_80003es2lan.h | 89 drivers/net/e1000/e1000_82540.c | 670 ++ drivers/net/e1000/e1000_82541.c | 1305 +++++ drivers/net/e1000/e1000_82541.h | 86 drivers/net/e1000/e1000_82542.c | 551 ++ drivers/net/e1000/e1000_82543.c | 1643 ++++++ drivers/net/e1000/e1000_82543.h | 45 drivers/net/e1000/e1000_82571.c | 1127 ++++ drivers/net/e1000/e1000_82571.h | 42 drivers/net/e1000/e1000_api.c | 1174 ++++ drivers/net/e1000/e1000_api.h | 161 + drivers/net/e1000/e1000_defines.h | 1297 +++++ drivers/net/e1000/e1000_ethtool.c | 470 +- drivers/net/e1000/e1000_hw.c | 9038 --------------------------------- drivers/net/e1000/e1000_hw.h | 3859 ++------------ drivers/net/e1000/e1000_ich8lan.c | 2427 +++++++++ drivers/net/e1000/e1000_ich8lan.h | 110 drivers/net/e1000/e1000_mac.c | 1939 +++++++ drivers/net/e1000/e1000_mac.h | 84 drivers/net/e1000/e1000_main.c | 936 ++- drivers/net/e1000/e1000_manage.c | 388 + drivers/net/e1000/e1000_manage.h | 83 drivers/net/e1000/e1000_nvm.c | 859 +++ drivers/net/e1000/e1000_nvm.h | 61 drivers/net/e1000/e1000_osdep.h | 57 drivers/net/e1000/e1000_param.c | 100 drivers/net/e1000/e1000_phy.c | 1932 +++++++ drivers/net/e1000/e1000_phy.h | 159 + drivers/net/e1000/e1000_regs.h | 236 + 32 files changed, 19321 insertions(+), 13100 deletions(-) - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/