VirtualBox

source: vbox/trunk/include/VBox/VMMDevTesting.mac@ 61648

Last change on this file since 61648 was 61384, checked in by vboxsync, 9 years ago

VMMDev/Testing: Added a 64-byte readback register with two access areas (same context / always ring-3). Extended the NOP register handling to include odd access so we can read the whole 32-bit width in two 16-bit accesses (useful for 16-bit C code).

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 3.6 KB
Line 
1%ifndef ___VBox_VMMDevTesting_h
2%define ___VBox_VMMDevTesting_h
3%define VMMDEV_TESTING_MMIO_BASE 0x00101000
4%define VMMDEV_TESTING_MMIO_SIZE 0x00001000
5%define VMMDEV_TESTING_MMIO_OFF_NOP (0x000)
6%define VMMDEV_TESTING_MMIO_OFF_NOP_R3 (0x008)
7%define VMMDEV_TESTING_MMIO_OFF_READBACK (0x040)
8%define VMMDEV_TESTING_MMIO_OFF_READBACK_R3 (0x080)
9%define VMMDEV_TESTING_READBACK_SIZE (0x40)
10%define VMMDEV_TESTING_MMIO_NOP (VMMDEV_TESTING_MMIO_BASE + VMMDEV_TESTING_MMIO_OFF_NOP)
11%define VMMDEV_TESTING_MMIO_NOP_R3 (VMMDEV_TESTING_MMIO_BASE + VMMDEV_TESTING_MMIO_OFF_NOP_R3)
12%define VMMDEV_TESTING_MMIO_READBACK (VMMDEV_TESTING_MMIO_BASE + VMMDEV_TESTING_MMIO_OFF_READBACK)
13%define VMMDEV_TESTING_MMIO_READBACK_R3 (VMMDEV_TESTING_MMIO_BASE + VMMDEV_TESTING_MMIO_OFF_READBACK_R3)
14%define VMMDEV_TESTING_MMIO_RM_SEL 0xffff
15%define VMMDEV_TESTING_MMIO_RM_OFF(val) ((val) - 0xffff0)
16%define VMMDEV_TESTING_MMIO_RM_OFF2(off) ((off) + 16 + 0x1000)
17%define VMMDEV_TESTING_IOPORT_BASE 0x0510
18%define VMMDEV_TESTING_IOPORT_COUNT 0x0010
19%define VMMDEV_TESTING_IOPORT_NOP (VMMDEV_TESTING_IOPORT_BASE + 0)
20%define VMMDEV_TESTING_IOPORT_TS_LOW (VMMDEV_TESTING_IOPORT_BASE + 1)
21%define VMMDEV_TESTING_IOPORT_TS_HIGH (VMMDEV_TESTING_IOPORT_BASE + 2)
22%define VMMDEV_TESTING_IOPORT_CMD (VMMDEV_TESTING_IOPORT_BASE + 3)
23%define VMMDEV_TESTING_IOPORT_DATA (VMMDEV_TESTING_IOPORT_BASE + 4)
24%define VMMDEV_TESTING_IOPORT_NOP_R3 (VMMDEV_TESTING_IOPORT_BASE + 5)
25%define VMMDEV_TESTING_CMD_INIT 0xcab1e000
26%define VMMDEV_TESTING_CMD_TERM 0xcab1e001
27%define VMMDEV_TESTING_CMD_SUB_NEW 0xcab1e002
28%define VMMDEV_TESTING_CMD_SUB_DONE 0xcab1e003
29%define VMMDEV_TESTING_CMD_FAILED 0xcab1e004
30%define VMMDEV_TESTING_CMD_VALUE 0xcab1e005
31%define VMMDEV_TESTING_CMD_SKIPPED 0xcab1e006
32%define VMMDEV_TESTING_CMD_VALUE_REG 0xcab1e007
33%define VMMDEV_TESTING_CMD_PRINT 0xcab1e008
34%define VMMDEV_TESTING_CMD_MAGIC 0xcab1e000
35%define VMMDEV_TESTING_CMD_MAGIC_MASK 0xffffff00
36%define VMMDEV_TESTING_CMD_MAGIC_HI_WORD 0xcab10000
37%define VMMDEV_TESTING_UNIT_PCT 0x01
38%define VMMDEV_TESTING_UNIT_BYTES 0x02
39%define VMMDEV_TESTING_UNIT_BYTES_PER_SEC 0x03
40%define VMMDEV_TESTING_UNIT_KILOBYTES 0x04
41%define VMMDEV_TESTING_UNIT_KILOBYTES_PER_SEC 0x05
42%define VMMDEV_TESTING_UNIT_MEGABYTES 0x06
43%define VMMDEV_TESTING_UNIT_MEGABYTES_PER_SEC 0x07
44%define VMMDEV_TESTING_UNIT_PACKETS 0x08
45%define VMMDEV_TESTING_UNIT_PACKETS_PER_SEC 0x09
46%define VMMDEV_TESTING_UNIT_FRAMES 0x0a
47%define VMMDEV_TESTING_UNIT_FRAMES_PER_SEC 0x0b
48%define VMMDEV_TESTING_UNIT_OCCURRENCES 0x0c
49%define VMMDEV_TESTING_UNIT_OCCURRENCES_PER_SEC 0x0d
50%define VMMDEV_TESTING_UNIT_CALLS 0x0e
51%define VMMDEV_TESTING_UNIT_CALLS_PER_SEC 0x0f
52%define VMMDEV_TESTING_UNIT_ROUND_TRIP 0x10
53%define VMMDEV_TESTING_UNIT_SECS 0x11
54%define VMMDEV_TESTING_UNIT_MS 0x12
55%define VMMDEV_TESTING_UNIT_NS 0x13
56%define VMMDEV_TESTING_UNIT_NS_PER_CALL 0x14
57%define VMMDEV_TESTING_UNIT_NS_PER_FRAME 0x15
58%define VMMDEV_TESTING_UNIT_NS_PER_OCCURRENCE 0x16
59%define VMMDEV_TESTING_UNIT_NS_PER_PACKET 0x17
60%define VMMDEV_TESTING_UNIT_NS_PER_ROUND_TRIP 0x18
61%define VMMDEV_TESTING_UNIT_INSTRS 0x19
62%define VMMDEV_TESTING_UNIT_INSTRS_PER_SEC 0x1a
63%define VMMDEV_TESTING_UNIT_NONE 0x1b
64%define VMMDEV_TESTING_NOP_RET 0x64726962
65%endif
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette