vmbus_reg.h (307455) | vmbus_reg.h (307456) |
---|---|
1/*- 2 * Copyright (c) 2016 Microsoft Corp. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 9 unchanged lines hidden (view full) --- 18 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 19 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 20 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 24 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 * | 1/*- 2 * Copyright (c) 2016 Microsoft Corp. 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 9 unchanged lines hidden (view full) --- 18 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 19 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 20 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 24 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 * |
26 * $FreeBSD: stable/11/sys/dev/hyperv/vmbus/vmbus_reg.h 307455 2016-10-17 02:30:45Z sephe $ | 26 * $FreeBSD: stable/11/sys/dev/hyperv/vmbus/vmbus_reg.h 307456 2016-10-17 02:34:13Z sephe $ |
27 */ 28 29#ifndef _VMBUS_REG_H_ 30#define _VMBUS_REG_H_ 31 32#include <sys/param.h> 33#include <dev/hyperv/include/hyperv.h> /* XXX for hyperv_guid */ 34#include <dev/hyperv/include/vmbus.h> --- 75 unchanged lines hidden (view full) --- 110 111/* 112 * Channel packets 113 */ 114 115#define VMBUS_CHANPKT_SIZE_SHIFT 3 116#define VMBUS_CHANPKT_SIZE_ALIGN (1 << VMBUS_CHANPKT_SIZE_SHIFT) 117 | 27 */ 28 29#ifndef _VMBUS_REG_H_ 30#define _VMBUS_REG_H_ 31 32#include <sys/param.h> 33#include <dev/hyperv/include/hyperv.h> /* XXX for hyperv_guid */ 34#include <dev/hyperv/include/vmbus.h> --- 75 unchanged lines hidden (view full) --- 110 111/* 112 * Channel packets 113 */ 114 115#define VMBUS_CHANPKT_SIZE_SHIFT 3 116#define VMBUS_CHANPKT_SIZE_ALIGN (1 << VMBUS_CHANPKT_SIZE_SHIFT) 117 |
118#define VMBUS_CHANPKT_SETLEN(pktlen, len) \ 119do { \ 120 (pktlen) = (len) >> VMBUS_CHANPKT_SIZE_SHIFT; \ 121} while (0) 122 123#define VMBUS_CHANPKT_TOTLEN(tlen) \ 124 roundup2((tlen), VMBUS_CHANPKT_SIZE_ALIGN) 125 |
|
118struct vmbus_chanpkt_hdr { 119 uint16_t cph_type; | 126struct vmbus_chanpkt_hdr { 127 uint16_t cph_type; |
120 uint16_t cph_data_ofs; /* in 8 bytes */ 121 uint16_t cph_len; /* in 8 bytes */ | 128 uint16_t cph_hlen; /* header len, in 8 bytes */ 129 uint16_t cph_tlen; /* total len, in 8 bytes */ |
122 uint16_t cph_flags; 123 uint64_t cph_xactid; 124} __packed; 125 126struct vmbus_chanpkt { 127 struct vmbus_chanpkt_hdr cp_hdr; 128} __packed; 129 --- 174 unchanged lines hidden --- | 130 uint16_t cph_flags; 131 uint64_t cph_xactid; 132} __packed; 133 134struct vmbus_chanpkt { 135 struct vmbus_chanpkt_hdr cp_hdr; 136} __packed; 137 --- 174 unchanged lines hidden --- |