public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* b44 needs to reclaim its interrupt after swsusp
@ 2004-04-21  0:02 Pavel Machek
  2004-04-22  3:27 ` Jeff Garzik
  0 siblings, 1 reply; 3+ messages in thread
From: Pavel Machek @ 2004-04-21  0:02 UTC (permalink / raw)
  To: kernel list, seife

Hi!

b44 needs to free/reclaim its interrupt across suspend in order to
work. This patch makes it work, but I'm not quite sure why its
needed. Interrupt is listed as IO-APIC-level in /proc/interupts.

							Pavel

--- clean/drivers/net/b44.c	2004-04-21 01:32:52.000000000 +0200
+++ linux/drivers/net/b44.c	2004-04-21 01:53:18.000000000 +0200
@@ -1251,7 +1251,7 @@
 }
 
 #if 0
-/*static*/ void b44_dump_state(struct b44 *bp)
+void b44_dump_state(struct b44 *bp)
 {
 	u32 val32, val32_2, val32_3, val32_4, val32_5;
 	u16 val16;
@@ -1874,6 +1874,8 @@
 	b44_free_rings(bp);
 
 	spin_unlock_irq(&bp->lock);
+
+	free_irq(dev->irq, dev);
 	return 0;
 }
 
@@ -1887,6 +1889,9 @@
 
 	pci_restore_state(pdev, bp->pci_cfg_state);
 
+	if (request_irq(dev->irq, b44_interrupt, SA_SHIRQ, dev->name, dev))
+		printk("b44: request_irq failed\n");
+
 	spin_lock_irq(&bp->lock);
 
 	b44_init_rings(bp);


-- 
When do you have a heart between your knees?
[Johanka's followup: and *two* hearts?]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: b44 needs to reclaim its interrupt after swsusp
  2004-04-21  0:02 b44 needs to reclaim its interrupt after swsusp Pavel Machek
@ 2004-04-22  3:27 ` Jeff Garzik
  2004-04-22 10:33   ` Pavel Machek
  0 siblings, 1 reply; 3+ messages in thread
From: Jeff Garzik @ 2004-04-22  3:27 UTC (permalink / raw)
  To: Pavel Machek; +Cc: kernel list, seife

Pavel Machek wrote:
> Hi!
> 
> b44 needs to free/reclaim its interrupt across suspend in order to
> work. This patch makes it work, but I'm not quite sure why its
> needed. Interrupt is listed as IO-APIC-level in /proc/interupts.
> 
> 							Pavel
> 
> --- clean/drivers/net/b44.c	2004-04-21 01:32:52.000000000 +0200
> +++ linux/drivers/net/b44.c	2004-04-21 01:53:18.000000000 +0200
> @@ -1251,7 +1251,7 @@
>  }
>  
>  #if 0
> -/*static*/ void b44_dump_state(struct b44 *bp)
> +void b44_dump_state(struct b44 *bp)
>  {
>  	u32 val32, val32_2, val32_3, val32_4, val32_5;
>  	u16 val16;
> @@ -1874,6 +1874,8 @@
>  	b44_free_rings(bp);
>  
>  	spin_unlock_irq(&bp->lock);
> +
> +	free_irq(dev->irq, dev);
>  	return 0;
>  }
>  
> @@ -1887,6 +1889,9 @@
>  
>  	pci_restore_state(pdev, bp->pci_cfg_state);
>  
> +	if (request_irq(dev->irq, b44_interrupt, SA_SHIRQ, dev->name, dev))
> +		printk("b44: request_irq failed\n");
> +

look ok, with minor nit:  use KERN_xxx prefix in printk



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: b44 needs to reclaim its interrupt after swsusp
  2004-04-22  3:27 ` Jeff Garzik
@ 2004-04-22 10:33   ` Pavel Machek
  0 siblings, 0 replies; 3+ messages in thread
From: Pavel Machek @ 2004-04-22 10:33 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: kernel list, seife

Hi!

> >@@ -1874,6 +1874,8 @@
> > 	b44_free_rings(bp);
> > 
> > 	spin_unlock_irq(&bp->lock);
> >+
> >+	free_irq(dev->irq, dev);
> > 	return 0;
> > }
> > 
> >@@ -1887,6 +1889,9 @@
> > 
> > 	pci_restore_state(pdev, bp->pci_cfg_state);
> > 
> >+	if (request_irq(dev->irq, b44_interrupt, SA_SHIRQ, dev->name, dev))
> >+		printk("b44: request_irq failed\n");
> >+
> 
> look ok, with minor nit:  use KERN_xxx prefix in printk

Fixed, here's updated patch, please apply,
								Pavel

--- tmp/linux/drivers/net/b44.c	2004-04-22 12:25:36.000000000 +0200
+++ linux/drivers/net/b44.c	2004-04-22 12:20:48.000000000 +0200
@@ -1252,7 +1252,7 @@
 }
 
 #if 0
-/*static*/ void b44_dump_state(struct b44 *bp)
+void b44_dump_state(struct b44 *bp)
 {
 	u32 val32, val32_2, val32_3, val32_4, val32_5;
 	u16 val16;
@@ -1875,6 +1875,8 @@
 	b44_free_rings(bp);
 
 	spin_unlock_irq(&bp->lock);
+
+	free_irq(dev->irq, dev);
 	return 0;
 }
 
@@ -1888,6 +1890,9 @@
 
 	pci_restore_state(pdev, bp->pci_cfg_state);
 
+	if (request_irq(dev->irq, b44_interrupt, SA_SHIRQ, dev->name, dev))
+		printk(KERN_ERR PFX "%s: request_irq failed\n", dev->name);
+
 	spin_lock_irq(&bp->lock);
 
 	b44_init_rings(bp);

-- 
When do you have a heart between your knees?
[Johanka's followup: and *two* hearts?]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2004-04-22 10:33 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-04-21  0:02 b44 needs to reclaim its interrupt after swsusp Pavel Machek
2004-04-22  3:27 ` Jeff Garzik
2004-04-22 10:33   ` Pavel Machek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox