On Tue, 12 Dec 2006, Geert Uytterhoeven wrote:
On Mon, 11 Dec 2006, Michael Schmitz wrote:
this isn't really my kettle of fish, but I post it anyway unless Petr
complains :-)
This is what makes it possible for me to test 2.6 builds on the
emulator...
Should be signed off by Petr, really.
Atari NatFeat Ethernet fixes:
- Interrupt handlers no longer pass around a struct pt_regs *
- Always return the interrupt handled status in atari_nfeth_interrupt()
- Fix incorrect prototype of atari_nfeth_probe()
Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
--- linux-m68k-2.6.19.orig/drivers/net/atari_nfeth.c 2006-12-12 21:54:04.000000000 +0100
+++ linux-m68k-2.6.19/drivers/net/atari_nfeth.c 2006-12-12 21:55:56.000000000 +0100
@@ -48,7 +48,7 @@ static inline int getEthX(struct net_dev
int atari_nfeth_open(struct net_device *dev);
int atari_nfeth_stop(struct net_device *dev);
-irqreturn_t atari_nfeth_interrupt(int irq, void *dev_id, struct pt_regs *fp);
+irqreturn_t atari_nfeth_interrupt(int irq, void *dev_id);
int atari_nfeth_xmit(struct sk_buff *skb, struct net_device *dev);
int atari_nfeth_open(struct net_device *dev)
@@ -148,12 +148,13 @@ static irqreturn_t inline recv_packet (s
return IRQ_RETVAL(handled);
}
-irqreturn_t atari_nfeth_interrupt(int irq, void *dev_id, struct pt_regs *fp)
+irqreturn_t atari_nfeth_interrupt(int irq, void *dev_id)
{
struct net_device *dev = dev_id;
struct atari_nfeth_private *anp = (struct atari_nfeth_private *)netdev_priv(dev);
int this_dev_irq_bit;
int irq_for_eth_bitmask;
+ irqreturn_t res = IRQ_NONE;
if (dev == NULL) {
#ifdef DEBUG
printk(DRV_NAME " atari_nfeth_interrupt(): interrupt for unknown device.\n");
@@ -166,6 +167,7 @@ irqreturn_t atari_nfeth_interrupt(int ir
if (this_dev_irq_bit & irq_for_eth_bitmask) {
recv_packet(dev);
nf_ethernet_interrupt(this_dev_irq_bit);
+ res = IRQ_HANDLED;
}
#ifdef DEBUG
else {
@@ -173,6 +175,7 @@ irqreturn_t atari_nfeth_interrupt(int ir
}
#endif
spin_unlock(&anp->lock);
+ return res;
}
int atari_nfeth_xmit(struct sk_buff *skb, struct net_device *dev)
--- linux-m68k-2.6.19.orig/drivers/net/Space.c 2006-12-12 21:53:54.000000000 +0100
+++ linux-m68k-2.6.19/drivers/net/Space.c 2006-12-12 22:04:45.000000000 +0100
@@ -74,7 +74,7 @@ extern struct net_device *SK_init(int un
extern struct net_device *seeq8005_probe(int unit);
extern struct net_device *smc_init(int unit);
extern struct net_device *atarilance_probe(int unit);
-extern struct net_device *atari_nfeth_probe(struct net_device *);
+extern struct net_device *atari_nfeth_probe(int units);
extern struct net_device *sun3lance_probe(int unit);
extern struct net_device *sun3_82586_probe(int unit);
extern struct net_device *apne_probe(int unit);
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
-
To unsubscribe from this list: send the line "unsubscribe linux-m68k" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html