1/* 2 * Copyright 2014, General Dynamics C4 Systems 3 * 4 * This software may be distributed and modified according to the terms of 5 * the GNU General Public License version 2. Note that NO WARRANTY is provided. 6 * See "LICENSE_GPLv2.txt" for details. 7 * 8 * @TAG(GD_GPL) 9 */ 10 11#ifndef __MACHINE_H 12#define __MACHINE_H 13 14#include <plat/machine.h> 15#include <machine/registerset.h> 16 17#include <mode/machine.h> 18#include <plat/machine/hardware.h> 19 20static inline void* CONST 21ptrFromPAddr(paddr_t paddr) 22{ 23 return (void*)(paddr + BASE_OFFSET); 24} 25 26static inline paddr_t CONST 27addrFromPPtr(void* pptr) 28{ 29 return (paddr_t)pptr - BASE_OFFSET; 30} 31 32static inline region_t CONST 33paddr_to_pptr_reg(p_region_t p_reg) 34{ 35 return (region_t) { 36 p_reg.start + BASE_OFFSET, p_reg.end + BASE_OFFSET 37 }; 38} 39 40static inline p_region_t CONST 41pptr_to_paddr_reg(region_t reg) 42{ 43 return (p_region_t) { 44 reg.start - BASE_OFFSET, reg.end - BASE_OFFSET 45 }; 46} 47 48#define paddr_to_pptr ptrFromPAddr 49#define pptr_to_paddr(x) addrFromPPtr(x) 50 51#endif 52