1 /* 2 * This file and its contents are supplied under the terms of the 3 * Common Development and Distribution License ("CDDL"), version 1.0. 4 * You may only use this file in accordance with the terms of version 5 * 1.0 of the CDDL. 6 * 7 * A full copy of the text of the CDDL should have accompanied this 8 * source. A copy of the CDDL is also available via the Internet at 9 * http://www.illumos.org/license/CDDL. 10 */ 11 /* 12 * Copyright 2020 Joyent, Inc. 13 */ 14 15 #ifndef _DISK_DRIVERS_H 16 #define _DISK_DRIVERS_H 17 18 #include <fm/topo_mod.h> 19 #include <libdevinfo.h> 20 #include <libnvme.h> 21 22 #ifdef __cplusplus 23 extern "C" { 24 #endif 25 26 /* 27 * This is the disk module-specific data. 28 */ 29 typedef struct { 30 topo_list_t td_dlist; 31 nvme_t *td_nvme; 32 } topo_disk_t; 33 34 #define MPTSAS_DRV "mpt_sas" 35 #define NVME_DRV "nvme" 36 37 int disk_mptsas_find_disk(topo_mod_t *, tnode_t *, char **); 38 int disk_nvme_enum_disk(topo_mod_t *, tnode_t *); 39 40 #ifdef __cplusplus 41 } 42 #endif 43 44 #endif /* _DISK_DRIVERS_H */ 45