git: 0b8f21e8d1f7 - main - nvme: Add LPA bits
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 05 Apr 2024 22:57:48 UTC
The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=0b8f21e8d1f749bd03532f90656e2a5cf01800c0 commit 0b8f21e8d1f749bd03532f90656e2a5cf01800c0 Author: Warner Losh <imp@FreeBSD.org> AuthorDate: 2024-04-03 17:26:17 +0000 Commit: Warner Losh <imp@FreeBSD.org> CommitDate: 2024-04-05 22:53:47 +0000 nvme: Add LPA bits Add all the bits from the NVMe 2.0 base specification: CMD_EFFECTS to indicate the commands and effects log page is supported, TELEMETRY to indicate that the telemetry log pages and protocols are supported, PERSISTENT_EVENTS to indicate the persistent event log is supported, LOG_PAGES_PAGE to indicate that various log pages related to log page and command support are supported: L0, L5, L12, and L13. and DA4_TELEMETRY to indicate that the DA4 area is supported for telemetry data. Sponsored by: Netflix --- sys/dev/nvme/nvme.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/sys/dev/nvme/nvme.h b/sys/dev/nvme/nvme.h index 46956d5f54cf..706b77507b61 100644 --- a/sys/dev/nvme/nvme.h +++ b/sys/dev/nvme/nvme.h @@ -390,9 +390,24 @@ enum nvme_psdt { /* per namespace smart/health log page */ #define NVME_CTRLR_DATA_LPA_NS_SMART_SHIFT (0) #define NVME_CTRLR_DATA_LPA_NS_SMART_MASK (0x1) +/* Commands Supported and Effects log page */ +#define NVME_CTRLR_DATA_LPA_CMD_EFFECTS_SHIFT (1) +#define NVME_CTRLR_DATA_LPA_CMD_EFFECTS_MASK (0x1) /* extended data for Get Log Page command */ #define NVME_CTRLR_DATA_LPA_EXT_DATA_SHIFT (2) #define NVME_CTRLR_DATA_LPA_EXT_DATA_MASK (0x1) +/* telemetry */ +#define NVME_CTRLR_DATA_LPA_TELEMETRY_SHIFT (3) +#define NVME_CTRLR_DATA_LPA_TELEMETRY_MASK (0x1) +/* persistent event */ +#define NVME_CTRLR_DATA_LPA_PERSISTENT_EVENT_SHIFT (4) +#define NVME_CTRLR_DATA_LPA_PERSISTENT_EVENT_MASK (0x1) +/* Supported log pages, etc */ +#define NVME_CTRLR_DATA_LPA_LOG_PAGES_PAGE_SHIFT (5) +#define NVME_CTRLR_DATA_LPA_LOG_PAGES_PAGE_MASK (0x1) +/* Data Area 4 for Telemetry */ +#define NVME_CTRLR_DATA_LPA_DA4_TELEMETRY_SHIFT (6) +#define NVME_CTRLR_DATA_LPA_DA4_TELEMETRY_MASK (0x1) /** AVSCC - admin vendor specific command configuration */ /* admin vendor specific commands use spec format */