1*915b0150SRobert Mustacchi /* 2*915b0150SRobert Mustacchi * This file and its contents are supplied under the terms of the 3*915b0150SRobert Mustacchi * Common Development and Distribution License ("CDDL"), version 1.0. 4*915b0150SRobert Mustacchi * You may only use this file in accordance with the terms of version 5*915b0150SRobert Mustacchi * 1.0 of the CDDL. 6*915b0150SRobert Mustacchi * 7*915b0150SRobert Mustacchi * A full copy of the text of the CDDL should have accompanied this 8*915b0150SRobert Mustacchi * source. A copy of the CDDL is also available via the Internet at 9*915b0150SRobert Mustacchi * http://www.illumos.org/license/CDDL. 10*915b0150SRobert Mustacchi */ 11*915b0150SRobert Mustacchi 12*915b0150SRobert Mustacchi /* 13*915b0150SRobert Mustacchi * Copyright 2025 Oxide Computer Company 14*915b0150SRobert Mustacchi */ 15*915b0150SRobert Mustacchi 16*915b0150SRobert Mustacchi /* 17*915b0150SRobert Mustacchi * libnvme logic specific to Phison devices. This currently supports the Phison 18*915b0150SRobert Mustacchi * X200. 19*915b0150SRobert Mustacchi */ 20*915b0150SRobert Mustacchi 21*915b0150SRobert Mustacchi #include <sys/sysmacros.h> 22*915b0150SRobert Mustacchi #include <sys/nvme/phison.h> 23*915b0150SRobert Mustacchi 24*915b0150SRobert Mustacchi #include "libnvme_impl.h" 25*915b0150SRobert Mustacchi 26*915b0150SRobert Mustacchi static const nvme_vsd_ident_t phison_x200_idents[] = { 27*915b0150SRobert Mustacchi { 28*915b0150SRobert Mustacchi .nvdi_vid = PHISON_PCI_VID, 29*915b0150SRobert Mustacchi .nvdi_did = PHISON_X200_DID, 30*915b0150SRobert Mustacchi .nvdi_human = "Phison X200" 31*915b0150SRobert Mustacchi } 32*915b0150SRobert Mustacchi }; 33*915b0150SRobert Mustacchi 34*915b0150SRobert Mustacchi static const nvme_log_page_info_t *phison_x200_log_pages[] = { 35*915b0150SRobert Mustacchi &ocp_log_smart, &ocp_log_errrec, &ocp_log_fwact, &ocp_log_lat, 36*915b0150SRobert Mustacchi &ocp_log_devcap, &ocp_log_unsup 37*915b0150SRobert Mustacchi }; 38*915b0150SRobert Mustacchi 39*915b0150SRobert Mustacchi const nvme_vsd_t phison_x200 = { 40*915b0150SRobert Mustacchi .nvd_ident = phison_x200_idents, 41*915b0150SRobert Mustacchi .nvd_nident = ARRAY_SIZE(phison_x200_idents), 42*915b0150SRobert Mustacchi .nvd_logs = phison_x200_log_pages, 43*915b0150SRobert Mustacchi .nvd_nlogs = ARRAY_SIZE(phison_x200_log_pages) 44*915b0150SRobert Mustacchi }; 45