Skip to content

Commit

Permalink
nvme-print: Add PEL EHAI port identifier type printf function
Browse files Browse the repository at this point in the history
Change to use NVME_PEL_EHAI_PIT definitions.

Signed-off-by: Tokunori Ikegami <[email protected]>
  • Loading branch information
ikegami-t authored and igaw committed Mar 19, 2024
1 parent ccbe43f commit 616e31e
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 7 deletions.
10 changes: 3 additions & 7 deletions nvme-print-stdout.c
Original file line number Diff line number Diff line change
Expand Up @@ -230,15 +230,11 @@ static void stdout_persistent_event_log_rci(__le32 pel_header_rci)

static void stdout_persistent_event_entry_ehai(__u8 ehai)
{
__u8 rsvd1 = (ehai & 0xfc) >> 2;
__u8 pit = ehai & 0x03;
__u8 rsvd1 = NVME_PEL_EHAI_RSVD(ehai);
__u8 pit = NVME_PEL_EHAI_PIT(ehai);

printf(" [7:2] : %#x\tReserved\n", rsvd1);
printf("\tPort Identifier Type (PIT): %u(%s)\n", pit,
(pit == 0x00) ? "PIT not reported and PELPID does not apply" :
(pit == 0x01) ? "NVM subsystem port" :
(pit == 0x02) ? "NVMe-MI port" :
"Event not associated with any port and PELPID does not apply");
printf("\tPort Identifier Type (PIT): %u(%s)\n", pit, nvme_pel_ehai_pit_to_string(pit));
}

static void stdout_add_bitmap(int i, __u8 seb)
Expand Down
17 changes: 17 additions & 0 deletions nvme-print.c
Original file line number Diff line number Diff line change
Expand Up @@ -964,6 +964,23 @@ const char *nvme_pel_rci_rcpit_to_string(enum nvme_pel_rci_rcpit rcpit)
return "Reserved";
}

const char *nvme_pel_ehai_pit_to_string(enum nvme_pel_ehai_pit pit)
{
switch (pit) {
case NVME_PEL_EHAI_PIT_NOT_REPORTED:
return "PIT not reported and PELPID does not apply";
case NVME_PEL_EHAI_PIT_NSS_PORT:
return "NVM subsystem port";
case NVME_PEL_EHAI_PIT_NMI_PORT:
return "NVMe-MI port";
case NVME_PEL_EHAI_PIT_NOT_ASSOCIATED:
return "Event not associated with any port and PELPID does not apply";
default:
break;
}
return "Reserved";
}

void nvme_feature_show(enum nvme_features_id fid, int sel, unsigned int result)
{
nvme_print(show_feature, NORMAL, fid, sel, result);
Expand Down
1 change: 1 addition & 0 deletions nvme-print.h
Original file line number Diff line number Diff line change
Expand Up @@ -303,6 +303,7 @@ const char *nvme_zone_type_to_string(__u8 cond);
const char *nvme_plm_window_to_string(__u32 plm);
const char *nvme_ns_wp_cfg_to_string(enum nvme_ns_write_protect_cfg state);
const char *nvme_pel_rci_rcpit_to_string(enum nvme_pel_rci_rcpit rcpit);
const char *nvme_pel_ehai_pit_to_string(enum nvme_pel_ehai_pit pit);

void nvme_dev_full_path(nvme_ns_t n, char *path, size_t len);
void nvme_generic_full_path(nvme_ns_t n, char *path, size_t len);
Expand Down

0 comments on commit 616e31e

Please sign in to comment.