1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 */ 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * Copyright (C) 2002 - 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com) 4*4882a593Smuzhiyun */ 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun #ifndef __MEM_H__ 7*4882a593Smuzhiyun #define __MEM_H__ 8*4882a593Smuzhiyun 9*4882a593Smuzhiyun extern int phys_mapping(unsigned long phys, unsigned long long *offset_out); 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun extern unsigned long uml_physmem; to_phys(void * virt)12*4882a593Smuzhiyunstatic inline unsigned long to_phys(void *virt) 13*4882a593Smuzhiyun { 14*4882a593Smuzhiyun return(((unsigned long) virt) - uml_physmem); 15*4882a593Smuzhiyun } 16*4882a593Smuzhiyun to_virt(unsigned long phys)17*4882a593Smuzhiyunstatic inline void *to_virt(unsigned long phys) 18*4882a593Smuzhiyun { 19*4882a593Smuzhiyun return((void *) uml_physmem + phys); 20*4882a593Smuzhiyun } 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun #endif 23