aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorSteven Walter <stevenrwalter@gmail.com>2010-05-31 13:11:53 -0400
committerDavid S. Miller <davem@davemloft.net>2010-06-01 03:15:50 -0400
commit7a1d7f01b5e90f85d0b4ec4bfd5a5da769d2bb1d (patch)
tree39b696896fa39a627b5dd97657c0cf96808e6e97 /drivers/net
parent92c4bbfac65e0b0d4d4ea5ed21fddf62323d335b (diff)
tulip: explicity set to D0 power state during init
During the first suspend the chip would refuse to enter D3. Subsequent suspends worked okay. During resume the chip is commanded into D0. Doing so during initialization fixes the initial suspend. Signed-off-by: Steven Walter <stevenrwalter@gmail.com> Signed-off-by: Grant Grundler <grundler@parisc-linux.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/tulip/tulip_core.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/tulip/tulip_core.c b/drivers/net/tulip/tulip_core.c
index 254643ed945e..bd3b41daa892 100644
--- a/drivers/net/tulip/tulip_core.c
+++ b/drivers/net/tulip/tulip_core.c
@@ -1381,6 +1381,13 @@ static int __devinit tulip_init_one (struct pci_dev *pdev,
1381 return i; 1381 return i;
1382 } 1382 }
1383 1383
1384 /* The chip will fail to enter a low-power state later unless
1385 * first explicitly commanded into D0 */
1386 if (pci_set_power_state(pdev, PCI_D0)) {
1387 printk (KERN_NOTICE PFX
1388 "Failed to set power state to D0\n");
1389 }
1390
1384 irq = pdev->irq; 1391 irq = pdev->irq;
1385 1392
1386 /* alloc_etherdev ensures aligned and zeroed private structures */ 1393 /* alloc_etherdev ensures aligned and zeroed private structures */