From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM03-BY2-obe.outbound.protection.outlook.com (mail-by2nam03on0057.outbound.protection.outlook.com [104.47.42.57]) by dpdk.org (Postfix) with ESMTP id 554A91B169 for ; Wed, 10 Jan 2018 12:10:46 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=kCIv8AU8ggm89v+fGwfQY5I8fCk4OufqGOYl//Ol6/I=; b=VH94cxF7U+ZJD66CgB42W7G8zneGHHzoD0IzhUFBpR98hOvKQLH9k1v2/J4KqquZ42YJTnYWm8Uz+hSms/J5chz6lcmrkJbxMrZ4K7UB9P2U+icU/OW3aDMlhTxG7yhWu7Jl4vgNrBjAfn6vzLWLTbdD8vxeeKcpCWJQz10a2Cs= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Pavan.Bhagavatula@cavium.com; Received: from Pavan-LT.caveonetworks.com (111.93.218.67) by MWHPR07MB3469.namprd07.prod.outlook.com (10.164.192.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.386.5; Wed, 10 Jan 2018 11:10:42 +0000 From: Pavan Nikhilesh To: gage.eads@intel.com, jerin.jacobkollanukkaran@cavium.com, harry.van.haaren@intel.com, hemant.agrawal@nxp.com, liang.j.ma@intel.com, santosh.shukla@caviumnetworks.com Cc: dev@dpdk.org, Pavan Nikhilesh Date: Wed, 10 Jan 2018 16:40:01 +0530 Message-Id: <20180110111013.14644-3-pbhagavatula@caviumnetworks.com> X-Mailer: git-send-email 2.14.1 In-Reply-To: <20180110111013.14644-1-pbhagavatula@caviumnetworks.com> References: <20171207203705.25020-1-pbhagavatula@caviumnetworks.com> <20180110111013.14644-1-pbhagavatula@caviumnetworks.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [111.93.218.67] X-ClientProxiedBy: CY4PR1701CA0010.namprd17.prod.outlook.com (10.171.208.20) To MWHPR07MB3469.namprd07.prod.outlook.com (10.164.192.20) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 174cdd40-a108-47c7-60c1-08d5581acb91 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(5600026)(4604075)(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(2017052603307)(7153060)(7193020); SRVR:MWHPR07MB3469; X-Microsoft-Exchange-Diagnostics: 1; MWHPR07MB3469; 3:bYDCcaVptzsCmymO9LQJbobcvy1AC/A6ci5wdQPQdPQPr07rJg/KRej7eaqnirApa9DFLncv908XRDEyMXnAoVZlaFRtFYl2QhaTWh8kKvWazxv/IPeJpnoD3Lv/5bAJxUo18agSSBkihjlq2j8y28qFWRt4GPELRBXdhdzUHZpCxx4sq3ufhmXML1JsL81xNNKKDMzxieGO3NmWhFGcTggTJBsF/1KpbnF5mnmGLu+ofcjRN4n36EY5PL/lVoKd; 25:SVZoYsz+D/Fh0Pv9NfiJFbtVJQPCPOIEFHhqllJgLBX+ABVuhjw1n7tsY+ZI8ZBZgPSNMoyjp0nwEPEMLqO/qXJ0SdPtO5vjWuG2RtbtdD8bR6GtAPlCPKQpnF1KuftIh4t9ky+xxfwOX3aiaHUXudnd2HbHHhkXvNWacXqlr0PSjpz4tsyO4SFfpM/tLgPq+iTm/D+4G0/RxyyplyElb09YLCcsHlnhVrcISvkRaM+VVkHgs6g++9JoQTHyI/mazR7jI34Hheoq2gKM4hSf/J4bTV1R1psSs/oqU7jEJL2YFLDpSSqixN6K5I33zddasoFCvbPQVDWaw4976LvlLQ==; 31:PJdzDBM9IbQPzqEfkqFh4yWpoQQ5j12AeUdPvYYHGwL5BuY0h6aqPDhXTN1D0+zowoIVJLayK5BN/OKPQ0yCCDbVZkq/zOfF/ym1LRUvjXbBWVlahYfMdP8E2ztrvTV4Xjmsm0C/Hu/yYHFvSYi7rXn98K7JW/xBuEz6DWOUzsNgYInvhbpYbwmAwb8+bD4mWv1U9Od6a4ZtE0R6JiUUWF9eh7fldGpWX0KCS+HnZvQ= X-MS-TrafficTypeDiagnostic: MWHPR07MB3469: X-Microsoft-Exchange-Diagnostics: 1; MWHPR07MB3469; 20:t5x4hbEsJ2C69tTvnIA/En437ctSezW5RGNPzdzDLAgGv8fVqVOHJAzG21aiMpy86297yKgmg5IZmZYgZgxLwJC6IjhrVc14eUW5UuCfQY8sxlSt2hFf82alyquUX7VQI2NH0P8hDc0aB0OKI5FjAAQdohS2RYwD2T2L9/Xx5VducYcUD1YD1qdagdrMukPJMPqD0fJzwsS0xpTGfGAjYDt8QqTpOL3L32zqeFtZU2dJDFc8Z0ADXN70D+fkttVnlKMICwd0KMVBMz+6BDx91wJg029qtrKkSpuOGiB1DUfxBaubcX99AFNS2TLy519L21YSxklnOxDCF/9sqATd8rTVib7n7mWB3JK/krWbNqT2NfTWNMNNsYwqfVx3wmdkh33ouE6SjdOFz3NkN2raDSaI1ji9oLEtJo9JjzrNj9D41QN9HUvEhy7kC61natuecNpTLF6Cs60jrYjKIgwNMEg9iLRmflE5z/6vpnK9wlme1yMX0UVwEjlwUG7vWsBkRQdLlTeqp0xBT6yMiMWkbHl+i8InGfzxfAXMmeiimWdHL1t5jb5c1L55C2vPkU3pGt3jhXKnQZiZMlBFrYd0d97sVjZ4jd3wwth7DFjvmAY=; 4:y1sSvieGGkaV/odXhzjG9B+g3s9jQ7gA+65lW86gpC09/g6EF40KELMyYZRskvnG7BbgasTYp1PkiE3eYv68mpIsHAhsSUur2ynBUUjW06IZ5IJRmltBN0U1qdMcgTZgQWOFJtLK64tD6ufO+bja1QDwFLo9aWByfiDnc+s2m4SeFiAReGAsgXJtLh77d6wf5sJITCbaCxi8CIF12VPiKs3yaNFHEAHELa+LpHiruczC7Xaf0hvuX1/FWtBI6fpyISe0T/GWDQURxoIVpDv81A== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040470)(2401047)(5005006)(8121501046)(3002001)(93006095)(10201501046)(3231023)(944501075)(6041268)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123564045)(20161123562045)(6072148)(201708071742011); SRVR:MWHPR07MB3469; BCL:0; PCL:0; RULEID:(100000803101)(100110400095); SRVR:MWHPR07MB3469; X-Forefront-PRVS: 0548586081 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(979002)(366004)(39380400002)(376002)(346002)(396003)(39860400002)(199004)(189003)(4326008)(8656006)(81156014)(316002)(81166006)(5009440100003)(53416004)(50466002)(50226002)(16586007)(8936002)(16526018)(47776003)(68736007)(66066001)(48376002)(36756003)(69596002)(25786009)(107886003)(42882006)(2950100002)(106356001)(5660300001)(51416003)(52116002)(386003)(59450400001)(53936002)(6636002)(6666003)(105586002)(97736004)(305945005)(7736002)(8676002)(6116002)(3846002)(2906002)(478600001)(72206003)(6512007)(76176011)(6486002)(6506007)(1076002)(42262002)(969003)(989001)(999001)(1009001)(1019001); DIR:OUT; SFP:1101; SCL:1; SRVR:MWHPR07MB3469; H:Pavan-LT.caveonetworks.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; MWHPR07MB3469; 23:XBJq5rWZ3EJcKbQixgx2v8QhRheWarpIYWO2YAc0P?= =?us-ascii?Q?t5UfSl9/D+m9HKxNmrIrR5w30gJ+mzIXh92lm6SKD5l+MR38I3N4PFzdIUCw?= =?us-ascii?Q?ma2ESFZsdD88IUEFxuCHUym86RXx0cl4OmcC7uJfX5quOsRX7sPLh4a44au7?= =?us-ascii?Q?baw8B5ea7/oIPCiDNzMX2lZTRfYthUF7rpIAoazo92lcKHZR6r+B38PAIA+r?= =?us-ascii?Q?hgUk5ItNhAESfG/H8tIInoDss3YnQ7PiN9vYYnLSEleBwdpQ5tkuAAvTBl5q?= =?us-ascii?Q?m3Dls2IbckW3SJJOyWr3vPJADztpUk7vmlPk5mSk3I3BszwmBABTG1Jaan1n?= =?us-ascii?Q?k8Ezs509BC+j/OvMIQQi0oN9xVmmf7RcdvZAyFzDlwC7/yG9nHVP9MJpT2Ta?= =?us-ascii?Q?cDIWXjAH2swuDyIW9T30y/XeJi1UJ5whElB82l1gruLmH1xAaidRSUenIFYh?= =?us-ascii?Q?ZiPFnFEShrEuLmC8nejpypvIoTYIvi6escTH5k7ub/gN7J10x15JKnUJbY3E?= =?us-ascii?Q?eJptFfHOd8WPLIIEmnEd+HdStfKjnqAeMi9mg0I/H3M9PUDXr1r5FEIgv797?= =?us-ascii?Q?PBwgOF5IpLeKBaE61lWji/1lGXGH7UfwJ27EE6EpVzqtnFOM3WKfwFIggYwX?= =?us-ascii?Q?GBwt44N2LRkQNosVpeWYhH5ziMCVvm1W1UyrviTM/kHUymdTTE8nf1jL98kZ?= =?us-ascii?Q?uUa5mT3sbEuVER6QwBI7KU8EPx9hXMN3XEU1II7GxvZFSteq7pSfyP4fPzVQ?= =?us-ascii?Q?BoRqkLNSf1Kj118/Vn0YJQE7A6SZy6ZRgaeJpzaActy2+oOX7DmVWsy53cpq?= =?us-ascii?Q?W9BrJ4YcePDYmv+iZpPdn6TXttiHAL5g2IlEenPpLXOtdHyIY6O36ecHBp4h?= =?us-ascii?Q?QXxbA8r252bk7LpEI0IM2KwQz39eyIyl3TlwLBw3qIGLJhuOhvf6gBVeKp45?= =?us-ascii?Q?8s6pmuOdYsWG1aOmNq86SyRzdHDs+Vn6HUZSW1NClaBR8uh0vHDMLUq7uLJE?= =?us-ascii?Q?ff95jZyTVDlGZaqkA4G0JwuoLWVPMhfnYa4bVahCXzY1KVOLogOynmUGaNaj?= =?us-ascii?Q?284N4rIc42CwCRRpXeyoYyMn2FTiZy84rImF2u4jVu3fWVu5qpCcS4Wr/EqC?= =?us-ascii?Q?moR4A9mkZVBV5mJ/XD76DFcxdxx+LhwL5sjDr+CSsntiKSu24ELeK8YeUTCM?= =?us-ascii?Q?quHWA7BSmc9u0TPbV70e/LHftkT+CJdqjBd+YfLtBEI1mxTZ5weK+It9j2VU?= =?us-ascii?Q?RsMmiPTL84PbKaPSyhPZ/0FGxNAYCHJVPmfGHuyUhIRYJjnHWf1A+9weiqZ9?= =?us-ascii?Q?vg9Cu9zJpOyRT4Xm1oR6fEpEychwWW4GRjxNZjncezot3eW8Mgk4HnWKfJro?= =?us-ascii?Q?8/PFiQBvcqhG0OMNn5Qp4bMpD4=3D?= X-Microsoft-Exchange-Diagnostics: 1; MWHPR07MB3469; 6:6ca8+VC993BsqfHx+GEx3lK/bDDJreGJkC2deREdXV3eHE5f/InsCykSjg7yX8cBZzhthIcfHy4wPKx2OFT8y/4pOMYDL0t+5HqQPcOi4FtCVodznxenmFm0eSNs9kDtRWejC0396Nd7D/fZq8suGL/ew7zNDxQuMXSFZ2/7sPDGBi6GmVh5AV8V8//v33y81TT+/nvOwTFmPT+L5Rg0bvQbZE8KleRSqA6c7kXBz7mTbtSr/9g2yxs/v+ski0pLLmexMy+X71JgOop/EPVPjgaBHyKErlK8xhox1Gd5FYYpLKyuK3WboZTHDT59izxbUtg5LYmlxh1gagHzUdGAiNw0Xldi+TFLUjQySDSmsXE=; 5:mGGZvir/ptENIXQRbpL4nCK2RlFPTOxl00/bWQpPDIymiizA0muB244eDqVfqrs+ipj2IDjgqBmnyLKAWqijLX6jcD89pOgP0Jvc88/DQVfQsqAn/VGfXUQWWzY6VZ8KdVN4eVu4KQcRNzUfXb+DrXPTl5GQ4IQkTGihThaxdZU=; 24:Te0z0Nm+Dv9AXH9BY40auGVzPRP7dnETawnNDPkAa+hBZJ4es8PVz8qCY5wIBSvNvj3pfQyuSdU3fvCr8+3838Z3jzbNDnpnEqvLEzQsRd8=; 7:gC7wBWeR4VZbL83IsP1NhqmTQO58PUoHPAgvK3PV8lLaU3cEoQQQINBY52mYnk8BEO/50LZvkHAFOJxgs/tGnKfVc2f4hIVmxN/OuQ0ezFK4DeLeecRFEP1wuONg4jN2C5zw8LGTv+Xh/4ddKH9EugTwcGH2Qf3xrEBX2Pd/8lxC7QGDzUbZXlAdCg8/WIcavGH6CogSPkWBkDXl+p0IJ3aKXb5Q9uPtCgJayMG7aNQdgBxZDSvY8DmjBVh4aXez SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Jan 2018 11:10:42.4551 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 174cdd40-a108-47c7-60c1-08d5581acb91 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR07MB3469 Subject: [dpdk-dev] [PATCH v2 03/15] examples/eventdev: add framework for caps based pipeline 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, 10 Jan 2018 11:10:46 -0000 Add framework to support capability based pipeline. Based on the capability of event device and probed ethernet devices the optimal pipeline configuration can be chosen. Signed-off-by: Pavan Nikhilesh --- examples/eventdev_pipeline_sw_pmd/pipeline_common.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/examples/eventdev_pipeline_sw_pmd/pipeline_common.h b/examples/eventdev_pipeline_sw_pmd/pipeline_common.h index 1dbc01f16..00721ea94 100644 --- a/examples/eventdev_pipeline_sw_pmd/pipeline_common.h +++ b/examples/eventdev_pipeline_sw_pmd/pipeline_common.h @@ -34,6 +34,22 @@ struct worker_data { uint8_t port_id; } __rte_cache_aligned; +typedef int (*worker_loop)(void *); +typedef int (*consumer_loop)(void); +typedef void (*schedule_loop)(unsigned int); +typedef int (*eventdev_setup)(struct cons_data *, struct worker_data *); +typedef void (*rx_adapter_setup)(uint16_t nb_ports); +typedef void (*opt_check)(void); + +struct setup_data { + worker_loop worker; + consumer_loop consumer; + schedule_loop scheduler; + eventdev_setup evdev_setup; + rx_adapter_setup adptr_setup; + opt_check check_opt; +}; + struct fastpath_data { volatile int done; uint32_t tx_lock; @@ -47,6 +63,7 @@ struct fastpath_data { unsigned int sched_core[MAX_NUM_CORE]; unsigned int worker_core[MAX_NUM_CORE]; struct rte_eth_dev_tx_buffer *tx_buf[RTE_MAX_ETHPORTS]; + struct setup_data cap; } __rte_cache_aligned; struct config_data { -- 2.15.1