| 57 | } |
| 58 | |
| 59 | void sff_8024_show_identifier(const uint8_t *data, int id_offset, struct rte_tel_data *d) |
| 60 | { |
| 61 | char val_string[SFF_ITEM_VAL_COMPOSE_SIZE]; |
| 62 | |
| 63 | snprintf(val_string, sizeof(val_string), "0x%02x", data[id_offset]); |
| 64 | |
| 65 | switch (data[id_offset]) { |
| 66 | case SFF_8024_ID_UNKNOWN: |
| 67 | strlcat(val_string, " (no module present, unknown, or unspecified)", |
| 68 | sizeof(val_string)); |
| 69 | break; |
| 70 | case SFF_8024_ID_GBIC: |
| 71 | strlcat(val_string, " (GBIC)", sizeof(val_string)); |
| 72 | break; |
| 73 | case SFF_8024_ID_SOLDERED_MODULE: |
| 74 | strlcat(val_string, " (module soldered to motherboard)", sizeof(val_string)); |
| 75 | break; |
| 76 | case SFF_8024_ID_SFP: |
| 77 | strlcat(val_string, " (SFP)", sizeof(val_string)); |
| 78 | break; |
| 79 | case SFF_8024_ID_300_PIN_XBI: |
| 80 | strlcat(val_string, " (300 pin XBI)", sizeof(val_string)); |
| 81 | break; |
| 82 | case SFF_8024_ID_XENPAK: |
| 83 | strlcat(val_string, " (XENPAK)", sizeof(val_string)); |
| 84 | break; |
| 85 | case SFF_8024_ID_XFP: |
| 86 | strlcat(val_string, " (XFP)", sizeof(val_string)); |
| 87 | break; |
| 88 | case SFF_8024_ID_XFF: |
| 89 | strlcat(val_string, " (XFF)", sizeof(val_string)); |
| 90 | break; |
| 91 | case SFF_8024_ID_XFP_E: |
| 92 | strlcat(val_string, " (XFP-E)", sizeof(val_string)); |
| 93 | break; |
| 94 | case SFF_8024_ID_XPAK: |
| 95 | strlcat(val_string, " (XPAK)", sizeof(val_string)); |
| 96 | break; |
| 97 | case SFF_8024_ID_X2: |
| 98 | strlcat(val_string, " (X2)", sizeof(val_string)); |
| 99 | break; |
| 100 | case SFF_8024_ID_DWDM_SFP: |
| 101 | strlcat(val_string, " (DWDM-SFP)", sizeof(val_string)); |
| 102 | break; |
| 103 | case SFF_8024_ID_QSFP: |
| 104 | strlcat(val_string, " (QSFP)", sizeof(val_string)); |
| 105 | break; |
| 106 | case SFF_8024_ID_QSFP_PLUS: |
| 107 | strlcat(val_string, " (QSFP+)", sizeof(val_string)); |
| 108 | break; |
| 109 | case SFF_8024_ID_CXP: |
| 110 | strlcat(val_string, " (CXP)", sizeof(val_string)); |
| 111 | break; |
| 112 | case SFF_8024_ID_HD4X: |
| 113 | strlcat(val_string, " (Shielded Mini Multilane HD 4X)", sizeof(val_string)); |
| 114 | break; |
| 115 | case SFF_8024_ID_HD8X: |
| 116 | strlcat(val_string, " (Shielded Mini Multilane HD 8X)", sizeof(val_string)); |
no test coverage detected