On Friday 24 March 2006 18:43, Milton Miller wrote:
> On Mar 22, 2006, at 5:00 PM, Arnd Bergmann wrote:
> > static void spider_enable_irq(unsigned int irq)
> > {
> > + int nodeid = (irq / IIC_NODE_STRIDE) * 0x10;
> > void __iomem *cfg = spider_get_irq_config(irq);
> > irq = spider_get_nr(irq);
> >
> > - out_be32(cfg, in_be32(cfg) | 0x3107000eu);
> > + out_be32(cfg, in_be32(cfg) | 0x3107000eu | nodeid);
> > out_be32(cfg + 4, in_be32(cfg + 4) | 0x00020000u | irq);
> > }
> >
>
> I just did a quick read of the code, but my first thought is what if
> some other node id was previously set? Perhaps you should mask off
> some bits before or'ing in the node id?
Good point. The firmware always sets nodeid zero (or the same one that
we set), but I can't see any reason why we should take that for granted.
Thanks,
Arnd <><
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]