From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 3B12CA0032;
	Wed, 11 May 2022 04:20:25 +0200 (CEST)
Received: from [217.70.189.124] (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id 2EF49410EE;
	Wed, 11 May 2022 04:20:25 +0200 (CEST)
Received: from mga05.intel.com (mga05.intel.com [192.55.52.43])
 by mails.dpdk.org (Postfix) with ESMTP id DC06E40DDD
 for <dev@dpdk.org>; Wed, 11 May 2022 04:20:23 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
 d=intel.com; i=@intel.com; q=dns/txt; s=Intel;
 t=1652235624; x=1683771624;
 h=from:to:cc:subject:date:message-id:in-reply-to:
 references:mime-version:content-transfer-encoding;
 bh=Q0/YBy8y8Xv6l8+D26Woqd7SQY6gi+E8tONXselhUXw=;
 b=FWLzeRNE1fXk8d2oTt24DO46shHCyjxOsKrPGIdOhs2S61p1IKP12rIo
 5p47kmKribg/IFa8vSaciDHp82bgc+hMgO1TxyDyjOrBbVilmxtJtE6ar
 htyVN4dRV69rgA2Dxp4dAMH+NIyK7MyCduXfiZQL/KpDaXYKwk8hRAJ8M
 XvVHQv3hQYhaoipRvxOnDzlzzlQ1Ayp2r2D06wFIDg0Hre1LP/+4pGmge
 R2j5Oq5XqgAzRHxbZiFCit78rKJgi119aUtlxIUR2uY3tASkP285R23Df
 tE7litP0S3skEIwyR5Z/Ab60vbBCeCPS1KNT2g1EaxjumwAjjaDWaeNbC A==;
X-IronPort-AV: E=McAfee;i="6400,9594,10343"; a="355984079"
X-IronPort-AV: E=Sophos;i="5.91,215,1647327600"; d="scan'208";a="355984079"
Received: from orsmga008.jf.intel.com ([10.7.209.65])
 by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 10 May 2022 19:20:22 -0700
X-IronPort-AV: E=Sophos;i="5.91,215,1647327600"; d="scan'208";a="593865638"
Received: from intel-cd-odc-robin.cd.intel.com ([10.240.178.188])
 by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 10 May 2022 19:20:20 -0700
From: Robin Zhang <robinx.zhang@intel.com>
To: dev@dpdk.org
Cc: Thomas Monjalon <thomas@monjalon.net>,
 Ferruh Yigit <ferruh.yigit@xilinx.com>,
 Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>,
 Robin Zhang <robinx.zhang@intel.com>
Subject: [PATCH v6 0/5] add telemetry command for show module EEPROM
Date: Wed, 11 May 2022 02:14:37 +0000
Message-Id: <20220511021442.811950-1-robinx.zhang@intel.com>
X-Mailer: git-send-email 2.25.1
In-Reply-To: <20220426024349.1081666-1-robinx.zhang@intel.com>
References: <20220426024349.1081666-1-robinx.zhang@intel.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org

Introduce a new telemetry command /ethdev/module_eeprom to show module
EEPROM for each port. The format of module EEPROM information follows
the SFF(Small Form Factor) Committee specifications.

Current the format support SFP(Small Formfactor Pluggable)/SFP+/
QSFP+(Quad Small Formfactor Pluggable)/QSFP28 with specs SFF-8079/
SFF-8472/SFF-8024/SFF-8636.

Afther run the /ethdev/module_eeprom command, telemetry client will
show the module EEPROM information. We keep the same information content
compare with Linux utility ethtool, refer to command 'ethtool -m' of
ethtool v5.4.

v6:
- refine code

v5:
- fix CI robot compile fail issue

v4:
- remove all printf in primary application, only show information
  in tememetry client
- refine codes

v3:
- split up codes into several patches for better reivew

Robin Zhang (5):
  ethdev: add telemetry command for module EEPROM
  ethdev: common utilities for different SFF specs
  ethdev: format module EEPROM for SFF-8079
  ethdev: format module EEPROM for SFF-8472
  ethdev: format module EEPROM for SFF-8636

 lib/ethdev/ethdev_sff_telemetry.c | 149 ++++++
 lib/ethdev/ethdev_sff_telemetry.h |  27 ++
 lib/ethdev/meson.build            |   5 +
 lib/ethdev/rte_ethdev.c           |   3 +
 lib/ethdev/sff_8079.c             | 406 ++++++++++++++++
 lib/ethdev/sff_8472.c             | 287 +++++++++++
 lib/ethdev/sff_8636.c             | 775 ++++++++++++++++++++++++++++++
 lib/ethdev/sff_8636.h             | 592 +++++++++++++++++++++++
 lib/ethdev/sff_common.c           | 326 +++++++++++++
 lib/ethdev/sff_common.h           | 174 +++++++
 10 files changed, 2744 insertions(+)
 create mode 100644 lib/ethdev/ethdev_sff_telemetry.c
 create mode 100644 lib/ethdev/ethdev_sff_telemetry.h
 create mode 100644 lib/ethdev/sff_8079.c
 create mode 100644 lib/ethdev/sff_8472.c
 create mode 100644 lib/ethdev/sff_8636.c
 create mode 100644 lib/ethdev/sff_8636.h
 create mode 100644 lib/ethdev/sff_common.c
 create mode 100644 lib/ethdev/sff_common.h

-- 
2.25.1