From patchwork Fri Jun 4 22:09:32 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vinicius Costa Gomes X-Patchwork-Id: 12300861 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 3E322C4743F for ; Fri, 4 Jun 2021 22:10:11 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 2371B6140C for ; Fri, 4 Jun 2021 22:10:11 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231199AbhFDWL4 (ORCPT ); Fri, 4 Jun 2021 18:11:56 -0400 Received: from mga05.intel.com ([192.55.52.43]:24256 "EHLO mga05.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230105AbhFDWLx (ORCPT ); Fri, 4 Jun 2021 18:11:53 -0400 IronPort-SDR: 4Qx7XUVN6l3R4RvdhOBAWE3gthHM70hsfdbNisxXxDydUsuYnOMImG9S7V6U6wfV0Bv35qgjDZ 93Q5wmxmliJg== X-IronPort-AV: E=McAfee;i="6200,9189,10005"; a="290007350" X-IronPort-AV: E=Sophos;i="5.83,249,1616482800"; d="scan'208";a="290007350" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jun 2021 15:10:06 -0700 IronPort-SDR: 3STaewzT8WIoV2OY0IMzcvWQLx50fT3/0Ksu7APX9k3cp9pI8pSPvj07u59Y8JMUvEtnq0mqze 0Yse795gsTFw== X-IronPort-AV: E=Sophos;i="5.83,249,1616482800"; d="scan'208";a="439326625" Received: from lmrivera-mobl.amr.corp.intel.com (HELO localhost.localdomain) ([10.251.24.65]) by orsmga007-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jun 2021 15:10:06 -0700 From: Vinicius Costa Gomes To: intel-wired-lan@lists.osuosl.org Cc: Vinicius Costa Gomes , sasha.neftin@intel.com, anthony.l.nguyen@intel.com, linux-pci@vger.kernel.org, bhelgaas@google.com, netdev@vger.kernel.org, mlichvar@redhat.com, richardcochran@gmail.com, hch@infradead.org, helgaas@kernel.org Subject: [PATCH next-queue v4 3/4] igc: Enable PCIe PTM Date: Fri, 4 Jun 2021 15:09:32 -0700 Message-Id: <20210604220933.3974558-4-vinicius.gomes@intel.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210604220933.3974558-1-vinicius.gomes@intel.com> References: <20210604220933.3974558-1-vinicius.gomes@intel.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org Enables PCIe PTM (Precision Time Measurement) support in the igc driver. Notifies the PCI devices that PCIe PTM should be enabled. PCIe PTM is similar protocol to PTP (Precision Time Protocol) running in the PCIe fabric, it allows devices to report time measurements from their internal clocks and the correlation with the PCIe root clock. The i225 NIC exposes some registers that expose those time measurements, those registers will be used, in later patches, to implement the PTP_SYS_OFFSET_PRECISE ioctl(). Signed-off-by: Vinicius Costa Gomes --- drivers/net/ethernet/intel/igc/igc_main.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/net/ethernet/intel/igc/igc_main.c b/drivers/net/ethernet/intel/igc/igc_main.c index fd4dd7c5a33f..51c497133765 100644 --- a/drivers/net/ethernet/intel/igc/igc_main.c +++ b/drivers/net/ethernet/intel/igc/igc_main.c @@ -12,6 +12,8 @@ #include #include #include +#include + #include #include "igc.h" @@ -5798,6 +5800,10 @@ static int igc_probe(struct pci_dev *pdev, pci_enable_pcie_error_reporting(pdev); + err = pci_enable_ptm(pdev, NULL); + if (err < 0) + dev_err(&pdev->dev, "PTM not supported\n"); + pci_set_master(pdev); err = -ENOMEM;