search for: vmi_uint16

Displaying 8 results from an estimated 8 matches for "vmi_uint16".

Did you mean: vmi_uint
2007 Apr 18
4
[RFC, PATCH 3/24] i386 Vmi interface definition
...M structures and definitions + * + *--------------------------------------------------------------------- + */ + +/* VROM call table definitions */ +#define VROM_CALL_LEN 32 + +typedef struct VROMCallEntry { + char f[VROM_CALL_LEN]; +} VROMCallEntry; + +typedef struct VROMHeader { + VMI_UINT16 romSignature; // option ROM signature + VMI_INT8 romLength; // ROM length in 512 byte chunks + unsigned char romEntry[4]; // 16-bit code entry point + VMI_UINT8 romPad0; // 4-byte align pad + VMI_UI...
2007 Apr 18
4
[RFC, PATCH 3/24] i386 Vmi interface definition
...M structures and definitions + * + *--------------------------------------------------------------------- + */ + +/* VROM call table definitions */ +#define VROM_CALL_LEN 32 + +typedef struct VROMCallEntry { + char f[VROM_CALL_LEN]; +} VROMCallEntry; + +typedef struct VROMHeader { + VMI_UINT16 romSignature; // option ROM signature + VMI_INT8 romLength; // ROM length in 512 byte chunks + unsigned char romEntry[4]; // 16-bit code entry point + VMI_UINT8 romPad0; // 4-byte align pad + VMI_UI...
2007 Apr 18
1
[RFC, PATCH 16/24] i386 Vmi io header
...on is that the memory + * clobber is not an effect of the VMI call, but is used to + * serialize memory writes by the compiler before an I/O + * instruction. In addition, even input operations may clobber + * hardware mapped memory. + */ + +static inline void vmi_outl(const VMI_UINT32 value, const VMI_UINT16 port) +{ + vmi_wrap_call( + OUT, "out %0, %w1", + VMI_NO_OUTPUT, + 2, XCONC("a"(value), "d"(port)), + VMI_CLOBBER_EXTENDED(ZERO_RETURNS, "memory")); +} + +static inline void vmi_outb(const VMI_UINT8 value, const VMI_UINT16 port) +{ + vmi_wrap_call( + OUT...
2007 Apr 18
1
[RFC, PATCH 16/24] i386 Vmi io header
...on is that the memory + * clobber is not an effect of the VMI call, but is used to + * serialize memory writes by the compiler before an I/O + * instruction. In addition, even input operations may clobber + * hardware mapped memory. + */ + +static inline void vmi_outl(const VMI_UINT32 value, const VMI_UINT16 port) +{ + vmi_wrap_call( + OUT, "out %0, %w1", + VMI_NO_OUTPUT, + 2, XCONC("a"(value), "d"(port)), + VMI_CLOBBER_EXTENDED(ZERO_RETURNS, "memory")); +} + +static inline void vmi_outb(const VMI_UINT8 value, const VMI_UINT16 port) +{ + vmi_wrap_call( + OUT...
2007 Apr 18
4
[RFC, PATCH 1/24] i386 Vmi documentation
...SS only + + + I/O CALLS + + This set of calls incorporates I/O related calls - PIO, setting I/O + privilege level, and forcing memory writeback for device coherency. + + VMI_INB + VMI_INW + VMI_INL + + VMICALL VMI_UINT8 VMI_INB(VMI_UINT dummy, VMI_UINT port); + VMICALL VMI_UINT16 VMI_INW(VMI_UINT dummy, VMI_UINT port); + VMICALL VMI_UINT32 VMI_INL(VMI_UINT dummy, VMI_UINT port); + + Input a byte, word, or doubleword from an I/O port. These + instructions have binary equivalent semantics to native instructions. + + Inputs: EDX = port number +...
2007 Apr 18
4
[RFC, PATCH 1/24] i386 Vmi documentation
...SS only + + + I/O CALLS + + This set of calls incorporates I/O related calls - PIO, setting I/O + privilege level, and forcing memory writeback for device coherency. + + VMI_INB + VMI_INW + VMI_INL + + VMICALL VMI_UINT8 VMI_INB(VMI_UINT dummy, VMI_UINT port); + VMICALL VMI_UINT16 VMI_INW(VMI_UINT dummy, VMI_UINT port); + VMICALL VMI_UINT32 VMI_INL(VMI_UINT dummy, VMI_UINT port); + + Input a byte, word, or doubleword from an I/O port. These + instructions have binary equivalent semantics to native instructions. + + Inputs: EDX = port number +...
2007 Apr 18
3
[RFC, PATCH 4/24] i386 Vmi inline implementation
...VMI_H +#define __MACH_VMI_H + +/* Linux type system definitions */ +#include <linux/types.h> +struct tss_struct; +struct Xgt_desc_struct; +typedef struct tss_struct VMI_TASK; +typedef struct Xgt_desc_struct VMI_DTR; +typedef uint64_t VMI_UINT64; +typedef uint32_t VMI_UINT32; +typedef uint16_t VMI_UINT16; +typedef uint16_t VMI_SELECTOR; +typedef uint8_t VMI_UINT8; +typedef int8_t VMI_INT8; +typedef uint8_t VMI_BOOL; +typedef uint64_t VMI_CYCLES; + +#include <paravirtualInterface.h> +#include <mach_asm.h> + +#if defined(CONFIG_VMI_C_CONVENTION) +#define VMI_CLOBBER_ZERO_RETURNS "cc&...
2007 Apr 18
3
[RFC, PATCH 4/24] i386 Vmi inline implementation
...VMI_H +#define __MACH_VMI_H + +/* Linux type system definitions */ +#include <linux/types.h> +struct tss_struct; +struct Xgt_desc_struct; +typedef struct tss_struct VMI_TASK; +typedef struct Xgt_desc_struct VMI_DTR; +typedef uint64_t VMI_UINT64; +typedef uint32_t VMI_UINT32; +typedef uint16_t VMI_UINT16; +typedef uint16_t VMI_SELECTOR; +typedef uint8_t VMI_UINT8; +typedef int8_t VMI_INT8; +typedef uint8_t VMI_BOOL; +typedef uint64_t VMI_CYCLES; + +#include <paravirtualInterface.h> +#include <mach_asm.h> + +#if defined(CONFIG_VMI_C_CONVENTION) +#define VMI_CLOBBER_ZERO_RETURNS "cc&...