Changeset View
Changeset View
Standalone View
Standalone View
head/sys/dev/hyperv/netvsc/if_hnreg.h
Show All 36 Lines | |||||
#define HN_NVS_STATUS_OK 1 | #define HN_NVS_STATUS_OK 1 | ||||
#define HN_NVS_TYPE_INIT 1 | #define HN_NVS_TYPE_INIT 1 | ||||
#define HN_NVS_TYPE_INIT_RESP 2 | #define HN_NVS_TYPE_INIT_RESP 2 | ||||
#define HN_NVS_TYPE_NDIS_INIT 100 | #define HN_NVS_TYPE_NDIS_INIT 100 | ||||
#define HN_NVS_TYPE_RXBUF_CONN 101 | #define HN_NVS_TYPE_RXBUF_CONN 101 | ||||
#define HN_NVS_TYPE_RXBUF_CONNRESP 102 | #define HN_NVS_TYPE_RXBUF_CONNRESP 102 | ||||
#define HN_NVS_TYPE_RXBUF_DISCONN 103 | |||||
#define HN_NVS_TYPE_CHIM_CONN 104 | #define HN_NVS_TYPE_CHIM_CONN 104 | ||||
#define HN_NVS_TYPE_CHIM_CONNRESP 105 | #define HN_NVS_TYPE_CHIM_CONNRESP 105 | ||||
#define HN_NVS_TYPE_NDIS_CONF 125 | #define HN_NVS_TYPE_NDIS_CONF 125 | ||||
/* | /* | ||||
* Any size less than this one will _not_ work, e.g. hn_nvs_init | * Any size less than this one will _not_ work, e.g. hn_nvs_init | ||||
* only has 12B valid data, however, if only 12B data were sent, | * only has 12B valid data, however, if only 12B data were sent, | ||||
* Hypervisor would never reply. | * Hypervisor would never reply. | ||||
▲ Show 20 Lines • Show All 53 Lines • ▼ Show 20 Lines | |||||
} __packed; | } __packed; | ||||
struct hn_nvs_rxbuf_connresp { | struct hn_nvs_rxbuf_connresp { | ||||
uint32_t nvs_type; /* HN_NVS_TYPE_RXBUF_CONNRESP */ | uint32_t nvs_type; /* HN_NVS_TYPE_RXBUF_CONNRESP */ | ||||
uint32_t nvs_status; /* HN_NVS_STATUS_ */ | uint32_t nvs_status; /* HN_NVS_STATUS_ */ | ||||
uint32_t nvs_nsect; /* # of elem in nvs_sect */ | uint32_t nvs_nsect; /* # of elem in nvs_sect */ | ||||
struct hn_nvs_rxbuf_sect nvs_sect[]; | struct hn_nvs_rxbuf_sect nvs_sect[]; | ||||
} __packed; | } __packed; | ||||
/* No response */ | |||||
struct hn_nvs_rxbuf_disconn { | |||||
uint32_t nvs_type; /* HN_NVS_TYPE_RXBUF_DISCONN */ | |||||
uint16_t nvs_sig; /* HN_NVS_RXBUF_SIG */ | |||||
uint8_t nvs_rsvd[26]; | |||||
} __packed; | |||||
CTASSERT(sizeof(struct hn_nvs_rxbuf_disconn) >= HN_NVS_REQSIZE_MIN); | |||||
struct hn_nvs_chim_conn { | struct hn_nvs_chim_conn { | ||||
uint32_t nvs_type; /* HN_NVS_TYPE_CHIM_CONN */ | uint32_t nvs_type; /* HN_NVS_TYPE_CHIM_CONN */ | ||||
uint32_t nvs_gpadl; /* chimney buf vmbus GPADL */ | uint32_t nvs_gpadl; /* chimney buf vmbus GPADL */ | ||||
uint16_t nvs_sig; /* NDIS_NVS_CHIM_SIG */ | uint16_t nvs_sig; /* NDIS_NVS_CHIM_SIG */ | ||||
uint8_t nvs_rsvd[22]; | uint8_t nvs_rsvd[22]; | ||||
} __packed; | } __packed; | ||||
CTASSERT(sizeof(struct hn_nvs_chim_conn) >= HN_NVS_REQSIZE_MIN); | CTASSERT(sizeof(struct hn_nvs_chim_conn) >= HN_NVS_REQSIZE_MIN); | ||||
struct hn_nvs_chim_connresp { | struct hn_nvs_chim_connresp { | ||||
uint32_t nvs_type; /* HN_NVS_TYPE_CHIM_CONNRESP */ | uint32_t nvs_type; /* HN_NVS_TYPE_CHIM_CONNRESP */ | ||||
uint32_t nvs_status; /* HN_NVS_STATUS_ */ | uint32_t nvs_status; /* HN_NVS_STATUS_ */ | ||||
uint32_t nvs_sectsz; /* section size */ | uint32_t nvs_sectsz; /* section size */ | ||||
} __packed; | } __packed; | ||||
#endif /* !_IF_HNREG_H_ */ | #endif /* !_IF_HNREG_H_ */ |