xref: /linux/tools/include/linux/mm.h (revision aa486552a110fd6e625bb66b7edf0e0df7389a1a)
12473bc35SKarolina Drobnik /* SPDX-License-Identifier: GPL-2.0 */
22473bc35SKarolina Drobnik #ifndef _TOOLS_LINUX_MM_H
32473bc35SKarolina Drobnik #define _TOOLS_LINUX_MM_H
42473bc35SKarolina Drobnik 
510a04ff0SAlexander Lobakin #include <linux/align.h>
62473bc35SKarolina Drobnik #include <linux/mmzone.h>
72473bc35SKarolina Drobnik 
82473bc35SKarolina Drobnik #define PAGE_SHIFT		12
92473bc35SKarolina Drobnik #define PAGE_SIZE		(_AC(1, UL) << PAGE_SHIFT)
102473bc35SKarolina Drobnik #define PAGE_MASK		(~(PAGE_SIZE - 1))
112473bc35SKarolina Drobnik 
122473bc35SKarolina Drobnik #define PHYS_ADDR_MAX	(~(phys_addr_t)0)
132473bc35SKarolina Drobnik 
142473bc35SKarolina Drobnik #define PAGE_ALIGN(addr) ALIGN(addr, PAGE_SIZE)
15b73f6b98SWei Yang #define PAGE_ALIGN_DOWN(addr) ALIGN_DOWN(addr, PAGE_SIZE)
162473bc35SKarolina Drobnik 
172473bc35SKarolina Drobnik #define __va(x) ((void *)((unsigned long)(x)))
182473bc35SKarolina Drobnik #define __pa(x) ((unsigned long)(x))
192473bc35SKarolina Drobnik 
202473bc35SKarolina Drobnik #define pfn_to_page(pfn) ((void *)((pfn) * PAGE_SIZE))
212473bc35SKarolina Drobnik 
222473bc35SKarolina Drobnik #define phys_to_virt phys_to_virt
phys_to_virt(unsigned long address)232473bc35SKarolina Drobnik static inline void *phys_to_virt(unsigned long address)
242473bc35SKarolina Drobnik {
252473bc35SKarolina Drobnik 	return __va(address);
262473bc35SKarolina Drobnik }
272473bc35SKarolina Drobnik 
28*39f64e40SWei Yang #define virt_to_phys virt_to_phys
virt_to_phys(volatile void * address)29*39f64e40SWei Yang static inline phys_addr_t virt_to_phys(volatile void *address)
30*39f64e40SWei Yang {
31*39f64e40SWei Yang 	return (phys_addr_t)address;
32*39f64e40SWei Yang }
33*39f64e40SWei Yang 
344b2d6312SRong Tao void reserve_bootmem_region(phys_addr_t start, phys_addr_t end, int nid);
352473bc35SKarolina Drobnik 
totalram_pages_inc(void)362473bc35SKarolina Drobnik static inline void totalram_pages_inc(void)
372473bc35SKarolina Drobnik {
382473bc35SKarolina Drobnik }
392473bc35SKarolina Drobnik 
totalram_pages_add(long count)402473bc35SKarolina Drobnik static inline void totalram_pages_add(long count)
412473bc35SKarolina Drobnik {
422473bc35SKarolina Drobnik }
432473bc35SKarolina Drobnik 
early_pfn_to_nid(unsigned long pfn)447d8ed162SWei Yang static inline int early_pfn_to_nid(unsigned long pfn)
457d8ed162SWei Yang {
467d8ed162SWei Yang 	return 0;
477d8ed162SWei Yang }
487d8ed162SWei Yang 
492473bc35SKarolina Drobnik #endif
50