summaryrefslogtreecommitdiffstats
path: root/include/VBox/VMMDevTesting.mac
blob: d1de144f03a279392510f96786c4f87342bdc3a9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
; $Id: VMMDevTesting.mac $ ;/
;; @file
; VMMDev - Testing Extensions.
; Automatically generated by various.sed.  DO NOT EDIT!

;
; Copyright (C) 2010-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; The contents of this file may alternatively be used under the terms
; of the Common Development and Distribution License Version 1.0
; (CDDL), a copy of it is provided in the "COPYING.CDDL" file included
; in the VirtualBox distribution, in which case the provisions of the
; CDDL are applicable instead of those of the GPL.
;
; You may elect to license modified versions of this file under the
; terms and conditions of either the GPL or the CDDL or both.
;
; SPDX-License-Identifier: GPL-3.0-only OR CDDL-1.0
;

%ifndef VBOX_INCLUDED_VMMDevTesting_h
%define VBOX_INCLUDED_VMMDevTesting_h
%ifndef RT_WITHOUT_PRAGMA_ONCE
%endif
%define VMMDEV_TESTING_MMIO_BASE        0x000df000
%define VMMDEV_TESTING_MMIO_SIZE        0x00001000
%define VMMDEV_TESTING_MMIO_OFF_NOP         (0x000)
%define VMMDEV_TESTING_MMIO_OFF_NOP_R3      (0x008)
%define VMMDEV_TESTING_MMIO_OFF_READBACK    (0x040)
%define VMMDEV_TESTING_MMIO_OFF_READBACK_R3 (0x080)
%define VMMDEV_TESTING_READBACK_SIZE        (0x40)
%define VMMDEV_TESTING_MMIO_NOP             (VMMDEV_TESTING_MMIO_BASE + VMMDEV_TESTING_MMIO_OFF_NOP)
%define VMMDEV_TESTING_MMIO_NOP_R3          (VMMDEV_TESTING_MMIO_BASE + VMMDEV_TESTING_MMIO_OFF_NOP_R3)
%define VMMDEV_TESTING_MMIO_READBACK        (VMMDEV_TESTING_MMIO_BASE + VMMDEV_TESTING_MMIO_OFF_READBACK)
%define VMMDEV_TESTING_MMIO_READBACK_R3     (VMMDEV_TESTING_MMIO_BASE + VMMDEV_TESTING_MMIO_OFF_READBACK_R3)
%define VMMDEV_TESTING_MMIO_RM_SEL          0xdf00
%define VMMDEV_TESTING_MMIO_RM_OFF(val)     ((val) - VMMDEV_TESTING_MMIO_BASE)
%define VMMDEV_TESTING_MMIO_RM_OFF2(off)    (off)
%define VMMDEV_TESTING_IOPORT_BASE      0x0510
%define VMMDEV_TESTING_IOPORT_COUNT     0x0010
%define VMMDEV_TESTING_IOPORT_NOP       (VMMDEV_TESTING_IOPORT_BASE + 0)
%define VMMDEV_TESTING_IOPORT_TS_LOW    (VMMDEV_TESTING_IOPORT_BASE + 1)
%define VMMDEV_TESTING_IOPORT_TS_HIGH   (VMMDEV_TESTING_IOPORT_BASE + 2)
%define VMMDEV_TESTING_IOPORT_CMD       (VMMDEV_TESTING_IOPORT_BASE + 3)
%define VMMDEV_TESTING_IOPORT_DATA      (VMMDEV_TESTING_IOPORT_BASE + 4)
%define VMMDEV_TESTING_IOPORT_NOP_R3    (VMMDEV_TESTING_IOPORT_BASE + 5)
%define VMMDEV_TESTING_IOPORT_LOCKED_LO (VMMDEV_TESTING_IOPORT_BASE + 6)
%define VMMDEV_TESTING_IOPORT_LOCKED_HI (VMMDEV_TESTING_IOPORT_BASE + 7)
%define VMMDEV_TESTING_CMD_INIT         0xcab1e000
%define VMMDEV_TESTING_CMD_TERM         0xcab1e001
%define VMMDEV_TESTING_CMD_SUB_NEW      0xcab1e002
%define VMMDEV_TESTING_CMD_SUB_DONE     0xcab1e003
%define VMMDEV_TESTING_CMD_FAILED       0xcab1e004
%define VMMDEV_TESTING_CMD_VALUE        0xcab1e005
%define VMMDEV_TESTING_CMD_SKIPPED      0xcab1e006
%define VMMDEV_TESTING_CMD_VALUE_REG    0xcab1e007
%define VMMDEV_TESTING_CMD_PRINT        0xcab1e008
%define VMMDEV_TESTING_CMD_QUERY_CFG    0xcab1e009
%define VMMDEV_TESTING_CMD_MAGIC        0xcab1e000
%define VMMDEV_TESTING_CMD_MAGIC_MASK   0xffffff00
%define VMMDEV_TESTING_CMD_MAGIC_HI_WORD 0xcab10000
%define VMMDEV_TESTING_UNIT_PCT                 0x01
%define VMMDEV_TESTING_UNIT_BYTES               0x02
%define VMMDEV_TESTING_UNIT_BYTES_PER_SEC       0x03
%define VMMDEV_TESTING_UNIT_KILOBYTES           0x04
%define VMMDEV_TESTING_UNIT_KILOBYTES_PER_SEC   0x05
%define VMMDEV_TESTING_UNIT_MEGABYTES           0x06
%define VMMDEV_TESTING_UNIT_MEGABYTES_PER_SEC   0x07
%define VMMDEV_TESTING_UNIT_PACKETS             0x08
%define VMMDEV_TESTING_UNIT_PACKETS_PER_SEC     0x09
%define VMMDEV_TESTING_UNIT_FRAMES              0x0a
%define VMMDEV_TESTING_UNIT_FRAMES_PER_SEC      0x0b
%define VMMDEV_TESTING_UNIT_OCCURRENCES         0x0c
%define VMMDEV_TESTING_UNIT_OCCURRENCES_PER_SEC 0x0d
%define VMMDEV_TESTING_UNIT_CALLS               0x0e
%define VMMDEV_TESTING_UNIT_CALLS_PER_SEC       0x0f
%define VMMDEV_TESTING_UNIT_ROUND_TRIP          0x10
%define VMMDEV_TESTING_UNIT_SECS                0x11
%define VMMDEV_TESTING_UNIT_MS                  0x12
%define VMMDEV_TESTING_UNIT_NS                  0x13
%define VMMDEV_TESTING_UNIT_NS_PER_CALL         0x14
%define VMMDEV_TESTING_UNIT_NS_PER_FRAME        0x15
%define VMMDEV_TESTING_UNIT_NS_PER_OCCURRENCE   0x16
%define VMMDEV_TESTING_UNIT_NS_PER_PACKET       0x17
%define VMMDEV_TESTING_UNIT_NS_PER_ROUND_TRIP   0x18
%define VMMDEV_TESTING_UNIT_INSTRS              0x19
%define VMMDEV_TESTING_UNIT_INSTRS_PER_SEC      0x1a
%define VMMDEV_TESTING_UNIT_NONE                0x1b
%define VMMDEV_TESTING_UNIT_PP1K                0x1c
%define VMMDEV_TESTING_UNIT_PP10K               0x1d
%define VMMDEV_TESTING_UNIT_PPM                 0x1e
%define VMMDEV_TESTING_UNIT_PPB                 0x1f
%define VMMDEV_TESTING_UNIT_TICKS               0x20
%define VMMDEV_TESTING_UNIT_TICKS_PER_CALL      0x21
%define VMMDEV_TESTING_UNIT_TICKS_PER_OCCURENCE 0x22
%define VMMDEV_TESTING_UNIT_PAGES               0x23
%define VMMDEV_TESTING_UNIT_PAGES_PER_SEC       0x24
%define VMMDEV_TESTING_UNIT_TICKS_PER_PAGE      0x25
%define VMMDEV_TESTING_UNIT_NS_PER_PAGE         0x26
%define VMMDEV_TESTING_UNIT_PS                  0x27
%define VMMDEV_TESTING_UNIT_PS_PER_CALL         0x28
%define VMMDEV_TESTING_UNIT_PS_PER_FRAME        0x29
%define VMMDEV_TESTING_UNIT_PS_PER_OCCURRENCE   0x2a
%define VMMDEV_TESTING_UNIT_PS_PER_PACKET       0x2b
%define VMMDEV_TESTING_UNIT_PS_PER_ROUND_TRIP   0x2c
%define VMMDEV_TESTING_UNIT_PS_PER_PAGE         0x2d
%define VMMDEV_TESTING_NOP_RET                  0x64726962
%define VMMDEV_TESTING_LOCKED_LO_HOLD_MASK      0x0000ffff
%define VMMDEV_TESTING_LOCKED_LO_WAIT_MASK      0xffff0000
%define VMMDEV_TESTING_LOCKED_LO_WAIT_SHIFT     16
%define VMMDEV_TESTING_LOCKED_HI_TICKS_MASK     0x000fffff
%define VMMDEV_TESTING_LOCKED_HI_MBZ_MASK       0x03f00000
%define VMMDEV_TESTING_LOCKED_HI_THREAD_SHARED  0x04000000
%define VMMDEV_TESTING_LOCKED_HI_EMT_SHARED     0x08000000
%define VMMDEV_TESTING_LOCKED_HI_TYPE_RW        0x10000000
%define VMMDEV_TESTING_LOCKED_HI_BUSY_SUCCESS   0x20000000
%define VMMDEV_TESTING_LOCKED_HI_POKE           0x40000000
%define VMMDEV_TESTING_LOCKED_HI_ENABLED        0x80000000
%define VMMDEV_TESTING_CFG_DWORD0            0x0000
%define VMMDEV_TESTING_CFG_DWORD1            0x0001
%define VMMDEV_TESTING_CFG_DWORD2            0x0002
%define VMMDEV_TESTING_CFG_DWORD3            0x0003
%define VMMDEV_TESTING_CFG_DWORD4            0x0004
%define VMMDEV_TESTING_CFG_DWORD5            0x0005
%define VMMDEV_TESTING_CFG_DWORD6            0x0006
%define VMMDEV_TESTING_CFG_DWORD7            0x0007
%define VMMDEV_TESTING_CFG_DWORD8            0x0008
%define VMMDEV_TESTING_CFG_DWORD9            0x0009
%define VMMDEV_TESTING_CFG_IS_NEM_LINUX      0x0100
%define VMMDEV_TESTING_CFG_IS_NEM_WINDOWS    0x0101
%define VMMDEV_TESTING_CFG_IS_NEM_DARWIN     0x0102
%endif