summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/sys
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/uts/common/sys')
-rw-r--r--usr/src/uts/common/sys/epoll.h2
-rw-r--r--usr/src/uts/common/sys/nvme.h27
2 files changed, 27 insertions, 2 deletions
diff --git a/usr/src/uts/common/sys/epoll.h b/usr/src/uts/common/sys/epoll.h
index f2e4b90ab7..3b38d9f629 100644
--- a/usr/src/uts/common/sys/epoll.h
+++ b/usr/src/uts/common/sys/epoll.h
@@ -11,6 +11,7 @@
/*
* Copyright (c) 2014, Joyent, Inc. All rights reserved.
+ * Copyright 2020 Oxide Computer Company
*/
#ifndef _SYS_EPOLL_H
@@ -60,6 +61,7 @@ typedef struct epoll_event {
#define EPOLLHUP 0x0010
#define EPOLLRDHUP 0x2000
+#define EPOLLEXCLUSIVE (1UL << 28) /* sets exclusive wake-up mode */
#define EPOLLWAKEUP (1UL << 29) /* no meaning; silently ignored */
#define EPOLLONESHOT (1UL << 30) /* translated to POLLONESHOT */
#define EPOLLET (1UL << 31) /* translated to POLLET */
diff --git a/usr/src/uts/common/sys/nvme.h b/usr/src/uts/common/sys/nvme.h
index 9a0d926dc5..1d54b05f21 100644
--- a/usr/src/uts/common/sys/nvme.h
+++ b/usr/src/uts/common/sys/nvme.h
@@ -436,7 +436,23 @@ typedef struct {
nvme_uint128_t hl_unsafe_shutdn; /* Unsafe Shutdowns */
nvme_uint128_t hl_media_errors; /* Media Errors */
nvme_uint128_t hl_errors_logged; /* Number of errors logged */
- uint8_t hl_rsvd2[512 - 192];
+ /* Added in NVMe 1.2 */
+ uint32_t hl_warn_temp_time; /* Warning Composite Temp Time */
+ uint32_t hl_crit_temp_time; /* Critical Composite Temp Time */
+ uint16_t hl_temp_sensor_1; /* Temperature Sensor 1 */
+ uint16_t hl_temp_sensor_2; /* Temperature Sensor 2 */
+ uint16_t hl_temp_sensor_3; /* Temperature Sensor 3 */
+ uint16_t hl_temp_sensor_4; /* Temperature Sensor 4 */
+ uint16_t hl_temp_sensor_5; /* Temperature Sensor 5 */
+ uint16_t hl_temp_sensor_6; /* Temperature Sensor 6 */
+ uint16_t hl_temp_sensor_7; /* Temperature Sensor 7 */
+ uint16_t hl_temp_sensor_8; /* Temperature Sensor 8 */
+ /* Added in NVMe 1.3 */
+ uint32_t hl_tmtemp_1_tc; /* Thermal Mgmt Temp 1 Transition # */
+ uint32_t hl_tmtemp_2_tc; /* Thermal Mgmt Temp 1 Transition # */
+ uint32_t hl_tmtemp_1_time; /* Time in Thermal Mgmt Temp 1 */
+ uint32_t hl_tmtemp_2_time; /* Time in Thermal Mgmt Temp 2 */
+ uint8_t hl_rsvd2[512 - 232];
} nvme_health_log_t;
/*
@@ -551,11 +567,18 @@ typedef struct {
typedef union {
struct {
uint16_t tt_tmpth; /* Temperature Threshold */
- uint16_t tt_rsvd;
+ uint16_t tt_tmpsel:4; /* Temperature Select */
+ uint16_t tt_thsel:2; /* Temperature Type */
+ uint16_t tt_resv:10;
} b;
uint32_t r;
} nvme_temp_threshold_t;
+#define NVME_TEMP_THRESH_MAX_SENSOR 8
+#define NVME_TEMP_THRESH_ALL 0xf
+#define NVME_TEMP_THRESH_OVER 0x00
+#define NVME_TEMP_THRESH_UNDER 0x01
+
/* Error Recovery Feature */
typedef union {
struct {