netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@linux-foundation.org>
To: Auke Kok <auke-jan.h.kok@intel.com>
Cc: jesse.brandeburg@intel.com, john.ronciak@intel.com,
	arjan@linux.intel.com, netdev@vger.kernel.org, jgarzik@pobox.com
Subject: Re: [-MM GIT PULL] e1000: fixes, API rewrite, cleanups
Date: Thu, 29 Mar 2007 16:57:39 -0700	[thread overview]
Message-ID: <20070329165739.04003147.akpm@linux-foundation.org> (raw)
In-Reply-To: <20070329225815.C977F40951@ahkok-mobl.jf.intel.com>

On Thu Mar 29 15:50:55 PDT 2007
Auke Kok <auke-jan.h.kok@intel.com> wrote:

> Please consider pulling from my git tree:
>     git-pull git://lost.foo-projects.org/~ahkok/git/netdev-2.6 mm
> 
> To get a copy of my current e1000 queue. This tree consists of a recent
> 'master' branch from linus, and the following patches:
> 
> 1) 3 patches from jgarzik's e1000-fixes tree
> 2) 3 patches from jgarzik's upstream branch
> 3) the hardware initialization API rewrite (as a single commit) patch
>      posted on netdev yesterday
> 4) 15 other fixes and cleanups currently in my e1000 queue

OK.  I got quite a lot of git carnage when generating the git-netdev-all
versus git-e1000 diff.  But as long as things don't change too much we
should be OK.

What I do when this happens is to manually create a remove-the-git-rejects
patch.  Hope I got it right..

Davem's tree diddles e1000_main.c as well, so whoever merges second has
a little bit of rework to do.

The current davem diff is 2.2MB, touching 852 files.  Nobody breathe...



 drivers/net/e1000/e1000_ethtool.c |    5 -
 drivers/net/e1000/e1000_main.c    |   91 ----------------------------
 2 files changed, 96 deletions(-)

diff -puN drivers/net/e1000/e1000_ethtool.c~git-e1000-fixup drivers/net/e1000/e1000_ethtool.c
--- a/drivers/net/e1000/e1000_ethtool.c~git-e1000-fixup
+++ a/drivers/net/e1000/e1000_ethtool.c
@@ -1046,13 +1046,8 @@ e1000_setup_desc_rings(struct e1000_adap
 	struct e1000_tx_ring *txdr = &adapter->test_tx_ring;
 	struct e1000_rx_ring *rxdr = &adapter->test_rx_ring;
 	struct pci_dev *pdev = adapter->pdev;
-<<<<<<< HEAD/drivers/net/e1000/e1000_ethtool.c
-	uint32_t rctl;
-	int i, ret_val;
-=======
 	u32 rctl;
 	int i, ret_val;
->>>>>>> /drivers/net/e1000/e1000_ethtool.c
 
 	/* Setup Tx descriptor ring and Tx buffers */
 
diff -puN drivers/net/e1000/e1000_main.c~git-e1000-fixup drivers/net/e1000/e1000_main.c
--- a/drivers/net/e1000/e1000_main.c~git-e1000-fixup
+++ a/drivers/net/e1000/e1000_main.c
@@ -425,42 +425,22 @@ e1000_update_mng_vlan(struct e1000_adapt
 static void
 e1000_release_hw_control(struct e1000_adapter *adapter)
 {
-<<<<<<< HEAD/drivers/net/e1000/e1000_main.c
-	uint32_t ctrl_ext;
-	uint32_t swsm;
-=======
 	u32 ctrl_ext;
 	u32 swsm;
->>>>>>> /drivers/net/e1000/e1000_main.c
 
 	/* Let firmware taken over control of h/w */
-<<<<<<< HEAD/drivers/net/e1000/e1000_main.c
-	switch (adapter->hw.mac_type) {
-	case e1000_82573:
-		swsm = E1000_READ_REG(&adapter->hw, SWSM);
-		E1000_WRITE_REG(&adapter->hw, SWSM,
-				swsm & ~E1000_SWSM_DRV_LOAD);
-		break;
-=======
 	switch (adapter->hw.mac.type) {
 	case e1000_82573:
 		swsm = E1000_READ_REG(&adapter->hw, E1000_SWSM);
 		E1000_WRITE_REG(&adapter->hw, E1000_SWSM,
 				swsm & ~E1000_SWSM_DRV_LOAD);
 		break;
->>>>>>> /drivers/net/e1000/e1000_main.c
 	case e1000_82571:
 	case e1000_82572:
 	case e1000_80003es2lan:
-<<<<<<< HEAD/drivers/net/e1000/e1000_main.c
-	case e1000_ich8lan:
-		ctrl_ext = E1000_READ_REG(&adapter->hw, CTRL_EXT);
-		E1000_WRITE_REG(&adapter->hw, CTRL_EXT,
-=======
 	case e1000_ich8lan:
 		ctrl_ext = E1000_READ_REG(&adapter->hw, E1000_CTRL_EXT);
 		E1000_WRITE_REG(&adapter->hw, E1000_CTRL_EXT,
->>>>>>> /drivers/net/e1000/e1000_main.c
 				ctrl_ext & ~E1000_CTRL_EXT_DRV_LOAD);
 		break;
 	default:
@@ -482,42 +462,22 @@ e1000_release_hw_control(struct e1000_ad
 static void
 e1000_get_hw_control(struct e1000_adapter *adapter)
 {
-<<<<<<< HEAD/drivers/net/e1000/e1000_main.c
-	uint32_t ctrl_ext;
-	uint32_t swsm;
-=======
 	u32 ctrl_ext;
 	u32 swsm;
->>>>>>> /drivers/net/e1000/e1000_main.c
 
 	/* Let firmware know the driver has taken over */
-<<<<<<< HEAD/drivers/net/e1000/e1000_main.c
-	switch (adapter->hw.mac_type) {
-	case e1000_82573:
-		swsm = E1000_READ_REG(&adapter->hw, SWSM);
-		E1000_WRITE_REG(&adapter->hw, SWSM,
-				swsm | E1000_SWSM_DRV_LOAD);
-		break;
-=======
 	switch (adapter->hw.mac.type) {
 	case e1000_82573:
 		swsm = E1000_READ_REG(&adapter->hw, E1000_SWSM);
 		E1000_WRITE_REG(&adapter->hw, E1000_SWSM,
 				swsm | E1000_SWSM_DRV_LOAD);
 		break;
->>>>>>> /drivers/net/e1000/e1000_main.c
 	case e1000_82571:
 	case e1000_82572:
 	case e1000_80003es2lan:
-<<<<<<< HEAD/drivers/net/e1000/e1000_main.c
-	case e1000_ich8lan:
-		ctrl_ext = E1000_READ_REG(&adapter->hw, CTRL_EXT);
-		E1000_WRITE_REG(&adapter->hw, CTRL_EXT,
-=======
 	case e1000_ich8lan:
 		ctrl_ext = E1000_READ_REG(&adapter->hw, E1000_CTRL_EXT);
 		E1000_WRITE_REG(&adapter->hw, E1000_CTRL_EXT,
->>>>>>> /drivers/net/e1000/e1000_main.c
 				ctrl_ext | E1000_CTRL_EXT_DRV_LOAD);
 		break;
 	default:
@@ -571,19 +531,11 @@ e1000_release_manageability(struct e1000
 	}
 }
 
-<<<<<<< HEAD/drivers/net/e1000/e1000_main.c
-/**
- * e1000_configure - configure the hardware for RX and TX
- * @adapter = private board structure
- **/
-static void e1000_configure(struct e1000_adapter *adapter)
-=======
 /**
  * e1000_configure - configure the hardware for RX and TX
  * @adapter: private board structure
  **/
 static void e1000_configure(struct e1000_adapter *adapter)
->>>>>>> /drivers/net/e1000/e1000_main.c
 {
 	struct net_device *netdev = adapter->netdev;
 	int i;
@@ -705,11 +657,6 @@ e1000_down(struct e1000_adapter *adapter
 	 * reschedule our watchdog timer */
 	set_bit(__E1000_DOWN, &adapter->flags);
 
-<<<<<<< HEAD/drivers/net/e1000/e1000_main.c
-#ifdef CONFIG_E1000_NAPI
-	netif_poll_disable(netdev);
-#endif
-=======
 	/* disable receives in the hardware */
 	rctl = E1000_READ_REG(&adapter->hw, E1000_RCTL);
 	E1000_WRITE_REG(&adapter->hw, E1000_RCTL, rctl & ~E1000_RCTL_EN);
@@ -728,7 +675,6 @@ e1000_down(struct e1000_adapter *adapter
 #ifdef CONFIG_E1000_NAPI
 	netif_poll_disable(netdev);
 #endif
->>>>>>> /drivers/net/e1000/e1000_main.c
 	e1000_irq_disable(adapter);
 
 	del_timer_sync(&adapter->tx_fifo_stall_timer);
@@ -1534,30 +1480,6 @@ e1000_open(struct net_device *netdev)
 	    e1000_check_mng_mode(&adapter->hw))
 		e1000_get_hw_control(adapter);
 
-<<<<<<< HEAD/drivers/net/e1000/e1000_main.c
-	/* before we allocate an interrupt, we must be ready to handle it.
-	 * Setting DEBUG_SHIRQ in the kernel makes it fire an interrupt
-	 * as soon as we call pci_request_irq, so we have to setup our
-	 * clean_rx handler before we do so.  */
-	e1000_configure(adapter);
-
-	err = e1000_request_irq(adapter);
-	if (err)
-		goto err_req_irq;
-
-	/* From here on the code is the same as e1000_up() */
-	clear_bit(__E1000_DOWN, &adapter->flags);
-
-#ifdef CONFIG_E1000_NAPI
-	netif_poll_enable(netdev);
-#endif
-
-	e1000_irq_enable(adapter);
-
-	/* fire a link status change interrupt to start the watchdog */
-	E1000_WRITE_REG(&adapter->hw, ICS, E1000_ICS_LSC);
-
-=======
 	/* before we allocate an interrupt, we must be ready to handle it.
 	 * Setting DEBUG_SHIRQ in the kernel makes it fire an interrupt
 	 * as soon as we call pci_request_irq, so we have to setup our
@@ -1580,7 +1502,6 @@ e1000_open(struct net_device *netdev)
 	/* fire a link status change interrupt to start the watchdog */
 	E1000_WRITE_REG(&adapter->hw, E1000_ICS, E1000_ICS_LSC);
 
->>>>>>> /drivers/net/e1000/e1000_main.c
 	return E1000_SUCCESS;
 
 err_req_irq:
@@ -2799,13 +2720,9 @@ e1000_watchdog_task(struct work_struct *
 
 			netif_carrier_on(netdev);
 			netif_wake_queue(netdev);
-<<<<<<< HEAD/drivers/net/e1000/e1000_main.c
-			mod_timer(&adapter->phy_info_timer, round_jiffies(jiffies + 2 * HZ));
-=======
 			if (!test_bit(__E1000_DOWN, &adapter->flags))
 				mod_timer(&adapter->phy_info_timer,
 				          round_jiffies(jiffies + 2 * HZ));
->>>>>>> /drivers/net/e1000/e1000_main.c
 			adapter->smartspeed = 0;
 		} else {
 			/* make sure the receive unit is started */
@@ -2822,13 +2739,9 @@ e1000_watchdog_task(struct work_struct *
 			DPRINTK(LINK, INFO, "NIC Link is Down\n");
 			netif_carrier_off(netdev);
 			netif_stop_queue(netdev);
-<<<<<<< HEAD/drivers/net/e1000/e1000_main.c
-			mod_timer(&adapter->phy_info_timer, round_jiffies(jiffies + 2 * HZ));
-=======
 			if (!test_bit(__E1000_DOWN, &adapter->flags))
 				mod_timer(&adapter->phy_info_timer,
 				          round_jiffies(jiffies + 2 * HZ));
->>>>>>> /drivers/net/e1000/e1000_main.c
 
 			/* 80003ES2LAN workaround--
 			 * For packet buffer work-around on link down event;
@@ -2881,13 +2794,9 @@ link_up:
 		e1000_rar_set(&adapter->hw, adapter->hw.mac.addr, 0);
 
 	/* Reset the timer */
-<<<<<<< HEAD/drivers/net/e1000/e1000_main.c
-	mod_timer(&adapter->watchdog_timer, round_jiffies(jiffies + 2 * HZ));
-=======
 	if (!test_bit(__E1000_DOWN, &adapter->flags))
 		mod_timer(&adapter->watchdog_timer,
 		          round_jiffies(jiffies + 2 * HZ));
->>>>>>> /drivers/net/e1000/e1000_main.c
 }
 
 enum latency_range {
_


  reply	other threads:[~2007-03-29 23:57 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-29 22:58 [-MM GIT PULL] e1000: fixes, API rewrite, cleanups Auke Kok
2007-03-29 23:57 ` Andrew Morton [this message]
2007-03-30  0:03   ` Kok, Auke
2007-03-30  0:13     ` Andrew Morton
2007-03-31 16:00 ` OGAWA Hirofumi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20070329165739.04003147.akpm@linux-foundation.org \
    --to=akpm@linux-foundation.org \
    --cc=arjan@linux.intel.com \
    --cc=auke-jan.h.kok@intel.com \
    --cc=jesse.brandeburg@intel.com \
    --cc=jgarzik@pobox.com \
    --cc=john.ronciak@intel.com \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).