From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id 7D2E5D39A for ; Wed, 29 Mar 2017 13:10:34 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=intel.com; i=@intel.com; q=dns/txt; s=intel; t=1490785835; x=1522321835; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=wIsKvynSA0iYfsNaCzLgkDryRdEa3VHAmYxCwiGKShU=; b=vVsYC6ceSZQwJhz+DLhzfqPv7nDIsrzFLfBgeAMAIiAOmgG/3TzzyOWw SbSdRSvjpnuEkxYiZ5yec9QotrP7TQ==; Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 29 Mar 2017 04:10:34 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.36,240,1486454400"; d="scan'208";a="1148325659" Received: from irsmsx104.ger.corp.intel.com ([163.33.3.159]) by fmsmga002.fm.intel.com with ESMTP; 29 Mar 2017 04:10:32 -0700 Received: from irsmsx108.ger.corp.intel.com ([169.254.11.239]) by IRSMSX104.ger.corp.intel.com ([163.33.3.159]) with mapi id 14.03.0319.002; Wed, 29 Mar 2017 12:10:31 +0100 From: "Iremonger, Bernard" To: "alexz@att.com" , "dev@dpdk.org" CC: "Ananyev, Konstantin" , "Zhang, Helin" , "Lu, Wenzhuo" Thread-Topic: [dpdk-dev] [PATCH] net/ixgbe: notify VF when PF link status changes Thread-Index: AQHSozJ5ZntJ+uru2kmJsgHNRn9Y4KGrr3Pg Date: Wed, 29 Mar 2017 11:10:31 +0000 Message-ID: <8CEF83825BEC744B83065625E567D7C224D4C57E@IRSMSX108.ger.corp.intel.com> References: <1490203937-12434-1-git-send-email-alexz@att.com> In-Reply-To: <1490203937-12434-1-git-send-email-alexz@att.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiMTgzYjMzOWMtNzQ3NS00ZDQzLThlMWEtOTczMzViZDgxZTI5IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE2LjUuOS4zIiwiVHJ1c3RlZExhYmVsSGFzaCI6Im1vZFlzbk5RT0R3MHczMGM3NkM2WGIyVEU0MVdsVTFSMTRyRmFIbHBOUkE9In0= x-ctpclassification: CTP_IC x-originating-ip: [163.33.239.180] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH] net/ixgbe: notify VF when PF link status changes X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Mar 2017 11:10:36 -0000 Hi Alex, > -----Original Message----- > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of alexz@att.com > Sent: Wednesday, March 22, 2017 5:32 PM > To: dev@dpdk.org > Cc: Ananyev, Konstantin ; Zhang, Helin > ; Lu, Wenzhuo ; Alex > Zelezniak > Subject: [dpdk-dev] [PATCH] net/ixgbe: notify VF when PF link status > changes >=20 > From: Alex Zelezniak >=20 > Signed-off-by: Alex Zelezniak > --- > drivers/net/ixgbe/ixgbe_ethdev.c | 33 > +++++++++++++++++++++++++++++++++ > drivers/net/ixgbe/rte_pmd_ixgbe.h | 14 ++++++++++++++ > 2 files changed, 47 insertions(+) >=20 > diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c > b/drivers/net/ixgbe/ixgbe_ethdev.c > index 7169007..a0e7aeb 100644 > --- a/drivers/net/ixgbe/ixgbe_ethdev.c > +++ b/drivers/net/ixgbe/ixgbe_ethdev.c > @@ -4894,6 +4894,39 @@ static void ixgbevf_set_vfta_all(struct > rte_eth_dev *dev, bool on) > return new_val; > } >=20 > +int > +rte_pmd_ixgbe_ping_vfs(uint8_t port, uint16_t vf) { > + struct ixgbe_hw *hw; > + struct ixgbe_vf_info *vfinfo; > + struct rte_eth_dev *dev; > + struct rte_pci_device *pci_dev; > + uint32_t ctrl; > + > + RTE_ETH_VALID_PORTID_OR_ERR_RET(port, -ENODEV); > + > + dev =3D &rte_eth_devices[port]; > + pci_dev =3D IXGBE_DEV_TO_PCI(dev); > + > + if (!is_device_supported(dev, &rte_ixgbe_pmd)) > + return -ENOTSUP; > + > + if (vf >=3D pci_dev->max_vfs) > + return -EINVAL; > + > + hw =3D IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private); > + vfinfo =3D *(IXGBE_DEV_PRIVATE_TO_P_VFDATA(dev->data- > >dev_private)); > + > + hw =3D IXGBE_DEV_PRIVATE_TO_HW(dev->data->dev_private); > + > + ctrl =3D IXGBE_PF_CONTROL_MSG; > + if (vfinfo[vf].clear_to_send) > + ctrl |=3D IXGBE_VT_MSGTYPE_CTS; > + > + ixgbe_write_mbx(hw, &ctrl, 1, vf); > + > + return 0; > +} >=20 > int > rte_pmd_ixgbe_set_vf_vlan_anti_spoof(uint8_t port, uint16_t vf, uint8_t > on) diff --git a/drivers/net/ixgbe/rte_pmd_ixgbe.h > b/drivers/net/ixgbe/rte_pmd_ixgbe.h > index 4d7b507..7f27992 100644 > --- a/drivers/net/ixgbe/rte_pmd_ixgbe.h > +++ b/drivers/net/ixgbe/rte_pmd_ixgbe.h > @@ -42,6 +42,20 @@ > #include >=20 > /** > + * Notify VF when PF link status changes. > + * > + * @param port > + * The port identifier of the Ethernet device. > + * @param vf > + * VF id. > + * @return > + * - (0) if successful. > + * - (-ENODEV) if *port* invalid. > + * - (-EINVAL) if *vf* invalid. > + */ > +int rte_pmd_ixgbe_ping_vfs(uint8_t port, uint16_t vf); > + > +/** > * Set the VF MAC address. > * > * @param port > -- > 1.9.1 The drivers/net/ixgbe/rte_pmd_ixgbe_version.map file needs to be updated to= o. Regards, Bernard