14#define OS_DARWIN_H_CVSID "$Id: os_darwin.h 5073 2020-06-24 08:08:38Z samm2 $\n"
16#define kIOATABlockStorageDeviceClass "IOATABlockStorageDevice"
20#ifndef kIOPropertySMARTCapableKey
21#define kIOPropertySMARTCapableKey "SMART Capable"
25#define kIOPropertyNVMeSMARTCapableKey "NVMe SMART Capable"
28#define kIONVMeSMARTUserClientTypeID CFUUIDGetConstantUUIDWithBytes(NULL, \
29 0xAA, 0x0F, 0xA6, 0xF9, 0xC2, 0xD6, 0x45, 0x7F, 0xB1, 0x0B, \
30 0x59, 0xA1, 0x32, 0x53, 0x29, 0x2F)
33#define kIONVMeSMARTInterfaceID CFUUIDGetConstantUUIDWithBytes(NULL, \
34 0xcc, 0xd1, 0xdb, 0x19, 0xfd, 0x9a, 0x4d, 0xaf, 0xbf, 0x95, \
35 0x12, 0x45, 0x4b, 0x23, 0xa, 0xb6)
46 struct nvme_smart_log * NVMeSMARTData );
50 struct nvme_id_ctrl * NVMeIdentifyControllerStruct,
56 IOReturn ( *
GetLogPage )(
void * interface,
void *
data,
unsigned int logPageId,
unsigned int numDWords);
IOReturn(* GetIdentifyData)(void *interface, struct nvme_id_ctrl *NVMeIdentifyControllerStruct, unsigned int ns)
IOReturn(* GetLogPage)(void *interface, void *data, unsigned int logPageId, unsigned int numDWords)
IOReturn(* SMARTReadData)(void *interface, struct nvme_smart_log *NVMeSMARTData)