From bea691120e9739eed6d53177cb7c4a49e7f3dcb1 Mon Sep 17 00:00:00 2001 From: Zi Zhou Date: Tue, 21 Feb 2017 11:29:38 -0800 Subject: [PATCH] recognize QSFP-LM4 (from finisar/DELL) --- packages/base/any/onlp/src/sff/module/inc/sff/8436.h | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/packages/base/any/onlp/src/sff/module/inc/sff/8436.h b/packages/base/any/onlp/src/sff/module/inc/sff/8436.h index cf389351..6383eddf 100644 --- a/packages/base/any/onlp/src/sff/module/inc/sff/8436.h +++ b/packages/base/any/onlp/src/sff/module/inc/sff/8436.h @@ -257,17 +257,21 @@ _sff8436_qsfp_40g_pre(const uint8_t* idprom) return 0; } + static inline int _sff8436_qsfp_40g_lm4(const uint8_t* idprom) { if(!SFF8436_MODULE_QSFP_PLUS_V2(idprom)) { return 0; } - /* Restrict to Finisar FTL4C3QE1C at this point. */ - if(strncmp("FTL4C3QE1C ", (char*)idprom+168, 16)) { + + if (idprom[130] != SFF8436_CONN_LC) return 0; + if (!SFF8436_MEDIA_NONE(idprom)) return 0; + + if ((idprom[142] != 1) && idprom[143] != 70) { return 0; } - return SFF8436_MEDIA_NONE(idprom); + return 1; } static inline int