From patchwork Sat May 27 10:25:23 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shreyansh Jain X-Patchwork-Id: 24781 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id 4CFFB7D09; Sat, 27 May 2017 12:19:26 +0200 (CEST) Received: from NAM03-BY2-obe.outbound.protection.outlook.com (mail-by2nam03on0076.outbound.protection.outlook.com [104.47.42.76]) by dpdk.org (Postfix) with ESMTP id 3105C7D04 for ; Sat, 27 May 2017 12:18:53 +0200 (CEST) Received: from DM5PR03CA0017.namprd03.prod.outlook.com (10.175.104.27) by BY1PR0301MB0902.namprd03.prod.outlook.com (10.160.195.141) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1101.14; Sat, 27 May 2017 10:18:52 +0000 Received: from BL2FFO11FD029.protection.gbl (2a01:111:f400:7c09::124) by DM5PR03CA0017.outlook.office365.com (2603:10b6:3:118::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1124.9 via Frontend Transport; Sat, 27 May 2017 10:18:52 +0000 Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.158.2 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.158.2; helo=az84smr01.freescale.net; Received: from az84smr01.freescale.net (192.88.158.2) by BL2FFO11FD029.mail.protection.outlook.com (10.173.160.69) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.1075.5 via Frontend Transport; Sat, 27 May 2017 10:18:51 +0000 Received: from Tophie.ap.freescale.net ([10.232.14.39]) by az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id v4RAHYuD029968; Sat, 27 May 2017 03:18:50 -0700 From: Shreyansh Jain To: CC: , Date: Sat, 27 May 2017 15:55:23 +0530 Message-ID: <1495880735-1651-28-git-send-email-shreyansh.jain@nxp.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1495880735-1651-1-git-send-email-shreyansh.jain@nxp.com> References: <1495880735-1651-1-git-send-email-shreyansh.jain@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131403539321715454; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.158.2; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(336005)(39410400002)(39400400002)(39850400002)(39450400003)(39380400002)(39840400002)(39860400002)(2980300002)(1109001)(1110001)(339900001)(199003)(189002)(9170700003)(47776003)(86362001)(575784001)(77096006)(54906002)(8936002)(106466001)(8656002)(36756003)(81166006)(8676002)(2351001)(50226002)(6916009)(33646002)(105606002)(356003)(5660300001)(2950100002)(6666003)(305945005)(48376002)(50466002)(2906002)(85426001)(5003940100001)(76176999)(498600001)(50986999)(15650500001)(189998001)(4326008)(53936002)(110136004)(68736007)(104016004)(38730400002); DIR:OUT; SFP:1101; SCL:1; SRVR:BY1PR0301MB0902; H:az84smr01.freescale.net; FPR:; SPF:Fail; MLV:ovrnspm; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11FD029; 1:O1WiwdckzQak1uZZ5mbCLm4odZQ5xDArZaY0MPChzMAHLQ77A0OYOjQZt0xJ9E/z7PqHYuIUA2X2nV4mh32Hza3N+btcQIL/taq2JIrKE2GiZ5VTOZlciL9eSobZR8fDK3qlehq/J35ZaiV6YsTS0yIMDwOVDsktZz/CDDh9TXutuETauZZVmkWjt2laZzC1wl3fIZ7JZr2vlaJyBM0GEhVko9+F9ynMGOeLp/UQwCczi7kodKTT+8KnuYkZb10pVhfTxoZY6GgLG8ZETPm4wT6a2OLZRELDP+Ptk27SAeYguAZXCiEoD/XLzo58VGYYziRCeUU40emJ8HAUyA3amhTd7sjB6xkBbGecbWkk9i2iqB1ilWlstsQnMV7su1MaUHaJiy26Efz1DyC7fwIpkzPd3QYfCrTQIJ67fTTARCv8kU8Y999zFrXpfaZJCpI42PzCvboek9J+I4udeK7/15yojemZ+Gi2sb2mjH7lHPDA/m6avcduxw7XLyX4xmp3InSfcXqEDtYWzqQWhL7MHoNtbydPyaCRUgdiMGCElrVD90U5RTlJ25m3aevQkYAZo77VsEUGjcWqa0uzN2PCoZEVCxqe3OJ1vcDDoHUtIyagedifi4qzcRELc4cVxjcIqi4qr/GBPQmJ1GnOU4Om9hFZk+uoHQnbDqCdYV5GsttFKMaMfW6X0+lDtJgOcOBp4ZmriRYJJ6AgyqRWC5KTpw== MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BY1PR0301MB0902: X-MS-Office365-Filtering-Correlation-Id: 0f180620-5878-4e56-999d-08d4a4e9c5f4 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(201703131430075)(201703131517081); SRVR:BY1PR0301MB0902; X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB0902; 3:pY5ZPMdwi1UlZyrJ31FkfIURLbGJwFG1w2g7O29i1+sgso4dl2xXCRvip4pJBSatM5UmPO67ex3+DJ9A515kIrQ1WFx8DfV3N0GdFVDoMTt1y3O8R9gwi40j9V4MdnhBAq5BLpHisrpPn1XcC2uxo+5rN6JZdNdllPBZd5sRF6yP877jH4Ca637s7LUaW8HwcGh4Jl9CvxYULDQAQV5qZqfa8ocGWKFSM1kP+E8uhn6BEx7CVF96rEW9dgGQjzI6kKSywYmYGXNC6cNCf1D7h11H4IJqYsLnIEE+IR3tAWhGLIi6IiRKUImlhp7Ubq7/eGSZbMMLN/xEyZnkg9st3L7zZNBJTmn2fTvMbAxaRNFUeuWG32oeHpM1WSeoPlTV3sicDnNtzH+ixqg9+1XldNHNMxS7ue1km1DI/CJRgQ3RdVNtvbUog8QZNRsPjDMq; 25:L/kfWiGgii7Gkx5b4oX3fN80jEp2u7HAoKsVyJRb+YqjN0az5bywNrG0eEXzRa2fsot9BMubgsa9JFDp8kQcSyoCiO31PY4jfBO0pV6E93GMhYuRcxP6hMnNuy4Kyj3dGUNvEJM6OkTWobyE3bM1vewxP2n6p3sytGdjBCZrvl1V/k4voylH8KbAWlP6nZnLcAlYfmB6RASp3+vtOt0l2AlSOnCEsu7vtdqCbRYOhqsT2l5IydM2jSDHt2QBJD2dd6w36USQK2WE8ExpPTG2Hn+CWJrP+OpnMc13Uq8e063IOqT9oqo0Oqsn8kgE2SFEcO2bPc0R3Jnamrduuh+q4eLGPD1jJHfC8Q+2oKoEWpvyc0O6SF+z5eQ3r5rE77pP8iAbVmZtvcH37a+/tG4VrkGfNXIBNP8pssP6U3/pP8OMVVxoxmyDbPvpuqFKnk9Af6wHy0DMS6Co5l25k0wWDiDkAMM1i3ZLRl61ut/v/3k= X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB0902; 31:AJ+RRFX5Sur/zN4WRkOOf6HOlGM4pBWbBp8CL4MDJVvw7bKL9npa0u0QcScUiSNeaN1OPbLO86LEuL4t2rclk0hFnZbBGFrApUjLtQpYwAKKVvipp5SNUOG+FvnNTYRzOQUg20QJ36K6lJDC3S+LgzJmx+UgZo64d2yCGGKZKOjhpe+Z8PfVVe63j5L2bZfYz1ULiU1e1xGvwiAMax/V1T1lRldP7TgjEDpVyWKqM94um1Gskt4+MRzNMNBwgac/kivO/MwIMRf1Kazd5JqIaQ== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095135)(601004)(2401047)(13018025)(8121501046)(13016025)(5005006)(10201501046)(93006095)(93001095)(3002001)(6055026)(6096035)(20161123565025)(201703131430075)(201703131433075)(201703131448075)(201703161259150)(201703151042153)(20161123559100)(20161123563025)(20161123556025)(20161123561025); SRVR:BY1PR0301MB0902; BCL:0; PCL:0; RULEID:(400006); SRVR:BY1PR0301MB0902; X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB0902; 4:tZiWRn/0o0KvvFzy20X7G4FpP6pvACuwP+H/PMgHulnB/LsfuiaioI+HqKwmXrfzi8auY2STdVKOgailvJksWLsKoT/CdNksv994KwJfMYjJ14BcJWIbGbli8ooV0iN61GlA5KlOwPIupRkAo8uQTs6ZfJND+R/gtLLiImwP4a9DD9HUDzsR7Dg9bBwY6ldHXd0pz11Hj8zp2mJ0lXPR20OmHnyr4kRr1APG+gr60AVcIMgbJpYA/iZclF1IEYWmfAS4vtVrNRrmFzcS3UYKc7mwHx3iMRavNQ/wGgz1XWMg5pXYlcrgTuNQQ8BvfD/XtLA2IARqXyV7N8wnQ378jA3XESWCds+AISNB2Rymp5gRB0PJUjsSw8v7Xu9dnNWD2nQovMdru6an7G2LR82X5AEwMxOxWBu9DbfeYIHgxiA20GOaCLhAf58Iq1mSKwB27RPnvaagMraQ2KsBpP7dflppdb+QD0PoyyzIWVuffUbjF4ptIvzzmiZu141FfJaYpWX+I+LAkDR9YFtS8XpvxLML/o9/WtuheDGR9iVnBxcMGl0rHMFmJ2xJjZ0NWvj8G4K5iNSazo5DGVWW+cg81A3hqw6q8IS+BJwcGgHZSFlIc94b4jn5HOKZgWLVgc8hGxNSPi/vpCkIODX042+FNKrG+mxAwWdLKlgUkCHiymCevuOAhLkPO4yxr7EWF61g5FOOXAl8GA7sWVwyxjAu0sn+8wlbxbVQDKzXAvtH/lVIBeXg0Oq756unwYXhXbqs+H+lUqzkiEN+UKzK3THFv/RT2SlnMsj0N+il7SxMqzPgj14kIUio68S5IOiph/BzzPe3ySxVhsvAgx/BIPl6ewPE2KZ6mdNiTABbFlylUEosoMx/p74uP+ymISr7LPqNhFL5BcLKZUhwndkaHsD2/w== X-Forefront-PRVS: 0320B28BE1 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY1PR0301MB0902; 23:h6jR31ztEY6Zfl6iaDo1GXrnmHvJi7Ww2rT9bHY?= tPfijMm1LNKRSGZYtFi70oVI9XcoRfHRN9vJRwQb02M0wIIqyXuGwJQ3QQQeMblrjXjI7x1TbKf2NOCHsKxJ/b9A4hqgkL40oLdDMDuklxENhAQ9yGTNWSnVdzSyPyiyvmeM76X0lr2idoRZ3rTsGkIV7OE+nexR3z4a4FVNesIxVxbr+XxPadTnoig8EBWyQsDzgV0UV0QSNTZXs5M0T9X68QKZqukthSYt4gNt81AzP/b9YIQS4AGuzyXB0UMTf/B3bhRBGO2q+X5z0IldymwKFCTa0GqUxCZNUhJWCepN6suD8t5O7+L6QW5oYuBCgyFk3jHJg5jXmG5z+CO9jb1A2rvB0I/hFpmESwIolrN+LsLmZPGCGSU0uaQlEL0j1cz3OK3hNqlKBkiX0FMAAof9J6nxsuKJooicVcOZmCvrPRDprUmQOeoEbdQB4P9ghO1TzQz06OT9wV73oxPTMO+ToyUW7WhWoMrdK2G9Jgwk6wRo27xDZrrV4NxagmihEMNfu16MmMuoeXt3wzSi1H2mvSjTWuKbgtQY4cvbfKzBqiw8X4QmipwawFa6+Ufsx5f6Ke5Xeg+Nah4zkZUTMhPB/y8356O+g+AkfXStts8vvkIIwPTIP9AYPc0i3UiTSdIUUOEVFasItCXt0JY2B6nbgUETeoW9p2wz7SDFBuu0G0nYOL0/X8zrDvX0RFshluPVmd5ayeOpwI5MU3zv63mgKFeln7ECAXvCuBxlN8Q7MryWZtwaFbS5OE1pXiTC7xN5gYB6aIx1mXXLJJ4fx9RH3xwjui9rTcHxvsT+HgmIkXL1+gyt+wJfDTpuBj6WBMIue81O+/qunvu7Qns7QSjGhtDYUWZJWLJWzO9RK65Z+tOeHIMBzmNdoyImmX4ex9StGv69wjlwP3AR6LB5KqwhrpOmy+K5X15fzhZ0GCGxIPLXjj0+vjaSIsyYQsu30aYPPLp8lhyP7mU3Ab3yZLtfxqJQgZKznTS/WOfcnylzs0hTS/MTt70JL+0EIsPvpizzeYDO3YBVB4tiuFODfnVMofpG29kKRNe+egeK5IhjiL+1gGMvUMKMJSqxKnWhuGwLEb8MUQNW/tCortsAI1+MIR0Qe2Ke533l79nntYgrZfveMjnMgZTcdwqy1OcLkdMX5rJ7MGBrDNW+nTKuRR/Yn5f/PWIX4oWu3oNibzlXADzkNyQlpa7xNA/cRD3lzLOXo9YLwaQkRuQ/c3OUGjmZKlCoLhbWxi3LWWZE89Ha7hhmdgIWzCEpOgmZp6+9dm3M= X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB0902; 6:Y3NQ5ZwR/CPMt9QVYhVP1hECdVVX/Yght8ltR4eCKGNJ9QEWSC8ktu7sR3hry3XKxEoCy3Fjgr9u9uksVJjKRtSRR2rlXRyItBAUz9y5tfIqy2kgryLc1/EPsDY7AvFNiU5bi50QMRQRpxeyd8jsaMcdxlFgQblEGpm+QtAhl7LRHny0eZUfXZRKVnVk+VjLNxuCK/EIakV+NCkXoLjBw6Lk2xatQzRZMquQ5bt7+1bxJZ0Qo2BGET+lv25ayPIb3wKkbOxSvDjmonf1y3lfVINdaIghoPUyJg+gQW/mCalE9nAL1eQ5iVIDRt9Rg6zn3ZugnF34A47yO5wGVQtvxXoLEa9KCTpT/pZEvIFXVHITg36yOR/6ZgYbo9g42dLpLeksIYv6xNTJ9TCox48VPu8bv6bIvQZr8ZMiMgpFI8wYOBpnkzFLa4Ry3EXYD2/JMfyh1S65R17NRy05SEeAazej9k4EzS5yHXJ8b+Q3ZMiKXKNKZ0fyXqxLxJmz5O1AkPgc7t8v2aO1VtyW3SmGUA==; 5:nmZLplncRTFQdBm/Fai+KB1T7hfMmgXzhL1XGHbrRzUGlPnq5SlGo73CObPKCWoomntwnjFy20fgGgs1z6EYDw5hXeFvSlPp4hfEg2oybUddVfiYHO1uK7U5ZHn4pBYjGDCrp68PAz/UayfwE+RVp0fGu5Lu4VB6u5IrAvu3cbGVUb/2i4W1nv4t/MkOYetq; 24:JxP0vZXWMe8pNjnNRdgBoBWQga3tsbcBzLoGfWlDVQ74noQ9Jjik5RkrylTb6+GN+ANHfWi/Nppv9s1eH4A11GaQBEiG25rnqjMkcqSURbg= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BY1PR0301MB0902; 7:p2cf+MZ/dr26jiYL+pQdPakWPJwDtQRpYOIg5taSgB/Pppi4iwOy89wnj1lmbzDldaL/FYvbMJ0H9cDeq12fc/KhrdfpqAPHQ8dFf1ndRNR31mNPigZog1wPJWwc7Z6uW8oFdaaD16jHjT6vjC2TExTczHNvPox+Qssoo2Q/9FescOhE6g/S35x/f6NwR/GKQUmDaOJ0J9vO4ja2KdS/AUbwzlK1lxbAmRTPYxB2RusmFdmlEOCEi5OuU4PqS7Tl0xOwJ9Xq/osRIKsQzWvmrmGxLb5QSUW/hkXY7EuFxOjkbby1dPF+Fdf8hQLJt/cYEjHsf4RaFWoscvX4B61/KA== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 May 2017 10:18:51.9375 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.158.2]; Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR0301MB0902 Subject: [dpdk-dev] [RFC Patch 27/39] net/dpaa: add support for link status update 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" Signed-off-by: Hemant Agrawal Signed-off-by: Shreyansh Jain --- doc/guides/nics/features/dpaa.ini | 1 + drivers/net/dpaa/dpaa_ethdev.c | 42 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) diff --git a/doc/guides/nics/features/dpaa.ini b/doc/guides/nics/features/dpaa.ini index 0b992fd..86ab0a8 100644 --- a/doc/guides/nics/features/dpaa.ini +++ b/doc/guides/nics/features/dpaa.ini @@ -4,6 +4,7 @@ ; Refer to default.ini for the full list of available PMD features. ; [Features] +Link status = Y Queue start/stop = Y MTU update = Y ARMv8 = Y diff --git a/drivers/net/dpaa/dpaa_ethdev.c b/drivers/net/dpaa/dpaa_ethdev.c index 122e45b..64ff32d 100644 --- a/drivers/net/dpaa/dpaa_ethdev.c +++ b/drivers/net/dpaa/dpaa_ethdev.c @@ -135,6 +135,28 @@ static void dpaa_eth_dev_close(struct rte_eth_dev *dev) dpaa_eth_dev_stop(dev); } +static int dpaa_eth_link_update(struct rte_eth_dev *dev, + int wait_to_complete __rte_unused) +{ + struct dpaa_if *dpaa_intf = dev->data->dev_private; + struct rte_eth_link *link = &dev->data->dev_link; + + PMD_INIT_FUNC_TRACE(); + + if (dpaa_intf->fif->mac_type == fman_mac_1g) + link->link_speed = 1000; + else if (dpaa_intf->fif->mac_type == fman_mac_10g) + link->link_speed = 10000; + else + PMD_DRV_LOG(ERR, "invalid link_speed: %s, %d", + dpaa_intf->name, dpaa_intf->fif->mac_type); + + link->link_status = dpaa_intf->valid; + link->link_duplex = ETH_LINK_FULL_DUPLEX; + link->link_autoneg = ETH_LINK_AUTONEG; + return 0; +} + static int dpaa_eth_rx_queue_setup(struct rte_eth_dev *dev, uint16_t queue_idx, uint16_t nb_desc __rte_unused, @@ -209,6 +231,22 @@ static void dpaa_eth_tx_queue_release(void *txq __rte_unused) PMD_INIT_FUNC_TRACE(); } +static int dpaa_link_down(struct rte_eth_dev *dev) +{ + PMD_INIT_FUNC_TRACE(); + + dpaa_eth_dev_stop(dev); + return 0; +} + +static int dpaa_link_up(struct rte_eth_dev *dev) +{ + PMD_INIT_FUNC_TRACE(); + + dpaa_eth_dev_start(dev); + return 0; +} + static struct eth_dev_ops dpaa_devops = { .dev_configure = dpaa_eth_dev_configure, .dev_start = dpaa_eth_dev_start, @@ -219,7 +257,11 @@ static struct eth_dev_ops dpaa_devops = { .tx_queue_setup = dpaa_eth_tx_queue_setup, .rx_queue_release = dpaa_eth_rx_queue_release, .tx_queue_release = dpaa_eth_tx_queue_release, + + .link_update = dpaa_eth_link_update, .mtu_set = dpaa_mtu_set, + .dev_set_link_down = dpaa_link_down, + .dev_set_link_up = dpaa_link_up, }; /* Initialise an Rx FQ */