[PATCH 02/13] staging/hv/include: Lindent pass
Joe Perches
joe at perches.com
Wed Jul 29 17:40:55 PDT 2009
Signed-off-by: Joe Perches <joe at perches.com>
---
drivers/staging/hv/include/ChannelMessages.h | 266 +++++------
drivers/staging/hv/include/HvHalApi.h | 5 +-
drivers/staging/hv/include/HvHcApi.h | 35 +-
drivers/staging/hv/include/HvPtApi.h | 66 +--
drivers/staging/hv/include/HvStatus.h | 78 ---
drivers/staging/hv/include/HvSynicApi.h | 432 ++++++----------
drivers/staging/hv/include/HvTypes.h | 2 -
drivers/staging/hv/include/HvVpApi.h | 24 +-
drivers/staging/hv/include/List.h | 20 -
drivers/staging/hv/include/NetVscApi.h | 94 ++--
drivers/staging/hv/include/StorVscApi.h | 82 ++--
drivers/staging/hv/include/VmbusApi.h | 296 +++++------
drivers/staging/hv/include/VmbusChannelInterface.h | 62 +--
drivers/staging/hv/include/VmbusPacketFormat.h | 222 ++++-----
drivers/staging/hv/include/logging.h | 1 -
drivers/staging/hv/include/nvspprotocol.h | 277 +++++------
drivers/staging/hv/include/osd.h | 76 ++--
drivers/staging/hv/include/rndis.h | 533 ++++++++------------
drivers/staging/hv/include/vmbus.h | 56 +--
drivers/staging/hv/include/vstorage.h | 200 +++-----
20 files changed, 1097 insertions(+), 1730 deletions(-)
diff --git a/drivers/staging/hv/include/ChannelMessages.h b/drivers/staging/hv/include/ChannelMessages.h
index 097e1c1..5915027 100644
--- a/drivers/staging/hv/include/ChannelMessages.h
+++ b/drivers/staging/hv/include/ChannelMessages.h
@@ -21,7 +21,6 @@
*
*/
-
#pragma once
#include "VmbusPacketFormat.h"
@@ -31,80 +30,71 @@ typedef u32 NTSTATUS;
#pragma pack(push,1)
-
/* Version 1 messages */
-
-typedef enum _VMBUS_CHANNEL_MESSAGE_TYPE
-{
- ChannelMessageInvalid = 0,
- ChannelMessageOfferChannel = 1,
- ChannelMessageRescindChannelOffer = 2,
- ChannelMessageRequestOffers = 3,
- ChannelMessageAllOffersDelivered = 4,
- ChannelMessageOpenChannel = 5,
- ChannelMessageOpenChannelResult = 6,
- ChannelMessageCloseChannel = 7,
- ChannelMessageGpadlHeader = 8,
- ChannelMessageGpadlBody = 9,
- ChannelMessageGpadlCreated = 10,
- ChannelMessageGpadlTeardown = 11,
- ChannelMessageGpadlTorndown = 12,
- ChannelMessageRelIdReleased = 13,
- ChannelMessageInitiateContact = 14,
- ChannelMessageVersionResponse = 15,
- ChannelMessageUnload = 16,
+typedef enum _VMBUS_CHANNEL_MESSAGE_TYPE {
+ ChannelMessageInvalid = 0,
+ ChannelMessageOfferChannel = 1,
+ ChannelMessageRescindChannelOffer = 2,
+ ChannelMessageRequestOffers = 3,
+ ChannelMessageAllOffersDelivered = 4,
+ ChannelMessageOpenChannel = 5,
+ ChannelMessageOpenChannelResult = 6,
+ ChannelMessageCloseChannel = 7,
+ ChannelMessageGpadlHeader = 8,
+ ChannelMessageGpadlBody = 9,
+ ChannelMessageGpadlCreated = 10,
+ ChannelMessageGpadlTeardown = 11,
+ ChannelMessageGpadlTorndown = 12,
+ ChannelMessageRelIdReleased = 13,
+ ChannelMessageInitiateContact = 14,
+ ChannelMessageVersionResponse = 15,
+ ChannelMessageUnload = 16,
#ifdef VMBUS_FEATURE_PARENT_OR_PEER_MEMORY_MAPPED_INTO_A_CHILD
- ChannelMessageViewRangeAdd = 17,
- ChannelMessageViewRangeRemove = 18,
+ ChannelMessageViewRangeAdd = 17,
+ ChannelMessageViewRangeRemove = 18,
#endif
- ChannelMessageCount
+ ChannelMessageCount
} VMBUS_CHANNEL_MESSAGE_TYPE, *PVMBUS_CHANNEL_MESSAGE_TYPE;
/* begin_wpp config */
/* CUSTOM_TYPE(ChannelMessageType, ItemEnum(_VMBUS_CHANNEL_MESSAGE_TYPE)); */
/* end_wpp */
-typedef struct _VMBUS_CHANNEL_MESSAGE_HEADER
-{
- VMBUS_CHANNEL_MESSAGE_TYPE MessageType;
- u32 Padding;
+typedef struct _VMBUS_CHANNEL_MESSAGE_HEADER {
+ VMBUS_CHANNEL_MESSAGE_TYPE MessageType;
+ u32 Padding;
} VMBUS_CHANNEL_MESSAGE_HEADER, *PVMBUS_CHANNEL_MESSAGE_HEADER;
/* Query VMBus Version parameters */
-typedef struct _VMBUS_CHANNEL_QUERY_VMBUS_VERSION
-{
- VMBUS_CHANNEL_MESSAGE_HEADER Header;
- u32 Version;
+typedef struct _VMBUS_CHANNEL_QUERY_VMBUS_VERSION {
+ VMBUS_CHANNEL_MESSAGE_HEADER Header;
+ u32 Version;
} VMBUS_CHANNEL_QUERY_VMBUS_VERSION, *PVMBUS_CHANNEL_QUERY_VMBUS_VERSION;
/* VMBus Version Supported parameters */
-typedef struct _VMBUS_CHANNEL_VERSION_SUPPORTED
-{
- VMBUS_CHANNEL_MESSAGE_HEADER Header;
- bool VersionSupported;
+typedef struct _VMBUS_CHANNEL_VERSION_SUPPORTED {
+ VMBUS_CHANNEL_MESSAGE_HEADER Header;
+ bool VersionSupported;
} VMBUS_CHANNEL_VERSION_SUPPORTED, *PVMBUS_CHANNEL_VERSION_SUPPORTED;
/* Offer Channel parameters */
-typedef struct _VMBUS_CHANNEL_OFFER_CHANNEL
-{
- VMBUS_CHANNEL_MESSAGE_HEADER Header;
- VMBUS_CHANNEL_OFFER Offer;
- u32 ChildRelId;
- u8 MonitorId;
- bool MonitorAllocated;
+typedef struct _VMBUS_CHANNEL_OFFER_CHANNEL {
+ VMBUS_CHANNEL_MESSAGE_HEADER Header;
+ VMBUS_CHANNEL_OFFER Offer;
+ u32 ChildRelId;
+ u8 MonitorId;
+ bool MonitorAllocated;
} VMBUS_CHANNEL_OFFER_CHANNEL, *PVMBUS_CHANNEL_OFFER_CHANNEL;
-
/* Make sure VMBUS_CHANNEL_OFFER_CHANNEL fits into Synic message. */
C_ASSERT(sizeof(VMBUS_CHANNEL_OFFER_CHANNEL) <= MAXIMUM_SYNIC_MESSAGE_BYTES);
/* Rescind Offer parameters */
-typedef struct _VMBUS_CHANNEL_RESCIND_OFFER
-{
- VMBUS_CHANNEL_MESSAGE_HEADER Header;
- u32 ChildRelId;
+typedef struct _VMBUS_CHANNEL_RESCIND_OFFER {
+ VMBUS_CHANNEL_MESSAGE_HEADER Header;
+ u32 ChildRelId;
} VMBUS_CHANNEL_RESCIND_OFFER, *PVMBUS_CHANNEL_RESCIND_OFFER;
/* Request Offer -- no parameters, SynIC message contains the partition ID */
@@ -114,63 +104,55 @@ typedef struct _VMBUS_CHANNEL_RESCIND_OFFER
/* Flush Client -- no parameters, SynIC message contains the partition ID */
/* Open Channel parameters */
-typedef struct _VMBUS_CHANNEL_OPEN_CHANNEL
-{
- VMBUS_CHANNEL_MESSAGE_HEADER Header;
-
-
- /* Identifies the specific VMBus channel that is being opened. */
-
- u32 ChildRelId;
-
-
- /* ID making a particular open request at a channel offer unique. */
-
- u32 OpenId;
+typedef struct _VMBUS_CHANNEL_OPEN_CHANNEL {
+ VMBUS_CHANNEL_MESSAGE_HEADER Header;
+ /* Identifies the specific VMBus channel that is being opened. */
- /* GPADL for the channel's ring buffer. */
+ u32 ChildRelId;
- GPADL_HANDLE RingBufferGpadlHandle;
+ /* ID making a particular open request at a channel offer unique. */
+ u32 OpenId;
- /* GPADL for the channel's server context save area. */
+ /* GPADL for the channel's ring buffer. */
- GPADL_HANDLE ServerContextAreaGpadlHandle;
+ GPADL_HANDLE RingBufferGpadlHandle;
+ /* GPADL for the channel's server context save area. */
- /*
- * The upstream ring buffer begins at offset zero in the memory
- * described by RingBufferGpadlHandle. The downstream ring buffer
- * follows it at this offset (in pages).
- */
+ GPADL_HANDLE ServerContextAreaGpadlHandle;
- u32 DownstreamRingBufferPageOffset;
+ /*
+ * The upstream ring buffer begins at offset zero in the memory
+ * described by RingBufferGpadlHandle. The downstream ring buffer
+ * follows it at this offset (in pages).
+ */
+ u32 DownstreamRingBufferPageOffset;
- /* User-specific data to be passed along to the server endpoint. */
+ /* User-specific data to be passed along to the server endpoint. */
- unsigned char UserData[MAX_USER_DEFINED_BYTES];
+ unsigned char UserData[MAX_USER_DEFINED_BYTES];
} VMBUS_CHANNEL_OPEN_CHANNEL, *PVMBUS_CHANNEL_OPEN_CHANNEL;
/* Reopen Channel parameters; */
-typedef VMBUS_CHANNEL_OPEN_CHANNEL VMBUS_CHANNEL_REOPEN_CHANNEL, *PVMBUS_CHANNEL_REOPEN_CHANNEL;
+typedef VMBUS_CHANNEL_OPEN_CHANNEL VMBUS_CHANNEL_REOPEN_CHANNEL,
+ *PVMBUS_CHANNEL_REOPEN_CHANNEL;
/* Open Channel Result parameters */
-typedef struct _VMBUS_CHANNEL_OPEN_RESULT
-{
- VMBUS_CHANNEL_MESSAGE_HEADER Header;
- u32 ChildRelId;
- u32 OpenId;
- NTSTATUS Status;
+typedef struct _VMBUS_CHANNEL_OPEN_RESULT {
+ VMBUS_CHANNEL_MESSAGE_HEADER Header;
+ u32 ChildRelId;
+ u32 OpenId;
+ NTSTATUS Status;
} VMBUS_CHANNEL_OPEN_RESULT, *PVMBUS_CHANNEL_OPEN_RESULT;
/* Close channel parameters; */
-typedef struct _VMBUS_CHANNEL_CLOSE_CHANNEL
-{
- VMBUS_CHANNEL_MESSAGE_HEADER Header;
- u32 ChildRelId;
+typedef struct _VMBUS_CHANNEL_CLOSE_CHANNEL {
+ VMBUS_CHANNEL_MESSAGE_HEADER Header;
+ u32 ChildRelId;
} VMBUS_CHANNEL_CLOSE_CHANNEL, *PVMBUS_CHANNEL_CLOSE_CHANNEL;
/* Channel Message GPADL */
@@ -178,7 +160,6 @@ typedef struct _VMBUS_CHANNEL_CLOSE_CHANNEL
#define GPADL_TYPE_SERVER_SAVE_AREA 2
#define GPADL_TYPE_TRANSACTION 8
-
/*
* The number of PFNs in a GPADL message is defined by the number of
* pages that would be spanned by ByteCount and ByteOffset. If the
@@ -186,93 +167,78 @@ typedef struct _VMBUS_CHANNEL_CLOSE_CHANNEL
* follow-up packet that contains more.
*/
-
-typedef struct _VMBUS_CHANNEL_GPADL_HEADER
-{
- VMBUS_CHANNEL_MESSAGE_HEADER Header;
- u32 ChildRelId;
- u32 Gpadl;
- u16 RangeBufLen;
- u16 RangeCount;
- GPA_RANGE Range[0];
+typedef struct _VMBUS_CHANNEL_GPADL_HEADER {
+ VMBUS_CHANNEL_MESSAGE_HEADER Header;
+ u32 ChildRelId;
+ u32 Gpadl;
+ u16 RangeBufLen;
+ u16 RangeCount;
+ GPA_RANGE Range[0];
} VMBUS_CHANNEL_GPADL_HEADER, *PVMBUS_CHANNEL_GPADL_HEADER;
-
-
/* This is the followup packet that contains more PFNs. */
-
-typedef struct _VMBUS_CHANNEL_GPADL_BODY
-{
- VMBUS_CHANNEL_MESSAGE_HEADER Header;
- u32 MessageNumber;
- u32 Gpadl;
- u64 Pfn[0];
+typedef struct _VMBUS_CHANNEL_GPADL_BODY {
+ VMBUS_CHANNEL_MESSAGE_HEADER Header;
+ u32 MessageNumber;
+ u32 Gpadl;
+ u64 Pfn[0];
} VMBUS_CHANNEL_GPADL_BODY, *PVMBUS_CHANNEL_GPADL_BODY;
-
-typedef struct _VMBUS_CHANNEL_GPADL_CREATED
-{
- VMBUS_CHANNEL_MESSAGE_HEADER Header;
- u32 ChildRelId;
- u32 Gpadl;
- u32 CreationStatus;
+typedef struct _VMBUS_CHANNEL_GPADL_CREATED {
+ VMBUS_CHANNEL_MESSAGE_HEADER Header;
+ u32 ChildRelId;
+ u32 Gpadl;
+ u32 CreationStatus;
} VMBUS_CHANNEL_GPADL_CREATED, *PVMBUS_CHANNEL_GPADL_CREATED;
-typedef struct _VMBUS_CHANNEL_GPADL_TEARDOWN
-{
- VMBUS_CHANNEL_MESSAGE_HEADER Header;
- u32 ChildRelId;
- u32 Gpadl;
+typedef struct _VMBUS_CHANNEL_GPADL_TEARDOWN {
+ VMBUS_CHANNEL_MESSAGE_HEADER Header;
+ u32 ChildRelId;
+ u32 Gpadl;
} VMBUS_CHANNEL_GPADL_TEARDOWN, *PVMBUS_CHANNEL_GPADL_TEARDOWN;
-typedef struct _VMBUS_CHANNEL_GPADL_TORNDOWN
-{
- VMBUS_CHANNEL_MESSAGE_HEADER Header;
- u32 Gpadl;
+typedef struct _VMBUS_CHANNEL_GPADL_TORNDOWN {
+ VMBUS_CHANNEL_MESSAGE_HEADER Header;
+ u32 Gpadl;
} VMBUS_CHANNEL_GPADL_TORNDOWN, *PVMBUS_CHANNEL_GPADL_TORNDOWN;
#ifdef VMBUS_FEATURE_PARENT_OR_PEER_MEMORY_MAPPED_INTO_A_CHILD
-typedef struct _VMBUS_CHANNEL_VIEW_RANGE_ADD
-{
- VMBUS_CHANNEL_MESSAGE_HEADER Header;
- PHYSICAL_ADDRESS ViewRangeBase;
- u64 ViewRangeLength;
- u32 ChildRelId;
+typedef struct _VMBUS_CHANNEL_VIEW_RANGE_ADD {
+ VMBUS_CHANNEL_MESSAGE_HEADER Header;
+ PHYSICAL_ADDRESS ViewRangeBase;
+ u64 ViewRangeLength;
+ u32 ChildRelId;
} VMBUS_CHANNEL_VIEW_RANGE_ADD, *PVMBUS_CHANNEL_VIEW_RANGE_ADD;
-typedef struct _VMBUS_CHANNEL_VIEW_RANGE_REMOVE
-{
- VMBUS_CHANNEL_MESSAGE_HEADER Header;
- PHYSICAL_ADDRESS ViewRangeBase;
- u32 ChildRelId;
+typedef struct _VMBUS_CHANNEL_VIEW_RANGE_REMOVE {
+ VMBUS_CHANNEL_MESSAGE_HEADER Header;
+ PHYSICAL_ADDRESS ViewRangeBase;
+ u32 ChildRelId;
} VMBUS_CHANNEL_VIEW_RANGE_REMOVE, *PVMBUS_CHANNEL_VIEW_RANGE_REMOVE;
#endif
-typedef struct _VMBUS_CHANNEL_RELID_RELEASED
-{
- VMBUS_CHANNEL_MESSAGE_HEADER Header;
- u32 ChildRelId;
+typedef struct _VMBUS_CHANNEL_RELID_RELEASED {
+ VMBUS_CHANNEL_MESSAGE_HEADER Header;
+ u32 ChildRelId;
} VMBUS_CHANNEL_RELID_RELEASED, *PVMBUS_CHANNEL_RELID_RELEASED;
-typedef struct _VMBUS_CHANNEL_INITIATE_CONTACT
-{
- VMBUS_CHANNEL_MESSAGE_HEADER Header;
- u32 VMBusVersionRequested;
- u32 Padding2;
- u64 InterruptPage;
- u64 MonitorPage1;
- u64 MonitorPage2;
+typedef struct _VMBUS_CHANNEL_INITIATE_CONTACT {
+ VMBUS_CHANNEL_MESSAGE_HEADER Header;
+ u32 VMBusVersionRequested;
+ u32 Padding2;
+ u64 InterruptPage;
+ u64 MonitorPage1;
+ u64 MonitorPage2;
} VMBUS_CHANNEL_INITIATE_CONTACT, *PVMBUS_CHANNEL_INITIATE_CONTACT;
-typedef struct _VMBUS_CHANNEL_VERSION_RESPONSE
-{
- VMBUS_CHANNEL_MESSAGE_HEADER Header;
- bool VersionSupported;
+typedef struct _VMBUS_CHANNEL_VERSION_RESPONSE {
+ VMBUS_CHANNEL_MESSAGE_HEADER Header;
+ bool VersionSupported;
} VMBUS_CHANNEL_VERSION_RESPONSE, *PVMBUS_CHANNEL_VERSION_RESPONSE;
-typedef VMBUS_CHANNEL_MESSAGE_HEADER VMBUS_CHANNEL_UNLOAD, *PVMBUS_CHANNEL_UNLOAD;
-
+typedef VMBUS_CHANNEL_MESSAGE_HEADER VMBUS_CHANNEL_UNLOAD,
+ *PVMBUS_CHANNEL_UNLOAD;
/* Kind of a table to use the preprocessor to get us the right type for a */
/* specified message ID. Used with ChAllocateSendMessage() */
@@ -299,7 +265,6 @@ typedef VMBUS_CHANNEL_MESSAGE_HEADER VMBUS_CHANNEL_UNLOAD, *PVMBUS_CHANNEL_UNLOA
#define ChannelMessageVersionResponse_TYPE VMBUS_CHANNEL_VERSION_RESPONSE
#define ChannelMessageUnload_TYPE VMBUS_CHANNEL_UNLOAD
-
/* Preprocessor wrapper to ChAllocateSendMessageSize() converting the return */
/* value to the correct pointer and calculate the needed size. */
@@ -311,5 +276,4 @@ typedef VMBUS_CHANNEL_MESSAGE_HEADER VMBUS_CHANNEL_UNLOAD, *PVMBUS_CHANNEL_UNLOA
#define ChAllocateSendMessage(Id, Fn, Context) \
(Id##_TYPE*)ChAllocateSendMessageSized(sizeof(Id##_TYPE), Id, Fn, Context)
-
#pragma pack(pop)
diff --git a/drivers/staging/hv/include/HvHalApi.h b/drivers/staging/hv/include/HvHalApi.h
index cda369e..7e3fe92 100644
--- a/drivers/staging/hv/include/HvHalApi.h
+++ b/drivers/staging/hv/include/HvHalApi.h
@@ -21,12 +21,9 @@
*
*/
-
#pragma once
-
-
/* Time in the hypervisor is measured in 100 nanosecond units */
-typedef u64 HV_NANO100_TIME, *PHV_NANO100_TIME;
+typedef u64 HV_NANO100_TIME, *PHV_NANO100_TIME;
typedef u64 HV_NANO100_DURATION, *PHV_NANO100_DURATION;
diff --git a/drivers/staging/hv/include/HvHcApi.h b/drivers/staging/hv/include/HvHcApi.h
index 034bab7..2c4c36f 100644
--- a/drivers/staging/hv/include/HvHcApi.h
+++ b/drivers/staging/hv/include/HvHcApi.h
@@ -21,40 +21,31 @@
*
*/
-
#pragma once
-
/* Declare the various hypercall operations. */
-typedef enum _HV_CALL_CODE
-{
+typedef enum _HV_CALL_CODE {
- HvCallPostMessage = 0x005c,
- HvCallSignalEvent = 0x005d,
+ HvCallPostMessage = 0x005c,
+ HvCallSignalEvent = 0x005d,
} HV_CALL_CODE, *PHV_CALL_CODE;
/* Definition of the HvPostMessage hypercall input structure. */
-
-typedef struct _HV_INPUT_POST_MESSAGE
-{
- HV_CONNECTION_ID ConnectionId;
- u32 Reserved;
- HV_MESSAGE_TYPE MessageType;
- u32 PayloadSize;
- u64 Payload[HV_MESSAGE_PAYLOAD_QWORD_COUNT];
+typedef struct _HV_INPUT_POST_MESSAGE {
+ HV_CONNECTION_ID ConnectionId;
+ u32 Reserved;
+ HV_MESSAGE_TYPE MessageType;
+ u32 PayloadSize;
+ u64 Payload[HV_MESSAGE_PAYLOAD_QWORD_COUNT];
} HV_INPUT_POST_MESSAGE, *PHV_INPUT_POST_MESSAGE;
-
-
/* Definition of the HvSignalEvent hypercall input structure. */
-
-typedef struct _HV_INPUT_SIGNAL_EVENT
-{
- HV_CONNECTION_ID ConnectionId;
- u16 FlagNumber;
- u16 RsvdZ;
+typedef struct _HV_INPUT_SIGNAL_EVENT {
+ HV_CONNECTION_ID ConnectionId;
+ u16 FlagNumber;
+ u16 RsvdZ;
} HV_INPUT_SIGNAL_EVENT, *PHV_INPUT_SIGNAL_EVENT;
diff --git a/drivers/staging/hv/include/HvPtApi.h b/drivers/staging/hv/include/HvPtApi.h
index c32dbf6..727bb67 100644
--- a/drivers/staging/hv/include/HvPtApi.h
+++ b/drivers/staging/hv/include/HvPtApi.h
@@ -21,66 +21,52 @@
*
*/
-
#pragma once
-
/* Versioning definitions used for guests reporting themselves to the */
/* hypervisor, and visa versa. */
/* ================================================================== */
-
-
/* Version info reported by guest OS's */
-typedef enum _HV_GUEST_OS_VENDOR
-{
- HvGuestOsVendorMicrosoft = 0x0001
-
+typedef enum _HV_GUEST_OS_VENDOR {
+ HvGuestOsVendorMicrosoft = 0x0001
} HV_GUEST_OS_VENDOR, *PHV_GUEST_OS_VENDOR;
-typedef enum _HV_GUEST_OS_MICROSOFT_IDS
-{
- HvGuestOsMicrosoftUndefined = 0x00,
- HvGuestOsMicrosoftMSDOS = 0x01,
- HvGuestOsMicrosoftWindows3x = 0x02,
- HvGuestOsMicrosoftWindows9x = 0x03,
- HvGuestOsMicrosoftWindowsNT = 0x04,
- HvGuestOsMicrosoftWindowsCE = 0x05
-
+typedef enum _HV_GUEST_OS_MICROSOFT_IDS {
+ HvGuestOsMicrosoftUndefined = 0x00,
+ HvGuestOsMicrosoftMSDOS = 0x01,
+ HvGuestOsMicrosoftWindows3x = 0x02,
+ HvGuestOsMicrosoftWindows9x = 0x03,
+ HvGuestOsMicrosoftWindowsNT = 0x04,
+ HvGuestOsMicrosoftWindowsCE = 0x05
} HV_GUEST_OS_MICROSOFT_IDS, *PHV_GUEST_OS_MICROSOFT_IDS;
-
/* Declare the MSR used to identify the guest OS. */
#define HV_X64_MSR_GUEST_OS_ID 0x40000000
-typedef union _HV_X64_MSR_GUEST_OS_ID_CONTENTS
-{
- u64 AsUINT64;
- struct
- {
- u64 BuildNumber : 16;
- u64 ServiceVersion : 8; /* Service Pack, etc. */
- u64 MinorVersion : 8;
- u64 MajorVersion : 8;
- u64 OsId : 8; /* HV_GUEST_OS_MICROSOFT_IDS (If Vendor=MS) */
- u64 VendorId : 16; /* HV_GUEST_OS_VENDOR */
- };
+typedef union _HV_X64_MSR_GUEST_OS_ID_CONTENTS {
+ u64 AsUINT64;
+ struct {
+ u64 BuildNumber:16;
+ u64 ServiceVersion:8; /* Service Pack, etc. */
+ u64 MinorVersion:8;
+ u64 MajorVersion:8;
+ u64 OsId:8; /* HV_GUEST_OS_MICROSOFT_IDS (If Vendor=MS) */
+ u64 VendorId:16; /* HV_GUEST_OS_VENDOR */
+ };
} HV_X64_MSR_GUEST_OS_ID_CONTENTS, *PHV_X64_MSR_GUEST_OS_ID_CONTENTS;
-
/* Declare the MSR used to setup pages used to communicate with the hypervisor. */
#define HV_X64_MSR_HYPERCALL 0x40000001
-typedef union _HV_X64_MSR_HYPERCALL_CONTENTS
-{
- u64 AsUINT64;
- struct
- {
- u64 Enable : 1;
- u64 Reserved : 11;
- u64 GuestPhysicalAddress : 52;
- };
+typedef union _HV_X64_MSR_HYPERCALL_CONTENTS {
+ u64 AsUINT64;
+ struct {
+ u64 Enable:1;
+ u64 Reserved:11;
+ u64 GuestPhysicalAddress:52;
+ };
} HV_X64_MSR_HYPERCALL_CONTENTS, *PHV_X64_MSR_HYPERCALL_CONTENTS;
diff --git a/drivers/staging/hv/include/HvStatus.h b/drivers/staging/hv/include/HvStatus.h
index c747e7e..7451908 100644
--- a/drivers/staging/hv/include/HvStatus.h
+++ b/drivers/staging/hv/include/HvStatus.h
@@ -21,14 +21,12 @@
*
*/
-
/* begin_hvgdk */
/* Status codes for hypervisor operations. */
typedef u16 HV_STATUS, *PHV_STATUS;
-
/* MessageId: HV_STATUS_SUCCESS */
/* MessageText: */
@@ -37,7 +35,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_SUCCESS ((HV_STATUS)0x0000)
-
/* MessageId: HV_STATUS_INVALID_HYPERCALL_CODE */
/* MessageText: */
@@ -46,7 +43,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INVALID_HYPERCALL_CODE ((HV_STATUS)0x0002)
-
/* MessageId: HV_STATUS_INVALID_HYPERCALL_INPUT */
/* MessageText: */
@@ -55,7 +51,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INVALID_HYPERCALL_INPUT ((HV_STATUS)0x0003)
-
/* MessageId: HV_STATUS_INVALID_ALIGNMENT */
/* MessageText: */
@@ -64,7 +59,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INVALID_ALIGNMENT ((HV_STATUS)0x0004)
-
/* MessageId: HV_STATUS_INVALID_PARAMETER */
/* MessageText: */
@@ -73,7 +67,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INVALID_PARAMETER ((HV_STATUS)0x0005)
-
/* MessageId: HV_STATUS_ACCESS_DENIED */
/* MessageText: */
@@ -82,7 +75,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_ACCESS_DENIED ((HV_STATUS)0x0006)
-
/* MessageId: HV_STATUS_INVALID_PARTITION_STATE */
/* MessageText: */
@@ -91,7 +83,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INVALID_PARTITION_STATE ((HV_STATUS)0x0007)
-
/* MessageId: HV_STATUS_OPERATION_DENIED */
/* MessageText: */
@@ -100,7 +91,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_OPERATION_DENIED ((HV_STATUS)0x0008)
-
/* MessageId: HV_STATUS_UNKNOWN_PROPERTY */
/* MessageText: */
@@ -109,7 +99,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_UNKNOWN_PROPERTY ((HV_STATUS)0x0009)
-
/* MessageId: HV_STATUS_PROPERTY_VALUE_OUT_OF_RANGE */
/* MessageText: */
@@ -118,7 +107,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_PROPERTY_VALUE_OUT_OF_RANGE ((HV_STATUS)0x000A)
-
/* MessageId: HV_STATUS_INSUFFICIENT_MEMORY */
/* MessageText: */
@@ -127,7 +115,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INSUFFICIENT_MEMORY ((HV_STATUS)0x000B)
-
/* MessageId: HV_STATUS_PARTITION_TOO_DEEP */
/* MessageText: */
@@ -136,7 +123,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_PARTITION_TOO_DEEP ((HV_STATUS)0x000C)
-
/* MessageId: HV_STATUS_INVALID_PARTITION_ID */
/* MessageText: */
@@ -145,7 +131,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INVALID_PARTITION_ID ((HV_STATUS)0x000D)
-
/* MessageId: HV_STATUS_INVALID_VP_INDEX */
/* MessageText: */
@@ -154,7 +139,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INVALID_VP_INDEX ((HV_STATUS)0x000E)
-
/* MessageId: HV_STATUS_NOT_FOUND */
/* MessageText: */
@@ -163,7 +147,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_NOT_FOUND ((HV_STATUS)0x0010)
-
/* MessageId: HV_STATUS_INVALID_PORT_ID */
/* MessageText: */
@@ -172,7 +155,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INVALID_PORT_ID ((HV_STATUS)0x0011)
-
/* MessageId: HV_STATUS_INVALID_CONNECTION_ID */
/* MessageText: */
@@ -181,7 +163,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INVALID_CONNECTION_ID ((HV_STATUS)0x0012)
-
/* MessageId: HV_STATUS_INSUFFICIENT_BUFFERS */
/* MessageText: */
@@ -190,7 +171,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INSUFFICIENT_BUFFERS ((HV_STATUS)0x0013)
-
/* MessageId: HV_STATUS_NOT_ACKNOWLEDGED */
/* MessageText: */
@@ -199,7 +179,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_NOT_ACKNOWLEDGED ((HV_STATUS)0x0014)
-
/* MessageId: HV_STATUS_INVALID_VP_STATE */
/* MessageText: */
@@ -208,7 +187,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INVALID_VP_STATE ((HV_STATUS)0x0015)
-
/* MessageId: HV_STATUS_ACKNOWLEDGED */
/* MessageText: */
@@ -217,7 +195,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_ACKNOWLEDGED ((HV_STATUS)0x0016)
-
/* MessageId: HV_STATUS_INVALID_SAVE_RESTORE_STATE */
/* MessageText: */
@@ -226,7 +203,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INVALID_SAVE_RESTORE_STATE ((HV_STATUS)0x0017)
-
/* MessageId: HV_STATUS_INVALID_SYNIC_STATE */
/* MessageText: */
@@ -235,7 +211,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INVALID_SYNIC_STATE ((HV_STATUS)0x0018)
-
/* MessageId: HV_STATUS_OBJECT_IN_USE */
/* MessageText: */
@@ -244,7 +219,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_OBJECT_IN_USE ((HV_STATUS)0x0019)
-
/* MessageId: HV_STATUS_INVALID_PROXIMITY_DOMAIN_INFO */
/* MessageText: */
@@ -253,7 +227,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INVALID_PROXIMITY_DOMAIN_INFO ((HV_STATUS)0x001A)
-
/* MessageId: HV_STATUS_NO_DATA */
/* MessageText: */
@@ -262,7 +235,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_NO_DATA ((HV_STATUS)0x001B)
-
/* MessageId: HV_STATUS_INACTIVE */
/* MessageText: */
@@ -271,7 +243,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INACTIVE ((HV_STATUS)0x001C)
-
/* MessageId: HV_STATUS_NO_RESOURCES */
/* MessageText: */
@@ -280,7 +251,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_NO_RESOURCES ((HV_STATUS)0x001D)
-
/* MessageId: HV_STATUS_FEATURE_UNAVAILABLE */
/* MessageText: */
@@ -291,7 +261,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
/* end_hvgdk */
-
/* MessageId: HV_STATUS_UNSUCCESSFUL */
/* MessageText: */
@@ -301,7 +270,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_UNSUCCESSFUL ((HV_STATUS)0x1001)
-
/* MessageId: HV_STATUS_INSUFFICIENT_BUFFER */
/* MessageText: */
@@ -310,7 +278,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INSUFFICIENT_BUFFER ((HV_STATUS)0x1002)
-
/* MessageId: HV_STATUS_GPA_NOT_PRESENT */
/* MessageText: */
@@ -319,7 +286,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_GPA_NOT_PRESENT ((HV_STATUS)0x1003)
-
/* MessageId: HV_STATUS_GUEST_PAGE_FAULT */
/* MessageText: */
@@ -328,7 +294,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_GUEST_PAGE_FAULT ((HV_STATUS)0x1004)
-
/* MessageId: HV_STATUS_RUNDOWN_DISABLED */
/* MessageText: */
@@ -337,7 +302,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_RUNDOWN_DISABLED ((HV_STATUS)0x1005)
-
/* MessageId: HV_STATUS_KEY_ALREADY_EXISTS */
/* MessageText: */
@@ -346,7 +310,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_KEY_ALREADY_EXISTS ((HV_STATUS)0x1006)
-
/* MessageId: HV_STATUS_GPA_INTERCEPT */
/* MessageText: */
@@ -355,7 +318,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_GPA_INTERCEPT ((HV_STATUS)0x1007)
-
/* MessageId: HV_STATUS_GUEST_GENERAL_PROTECTION_FAULT */
/* MessageText: */
@@ -364,7 +326,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_GUEST_GENERAL_PROTECTION_FAULT ((HV_STATUS)0x1008)
-
/* MessageId: HV_STATUS_GUEST_STACK_FAULT */
/* MessageText: */
@@ -373,7 +334,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_GUEST_STACK_FAULT ((HV_STATUS)0x1009)
-
/* MessageId: HV_STATUS_GUEST_INVALID_OPCODE_FAULT */
/* MessageText: */
@@ -382,7 +342,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_GUEST_INVALID_OPCODE_FAULT ((HV_STATUS)0x100A)
-
/* MessageId: HV_STATUS_FINALIZE_INCOMPLETE */
/* MessageText: */
@@ -391,7 +350,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_FINALIZE_INCOMPLETE ((HV_STATUS)0x100B)
-
/* MessageId: HV_STATUS_GUEST_MACHINE_CHECK_ABORT */
/* MessageText: */
@@ -400,7 +358,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_GUEST_MACHINE_CHECK_ABORT ((HV_STATUS)0x100C)
-
/* MessageId: HV_STATUS_ILLEGAL_OVERLAY_ACCESS */
/* MessageText: */
@@ -409,7 +366,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_ILLEGAL_OVERLAY_ACCESS ((HV_STATUS)0x100D)
-
/* MessageId: HV_STATUS_INSUFFICIENT_SYSTEM_VA */
/* MessageText: */
@@ -418,7 +374,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INSUFFICIENT_SYSTEM_VA ((HV_STATUS)0x100E)
-
/* MessageId: HV_STATUS_VIRTUAL_ADDRESS_NOT_MAPPED */
/* MessageText: */
@@ -427,7 +382,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_VIRTUAL_ADDRESS_NOT_MAPPED ((HV_STATUS)0x100F)
-
/* MessageId: HV_STATUS_NOT_IMPLEMENTED */
/* MessageText: */
@@ -436,7 +390,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_NOT_IMPLEMENTED ((HV_STATUS)0x1010)
-
/* MessageId: HV_STATUS_VMX_INSTRUCTION_FAILED */
/* MessageText: */
@@ -445,7 +398,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_VMX_INSTRUCTION_FAILED ((HV_STATUS)0x1011)
-
/* MessageId: HV_STATUS_VMX_INSTRUCTION_FAILED_WITH_STATUS */
/* MessageText: */
@@ -454,7 +406,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_VMX_INSTRUCTION_FAILED_WITH_STATUS ((HV_STATUS)0x1012)
-
/* MessageId: HV_STATUS_MSR_ACCESS_FAILED */
/* MessageText: */
@@ -463,7 +414,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_MSR_ACCESS_FAILED ((HV_STATUS)0x1013)
-
/* MessageId: HV_STATUS_CR_ACCESS_FAILED */
/* MessageText: */
@@ -472,7 +422,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_CR_ACCESS_FAILED ((HV_STATUS)0x1014)
-
/* MessageId: HV_STATUS_TIMEOUT */
/* MessageText: */
@@ -481,7 +430,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_TIMEOUT ((HV_STATUS)0x1016)
-
/* MessageId: HV_STATUS_MSR_INTERCEPT */
/* MessageText: */
@@ -490,7 +438,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_MSR_INTERCEPT ((HV_STATUS)0x1017)
-
/* MessageId: HV_STATUS_CPUID_INTERCEPT */
/* MessageText: */
@@ -499,7 +446,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_CPUID_INTERCEPT ((HV_STATUS)0x1018)
-
/* MessageId: HV_STATUS_REPEAT_INSTRUCTION */
/* MessageText: */
@@ -508,7 +454,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_REPEAT_INSTRUCTION ((HV_STATUS)0x1019)
-
/* MessageId: HV_STATUS_PAGE_PROTECTION_VIOLATION */
/* MessageText: */
@@ -517,7 +462,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_PAGE_PROTECTION_VIOLATION ((HV_STATUS)0x101A)
-
/* MessageId: HV_STATUS_PAGE_TABLE_INVALID */
/* MessageText: */
@@ -526,7 +470,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_PAGE_TABLE_INVALID ((HV_STATUS)0x101B)
-
/* MessageId: HV_STATUS_PAGE_NOT_PRESENT */
/* MessageText: */
@@ -535,7 +478,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_PAGE_NOT_PRESENT ((HV_STATUS)0x101C)
-
/* MessageId: HV_STATUS_IO_INTERCEPT */
/* MessageText: */
@@ -544,7 +486,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_IO_INTERCEPT ((HV_STATUS)0x101D)
-
/* MessageId: HV_STATUS_NOTHING_TO_DO */
/* MessageText: */
@@ -553,7 +494,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_NOTHING_TO_DO ((HV_STATUS)0x101E)
-
/* MessageId: HV_STATUS_THREAD_TERMINATING */
/* MessageText: */
@@ -562,7 +502,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_THREAD_TERMINATING ((HV_STATUS)0x101F)
-
/* MessageId: HV_STATUS_SECTION_ALREADY_CONSTRUCTED */
/* MessageText: */
@@ -571,7 +510,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_SECTION_ALREADY_CONSTRUCTED ((HV_STATUS)0x1020)
-
/* MessageId: HV_STATUS_SECTION_NOT_ALREADY_CONSTRUCTED */
/* MessageText: */
@@ -580,7 +518,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_SECTION_NOT_ALREADY_CONSTRUCTED ((HV_STATUS)0x1021)
-
/* MessageId: HV_STATUS_PAGE_ALREADY_COMMITTED */
/* MessageText: */
@@ -589,7 +526,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_PAGE_ALREADY_COMMITTED ((HV_STATUS)0x1022)
-
/* MessageId: HV_STATUS_PAGE_NOT_ALREADY_COMMITTED */
/* MessageText: */
@@ -598,7 +534,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_PAGE_NOT_ALREADY_COMMITTED ((HV_STATUS)0x1023)
-
/* MessageId: HV_STATUS_COMMITTED_PAGES_REMAIN */
/* MessageText: */
@@ -607,7 +542,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_COMMITTED_PAGES_REMAIN ((HV_STATUS)0x1024)
-
/* MessageId: HV_STATUS_NO_REMAINING_COMMITTED_PAGES */
/* MessageText: */
@@ -616,7 +550,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_NO_REMAINING_COMMITTED_PAGES ((HV_STATUS)0x1025)
-
/* MessageId: HV_STATUS_INSUFFICIENT_COMPARTMENT_VA */
/* MessageText: */
@@ -625,7 +558,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INSUFFICIENT_COMPARTMENT_VA ((HV_STATUS)0x1026)
-
/* MessageId: HV_STATUS_DEREF_SPA_LIST_FULL */
/* MessageText: */
@@ -635,7 +567,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_DEREF_SPA_LIST_FULL ((HV_STATUS)0x1027)
-
/* MessageId: HV_STATUS_GPA_OUT_OF_RANGE */
/* MessageText: */
@@ -644,7 +575,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_GPA_OUT_OF_RANGE ((HV_STATUS)0x1027)
-
/* MessageId: HV_STATUS_NONVOLATILE_XMM_STALE */
/* MessageText: */
@@ -653,7 +583,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_NONVOLATILE_XMM_STALE ((HV_STATUS)0x1028)
-
/* MessageId: HV_STATUS_UNSUPPORTED_PROCESSOR */
/* MessageText: */
@@ -662,7 +591,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_UNSUPPORTED_PROCESSOR ((HV_STATUS)0x1029)
-
/* MessageId: HV_STATUS_INSUFFICIENT_CROM_SPACE */
/* MessageText: */
@@ -671,7 +599,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_INSUFFICIENT_CROM_SPACE ((HV_STATUS)0x2000)
-
/* MessageId: HV_STATUS_BAD_CROM_FORMAT */
/* MessageText: */
@@ -680,7 +607,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_BAD_CROM_FORMAT ((HV_STATUS)0x2001)
-
/* MessageId: HV_STATUS_UNSUPPORTED_CROM_FORMAT */
/* MessageText: */
@@ -689,7 +615,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_UNSUPPORTED_CROM_FORMAT ((HV_STATUS)0x2002)
-
/* MessageId: HV_STATUS_UNSUPPORTED_CONTROLLER */
/* MessageText: */
@@ -698,7 +623,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_UNSUPPORTED_CONTROLLER ((HV_STATUS)0x2003)
-
/* MessageId: HV_STATUS_CROM_TOO_LARGE */
/* MessageText: */
@@ -707,7 +631,6 @@ typedef u16 HV_STATUS, *PHV_STATUS;
#define HV_STATUS_CROM_TOO_LARGE ((HV_STATUS)0x2004)
-
/* MessageId: HV_STATUS_CONTROLLER_IN_USE */
/* MessageText: */
@@ -715,4 +638,3 @@ typedef u16 HV_STATUS, *PHV_STATUS;
/* The OHCI controller specified for debugging cannot be used as it is already in use. */
#define HV_STATUS_CONTROLLER_IN_USE ((HV_STATUS)0x2005)
-
diff --git a/drivers/staging/hv/include/HvSynicApi.h b/drivers/staging/hv/include/HvSynicApi.h
index 17e2187..f15472b 100644
--- a/drivers/staging/hv/include/HvSynicApi.h
+++ b/drivers/staging/hv/include/HvSynicApi.h
@@ -23,7 +23,6 @@
#pragma once
-
/* Define the virtual APIC registers */
#define HV_X64_MSR_EOI (0x40000070)
@@ -31,17 +30,12 @@
#define HV_X64_MSR_TPR (0x40000072)
#define HV_X64_MSR_APIC_ASSIST_PAGE (0x40000073)
-
/* Define version of the synthetic interrupt controller. */
-
#define HV_SYNIC_VERSION (1)
-
-
/* Define synthetic interrupt controller model specific registers. */
-
#define HV_X64_MSR_SCONTROL (0x40000080)
#define HV_X64_MSR_SVERSION (0x40000081)
#define HV_X64_MSR_SIEFP (0x40000082)
@@ -64,390 +58,295 @@
#define HV_X64_MSR_SINT14 (0x4000009E)
#define HV_X64_MSR_SINT15 (0x4000009F)
-
/* Define the expected SynIC version. */
#define HV_SYNIC_VERSION_1 (0x1)
-
/* Define synthetic interrupt controller message constants. */
-
#define HV_MESSAGE_SIZE (256)
#define HV_MESSAGE_PAYLOAD_BYTE_COUNT (240)
#define HV_MESSAGE_PAYLOAD_QWORD_COUNT (30)
#define HV_ANY_VP (0xFFFFFFFF)
-
/* Define synthetic interrupt controller flag constants. */
-
#define HV_EVENT_FLAGS_COUNT (256 * 8)
#define HV_EVENT_FLAGS_BYTE_COUNT (256)
#define HV_EVENT_FLAGS_DWORD_COUNT (256 / sizeof(u32))
-
/* Define hypervisor message types. */
-typedef enum _HV_MESSAGE_TYPE
-{
- HvMessageTypeNone = 0x00000000,
-
-
- /* Memory access messages. */
-
- HvMessageTypeUnmappedGpa = 0x80000000,
- HvMessageTypeGpaIntercept = 0x80000001,
-
-
- /* Timer notification messages. */
+typedef enum _HV_MESSAGE_TYPE {
+ HvMessageTypeNone = 0x00000000,
- HvMessageTimerExpired = 0x80000010,
+ /* Memory access messages. */
+ HvMessageTypeUnmappedGpa = 0x80000000,
+ HvMessageTypeGpaIntercept = 0x80000001,
- /* Error messages. */
+ /* Timer notification messages. */
- HvMessageTypeInvalidVpRegisterValue = 0x80000020,
- HvMessageTypeUnrecoverableException = 0x80000021,
- HvMessageTypeUnsupportedFeature = 0x80000022,
+ HvMessageTimerExpired = 0x80000010,
+ /* Error messages. */
- /* Trace buffer complete messages. */
+ HvMessageTypeInvalidVpRegisterValue = 0x80000020,
+ HvMessageTypeUnrecoverableException = 0x80000021,
+ HvMessageTypeUnsupportedFeature = 0x80000022,
- HvMessageTypeEventLogBufferComplete = 0x80000040,
+ /* Trace buffer complete messages. */
+ HvMessageTypeEventLogBufferComplete = 0x80000040,
- /* Platform-specific processor intercept messages. */
-
- HvMessageTypeX64IoPortIntercept = 0x80010000,
- HvMessageTypeX64MsrIntercept = 0x80010001,
- HvMessageTypeX64CpuidIntercept = 0x80010002,
- HvMessageTypeX64ExceptionIntercept = 0x80010003,
- HvMessageTypeX64ApicEoi = 0x80010004,
- HvMessageTypeX64LegacyFpError = 0x80010005
+ /* Platform-specific processor intercept messages. */
+ HvMessageTypeX64IoPortIntercept = 0x80010000,
+ HvMessageTypeX64MsrIntercept = 0x80010001,
+ HvMessageTypeX64CpuidIntercept = 0x80010002,
+ HvMessageTypeX64ExceptionIntercept = 0x80010003,
+ HvMessageTypeX64ApicEoi = 0x80010004,
+ HvMessageTypeX64LegacyFpError = 0x80010005
} HV_MESSAGE_TYPE, *PHV_MESSAGE_TYPE;
-
/* Define the number of synthetic interrupt sources. */
-
#define HV_SYNIC_SINT_COUNT (16)
#define HV_SYNIC_STIMER_COUNT (4)
-
/* Define the synthetic interrupt source index type. */
-
typedef u32 HV_SYNIC_SINT_INDEX, *PHV_SYNIC_SINT_INDEX;
-
/* Define partition identifier type. */
-
typedef u64 HV_PARTITION_ID, *PHV_PARTITION_ID;
-
/* Define invalid partition identifier. */
#define HV_PARTITION_ID_INVALID ((HV_PARTITION_ID) 0x0)
-
/* Define connection identifier type. */
+typedef union _HV_CONNECTION_ID {
+ u32 Asu32;
-typedef union _HV_CONNECTION_ID
-{
- u32 Asu32;
-
- struct
- {
- u32 Id:24;
- u32 Reserved:8;
- } u;
+ struct {
+ u32 Id:24;
+ u32 Reserved:8;
+ } u;
} HV_CONNECTION_ID, *PHV_CONNECTION_ID;
-
/* Define port identifier type. */
+typedef union _HV_PORT_ID {
+ u32 Asu32;
-typedef union _HV_PORT_ID
-{
- u32 Asu32;
-
- struct
- {
- u32 Id:24;
- u32 Reserved:8;
- } u ;
+ struct {
+ u32 Id:24;
+ u32 Reserved:8;
+ } u;
} HV_PORT_ID, *PHV_PORT_ID;
-
/* Define port type. */
-
-typedef enum _HV_PORT_TYPE
-{
- HvPortTypeMessage = 1,
- HvPortTypeEvent = 2,
- HvPortTypeMonitor = 3
+typedef enum _HV_PORT_TYPE {
+ HvPortTypeMessage = 1,
+ HvPortTypeEvent = 2,
+ HvPortTypeMonitor = 3
} HV_PORT_TYPE, *PHV_PORT_TYPE;
-
/* Define port information structure. */
-
-typedef struct _HV_PORT_INFO
-{
- HV_PORT_TYPE PortType;
- u32 Padding;
-
- union
- {
- struct
- {
- HV_SYNIC_SINT_INDEX TargetSint;
- HV_VP_INDEX TargetVp;
- u64 RsvdZ;
- } MessagePortInfo;
-
- struct
- {
- HV_SYNIC_SINT_INDEX TargetSint;
- HV_VP_INDEX TargetVp;
- u16 BaseFlagNumber;
- u16 FlagCount;
- u32 RsvdZ;
- } EventPortInfo;
-
- struct
- {
- HV_GPA MonitorAddress;
- u64 RsvdZ;
- } MonitorPortInfo;
- };
+typedef struct _HV_PORT_INFO {
+ HV_PORT_TYPE PortType;
+ u32 Padding;
+
+ union {
+ struct {
+ HV_SYNIC_SINT_INDEX TargetSint;
+ HV_VP_INDEX TargetVp;
+ u64 RsvdZ;
+ } MessagePortInfo;
+
+ struct {
+ HV_SYNIC_SINT_INDEX TargetSint;
+ HV_VP_INDEX TargetVp;
+ u16 BaseFlagNumber;
+ u16 FlagCount;
+ u32 RsvdZ;
+ } EventPortInfo;
+
+ struct {
+ HV_GPA MonitorAddress;
+ u64 RsvdZ;
+ } MonitorPortInfo;
+ };
} HV_PORT_INFO, *PHV_PORT_INFO;
typedef const HV_PORT_INFO *PCHV_PORT_INFO;
-typedef struct _HV_CONNECTION_INFO
-{
- HV_PORT_TYPE PortType;
- u32 Padding;
-
- union
- {
- struct
- {
- u64 RsvdZ;
- } MessageConnectionInfo;
-
- struct
- {
- u64 RsvdZ;
- } EventConnectionInfo;
-
- struct
- {
- HV_GPA MonitorAddress;
- } MonitorConnectionInfo;
- };
+typedef struct _HV_CONNECTION_INFO {
+ HV_PORT_TYPE PortType;
+ u32 Padding;
+
+ union {
+ struct {
+ u64 RsvdZ;
+ } MessageConnectionInfo;
+
+ struct {
+ u64 RsvdZ;
+ } EventConnectionInfo;
+
+ struct {
+ HV_GPA MonitorAddress;
+ } MonitorConnectionInfo;
+ };
} HV_CONNECTION_INFO, *PHV_CONNECTION_INFO;
typedef const HV_CONNECTION_INFO *PCHV_CONNECTION_INFO;
-
/* Define synthetic interrupt controller message flags. */
-
-typedef union _HV_MESSAGE_FLAGS
-{
- u8 Asu8;
- struct
- {
- u8 MessagePending:1;
- u8 Reserved:7;
- };
+typedef union _HV_MESSAGE_FLAGS {
+ u8 Asu8;
+ struct {
+ u8 MessagePending:1;
+ u8 Reserved:7;
+ };
} HV_MESSAGE_FLAGS, *PHV_MESSAGE_FLAGS;
-
-
/* Define synthetic interrupt controller message header. */
-
-typedef struct _HV_MESSAGE_HEADER
-{
- HV_MESSAGE_TYPE MessageType;
- u8 PayloadSize;
- HV_MESSAGE_FLAGS MessageFlags;
- u8 Reserved[2];
- union
- {
- HV_PARTITION_ID Sender;
- HV_PORT_ID Port;
- };
+typedef struct _HV_MESSAGE_HEADER {
+ HV_MESSAGE_TYPE MessageType;
+ u8 PayloadSize;
+ HV_MESSAGE_FLAGS MessageFlags;
+ u8 Reserved[2];
+ union {
+ HV_PARTITION_ID Sender;
+ HV_PORT_ID Port;
+ };
} HV_MESSAGE_HEADER, *PHV_MESSAGE_HEADER;
-
/* Define timer message payload structure. */
-typedef struct _HV_TIMER_MESSAGE_PAYLOAD
-{
- u32 TimerIndex;
- u32 Reserved;
- HV_NANO100_TIME ExpirationTime; /* When the timer expired */
- HV_NANO100_TIME DeliveryTime; /* When the message was delivered */
+typedef struct _HV_TIMER_MESSAGE_PAYLOAD {
+ u32 TimerIndex;
+ u32 Reserved;
+ HV_NANO100_TIME ExpirationTime; /* When the timer expired */
+ HV_NANO100_TIME DeliveryTime; /* When the message was delivered */
} HV_TIMER_MESSAGE_PAYLOAD, *PHV_TIMER_MESSAGE_PAYLOAD;
-
/* Define synthetic interrupt controller message format. */
-
-typedef struct _HV_MESSAGE
-{
- HV_MESSAGE_HEADER Header;
- union
- {
- u64 Payload[HV_MESSAGE_PAYLOAD_QWORD_COUNT];
- } u ;
+typedef struct _HV_MESSAGE {
+ HV_MESSAGE_HEADER Header;
+ union {
+ u64 Payload[HV_MESSAGE_PAYLOAD_QWORD_COUNT];
+ } u;
} HV_MESSAGE, *PHV_MESSAGE;
-
/* Define the number of message buffers associated with each port. */
-
#define HV_PORT_MESSAGE_BUFFER_COUNT (16)
-
/* Define the synthetic interrupt message page layout. */
-
-typedef struct _HV_MESSAGE_PAGE
-{
- volatile HV_MESSAGE SintMessage[HV_SYNIC_SINT_COUNT];
+typedef struct _HV_MESSAGE_PAGE {
+ volatile HV_MESSAGE SintMessage[HV_SYNIC_SINT_COUNT];
} HV_MESSAGE_PAGE, *PHV_MESSAGE_PAGE;
-
-
/* Define the synthetic interrupt controller event flags format. */
-
-typedef union _HV_SYNIC_EVENT_FLAGS
-{
- u8 Flags8[HV_EVENT_FLAGS_BYTE_COUNT];
- u32 Flags32[HV_EVENT_FLAGS_DWORD_COUNT];
+typedef union _HV_SYNIC_EVENT_FLAGS {
+ u8 Flags8[HV_EVENT_FLAGS_BYTE_COUNT];
+ u32 Flags32[HV_EVENT_FLAGS_DWORD_COUNT];
} HV_SYNIC_EVENT_FLAGS, *PHV_SYNIC_EVENT_FLAGS;
-
-
/* Define the synthetic interrupt flags page layout. */
-
-typedef struct _HV_SYNIC_EVENT_FLAGS_PAGE
-{
- volatile HV_SYNIC_EVENT_FLAGS SintEventFlags[HV_SYNIC_SINT_COUNT];
+typedef struct _HV_SYNIC_EVENT_FLAGS_PAGE {
+ volatile HV_SYNIC_EVENT_FLAGS SintEventFlags[HV_SYNIC_SINT_COUNT];
} HV_SYNIC_EVENT_FLAGS_PAGE, *PHV_SYNIC_EVENT_FLAGS_PAGE;
-
-
/* Define SynIC control register. */
-typedef union _HV_SYNIC_SCONTROL
-{
- u64 AsUINT64;
- struct
- {
- u64 Enable:1;
- u64 Reserved:63;
- };
+typedef union _HV_SYNIC_SCONTROL {
+ u64 AsUINT64;
+ struct {
+ u64 Enable:1;
+ u64 Reserved:63;
+ };
} HV_SYNIC_SCONTROL, *PHV_SYNIC_SCONTROL;
-
/* Define synthetic interrupt source. */
-
-typedef union _HV_SYNIC_SINT
-{
- u64 AsUINT64;
- struct
- {
- u64 Vector :8;
- u64 Reserved1 :8;
- u64 Masked :1;
- u64 AutoEoi :1;
- u64 Reserved2 :46;
- };
+typedef union _HV_SYNIC_SINT {
+ u64 AsUINT64;
+ struct {
+ u64 Vector:8;
+ u64 Reserved1:8;
+ u64 Masked:1;
+ u64 AutoEoi:1;
+ u64 Reserved2:46;
+ };
} HV_SYNIC_SINT, *PHV_SYNIC_SINT;
-
/* Define the format of the SIMP register */
-
-typedef union _HV_SYNIC_SIMP
-{
- u64 AsUINT64;
- struct
- {
- u64 SimpEnabled : 1;
- u64 Preserved : 11;
- u64 BaseSimpGpa : 52;
- };
+typedef union _HV_SYNIC_SIMP {
+ u64 AsUINT64;
+ struct {
+ u64 SimpEnabled:1;
+ u64 Preserved:11;
+ u64 BaseSimpGpa:52;
+ };
} HV_SYNIC_SIMP, *PHV_SYNIC_SIMP;
-
/* Define the format of the SIEFP register */
-
-typedef union _HV_SYNIC_SIEFP
-{
- u64 AsUINT64;
- struct
- {
- u64 SiefpEnabled : 1;
- u64 Preserved : 11;
- u64 BaseSiefpGpa : 52;
- };
+typedef union _HV_SYNIC_SIEFP {
+ u64 AsUINT64;
+ struct {
+ u64 SiefpEnabled:1;
+ u64 Preserved:11;
+ u64 BaseSiefpGpa:52;
+ };
} HV_SYNIC_SIEFP, *PHV_SYNIC_SIEFP;
-
/* Definitions for the monitored notification facility */
+typedef union _HV_MONITOR_TRIGGER_GROUP {
+ u64 AsUINT64;
-typedef union _HV_MONITOR_TRIGGER_GROUP
-{
- u64 AsUINT64;
-
- struct
- {
- u32 Pending;
- u32 Armed;
- };
+ struct {
+ u32 Pending;
+ u32 Armed;
+ };
} HV_MONITOR_TRIGGER_GROUP, *PHV_MONITOR_TRIGGER_GROUP;
-typedef struct _HV_MONITOR_PARAMETER
-{
- HV_CONNECTION_ID ConnectionId;
- u16 FlagNumber;
- u16 RsvdZ;
+typedef struct _HV_MONITOR_PARAMETER {
+ HV_CONNECTION_ID ConnectionId;
+ u16 FlagNumber;
+ u16 RsvdZ;
} HV_MONITOR_PARAMETER, *PHV_MONITOR_PARAMETER;
-typedef union _HV_MONITOR_TRIGGER_STATE
-{
- u32 Asu32;
+typedef union _HV_MONITOR_TRIGGER_STATE {
+ u32 Asu32;
- struct
- {
- u32 GroupEnable : 4;
- u32 RsvdZ : 28;
- };
+ struct {
+ u32 GroupEnable:4;
+ u32 RsvdZ:28;
+ };
} HV_MONITOR_TRIGGER_STATE, *PHV_MONITOR_TRIGGER_STATE;
-
/* HV_MONITOR_PAGE Layout */
/* ------------------------------------------------------ */
/* | 0 | TriggerState (4 bytes) | Rsvd1 (4 bytes) | */
@@ -468,23 +367,22 @@ typedef union _HV_MONITOR_TRIGGER_STATE
/* | 840 | Rsvd4[0] | */
/* ------------------------------------------------------ */
-typedef struct _HV_MONITOR_PAGE
-{
- HV_MONITOR_TRIGGER_STATE TriggerState;
- u32 RsvdZ1;
+typedef struct _HV_MONITOR_PAGE {
+ HV_MONITOR_TRIGGER_STATE TriggerState;
+ u32 RsvdZ1;
- HV_MONITOR_TRIGGER_GROUP TriggerGroup[4];
- u64 RsvdZ2[3];
+ HV_MONITOR_TRIGGER_GROUP TriggerGroup[4];
+ u64 RsvdZ2[3];
- s32 NextCheckTime[4][32];
+ s32 NextCheckTime[4][32];
- u16 Latency[4][32];
- u64 RsvdZ3[32];
+ u16 Latency[4][32];
+ u64 RsvdZ3[32];
- HV_MONITOR_PARAMETER Parameter[4][32];
+ HV_MONITOR_PARAMETER Parameter[4][32];
- u8 RsvdZ4[1984];
+ u8 RsvdZ4[1984];
} HV_MONITOR_PAGE, *PHV_MONITOR_PAGE;
-typedef volatile HV_MONITOR_PAGE* PVHV_MONITOR_PAGE;
+typedef volatile HV_MONITOR_PAGE *PVHV_MONITOR_PAGE;
diff --git a/drivers/staging/hv/include/HvTypes.h b/drivers/staging/hv/include/HvTypes.h
index 5741c35..d49480c 100644
--- a/drivers/staging/hv/include/HvTypes.h
+++ b/drivers/staging/hv/include/HvTypes.h
@@ -21,11 +21,9 @@
*
*/
-
#pragma once
typedef u64 HV_GPA, *PHV_GPA;
#define HV_X64_PAGE_SIZE (4096)
#define HV_PAGE_SIZE HV_X64_PAGE_SIZE
-
diff --git a/drivers/staging/hv/include/HvVpApi.h b/drivers/staging/hv/include/HvVpApi.h
index ce0784c..e857d8b 100644
--- a/drivers/staging/hv/include/HvVpApi.h
+++ b/drivers/staging/hv/include/HvVpApi.h
@@ -21,31 +21,25 @@
*
*/
-
#pragma once
/* Virtual Processor Indices */
typedef u32 HV_VP_INDEX, *PHV_VP_INDEX;
-
/* The below CPUID leaves are present if VersionAndFeatures.HypervisorPresent */
/* is set by CPUID(HvCpuIdFunctionVersionAndFeatures). */
/* ========================================================================== */
+typedef enum _HV_CPUID_FUNCTION {
+ HvCpuIdFunctionVersionAndFeatures = 0x00000001,
+ HvCpuIdFunctionHvVendorAndMaxFunction = 0x40000000,
+ HvCpuIdFunctionHvInterface = 0x40000001,
-typedef enum _HV_CPUID_FUNCTION
-{
- HvCpuIdFunctionVersionAndFeatures = 0x00000001,
- HvCpuIdFunctionHvVendorAndMaxFunction = 0x40000000,
- HvCpuIdFunctionHvInterface = 0x40000001,
-
-
- /* The remaining functions depend on the value of HvCpuIdFunctionInterface */
-
- HvCpuIdFunctionMsHvVersion = 0x40000002,
- HvCpuIdFunctionMsHvFeatures = 0x40000003,
- HvCpuIdFunctionMsHvEnlightenmentInformation = 0x40000004,
- HvCpuIdFunctionMsHvImplementationLimits = 0x40000005
+ /* The remaining functions depend on the value of HvCpuIdFunctionInterface */
+ HvCpuIdFunctionMsHvVersion = 0x40000002,
+ HvCpuIdFunctionMsHvFeatures = 0x40000003,
+ HvCpuIdFunctionMsHvEnlightenmentInformation = 0x40000004,
+ HvCpuIdFunctionMsHvImplementationLimits = 0x40000005
} HV_CPUID_FUNCTION, *PHV_CPUID_FUNCTION;
diff --git a/drivers/staging/hv/include/List.h b/drivers/staging/hv/include/List.h
index 31c1296..11cc851 100644
--- a/drivers/staging/hv/include/List.h
+++ b/drivers/staging/hv/include/List.h
@@ -21,7 +21,6 @@
*
*/
-
#ifndef _LIST_H_
#define _LIST_H_
@@ -41,8 +40,6 @@ typedef DLIST_ENTRY *PLIST_ENTRY;
/* struct LIST_ENTRY * volatile Blink; */
/* } LIST_ENTRY, *PLIST_ENTRY; */
-
-
/*
* void
* InitializeListHead(
@@ -54,7 +51,6 @@ typedef DLIST_ENTRY *PLIST_ENTRY;
#define InitializeListHead(ListHead) (\
(ListHead)->Flink = (ListHead)->Blink = (ListHead))
-
/*
* bool
* IsListEmpty(
@@ -66,7 +62,6 @@ typedef DLIST_ENTRY *PLIST_ENTRY;
#define IsListEmpty(ListHead) \
((ListHead)->Flink == (ListHead))
-
/*
* PLIST_ENTRY
* NextListEntry(
@@ -78,7 +73,6 @@ typedef DLIST_ENTRY *PLIST_ENTRY;
#define NextListEntry(Entry) \
(Entry)->Flink
-
/*
* PLIST_ENTRY
* PrevListEntry(
@@ -90,7 +84,6 @@ typedef DLIST_ENTRY *PLIST_ENTRY;
#define PrevListEntry(Entry) \
(Entry)->Blink
-
/*
* PLIST_ENTRY
* TopListEntry(
@@ -102,8 +95,6 @@ typedef DLIST_ENTRY *PLIST_ENTRY;
#define TopListEntry(ListHead) \
(ListHead)->Flink
-
-
/*
* PLIST_ENTRY
* RemoveHeadList(
@@ -117,7 +108,6 @@ typedef DLIST_ENTRY *PLIST_ENTRY;
(ListHead)->Flink;\
{RemoveEntryList((ListHead)->Flink)}
-
/*
* PLIST_ENTRY
* RemoveTailList(
@@ -130,7 +120,6 @@ typedef DLIST_ENTRY *PLIST_ENTRY;
(ListHead)->Blink;\
{RemoveEntryList((ListHead)->Blink)}
-
/*
* void
* RemoveEntryList(
@@ -146,7 +135,6 @@ typedef DLIST_ENTRY *PLIST_ENTRY;
_EX_Flink->Blink = _EX_Blink;\
}
-
/*
* void
* AttachList(
@@ -165,8 +153,6 @@ typedef DLIST_ENTRY *PLIST_ENTRY;
(ListEntry)->Blink = _EX_Blink;\
}
-
-
/*
* void
* InsertTailList(
@@ -186,7 +172,6 @@ typedef DLIST_ENTRY *PLIST_ENTRY;
_EX_ListHead->Blink = (Entry);\
}
-
/*
* void
* InsertHeadList(
@@ -205,7 +190,6 @@ typedef DLIST_ENTRY *PLIST_ENTRY;
_EX_ListHead->Flink = (Entry);\
}
-
/*
* void
* IterateListEntries(
@@ -221,8 +205,6 @@ typedef DLIST_ENTRY *PLIST_ENTRY;
(anchor) = (LIST_ENTRY *)(listp); \
for((index) = (anchor)->Flink; (index) != (anchor); (index) = (index)->Flink)
-
-
/*
* PSINGLE_LIST_ENTRY
* PopEntryList(
@@ -242,8 +224,6 @@ typedef DLIST_ENTRY *PLIST_ENTRY;
} \
}
-
-
/*
* void
* PushEntryList(
diff --git a/drivers/staging/hv/include/NetVscApi.h b/drivers/staging/hv/include/NetVscApi.h
index 56ae23a..edcca04 100644
--- a/drivers/staging/hv/include/NetVscApi.h
+++ b/drivers/staging/hv/include/NetVscApi.h
@@ -21,48 +21,42 @@
*
*/
-
#ifndef _NETVSC_API_H_
#define _NETVSC_API_H_
#include "VmbusApi.h"
-
/* Defines */
#define NETVSC_DEVICE_RING_BUFFER_SIZE 64*PAGE_SIZE
#define HW_MACADDR_LEN 6
-
/* Fwd declaration */
-typedef struct _NETVSC_PACKET *PNETVSC_PACKET;
-
-
+typedef struct _NETVSC_PACKET *PNETVSC_PACKET;
/* Data types */
+typedef int (*PFN_ON_OPEN) (struct hv_device * Device);
+typedef int (*PFN_ON_CLOSE) (struct hv_device * Device);
-typedef int (*PFN_ON_OPEN)(struct hv_device *Device);
-typedef int (*PFN_ON_CLOSE)(struct hv_device *Device);
+typedef void (*PFN_QUERY_LINKSTATUS) (struct hv_device * Device);
+typedef int (*PFN_ON_SEND) (struct hv_device * dev, PNETVSC_PACKET packet);
+typedef void (*PFN_ON_SENDRECVCOMPLETION) (void *Context);
-typedef void (*PFN_QUERY_LINKSTATUS)(struct hv_device *Device);
-typedef int (*PFN_ON_SEND)(struct hv_device *dev, PNETVSC_PACKET packet);
-typedef void (*PFN_ON_SENDRECVCOMPLETION)(void * Context);
-
-typedef int (*PFN_ON_RECVCALLBACK)(struct hv_device *dev, PNETVSC_PACKET packet);
-typedef void (*PFN_ON_LINKSTATUS_CHANGED)(struct hv_device *dev, u32 Status);
+typedef int (*PFN_ON_RECVCALLBACK) (struct hv_device * dev,
+ PNETVSC_PACKET packet);
+typedef void (*PFN_ON_LINKSTATUS_CHANGED) (struct hv_device * dev, u32 Status);
/* Represent the xfer page packet which contains 1 or more netvsc packet */
typedef struct _XFERPAGE_PACKET {
- DLIST_ENTRY ListEntry;
+ DLIST_ENTRY ListEntry;
/* # of netvsc packets this xfer packet contains */
- u32 Count;
+ u32 Count;
} XFERPAGE_PACKET;
-
/* The number of pages which are enough to cover jumbo frame buffer. */
#define NETVSC_PACKET_MAXPAGE 4
@@ -72,82 +66,76 @@ typedef struct _XFERPAGE_PACKET {
*/
typedef struct _NETVSC_PACKET {
/* Bookkeeping stuff */
- DLIST_ENTRY ListEntry;
+ DLIST_ENTRY ListEntry;
struct hv_device *Device;
- bool IsDataPacket;
+ bool IsDataPacket;
/*
* Valid only for receives when we break a xfer page packet
* into multiple netvsc packets
*/
- XFERPAGE_PACKET *XferPagePacket;
+ XFERPAGE_PACKET *XferPagePacket;
union {
- struct{
- u64 ReceiveCompletionTid;
- void * ReceiveCompletionContext;
- PFN_ON_SENDRECVCOMPLETION OnReceiveCompletion;
+ struct {
+ u64 ReceiveCompletionTid;
+ void *ReceiveCompletionContext;
+ PFN_ON_SENDRECVCOMPLETION OnReceiveCompletion;
} Recv;
- struct{
- u64 SendCompletionTid;
- void * SendCompletionContext;
- PFN_ON_SENDRECVCOMPLETION OnSendCompletion;
+ struct {
+ u64 SendCompletionTid;
+ void *SendCompletionContext;
+ PFN_ON_SENDRECVCOMPLETION OnSendCompletion;
} Send;
} Completion;
/* This points to the memory after PageBuffers */
- void * Extension;
+ void *Extension;
- u32 TotalDataBufferLength;
+ u32 TotalDataBufferLength;
/* Points to the send/receive buffer where the ethernet frame is */
- u32 PageBufferCount;
- PAGE_BUFFER PageBuffers[NETVSC_PACKET_MAXPAGE];
+ u32 PageBufferCount;
+ PAGE_BUFFER PageBuffers[NETVSC_PACKET_MAXPAGE];
} NETVSC_PACKET;
-
/* Represents the net vsc driver */
typedef struct _NETVSC_DRIVER_OBJECT {
- DRIVER_OBJECT Base; /* Must be the first field */
+ DRIVER_OBJECT Base; /* Must be the first field */
- u32 RingBufferSize;
- u32 RequestExtSize;
+ u32 RingBufferSize;
+ u32 RequestExtSize;
/* Additional num of page buffers to allocate */
- u32 AdditionalRequestPageBufferCount;
+ u32 AdditionalRequestPageBufferCount;
/*
* This is set by the caller to allow us to callback when we
* receive a packet from the "wire"
*/
- PFN_ON_RECVCALLBACK OnReceiveCallback;
+ PFN_ON_RECVCALLBACK OnReceiveCallback;
- PFN_ON_LINKSTATUS_CHANGED OnLinkStatusChanged;
+ PFN_ON_LINKSTATUS_CHANGED OnLinkStatusChanged;
/* Specific to this driver */
- PFN_ON_OPEN OnOpen;
- PFN_ON_CLOSE OnClose;
- PFN_ON_SEND OnSend;
- /* PFN_ON_RECVCOMPLETION OnReceiveCompletion; */
+ PFN_ON_OPEN OnOpen;
+ PFN_ON_CLOSE OnClose;
+ PFN_ON_SEND OnSend;
+ /* PFN_ON_RECVCOMPLETION OnReceiveCompletion; */
- /* PFN_QUERY_LINKSTATUS QueryLinkStatus; */
+ /* PFN_QUERY_LINKSTATUS QueryLinkStatus; */
- void* Context;
+ void *Context;
} NETVSC_DRIVER_OBJECT;
-
typedef struct _NETVSC_DEVICE_INFO {
- unsigned char MacAddr[6];
- bool LinkState; /* 0 - link up, 1 - link down */
+ unsigned char MacAddr[6];
+ bool LinkState; /* 0 - link up, 1 - link down */
} NETVSC_DEVICE_INFO;
-
/* Interface */
-int
-NetVscInitialize(
- DRIVER_OBJECT* drv
- );
+int NetVscInitialize(DRIVER_OBJECT * drv);
#endif /* _NETVSC_API_H_ */
diff --git a/drivers/staging/hv/include/StorVscApi.h b/drivers/staging/hv/include/StorVscApi.h
index bd09409..2b7e1f0 100644
--- a/drivers/staging/hv/include/StorVscApi.h
+++ b/drivers/staging/hv/include/StorVscApi.h
@@ -21,16 +21,13 @@
*
*/
-
#ifndef _STORVSC_API_H_
#define _STORVSC_API_H_
#include "VmbusApi.h"
-
/* Defines */
-
#define STORVSC_RING_BUFFER_SIZE 10*PAGE_SIZE
#define BLKVSC_RING_BUFFER_SIZE 20*PAGE_SIZE
@@ -47,93 +44,82 @@
#define STORVSC_MAX_TARGETS 1
#define STORVSC_MAX_CHANNELS 1
-
/* Fwd decl */
/* struct VMBUS_CHANNEL; */
-typedef struct _STORVSC_REQUEST* PSTORVSC_REQUEST;
-
+typedef struct _STORVSC_REQUEST *PSTORVSC_REQUEST;
/* Data types */
-typedef int (*PFN_ON_IO_REQUEST)(struct hv_device *Device, PSTORVSC_REQUEST Request);
-typedef void (*PFN_ON_IO_REQUEST_COMPLTN)(PSTORVSC_REQUEST Request);
-
-typedef int (*PFN_ON_HOST_RESET)(struct hv_device *Device);
-typedef void (*PFN_ON_HOST_RESCAN)(struct hv_device *Device);
+typedef int (*PFN_ON_IO_REQUEST) (struct hv_device * Device,
+ PSTORVSC_REQUEST Request);
+typedef void (*PFN_ON_IO_REQUEST_COMPLTN) (PSTORVSC_REQUEST Request);
+typedef int (*PFN_ON_HOST_RESET) (struct hv_device * Device);
+typedef void (*PFN_ON_HOST_RESCAN) (struct hv_device * Device);
/* Matches Windows-end */
-typedef enum _STORVSC_REQUEST_TYPE{
+typedef enum _STORVSC_REQUEST_TYPE {
WRITE_TYPE,
READ_TYPE,
UNKNOWN_TYPE,
} STORVSC_REQUEST_TYPE;
-
typedef struct _STORVSC_REQUEST {
- STORVSC_REQUEST_TYPE Type;
- u32 Host;
- u32 Bus;
- u32 TargetId;
- u32 LunId;
- u8 * Cdb;
- u32 CdbLen;
- u32 Status;
- u32 BytesXfer;
+ STORVSC_REQUEST_TYPE Type;
+ u32 Host;
+ u32 Bus;
+ u32 TargetId;
+ u32 LunId;
+ u8 *Cdb;
+ u32 CdbLen;
+ u32 Status;
+ u32 BytesXfer;
- unsigned char* SenseBuffer;
- u32 SenseBufferSize;
+ unsigned char *SenseBuffer;
+ u32 SenseBufferSize;
- void * Context;
+ void *Context;
- PFN_ON_IO_REQUEST_COMPLTN OnIOCompletion;
+ PFN_ON_IO_REQUEST_COMPLTN OnIOCompletion;
/* This points to the memory after DataBuffer */
- void * Extension;
+ void *Extension;
- MULTIPAGE_BUFFER DataBuffer;
+ MULTIPAGE_BUFFER DataBuffer;
} STORVSC_REQUEST;
-
/* Represents the block vsc driver */
typedef struct _STORVSC_DRIVER_OBJECT {
- DRIVER_OBJECT Base; /* Must be the first field */
+ DRIVER_OBJECT Base; /* Must be the first field */
/* Set by caller (in bytes) */
- u32 RingBufferSize;
+ u32 RingBufferSize;
/* Allocate this much private extension for each I/O request */
- u32 RequestExtSize;
+ u32 RequestExtSize;
/* Maximum # of requests in flight per channel/device */
- u32 MaxOutstandingRequestsPerChannel;
+ u32 MaxOutstandingRequestsPerChannel;
/* Set by the caller to allow us to re-enumerate the bus on the host */
- PFN_ON_HOST_RESCAN OnHostRescan;
+ PFN_ON_HOST_RESCAN OnHostRescan;
/* Specific to this driver */
- PFN_ON_IO_REQUEST OnIORequest;
- PFN_ON_HOST_RESET OnHostReset;
+ PFN_ON_IO_REQUEST OnIORequest;
+ PFN_ON_HOST_RESET OnHostReset;
} STORVSC_DRIVER_OBJECT;
typedef struct _STORVSC_DEVICE_INFO {
- unsigned int PortNumber;
- unsigned char PathId;
- unsigned char TargetId;
+ unsigned int PortNumber;
+ unsigned char PathId;
+ unsigned char TargetId;
} STORVSC_DEVICE_INFO;
-
/* Interface */
-int
-StorVscInitialize(
- DRIVER_OBJECT *Driver
- );
+int StorVscInitialize(DRIVER_OBJECT * Driver);
-int
-BlkVscInitialize(
- DRIVER_OBJECT *Driver
- );
+int BlkVscInitialize(DRIVER_OBJECT * Driver);
#endif /* _STORVSC_API_H_ */
diff --git a/drivers/staging/hv/include/VmbusApi.h b/drivers/staging/hv/include/VmbusApi.h
index c09f589..0dd6912 100644
--- a/drivers/staging/hv/include/VmbusApi.h
+++ b/drivers/staging/hv/include/VmbusApi.h
@@ -21,243 +21,213 @@
*
*/
-
#ifndef _VMBUS_API_H_
#define _VMBUS_API_H_
#include "osd.h"
-
/* Defines */
-
#define MAX_PAGE_BUFFER_COUNT 16
-#define MAX_MULTIPAGE_BUFFER_COUNT 32 /* 128K */
-
-
+#define MAX_MULTIPAGE_BUFFER_COUNT 32 /* 128K */
/* Fwd declarations */
typedef struct _DRIVER_OBJECT *PDRIVER_OBJECT;
-
/* Data types */
-
#pragma pack(push,1)
/* Single-page buffer */
typedef struct _PAGE_BUFFER {
- u32 Length;
- u32 Offset;
- u64 Pfn;
+ u32 Length;
+ u32 Offset;
+ u64 Pfn;
} PAGE_BUFFER;
/* Multiple-page buffer */
typedef struct _MULTIPAGE_BUFFER {
/* Length and Offset determines the # of pfns in the array */
- u32 Length;
- u32 Offset;
- u64 PfnArray[MAX_MULTIPAGE_BUFFER_COUNT];
-}MULTIPAGE_BUFFER;
+ u32 Length;
+ u32 Offset;
+ u64 PfnArray[MAX_MULTIPAGE_BUFFER_COUNT];
+} MULTIPAGE_BUFFER;
/* 0x18 includes the proprietary packet header */
#define MAX_PAGE_BUFFER_PACKET (0x18 + (sizeof(PAGE_BUFFER) * MAX_PAGE_BUFFER_COUNT))
#define MAX_MULTIPAGE_BUFFER_PACKET (0x18 + sizeof(MULTIPAGE_BUFFER))
-
#pragma pack(pop)
struct hv_device;
/* All drivers */
-typedef int (*PFN_ON_DEVICEADD)(struct hv_device *Device, void* AdditionalInfo);
-typedef int (*PFN_ON_DEVICEREMOVE)(struct hv_device *Device);
-typedef char** (*PFN_ON_GETDEVICEIDS)(void);
-typedef void (*PFN_ON_CLEANUP)(PDRIVER_OBJECT Driver);
+typedef int (*PFN_ON_DEVICEADD) (struct hv_device * Device,
+ void *AdditionalInfo);
+typedef int (*PFN_ON_DEVICEREMOVE) (struct hv_device * Device);
+typedef char **(*PFN_ON_GETDEVICEIDS) (void);
+typedef void (*PFN_ON_CLEANUP) (PDRIVER_OBJECT Driver);
/* Vmbus extensions */
/* typedef int (*PFN_ON_MATCH)(struct hv_device *dev, PDRIVER_OBJECT drv); */
/* typedef int (*PFN_ON_PROBE)(struct hv_device *dev); */
-typedef int (*PFN_ON_ISR)(PDRIVER_OBJECT drv);
-typedef void (*PFN_ON_DPC)(PDRIVER_OBJECT drv);
-typedef void (*PFN_GET_CHANNEL_OFFERS)(void);
-
-typedef struct hv_device *(*PFN_ON_CHILDDEVICE_CREATE)(GUID DeviceType, GUID DeviceInstance, void *Context);
-typedef void (*PFN_ON_CHILDDEVICE_DESTROY)(struct hv_device *Device);
-typedef int (*PFN_ON_CHILDDEVICE_ADD)(struct hv_device *RootDevice, struct hv_device *ChildDevice);
-typedef void (*PFN_ON_CHILDDEVICE_REMOVE)(struct hv_device *Device);
+typedef int (*PFN_ON_ISR) (PDRIVER_OBJECT drv);
+typedef void (*PFN_ON_DPC) (PDRIVER_OBJECT drv);
+typedef void (*PFN_GET_CHANNEL_OFFERS) (void);
+
+typedef struct hv_device *(*PFN_ON_CHILDDEVICE_CREATE) (GUID DeviceType,
+ GUID DeviceInstance,
+ void *Context);
+typedef void (*PFN_ON_CHILDDEVICE_DESTROY) (struct hv_device * Device);
+typedef int (*PFN_ON_CHILDDEVICE_ADD) (struct hv_device * RootDevice,
+ struct hv_device * ChildDevice);
+typedef void (*PFN_ON_CHILDDEVICE_REMOVE) (struct hv_device * Device);
/* Vmbus channel interface */
-typedef void (*VMBUS_CHANNEL_CALLBACK)(void * context);
-
-typedef int (*VMBUS_CHANNEL_OPEN)(
- struct hv_device *Device,
- u32 SendBufferSize,
- u32 RecvRingBufferSize,
- void * UserData,
- u32 UserDataLen,
- VMBUS_CHANNEL_CALLBACK ChannelCallback,
- void * Context
- );
-
-typedef void (*VMBUS_CHANNEL_CLOSE)(
- struct hv_device *Device
- );
-
-typedef int (*VMBUS_CHANNEL_SEND_PACKET)(
- struct hv_device *Device,
- const void * Buffer,
- u32 BufferLen,
- u64 RequestId,
- u32 Type,
- u32 Flags
-);
-
-typedef int (*VMBUS_CHANNEL_SEND_PACKET_PAGEBUFFER)(
- struct hv_device *Device,
- PAGE_BUFFER PageBuffers[],
- u32 PageCount,
- void * Buffer,
- u32 BufferLen,
- u64 RequestId
- );
-
-typedef int (*VMBUS_CHANNEL_SEND_PACKET_MULTIPAGEBUFFER)(
- struct hv_device *Device,
- MULTIPAGE_BUFFER *MultiPageBuffer,
- void * Buffer,
- u32 BufferLen,
- u64 RequestId
-);
-
-typedef int (*VMBUS_CHANNEL_RECV_PACKET)(
- struct hv_device *Device,
- void * Buffer,
- u32 BufferLen,
- u32* BufferActualLen,
- u64* RequestId
- );
-
-typedef int (*VMBUS_CHANNEL_RECV_PACKET_PAW)(
- struct hv_device *Device,
- void * Buffer,
- u32 BufferLen,
- u32* BufferActualLen,
- u64* RequestId
- );
-
-typedef int (*VMBUS_CHANNEL_ESTABLISH_GPADL)(
- struct hv_device *Device,
- void * Buffer, /* from kmalloc() */
- u32 BufferLen, /* page-size multiple */
- u32* GpadlHandle
- );
-
-typedef int (*VMBUS_CHANNEL_TEARDOWN_GPADL)(
- struct hv_device *Device,
- u32 GpadlHandle
- );
-
+typedef void (*VMBUS_CHANNEL_CALLBACK) (void *context);
+
+typedef int (*VMBUS_CHANNEL_OPEN) (struct hv_device * Device,
+ u32 SendBufferSize,
+ u32 RecvRingBufferSize,
+ void *UserData,
+ u32 UserDataLen,
+ VMBUS_CHANNEL_CALLBACK ChannelCallback,
+ void *Context);
+
+typedef void (*VMBUS_CHANNEL_CLOSE) (struct hv_device * Device);
+
+typedef int (*VMBUS_CHANNEL_SEND_PACKET) (struct hv_device * Device,
+ const void *Buffer,
+ u32 BufferLen,
+ u64 RequestId, u32 Type, u32 Flags);
+
+typedef int (*VMBUS_CHANNEL_SEND_PACKET_PAGEBUFFER) (struct hv_device * Device,
+ PAGE_BUFFER PageBuffers[],
+ u32 PageCount,
+ void *Buffer,
+ u32 BufferLen,
+ u64 RequestId);
+
+typedef int (*VMBUS_CHANNEL_SEND_PACKET_MULTIPAGEBUFFER) (struct hv_device *
+ Device,
+ MULTIPAGE_BUFFER *
+ MultiPageBuffer,
+ void *Buffer,
+ u32 BufferLen,
+ u64 RequestId);
+
+typedef int (*VMBUS_CHANNEL_RECV_PACKET) (struct hv_device * Device,
+ void *Buffer,
+ u32 BufferLen,
+ u32 * BufferActualLen,
+ u64 * RequestId);
+
+typedef int (*VMBUS_CHANNEL_RECV_PACKET_PAW) (struct hv_device * Device,
+ void *Buffer,
+ u32 BufferLen,
+ u32 * BufferActualLen,
+ u64 * RequestId);
+
+typedef int (*VMBUS_CHANNEL_ESTABLISH_GPADL) (struct hv_device * Device, void *Buffer, /* from kmalloc() */
+ u32 BufferLen, /* page-size multiple */
+ u32 * GpadlHandle);
+
+typedef int (*VMBUS_CHANNEL_TEARDOWN_GPADL) (struct hv_device * Device,
+ u32 GpadlHandle);
typedef struct _PORT_INFO {
- u32 InterruptMask;
- u32 ReadIndex;
- u32 WriteIndex;
- u32 BytesAvailToRead;
- u32 BytesAvailToWrite;
+ u32 InterruptMask;
+ u32 ReadIndex;
+ u32 WriteIndex;
+ u32 BytesAvailToRead;
+ u32 BytesAvailToWrite;
} PORT_INFO;
-
typedef struct _DEVICE_INFO {
- u32 ChannelId;
- u32 ChannelState;
- GUID ChannelType;
- GUID ChannelInstance;
-
- u32 MonitorId;
- u32 ServerMonitorPending;
- u32 ServerMonitorLatency;
- u32 ServerMonitorConnectionId;
- u32 ClientMonitorPending;
- u32 ClientMonitorLatency;
- u32 ClientMonitorConnectionId;
-
- PORT_INFO Inbound;
- PORT_INFO Outbound;
+ u32 ChannelId;
+ u32 ChannelState;
+ GUID ChannelType;
+ GUID ChannelInstance;
+
+ u32 MonitorId;
+ u32 ServerMonitorPending;
+ u32 ServerMonitorLatency;
+ u32 ServerMonitorConnectionId;
+ u32 ClientMonitorPending;
+ u32 ClientMonitorLatency;
+ u32 ClientMonitorConnectionId;
+
+ PORT_INFO Inbound;
+ PORT_INFO Outbound;
} DEVICE_INFO;
-typedef void (*VMBUS_GET_CHANNEL_INFO)(struct hv_device *Device, DEVICE_INFO* DeviceInfo);
+typedef void (*VMBUS_GET_CHANNEL_INFO) (struct hv_device * Device,
+ DEVICE_INFO * DeviceInfo);
typedef struct _VMBUS_CHANNEL_INTERFACE {
- VMBUS_CHANNEL_OPEN Open;
- VMBUS_CHANNEL_CLOSE Close;
- VMBUS_CHANNEL_SEND_PACKET SendPacket;
- VMBUS_CHANNEL_SEND_PACKET_PAGEBUFFER SendPacketPageBuffer;
- VMBUS_CHANNEL_SEND_PACKET_MULTIPAGEBUFFER SendPacketMultiPageBuffer;
- VMBUS_CHANNEL_RECV_PACKET RecvPacket;
- VMBUS_CHANNEL_RECV_PACKET_PAW RecvPacketRaw;
- VMBUS_CHANNEL_ESTABLISH_GPADL EstablishGpadl;
- VMBUS_CHANNEL_TEARDOWN_GPADL TeardownGpadl;
- VMBUS_GET_CHANNEL_INFO GetInfo;
+ VMBUS_CHANNEL_OPEN Open;
+ VMBUS_CHANNEL_CLOSE Close;
+ VMBUS_CHANNEL_SEND_PACKET SendPacket;
+ VMBUS_CHANNEL_SEND_PACKET_PAGEBUFFER SendPacketPageBuffer;
+ VMBUS_CHANNEL_SEND_PACKET_MULTIPAGEBUFFER SendPacketMultiPageBuffer;
+ VMBUS_CHANNEL_RECV_PACKET RecvPacket;
+ VMBUS_CHANNEL_RECV_PACKET_PAW RecvPacketRaw;
+ VMBUS_CHANNEL_ESTABLISH_GPADL EstablishGpadl;
+ VMBUS_CHANNEL_TEARDOWN_GPADL TeardownGpadl;
+ VMBUS_GET_CHANNEL_INFO GetInfo;
} VMBUS_CHANNEL_INTERFACE;
-typedef void (*VMBUS_GET_CHANNEL_INTERFACE)(VMBUS_CHANNEL_INTERFACE *Interface);
+typedef void (*VMBUS_GET_CHANNEL_INTERFACE) (VMBUS_CHANNEL_INTERFACE *
+ Interface);
/* Base driver object */
typedef struct _DRIVER_OBJECT {
- const char* name;
- GUID deviceType; /* the device type supported by this driver */
+ const char *name;
+ GUID deviceType; /* the device type supported by this driver */
- PFN_ON_DEVICEADD OnDeviceAdd;
- PFN_ON_DEVICEREMOVE OnDeviceRemove;
- PFN_ON_GETDEVICEIDS OnGetDeviceIds; /* device ids supported by this driver */
- PFN_ON_CLEANUP OnCleanup;
+ PFN_ON_DEVICEADD OnDeviceAdd;
+ PFN_ON_DEVICEREMOVE OnDeviceRemove;
+ PFN_ON_GETDEVICEIDS OnGetDeviceIds; /* device ids supported by this driver */
+ PFN_ON_CLEANUP OnCleanup;
VMBUS_CHANNEL_INTERFACE VmbusChannelInterface;
} DRIVER_OBJECT;
-
/* Base device object */
struct hv_device {
- DRIVER_OBJECT* Driver; /* the driver for this device */
- char name[64];
- GUID deviceType; /* the device type id of this device */
- GUID deviceInstance; /* the device instance id of this device */
- void* context;
- void* Extension; /* Device extension; */
+ DRIVER_OBJECT *Driver; /* the driver for this device */
+ char name[64];
+ GUID deviceType; /* the device type id of this device */
+ GUID deviceInstance; /* the device instance id of this device */
+ void *context;
+ void *Extension; /* Device extension; */
};
-
/* Vmbus driver object */
typedef struct _VMBUS_DRIVER_OBJECT {
- DRIVER_OBJECT Base; /* !! Must be the 1st field !! */
+ DRIVER_OBJECT Base; /* !! Must be the 1st field !! */
/* Set by the caller */
- PFN_ON_CHILDDEVICE_CREATE OnChildDeviceCreate;
- PFN_ON_CHILDDEVICE_DESTROY OnChildDeviceDestroy;
- PFN_ON_CHILDDEVICE_ADD OnChildDeviceAdd;
- PFN_ON_CHILDDEVICE_REMOVE OnChildDeviceRemove;
+ PFN_ON_CHILDDEVICE_CREATE OnChildDeviceCreate;
+ PFN_ON_CHILDDEVICE_DESTROY OnChildDeviceDestroy;
+ PFN_ON_CHILDDEVICE_ADD OnChildDeviceAdd;
+ PFN_ON_CHILDDEVICE_REMOVE OnChildDeviceRemove;
/* Set by the callee */
- /* PFN_ON_MATCH OnMatch; */
- /* PFN_ON_PROBE OnProbe; */
- PFN_ON_ISR OnIsr;
- PFN_ON_DPC OnMsgDpc;
- PFN_ON_DPC OnEventDpc;
- PFN_GET_CHANNEL_OFFERS GetChannelOffers;
+ /* PFN_ON_MATCH OnMatch; */
+ /* PFN_ON_PROBE OnProbe; */
+ PFN_ON_ISR OnIsr;
+ PFN_ON_DPC OnMsgDpc;
+ PFN_ON_DPC OnEventDpc;
+ PFN_GET_CHANNEL_OFFERS GetChannelOffers;
VMBUS_GET_CHANNEL_INTERFACE GetChannelInterface;
- VMBUS_GET_CHANNEL_INFO GetChannelInfo;
+ VMBUS_GET_CHANNEL_INFO GetChannelInfo;
} VMBUS_DRIVER_OBJECT;
-
-
/* Interface */
-int
-VmbusInitialize(
- DRIVER_OBJECT* drv
- );
+int VmbusInitialize(DRIVER_OBJECT * drv);
#endif /* _VMBUS_API_H_ */
diff --git a/drivers/staging/hv/include/VmbusChannelInterface.h b/drivers/staging/hv/include/VmbusChannelInterface.h
index 881c22d..2dfa238 100644
--- a/drivers/staging/hv/include/VmbusChannelInterface.h
+++ b/drivers/staging/hv/include/VmbusChannelInterface.h
@@ -21,89 +21,73 @@
*
*/
-
#pragma once
/* allow nameless unions */
/* #pragma warning(disable : 4201) */
-
/* A revision number of vmbus that is used for ensuring both ends on a */
/* partition are using compatible versions. */
#define VMBUS_REVISION_NUMBER 13
-
/* Make maximum size of pipe payload of 16K */
#define MAX_PIPE_DATA_PAYLOAD (sizeof(BYTE) * 16384)
-
/* Define PipeMode values. */
#define VMBUS_PIPE_TYPE_BYTE 0x00000000
#define VMBUS_PIPE_TYPE_MESSAGE 0x00000004
-
/* The size of the user defined data buffer for non-pipe offers. */
#define MAX_USER_DEFINED_BYTES 120
-
/* The size of the user defined data buffer for pipe offers. */
#define MAX_PIPE_USER_DEFINED_BYTES 116
-
-
/* At the center of the Channel Management library is */
/* the Channel Offer. This struct contains the */
/* fundamental information about an offer. */
#pragma pack(push,1)
-typedef struct
-{
-
- GUID InterfaceType;
- GUID InterfaceInstance;
- u64 InterruptLatencyIn100nsUnits;
- u32 InterfaceRevision;
- u32 ServerContextAreaSize; /* in bytes */
- u16 ChannelFlags;
- u16 MmioMegabytes; /* in bytes * 1024 * 1024 */
+typedef struct {
- union
- {
+ GUID InterfaceType;
+ GUID InterfaceInstance;
+ u64 InterruptLatencyIn100nsUnits;
+ u32 InterfaceRevision;
+ u32 ServerContextAreaSize; /* in bytes */
+ u16 ChannelFlags;
+ u16 MmioMegabytes; /* in bytes * 1024 * 1024 */
- /* Non-pipes: The user has MAX_USER_DEFINED_BYTES bytes. */
+ union {
- struct
- {
- unsigned char UserDefined[MAX_USER_DEFINED_BYTES];
- } Standard;
+ /* Non-pipes: The user has MAX_USER_DEFINED_BYTES bytes. */
+ struct {
+ unsigned char UserDefined[MAX_USER_DEFINED_BYTES];
+ } Standard;
- /* Pipes: The following sructure is an integrated pipe protocol, which */
- /* is implemented on top of standard user-defined data. Pipe clients */
- /* have MAX_PIPE_USER_DEFINED_BYTES left for their own use. */
+ /* Pipes: The following sructure is an integrated pipe protocol, which */
+ /* is implemented on top of standard user-defined data. Pipe clients */
+ /* have MAX_PIPE_USER_DEFINED_BYTES left for their own use. */
- struct
- {
- u32 PipeMode;
- unsigned char UserDefined[MAX_PIPE_USER_DEFINED_BYTES];
- } Pipe;
- } u;
- u32 Padding;
+ struct {
+ u32 PipeMode;
+ unsigned char UserDefined[MAX_PIPE_USER_DEFINED_BYTES];
+ } Pipe;
+ } u;
+ u32 Padding;
} VMBUS_CHANNEL_OFFER, *PVMBUS_CHANNEL_OFFER;
#pragma pack(pop)
-
typedef u32 GPADL_HANDLE;
-
/* Server Flags */
-
#define VMBUS_CHANNEL_ENUMERATE_DEVICE_INTERFACE 1
#define VMBUS_CHANNEL_SERVER_SUPPORTS_TRANSFER_PAGES 2
#define VMBUS_CHANNEL_SERVER_SUPPORTS_GPADLS 4
@@ -112,10 +96,8 @@ typedef u32 GPADL_HANDLE;
#define VMBUS_CHANNEL_PARENT_OFFER 0x200
#define VMBUS_CHANNEL_REQUEST_MONITORED_NOTIFICATION 0x400
-
/* TEMPTEMP -- move this next define to devioctl.h some day */
-
#ifndef FILE_DEVICE_VMBUS
#define FILE_DEVICE_VMBUS 0x0000003E
#endif
diff --git a/drivers/staging/hv/include/VmbusPacketFormat.h b/drivers/staging/hv/include/VmbusPacketFormat.h
index f6600a9..ee76b97 100644
--- a/drivers/staging/hv/include/VmbusPacketFormat.h
+++ b/drivers/staging/hv/include/VmbusPacketFormat.h
@@ -21,7 +21,6 @@
*
*/
-
#pragma once
/* #ifndef PAGE_SIZE */
@@ -35,255 +34,224 @@
/* allow nameless unions */
/* #pragma warning(disable : 4201) */
-typedef struct
-{
- union
- {
- struct
- {
- volatile u32 In; /* Offset in bytes from the ring base */
- volatile u32 Out; /* Offset in bytes from the ring base */
+typedef struct {
+ union {
+ struct {
+ volatile u32 In; /* Offset in bytes from the ring base */
+ volatile u32 Out; /* Offset in bytes from the ring base */
+ };
+ volatile long long InOut;
};
- volatile long long InOut;
- };
-
- /* If the receiving endpoint sets this to some non-zero value, the sending */
- /* endpoint should not send any interrupts. */
+ /* If the receiving endpoint sets this to some non-zero value, the sending */
+ /* endpoint should not send any interrupts. */
-
- volatile u32 InterruptMask;
+ volatile u32 InterruptMask;
} VMRCB, *PVMRCB;
-typedef struct
-{
- union
- {
- struct
- {
- VMRCB Control;
- };
-
- u8 Reserved[PAGE_SIZE];
- };
+typedef struct {
+ union {
+ struct {
+ VMRCB Control;
+ };
+ u8 Reserved[PAGE_SIZE];
+ };
- /* Beginning of the ring data. Note: It must be guaranteed that */
- /* this data does not share a page with the control structure. */
+ /* Beginning of the ring data. Note: It must be guaranteed that */
+ /* this data does not share a page with the control structure. */
- u8 Data[1];
+ u8 Data[1];
} VMRING, *PVMRING;
#pragma pack(push, 1)
-typedef struct
-{
- u16 Type;
- u16 DataOffset8;
- u16 Length8;
- u16 Flags;
- u64 TransactionId;
+typedef struct {
+ u16 Type;
+ u16 DataOffset8;
+ u16 Length8;
+ u16 Flags;
+ u64 TransactionId;
} VMPACKET_DESCRIPTOR, *PVMPACKET_DESCRIPTOR;
typedef u32 PREVIOUS_PACKET_OFFSET, *PPREVIOUS_PACKET_OFFSET;
-typedef struct
-{
- PREVIOUS_PACKET_OFFSET PreviousPacketStartOffset;
- VMPACKET_DESCRIPTOR Descriptor;
+typedef struct {
+ PREVIOUS_PACKET_OFFSET PreviousPacketStartOffset;
+ VMPACKET_DESCRIPTOR Descriptor;
} VMPACKET_HEADER, *PVMPACKET_HEADER;
-typedef struct
-{
- u32 ByteCount;
- u32 ByteOffset;
+typedef struct {
+ u32 ByteCount;
+ u32 ByteOffset;
} VMTRANSFER_PAGE_RANGE, *PVMTRANSFER_PAGE_RANGE;
#ifdef __cplusplus
-typedef struct _VMTRANSFER_PAGE_PACKET_HEADER : VMPACKET_DESCRIPTOR {
+typedef struct _VMTRANSFER_PAGE_PACKET_HEADER:VMPACKET_DESCRIPTOR {
#else
typedef struct VMTRANSFER_PAGE_PACKET_HEADER {
- VMPACKET_DESCRIPTOR d;
+ VMPACKET_DESCRIPTOR d;
#endif
- u16 TransferPageSetId;
- bool SenderOwnsSet;
- u8 Reserved;
- u32 RangeCount;
- VMTRANSFER_PAGE_RANGE Ranges[1];
+ u16 TransferPageSetId;
+ bool SenderOwnsSet;
+ u8 Reserved;
+ u32 RangeCount;
+ VMTRANSFER_PAGE_RANGE Ranges[1];
} VMTRANSFER_PAGE_PACKET_HEADER, *PVMTRANSFER_PAGE_PACKET_HEADER;
-
#ifdef __cplusplus
-typedef struct _VMGPADL_PACKET_HEADER : VMPACKET_DESCRIPTOR {
+typedef struct _VMGPADL_PACKET_HEADER:VMPACKET_DESCRIPTOR {
#else
typedef struct _VMGPADL_PACKET_HEADER {
- VMPACKET_DESCRIPTOR d;
+ VMPACKET_DESCRIPTOR d;
#endif
-
- u32 Gpadl;
- u32 Reserved;
+ u32 Gpadl;
+ u32 Reserved;
} VMGPADL_PACKET_HEADER, *PVMGPADL_PACKET_HEADER;
#ifdef __cplusplus
-typedef struct _VMADD_REMOVE_TRANSFER_PAGE_SET : VMPACKET_DESCRIPTOR {
+typedef struct _VMADD_REMOVE_TRANSFER_PAGE_SET:VMPACKET_DESCRIPTOR {
#else
typedef struct _VMADD_REMOVE_TRANSFER_PAGE_SET {
- VMPACKET_DESCRIPTOR d;
+ VMPACKET_DESCRIPTOR d;
#endif
- u32 Gpadl;
- u16 TransferPageSetId;
- u16 Reserved;
+ u32 Gpadl;
+ u16 TransferPageSetId;
+ u16 Reserved;
} VMADD_REMOVE_TRANSFER_PAGE_SET, *PVMADD_REMOVE_TRANSFER_PAGE_SET;
#pragma pack(pop)
-
/* This structure defines a range in guest physical space that can be made */
/* to look virtually contiguous. */
-
typedef struct _GPA_RANGE {
- u32 ByteCount;
- u32 ByteOffset;
- u64 PfnArray[0];
+ u32 ByteCount;
+ u32 ByteOffset;
+ u64 PfnArray[0];
} GPA_RANGE, *PGPA_RANGE;
-
-
#pragma pack(push, 1)
-
/* This is the format for an Establish Gpadl packet, which contains a handle */
/* by which this GPADL will be known and a set of GPA ranges associated with */
/* it. This can be converted to a MDL by the guest OS. If there are multiple */
/* GPA ranges, then the resulting MDL will be "chained," representing multiple */
/* VA ranges. */
-
#ifdef __cplusplus
-typedef struct _VMESTABLISH_GPADL : VMPACKET_DESCRIPTOR {
+typedef struct _VMESTABLISH_GPADL:VMPACKET_DESCRIPTOR {
#else
typedef struct _VMESTABLISH_GPADL {
- VMPACKET_DESCRIPTOR d;
+ VMPACKET_DESCRIPTOR d;
#endif
- u32 Gpadl;
- u32 RangeCount;
- GPA_RANGE Range[1];
+ u32 Gpadl;
+ u32 RangeCount;
+ GPA_RANGE Range[1];
} VMESTABLISH_GPADL, *PVMESTABLISH_GPADL;
-
-
/* This is the format for a Teardown Gpadl packet, which indicates that the */
/* GPADL handle in the Establish Gpadl packet will never be referenced again. */
-
#ifdef __cplusplus
-typedef struct _VMTEARDOWN_GPADL : VMPACKET_DESCRIPTOR {
+typedef struct _VMTEARDOWN_GPADL:VMPACKET_DESCRIPTOR {
#else
typedef struct _VMTEARDOWN_GPADL {
- VMPACKET_DESCRIPTOR d;
+ VMPACKET_DESCRIPTOR d;
#endif
- u32 Gpadl;
- u32 Reserved; /* for alignment to a 8-byte boundary */
+ u32 Gpadl;
+ u32 Reserved; /* for alignment to a 8-byte boundary */
} VMTEARDOWN_GPADL, *PVMTEARDOWN_GPADL;
-
-
/* This is the format for a GPA-Direct packet, which contains a set of GPA */
/* ranges, in addition to commands and/or data. */
-
#ifdef __cplusplus
-typedef struct _VMDATA_GPA_DIRECT : VMPACKET_DESCRIPTOR {
+typedef struct _VMDATA_GPA_DIRECT:VMPACKET_DESCRIPTOR {
#else
typedef struct _VMDATA_GPA_DIRECT {
- VMPACKET_DESCRIPTOR d;
+ VMPACKET_DESCRIPTOR d;
#endif
- u32 Reserved;
- u32 RangeCount;
- GPA_RANGE Range[1];
+ u32 Reserved;
+ u32 RangeCount;
+ GPA_RANGE Range[1];
} VMDATA_GPA_DIRECT, *PVMDATA_GPA_DIRECT;
-
-
-
/* This is the format for a Additional Data Packet. */
-
#ifdef __cplusplus
-typedef struct _VMADDITIONAL_DATA : VMPACKET_DESCRIPTOR {
+typedef struct _VMADDITIONAL_DATA:VMPACKET_DESCRIPTOR {
#else
typedef struct _VMADDITIONAL_DATA {
- VMPACKET_DESCRIPTOR d;
+ VMPACKET_DESCRIPTOR d;
#endif
- u64 TotalBytes;
- u32 ByteOffset;
- u32 ByteCount;
- unsigned char Data[1];
+ u64 TotalBytes;
+ u32 ByteOffset;
+ u32 ByteCount;
+ unsigned char Data[1];
} VMADDITIONAL_DATA, *PVMADDITIONAL_DATA;
-
#pragma pack(pop)
typedef union {
- VMPACKET_DESCRIPTOR SimpleHeader;
- VMTRANSFER_PAGE_PACKET_HEADER TransferPageHeader;
- VMGPADL_PACKET_HEADER GpadlHeader;
- VMADD_REMOVE_TRANSFER_PAGE_SET AddRemoveTransferPageHeader;
- VMESTABLISH_GPADL EstablishGpadlHeader;
- VMTEARDOWN_GPADL TeardownGpadlHeader;
- VMDATA_GPA_DIRECT DataGpaDirectHeader;
+ VMPACKET_DESCRIPTOR SimpleHeader;
+ VMTRANSFER_PAGE_PACKET_HEADER TransferPageHeader;
+ VMGPADL_PACKET_HEADER GpadlHeader;
+ VMADD_REMOVE_TRANSFER_PAGE_SET AddRemoveTransferPageHeader;
+ VMESTABLISH_GPADL EstablishGpadlHeader;
+ VMTEARDOWN_GPADL TeardownGpadlHeader;
+ VMDATA_GPA_DIRECT DataGpaDirectHeader;
} VMPACKET_LARGEST_POSSIBLE_HEADER, *PVMPACKET_LARGEST_POSSIBLE_HEADER;
#define VMPACKET_DATA_START_ADDRESS(__packet) \
@@ -295,26 +263,26 @@ typedef union {
#define VMPACKET_TRANSFER_MODE(__packet) ((PVMPACKET_DESCRIPTOR)__packet)->Type
typedef enum {
- VmbusServerEndpoint = 0,
- VmbusClientEndpoint,
- VmbusEndpointMaximum
+ VmbusServerEndpoint = 0,
+ VmbusClientEndpoint,
+ VmbusEndpointMaximum
} ENDPOINT_TYPE, *PENDPOINT_TYPE;
typedef enum {
- VmbusPacketTypeInvalid = 0x0,
- VmbusPacketTypeSynch = 0x1,
- VmbusPacketTypeAddTransferPageSet = 0x2,
- VmbusPacketTypeRemoveTransferPageSet = 0x3,
- VmbusPacketTypeEstablishGpadl = 0x4,
- VmbusPacketTypeTearDownGpadl = 0x5,
- VmbusPacketTypeDataInBand = 0x6,
- VmbusPacketTypeDataUsingTransferPages = 0x7,
- VmbusPacketTypeDataUsingGpadl = 0x8,
- VmbusPacketTypeDataUsingGpaDirect = 0x9,
- VmbusPacketTypeCancelRequest = 0xa,
- VmbusPacketTypeCompletion = 0xb,
- VmbusPacketTypeDataUsingAdditionalPackets = 0xc,
- VmbusPacketTypeAdditionalData = 0xd
+ VmbusPacketTypeInvalid = 0x0,
+ VmbusPacketTypeSynch = 0x1,
+ VmbusPacketTypeAddTransferPageSet = 0x2,
+ VmbusPacketTypeRemoveTransferPageSet = 0x3,
+ VmbusPacketTypeEstablishGpadl = 0x4,
+ VmbusPacketTypeTearDownGpadl = 0x5,
+ VmbusPacketTypeDataInBand = 0x6,
+ VmbusPacketTypeDataUsingTransferPages = 0x7,
+ VmbusPacketTypeDataUsingGpadl = 0x8,
+ VmbusPacketTypeDataUsingGpaDirect = 0x9,
+ VmbusPacketTypeCancelRequest = 0xa,
+ VmbusPacketTypeCompletion = 0xb,
+ VmbusPacketTypeDataUsingAdditionalPackets = 0xc,
+ VmbusPacketTypeAdditionalData = 0xd
} VMBUS_PACKET_TYPE, *PVMBUS_PACKET_TYPE;
#define VMBUS_DATA_PACKET_FLAG_COMPLETION_REQUESTED 1
diff --git a/drivers/staging/hv/include/logging.h b/drivers/staging/hv/include/logging.h
index 8609269..fba9e21 100644
--- a/drivers/staging/hv/include/logging.h
+++ b/drivers/staging/hv/include/logging.h
@@ -21,7 +21,6 @@
*
*/
-
#ifndef _LOGGING_H_
#define _LOGGING_H_
diff --git a/drivers/staging/hv/include/nvspprotocol.h b/drivers/staging/hv/include/nvspprotocol.h
index 2ee9dbf..e1e3a3b 100644
--- a/drivers/staging/hv/include/nvspprotocol.h
+++ b/drivers/staging/hv/include/nvspprotocol.h
@@ -21,7 +21,6 @@
*
*/
-
#pragma once
#include "VmbusChannelInterface.h"
@@ -32,275 +31,237 @@
#define NVSP_MIN_PROTOCOL_VERSION NVSP_PROTOCOL_VERSION_1
#define NVSP_MAX_PROTOCOL_VERSION NVSP_PROTOCOL_VERSION_1
-typedef enum _NVSP_MESSAGE_TYPE
-{
- NvspMessageTypeNone = 0,
-
-
- /* Init Messages */
+typedef enum _NVSP_MESSAGE_TYPE {
+ NvspMessageTypeNone = 0,
- NvspMessageTypeInit = 1,
- NvspMessageTypeInitComplete = 2,
+ /* Init Messages */
- NvspVersionMessageStart = 100,
+ NvspMessageTypeInit = 1,
+ NvspMessageTypeInitComplete = 2,
+ NvspVersionMessageStart = 100,
- /* Version 1 Messages */
+ /* Version 1 Messages */
- NvspMessage1TypeSendNdisVersion = NvspVersionMessageStart,
+ NvspMessage1TypeSendNdisVersion = NvspVersionMessageStart,
- NvspMessage1TypeSendReceiveBuffer,
- NvspMessage1TypeSendReceiveBufferComplete,
- NvspMessage1TypeRevokeReceiveBuffer,
+ NvspMessage1TypeSendReceiveBuffer,
+ NvspMessage1TypeSendReceiveBufferComplete,
+ NvspMessage1TypeRevokeReceiveBuffer,
- NvspMessage1TypeSendSendBuffer,
- NvspMessage1TypeSendSendBufferComplete,
- NvspMessage1TypeRevokeSendBuffer,
+ NvspMessage1TypeSendSendBuffer,
+ NvspMessage1TypeSendSendBufferComplete,
+ NvspMessage1TypeRevokeSendBuffer,
- NvspMessage1TypeSendRNDISPacket,
- NvspMessage1TypeSendRNDISPacketComplete,
+ NvspMessage1TypeSendRNDISPacket,
+ NvspMessage1TypeSendRNDISPacketComplete,
+ /* This should be set to the number of messages for the version */
+ /* with the maximum number of messages. */
- /* This should be set to the number of messages for the version */
- /* with the maximum number of messages. */
-
- NvspNumMessagePerVersion = 9,
+ NvspNumMessagePerVersion = 9,
} NVSP_MESSAGE_TYPE, *PNVSP_MESSAGE_TYPE;
-typedef enum _NVSP_STATUS
-{
- NvspStatusNone = 0,
- NvspStatusSuccess,
- NvspStatusFailure,
- NvspStatusProtocolVersionRangeTooNew,
- NvspStatusProtocolVersionRangeTooOld,
- NvspStatusInvalidRndisPacket,
- NvspStatusBusy,
- NvspStatusMax,
+typedef enum _NVSP_STATUS {
+ NvspStatusNone = 0,
+ NvspStatusSuccess,
+ NvspStatusFailure,
+ NvspStatusProtocolVersionRangeTooNew,
+ NvspStatusProtocolVersionRangeTooOld,
+ NvspStatusInvalidRndisPacket,
+ NvspStatusBusy,
+ NvspStatusMax,
} NVSP_STATUS, *PNVSP_STATUS;
#pragma pack(push, 1)
-typedef struct _NVSP_MESSAGE_HEADER
-{
- u32 MessageType;
+typedef struct _NVSP_MESSAGE_HEADER {
+ u32 MessageType;
} NVSP_MESSAGE_HEADER, *PNVSP_MESSAGE_HEADER;
-
/* Init Messages */
-
-
/* This message is used by the VSC to initialize the channel */
/* after the channels has been opened. This message should */
/* never include anything other then versioning (i.e. this */
/* message will be the same for ever). */
-typedef struct _NVSP_MESSAGE_INIT
-{
- u32 MinProtocolVersion;
- u32 MaxProtocolVersion;
+typedef struct _NVSP_MESSAGE_INIT {
+ u32 MinProtocolVersion;
+ u32 MaxProtocolVersion;
} NVSP_MESSAGE_INIT, *PNVSP_MESSAGE_INIT;
-
/* This message is used by the VSP to complete the initialization */
/* of the channel. This message should never include anything other */
/* then versioning (i.e. this message will be the same for ever). */
-typedef struct _NVSP_MESSAGE_INIT_COMPLETE
-{
- u32 NegotiatedProtocolVersion;
- u32 MaximumMdlChainLength;
- u32 Status;
+typedef struct _NVSP_MESSAGE_INIT_COMPLETE {
+ u32 NegotiatedProtocolVersion;
+ u32 MaximumMdlChainLength;
+ u32 Status;
} NVSP_MESSAGE_INIT_COMPLETE, *PNVSP_MESSAGE_INIT_COMPLETE;
-typedef union _NVSP_MESSAGE_INIT_UBER
-{
- NVSP_MESSAGE_INIT Init;
- NVSP_MESSAGE_INIT_COMPLETE InitComplete;
+typedef union _NVSP_MESSAGE_INIT_UBER {
+ NVSP_MESSAGE_INIT Init;
+ NVSP_MESSAGE_INIT_COMPLETE InitComplete;
} NVSP_MESSAGE_INIT_UBER;
-
/* Version 1 Messages */
-
-
/* This message is used by the VSC to send the NDIS version */
/* to the VSP. The VSP can use this information when handling */
/* OIDs sent by the VSC. */
-typedef struct _NVSP_1_MESSAGE_SEND_NDIS_VERSION
-{
- u32 NdisMajorVersion;
- u32 NdisMinorVersion;
+typedef struct _NVSP_1_MESSAGE_SEND_NDIS_VERSION {
+ u32 NdisMajorVersion;
+ u32 NdisMinorVersion;
} NVSP_1_MESSAGE_SEND_NDIS_VERSION, *PNVSP_1_MESSAGE_SEND_NDIS_VERSION;
-
/* This message is used by the VSC to send a receive buffer */
/* to the VSP. The VSP can then use the receive buffer to */
/* send data to the VSC. */
-typedef struct _NVSP_1_MESSAGE_SEND_RECEIVE_BUFFER
-{
- GPADL_HANDLE GpadlHandle;
- u16 Id;
+typedef struct _NVSP_1_MESSAGE_SEND_RECEIVE_BUFFER {
+ GPADL_HANDLE GpadlHandle;
+ u16 Id;
} NVSP_1_MESSAGE_SEND_RECEIVE_BUFFER, *PNVSP_1_MESSAGE_SEND_RECEIVE_BUFFER;
-typedef struct _NVSP_1_RECEIVE_BUFFER_SECTION
-{
- u32 Offset;
- u32 SubAllocationSize;
- u32 NumSubAllocations;
- u32 EndOffset;
+typedef struct _NVSP_1_RECEIVE_BUFFER_SECTION {
+ u32 Offset;
+ u32 SubAllocationSize;
+ u32 NumSubAllocations;
+ u32 EndOffset;
} NVSP_1_RECEIVE_BUFFER_SECTION, *PNVSP_1_RECEIVE_BUFFER_SECTION;
-
/* This message is used by the VSP to acknowledge a receive */
/* buffer send by the VSC. This message must be sent by the */
/* VSP before the VSP uses the receive buffer. */
-typedef struct _NVSP_1_MESSAGE_SEND_RECEIVE_BUFFER_COMPLETE
-{
- u32 Status;
- u32 NumSections;
-
-
- /* The receive buffer is split into two parts, a large */
- /* suballocation section and a small suballocation */
- /* section. These sections are then suballocated by a */
- /* certain size. */
+typedef struct _NVSP_1_MESSAGE_SEND_RECEIVE_BUFFER_COMPLETE {
+ u32 Status;
+ u32 NumSections;
- /* For example, the following break up of the receive */
- /* buffer has 6 large suballocations and 10 small */
- /* suballocations. */
+ /* The receive buffer is split into two parts, a large */
+ /* suballocation section and a small suballocation */
+ /* section. These sections are then suballocated by a */
+ /* certain size. */
- /* | Large Section | | Small Section | */
- /* ------------------------------------------------------------ */
- /* | | | | | | | | | | | | | | | | | | */
- /* | | */
- /* LargeOffset SmallOffset */
+ /* For example, the following break up of the receive */
+ /* buffer has 6 large suballocations and 10 small */
+ /* suballocations. */
- NVSP_1_RECEIVE_BUFFER_SECTION Sections[1];
+ /* | Large Section | | Small Section | */
+ /* ------------------------------------------------------------ */
+ /* | | | | | | | | | | | | | | | | | | */
+ /* | | */
+ /* LargeOffset SmallOffset */
-} NVSP_1_MESSAGE_SEND_RECEIVE_BUFFER_COMPLETE, *PNVSP_1_MESSAGE_SEND_RECEIVE_BUFFER_COMPLETE;
+ NVSP_1_RECEIVE_BUFFER_SECTION Sections[1];
+} NVSP_1_MESSAGE_SEND_RECEIVE_BUFFER_COMPLETE,
+ *PNVSP_1_MESSAGE_SEND_RECEIVE_BUFFER_COMPLETE;
/* This message is sent by the VSC to revoke the receive buffer. */
/* After the VSP completes this transaction, the vsp should never */
/* use the receive buffer again. */
-typedef struct _NVSP_1_MESSAGE_REVOKE_RECEIVE_BUFFER
-{
- u16 Id;
+typedef struct _NVSP_1_MESSAGE_REVOKE_RECEIVE_BUFFER {
+ u16 Id;
} NVSP_1_MESSAGE_REVOKE_RECEIVE_BUFFER, *PNVSP_1_MESSAGE_REVOKE_RECEIVE_BUFFER;
-
/* This message is used by the VSC to send a send buffer */
/* to the VSP. The VSC can then use the send buffer to */
/* send data to the VSP. */
-typedef struct _NVSP_1_MESSAGE_SEND_SEND_BUFFER
-{
- GPADL_HANDLE GpadlHandle;
- u16 Id;
+typedef struct _NVSP_1_MESSAGE_SEND_SEND_BUFFER {
+ GPADL_HANDLE GpadlHandle;
+ u16 Id;
} NVSP_1_MESSAGE_SEND_SEND_BUFFER, *PNVSP_1_MESSAGE_SEND_SEND_BUFFER;
-
/* This message is used by the VSP to acknowledge a send */
/* buffer sent by the VSC. This message must be sent by the */
/* VSP before the VSP uses the sent buffer. */
-typedef struct _NVSP_1_MESSAGE_SEND_SEND_BUFFER_COMPLETE
-{
- u32 Status;
-
+typedef struct _NVSP_1_MESSAGE_SEND_SEND_BUFFER_COMPLETE {
+ u32 Status;
- /* The VSC gets to choose the size of the send buffer and */
- /* the VSP gets to choose the sections size of the buffer. */
- /* This was done to enable dynamic reconfigurations when */
- /* the cost of GPA-direct buffers decreases. */
-
- u32 SectionSize;
-} NVSP_1_MESSAGE_SEND_SEND_BUFFER_COMPLETE, *PNVSP_1_MESSAGE_SEND_SEND_BUFFER_COMPLETE;
+ /* The VSC gets to choose the size of the send buffer and */
+ /* the VSP gets to choose the sections size of the buffer. */
+ /* This was done to enable dynamic reconfigurations when */
+ /* the cost of GPA-direct buffers decreases. */
+ u32 SectionSize;
+} NVSP_1_MESSAGE_SEND_SEND_BUFFER_COMPLETE,
+ *PNVSP_1_MESSAGE_SEND_SEND_BUFFER_COMPLETE;
/* This message is sent by the VSC to revoke the send buffer. */
/* After the VSP completes this transaction, the vsp should never */
/* use the send buffer again. */
-typedef struct _NVSP_1_MESSAGE_REVOKE_SEND_BUFFER
-{
- u16 Id;
+typedef struct _NVSP_1_MESSAGE_REVOKE_SEND_BUFFER {
+ u16 Id;
} NVSP_1_MESSAGE_REVOKE_SEND_BUFFER, *PNVSP_1_MESSAGE_REVOKE_SEND_BUFFER;
-
/* This message is used by both the VSP and the VSC to send */
/* a RNDIS message to the opposite channel endpoint. */
-typedef struct _NVSP_1_MESSAGE_SEND_RNDIS_PACKET
-{
-
- /* This field is specified by RNIDS. They assume there's */
- /* two different channels of communication. However, */
- /* the Network VSP only has one. Therefore, the channel */
- /* travels with the RNDIS packet. */
+typedef struct _NVSP_1_MESSAGE_SEND_RNDIS_PACKET {
- u32 ChannelType;
+ /* This field is specified by RNIDS. They assume there's */
+ /* two different channels of communication. However, */
+ /* the Network VSP only has one. Therefore, the channel */
+ /* travels with the RNDIS packet. */
+ u32 ChannelType;
- /* This field is used to send part or all of the data */
- /* through a send buffer. This values specifies an */
- /* index into the send buffer. If the index is */
- /* 0xFFFFFFFF, then the send buffer is not being used */
- /* and all of the data was sent through other VMBus */
- /* mechanisms. */
+ /* This field is used to send part or all of the data */
+ /* through a send buffer. This values specifies an */
+ /* index into the send buffer. If the index is */
+ /* 0xFFFFFFFF, then the send buffer is not being used */
+ /* and all of the data was sent through other VMBus */
+ /* mechanisms. */
- u32 SendBufferSectionIndex;
- u32 SendBufferSectionSize;
+ u32 SendBufferSectionIndex;
+ u32 SendBufferSectionSize;
} NVSP_1_MESSAGE_SEND_RNDIS_PACKET, *PNVSP_1_MESSAGE_SEND_RNDIS_PACKET;
-
/* This message is used by both the VSP and the VSC to complete */
/* a RNDIS message to the opposite channel endpoint. At this */
/* point, the initiator of this message cannot use any resources */
/* associated with the original RNDIS packet. */
-typedef struct _NVSP_1_MESSAGE_SEND_RNDIS_PACKET_COMPLETE
-{
- u32 Status;
-} NVSP_1_MESSAGE_SEND_RNDIS_PACKET_COMPLETE, *PNVSP_1_MESSAGE_SEND_RNDIS_PACKET_COMPLETE;
+typedef struct _NVSP_1_MESSAGE_SEND_RNDIS_PACKET_COMPLETE {
+ u32 Status;
+} NVSP_1_MESSAGE_SEND_RNDIS_PACKET_COMPLETE,
+ *PNVSP_1_MESSAGE_SEND_RNDIS_PACKET_COMPLETE;
-typedef union _NVSP_MESSAGE_1_UBER
-{
- NVSP_1_MESSAGE_SEND_NDIS_VERSION SendNdisVersion;
+typedef union _NVSP_MESSAGE_1_UBER {
+ NVSP_1_MESSAGE_SEND_NDIS_VERSION SendNdisVersion;
- NVSP_1_MESSAGE_SEND_RECEIVE_BUFFER SendReceiveBuffer;
- NVSP_1_MESSAGE_SEND_RECEIVE_BUFFER_COMPLETE SendReceiveBufferComplete;
- NVSP_1_MESSAGE_REVOKE_RECEIVE_BUFFER RevokeReceiveBuffer;
+ NVSP_1_MESSAGE_SEND_RECEIVE_BUFFER SendReceiveBuffer;
+ NVSP_1_MESSAGE_SEND_RECEIVE_BUFFER_COMPLETE SendReceiveBufferComplete;
+ NVSP_1_MESSAGE_REVOKE_RECEIVE_BUFFER RevokeReceiveBuffer;
- NVSP_1_MESSAGE_SEND_SEND_BUFFER SendSendBuffer;
- NVSP_1_MESSAGE_SEND_SEND_BUFFER_COMPLETE SendSendBufferComplete;
- NVSP_1_MESSAGE_REVOKE_SEND_BUFFER RevokeSendBuffer;
+ NVSP_1_MESSAGE_SEND_SEND_BUFFER SendSendBuffer;
+ NVSP_1_MESSAGE_SEND_SEND_BUFFER_COMPLETE SendSendBufferComplete;
+ NVSP_1_MESSAGE_REVOKE_SEND_BUFFER RevokeSendBuffer;
- NVSP_1_MESSAGE_SEND_RNDIS_PACKET SendRNDISPacket;
- NVSP_1_MESSAGE_SEND_RNDIS_PACKET_COMPLETE SendRNDISPacketComplete;
+ NVSP_1_MESSAGE_SEND_RNDIS_PACKET SendRNDISPacket;
+ NVSP_1_MESSAGE_SEND_RNDIS_PACKET_COMPLETE SendRNDISPacketComplete;
} NVSP_1_MESSAGE_UBER;
-typedef union _NVSP_ALL_MESSAGES
-{
- NVSP_MESSAGE_INIT_UBER InitMessages;
- NVSP_1_MESSAGE_UBER Version1Messages;
+typedef union _NVSP_ALL_MESSAGES {
+ NVSP_MESSAGE_INIT_UBER InitMessages;
+ NVSP_1_MESSAGE_UBER Version1Messages;
} NVSP_ALL_MESSAGES;
-
/* ALL Messages */
-typedef struct _NVSP_MESSAGE
-{
- NVSP_MESSAGE_HEADER Header;
- NVSP_ALL_MESSAGES Messages;
+typedef struct _NVSP_MESSAGE {
+ NVSP_MESSAGE_HEADER Header;
+ NVSP_ALL_MESSAGES Messages;
} NVSP_MESSAGE, *PNVSP_MESSAGE;
#pragma pack(pop)
diff --git a/drivers/staging/hv/include/osd.h b/drivers/staging/hv/include/osd.h
index 2a47d14..6be54a5 100644
--- a/drivers/staging/hv/include/osd.h
+++ b/drivers/staging/hv/include/osd.h
@@ -21,15 +21,11 @@
*
*/
-
#ifndef _OSD_H_
#define _OSD_H_
-
/* Defines */
-
-
#define ALIGN_UP(value, align) ( ((value) & (align-1))? ( ((value) + (align-1)) & ~(align-1) ): (value) )
#define ALIGN_DOWN(value, align) ( (value) & ~(align-1) )
#define NUM_PAGES_SPANNED(addr, len) ( (ALIGN_UP(addr+len, PAGE_SIZE) - ALIGN_DOWN(addr, PAGE_SIZE)) >> PAGE_SHIFT )
@@ -38,36 +34,32 @@
#define HIWORD(dw) ((unsigned short) (((unsigned int) (dw) >> 16) & 0xFFFF))
typedef struct _DLIST_ENTRY {
- struct _DLIST_ENTRY *Flink;
- struct _DLIST_ENTRY *Blink;
+ struct _DLIST_ENTRY *Flink;
+ struct _DLIST_ENTRY *Blink;
} DLIST_ENTRY;
-
/* Other types */
/* typedef unsigned char GUID[16]; */
-typedef void (*PFN_WORKITEM_CALLBACK)(void* context);
-typedef void (*PFN_TIMER_CALLBACK)(void* context);
-
+typedef void (*PFN_WORKITEM_CALLBACK) (void *context);
+typedef void (*PFN_TIMER_CALLBACK) (void *context);
typedef struct {
- unsigned char Data[16];
+ unsigned char Data[16];
} GUID;
struct osd_waitevent {
- int condition;
+ int condition;
wait_queue_head_t event;
};
struct osd_timer {
struct timer_list timer;
PFN_TIMER_CALLBACK callback;
- void* context;
+ void *context;
};
-
-
#ifdef __x86_64__
#define RDMSR(reg, v) { \
@@ -101,35 +93,37 @@ struct osd_timer {
#endif
-
-static inline void do_cpuid(unsigned int op, unsigned int *eax, unsigned int *ebx, unsigned int *ecx, unsigned int *edx)
+static inline void do_cpuid(unsigned int op, unsigned int *eax,
+ unsigned int *ebx, unsigned int *ecx,
+ unsigned int *edx)
{
- __asm__ __volatile__("cpuid" : "=a" (*eax), "=b" (*ebx), "=c" (*ecx), "=d" (*edx) : "0" (op), "c" (ecx));
+ __asm__ __volatile__("cpuid":"=a"(*eax), "=b"(*ebx), "=c"(*ecx),
+ "=d"(*edx):"0"(op), "c"(ecx));
}
-
/* Osd routines */
-extern void BitSet(unsigned int* addr, int value);
-extern void BitClear(unsigned int* addr, int value);
-extern int BitTest(unsigned int* addr, int value);
-extern int BitTestAndClear(unsigned int* addr, int value);
-extern int BitTestAndSet(unsigned int* addr, int value);
+extern void BitSet(unsigned int *addr, int value);
+extern void BitClear(unsigned int *addr, int value);
+extern int BitTest(unsigned int *addr, int value);
+extern int BitTestAndClear(unsigned int *addr, int value);
+extern int BitTestAndSet(unsigned int *addr, int value);
extern int InterlockedIncrement(int *val);
extern int InterlockedDecrement(int *val);
extern int InterlockedCompareExchange(int *val, int new, int curr);
-extern void* VirtualAllocExec(unsigned int size);
-extern void VirtualFree(void* VirtAddr);
+extern void *VirtualAllocExec(unsigned int size);
+extern void VirtualFree(void *VirtAddr);
-extern void* PageAlloc(unsigned int count);
-extern void PageFree(void* page, unsigned int count);
+extern void *PageAlloc(unsigned int count);
+extern void PageFree(void *page, unsigned int count);
-extern void* MemMapIO(unsigned long phys, unsigned long size);
-extern void MemUnmapIO(void* virt);
+extern void *MemMapIO(unsigned long phys, unsigned long size);
+extern void MemUnmapIO(void *virt);
-extern struct osd_timer *TimerCreate(PFN_TIMER_CALLBACK pfnTimerCB, void* context);
+extern struct osd_timer *TimerCreate(PFN_TIMER_CALLBACK pfnTimerCB,
+ void *context);
extern void TimerClose(struct osd_timer *t);
extern int TimerStop(struct osd_timer *t);
extern void TimerStart(struct osd_timer *t, u32 expirationInUs);
@@ -137,30 +131,28 @@ extern void TimerStart(struct osd_timer *t, u32 expirationInUs);
extern struct osd_waitevent *WaitEventCreate(void);
extern void WaitEventClose(struct osd_waitevent *waitEvent);
extern void WaitEventSet(struct osd_waitevent *waitEvent);
-extern int WaitEventWait(struct osd_waitevent *waitEvent);
+extern int WaitEventWait(struct osd_waitevent *waitEvent);
/* If >0, waitEvent got signaled. If ==0, timeout. If < 0, error */
-extern int WaitEventWaitEx(struct osd_waitevent *waitEvent, u32 TimeoutInMs);
-
+extern int WaitEventWaitEx(struct osd_waitevent *waitEvent, u32 TimeoutInMs);
#define GetVirtualAddress Physical2LogicalAddr
-void* Physical2LogicalAddr(unsigned long PhysAddr);
+void *Physical2LogicalAddr(unsigned long PhysAddr);
#define GetPhysicalAddress Logical2PhysicalAddr
-unsigned long Logical2PhysicalAddr(void * LogicalAddr);
-
-unsigned long Virtual2Physical(void * VirtAddr);
+unsigned long Logical2PhysicalAddr(void *LogicalAddr);
-void* PageMapVirtualAddress(unsigned long Pfn);
-void PageUnmapVirtualAddress(void* VirtAddr);
+unsigned long Virtual2Physical(void *VirtAddr);
+void *PageMapVirtualAddress(unsigned long Pfn);
+void PageUnmapVirtualAddress(void *VirtAddr);
-extern struct workqueue_struct *WorkQueueCreate(char* name);
+extern struct workqueue_struct *WorkQueueCreate(char *name);
extern void WorkQueueClose(struct workqueue_struct *hWorkQueue);
extern int WorkQueueQueueWorkItem(struct workqueue_struct *hWorkQueue,
PFN_WORKITEM_CALLBACK workItem,
void *context);
-extern void QueueWorkItem(PFN_WORKITEM_CALLBACK workItem, void* context);
+extern void QueueWorkItem(PFN_WORKITEM_CALLBACK workItem, void *context);
#endif /* _OSD_H_ */
diff --git a/drivers/staging/hv/include/rndis.h b/drivers/staging/hv/include/rndis.h
index 58fd4eb..b491162 100644
--- a/drivers/staging/hv/include/rndis.h
+++ b/drivers/staging/hv/include/rndis.h
@@ -21,33 +21,29 @@
*
*/
-
#ifndef _RNDIS_H_
#define _RNDIS_H_
-
/* Basic types */
-typedef u32 RNDIS_REQUEST_ID;
-typedef u32 RNDIS_HANDLE;
-typedef u32 RNDIS_STATUS;
-typedef u32 RNDIS_REQUEST_TYPE;
-typedef u32 RNDIS_OID;
-typedef u32 RNDIS_CLASS_ID;
-typedef u32 RNDIS_MEDIUM;
-typedef u32 *PRNDIS_REQUEST_ID;
-typedef u32 *PRNDIS_HANDLE;
-typedef u32 *PRNDIS_STATUS;
-typedef u32 *PRNDIS_REQUEST_TYPE;
-typedef u32 *PRNDIS_OID;
-typedef u32 *PRNDIS_CLASS_ID;
-typedef u32 *PRNDIS_MEDIUM;
-typedef u32 RNDIS_AF;
-
+typedef u32 RNDIS_REQUEST_ID;
+typedef u32 RNDIS_HANDLE;
+typedef u32 RNDIS_STATUS;
+typedef u32 RNDIS_REQUEST_TYPE;
+typedef u32 RNDIS_OID;
+typedef u32 RNDIS_CLASS_ID;
+typedef u32 RNDIS_MEDIUM;
+typedef u32 *PRNDIS_REQUEST_ID;
+typedef u32 *PRNDIS_HANDLE;
+typedef u32 *PRNDIS_STATUS;
+typedef u32 *PRNDIS_REQUEST_TYPE;
+typedef u32 *PRNDIS_OID;
+typedef u32 *PRNDIS_CLASS_ID;
+typedef u32 *PRNDIS_MEDIUM;
+typedef u32 RNDIS_AF;
/* Status codes */
-
#ifndef STATUS_SUCCESS
#define STATUS_SUCCESS (0x00000000L)
#endif
@@ -149,15 +145,10 @@ typedef u32 RNDIS_AF;
#define RNDIS_STATUS_TOKEN_RING_OPEN_ERROR ((RNDIS_STATUS)0xC0011000L)
-
-
/* Object Identifiers used by NdisRequest Query/Set Information */
-
-
/* General Objects */
-
#define RNDIS_OID_GEN_SUPPORTED_LIST 0x00010101
#define RNDIS_OID_GEN_HARDWARE_STATUS 0x00010102
#define RNDIS_OID_GEN_MEDIA_SUPPORTED 0x00010103
@@ -210,7 +201,6 @@ typedef u32 RNDIS_AF;
#define RNDIS_OID_GEN_GET_TIME_CAPS 0x0002020F
#define RNDIS_OID_GEN_GET_NETCARD_TIME 0x00020210
-
/* These are connection-oriented general OIDs. */
/* These replace the above OIDs for connection-oriented media. */
@@ -231,7 +221,6 @@ typedef u32 RNDIS_AF;
#define RNDIS_OID_GEN_CO_GET_TIME_CAPS 0x00010201
#define RNDIS_OID_GEN_CO_GET_NETCARD_TIME 0x00010202
-
/* These are connection-oriented statistics OIDs. */
#define RNDIS_OID_GEN_CO_XMIT_PDUS_OK 0x00020101
@@ -240,7 +229,6 @@ typedef u32 RNDIS_AF;
#define RNDIS_OID_GEN_CO_RCV_PDUS_ERROR 0x00020104
#define RNDIS_OID_GEN_CO_RCV_PDUS_NO_BUFFER 0x00020105
-
#define RNDIS_OID_GEN_CO_RCV_CRC_ERROR 0x00020201
#define RNDIS_OID_GEN_CO_TRANSMIT_QUEUE_LENGTH 0x00020202
#define RNDIS_OID_GEN_CO_BYTES_XMIT 0x00020203
@@ -248,7 +236,6 @@ typedef u32 RNDIS_AF;
#define RNDIS_OID_GEN_CO_BYTES_XMIT_OUTSTANDING 0x00020205
#define RNDIS_OID_GEN_CO_NETCARD_LOAD 0x00020206
-
/* These are objects for Connection-oriented media call-managers. */
#define RNDIS_OID_CO_ADD_PVC 0xFF000001
@@ -261,19 +248,14 @@ typedef u32 RNDIS_AF;
#define RNDIS_OID_CO_SIGNALING_ENABLED 0xFF000008
#define RNDIS_OID_CO_SIGNALING_DISABLED 0xFF000009
-
-
/* 802.3 Objects (Ethernet) */
-
#define RNDIS_OID_802_3_PERMANENT_ADDRESS 0x01010101
#define RNDIS_OID_802_3_CURRENT_ADDRESS 0x01010102
#define RNDIS_OID_802_3_MULTICAST_LIST 0x01010103
#define RNDIS_OID_802_3_MAXIMUM_LIST_SIZE 0x01010104
#define RNDIS_OID_802_3_MAC_OPTIONS 0x01010105
-
-
#define NDIS_802_3_MAC_OPTION_PRIORITY 0x00000001
#define RNDIS_OID_802_3_RCV_ERROR_ALIGNMENT 0x01020101
@@ -288,8 +270,6 @@ typedef u32 RNDIS_AF;
#define RNDIS_OID_802_3_XMIT_TIMES_CRS_LOST 0x01020206
#define RNDIS_OID_802_3_XMIT_LATE_COLLISIONS 0x01020207
-
-
/* Remote NDIS message types */
#define REMOTE_NDIS_PACKET_MSG 0x00000001
@@ -307,7 +287,6 @@ typedef u32 RNDIS_AF;
#define REMOTE_CONDIS_MP_DEACTIVATE_VC_MSG 0x00008006
#define REMOTE_CONDIS_INDICATE_STATUS_MSG 0x00008007
-
/* Remote NDIS message completion types */
#define REMOTE_NDIS_INITIALIZE_CMPLT 0x80000002
#define REMOTE_NDIS_QUERY_CMPLT 0x80000004
@@ -320,22 +299,17 @@ typedef u32 RNDIS_AF;
#define REMOTE_CONDIS_MP_ACTIVATE_VC_CMPLT 0x80008005
#define REMOTE_CONDIS_MP_DEACTIVATE_VC_CMPLT 0x80008006
-
/* Reserved message type for private communication between lower-layer */
/* host driver and remote device, if necessary. */
#define REMOTE_NDIS_BUS_MSG 0xff000001
-
-
-
/* Defines for DeviceFlags in RNDIS_INITIALIZE_COMPLETE */
#define RNDIS_DF_CONNECTIONLESS 0x00000001
#define RNDIS_DF_CONNECTION_ORIENTED 0x00000002
#define RNDIS_DF_RAW_DATA 0x00000004
-
/* Remote NDIS medium types. */
#define RNdisMedium802_3 0x00000000
@@ -349,459 +323,358 @@ typedef u32 RNDIS_AF;
#define RNdisMediumWirelessWan 0x00000009
#define RNdisMediumIrda 0x0000000a
#define RNdisMediumCoWan 0x0000000b
-#define RNdisMediumMax 0x0000000d /* Not a real medium, defined as an upper-bound */
-
+#define RNdisMediumMax 0x0000000d /* Not a real medium, defined as an upper-bound */
/* Remote NDIS medium connection states. */
#define RNdisMediaStateConnected 0x00000000
#define RNdisMediaStateDisconnected 0x00000001
-
/* Remote NDIS version numbers */
#define RNDIS_MAJOR_VERSION 0x00000001
#define RNDIS_MINOR_VERSION 0x00000000
-
/* NdisInitialize message */
-typedef struct _RNDIS_INITIALIZE_REQUEST
-{
- RNDIS_REQUEST_ID RequestId;
- u32 MajorVersion;
- u32 MinorVersion;
- u32 MaxTransferSize;
+typedef struct _RNDIS_INITIALIZE_REQUEST {
+ RNDIS_REQUEST_ID RequestId;
+ u32 MajorVersion;
+ u32 MinorVersion;
+ u32 MaxTransferSize;
} RNDIS_INITIALIZE_REQUEST, *PRNDIS_INITIALIZE_REQUEST;
-
-
/* Response to NdisInitialize */
-typedef struct _RNDIS_INITIALIZE_COMPLETE
-{
- RNDIS_REQUEST_ID RequestId;
- RNDIS_STATUS Status;
- u32 MajorVersion;
- u32 MinorVersion;
- u32 DeviceFlags;
- RNDIS_MEDIUM Medium;
- u32 MaxPacketsPerMessage;
- u32 MaxTransferSize;
- u32 PacketAlignmentFactor;
- u32 AFListOffset;
- u32 AFListSize;
+typedef struct _RNDIS_INITIALIZE_COMPLETE {
+ RNDIS_REQUEST_ID RequestId;
+ RNDIS_STATUS Status;
+ u32 MajorVersion;
+ u32 MinorVersion;
+ u32 DeviceFlags;
+ RNDIS_MEDIUM Medium;
+ u32 MaxPacketsPerMessage;
+ u32 MaxTransferSize;
+ u32 PacketAlignmentFactor;
+ u32 AFListOffset;
+ u32 AFListSize;
} RNDIS_INITIALIZE_COMPLETE, *PRNDIS_INITIALIZE_COMPLETE;
-
-
/* Call manager devices only: Information about an address family */
/* supported by the device is appended to the response to NdisInitialize. */
-typedef struct _RNDIS_CO_ADDRESS_FAMILY
-{
- RNDIS_AF AddressFamily;
- u32 MajorVersion;
- u32 MinorVersion;
+typedef struct _RNDIS_CO_ADDRESS_FAMILY {
+ RNDIS_AF AddressFamily;
+ u32 MajorVersion;
+ u32 MinorVersion;
} RNDIS_CO_ADDRESS_FAMILY, *PRNDIS_CO_ADDRESS_FAMILY;
-
-
/* NdisHalt message */
-typedef struct _RNDIS_HALT_REQUEST
-{
- RNDIS_REQUEST_ID RequestId;
+typedef struct _RNDIS_HALT_REQUEST {
+ RNDIS_REQUEST_ID RequestId;
} RNDIS_HALT_REQUEST, *PRNDIS_HALT_REQUEST;
-
-
/* NdisQueryRequest message */
-typedef struct _RNDIS_QUERY_REQUEST
-{
- RNDIS_REQUEST_ID RequestId;
- RNDIS_OID Oid;
- u32 InformationBufferLength;
- u32 InformationBufferOffset;
- RNDIS_HANDLE DeviceVcHandle;
+typedef struct _RNDIS_QUERY_REQUEST {
+ RNDIS_REQUEST_ID RequestId;
+ RNDIS_OID Oid;
+ u32 InformationBufferLength;
+ u32 InformationBufferOffset;
+ RNDIS_HANDLE DeviceVcHandle;
} RNDIS_QUERY_REQUEST, *PRNDIS_QUERY_REQUEST;
-
-
/* Response to NdisQueryRequest */
-typedef struct _RNDIS_QUERY_COMPLETE
-{
- RNDIS_REQUEST_ID RequestId;
- RNDIS_STATUS Status;
- u32 InformationBufferLength;
- u32 InformationBufferOffset;
+typedef struct _RNDIS_QUERY_COMPLETE {
+ RNDIS_REQUEST_ID RequestId;
+ RNDIS_STATUS Status;
+ u32 InformationBufferLength;
+ u32 InformationBufferOffset;
} RNDIS_QUERY_COMPLETE, *PRNDIS_QUERY_COMPLETE;
-
-
/* NdisSetRequest message */
-typedef struct _RNDIS_SET_REQUEST
-{
- RNDIS_REQUEST_ID RequestId;
- RNDIS_OID Oid;
- u32 InformationBufferLength;
- u32 InformationBufferOffset;
- RNDIS_HANDLE DeviceVcHandle;
+typedef struct _RNDIS_SET_REQUEST {
+ RNDIS_REQUEST_ID RequestId;
+ RNDIS_OID Oid;
+ u32 InformationBufferLength;
+ u32 InformationBufferOffset;
+ RNDIS_HANDLE DeviceVcHandle;
} RNDIS_SET_REQUEST, *PRNDIS_SET_REQUEST;
-
-
/* Response to NdisSetRequest */
-typedef struct _RNDIS_SET_COMPLETE
-{
- RNDIS_REQUEST_ID RequestId;
- RNDIS_STATUS Status;
+typedef struct _RNDIS_SET_COMPLETE {
+ RNDIS_REQUEST_ID RequestId;
+ RNDIS_STATUS Status;
} RNDIS_SET_COMPLETE, *PRNDIS_SET_COMPLETE;
-
-
/* NdisReset message */
-typedef struct _RNDIS_RESET_REQUEST
-{
- u32 Reserved;
+typedef struct _RNDIS_RESET_REQUEST {
+ u32 Reserved;
} RNDIS_RESET_REQUEST, *PRNDIS_RESET_REQUEST;
-
/* Response to NdisReset */
-typedef struct _RNDIS_RESET_COMPLETE
-{
- RNDIS_STATUS Status;
- u32 AddressingReset;
+typedef struct _RNDIS_RESET_COMPLETE {
+ RNDIS_STATUS Status;
+ u32 AddressingReset;
} RNDIS_RESET_COMPLETE, *PRNDIS_RESET_COMPLETE;
-
-
/* NdisMIndicateStatus message */
-typedef struct _RNDIS_INDICATE_STATUS
-{
- RNDIS_STATUS Status;
- u32 StatusBufferLength;
- u32 StatusBufferOffset;
+typedef struct _RNDIS_INDICATE_STATUS {
+ RNDIS_STATUS Status;
+ u32 StatusBufferLength;
+ u32 StatusBufferOffset;
} RNDIS_INDICATE_STATUS, *PRNDIS_INDICATE_STATUS;
-
-
/* Diagnostic information passed as the status buffer in */
/* RNDIS_INDICATE_STATUS messages signifying error conditions. */
-typedef struct _RNDIS_DIAGNOSTIC_INFO
-{
- RNDIS_STATUS DiagStatus;
- u32 ErrorOffset;
+typedef struct _RNDIS_DIAGNOSTIC_INFO {
+ RNDIS_STATUS DiagStatus;
+ u32 ErrorOffset;
} RNDIS_DIAGNOSTIC_INFO, *PRNDIS_DIAGNOSTIC_INFO;
-
-
-
/* NdisKeepAlive message */
-typedef struct _RNDIS_KEEPALIVE_REQUEST
-{
- RNDIS_REQUEST_ID RequestId;
+typedef struct _RNDIS_KEEPALIVE_REQUEST {
+ RNDIS_REQUEST_ID RequestId;
} RNDIS_KEEPALIVE_REQUEST, *PRNDIS_KEEPALIVE_REQUEST;
-
-
/* Response to NdisKeepAlive */
-typedef struct _RNDIS_KEEPALIVE_COMPLETE
-{
- RNDIS_REQUEST_ID RequestId;
- RNDIS_STATUS Status;
+typedef struct _RNDIS_KEEPALIVE_COMPLETE {
+ RNDIS_REQUEST_ID RequestId;
+ RNDIS_STATUS Status;
} RNDIS_KEEPALIVE_COMPLETE, *PRNDIS_KEEPALIVE_COMPLETE;
-
-
/* Data message. All Offset fields contain byte offsets from the beginning */
/* of the RNDIS_PACKET structure. All Length fields are in bytes. */
/* VcHandle is set to 0 for connectionless data, otherwise it */
/* contains the VC handle. */
-typedef struct _RNDIS_PACKET
-{
- u32 DataOffset;
- u32 DataLength;
- u32 OOBDataOffset;
- u32 OOBDataLength;
- u32 NumOOBDataElements;
- u32 PerPacketInfoOffset;
- u32 PerPacketInfoLength;
- RNDIS_HANDLE VcHandle;
- u32 Reserved;
+typedef struct _RNDIS_PACKET {
+ u32 DataOffset;
+ u32 DataLength;
+ u32 OOBDataOffset;
+ u32 OOBDataLength;
+ u32 NumOOBDataElements;
+ u32 PerPacketInfoOffset;
+ u32 PerPacketInfoLength;
+ RNDIS_HANDLE VcHandle;
+ u32 Reserved;
} RNDIS_PACKET, *PRNDIS_PACKET;
-
/* Optional Out of Band data associated with a Data message. */
-typedef struct _RNDIS_OOBD
-{
- u32 Size;
- RNDIS_CLASS_ID Type;
- u32 ClassInformationOffset;
+typedef struct _RNDIS_OOBD {
+ u32 Size;
+ RNDIS_CLASS_ID Type;
+ u32 ClassInformationOffset;
} RNDIS_OOBD, *PRNDIS_OOBD;
-
/* Packet extension field contents associated with a Data message. */
-typedef struct _RNDIS_PER_PACKET_INFO
-{
- u32 Size;
- u32 Type;
- u32 PerPacketInformationOffset;
+typedef struct _RNDIS_PER_PACKET_INFO {
+ u32 Size;
+ u32 Type;
+ u32 PerPacketInformationOffset;
} RNDIS_PER_PACKET_INFO, *PRNDIS_PER_PACKET_INFO;
-
-
/* Format of Information buffer passed in a SetRequest for the OID */
/* OID_GEN_RNDIS_CONFIG_PARAMETER. */
-typedef struct _RNDIS_CONFIG_PARAMETER_INFO
-{
- u32 ParameterNameOffset;
- u32 ParameterNameLength;
- u32 ParameterType;
- u32 ParameterValueOffset;
- u32 ParameterValueLength;
+typedef struct _RNDIS_CONFIG_PARAMETER_INFO {
+ u32 ParameterNameOffset;
+ u32 ParameterNameLength;
+ u32 ParameterType;
+ u32 ParameterValueOffset;
+ u32 ParameterValueLength;
} RNDIS_CONFIG_PARAMETER_INFO, *PRNDIS_CONFIG_PARAMETER_INFO;
-
/* Values for ParameterType in RNDIS_CONFIG_PARAMETER_INFO */
#define RNDIS_CONFIG_PARAM_TYPE_INTEGER 0
#define RNDIS_CONFIG_PARAM_TYPE_STRING 2
-
-
/* CONDIS Miniport messages for connection oriented devices */
/* that do not implement a call manager. */
-
-
/* CoNdisMiniportCreateVc message */
-typedef struct _RCONDIS_MP_CREATE_VC
-{
- RNDIS_REQUEST_ID RequestId;
- RNDIS_HANDLE NdisVcHandle;
+typedef struct _RCONDIS_MP_CREATE_VC {
+ RNDIS_REQUEST_ID RequestId;
+ RNDIS_HANDLE NdisVcHandle;
} RCONDIS_MP_CREATE_VC, *PRCONDIS_MP_CREATE_VC;
-
/* Response to CoNdisMiniportCreateVc */
-typedef struct _RCONDIS_MP_CREATE_VC_COMPLETE
-{
- RNDIS_REQUEST_ID RequestId;
- RNDIS_HANDLE DeviceVcHandle;
- RNDIS_STATUS Status;
+typedef struct _RCONDIS_MP_CREATE_VC_COMPLETE {
+ RNDIS_REQUEST_ID RequestId;
+ RNDIS_HANDLE DeviceVcHandle;
+ RNDIS_STATUS Status;
} RCONDIS_MP_CREATE_VC_COMPLETE, *PRCONDIS_MP_CREATE_VC_COMPLETE;
-
-
/* CoNdisMiniportDeleteVc message */
-typedef struct _RCONDIS_MP_DELETE_VC
-{
- RNDIS_REQUEST_ID RequestId;
- RNDIS_HANDLE DeviceVcHandle;
+typedef struct _RCONDIS_MP_DELETE_VC {
+ RNDIS_REQUEST_ID RequestId;
+ RNDIS_HANDLE DeviceVcHandle;
} RCONDIS_MP_DELETE_VC, *PRCONDIS_MP_DELETE_VC;
-
/* Response to CoNdisMiniportDeleteVc */
-typedef struct _RCONDIS_MP_DELETE_VC_COMPLETE
-{
- RNDIS_REQUEST_ID RequestId;
- RNDIS_STATUS Status;
+typedef struct _RCONDIS_MP_DELETE_VC_COMPLETE {
+ RNDIS_REQUEST_ID RequestId;
+ RNDIS_STATUS Status;
} RCONDIS_MP_DELETE_VC_COMPLETE, *PRCONDIS_MP_DELETE_VC_COMPLETE;
-
-
/* CoNdisMiniportQueryRequest message */
-typedef struct _RCONDIS_MP_QUERY_REQUEST
-{
- RNDIS_REQUEST_ID RequestId;
- RNDIS_REQUEST_TYPE RequestType;
- RNDIS_OID Oid;
- RNDIS_HANDLE DeviceVcHandle;
- u32 InformationBufferLength;
- u32 InformationBufferOffset;
+typedef struct _RCONDIS_MP_QUERY_REQUEST {
+ RNDIS_REQUEST_ID RequestId;
+ RNDIS_REQUEST_TYPE RequestType;
+ RNDIS_OID Oid;
+ RNDIS_HANDLE DeviceVcHandle;
+ u32 InformationBufferLength;
+ u32 InformationBufferOffset;
} RCONDIS_MP_QUERY_REQUEST, *PRCONDIS_MP_QUERY_REQUEST;
-
-
/* CoNdisMiniportSetRequest message */
-typedef struct _RCONDIS_MP_SET_REQUEST
-{
- RNDIS_REQUEST_ID RequestId;
- RNDIS_REQUEST_TYPE RequestType;
- RNDIS_OID Oid;
- RNDIS_HANDLE DeviceVcHandle;
- u32 InformationBufferLength;
- u32 InformationBufferOffset;
+typedef struct _RCONDIS_MP_SET_REQUEST {
+ RNDIS_REQUEST_ID RequestId;
+ RNDIS_REQUEST_TYPE RequestType;
+ RNDIS_OID Oid;
+ RNDIS_HANDLE DeviceVcHandle;
+ u32 InformationBufferLength;
+ u32 InformationBufferOffset;
} RCONDIS_MP_SET_REQUEST, *PRCONDIS_MP_SET_REQUEST;
-
-
/* CoNdisIndicateStatus message */
-typedef struct _RCONDIS_INDICATE_STATUS
-{
- RNDIS_HANDLE NdisVcHandle;
- RNDIS_STATUS Status;
- u32 StatusBufferLength;
- u32 StatusBufferOffset;
+typedef struct _RCONDIS_INDICATE_STATUS {
+ RNDIS_HANDLE NdisVcHandle;
+ RNDIS_STATUS Status;
+ u32 StatusBufferLength;
+ u32 StatusBufferOffset;
} RCONDIS_INDICATE_STATUS, *PRCONDIS_INDICATE_STATUS;
-
-
/* CONDIS Call/VC parameters */
-
-typedef struct _RCONDIS_SPECIFIC_PARAMETERS
-{
- u32 ParameterType;
- u32 ParameterLength;
- u32 ParameterOffset;
+typedef struct _RCONDIS_SPECIFIC_PARAMETERS {
+ u32 ParameterType;
+ u32 ParameterLength;
+ u32 ParameterOffset;
} RCONDIS_SPECIFIC_PARAMETERS, *PRCONDIS_SPECIFIC_PARAMETERS;
-typedef struct _RCONDIS_MEDIA_PARAMETERS
-{
- u32 Flags;
- u32 Reserved1;
- u32 Reserved2;
- RCONDIS_SPECIFIC_PARAMETERS MediaSpecific;
+typedef struct _RCONDIS_MEDIA_PARAMETERS {
+ u32 Flags;
+ u32 Reserved1;
+ u32 Reserved2;
+ RCONDIS_SPECIFIC_PARAMETERS MediaSpecific;
} RCONDIS_MEDIA_PARAMETERS, *PRCONDIS_MEDIA_PARAMETERS;
-
-typedef struct _RNDIS_FLOWSPEC
-{
- u32 TokenRate;
- u32 TokenBucketSize;
- u32 PeakBandwidth;
- u32 Latency;
- u32 DelayVariation;
- u32 ServiceType;
- u32 MaxSduSize;
- u32 MinimumPolicedSize;
+typedef struct _RNDIS_FLOWSPEC {
+ u32 TokenRate;
+ u32 TokenBucketSize;
+ u32 PeakBandwidth;
+ u32 Latency;
+ u32 DelayVariation;
+ u32 ServiceType;
+ u32 MaxSduSize;
+ u32 MinimumPolicedSize;
} RNDIS_FLOWSPEC, *PRNDIS_FLOWSPEC;
-typedef struct _RCONDIS_CALL_MANAGER_PARAMETERS
-{
- RNDIS_FLOWSPEC Transmit;
- RNDIS_FLOWSPEC Receive;
- RCONDIS_SPECIFIC_PARAMETERS CallMgrSpecific;
+typedef struct _RCONDIS_CALL_MANAGER_PARAMETERS {
+ RNDIS_FLOWSPEC Transmit;
+ RNDIS_FLOWSPEC Receive;
+ RCONDIS_SPECIFIC_PARAMETERS CallMgrSpecific;
} RCONDIS_CALL_MANAGER_PARAMETERS, *PRCONDIS_CALL_MANAGER_PARAMETERS;
-
/* CoNdisMiniportActivateVc message */
-typedef struct _RCONDIS_MP_ACTIVATE_VC_REQUEST
-{
- RNDIS_REQUEST_ID RequestId;
- u32 Flags;
- RNDIS_HANDLE DeviceVcHandle;
- u32 MediaParamsOffset;
- u32 MediaParamsLength;
- u32 CallMgrParamsOffset;
- u32 CallMgrParamsLength;
+typedef struct _RCONDIS_MP_ACTIVATE_VC_REQUEST {
+ RNDIS_REQUEST_ID RequestId;
+ u32 Flags;
+ RNDIS_HANDLE DeviceVcHandle;
+ u32 MediaParamsOffset;
+ u32 MediaParamsLength;
+ u32 CallMgrParamsOffset;
+ u32 CallMgrParamsLength;
} RCONDIS_MP_ACTIVATE_VC_REQUEST, *PRCONDIS_MP_ACTIVATE_VC_REQUEST;
-
/* Response to CoNdisMiniportActivateVc */
-typedef struct _RCONDIS_MP_ACTIVATE_VC_COMPLETE
-{
- RNDIS_REQUEST_ID RequestId;
- RNDIS_STATUS Status;
+typedef struct _RCONDIS_MP_ACTIVATE_VC_COMPLETE {
+ RNDIS_REQUEST_ID RequestId;
+ RNDIS_STATUS Status;
} RCONDIS_MP_ACTIVATE_VC_COMPLETE, *PRCONDIS_MP_ACTIVATE_VC_COMPLETE;
-
-
/* CoNdisMiniportDeactivateVc message */
-typedef struct _RCONDIS_MP_DEACTIVATE_VC_REQUEST
-{
- RNDIS_REQUEST_ID RequestId;
- u32 Flags;
- RNDIS_HANDLE DeviceVcHandle;
+typedef struct _RCONDIS_MP_DEACTIVATE_VC_REQUEST {
+ RNDIS_REQUEST_ID RequestId;
+ u32 Flags;
+ RNDIS_HANDLE DeviceVcHandle;
} RCONDIS_MP_DEACTIVATE_VC_REQUEST, *PRCONDIS_MP_DEACTIVATE_VC_REQUEST;
-
/* Response to CoNdisMiniportDeactivateVc */
-typedef struct _RCONDIS_MP_DEACTIVATE_VC_COMPLETE
-{
- RNDIS_REQUEST_ID RequestId;
- RNDIS_STATUS Status;
+typedef struct _RCONDIS_MP_DEACTIVATE_VC_COMPLETE {
+ RNDIS_REQUEST_ID RequestId;
+ RNDIS_STATUS Status;
} RCONDIS_MP_DEACTIVATE_VC_COMPLETE, *PRCONDIS_MP_DEACTIVATE_VC_COMPLETE;
-
-
/* union with all of the RNDIS messages */
-typedef union _RNDIS_MESSAGE_CONTAINER
-{
- RNDIS_PACKET Packet;
- RNDIS_INITIALIZE_REQUEST InitializeRequest;
- RNDIS_HALT_REQUEST HaltRequest;
- RNDIS_QUERY_REQUEST QueryRequest;
- RNDIS_SET_REQUEST SetRequest;
- RNDIS_RESET_REQUEST ResetRequest;
- RNDIS_KEEPALIVE_REQUEST KeepaliveRequest;
- RNDIS_INDICATE_STATUS IndicateStatus;
- RNDIS_INITIALIZE_COMPLETE InitializeComplete;
- RNDIS_QUERY_COMPLETE QueryComplete;
- RNDIS_SET_COMPLETE SetComplete;
- RNDIS_RESET_COMPLETE ResetComplete;
- RNDIS_KEEPALIVE_COMPLETE KeepaliveComplete;
- RCONDIS_MP_CREATE_VC CoMiniportCreateVc;
- RCONDIS_MP_DELETE_VC CoMiniportDeleteVc;
- RCONDIS_INDICATE_STATUS CoIndicateStatus;
- RCONDIS_MP_ACTIVATE_VC_REQUEST CoMiniportActivateVc;
- RCONDIS_MP_DEACTIVATE_VC_REQUEST CoMiniportDeactivateVc;
- RCONDIS_MP_CREATE_VC_COMPLETE CoMiniportCreateVcComplete;
- RCONDIS_MP_DELETE_VC_COMPLETE CoMiniportDeleteVcComplete;
- RCONDIS_MP_ACTIVATE_VC_COMPLETE CoMiniportActivateVcComplete;
- RCONDIS_MP_DEACTIVATE_VC_COMPLETE CoMiniportDeactivateVcComplete;
-
+typedef union _RNDIS_MESSAGE_CONTAINER {
+ RNDIS_PACKET Packet;
+ RNDIS_INITIALIZE_REQUEST InitializeRequest;
+ RNDIS_HALT_REQUEST HaltRequest;
+ RNDIS_QUERY_REQUEST QueryRequest;
+ RNDIS_SET_REQUEST SetRequest;
+ RNDIS_RESET_REQUEST ResetRequest;
+ RNDIS_KEEPALIVE_REQUEST KeepaliveRequest;
+ RNDIS_INDICATE_STATUS IndicateStatus;
+ RNDIS_INITIALIZE_COMPLETE InitializeComplete;
+ RNDIS_QUERY_COMPLETE QueryComplete;
+ RNDIS_SET_COMPLETE SetComplete;
+ RNDIS_RESET_COMPLETE ResetComplete;
+ RNDIS_KEEPALIVE_COMPLETE KeepaliveComplete;
+ RCONDIS_MP_CREATE_VC CoMiniportCreateVc;
+ RCONDIS_MP_DELETE_VC CoMiniportDeleteVc;
+ RCONDIS_INDICATE_STATUS CoIndicateStatus;
+ RCONDIS_MP_ACTIVATE_VC_REQUEST CoMiniportActivateVc;
+ RCONDIS_MP_DEACTIVATE_VC_REQUEST CoMiniportDeactivateVc;
+ RCONDIS_MP_CREATE_VC_COMPLETE CoMiniportCreateVcComplete;
+ RCONDIS_MP_DELETE_VC_COMPLETE CoMiniportDeleteVcComplete;
+ RCONDIS_MP_ACTIVATE_VC_COMPLETE CoMiniportActivateVcComplete;
+ RCONDIS_MP_DEACTIVATE_VC_COMPLETE CoMiniportDeactivateVcComplete;
} RNDIS_MESSAGE_CONTAINER, *PRNDIS_MESSAGE_CONTAINER;
-
/* Remote NDIS message format */
-typedef __struct_bcount(MessageLength) struct _RNDIS_MESSAGE
-{
- u32 NdisMessageType;
-
+typedef __struct_bcount(MessageLength)
+struct _RNDIS_MESSAGE {
+ u32 NdisMessageType;
- /* Total length of this message, from the beginning */
- /* of the RNDIS_MESSAGE struct, in bytes. */
+ /* Total length of this message, from the beginning */
+ /* of the RNDIS_MESSAGE struct, in bytes. */
- u32 MessageLength;
+ u32 MessageLength;
- /* Actual message */
- RNDIS_MESSAGE_CONTAINER Message;
+ /* Actual message */
+ RNDIS_MESSAGE_CONTAINER Message;
} RNDIS_MESSAGE, *PRNDIS_MESSAGE;
-
-
-
/* Handy macros */
/* get the size of an RNDIS message. Pass in the message type, */
diff --git a/drivers/staging/hv/include/vmbus.h b/drivers/staging/hv/include/vmbus.h
index b99c4b5..88d371b 100644
--- a/drivers/staging/hv/include/vmbus.h
+++ b/drivers/staging/hv/include/vmbus.h
@@ -21,7 +21,6 @@
*
*/
-
#ifndef _VMBUS_H_
#define _VMBUS_H_
@@ -29,71 +28,60 @@
#include "VmbusApi.h"
-
/* Data types */
-
-typedef int (*PFN_DRIVERINITIALIZE)(DRIVER_OBJECT *drv);
-typedef int (*PFN_DRIVEREXIT)(DRIVER_OBJECT *drv);
+typedef int (*PFN_DRIVERINITIALIZE) (DRIVER_OBJECT * drv);
+typedef int (*PFN_DRIVEREXIT) (DRIVER_OBJECT * drv);
struct driver_context {
- GUID class_id;
+ GUID class_id;
- struct device_driver driver;
+ struct device_driver driver;
/* Use these methods instead of the struct device_driver so 2.6 kernel stops complaining */
- int (*probe)(struct device *);
- int (*remove)(struct device *);
- void (*shutdown)(struct device *);
+ int (*probe) (struct device *);
+ int (*remove) (struct device *);
+ void (*shutdown) (struct device *);
};
struct device_context {
- struct work_struct probe_failed_work_item;
- GUID class_id;
- GUID device_id;
- int probe_error;
- struct device device;
+ struct work_struct probe_failed_work_item;
+ GUID class_id;
+ GUID device_id;
+ int probe_error;
+ struct device device;
struct hv_device device_obj;
};
-
-
/* Global */
-
-
/* Inlines */
-static inline struct device_context *to_device_context(struct hv_device *device_obj)
+static inline struct device_context *to_device_context(struct hv_device
+ *device_obj)
{
return container_of(device_obj, struct device_context, device_obj);
}
-static inline struct device_context *device_to_device_context(struct device *device)
+static inline struct device_context *device_to_device_context(struct device
+ *device)
{
return container_of(device, struct device_context, device);
}
-static inline struct driver_context *driver_to_driver_context(struct device_driver *driver)
+static inline struct driver_context *driver_to_driver_context(struct
+ device_driver
+ *driver)
{
return container_of(driver, struct driver_context, driver);
}
-
/* Vmbus interface */
-int vmbus_child_driver_register(
- struct driver_context* driver_ctx
- );
+int vmbus_child_driver_register(struct driver_context *driver_ctx);
-void
-vmbus_child_driver_unregister(
- struct driver_context *driver_ctx
- );
+void vmbus_child_driver_unregister(struct driver_context *driver_ctx);
-void
-vmbus_get_interface(
- VMBUS_CHANNEL_INTERFACE *interface
- );
+void vmbus_get_interface(VMBUS_CHANNEL_INTERFACE * interface);
#endif /* _VMBUS_H_ */
diff --git a/drivers/staging/hv/include/vstorage.h b/drivers/staging/hv/include/vstorage.h
index 33646e7..6400590 100644
--- a/drivers/staging/hv/include/vstorage.h
+++ b/drivers/staging/hv/include/vstorage.h
@@ -21,7 +21,6 @@
*
*/
-
#pragma once
/* #include <vmbuspacketformat.h> */
@@ -31,22 +30,14 @@
/* public interface to the server */
-
-
/* Storvsp device interface guid */
-
-
-
/* Protocol versions. */
-
-
/* vstorage.w revision number. This is used in the case of a version match, */
/* to alert the user that structure sizes may be mismatched even though the */
/* protocol versions match. */
-
#define REVISION_STRING(REVISION_) #REVISION_
#define FILL_VMSTOR_REVISION(RESULT_LVALUE_) \
{ \
@@ -60,23 +51,18 @@
} \
}
-
/* Major/minor macros. Minor version is in LSB, meaning that earlier flat */
/* version numbers will be interpreted as "0.x" (i.e., 1 becomes 0.1). */
-
#define VMSTOR_PROTOCOL_MAJOR(VERSION_) (((VERSION_) >> 8) & 0xff)
#define VMSTOR_PROTOCOL_MINOR(VERSION_) (((VERSION_) ) & 0xff)
#define VMSTOR_PROTOCOL_VERSION(MAJOR_, MINOR_) ((((MAJOR_) & 0xff) << 8) | \
(((MINOR_) & 0xff) ))
-
/* Invalid version. */
-
#define VMSTOR_INVALID_PROTOCOL_VERSION -1
-
/* Version history: */
/* V1 Beta 0.1 */
/* V1 RC < 2008/1/31 1.0 */
@@ -84,51 +70,37 @@
#define VMSTOR_PROTOCOL_VERSION_CURRENT VMSTOR_PROTOCOL_VERSION(2, 0)
-
-
/* This will get replaced with the max transfer length that is possible on */
/* the host adapter. */
/* The max transfer length will be published when we offer a vmbus channel. */
-
#define MAX_TRANSFER_LENGTH 0x40000
#define DEFAULT_PACKET_SIZE (sizeof(VMDATA_GPA_DIRECT) + \
sizeof(VSTOR_PACKET) + \
(sizeof(u64) * (MAX_TRANSFER_LENGTH / PAGE_SIZE)))
-
-
-
/* Packet structure describing virtual storage requests. */
-
-typedef enum
-{
- VStorOperationCompleteIo = 1,
- VStorOperationRemoveDevice = 2,
- VStorOperationExecuteSRB = 3,
- VStorOperationResetLun = 4,
- VStorOperationResetAdapter = 5,
- VStorOperationResetBus = 6,
- VStorOperationBeginInitialization = 7,
- VStorOperationEndInitialization = 8,
- VStorOperationQueryProtocolVersion = 9,
- VStorOperationQueryProperties = 10,
- VStorOperationMaximum = 10
-
+typedef enum {
+ VStorOperationCompleteIo = 1,
+ VStorOperationRemoveDevice = 2,
+ VStorOperationExecuteSRB = 3,
+ VStorOperationResetLun = 4,
+ VStorOperationResetAdapter = 5,
+ VStorOperationResetBus = 6,
+ VStorOperationBeginInitialization = 7,
+ VStorOperationEndInitialization = 8,
+ VStorOperationQueryProtocolVersion = 9,
+ VStorOperationQueryProperties = 10,
+ VStorOperationMaximum = 10
} VSTOR_PACKET_OPERATION;
-
-
/* Platform neutral description of a scsi request - */
/* this remains the same across the write regardless of 32/64 bit */
/* note: it's patterned off the SCSI_PASS_THROUGH structure */
-
-
#pragma pack(push,1)
-
#define CDB16GENERIC_LENGTH 0x10
#ifndef SENSE_BUFFER_SIZE
@@ -138,170 +110,128 @@ C_ASSERT(SENSE_BUFFER_SIZE == 0x12);
#define MAX_DATA_BUFFER_LENGTH_WITH_PADDING 0x14
+typedef struct {
+ unsigned short Length;
+ unsigned char SrbStatus;
+ unsigned char ScsiStatus;
-typedef struct
-{
- unsigned short Length;
- unsigned char SrbStatus;
- unsigned char ScsiStatus;
-
- unsigned char PortNumber;
- unsigned char PathId;
- unsigned char TargetId;
- unsigned char Lun;
+ unsigned char PortNumber;
+ unsigned char PathId;
+ unsigned char TargetId;
+ unsigned char Lun;
- unsigned char CdbLength;
- unsigned char SenseInfoLength;
- unsigned char DataIn;
- unsigned char Reserved;
+ unsigned char CdbLength;
+ unsigned char SenseInfoLength;
+ unsigned char DataIn;
+ unsigned char Reserved;
- unsigned int DataTransferLength;
+ unsigned int DataTransferLength;
- union
- {
- unsigned char Cdb[CDB16GENERIC_LENGTH];
+ union {
+ unsigned char Cdb[CDB16GENERIC_LENGTH];
- unsigned char SenseData[SENSE_BUFFER_SIZE];
+ unsigned char SenseData[SENSE_BUFFER_SIZE];
- unsigned char ReservedArray[MAX_DATA_BUFFER_LENGTH_WITH_PADDING];
- };
+ unsigned char
+ ReservedArray[MAX_DATA_BUFFER_LENGTH_WITH_PADDING];
+ };
} VMSCSI_REQUEST, *PVMSCSI_REQUEST;
C_ASSERT((sizeof(VMSCSI_REQUEST) % 4) == 0);
-
-
/* This structure is sent during the intialization phase to get the different */
/* properties of the channel. */
+typedef struct {
+ unsigned short ProtocolVersion;
+ unsigned char PathId;
+ unsigned char TargetId;
-typedef struct
-{
- unsigned short ProtocolVersion;
- unsigned char PathId;
- unsigned char TargetId;
-
-
- /* Note: port number is only really known on the client side */
+ /* Note: port number is only really known on the client side */
- unsigned int PortNumber;
+ unsigned int PortNumber;
- unsigned int Flags;
+ unsigned int Flags;
- unsigned int MaxTransferBytes;
+ unsigned int MaxTransferBytes;
+ /* This id is unique for each channel and will correspond with */
+ /* vendor specific data in the inquirydata */
- /* This id is unique for each channel and will correspond with */
- /* vendor specific data in the inquirydata */
-
-
- unsigned long long UniqueId;
+ unsigned long long UniqueId;
} VMSTORAGE_CHANNEL_PROPERTIES, *PVMSTORAGE_CHANNEL_PROPERTIES;
C_ASSERT((sizeof(VMSTORAGE_CHANNEL_PROPERTIES) % 4) == 0);
-
-
/* This structure is sent during the storage protocol negotiations. */
+typedef struct {
-typedef struct
-{
-
- /* Major (MSW) and minor (LSW) version numbers. */
-
-
- unsigned short MajorMinor;
-
+ /* Major (MSW) and minor (LSW) version numbers. */
+ unsigned short MajorMinor;
- /* Revision number is auto-incremented whenever this file is changed */
- /* (See FILL_VMSTOR_REVISION macro above). Mismatch does not definitely */
- /* indicate incompatibility--but it does indicate mismatched builds. */
+ /* Revision number is auto-incremented whenever this file is changed */
+ /* (See FILL_VMSTOR_REVISION macro above). Mismatch does not definitely */
+ /* indicate incompatibility--but it does indicate mismatched builds. */
-
- unsigned short Revision;
+ unsigned short Revision;
} VMSTORAGE_PROTOCOL_VERSION, *PVMSTORAGE_PROTOCOL_VERSION;
C_ASSERT((sizeof(VMSTORAGE_PROTOCOL_VERSION) % 4) == 0);
-
-
/* Channel Property Flags */
-
#define STORAGE_CHANNEL_REMOVABLE_FLAG 0x1
#define STORAGE_CHANNEL_EMULATED_IDE_FLAG 0x2
+typedef struct _VSTOR_PACKET {
-typedef struct _VSTOR_PACKET
-{
-
- /* Requested operation type */
-
-
- VSTOR_PACKET_OPERATION Operation;
-
+ /* Requested operation type */
- /* Flags - see below for values */
+ VSTOR_PACKET_OPERATION Operation;
+ /* Flags - see below for values */
- unsigned int Flags;
+ unsigned int Flags;
+ /* Status of the request returned from the server side. */
- /* Status of the request returned from the server side. */
+ unsigned int Status;
+ /* Data payload area */
- unsigned int Status;
+ union {
+ /* Structure used to forward SCSI commands from the client to the server. */
- /* Data payload area */
+ VMSCSI_REQUEST VmSrb;
+ /* Structure used to query channel properties. */
- union
- {
+ VMSTORAGE_CHANNEL_PROPERTIES StorageChannelProperties;
- /* Structure used to forward SCSI commands from the client to the server. */
+ /* Used during version negotiations. */
-
- VMSCSI_REQUEST VmSrb;
-
-
- /* Structure used to query channel properties. */
-
-
- VMSTORAGE_CHANNEL_PROPERTIES StorageChannelProperties;
-
-
- /* Used during version negotiations. */
-
-
- VMSTORAGE_PROTOCOL_VERSION Version;
- };
+ VMSTORAGE_PROTOCOL_VERSION Version;
+ };
} VSTOR_PACKET, *PVSTOR_PACKET;
C_ASSERT((sizeof(VSTOR_PACKET) % 4) == 0);
-
/* Packet flags */
-
-
/* This flag indicates that the server should send back a completion for this */
/* packet. */
-
#define REQUEST_COMPLETION_FLAG 0x1
-
/* This is the set of flags that the vsc can set in any packets it sends */
-
#define VSC_LEGAL_FLAGS (REQUEST_COMPLETION_FLAG)
-
#pragma pack(pop)
--
1.6.3.1.10.g659a0.dirty
More information about the devel
mailing list