xen-mapcache.h (1689B)
1/* 2 * Copyright (C) 2011 Citrix Ltd. 3 * 4 * This work is licensed under the terms of the GNU GPL, version 2. See 5 * the COPYING file in the top-level directory. 6 * 7 */ 8 9#ifndef XEN_MAPCACHE_H 10#define XEN_MAPCACHE_H 11 12#include "exec/cpu-common.h" 13 14typedef hwaddr (*phys_offset_to_gaddr_t)(hwaddr phys_offset, 15 ram_addr_t size); 16#ifdef CONFIG_XEN 17 18void xen_map_cache_init(phys_offset_to_gaddr_t f, 19 void *opaque); 20uint8_t *xen_map_cache(hwaddr phys_addr, hwaddr size, 21 uint8_t lock, bool dma); 22ram_addr_t xen_ram_addr_from_mapcache(void *ptr); 23void xen_invalidate_map_cache_entry(uint8_t *buffer); 24void xen_invalidate_map_cache(void); 25uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr, 26 hwaddr new_phys_addr, 27 hwaddr size); 28#else 29 30static inline void xen_map_cache_init(phys_offset_to_gaddr_t f, 31 void *opaque) 32{ 33} 34 35static inline uint8_t *xen_map_cache(hwaddr phys_addr, 36 hwaddr size, 37 uint8_t lock, 38 bool dma) 39{ 40 abort(); 41} 42 43static inline ram_addr_t xen_ram_addr_from_mapcache(void *ptr) 44{ 45 abort(); 46} 47 48static inline void xen_invalidate_map_cache_entry(uint8_t *buffer) 49{ 50} 51 52static inline void xen_invalidate_map_cache(void) 53{ 54} 55 56static inline uint8_t *xen_replace_cache_entry(hwaddr old_phys_addr, 57 hwaddr new_phys_addr, 58 hwaddr size) 59{ 60 abort(); 61} 62 63#endif 64 65#endif /* XEN_MAPCACHE_H */