Zephyr API Documentation 4.3.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
dm_op.h File Reference
#include "../xen.h"
#include "../event_channel.h"

Go to the source code of this file.

Data Structures

struct  xen_dm_op_create_ioreq_server
struct  xen_dm_op_get_ioreq_server_info
struct  xen_dm_op_ioreq_server_range
struct  xen_dm_op_set_ioreq_server_state
struct  xen_dm_op_destroy_ioreq_server
struct  xen_dm_op_track_dirty_vram
struct  xen_dm_op_set_pci_intx_level
struct  xen_dm_op_set_isa_irq_level
struct  xen_dm_op_modified_memory
struct  xen_dm_op_modified_memory_extent
struct  xen_dm_op_set_mem_type
struct  xen_dm_op_inject_event
struct  xen_dm_op_inject_msi
struct  xen_dm_op_map_mem_type_to_ioreq_server
struct  xen_dm_op_remote_shutdown
struct  xen_dm_op_relocate_memory
struct  xen_dm_op_pin_memory_cacheattr
struct  xen_dm_op_set_irq_level
struct  xen_dm_op_nr_vcpus
struct  xen_dm_op
struct  xen_dm_op_buf

Macros

#define XEN_DMOP_create_ioreq_server   1
#define XEN_DMOP_get_ioreq_server_info   2
#define XEN_DMOP_no_gfns   (1u << _XEN_DMOP_no_gfns)
#define XEN_DMOP_map_io_range_to_ioreq_server   3
#define XEN_DMOP_unmap_io_range_from_ioreq_server   4
#define XEN_DMOP_IO_RANGE_PORT   0 /* I/O port range */
#define XEN_DMOP_IO_RANGE_MEMORY   1 /* MMIO range */
#define XEN_DMOP_IO_RANGE_PCI   2 /* PCI segment/bus/dev/func range */
#define XEN_DMOP_PCI_SBDF(s, b, d, f)
#define XEN_DMOP_set_ioreq_server_state   5
#define XEN_DMOP_destroy_ioreq_server   6
#define XEN_DMOP_track_dirty_vram   7
#define XEN_DMOP_set_pci_intx_level   8
#define XEN_DMOP_set_isa_irq_level   9
#define XEN_DMOP_set_pci_link_route   10
#define XEN_DMOP_modified_memory   11
#define XEN_DMOP_set_mem_type   12
#define XEN_DMOP_inject_event   13
#define XEN_DMOP_EVENT_ext_int   0 /* external interrupt */
#define XEN_DMOP_EVENT_nmi   2 /* nmi */
#define XEN_DMOP_EVENT_hw_exc   3 /* hardware exception */
#define XEN_DMOP_EVENT_sw_int   4 /* software interrupt (CD nn) */
#define XEN_DMOP_EVENT_pri_sw_exc   5 /* ICEBP (F1) */
#define XEN_DMOP_EVENT_sw_exc   6 /* INT3 (CC), INTO (CE) */
#define XEN_DMOP_inject_msi   14
#define XEN_DMOP_map_mem_type_to_ioreq_server   15
#define XEN_DMOP_IOREQ_MEM_ACCESS_READ   (1u << 0)
#define XEN_DMOP_IOREQ_MEM_ACCESS_WRITE   (1u << 1)
#define XEN_DMOP_remote_shutdown   16
#define XEN_DMOP_relocate_memory   17
#define XEN_DMOP_pin_memory_cacheattr   18
#define XEN_DMOP_MEM_CACHEATTR_UC   0
#define XEN_DMOP_MEM_CACHEATTR_WC   1
#define XEN_DMOP_MEM_CACHEATTR_WT   4
#define XEN_DMOP_MEM_CACHEATTR_WP   5
#define XEN_DMOP_MEM_CACHEATTR_WB   6
#define XEN_DMOP_MEM_CACHEATTR_UCM   7
#define XEN_DMOP_DELETE_MEM_CACHEATTR   (~(uint32_t)0)
#define XEN_DMOP_set_irq_level   19
#define XEN_DMOP_nr_vcpus   20

Typedefs

typedef uint16_t ioservid_t
typedef struct xen_dm_op_create_ioreq_server xen_dm_op_create_ioreq_server_t
typedef struct xen_dm_op_get_ioreq_server_info xen_dm_op_get_ioreq_server_info_t
typedef struct xen_dm_op_ioreq_server_range xen_dm_op_ioreq_server_range_t
typedef struct xen_dm_op_set_ioreq_server_state xen_dm_op_set_ioreq_server_state_t
typedef struct xen_dm_op_destroy_ioreq_server xen_dm_op_destroy_ioreq_server_t
typedef struct xen_dm_op_track_dirty_vram xen_dm_op_track_dirty_vram_t
typedef struct xen_dm_op_set_pci_intx_level xen_dm_op_set_pci_intx_level_t
typedef struct xen_dm_op_set_isa_irq_level xen_dm_op_set_isa_irq_level_t
typedef struct xen_dm_op_set_pci_link_route xen_dm_op_set_pci_link_route_t
typedef struct xen_dm_op_modified_memory xen_dm_op_modified_memory_t
typedef struct xen_dm_op_set_mem_type xen_dm_op_set_mem_type_t
typedef struct xen_dm_op_inject_event xen_dm_op_inject_event_t
typedef struct xen_dm_op_inject_msi xen_dm_op_inject_msi_t
typedef struct xen_dm_op_map_mem_type_to_ioreq_server xen_dm_op_map_mem_type_to_ioreq_server_t
typedef struct xen_dm_op_remote_shutdown xen_dm_op_remote_shutdown_t
typedef struct xen_dm_op_relocate_memory xen_dm_op_relocate_memory_t
typedef struct xen_dm_op_pin_memory_cacheattr xen_dm_op_pin_memory_cacheattr_t
typedef struct xen_dm_op_set_irq_level xen_dm_op_set_irq_level_t
typedef struct xen_dm_op_nr_vcpus xen_dm_op_nr_vcpus_t
typedef struct xen_dm_op_buf xen_dm_op_buf_t

Functions

 DEFINE_XEN_GUEST_HANDLE (xen_dm_op_buf_t)

Macro Definition Documentation

◆ XEN_DMOP_create_ioreq_server

#define XEN_DMOP_create_ioreq_server   1

◆ XEN_DMOP_DELETE_MEM_CACHEATTR

#define XEN_DMOP_DELETE_MEM_CACHEATTR   (~(uint32_t)0)

◆ XEN_DMOP_destroy_ioreq_server

#define XEN_DMOP_destroy_ioreq_server   6

◆ XEN_DMOP_EVENT_ext_int

#define XEN_DMOP_EVENT_ext_int   0 /* external interrupt */

◆ XEN_DMOP_EVENT_hw_exc

#define XEN_DMOP_EVENT_hw_exc   3 /* hardware exception */

◆ XEN_DMOP_EVENT_nmi

#define XEN_DMOP_EVENT_nmi   2 /* nmi */

◆ XEN_DMOP_EVENT_pri_sw_exc

#define XEN_DMOP_EVENT_pri_sw_exc   5 /* ICEBP (F1) */

◆ XEN_DMOP_EVENT_sw_exc

#define XEN_DMOP_EVENT_sw_exc   6 /* INT3 (CC), INTO (CE) */

◆ XEN_DMOP_EVENT_sw_int

#define XEN_DMOP_EVENT_sw_int   4 /* software interrupt (CD nn) */

◆ XEN_DMOP_get_ioreq_server_info

#define XEN_DMOP_get_ioreq_server_info   2

◆ XEN_DMOP_inject_event

#define XEN_DMOP_inject_event   13

◆ XEN_DMOP_inject_msi

#define XEN_DMOP_inject_msi   14

◆ XEN_DMOP_IO_RANGE_MEMORY

#define XEN_DMOP_IO_RANGE_MEMORY   1 /* MMIO range */

◆ XEN_DMOP_IO_RANGE_PCI

#define XEN_DMOP_IO_RANGE_PCI   2 /* PCI segment/bus/dev/func range */

◆ XEN_DMOP_IO_RANGE_PORT

#define XEN_DMOP_IO_RANGE_PORT   0 /* I/O port range */

◆ XEN_DMOP_IOREQ_MEM_ACCESS_READ

#define XEN_DMOP_IOREQ_MEM_ACCESS_READ   (1u << 0)

◆ XEN_DMOP_IOREQ_MEM_ACCESS_WRITE

#define XEN_DMOP_IOREQ_MEM_ACCESS_WRITE   (1u << 1)

◆ XEN_DMOP_map_io_range_to_ioreq_server

#define XEN_DMOP_map_io_range_to_ioreq_server   3

◆ XEN_DMOP_map_mem_type_to_ioreq_server

#define XEN_DMOP_map_mem_type_to_ioreq_server   15

◆ XEN_DMOP_MEM_CACHEATTR_UC

#define XEN_DMOP_MEM_CACHEATTR_UC   0

◆ XEN_DMOP_MEM_CACHEATTR_UCM

#define XEN_DMOP_MEM_CACHEATTR_UCM   7

◆ XEN_DMOP_MEM_CACHEATTR_WB

#define XEN_DMOP_MEM_CACHEATTR_WB   6

◆ XEN_DMOP_MEM_CACHEATTR_WC

#define XEN_DMOP_MEM_CACHEATTR_WC   1

◆ XEN_DMOP_MEM_CACHEATTR_WP

#define XEN_DMOP_MEM_CACHEATTR_WP   5

◆ XEN_DMOP_MEM_CACHEATTR_WT

#define XEN_DMOP_MEM_CACHEATTR_WT   4

◆ XEN_DMOP_modified_memory

#define XEN_DMOP_modified_memory   11

◆ XEN_DMOP_no_gfns

#define XEN_DMOP_no_gfns   (1u << _XEN_DMOP_no_gfns)

◆ XEN_DMOP_nr_vcpus

#define XEN_DMOP_nr_vcpus   20

◆ XEN_DMOP_PCI_SBDF

#define XEN_DMOP_PCI_SBDF ( s,
b,
d,
f )
Value:
((((s) & 0xffff) << 16) | (((b) & 0xff) << 8) | (((d) & 0x1f) << 3) | ((f) & 0x07))
irp nz macro MOVR cc s mov cc s endm endr irp aw macro LDR aa s
Definition asm-macro-32-bit-gnu.h:17
irp nz macro MOVR cc d
Definition asm-macro-32-bit-gnu.h:11

◆ XEN_DMOP_pin_memory_cacheattr

#define XEN_DMOP_pin_memory_cacheattr   18

◆ XEN_DMOP_relocate_memory

#define XEN_DMOP_relocate_memory   17

◆ XEN_DMOP_remote_shutdown

#define XEN_DMOP_remote_shutdown   16

◆ XEN_DMOP_set_ioreq_server_state

#define XEN_DMOP_set_ioreq_server_state   5

◆ XEN_DMOP_set_irq_level

#define XEN_DMOP_set_irq_level   19

◆ XEN_DMOP_set_isa_irq_level

#define XEN_DMOP_set_isa_irq_level   9

◆ XEN_DMOP_set_mem_type

#define XEN_DMOP_set_mem_type   12

◆ XEN_DMOP_set_pci_intx_level

#define XEN_DMOP_set_pci_intx_level   8

◆ XEN_DMOP_set_pci_link_route

#define XEN_DMOP_set_pci_link_route   10

◆ XEN_DMOP_track_dirty_vram

#define XEN_DMOP_track_dirty_vram   7

◆ XEN_DMOP_unmap_io_range_from_ioreq_server

#define XEN_DMOP_unmap_io_range_from_ioreq_server   4

Typedef Documentation

◆ ioservid_t

◆ xen_dm_op_buf_t

◆ xen_dm_op_create_ioreq_server_t

◆ xen_dm_op_destroy_ioreq_server_t

◆ xen_dm_op_get_ioreq_server_info_t

◆ xen_dm_op_inject_event_t

◆ xen_dm_op_inject_msi_t

◆ xen_dm_op_ioreq_server_range_t

◆ xen_dm_op_map_mem_type_to_ioreq_server_t

◆ xen_dm_op_modified_memory_t

◆ xen_dm_op_nr_vcpus_t

◆ xen_dm_op_pin_memory_cacheattr_t

◆ xen_dm_op_relocate_memory_t

◆ xen_dm_op_remote_shutdown_t

◆ xen_dm_op_set_ioreq_server_state_t

◆ xen_dm_op_set_irq_level_t

◆ xen_dm_op_set_isa_irq_level_t

◆ xen_dm_op_set_mem_type_t

◆ xen_dm_op_set_pci_intx_level_t

◆ xen_dm_op_set_pci_link_route_t

◆ xen_dm_op_track_dirty_vram_t

Function Documentation

◆ DEFINE_XEN_GUEST_HANDLE()

DEFINE_XEN_GUEST_HANDLE ( xen_dm_op_buf_t )