From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id E45F4A052A; Wed, 23 Dec 2020 10:30:28 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 16849CB03; Wed, 23 Dec 2020 10:30:26 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by dpdk.org (Postfix) with ESMTP id 66489CAB9 for ; Wed, 23 Dec 2020 10:30:23 +0100 (CET) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 0BN9AW03019835 for ; Wed, 23 Dec 2020 01:30:21 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=pfpt0220; bh=pUoY8HE45TgZ0DkEjJNT5NxnOc6cCrzUK99ycvxGOLo=; b=fcXcuN46Gz5oONcejhsqzacXSPgz+AjWpnRPfJFh3BRDsREvD45RN1ORfStisWp0XRJq nZcSWEleclFGbkg7REHUbZaDv41jcNLAvLdqlOXmWLHPH1DMWRmoVaQeg80ExNzi1Q5I F2aKdIHjdikUGOklyLK/XHFAZ+gnEK+ua4kdv8RmDHyS+eUdnAAtYKlYnCq4RWZG3Hbx 1tew5uX+DyR5ZjhOWiEQPCipPAg859LvyZqPViYnt33h0E6PG4+BrIzicLtLsTERd1mP 0K2QjqlWcCKoCA7DytwX9FM4W4MjNzn2sWtkHJInEsWka55Iqwc3ntOYQuPYxeINyRad Ew== Received: from sc-exch01.marvell.com ([199.233.58.181]) by mx0a-0016f401.pphosted.com with ESMTP id 35k0ebdret-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT) for ; Wed, 23 Dec 2020 01:30:21 -0800 Received: from SC-EXCH01.marvell.com (10.93.176.81) by SC-EXCH01.marvell.com (10.93.176.81) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 23 Dec 2020 01:30:20 -0800 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.168) by SC-EXCH01.marvell.com (10.93.176.81) with Microsoft SMTP Server (TLS) id 15.0.1497.2 via Frontend Transport; Wed, 23 Dec 2020 01:30:20 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Dow455Yc9ET0nMpmAuMj3c86U2NTsTkBApMOiNqx++pV4C8BpZMNzkHorgttMVTzd+q/FmHcr1go11CLjDC1v4/qx3247Za4lDkE/2nikJq2f3tH5Avz7dsJ18qFDPqriU+hl7PMAYHtpQ4BNwyGM+it+CF2iVGJ+PlvFZM94pct5RGvRcmXNb/DE9D7rZroqGAgG25HN3NbhQhao+L0/j6JHFHEdrvzW3VHOvES4wPjHOwaAvsUW+ha115OBIaXCpCa2WZH9myUgCsm+XCTfBskXbrg601KVsbqcvbT/x0gXm0fY/t/GD8Ab9E4kh9rpJS7rAV6TvWdil98xOZbYA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pUoY8HE45TgZ0DkEjJNT5NxnOc6cCrzUK99ycvxGOLo=; b=jK9JHplGqt/pCz4jbj8AXe9YQ9uCfDs30kWxxqaD1MoituNKijMsn3D+SyPjdkirRHmjHVfgMlWNCpucvQ5dnCJiswTVXWgGZttkJmd67Qcwfw1Der2JtwgGt9MII73Y0r0rSb8M0HdNN3RvorsJ/GJy443VkQy1AsY0vHrpEjZSOk4/El8KJBpym3I3J/mjo4GLSjTehH5OUMUB4/sIOE2tTPsSIrSSX3pGl3ihz6Rk+HgOuXnZWFK/FB5ZzjIeoI+sRwf7yQpfgub4I7uZ//AVHc5ob88r42UUw7sfHuB07ZK9eczWLVi26gdEDoeBoartTNpUyIPyjBCmh+5v/A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com; dkim=pass header.d=marvell.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector1-marvell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pUoY8HE45TgZ0DkEjJNT5NxnOc6cCrzUK99ycvxGOLo=; b=Z491yCmvFbQX6deL72euLrTzNdMoVRTkC+xe0rcmmKNaK9TbCHxo+krBxf3NdZN7E2K0aR3n3qpp8qzX7VWNnst/lCKEFyJ92DQ23EUFX4AHx7cdnYxvJoo2sxd5lWTdS4lRtL6clLHDPZNR6U5yeIPYYfAcfngTpUWO8wJHmro= Received: from DM5PR1801MB2058.namprd18.prod.outlook.com (2603:10b6:4:67::31) by DM6PR18MB2795.namprd18.prod.outlook.com (2603:10b6:5:172::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3700.27; Wed, 23 Dec 2020 09:30:19 +0000 Received: from DM5PR1801MB2058.namprd18.prod.outlook.com ([fe80::303b:5c79:93c7:b432]) by DM5PR1801MB2058.namprd18.prod.outlook.com ([fe80::303b:5c79:93c7:b432%7]) with mapi id 15.20.3676.033; Wed, 23 Dec 2020 09:30:19 +0000 From: Michael Shamis To: Liron Himi , Jerin Jacob Kollanukkaran CC: "dev@dpdk.org" , Liron Himi Thread-Topic: [dpdk-dev] [PATCH v1 32/38] net/mvpp2: apply flow-ctrl after port init Thread-Index: AQHWyJUyKXQYVfjFs02/dXDTx+9DP6oEiyNg Date: Wed, 23 Dec 2020 09:30:19 +0000 Message-ID: References: <20201202101212.4717-1-lironh@marvell.com> <20201202101212.4717-33-lironh@marvell.com> In-Reply-To: <20201202101212.4717-33-lironh@marvell.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [83.130.154.133] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 7151852f-1f8d-4d9b-8047-08d8a7255d53 x-ms-traffictypediagnostic: DM6PR18MB2795: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:4303; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ZChDW8LPCKt+jh5YzEi/et2oZLOutB7oWtQaqJOs/y8+iCBxSrKh+MtwblyP2qaAwBhpZsWKyBowLvY+OTNl41+T8NzV5g7zx97l+H8OdcOJ8LSdzUIw7xvvEETlYI1DUZ1k/ip8RWKsV1KeWQINh/7dpL/RygurTw4u4OjZcJeCssldR0sL7s7TFjGnZbyQSNzs9bKFtgcknzLIJ+vTc30JuVmaywpsJlSIAYasl5WzHFYzDI3COHSizTz1zcbozMWg3wr439BmK4/Ow1kvGXbYRhin3B3EKq64A7NANen+PRGNcGe36jxhh2HN6FyuSEnsoAWVQZoFTpLKjgCvwGfelbyzhLP7ynezwo2QFRI7KBFTo32WNnuqZ9DyzrGRACH8Gv9PmES5uhip7DcTvA== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM5PR1801MB2058.namprd18.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(136003)(396003)(39860400002)(346002)(376002)(366004)(7696005)(26005)(54906003)(2906002)(478600001)(186003)(9686003)(5660300002)(55016002)(83380400001)(4326008)(107886003)(8936002)(66946007)(86362001)(64756008)(66556008)(53546011)(66476007)(6636002)(6506007)(52536014)(33656002)(76116006)(110136005)(71200400001)(66446008)(316002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: =?us-ascii?Q?uD63NFqyn6HhZ8m9Wi7MVGVNN7Vm3jhTQSd5w6M6MVu90gKe+ZjLfdMlWIpX?= =?us-ascii?Q?Nh76upvSByX5C07r7VKHaNuhcFLs0CxNO2HYAk8M4O7VUJoYdf/oxQ0emr/E?= =?us-ascii?Q?fFG8yHsHH6QRobEMJvj+Tl/ui4tOmCEzSVG8gsG8Ra+m+UZWp095bV14+Lb+?= =?us-ascii?Q?qGf0gQ3Z9dT9Tkwm+CnOmcaQc0fkA2t3k7faifU8MGBMbyucD01zw80JZkjx?= =?us-ascii?Q?tS9vh1m6X2mavdfMadAB+xgz2waLoklAS+kBDqKkzNQWEGYaRwHUbNPiAavI?= =?us-ascii?Q?Ejy8RcvQgdudJJu9tlYfgfynyYBDNOeYdRypVkg3c5Vj8aB8I/F+N25SstdM?= =?us-ascii?Q?54TBEgp/92NglxK9OBeo30l6sA3b1fihpJ77bo/JSwx9dvAmuxaf83f2K6iu?= =?us-ascii?Q?H5Osbd8eM///FJkYKxQliaSLwbbgcbhk2A4wbpoQmUR0MS/NrpSnYdG/9Zq3?= =?us-ascii?Q?HJXemrQQXuJLUEM6llIeu5HSlaayPat0dtrc74jT9QDL5Q6bQxujfouk9IoX?= =?us-ascii?Q?4fUmCWi6sIcQzvEd2zFblEhhH9FB6QVw/AKgLzxhdnrP+cr+jVsQ5n+JHes6?= =?us-ascii?Q?j7eY8rV3OIch9hu0ypNxQsysjiSTPsUg4snkzBa6TkZggRuFnqZjUOFE4D/6?= =?us-ascii?Q?3OCr4DOqkizjrXwbFsyz9hL92D+/PRBlaxoMZohtzt4wGca1OJaTu7Oxxh8e?= =?us-ascii?Q?1cNMB4B25BI/tbwbMneoPca6MDaT4n6TSXgMIavAA0y6iLl/qnEVzDGj46sO?= =?us-ascii?Q?0h+sPpjAvLj8fTvAgwgWGKEMr3pL9tl3BtulIPFpxwS7UEOmZ1Xan/HPsiqp?= =?us-ascii?Q?a7plHUfBEETGctUdYRx3oorAyatCJ5BuHNSrpqQuMj2iG7Al+fjejtIv6KT7?= =?us-ascii?Q?geQKpoMQ1Jfn8kPoapI2wUSiB1WyhumIdTgwDk/p2Iys33TeEe00Ss5bS9kW?= =?us-ascii?Q?HtRJndEUkIKfgmpXUomjoDQs7wZ45ImJOn8sJ/aU0p8=3D?= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM5PR1801MB2058.namprd18.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7151852f-1f8d-4d9b-8047-08d8a7255d53 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Dec 2020 09:30:19.2808 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 1oO2Vy9nMK312b6WG7ophw/3uQDu6g/91jJZBYYz9cJhEWGVN1seBSox9FaxDqu7hfX5VUjp6myT5aDXi9tQLA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR18MB2795 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.343, 18.0.737 definitions=2020-12-23_04:2020-12-21, 2020-12-23 signatures=0 Subject: Re: [dpdk-dev] [PATCH v1 32/38] net/mvpp2: apply flow-ctrl after port init 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Reviewed-by: Michael Shamis -----Original Message----- From: dev On Behalf Of lironh@marvell.com Sent: Wednesday, December 2, 2020 12:12 PM To: Jerin Jacob Kollanukkaran Cc: dev@dpdk.org; Liron Himi Subject: [dpdk-dev] [PATCH v1 32/38] net/mvpp2: apply flow-ctrl after port = init From: Liron Himi in case ppio was not initialized yet (only at 'start' function) the flow-ct= rl setting should be saved for later stage. Signed-off-by: Liron Himi Reviewed-by: Liron Himi --- drivers/net/mvpp2/mrvl_ethdev.c | 26 +++++++++++++++++++++----- drivers/n= et/mvpp2/mrvl_ethdev.h | 2 ++ 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/drivers/net/mvpp2/mrvl_ethdev.c b/drivers/net/mvpp2/mrvl_ethde= v.c index d388fde96..fe5fd90ef 100644 --- a/drivers/net/mvpp2/mrvl_ethdev.c +++ b/drivers/net/mvpp2/mrvl_ethdev.c @@ -164,6 +164,8 @@ static int mrvl_vlan_filter_set(struct rte_eth_dev *dev, uint16_t vlan_id, int on); = static int mrvl_promiscuous_enable(struct rte_eth_dev *dev); static int mr= vl_allmulticast_enable(struct rte_eth_dev *dev); +static int +mrvl_flow_ctrl_set(struct rte_eth_dev *dev, struct rte_eth_fc_conf=20 +*fc_conf); =20 #define MRVL_XSTATS_TBL_ENTRY(name) { \ #name, offsetof(struct pp2_ppio_statistics, name), \ @@ -912,6 +914,15 @@ mrvl_dev_start(struct rte_eth_dev *dev) if (dev->data->promiscuous =3D=3D 1) mrvl_promiscuous_enable(dev); =20 + if (priv->flow_ctrl) { + ret =3D mrvl_flow_ctrl_set(dev, &priv->fc_conf); + if (ret) { + MRVL_LOG(ERR, "Failed to configure flow control"); + goto out; + } + priv->flow_ctrl =3D 0; + } + if (dev->data->dev_link.link_status =3D=3D ETH_LINK_UP) { ret =3D mrvl_dev_set_link_up(dev); if (ret) { @@ -2147,8 +2158,10 @@ mrvl_flow_ctrl_get(struct rte_eth_dev *dev, struct r= te_eth_fc_conf *fc_conf) struct mrvl_priv *priv =3D dev->data->dev_private; int ret, en; =20 - if (!priv) - return -EPERM; + if (!priv->ppio) { + memcpy(fc_conf, &priv->fc_conf, sizeof(struct rte_eth_fc_conf)); + return 0; + } =20 fc_conf->autoneg =3D 1; ret =3D pp2_ppio_get_rx_pause(priv->ppio, &en); @@ -2194,9 +2207,6 @@ mrv= l_flow_ctrl_set(struct rte_eth_dev *dev, struct rte_eth_fc_conf *fc_conf) int ret; int rx_en, tx_en; =20 - if (!priv) - return -EPERM; - if (fc_conf->high_water || fc_conf->low_water || fc_conf->pause_time || @@ -2211,6 +2221,12 @@ mrvl_flow_ctrl_set(struct rte_eth_dev *dev, struct r= te_eth_fc_conf *fc_conf) return -EINVAL; } =20 + if (!priv->ppio) { + memcpy(&priv->fc_conf, fc_conf, sizeof(struct rte_eth_fc_conf)); + priv->flow_ctrl =3D 1; + return 0; + } + switch (fc_conf->mode) { case RTE_FC_FULL: rx_en =3D 1; diff --git a/drivers/net/mvpp2/mrvl_ethdev.h b/drivers/net/mvpp2/mrvl_ethde= v.h index ada2c51b2..148f2acba 100644 --- a/drivers/net/mvpp2/mrvl_ethdev.h +++ b/drivers/net/mvpp2/mrvl_ethdev.h @@ -161,6 +161,8 @@ struct mrvl_priv { uint8_t isolated; uint8_t multiseg; uint16_t max_mtu; + uint8_t flow_ctrl; + struct rte_eth_fc_conf fc_conf; =20 struct pp2_ppio_params ppio_params; struct pp2_cls_qos_tbl_params qos_tbl_params; -- 2.28.0