[patch 06/13] powerpc: cell interrupt controller updates

Milton Miller miltonm at bga.com
Sat Mar 25 04:43:39 EST 2006


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?

milton




More information about the Linuxppc-dev mailing list