The SP804 driver statically initialises the cpumask of the clock event device to be cpu_all_mask, which is derived from the compile-time constant NR_CPUS. This breaks SMP_ON_UP systems where the interrupt controller handling the sp804 doesn't have the irq_set_affinity callback on the irq_chip, because the common timer code fails to identify the device as cpu-local and ends up treating it as a broadcast device instead. This patch fixes the problem by using cpu_possible_mask at runtime, which will correctly represent the possible CPUs when SMP_ON_UP is being used. Signed-off-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> |
||
|---|---|---|
| .. | ||
| dmabounce.c | ||
| gic.c | ||
| icst.c | ||
| it8152.c | ||
| Kconfig | ||
| locomo.c | ||
| Makefile | ||
| sa1111.c | ||
| scoop.c | ||
| sharpsl_param.c | ||
| timer-sp.c | ||
| via82c505.c | ||
| vic.c | ||