libata: Add ATA_HORKAGE_NO_NCQ_ON_ATI for Samsung 860 and 870 SSD.
[linux-2.6-microblaze.git] / include / linux / numa.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _LINUX_NUMA_H
3 #define _LINUX_NUMA_H
4 #include <linux/types.h>
5
6 #ifdef CONFIG_NODES_SHIFT
7 #define NODES_SHIFT     CONFIG_NODES_SHIFT
8 #else
9 #define NODES_SHIFT     0
10 #endif
11
12 #define MAX_NUMNODES    (1 << NODES_SHIFT)
13
14 #define NUMA_NO_NODE    (-1)
15
16 /* optionally keep NUMA memory info available post init */
17 #ifdef CONFIG_NUMA_KEEP_MEMINFO
18 #define __initdata_or_meminfo
19 #else
20 #define __initdata_or_meminfo __initdata
21 #endif
22
23 #ifdef CONFIG_NUMA
24 #include <linux/printk.h>
25 #include <asm/sparsemem.h>
26
27 /* Generic implementation available */
28 int numa_map_to_online_node(int node);
29
30 #ifndef memory_add_physaddr_to_nid
31 static inline int memory_add_physaddr_to_nid(u64 start)
32 {
33         pr_info_once("Unknown online node for memory at 0x%llx, assuming node 0\n",
34                         start);
35         return 0;
36 }
37 #endif
38 #ifndef phys_to_target_node
39 static inline int phys_to_target_node(u64 start)
40 {
41         pr_info_once("Unknown target node for memory at 0x%llx, assuming node 0\n",
42                         start);
43         return 0;
44 }
45 #endif
46 #else /* !CONFIG_NUMA */
47 static inline int numa_map_to_online_node(int node)
48 {
49         return NUMA_NO_NODE;
50 }
51 static inline int memory_add_physaddr_to_nid(u64 start)
52 {
53         return 0;
54 }
55 static inline int phys_to_target_node(u64 start)
56 {
57         return 0;
58 }
59 #endif
60
61 #endif /* _LINUX_NUMA_H */