Commit abb7aacb authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman

Staging: hv: fix coding style issues in nvspprotocol.h

No typedef changes yet though.

Cc: Hank Janssen <hjanssen@microsoft.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 9f0c7d2c
...@@ -21,9 +21,6 @@ ...@@ -21,9 +21,6 @@
* *
*/ */
#pragma once
#include "VmbusChannelInterface.h" #include "VmbusChannelInterface.h"
#define NVSP_INVALID_PROTOCOL_VERSION ((u32)0xFFFFFFFF) #define NVSP_INVALID_PROTOCOL_VERSION ((u32)0xFFFFFFFF)
...@@ -32,21 +29,16 @@ ...@@ -32,21 +29,16 @@
#define NVSP_MIN_PROTOCOL_VERSION NVSP_PROTOCOL_VERSION_1 #define NVSP_MIN_PROTOCOL_VERSION NVSP_PROTOCOL_VERSION_1
#define NVSP_MAX_PROTOCOL_VERSION NVSP_PROTOCOL_VERSION_1 #define NVSP_MAX_PROTOCOL_VERSION NVSP_PROTOCOL_VERSION_1
typedef enum _NVSP_MESSAGE_TYPE typedef enum _NVSP_MESSAGE_TYPE {
{
NvspMessageTypeNone = 0, NvspMessageTypeNone = 0,
/* Init Messages */ /* Init Messages */
NvspMessageTypeInit = 1, NvspMessageTypeInit = 1,
NvspMessageTypeInitComplete = 2, NvspMessageTypeInitComplete = 2,
NvspVersionMessageStart = 100, NvspVersionMessageStart = 100,
/* Version 1 Messages */ /* Version 1 Messages */
NvspMessage1TypeSendNdisVersion = NvspVersionMessageStart, NvspMessage1TypeSendNdisVersion = NvspVersionMessageStart,
NvspMessage1TypeSendReceiveBuffer, NvspMessage1TypeSendReceiveBuffer,
...@@ -60,16 +52,14 @@ typedef enum _NVSP_MESSAGE_TYPE ...@@ -60,16 +52,14 @@ typedef enum _NVSP_MESSAGE_TYPE
NvspMessage1TypeSendRNDISPacket, NvspMessage1TypeSendRNDISPacket,
NvspMessage1TypeSendRNDISPacketComplete, NvspMessage1TypeSendRNDISPacketComplete,
/*
/* This should be set to the number of messages for the version */ * This should be set to the number of messages for the version with
/* with the maximum number of messages. */ * the maximum number of messages.
*/
NvspNumMessagePerVersion = 9, NvspNumMessagePerVersion = 9,
} NVSP_MESSAGE_TYPE, *PNVSP_MESSAGE_TYPE; } NVSP_MESSAGE_TYPE, *PNVSP_MESSAGE_TYPE;
typedef enum _NVSP_STATUS typedef enum _NVSP_STATUS {
{
NvspStatusNone = 0, NvspStatusNone = 0,
NvspStatusSuccess, NvspStatusSuccess,
NvspStatusFailure, NvspStatusFailure,
...@@ -80,199 +70,171 @@ typedef enum _NVSP_STATUS ...@@ -80,199 +70,171 @@ typedef enum _NVSP_STATUS
NvspStatusMax, NvspStatusMax,
} NVSP_STATUS, *PNVSP_STATUS; } NVSP_STATUS, *PNVSP_STATUS;
#pragma pack(push, 1) typedef struct _NVSP_MESSAGE_HEADER {
typedef struct _NVSP_MESSAGE_HEADER
{
u32 MessageType; u32 MessageType;
} NVSP_MESSAGE_HEADER, *PNVSP_MESSAGE_HEADER; } NVSP_MESSAGE_HEADER, *PNVSP_MESSAGE_HEADER;
/* Init Messages */ /* Init Messages */
/*
* This message is used by the VSC to initialize the channel after the channels
/* This message is used by the VSC to initialize the channel */ * has been opened. This message should never include anything other then
/* after the channels has been opened. This message should */ * versioning (i.e. this message will be the same for ever).
/* never include anything other then versioning (i.e. this */ */
/* message will be the same for ever). */ typedef struct _NVSP_MESSAGE_INIT {
typedef struct _NVSP_MESSAGE_INIT
{
u32 MinProtocolVersion; u32 MinProtocolVersion;
u32 MaxProtocolVersion; u32 MaxProtocolVersion;
} NVSP_MESSAGE_INIT, *PNVSP_MESSAGE_INIT; } __attribute__((packed)) 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 /*
{ * 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 NegotiatedProtocolVersion;
u32 MaximumMdlChainLength; u32 MaximumMdlChainLength;
u32 Status; u32 Status;
} NVSP_MESSAGE_INIT_COMPLETE, *PNVSP_MESSAGE_INIT_COMPLETE; } __attribute__((packed)) NVSP_MESSAGE_INIT_COMPLETE, *PNVSP_MESSAGE_INIT_COMPLETE;
typedef union _NVSP_MESSAGE_INIT_UBER typedef union _NVSP_MESSAGE_INIT_UBER {
{
NVSP_MESSAGE_INIT Init; NVSP_MESSAGE_INIT Init;
NVSP_MESSAGE_INIT_COMPLETE InitComplete; NVSP_MESSAGE_INIT_COMPLETE InitComplete;
} NVSP_MESSAGE_INIT_UBER; } __attribute__((packed)) NVSP_MESSAGE_INIT_UBER;
/* Version 1 Messages */ /* Version 1 Messages */
/*
* This message is used by the VSC to send the NDIS version to the VSP. The VSP
/* This message is used by the VSC to send the NDIS version */ * can use this information when handling OIDs sent by the VSC.
/* to the VSP. The VSP can use this information when handling */ */
/* OIDs sent by the VSC. */ typedef struct _NVSP_1_MESSAGE_SEND_NDIS_VERSION {
typedef struct _NVSP_1_MESSAGE_SEND_NDIS_VERSION
{
u32 NdisMajorVersion; u32 NdisMajorVersion;
u32 NdisMinorVersion; u32 NdisMinorVersion;
} NVSP_1_MESSAGE_SEND_NDIS_VERSION, *PNVSP_1_MESSAGE_SEND_NDIS_VERSION; } __attribute__((packed)) 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 /*
{ * 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 {
u32 GpadlHandle; u32 GpadlHandle;
u16 Id; u16 Id;
} NVSP_1_MESSAGE_SEND_RECEIVE_BUFFER, *PNVSP_1_MESSAGE_SEND_RECEIVE_BUFFER; } __attribute__((packed)) NVSP_1_MESSAGE_SEND_RECEIVE_BUFFER, *PNVSP_1_MESSAGE_SEND_RECEIVE_BUFFER;
typedef struct _NVSP_1_RECEIVE_BUFFER_SECTION typedef struct _NVSP_1_RECEIVE_BUFFER_SECTION {
{
u32 Offset; u32 Offset;
u32 SubAllocationSize; u32 SubAllocationSize;
u32 NumSubAllocations; u32 NumSubAllocations;
u32 EndOffset; u32 EndOffset;
} NVSP_1_RECEIVE_BUFFER_SECTION, *PNVSP_1_RECEIVE_BUFFER_SECTION; } __attribute__((packed)) 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 */ * This message is used by the VSP to acknowledge a receive buffer send by the
/* VSP before the VSP uses the receive buffer. */ * 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 */
{ typedef struct _NVSP_1_MESSAGE_SEND_RECEIVE_BUFFER_COMPLETE {
u32 Status; u32 Status;
u32 NumSections; 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.
*/
/* The receive buffer is split into two parts, a large */ /*
/* suballocation section and a small suballocation */ * For example, the following break up of the receive buffer has 6
/* section. These sections are then suballocated by a */ * large suballocations and 10 small suballocations.
/* certain size. */ */
/* For example, the following break up of the receive */
/* buffer has 6 large suballocations and 10 small */
/* suballocations. */
/* | Large Section | | Small Section | */ /*
/* ------------------------------------------------------------ */ * | Large Section | | Small Section |
/* | | | | | | | | | | | | | | | | | | */ * ------------------------------------------------------------
/* | | */ * | | | | | | | | | | | | | | | | | |
/* LargeOffset SmallOffset */ * | |
* LargeOffset SmallOffset
*/
NVSP_1_RECEIVE_BUFFER_SECTION Sections[1]; NVSP_1_RECEIVE_BUFFER_SECTION Sections[1];
} __attribute__((packed)) NVSP_1_MESSAGE_SEND_RECEIVE_BUFFER_COMPLETE, *PNVSP_1_MESSAGE_SEND_RECEIVE_BUFFER_COMPLETE;
} 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
/* This message is sent by the VSC to revoke the receive buffer. */ * again.
/* After the VSP completes this transaction, the vsp should never */ */
/* use the receive buffer again. */ typedef struct _NVSP_1_MESSAGE_REVOKE_RECEIVE_BUFFER {
typedef struct _NVSP_1_MESSAGE_REVOKE_RECEIVE_BUFFER
{
u16 Id; u16 Id;
} NVSP_1_MESSAGE_REVOKE_RECEIVE_BUFFER, *PNVSP_1_MESSAGE_REVOKE_RECEIVE_BUFFER; } NVSP_1_MESSAGE_REVOKE_RECEIVE_BUFFER, *PNVSP_1_MESSAGE_REVOKE_RECEIVE_BUFFER;
/*
/* This message is used by the VSC to send a send buffer */ * This message is used by the VSC to send a send buffer to the VSP. The VSC
/* to the VSP. The VSC can then use the send buffer to */ * can then use the send buffer to send data to the VSP.
/* send data to the VSP. */ */
typedef struct _NVSP_1_MESSAGE_SEND_SEND_BUFFER {
typedef struct _NVSP_1_MESSAGE_SEND_SEND_BUFFER
{
u32 GpadlHandle; u32 GpadlHandle;
u16 Id; u16 Id;
} NVSP_1_MESSAGE_SEND_SEND_BUFFER, *PNVSP_1_MESSAGE_SEND_SEND_BUFFER; } __attribute__((packed)) NVSP_1_MESSAGE_SEND_SEND_BUFFER, *PNVSP_1_MESSAGE_SEND_SEND_BUFFER;
/*
/* This message is used by the VSP to acknowledge a send */ * This message is used by the VSP to acknowledge a send buffer sent by the
/* buffer sent by the VSC. This message must be sent by the */ * VSC. This message must be sent by the VSP before the VSP uses the sent
/* VSP before the VSP uses the sent buffer. */ * buffer.
*/
typedef struct _NVSP_1_MESSAGE_SEND_SEND_BUFFER_COMPLETE typedef struct _NVSP_1_MESSAGE_SEND_SEND_BUFFER_COMPLETE {
{
u32 Status; u32 Status;
/*
/* The VSC gets to choose the size of the send buffer and */ * The VSC gets to choose the size of the send buffer and the VSP gets
/* the VSP gets to choose the sections size of the buffer. */ * to choose the sections size of the buffer. This was done to enable
/* This was done to enable dynamic reconfigurations when */ * dynamic reconfigurations when the cost of GPA-direct buffers
/* the cost of GPA-direct buffers decreases. */ * decreases.
*/
u32 SectionSize; u32 SectionSize;
} NVSP_1_MESSAGE_SEND_SEND_BUFFER_COMPLETE, *PNVSP_1_MESSAGE_SEND_SEND_BUFFER_COMPLETE; } __attribute__((packed)) 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 /*
{ * 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; u16 Id;
} NVSP_1_MESSAGE_REVOKE_SEND_BUFFER, *PNVSP_1_MESSAGE_REVOKE_SEND_BUFFER; } 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 */ * This message is used by both the VSP and the VSC to send a RNDIS message to
/* a RNDIS message to the opposite channel endpoint. */ * the opposite channel endpoint.
*/
typedef struct _NVSP_1_MESSAGE_SEND_RNDIS_PACKET typedef struct _NVSP_1_MESSAGE_SEND_RNDIS_PACKET {
{ /*
* This field is specified by RNIDS. They assume there's two different
/* This field is specified by RNIDS. They assume there's */ * channels of communication. However, the Network VSP only has one.
/* two different channels of communication. However, */ * Therefore, the channel travels with the RNDIS packet.
/* the Network VSP only has one. Therefore, the channel */ */
/* travels with the RNDIS packet. */
u32 ChannelType; u32 ChannelType;
/*
/* This field is used to send part or all of the data */ * This field is used to send part or all of the data through a send
/* through a send buffer. This values specifies an */ * buffer. This values specifies an index into the send buffer. If the
/* index into the send buffer. If the index is */ * index is 0xFFFFFFFF, then the send buffer is not being used and all
/* 0xFFFFFFFF, then the send buffer is not being used */ * of the data was sent through other VMBus mechanisms.
/* and all of the data was sent through other VMBus */ */
/* mechanisms. */
u32 SendBufferSectionIndex; u32 SendBufferSectionIndex;
u32 SendBufferSectionSize; u32 SendBufferSectionSize;
} NVSP_1_MESSAGE_SEND_RNDIS_PACKET, *PNVSP_1_MESSAGE_SEND_RNDIS_PACKET; } __attribute__((packed)) 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 */ * This message is used by both the VSP and the VSC to complete a RNDIS message
/* point, the initiator of this message cannot use any resources */ * to the opposite channel endpoint. At this point, the initiator of this
/* associated with the original RNDIS packet. */ * message cannot use any resources associated with the original RNDIS packet.
*/
typedef struct _NVSP_1_MESSAGE_SEND_RNDIS_PACKET_COMPLETE typedef struct _NVSP_1_MESSAGE_SEND_RNDIS_PACKET_COMPLETE {
{
u32 Status; u32 Status;
} NVSP_1_MESSAGE_SEND_RNDIS_PACKET_COMPLETE, *PNVSP_1_MESSAGE_SEND_RNDIS_PACKET_COMPLETE; } NVSP_1_MESSAGE_SEND_RNDIS_PACKET_COMPLETE, *PNVSP_1_MESSAGE_SEND_RNDIS_PACKET_COMPLETE;
typedef union _NVSP_MESSAGE_1_UBER typedef union _NVSP_MESSAGE_1_UBER {
{
NVSP_1_MESSAGE_SEND_NDIS_VERSION SendNdisVersion; NVSP_1_MESSAGE_SEND_NDIS_VERSION SendNdisVersion;
NVSP_1_MESSAGE_SEND_RECEIVE_BUFFER SendReceiveBuffer; NVSP_1_MESSAGE_SEND_RECEIVE_BUFFER SendReceiveBuffer;
...@@ -285,22 +247,16 @@ typedef union _NVSP_MESSAGE_1_UBER ...@@ -285,22 +247,16 @@ typedef union _NVSP_MESSAGE_1_UBER
NVSP_1_MESSAGE_SEND_RNDIS_PACKET SendRNDISPacket; NVSP_1_MESSAGE_SEND_RNDIS_PACKET SendRNDISPacket;
NVSP_1_MESSAGE_SEND_RNDIS_PACKET_COMPLETE SendRNDISPacketComplete; NVSP_1_MESSAGE_SEND_RNDIS_PACKET_COMPLETE SendRNDISPacketComplete;
} NVSP_1_MESSAGE_UBER; } __attribute__((packed)) NVSP_1_MESSAGE_UBER;
typedef union _NVSP_ALL_MESSAGES typedef union _NVSP_ALL_MESSAGES {
{
NVSP_MESSAGE_INIT_UBER InitMessages; NVSP_MESSAGE_INIT_UBER InitMessages;
NVSP_1_MESSAGE_UBER Version1Messages; NVSP_1_MESSAGE_UBER Version1Messages;
} __attribute__((packed)) NVSP_ALL_MESSAGES;
} NVSP_ALL_MESSAGES;
/* ALL Messages */ /* ALL Messages */
typedef struct _NVSP_MESSAGE {
typedef struct _NVSP_MESSAGE
{
NVSP_MESSAGE_HEADER Header; NVSP_MESSAGE_HEADER Header;
NVSP_ALL_MESSAGES Messages; NVSP_ALL_MESSAGES Messages;
} NVSP_MESSAGE, *PNVSP_MESSAGE; } __attribute__((packed)) NVSP_MESSAGE, *PNVSP_MESSAGE;
#pragma pack(pop)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment