[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070130014107.GA18935@lixom.net>
Date: Mon, 29 Jan 2007 19:41:08 -0600
From: olof@...om.net (Olof Johansson)
To: Stephen Hemminger <shemminger@...ux-foundation.org>
Cc: jgarzik@...ox.com, netdev@...r.kernel.org
Subject: Re: [PATCH] PA Semi PWRficient Ethernet driver
On Mon, Jan 29, 2007 at 10:22:33AM -0800, Stephen Hemminger wrote:
> Basic initalization, setup comments.
Thanks, fixes have been incorporated and will be reposted. Most of them
was obviously just my lack of diligence. See however the two below.
> > +static irqreturn_t pasemi_mac_tx_intr(int irq, void *data)
> > +{
> > + struct net_device *dev = data;
> > + struct pasemi_mac *mac = netdev_priv(dev);
> > + unsigned int reg;
> > +
> > + pasemi_mac_clean_tx(mac);
> > +
> > + reg = PAS_IOB_DMA_TXCH_RESET_PINTC | PAS_IOB_DMA_TXCH_RESET_SINTC;
> > + if (*mac->tx_status & PAS_STATUS_TIMER)
> > + reg |= PAS_IOB_DMA_TXCH_RESET_TINTC;
> > +
> > + pci_write_config_dword(mac->iob_pdev, PAS_IOB_DMA_TXCH_RESET(mac->dma_txch),
> > + reg);
> > +
> > + return IRQ_HANDLED;
> > +}
>
> To do shared IRQ's properly you need to check to see if
> this is your device IRQ or not. Maybe reading config value?
Right now it's guaranteed that the interrupts will not be shared. They're
fixed for the on-chip devices, and no other driver should be binding to
the same channels (and thus irqs).
If it changes in the future, the driver would need other rework as well.
> > +
> > +static struct pci_driver pasemi_mac_driver = {
> > + .name = "pasemi_mac",
> > + .id_table = pasemi_mac_pci_tbl,
> > + .probe = pasemi_mac_probe,
>
> Don't you need a remove routine?
No hotplug support at this time, so I didn't see any use in providing one.
-Olof
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists