blob: 0d0aa61d68966a56e65e35cc6f38687b7e16816f [file] [log] [blame]
Avi Kivity1c0ffa52011-07-26 14:26:04 +03001/*
Dong Xu Wang07f35072011-11-22 18:06:26 +08002 * Internal memory management interfaces
Avi Kivity1c0ffa52011-07-26 14:26:04 +03003 *
4 * Copyright 2011 Red Hat, Inc. and/or its affiliates
5 *
6 * Authors:
7 * Avi Kivity <avi@redhat.com>
8 *
9 * This work is licensed under the terms of the GNU GPL, version 2. See
10 * the COPYING file in the top-level directory.
11 *
12 */
13
Markus Armbruster121d0712016-06-29 10:12:57 +020014#ifndef EXEC_ADDRESS_SPACES_H
15#define EXEC_ADDRESS_SPACES_H
Avi Kivity1c0ffa52011-07-26 14:26:04 +030016
17/*
18 * Internal interfaces between memory.c/exec.c/vl.c. Do not #include unless
19 * you're one of them.
20 */
21
Avi Kivity1c0ffa52011-07-26 14:26:04 +030022#ifndef CONFIG_USER_ONLY
23
24/* Get the root memory region. This interface should only be used temporarily
25 * until a proper bus interface is available.
26 */
27MemoryRegion *get_system_memory(void);
28
Avi Kivity309cb472011-08-08 16:09:03 +030029/* Get the root I/O port region. This interface should only be used
30 * temporarily until a proper bus interface is available.
31 */
32MemoryRegion *get_system_io(void);
33
Avi Kivityf6790af2012-10-02 20:13:51 +020034extern AddressSpace address_space_memory;
35extern AddressSpace address_space_io;
36
Avi Kivity1c0ffa52011-07-26 14:26:04 +030037#endif
38
39#endif