From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id EA88E43B4C; Mon, 19 Feb 2024 16:24:18 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 7BFE440278; Mon, 19 Feb 2024 16:24:18 +0100 (CET) Received: from NAM12-BN8-obe.outbound.protection.outlook.com (mail-bn8nam12on2040.outbound.protection.outlook.com [40.107.237.40]) by mails.dpdk.org (Postfix) with ESMTP id C86F840275 for ; Mon, 19 Feb 2024 16:24:16 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SDIVpFf60UFpJyEYawQyEmF3rhvPBsSqO92KdHYe/cjUe/PURyTgh2pxqbivQI1lJ+Lfm1hgCwbQFfyACha1GK9SR5yYkJ/ZIJIy5hUP/YxT5TpHfhSq+QI1TpAT9tStEw/UiKpgetKAA6IqLQr2DQnmKuJfHKKKuiyARssYnp0H3P4A8kHfvY13BMecC/Wme26e98SUYHX+FvcPlcBnTtrw/ftwdi8CzDdILRg8C/490sGV0YU11e6DpDPPCiSBsYLHtcFWX0JRZNWZokWNZwz69HBUKd2IV1Q7noFWnfI0lBtEfO0kfXHv5S6l5BEDENek0s/ApTNazHbT/BeUkg== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=lRIoeol8iiVhlZkNV7yOrHiPu406rkwujQYFBjl0Up0=; b=hOoi9d4yn8uDg/k6Aa+9jHD131hl+JB3hWYcsLnQDKAQpbVp/TkX297tenHQraYhMeoeoGpRvqr9OCrH5aFvKMtEdOYWFo2U4LOkAupDE0jwaI4Tokxe+KWzsm7y0rIYtsMZ2Odtf2ThZmkETALh6RB5l/0J9P7vZM6Joyt8I/xFBCa97Y9yaG/5jnZdzTISxKGz0CcrgaQM/r5xrpFOkzFgCvPrF0nunTBJHkwsyfXKmyWisKF27xqUjDW40xw5XL15J9gSGi8qwvEBwN0e5GoDjgFZOLU23/CPoryJ4OC0B7TQCqwKBrcDJSmNQzvhJv0svwVXYVntXstFdCVpUA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lRIoeol8iiVhlZkNV7yOrHiPu406rkwujQYFBjl0Up0=; b=MouM8C0XppjPNm0Z0kY2CeBLHR3sTQS18Lzc3dOnYx2yguNz9N93KK9BnvwYKVExdZH0PoC1acuHv/2dD4wsvNqcT2E7hTGjhirhfcbbS7sVYOx2CbFF4aAIlhN+00ejlz4YYQhMDeGY7bqBXI/GeM8rnQ78cRm78mDgGtWR3Qk= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; Received: from CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11) by MN2PR12MB4438.namprd12.prod.outlook.com (2603:10b6:208:267::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7316.19; Mon, 19 Feb 2024 15:24:14 +0000 Received: from CH2PR12MB4294.namprd12.prod.outlook.com ([fe80::3ec7:6339:1c14:c529]) by CH2PR12MB4294.namprd12.prod.outlook.com ([fe80::3ec7:6339:1c14:c529%5]) with mapi id 15.20.7316.018; Mon, 19 Feb 2024 15:24:14 +0000 Message-ID: <18ed6352-d693-4848-80f9-1665f5ef744a@amd.com> Date: Mon, 19 Feb 2024 15:24:10 +0000 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 3/3] net/ionic: add vdev support for embedded applications Content-Language: en-US To: Andrew Boyer , dev@dpdk.org Cc: Neel Patel , R Mohamed Shah , Alfredo Cardigliano References: <20240216170704.55523-1-andrew.boyer@amd.com> <20240216170704.55523-4-andrew.boyer@amd.com> From: Ferruh Yigit Autocrypt: addr=ferruh.yigit@amd.com; keydata= xsFNBGJDD3EBEAC/M7Tk/DfQSmP1K96vyzdhfSBzlCaGtcxNXorq4fALruqVsD3oi0yfyEz9 4YN8x7py0o9EL8ZdpOX0skc0AMCDAaw033uWhCn0GLMeGRKUbfOAPvL6ecSDvGD7CJIO9j0J eZUvasBgPdM/435PEr9DmC6Ggzdzt8IuG4PoLi5jpFSfcqxZFCCxLUDEo/w0nuguk2FTuYJg B2zEZ4JTBZrw7hIHiFh8D8hr6YA6a5uTofq1tr+l048lbtdFUl8TR0aIExVzE4Z8qKZlcE+9 RQaewjK5Al1jLE4sHdmd3GN+IvgDF3D/fLsi25SKJDeGSdeHkOmaX0qGeM4WKIfU6iARRCiQ N3AmBIxZ/A7UXBKLaOyZ+/i3sE6Wb53nrO4i8+0K2Qwyh6LjTeiJAIjYKN43ppxz3DaI+QwQ vI+uyHr4Gg0Da9EPPz/YyKauSeOZCfCB5gIfICO0j6x0SCl8uQ2nLpjxcZkf0gjcwUzP3h+S 3x6NfDji9YEij0zczW/dcSpGgZ6vsFpPrtnP9ZXy6J53yp0kJtOJoOlkEFFdU2yCZnCDseum CoudmGLZVvS0/DzHDJejq+3kK3FDGktZBOxZIIpal+nFqS7lVgOZc4+huVv3jyhzoAUOEyXA XK5j6o7g8STUY+z33QNnHpdLvecMwuzmvqy0jR54yAbZ64mB9QARAQABzSNGZXJydWggWWln aXQgPGZlcnJ1aC55aWdpdEBhbWQuY29tPsLBlwQTAQgAQQIbAwULCQgHAgYVCgkICwIEFgID AQIeAQIXgAIZARYhBEm7aYjps5XGsPHCElRTPtCKKm/6BQJkdyEEBQkE3meNAAoJEFRTPtCK Km/6UdcP/0/kEp49aIUhkRnQfmKmNVpcBEs4NqceNCWTQlaXdEwL1lxf1L49dsF5Jz1yvWi3 tMtq0Mk1o68mQ7q8iZAzIeLxGQAlievMNE0BzLWPFmuX+ac98ITBqKdnUAn6ig5ezR+jxrAU 58utUszDl16eMabtCu76sINL5izB8zCWcDEUB4UqM8iBSQZ7/a7TSBVS0jVBldAORg1qfFIs cGMPQn/skhy3QqbK3u3Rhc44zRxvzrQJmhY6T1rpeniHSyGOeIYqjpbpnMU5n1VWzQ4NXvAD VDkZ4NDw6CpvF4S2h2Ds7w7GKvT6RRTddrl672IaLcaWRiqBNCPm+eKh4q5/XkOXTgUqYBVg Ors8uS9EbQC/SAcp9VHF9fB+3nadxZm4CLPe5ZDJnSmgu/ea7xjWQYR8ouo2THxqNZtkercc GOxGFxIaLcJIR/XChh9d0LKgc1FfVARTMW8UrPgINVEmVSFmAVSgVfsWIV+NSpG9/e90E4SV gMLPABn1YpJ8ca/IwqovctqDDXfxZOvCPOVWTzQe/ut767W+ctGR1kRkxWcz470SycOcY+PW VRPJd91Af0GdLFkwzZgNzkd6Gyc9XXcv4lwwqBLhWrBhqPYB0aZXIG1E/cVTiRp4dWpFHAFD DcuLldjIw93lCDsIeEDM9rBizGVMWEoeFmqSe7pzGTPXzsFNBGJDD3EBEAC8fBFQHej8qgIG CBzoIEd1cZgPIARlIhRudODXoNDbwA+zJMKtOVwol3Hh1qJ2/yZP11nZsqrP4fyUvMxrwhDe WBWFVDbWHLnqXMnKuUU1vQMujbzgq/4Rb9wSMW5vBL6YxhZng+h71JgS/9nVtzyaTtsOTrJi 6nzFSDx6Wbza2jYvL9rlK0yxJcMEiKwZQ/if4KcOesD0rtxomU/iSEv6DATcJbGXP6T93nPl 90XksijRKAmOwvdu3A8IIlxiSSVRP0lxiHOeR35y6PjHY2usfEDZZOVOfDfhlCVAIBZUZALv VmFOVSTYXeKgYa6Ooaf72+cHM3SgJIbYnevJfFv8YQW0MEAJ/IXE7B1Lk+pHNxwU3VBCrKnA fd/PTvviesuYRkrRD6qqZnINeu3b2DouVGGt2fVcGA38BujCd3p8i7azoGc7A6cgF7z9ETnr ANrbg1/dJyDmkDxOxVrVquTBbxJbDy2HaIe9wyJTEK2Sznpy62DaHVY+gfDQzexBXM10geHC IIUhEnOUYVaq65X3ZDjyAQnNDBQ4uMqSHZk8DpJ22X+T+IMzWzWl+VyU4UZXjkLKPvlqPjJk 1RbKScek5L2GhxHQbPaD76Hx4Jiel0vm2G+4wei8Ay1+0YRFkhySxogU/uQVXHTv63KzQMak oIfnN/V2R0ucarsvMBW+gwARAQABwsF8BBgBCAAmAhsMFiEESbtpiOmzlcaw8cISVFM+0Ioq b/oFAmR3IPsFCQTeZ44ACgkQVFM+0Ioqb/qINhAAtcor9bevHy22HvJvXX17IOpPSklZJAeQ Az43ZEo5kRlJ8mElc2g3RzYCvL/V3fSiIATxIsLq/MDtYhO8AAvklxND/u2zeBd7BkRZTZZX W1V1cM3oTvfx3LOhDu4f2ExQzCGdkzbXTRswSJIe1W0qwsDp+YPekbrsKp1maZArGeu+6FuW honeosIrWS98QJmscEhP8ooyJkLDCCOgEk+mJ/JBjzcJGuYn6+Iy/ApMw/vqiLGL1UWekcTA g18mREHqIR+A3ZvypIufSFB52oIs1zD/uh/MgmL62bY/Cw6M2SxiVxLRsav9TNkF6ZaNQCgn GqifliCEMvEuLZRBOZSYH2A/PfwjYW0Ss0Gyfywmb2IA990gcQsXxuCLG7pAbWaeYazoYYEQ NYmWatZNMAs68ERI2zvrVxdJ/fBWAllIEd0uQ4P05GtAHPdTIDQYp545+TPV7oyF0LfXcsQs SFVZE6igdvkjfYmh+QOrHGZvpWXLTmffVf/AQ81wspzbfxJ7sYM4P8Mg5kKOsaoUdyA/2qVe cMh1CLUHXF1GlofpGbe1lj4KUJVse5g3qwV7i9VrseA8c4VIZewdIjkzAhmmbxl+8rM/LKBH dZUMTzME5PFCXJIZ83qkZQ795MTe2YScp9dIV7fsS5tpDwIs7BZNVM1l3NAdK+DLHqNxKuyO 8Zk= In-Reply-To: <20240216170704.55523-4-andrew.boyer@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P265CA0093.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:2bc::18) To CH2PR12MB4294.namprd12.prod.outlook.com (2603:10b6:610:a9::11) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH2PR12MB4294:EE_|MN2PR12MB4438:EE_ X-MS-Office365-Filtering-Correlation-Id: 47985da7-7c4c-4592-eccd-08dc315ed457 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 6wsgLO1FJOUxaatrCbv5NxJ+xBsj5uIPBWaze3rA0fl0dypo4nhE2UPrQuOP6YnVcNlK90qhGX/fs4/YyuQpY/iQXO9LpAtFQnSZJGdT56zqb4lBBpIW0yn07Av5zPP7+TJ0x1qgwQ1XmX3rSDJoESJS3KUWCDy6c6rsprM8JNmMN6c1QadW5gaUbUReaCyRK0Ffu3zy9snNqY36dAJcjekhofkwvcN/zvKDFBn2SfTkMqpvcveP60HljnYCQpEpQAGnmATbmDPWEoo7trAZWplejatZApNp8HCQfvUnjmeWn9UVbOvGvxrK9ELcrWA/WpLJUMgr1pcwfe6BWVgGA+8hx4UWk5vsf5aUU5Y2tTgFJYntkssBvn82JDSXaZFZwz18c4UgESUS2XTPg9vwTZCUzJkO5cvwOyt8ASCKtl3MToOz1w2bAdZoMwaXei74zh6cX5eTZwv9l208OaL/K3HeIWhDgXkx19YflKhO88tEMOQgjlFnUqw8d9RUAh2PHNAlNalKIj9J5qE5bmP5SayyMYqX1x6HohLKo7kT0mo= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CH2PR12MB4294.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?N1llWWM1emxkWC9oS0p5TTZOYURxc3NUM3g1WjNxcGt5Q0xiNDFVRjcwUll3?= =?utf-8?B?YjdUSS94OWZyb0xCNkZ5V25GcTBFT2liNDVrdlU0WG1DTVB0Y1VCaGYvSDF4?= =?utf-8?B?eGd0cVNUdjBoNDFMOHArdjF2MUtaaWV3SDVWdWR6cTl6SWhiYnNwQWFaSnBE?= =?utf-8?B?ZUFBZ1NJRUZud1N5aEgzYUZTVlFqaUZnV2JlN1NLdFJnNFVVd1FZaWFlUXh5?= =?utf-8?B?ZjRxelVMYWpXSSsrdmZFbDB6N2I0TUorelFVd3hYZEQrTlErcEJVNFBwcEJE?= =?utf-8?B?dC9OeGh1eVhOeEFlRzQwVkg1ekxsaFg1TXZNbkE1NDlsb0wrRWZKRktmM3V0?= =?utf-8?B?TW44V1lhK0Yybjc1ekZEWGNjNDE2SHhES1N2S2lJRm5RM3lJRlhDRjdGZDJi?= =?utf-8?B?RWRick1QbVBzajg0YW1HZkthQlM0bU5PVDJRNUQyOUhxTGRJYXU4RW4waGkw?= =?utf-8?B?WnZNVjVoa3BuWmMrZjZ2U29wRDVtOEhSS3drZEw0WmhicjUvM25JSExJSVlZ?= =?utf-8?B?b1A4TkxUZHhPaVZOYzcxcUo1OGpIOXNzajBMd1hzU0ppY0RYazkvSnJVcXIz?= =?utf-8?B?RjUydFhWajU3ZDJYVFo0T056eUlNR3I1TVF5R3pmUEo5YUhoeWgvb3lGQnk5?= =?utf-8?B?STBJQ2YzYzBzZFdTQ0ZZRUdmclRCTmVjaFR4RGliUzZqL29rZlB6VGJ2d3hn?= =?utf-8?B?K0dGZytxZGVLT1NHQklaNVlTVGtzSUpHN0FKazdTM2IwOEdQOW5tWWtGZTdX?= =?utf-8?B?ekV1bFpLbjBWNjZDekZBUS8zNEd3QlJnQlRWUDBxVkYvY0RSL0VOSHZvbVVF?= =?utf-8?B?MUx6YTlmc3VLM2l2bU5pV1FKaVEvQlJjNVpwYkhwdWhHdGxmRHlCdnhrLzA5?= =?utf-8?B?em9kdkdkMVh5WjJMMzdheHVFV0Y0di9FNDZLSGVZZlprOUFXeGNKU0pyTmlB?= =?utf-8?B?MzdmNjJFc3NOanI2cTNXUWNHVDVWbFBFdy8yb2JiVHVlZkhvb2hpU0hrVUgz?= =?utf-8?B?RXFtSFI0b2tTdWJLYjhJdkN4NU9hK2pYVHR4KzF2K1k3cmFBYS92UVhtVUtJ?= =?utf-8?B?NkpYT1lTc0dpcmtYVWZwanY2TFBjaXkwTkNoZERiSmdNR2JOd0lMa28vME04?= =?utf-8?B?M3RnVDY3UzhUb3h5eGwyNWVsdVQzdk85WHc3d1FRYWlmejdyRFF5ZUhqS09V?= =?utf-8?B?SU9VUmpONHpPenZaTlM2VjVXaVRWQlhSME1HazB4OGlvV3FKTU5QZ1NpdEpN?= =?utf-8?B?dWxHQytqMEx5YSt0R0JLSG9nYmhNVDNzVjJkaXI5cS9SUW53R3RtRlZBbHhh?= =?utf-8?B?dCtJNFRtSWdFc21Ub2l5S0dkREJKSFpWTFY0b2VWNW5iSmx0cnJseFFNam16?= =?utf-8?B?WVJWTEl3RWdDWExpZE5lN0JqNVNZTXJrNDBMdTQ3U0ZNa0tvcUl0Wkx0TVRB?= =?utf-8?B?N2N2anhXcUFDenk2bXYyYStpR2I2VnFBMjhIRFo3ekZ5V29UQmE1eE16M2VN?= =?utf-8?B?RUM5N3NIOUZNL0FCVHhvVWRuUWEyUGFYRmJsejQwc3ovMFJaWWFCUmR3WnVZ?= =?utf-8?B?RjZoeUVJbzAwOTZ5YTNFT1Q0SDZKUXh0amM2ZEtVdUZ5ZWhHK1Uyam82RENt?= =?utf-8?B?WU9JUDE1ODZxMk4yZ0RYK09XblZ3QWVuQ2lOZnpOaWU1SUQ2VXdPN3BRTkM3?= =?utf-8?B?dURiaFhmUS9BZ1FOdW55RlpxSHpONVA4ejVUb29mZ3FmMjdBZm9JN3Zkck5E?= =?utf-8?B?emx4dkVJMlV4VE9FNlFsZE5CWGlGN3AxS3UwenZ2NGYyRFRwejdzL2J3UjhC?= =?utf-8?B?YmRTVjhZSSsxWkI3Qzh6NXh0Z01oQ1R4elQyZmdBWnJzTFB1MnpEbkRVR3Nl?= =?utf-8?B?N3A2TWhDeVdnU1NLT3J5YWlhNll1RHIxN0I1SUMxcWQxb09xZjc0OUhNRkNN?= =?utf-8?B?N0lwUWQvTXBvR3A1NnB4ZzBYdXVUckVHOGhiYWFvenFEeXU2anZTNHRyTWRL?= =?utf-8?B?Y3QvSUtpTWN6aGk4dXhCUUZWdVVlV3dpNUpkY0hSdS9xdkx0MnB1NEx5emFt?= =?utf-8?B?YmY5WlhwVUl3ZVc0QUZjWDJCRkV5SU8xNVN5NWtOOWhzRC9IL0RESndtMlZP?= =?utf-8?Q?d75rrKeTwBr2GxP+Yyvh0f6Mk?= X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: 47985da7-7c4c-4592-eccd-08dc315ed457 X-MS-Exchange-CrossTenant-AuthSource: CH2PR12MB4294.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Feb 2024 15:24:14.1858 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 2ukLSLpFfjGnC0stMX76OKuQjCpAU8K/2F6LnTLgE8tHHbHRvmFYG80YxoJTnoyu X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4438 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org On 2/16/2024 5:07 PM, Andrew Boyer wrote: > Add support for running DPDK applications directly on AMD Pensando > embedded HW. The platform exposes the device BARs through UIO. The > UIO code in the common/ionic library walks the sysfs filesystem > to identify the relevant BARs and map them into process memory. > > The SoCs are named 'Capri' and 'Elba'. > > The vdev device interface code is located in ionic_dev_vdev.c. > > Some datapath operations are #ifdef-ed out to save on resources when > running in embedded mode. > > Some controlpath operations are skipped by the ionic_is_embedded() > helper function. > > Before ringing the doorbell, use an ARM 'dsb st' barrier. The normal > barrier inside rte_write64() is insufficient on these devices due to > a chip errata. > > Signed-off-by: Andrew Boyer > Signed-off-by: Neel Patel > Signed-off-by: R Mohamed Shah > Signed-off-by: Alfredo Cardigliano <...> > +static struct rte_vdev_driver rte_vdev_ionic_pmd = { > + .probe = eth_ionic_vdev_probe, > + .remove = eth_ionic_vdev_remove, > +}; > + > +RTE_PMD_REGISTER_VDEV(net_ionic, rte_vdev_ionic_pmd); > + > +static void > +vdev_ionic_scan_cb(__rte_unused void *arg) > +{ > + ionic_uio_scan_mnet_devices(); > +} > + > +RTE_INIT(vdev_ionic_custom_add) > +{ > + rte_vdev_add_custom_scan(vdev_ionic_scan_cb, NULL); > +} Hi Andrew, My understanding is 'rte_vdev_add_custom_scan()' to add a vdev automatically (via rte_devargs_add()) before vdev scan starts. As far as I can see you are not doing this, why callback is added? Why not call 'ionic_uio_scan_mnet_devices()' within the 'eth_ionic_vdev_probe()'?