xref: /linux/tools/include/linux/mm.h (revision a3a02a52bcfcbcc4a637d4b68bf1bc391c9fad02)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _TOOLS_LINUX_MM_H
3 #define _TOOLS_LINUX_MM_H
4 
5 #include <linux/align.h>
6 #include <linux/mmzone.h>
7 
8 #define PAGE_SHIFT		12
9 #define PAGE_SIZE		(_AC(1, UL) << PAGE_SHIFT)
10 #define PAGE_MASK		(~(PAGE_SIZE - 1))
11 
12 #define PHYS_ADDR_MAX	(~(phys_addr_t)0)
13 
14 #define PAGE_ALIGN(addr) ALIGN(addr, PAGE_SIZE)
15 #define PAGE_ALIGN_DOWN(addr) ALIGN_DOWN(addr, PAGE_SIZE)
16 
17 #define __va(x) ((void *)((unsigned long)(x)))
18 #define __pa(x) ((unsigned long)(x))
19 
20 #define pfn_to_page(pfn) ((void *)((pfn) * PAGE_SIZE))
21 
22 #define phys_to_virt phys_to_virt
23 static inline void *phys_to_virt(unsigned long address)
24 {
25 	return __va(address);
26 }
27 
28 void reserve_bootmem_region(phys_addr_t start, phys_addr_t end, int nid);
29 
30 static inline void totalram_pages_inc(void)
31 {
32 }
33 
34 static inline void totalram_pages_add(long count)
35 {
36 }
37 
38 static inline int early_pfn_to_nid(unsigned long pfn)
39 {
40 	return 0;
41 }
42 
43 #endif
44