29 #include <linux/types.h>
32 #define __force __attribute__((force))
37 #define NVME_SMART_INTEL_CDW10 0x008000ca
38 #define INTEL_VENDOR_ID 0x8086
40 struct __attribute__((packed)) nvme_additional_smart_log_item {
45 union __attribute__((packed)) {
47 struct __attribute__((packed)) wear_level {
52 struct __attribute__((packed)) thermal_throttle {
61 struct nvme_additional_smart_log_item program_fail_cnt;
62 struct nvme_additional_smart_log_item erase_fail_cnt;
63 struct nvme_additional_smart_log_item wear_leveling_cnt;
64 struct nvme_additional_smart_log_item e2e_err_cnt;
65 struct nvme_additional_smart_log_item crc_err_cnt;
66 struct nvme_additional_smart_log_item timed_workload_media_wear;
67 struct nvme_additional_smart_log_item timed_workload_host_reads;
68 struct nvme_additional_smart_log_item timed_workload_timer;
69 struct nvme_additional_smart_log_item thermal_throttle_status;
70 struct nvme_additional_smart_log_item retry_buffer_overflow_cnt;
71 struct nvme_additional_smart_log_item pll_lock_loss_cnt;
72 struct nvme_additional_smart_log_item nand_bytes_written;
73 struct nvme_additional_smart_log_item host_bytes_written;