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 2CA6B43A9A; Tue, 6 Feb 2024 16:50:44 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D6E30402B5; Tue, 6 Feb 2024 16:50:43 +0100 (CET) Received: from mail-ed1-f46.google.com (mail-ed1-f46.google.com [209.85.208.46]) by mails.dpdk.org (Postfix) with ESMTP id EEC294026B for ; Tue, 6 Feb 2024 16:50:42 +0100 (CET) Received: by mail-ed1-f46.google.com with SMTP id 4fb4d7f45d1cf-55ff4dbe6a8so5134525a12.2 for ; Tue, 06 Feb 2024 07:50:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1707234642; x=1707839442; darn=dpdk.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Y4CO8595o8/73enJHcCnOBPkjYb432G9ggl1S2Q5dDE=; b=TE2+RwFAJZNlTOFDq7r3/OtoWRq5pKxKxmTLOOOH1bnvi3MvjW2QxVlB7N5hhGaNRE 6Q1O2J9HXb0SIEGeoBYyhUSaeyIFO2Hy8Dh8FN8ZlwRVzIx1of5BMM63TfUGpB1LZNu8 MGTc7gpGb68uwpqdFBnyuWX39OXCLG6gdgqb0uMD4xYFP2kDb627+9su54noFb8QDftb +3HakEKdXqD/6CojKVpplKAnVIEBtu8a8tkRU9HM/DKmIi5A2i+O+td7T04crFbqy+Vj CVm9l323fiu9AbuXzEN1uXeJJyKWgX/SWehEAZgfDrWyXY75NwxMeXzPlC3AInFEXd6n hFWw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1707234642; x=1707839442; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Y4CO8595o8/73enJHcCnOBPkjYb432G9ggl1S2Q5dDE=; b=d83vyaSKrMuB5Xf5q8bECB1fdwb8vUBgUJpCdIYAWq8KMxoE90vrktex4zZwzDwSv3 bq53CnHypCeKn3mpNVMqp1dXCw09CjjllL8L+hupiv5Uc3VvnuK1sCnT+LOI1erEYZEU Lfaos8o6KBWBWTwNfQ+fijcMDWc7tup8U2y4UphfyRpPZkrtLCVpQ9lGC0xeByMx/J28 oWsNSfshAuDR2hFaSu4w2W0nWoX0QeT1aoN/i6yjOxYVM6t66Iv4oAMr7bNgMkmM92Bn Her+2vh8MxkkGr/Z5kZZyO7+PyNGdF27CnEqBNwXnKSfjcN7VExmNfQr/BENFhRjklbD TinQ== X-Gm-Message-State: AOJu0YxQENoAuBAJR281fdZFCA0QplRew5cbT5txwGR23ZfL902wt4YR O7ltZdrl7Cj5eVa5GHu9CTbOUJd0YtTYDAAhJ4IYpj95heh/7yyxHK3/aRaZoEctPNYfUd7HWGK jgF8NtmqAFUo/o4uW0buayQ6QLSFXOBZOWuw= X-Google-Smtp-Source: AGHT+IHlNbuWpFR5Nz2QYXf+45xKOT7f8xdwx/rd+fKqLE476gxTLrCgceYCdlKNdP6eLPuMBmOZZ93XX9O5fFGRR1o= X-Received: by 2002:aa7:da0d:0:b0:55f:92f4:15b5 with SMTP id r13-20020aa7da0d000000b0055f92f415b5mr2044825eds.23.1707234642295; Tue, 06 Feb 2024 07:50:42 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Prashant Upadhyaya Date: Tue, 6 Feb 2024 21:20:30 +0530 Message-ID: Subject: Re: PMD for non PCI device To: Bruce Richardson Cc: dev@dpdk.org Content-Type: text/plain; charset="UTF-8" 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 Tue, 6 Feb 2024 at 19:43, Bruce Richardson wrote: > > On Tue, Feb 06, 2024 at 07:36:16PM +0530, Prashant Upadhyaya wrote: > > Hi, > > > > I have a usecase where I have to evaluate writing a DPDK PMD for a non > > PCI/e device doing the ethernet packet i/o. > > > > Wanted to know if the above usecase is supported by DPDK infra and any > > pointers on how one should go about writing a PMD for such a usecase > > if supported. Would appreciate any inputs. > > > Hi, > > yes, such a usecase is supported, but the specifics of how to go about it > will vary depending on the type of PMD it is. DPDK already supports a range > of other types of PMD, for emulated, or SW backed PMDs, e.g. net/pcap > driver, and drivers for various SoCs which don't use PCI. For the case > where the PMD is backed by real hardware (or an emulated device that > appears to a VM as a piece of hardware), you may want to consider writing a > "bus" driver for DPDK to support probing of the device. For non-HW > devices, the "vdev" bus may be what you want to use, where probing is not > done and devices are created in response to cmdline arguments on init, or > via C APIs later in the app. > > Regards, > /Bruce Thanks Bruce, this is helpful. Is there any PMD in DPDK code that you can refer me to for any SoC which does not use PCI (the usecase of backing by real hardware), that would be great to follow. Regards -Prashant