VMMDevTesting.h revision c36d095531b5355dba93be3b9b862bac18148109
/* $Id$ */
/** @file
* VMMDev - Testing Extensions.
*/
/*
* Copyright (C) 2010 Oracle Corporation
*
* This file is part of VirtualBox Open Source Edition (OSE), as
* available from http://www.virtualbox.org. This file is free software;
* General Public License (GPL) as published by the Free Software
* Foundation, in version 2 as it comes in the "COPYING" file of the
* VirtualBox OSE distribution. VirtualBox OSE is distributed in the
* hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
*/
#ifndef ___VBox_VMMDevTesting_h
#define ___VBox_VMMDevTesting_h
/** The base address of the MMIO range used for testing.
* This is intentionally put at the 2nd page above 1M so that it can be
* accessed from both real (!A20) and protected mode. */
/** The size of the MMIO range used for testing. */
/** The NOP MMIO register - 124 RW. */
/** The XXX MMIO register - 124 RW. */
/** The real mode selector to use.
* @remarks Requires that the A20 gate is enabled. */
#define VMMDEV_TESTING_MMIO_RM_SEL 0xffff
/** Calculate the real mode offset of a MMIO register. */
/** The base port of the I/O range used for testing. */
#define VMMDEV_TESTING_IOPORT_BASE 0x0510
/** The number of I/O ports reserved for testing. */
#define VMMDEV_TESTING_IOPORT_COUNT 0x0010
/** The NOP I/O port - 124 RW. */
#define VMMDEV_TESTING_IOPORT_NOP (VMMDEV_TESTING_IOPORT_BASE + 0)
/** The low nanosecond timestamp - 4 RO. */
/** The high nanosecond timestamp - 4 RO. Read this after the low one! */
/** What the NOP accesses returns. */
#endif