Use cpumask_t rather than hand-rolled bitmask code in sb1250_set_affinity.
Signed-Off-By: Andrew Isaacson <adi@broadcom.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
···5353static unsigned int startup_sb1250_irq(unsigned int irq);5454static void ack_sb1250_irq(unsigned int irq);5555#ifdef CONFIG_SMP5656-static void sb1250_set_affinity(unsigned int irq, unsigned long mask);5656+static void sb1250_set_affinity(unsigned int irq, cpumask_t mask);5757#endif58585959#ifdef CONFIG_SIBYTE_HAS_LDT···117117}118118119119#ifdef CONFIG_SMP120120-static void sb1250_set_affinity(unsigned int irq, unsigned long mask)120120+static void sb1250_set_affinity(unsigned int irq, cpumask_t mask)121121{122122 int i = 0, old_cpu, cpu, int_on;123123 u64 cur_ints;124124 irq_desc_t *desc = irq_desc + irq;125125 unsigned long flags;126126127127- while (mask) {128128- if (mask & 1) {129129- mask >>= 1;130130- break;131131- }132132- mask >>= 1;133133- i++;134134- }127127+ i = first_cpu(mask);135128136136- if (mask) {129129+ if (cpus_weight(mask) > 1) {137130 printk("attempted to set irq affinity for irq %d to multiple CPUs\n", irq);138131 return;139132 }