diff options
Diffstat (limited to 'usr/src/uts/sun4v/sys/vio_mailbox.h')
-rw-r--r-- | usr/src/uts/sun4v/sys/vio_mailbox.h | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/usr/src/uts/sun4v/sys/vio_mailbox.h b/usr/src/uts/sun4v/sys/vio_mailbox.h index 66de0722e6..c3b74ac9be 100644 --- a/usr/src/uts/sun4v/sys/vio_mailbox.h +++ b/usr/src/uts/sun4v/sys/vio_mailbox.h @@ -120,6 +120,13 @@ extern "C" { #define VIO_PAYLOAD_ELEMS (VIO_PAYLOAD_SZ / LDC_ELEM_SIZE) /* num words */ /* + * Peer dring processing state. Either actively processing dring + * or stopped. + */ +#define VIO_DP_ACTIVE 1 +#define VIO_DP_STOPPED 2 + +/* * VIO device message tag. * * These 64 bits are used as a common header for all VIO message types. @@ -169,7 +176,6 @@ typedef struct vio_ver_msg { uint64_t resv3[VIO_PAYLOAD_ELEMS - 1]; } vio_ver_msg_t; - /* * VIO Descriptor Ring Register message. * @@ -260,10 +266,15 @@ typedef struct vio_dring_msg { uint32_t start_idx; /* Indx of first updated elem */ int32_t end_idx; /* Indx of last updated elem */ + uint8_t dring_process_state; /* Processing state */ + /* * Padding. */ - uint64_t resv[VIO_PAYLOAD_ELEMS - 3]; + uint8_t resv1; + uint16_t resv2; + uint32_t resv3; + uint64_t resv4[VIO_PAYLOAD_ELEMS - 4]; } vio_dring_msg_t; /* |