Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v2.6.32-rc3 104 lines 2.3 kB view raw
1#ifndef _ASM_POWERPC_TOPOLOGY_H 2#define _ASM_POWERPC_TOPOLOGY_H 3#ifdef __KERNEL__ 4 5 6struct sys_device; 7struct device_node; 8 9#ifdef CONFIG_NUMA 10 11#include <asm/mmzone.h> 12 13static inline int cpu_to_node(int cpu) 14{ 15 return numa_cpu_lookup_table[cpu]; 16} 17 18#define parent_node(node) (node) 19 20#define cpumask_of_node(node) (&numa_cpumask_lookup_table[node]) 21 22int of_node_to_nid(struct device_node *device); 23 24struct pci_bus; 25#ifdef CONFIG_PCI 26extern int pcibus_to_node(struct pci_bus *bus); 27#else 28static inline int pcibus_to_node(struct pci_bus *bus) 29{ 30 return -1; 31} 32#endif 33 34#define cpumask_of_pcibus(bus) (pcibus_to_node(bus) == -1 ? \ 35 cpu_all_mask : \ 36 cpumask_of_node(pcibus_to_node(bus))) 37 38/* sched_domains SD_NODE_INIT for PPC64 machines */ 39#define SD_NODE_INIT (struct sched_domain) { \ 40 .parent = NULL, \ 41 .child = NULL, \ 42 .groups = NULL, \ 43 .min_interval = 8, \ 44 .max_interval = 32, \ 45 .busy_factor = 32, \ 46 .imbalance_pct = 125, \ 47 .cache_nice_tries = 1, \ 48 .busy_idx = 3, \ 49 .idle_idx = 1, \ 50 .newidle_idx = 0, \ 51 .wake_idx = 0, \ 52 .flags = SD_LOAD_BALANCE \ 53 | SD_BALANCE_EXEC \ 54 | SD_BALANCE_FORK \ 55 | SD_BALANCE_NEWIDLE \ 56 | SD_SERIALIZE, \ 57 .last_balance = jiffies, \ 58 .balance_interval = 1, \ 59 .nr_balance_failed = 0, \ 60} 61 62extern void __init dump_numa_cpu_topology(void); 63 64extern int sysfs_add_device_to_node(struct sys_device *dev, int nid); 65extern void sysfs_remove_device_from_node(struct sys_device *dev, int nid); 66 67#else 68 69static inline int of_node_to_nid(struct device_node *device) 70{ 71 return 0; 72} 73 74static inline void dump_numa_cpu_topology(void) {} 75 76static inline int sysfs_add_device_to_node(struct sys_device *dev, int nid) 77{ 78 return 0; 79} 80 81static inline void sysfs_remove_device_from_node(struct sys_device *dev, 82 int nid) 83{ 84} 85 86#endif /* CONFIG_NUMA */ 87 88#include <asm-generic/topology.h> 89 90#ifdef CONFIG_SMP 91#include <asm/cputable.h> 92#define smt_capable() (cpu_has_feature(CPU_FTR_SMT)) 93 94#ifdef CONFIG_PPC64 95#include <asm/smp.h> 96 97#define topology_thread_cpumask(cpu) (&per_cpu(cpu_sibling_map, cpu)) 98#define topology_core_cpumask(cpu) (&per_cpu(cpu_core_map, cpu)) 99#define topology_core_id(cpu) (cpu_to_core_id(cpu)) 100#endif 101#endif 102 103#endif /* __KERNEL__ */ 104#endif /* _ASM_POWERPC_TOPOLOGY_H */