nvme_var.h revision 6801591e1fea06222c50622c468541c82c67cdb4
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld * This file and its contents are supplied under the terms of the
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld * Common Development and Distribution License ("CDDL"), version 1.0.
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld * You may only use this file in accordance with the terms of version
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld * 1.0 of the CDDL.
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld * A full copy of the text of the CDDL should have accompanied this
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld * source. A copy of the CDDL is also available via the Internet at
e8ba2a389f6ca6999ca72dabbe2871e894bf6b67Hans Rosenfeld * Copyright 2016 Nexenta Systems, Inc. All rights reserved.
8834f7ac63a18ac48dfacf20506346d82b04fc14Youzhong Yang * Copyright 2016 The MathWorks, Inc. All rights reserved.
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld * NVMe driver state
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld/* extern "C" { */
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeldtypedef struct nvme_namespace nvme_namespace_t;
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld void (*nc_callback)(void *);
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld /* errors detected by driver */
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld /* errors detected by hardware */
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld /* errors reported by asynchronous events */
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld * Section 7.7 of the spec describes how to get a unique ID for
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld * the controller: the vendor ID, the model name and the serial
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld * number shall be unique when combined.
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld * We add the hex namespace ID to get a unique ID for the namespace.
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld char ns_devid[4 + 1 + 20 + 1 + 40 + 1 + 8 + 1];
3c9168fa8e9c30d55b3aa2fde74bd7da46df53f5Hans Rosenfeld#endif /* _NVME_VAR_H */