Zephyr Project API 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
memory.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: Apache-2.0 */
2/*
3 * Copyright (c) 2023 EPAM Systems
4 */
5
11
12#ifndef ZEPHYR_XEN_MEMORY_H_
13#define ZEPHYR_XEN_MEMORY_H_
14
15#include <xen/public/xen.h>
16#include <xen/public/memory.h>
17
18#include <zephyr/kernel.h>
19
26
39int xendom_add_to_physmap(int domid, unsigned long idx, unsigned int space,
40 xen_pfn_t gpfn);
41
58int xendom_add_to_physmap_batch(int domid, int foreign_domid,
59 unsigned int space, unsigned int size,
60 xen_ulong_t *idxs, xen_pfn_t *gpfns, int *errs);
61
71int xendom_remove_from_physmap(int domid, xen_pfn_t gpfn);
72
91int xendom_increase_reservation(int domid, unsigned int extent_order,
92 unsigned int nr_extents, unsigned int mem_flags,
93 xen_pfn_t *extent_start);
94
110int xendom_decrease_reservation(int domid, unsigned int extent_order,
111 unsigned int nr_extents, unsigned int mem_flags,
112 xen_pfn_t *extent_start);
113
129int xendom_populate_physmap(int domid, unsigned int extent_order,
130 unsigned int nr_extents, unsigned int mem_flags,
131 xen_pfn_t *extent_start);
132
148int xendom_acquire_resource(domid_t domid, uint16_t type, uint32_t id, uint64_t frame,
149 uint32_t *nr_frames, xen_pfn_t *frame_list);
150
152
153#endif /* ZEPHYR_XEN_MEMORY_H_ */
int xendom_acquire_resource(domid_t domid, uint16_t type, uint32_t id, uint64_t frame, uint32_t *nr_frames, xen_pfn_t *frame_list)
Acquire a Xen-managed resource mapping for a domain.
int xendom_decrease_reservation(int domid, unsigned int extent_order, unsigned int nr_extents, unsigned int mem_flags, xen_pfn_t *extent_start)
Decrease a domain memory reservation.
int xendom_increase_reservation(int domid, unsigned int extent_order, unsigned int nr_extents, unsigned int mem_flags, xen_pfn_t *extent_start)
Increase a domain memory reservation.
int xendom_populate_physmap(int domid, unsigned int extent_order, unsigned int nr_extents, unsigned int mem_flags, xen_pfn_t *extent_start)
Populate guest frames with memory.
int xendom_add_to_physmap(int domid, unsigned long idx, unsigned int space, xen_pfn_t gpfn)
Add a single mapping to a domain physmap.
int xendom_add_to_physmap_batch(int domid, int foreign_domid, unsigned int space, unsigned int size, xen_ulong_t *idxs, xen_pfn_t *gpfns, int *errs)
Add multiple mappings to a domain physmap.
int xendom_remove_from_physmap(int domid, xen_pfn_t gpfn)
Remove a mapping from a domain physmap.
Public kernel APIs.
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
__UINT64_TYPE__ uint64_t
Definition stdint.h:91
__UINT16_TYPE__ uint16_t
Definition stdint.h:89