|
iPXE
|
VMware backdoor mechanism. More...
#include <stdint.h>Go to the source code of this file.
Macros | |
| #define | VMW_PORT 0x5658 |
| VMware backdoor I/O port. More... | |
| #define | VMW_MAGIC 0x564d5868 /* "VMXh" */ |
| VMware backdoor magic value. More... | |
| #define | VMW_BACKDOOR "inl %%dx, %%eax" |
| VMware backdoor magic instruction. More... | |
| #define | VMW_CMD_GET_VERSION 0x0a |
| Get VMware version. More... | |
| #define | VMW_CMD_GUESTRPC 0x1e |
| Issue GuestRPC command. More... | |
Functions | |
| FILE_LICENCE (GPL2_OR_LATER_OR_UBDL) | |
| static | __attribute__ ((always_inline)) void vmware_cmd_get_version(uint32_t *version |
| Get VMware version. More... | |
| __asm__ | __volatile__ (VMW_BACKDOOR :"=a"(*version), "=b"(*magic), "=c"(*product_type), "=d"(discard_d) :"0"(VMW_MAGIC), "1"(0), "2"(VMW_CMD_GET_VERSION), "3"(VMW_PORT)) |
| int | vmware_present (void) |
| Detect VMware presence. More... | |
Variables | |
| static uint32_t * | magic |
| static uint32_t uint32_t * | product_type |
| static uint16_t | subcommand |
| static uint16_t uint32_t | parameter |
| static uint16_t uint32_t uint16_t * | edxhi = ( edx >> 16 ) |
| static uint16_t uint32_t uint16_t uint32_t * | ebx |
| uint32_t | status |
| uint32_t | edx |
VMware backdoor mechanism.
Definition in file vmware.h.
| #define VMW_MAGIC 0x564d5868 /* "VMXh" */ |
| FILE_LICENCE | ( | GPL2_OR_LATER_OR_UBDL | ) |
|
inlinestatic |
Get VMware version.
Issue GuestRPC command.
| version | VMware version(?) |
| magic | VMware magic number, if present |
| product_type | VMware product type |
| channel | Channel number |
| subcommand | GuestRPC subcommand |
| parameter | Subcommand-specific parameter |
| edxhi | Subcommand-specific result |
| ebx | Subcommand-specific result |
| status | Command status |
| __asm__ __volatile__ | ( | ) |
| int vmware_present | ( | void | ) |
Definition at line 38 of file vmware.h.
Referenced by vmware_present().
1.8.15