By offering Logical->Physical core id mapping, so as to reserve some physical cores via mask. This allow booting from any core when core-0 has problems. Since the maximun cores supported by Loongson-3 is 16, 32-bit cpu_startup_core_id can be split to 16-bit cpu_startup_core_id and 16-bit reserved_cores_mask for compatibility. Signed-off-by: Huacai Chen <chenhc@lemote.com> Cc: John Crispin <john@phrozen.org> Cc: Steven J. Hill <Steven.Hill@imgtec.com> Cc: linux-mips@linux-mips.org Cc: Fuxin Zhang <zhangfx@lemote.com> Cc: Zhangjin Wu <wuzhangjin@gmail.com> Patchwork: https://patchwork.linux-mips.org/patch/8323/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
		
			
				
	
	
		
			23 lines
		
	
	
	
		
			551 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			23 lines
		
	
	
	
		
			551 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
#ifndef _ASM_MACH_TOPOLOGY_H
 | 
						|
#define _ASM_MACH_TOPOLOGY_H
 | 
						|
 | 
						|
#ifdef CONFIG_NUMA
 | 
						|
 | 
						|
#define cpu_to_node(cpu)	(cpu_logical_map(cpu) >> 2)
 | 
						|
#define parent_node(node)	(node)
 | 
						|
#define cpumask_of_node(node)	(&__node_data[(node)]->cpumask)
 | 
						|
 | 
						|
struct pci_bus;
 | 
						|
extern int pcibus_to_node(struct pci_bus *);
 | 
						|
 | 
						|
#define cpumask_of_pcibus(bus)	(cpu_online_mask)
 | 
						|
 | 
						|
extern unsigned char __node_distances[MAX_NUMNODES][MAX_NUMNODES];
 | 
						|
 | 
						|
#define node_distance(from, to)	(__node_distances[(from)][(to)])
 | 
						|
 | 
						|
#endif
 | 
						|
 | 
						|
#include <asm-generic/topology.h>
 | 
						|
 | 
						|
#endif /* _ASM_MACH_TOPOLOGY_H */
 |