VBoxMPHGSMI.cpp revision 32b1164f35483be483177be7b5235002a4a5afbe
2N/A * VBox Miniport HGSMI related functions 2N/A * Copyright (C) 2011-2012 Oracle Corporation 2N/A * This file is part of VirtualBox Open Source Edition (OSE), as 2N/A * you can redistribute it and/or modify it under the terms of the GNU 2N/A * General Public License (GPL) as published by the Free Software 2N/A * Foundation, in version 2 as it comes in the "COPYING" file of the 2N/A * VirtualBox OSE distribution. VirtualBox OSE is distributed in the 2N/A * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. 2N/A * Helper function to register secondary displays (DualView). Note that this will not 2N/A * be available on pre-XP versions, and some editions on XP will fail because they are 2N/A * intentionally crippled. 2N/A * HGSMI variant is a bit different because it uses only HGSMI interface (VBVA channel) 2N/A * to talk to the host. 2N/A /** @todo I simply converted this from Windows error codes. That is wrong, 2N/A * but we currently freely mix and match those (failure == rc > 0) and iprt 2N/A * ones (failure == rc < 0) anyway. This needs to be fully reviewed and 2N/A /* Map the adapter information. It will be needed for HGSMI IO. */ 2N/A LOG((
"VBoxMPCmnMapAdapterMemory failed rc = %d",
rc));
2N/A /* Setup an HGSMI heap within the adapter information area. */ 2N/A LOG((
"HGSMIHeapSetup failed rc = %d",
rc));
2N/A /* Setup the host heap and the adapter memory. */ 2N/A /* Map the heap region. 2N/A * Note: the heap will be used for the host buffers submitted to the guest. 2N/A * The miniport driver is responsible for reading FIFO and notifying 2N/A /* Host has not requested a heap. */ 2N/A /* Setup the information for the host. */ 2N/A /* Check whether the guest supports multimonitors. */ 2N/A /* Query the configured number of displays. */ 2N/A /* Unmap the adapter information needed for HGSMI IO. */