From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 3803E45A2E;
	Thu, 26 Sep 2024 00:39:13 +0200 (CEST)
Received: from mails.dpdk.org (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id A54B04025D;
	Thu, 26 Sep 2024 00:39:12 +0200 (CEST)
Received: from NAM11-CO1-obe.outbound.protection.outlook.com
 (mail-co1nam11on2078.outbound.protection.outlook.com [40.107.220.78])
 by mails.dpdk.org (Postfix) with ESMTP id 92990400EF
 for <dev@dpdk.org>; Thu, 26 Sep 2024 00:39:10 +0200 (CEST)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;
 b=bHSKSrXu9xIRb6jU+/FZG63CVXdTGHIw9OIsGYlXKbe7HtMbILGxPB2MZQEW+Uw9mKcbKRz2f7g6PtgPlFN+MLLr5HhUQi9LTGna/t6PXOCUMiaqteWpWBzn5wbyXRwrDrng5zO3Fkgov2ZM30q38lA7DSBSk0oeCHhOVeWRaS+8AYH0np1zxhFp4bcbcHFjYL6LrQdfQnhRd73KKNFukRsnFPTZmwzhZ/3QmcrG5wXAUMqaNClr7xoPB1v4yHLSJMO3f/O3kgV2c/i7NdA4X3f60ld+nap0uUYIulTlAHY4UFmUyqxauvK5dwB+Gw7W6vsasVTBUHg8hJ4HZqf9TA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; 
 s=arcselector10001;
 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=lH35gjojE1TelkAg2pIVBCOoLo3EO+Voyp/I6E+PiPw=;
 b=S9TgZ3DTOYBCahhL5iMP1q3T+zvIRx24ATNfgJYI0C1QlaNLYgi88DO7451arVsmRT5WdkM4abQg/0ZBOMEVjaf/MS/CfVUoFYQTW010qMqYEfQwMblA89SAbsaI2cGtqLthr3ZfqXmmps41zS6lYYM3OVll6L4KFaIPwqpHXA/tM9FsRvKBh7Tp1o+jYZRR2+0GeEsaCT+CRzL9ecOyP4SrUcNrU01XdJOjAtey3JfI7K/j09Ye+Vt13a4FSAvVvXJbF0Umu4FICQlbaZrbbV8/qpgWP0vXBZXPeurPx/U4mMdI8txV6sqnHYl9eocaUw9W815W5jkIqqBupIHnaA==
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=lH35gjojE1TelkAg2pIVBCOoLo3EO+Voyp/I6E+PiPw=;
 b=4O1oLtzDMtsOJE8xt+PDGx0Ex1fGACKi65JDw6yqmFXNcGlEHN9DJ93oCmjApSfHKhCdMI++ZnO7LhdIX1YUbXrMfte//fidIlIsI4SXZrF2I0QHULo+n+mEMGnVrLmaT6G5sJMQl9dpfgGN+L4m2kwmTGKcuKKQ4pMvMg0K+xg=
Authentication-Results: dkim=none (message not signed)
 header.d=none;dmarc=none action=none header.from=amd.com;
Received: from SJ2PR12MB8830.namprd12.prod.outlook.com (2603:10b6:a03:4d0::9)
 by CYYPR12MB8990.namprd12.prod.outlook.com (2603:10b6:930:ba::9) with
 Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7982.25; Wed, 25 Sep
 2024 22:39:07 +0000
Received: from SJ2PR12MB8830.namprd12.prod.outlook.com
 ([fe80::c3eb:df02:eaa9:2055]) by SJ2PR12MB8830.namprd12.prod.outlook.com
 ([fe80::c3eb:df02:eaa9:2055%4]) with mapi id 15.20.7982.022; Wed, 25 Sep 2024
 22:39:06 +0000
Message-ID: <f8c89c52-a783-45f3-aa3c-9aa6c8786f2e@amd.com>
Date: Wed, 25 Sep 2024 23:39:00 +0100
User-Agent: Mozilla Thunderbird
Subject: Re: [PATCH v4] net/zxdh: Provided zxdh basic init
To: Junlong Wang <wang.junlong1@zte.com.cn>
Cc: dev@dpdk.org, wang.yong19@zte.com.cn
References: <20240910120020.4031035-1-wang.junlong1@zte.com.cn>
Content-Language: en-US
From: Ferruh Yigit <ferruh.yigit@amd.com>
Autocrypt: addr=ferruh.yigit@amd.com; keydata=
 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 8Zk=
In-Reply-To: <20240910120020.4031035-1-wang.junlong1@zte.com.cn>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-ClientProxiedBy: LO4P302CA0018.GBRP302.PROD.OUTLOOK.COM
 (2603:10a6:600:2c1::14) To SJ2PR12MB8830.namprd12.prod.outlook.com
 (2603:10b6:a03:4d0::9)
MIME-Version: 1.0
X-MS-PublicTrafficType: Email
X-MS-TrafficTypeDiagnostic: SJ2PR12MB8830:EE_|CYYPR12MB8990:EE_
X-MS-Office365-Filtering-Correlation-Id: b1a226a5-a36d-4045-a4ca-08dcddb2dd0b
X-MS-Exchange-SenderADCheck: 1
X-MS-Exchange-AntiSpam-Relay: 0
X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|366016;
X-Microsoft-Antispam-Message-Info: =?utf-8?B?RDB1OTZzVDJTSEJtV3JycUZhMDFZcHIvUDlqVmtkbmxhbjlBSG01MkpMR1Bp?=
 =?utf-8?B?cHJINFVwM0ZublM5YjJnOE1aMWdkQmZaemtNYzlncXFBTDNDQ0hnQUFZQjFu?=
 =?utf-8?B?NXBBUTNkL2JmL0IrU0E5eGUyTjFieHQxVFlmVjVKeENHb2F4WnVSTmdtaVd4?=
 =?utf-8?B?M0kzNXJxZ0k3VjRJc0c2TEo3cHhNYUt5VmRtdlp0QWVJWnVDdEtrZ1c1b1pT?=
 =?utf-8?B?YVZtellXSUtxZlJ5RVJJOTQ2ZUt2bVZGRGxKNlRGS21vcDFtYkxIY25SZGJK?=
 =?utf-8?B?YkQwOHZYTWpoSnA2cjArZnZHckU5cThGNUwrTTBrTERiR0lWcWVPeDlqdDk1?=
 =?utf-8?B?SzhIQWhBTi90UVA3cWc4aldSUDhaOHgrbHpSM0pDY1NqRkJ4dE14WW5YSmZy?=
 =?utf-8?B?UDEyN1B2Z3ovUk1KejcyVVVoRDR2QUdJcVBpZ201L0IwMWlNK0RybHR1bVFK?=
 =?utf-8?B?VS96VU10OXdtTzIweENKaWxHRHFyQnN0L2R0UDYvR2lMK2tUNSs5bzRRTkxy?=
 =?utf-8?B?VzZxSmIvanlaRkNEY28rei9mOGYzbUNEVHpFaWxkOTk2bWc5bW1sSExRWkRz?=
 =?utf-8?B?YVQ2V1AwVkxmZER5aFNRWC9tUUNsaC9TUzNBUk14V3NWUzVtOHpPeGNHR1lZ?=
 =?utf-8?B?ZWNDbW9aeElPb2pXVHJtQmdmWTRhV3ovSDA0eHp0Nnpocy9IeWhFRjJNd3Bn?=
 =?utf-8?B?ZERXM25JanFzalRNZkZDWXpIK3duTDEyZXdVY3d0ZzFIMVVjY2l5YVltSWRV?=
 =?utf-8?B?dXRMYVY1aVJmelhjZnI5eGwvVmxlcXgyMkppN053OTRuNlZaZ09kZlZObW9z?=
 =?utf-8?B?bkJrQnNXUFhkeUI4WUNieTVHVHU5QlJXU2VHbCthN2ZvZlNSUHdPeCtTOTlB?=
 =?utf-8?B?WmFWNzJGZHc0ejYvZzFxaVd3YUxKMnJiNFZsZFExOHlYWGpQY0cvdVFVTHQy?=
 =?utf-8?B?UFNLUkU4Y0EvNWhncGhJUHlUSjN1WFNYckdWakNadWlQRkxKMCt0LzE3eCtH?=
 =?utf-8?B?cUcreFZoeUluclRpTS9KTVptOGFYaGdsWUZldU9QMzJ2K2xvdFgzMUZ6UDhI?=
 =?utf-8?B?MEd5NzJOTWVtUWFUVm1INDQxd0RGcjlyZUlFSloyc1V4QnFUaHR3azMvdkhu?=
 =?utf-8?B?UXRjUkVqTWVHSzVqeUdzaldRMXRUeU9TSkpkT1FWMWk0S1QwbU9ic3JVaGw1?=
 =?utf-8?B?TXE2OXRiUU9MMXliZW5zMVo3NEZmMVZVajhtVVJUZ3UxN2ExNWF1RSs4bTRI?=
 =?utf-8?B?SHArNFVlcyt4c0M5V0xSSVV1K1ZDdFBmUENHRHNiSy9zbCtMcEJ3YS9UcW9V?=
 =?utf-8?B?VEtzRHM1SjJwb0JlMThQTWNjOHh1V0M3NEJ0aktJY0Y2UW53V25iekVqR3NV?=
 =?utf-8?B?bnAwdGVmdTFIL0czTHF3a0c1Ym1wN3BZZ0YvdXI4N0J1Z20wd0w4TXpsNGs3?=
 =?utf-8?B?ZWpyanBsN2lNaXpFVW1WYjB5UXdpM3liTWlud1pYZ0hIMjZTQmZjek9tYXRU?=
 =?utf-8?B?V00wU0RPemN1OEVtc0dUOC9zSFBlcmxjSXhWUzMwWG1WMGsra3pxS01aZmxy?=
 =?utf-8?B?OWhnV2FrT2FPYnoxUEtFYSttb3JPNlNOTG1Vc0FmNjY5YmR5Vm1CWTBwL3k0?=
 =?utf-8?B?WCtrcDl4TTdXMkZzQnhzNlZiT3dTTnprcTBjc3ZnZ0dyQzZlRXhnb09uSGJz?=
 =?utf-8?B?eGEzUGZ2eWsxNWVybGk0L2ZrQ2xDTUtuTWkrZHU0T3g4RWVzYnVhenZBPT0=?=
X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:;
 IPV:NLI; SFV:NSPM; H:SJ2PR12MB8830.namprd12.prod.outlook.com; PTR:; CAT:NONE;
 SFS:(13230040)(376014)(1800799024)(366016); DIR:OUT; SFP:1101; 
X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1
X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UDNseklSazYwOVo3a1lNZ2JLTVZ3a0ovaGhTdmNzSnlqd1ZSeE5pZHVJOWNV?=
 =?utf-8?B?d2xYZm9iVVFxVXVHUHVrUkl3dE9lalQzUnhCd1puNmhteHgyV3JvbWxNaVcr?=
 =?utf-8?B?bW9PUVo4QjFlVnJubUxDUVMvb2JOa1lWRG1nelptaEpLT0FhbGllcnBHVGlS?=
 =?utf-8?B?ZE55MDV6TVlzV2c3YVJSaitlUWEzNEttVHV6Nk0zR1lqVGoxa3VtcFYxbTdU?=
 =?utf-8?B?cVFQOFhDYnRpeXhMdFZVbXg4ZnBvbGc0WElscGkzMS9DK2t5V0ZVcmI1M2t1?=
 =?utf-8?B?NUExaVYzMHVFa3UveUxsbjBPL0xDbmtwRnJIVEptQlRaT1RFOXpQOUUzbGI0?=
 =?utf-8?B?ZUprRlJ4bVFkdFkrWjMxMkFYU1FlV3ZvbWd1dG9USGtEUk9iYVg1Ym5rM0E5?=
 =?utf-8?B?TmphNVkzdGdZRzEzZGUyMlJPaDJhUE0wcjlGaUtXZllOM3g3eDVLNFFLOTNH?=
 =?utf-8?B?bERnYVVVMUNlaE5Fay9PdW91VlVOTmJnOUpnWmtaV0J4dlJVS1VsR1NqWStz?=
 =?utf-8?B?VEFIRnVVVnBrcWFzYWt4bFZ3MkJ4YndLU0pxaHZKMFN3aEpyY1VIRC9JMi9h?=
 =?utf-8?B?ZVRTTzZMRFBZL1IwMU5WNHpXWmcvWVBmNzdLSjFxcGhSNGxJb1FwT2E3Mldy?=
 =?utf-8?B?VlU4WUlLaWVUUFcwUmhxUi95dyt0ekVWTVhmdnBXVjFDRzIwbTRKajNaR3o3?=
 =?utf-8?B?czF4SERDd2E2VnBrS3NMQ2VETG5KbUZMUUxnL2x0ekp2TmdYcHArSm1Ydlpk?=
 =?utf-8?B?WkJUTkVya0JTeEZ5RFpTOEwyT2FBSnV3TW1EUUJtOW1YMFdRL2pWeHMvQzUx?=
 =?utf-8?B?bThSYWxZaHRXSlpyaXN6anRQT2RYK2JFc1l3YU1obVY1UGxDNmxuZmJsS2w0?=
 =?utf-8?B?bVRJOXAyRUVsQ09HRVBHSGczVE1scmhNd1k4VVR2Ly90QzJ2SmN6czVMTkl5?=
 =?utf-8?B?bmZJTitTaTgzc2h0Y1pKTkIyM01iWEplQjRYelFMSVdzdEJydWtINzY1YmlV?=
 =?utf-8?B?dWt1djJBZWU4SlZzZ2VGTXlmZkpMVUVBSDF2b0hyRDNUem9ZN2xLa2k2M1Fl?=
 =?utf-8?B?d01XNENobVhSNHU2V0tEeVkwMHRIcUZ5dzdvVGRRVDRyYlk1akFUcTEwTDVD?=
 =?utf-8?B?emlCczJpajB3OEpzL2ZpRnBiZ254bk5RZi9HVnRyV3o4UGtzS2sxMnAxWkk0?=
 =?utf-8?B?NmFzWU5zZnRQSVE4OGZYUlNpWFJKbW4vVWsySWVaU3lYMnZhVHd5dVBCTFBM?=
 =?utf-8?B?bmR3ajhub2lkQk1hbC9uWXljVFJSZ3BUaDdwdmxKakNrVlB2dWNzVVRTSmUr?=
 =?utf-8?B?NFdFc2JzUnB6NytPUGtmVllDZ2NPaTRPK1Y5WDdqdXpaK203ZldjQldGc3FM?=
 =?utf-8?B?c2lxNGI1QTNmcmFTQTJ4a0JxK2l2MHFJWUxnS3FVODdLalBnek1EQnlkR0ZV?=
 =?utf-8?B?Y05EWTBMcUt1ZStqUmllTmxZMmN6bnhPZjhvUWNyZXBQaVJEbEllbHJHMDQw?=
 =?utf-8?B?M0JNam5sbUVXQUNEcU8rZzhiMURYajgvTUtBS2hLUTVuOURtQzlRSm1Ga2Zu?=
 =?utf-8?B?UnVkQnBTVEdWVlBxdURDT0dpVXJQVWZHa0RZQ1FEbDBsVmgzS0RIbHA4RnJR?=
 =?utf-8?B?d0p4SHM4emsxUlEzc0Q0eVkwRjUvQlFFWm00Y09GOVdIdjUyNWxNSUF3RkQ2?=
 =?utf-8?B?NEswS2ZwL21hM1p4V3kwZ2VsMUpNMXJaK0p6MjR0R2xtMU8xM3hEZ1poZitl?=
 =?utf-8?B?RW5vb0hRVTZyNTVza2JVbE9FRXdWckFjNG5Sd0IvM3V3L1o3SUtGQXRadm1I?=
 =?utf-8?B?UThybDR1L0N5RWZMeVQrZDRibStBNE5hN3pvL1FqbDBNZGs2b2ZnZDRLK3ds?=
 =?utf-8?B?RmVnOU4zK2xVeTBjWlJ5R3RnSFE4NEZBTlFUS3B4L0x5a3ZDWXlnakx1dnRx?=
 =?utf-8?B?OUk5ZFRGUmlmZXlZbHFMSmR5bGM5bEhoR3hva0N2TzBZNEthZ1NncHVkdnRl?=
 =?utf-8?B?ZldNVnlTLzFlYWVHVXp2aHNjOWJSL29tQTI3T1BNVndSTmVvTkp1MXlDWHlH?=
 =?utf-8?B?K2FVb0tIVFpnUnN1SG0wUVFVbDFKcVQ4Z29TQXNGcm5iTTlkNDdKK3F3cEVF?=
 =?utf-8?Q?Yw44tes6CYo406XxzmqpfYeJM?=
X-OriginatorOrg: amd.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b1a226a5-a36d-4045-a4ca-08dcddb2dd0b
X-MS-Exchange-CrossTenant-AuthSource: SJ2PR12MB8830.namprd12.prod.outlook.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2024 22:39:06.6383 (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: z868SLuTGlpKhSrRPCesQevyIkMBBZiJ24ry9ikyyJcxYtY4SnOGLNGNZhw9TTwS
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CYYPR12MB8990
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org

On 9/10/2024 1:00 PM, Junlong Wang wrote:
> provided zxdh initialization of zxdh PMD driver.
> include msg channel, np init and etc.
> 

Hi Junlong,

It is very hard to review the driver as a single patch, it helps to
split driver into multiple patches, please check the suggestion on it:
https://patches.dpdk.org/project/dpdk/patch/20240916162856.11566-1-stephen@networkplumber.org/

Also there are errors reported by scripts, please fix them:
./devtools/checkpatches.sh -n1
./devtools/check-meson.py


> Signed-off-by: Junlong Wang <wang.junlong1@zte.com.cn>
> ---
> V4: Resolve compilation issues
> V3: Resolve compilation issues
> V2: Resolve compilation issues and modify doc(zxdh.ini zdh.rst)
> V1: Provide zxdh basic init and open source NPSDK lib
> ---
>  doc/guides/nics/features/zxdh.ini |   10 +
>  doc/guides/nics/index.rst         |    1 +
>  doc/guides/nics/zxdh.rst          |   34 +
>  drivers/net/meson.build           |    1 +
>  drivers/net/zxdh/meson.build      |   23 +
>  drivers/net/zxdh/zxdh_common.c    |   59 ++
>  drivers/net/zxdh/zxdh_common.h    |   32 +
>  drivers/net/zxdh/zxdh_ethdev.c    | 1328 +++++++++++++++++++++++++++++
>  drivers/net/zxdh/zxdh_ethdev.h    |  202 +++++
>  drivers/net/zxdh/zxdh_logs.h      |   38 +
>  drivers/net/zxdh/zxdh_msg.c       | 1177 +++++++++++++++++++++++++
>  drivers/net/zxdh/zxdh_msg.h       |  408 +++++++++
>  drivers/net/zxdh/zxdh_npsdk.c     |  158 ++++
>  drivers/net/zxdh/zxdh_npsdk.h     |  216 +++++
>  drivers/net/zxdh/zxdh_pci.c       |  462 ++++++++++
>  drivers/net/zxdh/zxdh_pci.h       |  259 ++++++
>  drivers/net/zxdh/zxdh_queue.c     |  138 +++
>  drivers/net/zxdh/zxdh_queue.h     |   85 ++
>  drivers/net/zxdh/zxdh_ring.h      |   87 ++
>  drivers/net/zxdh/zxdh_rxtx.h      |   48 ++
>  20 files changed, 4766 insertions(+)
>  create mode 100644 doc/guides/nics/features/zxdh.ini
>  create mode 100644 doc/guides/nics/zxdh.rst
>  create mode 100644 drivers/net/zxdh/meson.build
>  create mode 100644 drivers/net/zxdh/zxdh_common.c
>  create mode 100644 drivers/net/zxdh/zxdh_common.h
>  create mode 100644 drivers/net/zxdh/zxdh_ethdev.c
>  create mode 100644 drivers/net/zxdh/zxdh_ethdev.h
>  create mode 100644 drivers/net/zxdh/zxdh_logs.h
>  create mode 100644 drivers/net/zxdh/zxdh_msg.c
>  create mode 100644 drivers/net/zxdh/zxdh_msg.h
>  create mode 100644 drivers/net/zxdh/zxdh_npsdk.c
>  create mode 100644 drivers/net/zxdh/zxdh_npsdk.h
>  create mode 100644 drivers/net/zxdh/zxdh_pci.c
>  create mode 100644 drivers/net/zxdh/zxdh_pci.h
>  create mode 100644 drivers/net/zxdh/zxdh_queue.c
>  create mode 100644 drivers/net/zxdh/zxdh_queue.h
>  create mode 100644 drivers/net/zxdh/zxdh_ring.h
>  create mode 100644 drivers/net/zxdh/zxdh_rxtx.h
> 
> diff --git a/doc/guides/nics/features/zxdh.ini b/doc/guides/nics/
> features/zxdh.ini
> new file mode 100644
> index 0000000000..083c75511b
> --- /dev/null
> +++ b/doc/guides/nics/features/zxdh.ini
> @@ -0,0 +1,10 @@
> +;
> +; Supported features of the 'zxdh' network poll mode driver.
> +;
> +; Refer to default.ini for the full list of available PMD features.
> +;
> +[Features]
> +Linux                = Y
> +x86-64               = Y
> +ARMv8                = Y
> +
> diff --git a/doc/guides/nics/index.rst b/doc/guides/nics/index.rst
> index c14bc7988a..8e371ac4a5 100644
> --- a/doc/guides/nics/index.rst
> +++ b/doc/guides/nics/index.rst
> @@ -69,3 +69,4 @@ Network Interface Controller Drivers
>      vhost
>      virtio
>      vmxnet3
> +    zxdh
> diff --git a/doc/guides/nics/zxdh.rst b/doc/guides/nics/zxdh.rst
> new file mode 100644
> index 0000000000..e878058b7b
> --- /dev/null
> +++ b/doc/guides/nics/zxdh.rst
> @@ -0,0 +1,34 @@
> +..  SPDX-License-Identifier: BSD-3-Clause
> +    Copyright(c) 2023 ZTE Corporation.
> +
> +ZXDH Poll Mode Driver
> +======================
> +
> +The ZXDH PMD (**librte_net_zxdh**) provides poll mode driver support
> +for 25/100 Gbps ZXDH NX Series Ethernet Controller based on
> +the ZTE Ethernet Controller E310/E312.
> +
>

Can you please provide a link for the product?
There is a link in the prerequisetes section below, if that link is for
product please move it here.

> +
> +Features
> +--------
> +
> +Features of the zxdh PMD are:
> +
> +- Multi arch support: x86_64, ARMv8.
> +
> +Prerequisites
> +-------------
> +
> +- Learning about ZXDH NX Series Ethernet Controller NICs using
> +  `<https://enterprise.zte.com.cn/sup-detail.html?id=271&suptype=1>`_.
> +
> +Driver compilation and testing
> +------------------------------
> +
> +Refer to the document :ref:`compiling and testing a PMD for a NIC <pmd_build_and_test>`
> +for details.
> +
> +Limitations or Known issues
> +---------------------------
> +X86-32, Power8, ARMv7 and BSD are not supported yet.
> +
> diff --git a/drivers/net/meson.build b/drivers/net/meson.build
> index fb6d34b782..1a3db8a04d 100644
> --- a/drivers/net/meson.build
> +++ b/drivers/net/meson.build
> @@ -62,6 +62,7 @@ drivers = [
>          'vhost',
>          'virtio',
>          'vmxnet3',
> +    'zxdh',
>  ]
>  std_deps = ['ethdev', 'kvargs'] # 'ethdev' also pulls in mbuf, net, eal etc
>  std_deps += ['bus_pci']         # very many PMDs depend on PCI, so make std
> diff --git a/drivers/net/zxdh/meson.build b/drivers/net/zxdh/meson.build
> new file mode 100644
> index 0000000000..593e3c5933
> --- /dev/null
> +++ b/drivers/net/zxdh/meson.build
> @@ -0,0 +1,23 @@
> +# SPDX-License-Identifier: BSD-3-Clause
> +# Copyright(c) 2024 ZTE Corporation
> +
> +if not is_linux
> +    build = false
> +    reason = 'only supported on Linux'
> +    subdir_done()
> +endif
> +
> +if arch_subdir != 'x86' and arch_subdir !
> = 'arm' or not dpdk_conf.get('RTE_ARCH_64')
>

Why not check 'RTE_ARCH_X86_64' and 'RTE_ARCH_ARM64'?

<...>

> +/* dev_ops for zxdh, bare necessities for basic operation */
> +static const struct eth_dev_ops zxdh_eth_dev_ops = {
> +    .dev_configure             = NULL,
> +    .dev_start                 = NULL,
> +    .dev_stop                 = NULL,
> +    .dev_close                 = NULL,
> +
> +    .rx_queue_setup             = NULL,
> +    .rx_queue_intr_enable     = NULL,
> +    .rx_queue_intr_disable     = NULL,
> +
> +    .tx_queue_setup             = NULL,
> +};
>

No ops is implemented, so when you run dpdk application when your device
exist, what happens, does application crash?

<...>

> +static int32_t zxdh_eth_dev_uninit(struct rte_eth_dev *eth_dev __rte_unused)
> +{
> +    if (rte_eal_process_type() == RTE_PROC_SECONDARY)
> +        return 0;
> +    /** todo later
> +     * zxdh_dev_close(eth_dev);
>

Please either remove or implements todo comments in upstream driver.

> +     */
> +    return 0;
> +}
> +
> +int32_t zxdh_eth_pci_remove(struct rte_pci_device *pci_dev)
> +{
> +    int32_t ret = rte_eth_dev_pci_generic_remove(pci_dev, zxdh_eth_dev_uninit);
> +
> +    if (ret == -ENODEV) { /* Port has already been released by close. */
> +        ret = 0;
> +    }
> +    return ret;
> +}
> +
> +static const struct rte_pci_id pci_id_zxdh_map[] = {
> +    {RTE_PCI_DEVICE(PCI_VENDOR_ID_ZTE, ZXDH_E310_PF_DEVICEID)},
> +    {RTE_PCI_DEVICE(PCI_VENDOR_ID_ZTE, ZXDH_E310_VF_DEVICEID)},
> +    {RTE_PCI_DEVICE(PCI_VENDOR_ID_ZTE, ZXDH_E312_PF_DEVICEID)},
> +    {RTE_PCI_DEVICE(PCI_VENDOR_ID_ZTE, ZXDH_E312_VF_DEVICEID)},
> +    {.vendor_id = 0, /* sentinel */ },
> +};
> +static struct rte_pci_driver zxdh_pmd = {
> +    .driver = {.name = "net_zxdh", },
>

'driver.name' is already set by 'RTE_PMD_REGISTER_PCI' macro, no need to
set above.

> +    .id_table = pci_id_zxdh_map,
> +    .drv_flags = RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC,
> +    .probe = zxdh_eth_pci_probe,
> +    .remove = zxdh_eth_pci_remove,
> +};
> +
> +RTE_PMD_REGISTER_PCI(net_zxdh, zxdh_pmd);
> +RTE_PMD_REGISTER_PCI_TABLE(net_zxdh, pci_id_zxdh_map);
> +RTE_PMD_REGISTER_KMOD_DEP(net_zxdh, "* vfio-pci");
> +RTE_LOG_REGISTER_SUFFIX(zxdh_logtype_init, init, NOTICE);
> +RTE_LOG_REGISTER_SUFFIX(zxdh_logtype_driver, driver, NOTICE);
> +RTE_LOG_REGISTER_SUFFIX(zxdh_logtype_rx, rx, DEBUG);
> +RTE_LOG_REGISTER_SUFFIX(zxdh_logtype_tx, tx, DEBUG);
> +
> +RTE_LOG_REGISTER_SUFFIX(zxdh_logtype_msg, msg, DEBUG);
>

Default 'DEBUG' log level is too verbose, mostly default is NOTICE.

> +RTE_PMD_REGISTER_PARAM_STRING(net_zxdh,
> +    "q_depth=<int>");
>

Please document device arguments in the driver documentation.

<...>