diff options
Diffstat (limited to 'include/common.h')
| -rw-r--r-- | include/common.h | 15 | 
1 files changed, 15 insertions, 0 deletions
| diff --git a/include/common.h b/include/common.h index d244bd40b..05e2f728e 100644 --- a/include/common.h +++ b/include/common.h @@ -485,7 +485,22 @@ void ddr_enable_ecc(unsigned int dram_size);  #endif  /* $(CPU)/cpu.c */ +static inline int cpumask_next(int cpu, unsigned int mask) +{ +	for (cpu++; !((1 << cpu) & mask); cpu++) +		; + +	return cpu; +} + +#define for_each_cpu(iter, cpu, num_cpus, mask) \ +	for (iter = 0, cpu = cpumask_next(-1, mask); \ +		iter < num_cpus; \ +		iter++, cpu = cpumask_next(cpu, mask)) \ +  int	cpu_numcores  (void); +u32	cpu_mask      (void); +int	is_core_valid (unsigned int);  int	probecpu      (void);  int	checkcpu      (void);  int	checkicache   (void); |