12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- #ifndef _IPXE_XENMEM_H
- #define _IPXE_XENMEM_H
-
- /** @file
- *
- * Xen memory operations
- *
- */
-
- FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
-
- #include <ipxe/xen.h>
- #include <xen/memory.h>
-
- /**
- * Add page to physical address space
- *
- * @v xen Xen hypervisor
- * @v add Page mapping descriptor
- * @ret xenrc Xen status code
- */
- static inline __attribute__ (( always_inline )) int
- xenmem_add_to_physmap ( struct xen_hypervisor *xen,
- struct xen_add_to_physmap *add ) {
-
- return xen_hypercall_2 ( xen, __HYPERVISOR_memory_op,
- XENMEM_add_to_physmap, virt_to_phys ( add ) );
- }
-
- /**
- * Remove page from physical address space
- *
- * @v xen Xen hypervisor
- * @v remove Page mapping descriptor
- * @ret xenrc Xen status code
- */
- static inline __attribute__ (( always_inline )) int
- xenmem_remove_from_physmap ( struct xen_hypervisor *xen,
- struct xen_remove_from_physmap *remove ) {
-
- return xen_hypercall_2 ( xen, __HYPERVISOR_memory_op,
- XENMEM_remove_from_physmap,
- virt_to_phys ( remove ) );
- }
-
- #endif /* _IPXE_XENMEM_H */
|