Re: [patch 06/13] powerpc: cell interrupt controller updates
From: Arnd Bergmann <hidden>
Date: 2006-03-24 18:05:10
Also in:
lkml
From: Arnd Bergmann <hidden>
Date: 2006-03-24 18:05:10
Also in:
lkml
On Friday 24 March 2006 18:43, Milton Miller wrote:
On Mar 22, 2006, at 5:00 PM, Arnd Bergmann wrote:quoted
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 <><