%ifndef ___VBox_VMMDevTesting_h %define ___VBox_VMMDevTesting_h %define VMMDEV_TESTING_MMIO_BASE 0x00101000 %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 0xffff %define VMMDEV_TESTING_MMIO_RM_OFF(val) ((val) - 0xffff0) %define VMMDEV_TESTING_MMIO_RM_OFF2(off) ((off) + 16 + 0x1000) %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_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_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_NOP_RET 0x64726962 %endif