File: /Users/paulross/dev/linux/linux-3.13/include/asm-generic/topology.h

Green shading in the line number column means the source is part of the translation unit, red means it is conditionally excluded. Highlighted line numbers link to the translation unit page. Highlighted macros link to the macro page.

       1: /*
       2:  * linux/include/asm-generic/topology.h
       3:  *
       4:  * Written by: Matthew Dobson, IBM Corporation
       5:  *
       6:  * Copyright (C) 2002, IBM Corp.
       7:  *
       8:  * All rights reserved.
       9:  *
      10:  * This program is free software; you can redistribute it and/or modify
      11:  * it under the terms of the GNU General Public License as published by
      12:  * the Free Software Foundation; either version 2 of the License, or
      13:  * (at your option) any later version.
      14:  *
      15:  * This program is distributed in the hope that it will be useful, but
      16:  * WITHOUT ANY WARRANTY; without even the implied warranty of
      17:  * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or
      18:  * NON INFRINGEMENT.  See the GNU General Public License for more
      19:  * details.
      20:  *
      21:  * You should have received a copy of the GNU General Public License
      22:  * along with this program; if not, write to the Free Software
      23:  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
      24:  *
      25:  * Send feedback to <colpatch@us.ibm.com>
      26:  */
      27: #ifndef _ASM_GENERIC_TOPOLOGY_H
      28: #define _ASM_GENERIC_TOPOLOGY_H
      29: 
      30: #ifndef    CONFIG_NUMA
      31: 
      32: /* Other architectures wishing to use this simple topology API should fill
      33:    in the below functions as appropriate in their own <asm/topology.h> file. */
      34: #ifndef cpu_to_node
      35: #define cpu_to_node(cpu)    ((void)(cpu),0)
      36: #endif
      37: #ifndef set_numa_node
      38: #define set_numa_node(node)
      39: #endif
      40: #ifndef set_cpu_numa_node
      41: #define set_cpu_numa_node(cpu, node)
      42: #endif
      43: #ifndef cpu_to_mem
      44: #define cpu_to_mem(cpu)        ((void)(cpu),0)
      45: #endif
      46: 
      47: #ifndef parent_node
      48: #define parent_node(node)    ((void)(node),0)
      49: #endif
      50: #ifndef cpumask_of_node
      51: #define cpumask_of_node(node)    ((void)node, cpu_online_mask)
      52: #endif
      53: #ifndef pcibus_to_node
      54: #define pcibus_to_node(bus)    ((void)(bus), -1)
      55: #endif
      56: 
      57: #ifndef cpumask_of_pcibus
      58: #define cpumask_of_pcibus(bus)    (pcibus_to_node(bus) == -1 ?        \
      59:                  cpu_all_mask :                \
      60:                  cpumask_of_node(pcibus_to_node(bus)))
      61: #endif
      62: 
      63: #endif    /* CONFIG_NUMA */
      64: 
      65: #if !defined(CONFIG_NUMA) || !defined(CONFIG_HAVE_MEMORYLESS_NODES)
      66: 
      67: #ifndef set_numa_mem
      68: #define set_numa_mem(node)
      69: #endif
      70: #ifndef set_cpu_numa_mem
      71: #define set_cpu_numa_mem(cpu, node)
      72: #endif
      73: 
      74: #endif    /* !CONFIG_NUMA || !CONFIG_HAVE_MEMORYLESS_NODES */
      75: 
      76: #endif /* _ASM_GENERIC_TOPOLOGY_H */
      77: