From nobody Fri Oct 2 09:19:34 2026 Received: from BN1PR04CU002.outbound.protection.outlook.com (mail-eastus2azon11010035.outbound.protection.outlook.com [52.101.56.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B402E39C63D; Mon, 3 Aug 2026 07:05:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.56.35 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785740721; cv=fail; b=aX4a+3EzE8JomgC7WpkdBc8CRxd8o8hs5pWM6T9VbM9Z/XdjXdCvq3ORUwG3uIk/n8y5it6KO7BowkPIuSZy1rC0S+upCUuUlOIX4gxIOsk5w9ew+hieDSc9gB7lZLewWrMps4CgWELx0c1vgbnKqzvMUkRMRZWteEbGLfr1Mzk= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785740721; c=relaxed/simple; bh=D2So8lSHdRFPx2FqU35YZO/YCFIu5p97lTN2yvI5WGU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=uvLB4b0w+Vuj57fLEn9DTdCIKXQy0nkVpmLSimBtA8cAWjiEXITJpY2jWexJj/FbPBXL7uSZJ9BnxcKhG7Lvo4tu6CMKq9Q/8QMQDgHFgxtisR/Mn1TYmpgWjIMMqH5/WkNqzsuMPmKESKSaImmzpuRuQbimT3WxiPMLeFDUnOM= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com; spf=pass smtp.mailfrom=altera.com; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b=pgOiYOSi; arc=fail smtp.client-ip=52.101.56.35 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=altera.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b="pgOiYOSi" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=GGnCqrTEybUxdad0RShvFKyDxUBatE72K9tE1BzOZa4Onnu41Yk6YhxEbiuyhTostMarT8aQGFtPwWzBqinY2W9VkQmV9tVqxtivRrVwyA/OaN+lEEVZWf64TnnODZklF/IN+VpgcZBN/yQjAWN4B1wr/nsBpTV5m2U8cgGszGaVC/RzQWtWMi9DZvn50vP6voECavAetSmq07odvma+tskuIh+bjx1qIo6T9aolazrc6c5lZrpCn4gqRFj2WQcYJC8ug/MEYkaeSLBwTh/ube3ZsWgxblaK4n/vIsCGNMMjw96AbLrP0OKCD5aeFkGCzbOBU2zKICDezpK0nZUjAw== 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=9CzhwYnTuISBxWmlEwSFh8VN4OkPjbVgBBPoy72sJg4=; b=FgNgwSLtp8bw29WWJqXjOFMRJ0xs6THobcPFfq0ZOstJr3d6Y12fUg8Lvy3hSAk43/OuWb2tUokq19SxmsCgFLQn1T9ckKJ9DddQDsLmdHDZBooqAluDVV854zfRduwAJ8eUkzcXBDU/1Wv6/iHdv2aeCuVYvlx7aQZuTxgJg1wdosvgznCi90oFVgAOYZBtY8VyCASQFWLypMplINhyLPKojxw9/DnHWML3TdRmk2UjQ0mUjZQbhKKgGGO+04QoIv/2an6lxoGWQTgs564W0qcs0P14OjUylbmZQkMfepiyNNoRP1wuPeoCq+zuUz+fgKrawUCTTW7/m95q+l63tA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=altera.com; dmarc=pass action=none header.from=altera.com; dkim=pass header.d=altera.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=altera.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9CzhwYnTuISBxWmlEwSFh8VN4OkPjbVgBBPoy72sJg4=; b=pgOiYOSinESHmqnhVwXIza2Cvy3QvT3z7ZDJjJhFh0EogjBHw/bCzb6ojou9sE6VPkXZHpBWCTKudufHJFUkw05uW2U8+e3l6JacN9P+qoiTSXYx8yk7uJEQEiv7DPUm/kWKjCWtU+L/VDBfLJDJ5kLLUlB9/7goU863FT/FMrwfvNhzX3tOsqa9NCp1UMekBTCHL0ivBF7rES7qzckKUMVvvgJ++nGZuZJKFpjj83/jH5PLkR3Ch5rr5JQuULov+Y3zbVo/TpExuWlYXrMLYhWh8HftEAwUbTA9vI686WXJXTY0i1fZWNGaUouOCqVyC9haYDcYuOQlZKxIJFkPjg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=altera.com; Received: from SJ0PR03MB6964.namprd03.prod.outlook.com (2603:10b6:a03:432::18) by PH0PR03MB989258.namprd03.prod.outlook.com (2603:10b6:510:3bf::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.270.17; Mon, 3 Aug 2026 07:05:15 +0000 Received: from SJ0PR03MB6964.namprd03.prod.outlook.com ([fe80::b965:bfa8:58fb:e775]) by SJ0PR03MB6964.namprd03.prod.outlook.com ([fe80::b965:bfa8:58fb:e775%4]) with mapi id 15.21.0270.017; Mon, 3 Aug 2026 07:05:15 +0000 From: muhammad.nazim.amirul.nazle.asmade@altera.com To: netdev@vger.kernel.org, devicetree@vger.kernel.org, dinguyen@kernel.org Cc: andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, alexandre.torgue@foss.st.com, peppe.cavallaro@st.com, joabreu@synopsys.com, mcoquelin.stm32@gmail.com, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH net-next 1/3] dt-bindings: net: snps,dwmac: Add snps,pagepool-tx-buf-quirk Date: Mon, 3 Aug 2026 00:05:11 -0700 Message-ID: <20260803070513.4657-2-muhammad.nazim.amirul.nazle.asmade@altera.com> X-Mailer: git-send-email 2.43.7 In-Reply-To: <20260803070513.4657-1-muhammad.nazim.amirul.nazle.asmade@altera.com> References: <20260803070513.4657-1-muhammad.nazim.amirul.nazle.asmade@altera.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BY1P220CA0023.NAMP220.PROD.OUTLOOK.COM (2603:10b6:a03:5c3::11) To SJ0PR03MB6964.namprd03.prod.outlook.com (2603:10b6:a03:432::18) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6964:EE_|PH0PR03MB989258:EE_ X-MS-Office365-Filtering-Correlation-Id: 8912e0a6-3aa2-4b12-56ad-08def12d918b X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|23010399003|1800799024|366016|376014|7416014|11063799006|56012099006|3023799007|10067099003|55112099003|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: uaSyz8LOfEyVf/ZWq43joNsmfGu1KkQr7s+rml2Zz6PwTvbRk02IgK80U577e3kbUAecUAJlaqYuwcL30byPEHHZI/ItUB2qZaWGfp+h08Z0YsIYohp1k/b44wtLGoqc74ZIUJaNVr1Q6VTWzb0KwaF+RqbMlvCgo6rorRto2/vebaDN5q9v7jisxeA/7oJqgd8zWd+sJvMq8zuop7HxHSfQRy6ro7YXPHmj324siQX612LL5lLzFzCuO2y/YZ9wexi0wKP6DrIuU8+N/Q3Hj3sWT8cEUCGOpmNulLFOx8TM4J/X8cnzmHJxRn5s77uyMS4E0OYWGeePPRQByipVxj3arK+t+5y+TfRHD1XVx/vIzmf201RAallWW4zclgW2urptMeLqxjqXILX76g+03dX8UUq3xLpt25yLzplYLkK2mnyEpAt2fqNeWyHBeOkaiKYngZvlLhGy9pwDvslCkyw7YtTBmn4U0Kjgl/Nc4ADHmwMVLBxZPq9GmTHzLw0egPAvHPym7V00Ply6nkep17E3QQlErFqomFBniCL8cJxY9JhF7RqmQG/KlJnXPBa12W0l/aCcCtkKoJbCPUTrTCUey9sE0vtVvxAv4cB69SkcDywXnHuCn0QOc1ycC9fEoacm9jxJwLRadvs38EnBjxZjzfudlg0u19cdjnbsIbY= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6964.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(23010399003)(1800799024)(366016)(376014)(7416014)(11063799006)(56012099006)(3023799007)(10067099003)(55112099003)(22082099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 2 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?g+HCFcl4PwJG+394GafquplvfyvtnTiKwKHd+bjebDwyRIybpTULN9Ddo5zT?= =?us-ascii?Q?pRRl1lprYp2XxkWvt/yjjNqDs3tSbGKun53xDJptRQGIvyAp49cJPse9eNJf?= =?us-ascii?Q?hDrjnk7DCIz6sCkwHxIm1aJgb5Oczh9bOl0RKT211MnI8Mzg+M2EKgdyVY9E?= =?us-ascii?Q?eTHCEOHh6+51MuY98iedWy1ds0phdqr+MPR8QqY4hVkZvbSZVg/NjpiXzvZg?= =?us-ascii?Q?TnAY33LrEFSzwsJ0lqj31hrJNWOFeebH+oS6K0xX0PO7/8ZAumCyChN1wKpt?= =?us-ascii?Q?nfmnttzMbtOayFtJs8eOADrhpVO+7X+PQUzsyYcel4q3jkN7N+oo7qxlUsdD?= =?us-ascii?Q?Ps+JGSJHG0mdBaapE0G1Hgy8J+Bwbbus4wo+yVPvq9g7MoOm40Mcd5zg/JFd?= =?us-ascii?Q?efYAf+qnmoL+Qx+7KMnETcN9Rib/Fl8Ales10UVacBLt3UlbH9s1Wcxa1wV4?= =?us-ascii?Q?T3SLWuQsswUE87k1ytiN08iuxiYjtTGthfbt8PtV53em5oxQGQVsbZQ3GOR2?= =?us-ascii?Q?tt6MIN3qZBIjaV29dGZKgbnQMyJ7uuvFo85+vub6DMqRrrT9CM9IdxUmvyKX?= =?us-ascii?Q?8BRLl+t4pkXawm2Xi1Qzoy9JJwXG0Zn5vEbhc3C1vzcoa/Q7Tu0qka2BM1Kx?= =?us-ascii?Q?yjZGf817KW9rKR6TSuH8ym2rsUaeljjH/Ei4ehE8+54hzNCQwpJiVdjWR1hI?= =?us-ascii?Q?u0Mw343Gwzee/eYgMIEUOGxbefdYWmHLVO7qab42CeJphKtv5nNXkj9HUmYG?= =?us-ascii?Q?fLIKh0h435jDHtVNv3AQRgS5cmGez2Um71+ZOC3cvhRK/Aj/X4ElpPNSjt2E?= =?us-ascii?Q?KUHhgJTW5jD9iWJPsWMdY+LJW9gQEYzPdcskjH0Jn3lDe/TlRgcWG8c/6g7/?= =?us-ascii?Q?pRDuGWRTU/W6LgWQrCuxfnQNuis3Jjh7p06B0x2mm9r8mSGOKdppuWqvqlIO?= =?us-ascii?Q?nFNKf856NZ8p5aTrw2PP9cU8/7PsyP+wyb65hYJCI8OObHr+8XUH5Qj3DDk6?= =?us-ascii?Q?pelPlic3+MC13ecoAmyG85F7w4wNDOahYTUZ+GlunTLlnL3LVXBpCaEavVuI?= =?us-ascii?Q?hAMEPlZYcsmeTM4C1WDbNf0kSmNEqouz/I9UxpdMssjg35rPACjiuFJ9WcZM?= =?us-ascii?Q?CGozFz0iSyKbdGmyTt9iFNme1FmhX92NLZWBkZ1ngbsG3DU9HIv/D1RSNJj3?= =?us-ascii?Q?2axs+27qpSznWpBYHnBY33h2BxIQ/yvOVjyTe7pid1k3hA08hYa6p2MJD8t5?= =?us-ascii?Q?PUuDhx0u+rN/RX/5h8lHs0Aj3/PuVZw4lMhrFnMyaNBPGlXsnygxVqg+uVJw?= =?us-ascii?Q?M7kH/CR66j4rGM9j9m+o1NyWUL0KhfySgL9JalZ22tSjVrMKr/JBUc4beKP3?= =?us-ascii?Q?1f5IZRfK9/YZ+WW+0Wwps+1BVWkmNZ9KPhP3bio96MFgmvVg8xLjvv5lEwF2?= =?us-ascii?Q?4diFcKYHWlJZY7ZI1OawMa0PTLb7VbNXk2epp/c3UeDs1UW0UwoyX024L3Sv?= =?us-ascii?Q?vDCQZB4Ykj7/CWdI2KI0m7DaDBexOwGWXgTE0ldNJ6nCxtf+E1EzAUqat6Fb?= =?us-ascii?Q?IscZ31SviakoC49EfX7nY8LS2pbN1P39TYNxjLu4lFiAMFe5CUdpvfgF1DTJ?= =?us-ascii?Q?QKaPb/94mVNvOJIMhRN8cgOm5SmHaX0ZqnHnB727uGG0/A6BdOaJcsaEBuSn?= =?us-ascii?Q?yr0uWyjiQxtGdx544oLpuyTv84sndbH7mpASIQgs8xpMcqGwFg1DbVtgZdBH?= =?us-ascii?Q?KgeqB6XTEMiHIfOrSHTD2tn4FWKKr0ATfp+0yL/j0O/4pObP0DZl50CqM4EC?= X-MS-Exchange-AntiSpam-MessageData-1: mCDb1ElWC0SuNg== X-OriginatorOrg: altera.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8912e0a6-3aa2-4b12-56ad-08def12d918b X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6964.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Aug 2026 07:05:15.2559 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: fbd72e03-d4a5-4110-adce-614d51f2077a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: xD3QakFdCxQg3DwbpsrocFR/Dz3A5dKUAwsSXefiNTDXrYcoT/Zh4jEl7TfDDGDcVeomoRhBJCRnJqbaSKMF1PJ6RDCXUA/GnwvzZVMjoCX1IWoCghqVeqiOMV1+Zr2RmafCVhmXQrL8d5e/VjhIpQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB989258 Content-Type: text/plain; charset="utf-8" From: Nazim Amirul Add a DT flag to enable use of page pool buffers instead of streaming skb buffers for transmit. This avoids IOMMU invalidate wait time on platforms where that cost is high, with the trade-off of copying data from the skb into dma-mapped page pool buffers. Signed-off-by: Nazim Amirul --- Documentation/devicetree/bindings/net/snps,dwmac.yaml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Documentation/devicetree/bindings/net/snps,dwmac.yaml b/Docume= ntation/devicetree/bindings/net/snps,dwmac.yaml index 2449311c6d28..73045511446f 100644 --- a/Documentation/devicetree/bindings/net/snps,dwmac.yaml +++ b/Documentation/devicetree/bindings/net/snps,dwmac.yaml @@ -545,6 +545,14 @@ properties: Enables the TSO feature otherwise it will be managed by MAC HW capab= ility register. =20 + snps,pagepool-tx-buf-quirk: + $ref: /schemas/types.yaml#/definitions/flag + description: + Enable use of page pool buffers instead of streaming buffers for tra= nsmit. + This avoids IOMMU invalidate wait time on platforms where that cost = is + high, with the trade-off of copying data from the skb into dma-mapped + page pool buffers. + mdio: $ref: mdio.yaml# unevaluatedProperties: false --=20 2.43.7 From nobody Fri Oct 2 09:19:34 2026 Received: from BN1PR04CU002.outbound.protection.outlook.com (mail-eastus2azon11010035.outbound.protection.outlook.com [52.101.56.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6730E39CCF3; Mon, 3 Aug 2026 07:05:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.56.35 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785740728; cv=fail; b=pTlJTxZtSAKDUQ9tvr4on9QjB/8H9MIEQ+tilqg7s/WUiT1RtygBBubwV8iaKX9b5nWnlGUZGqnNf4d9AXFIrjeUHw6ro+Slbn1ryu/f2Ksqdi/EaHiF096HDjDQ58G4v+jIBNxdhnRLycnOkt7oHdW57mcNGsZb3JPHWUpIPXs= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785740728; c=relaxed/simple; bh=Rp6ufia8m8y5KcpI9lJdKmORCMrzONYB9kxxFtWxTRE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=O22W2sA5iqSy87qOizjwHSM4eeFdAlTrgVP95RS5XFfcvhFcNnngFyOQedwnlEUxlGaqR1abVLsoOzlbtwV3Xsy8b1LI7WVzZDTZeEl3BaTEU/AwtHAcjWh89CW//dL+yjmyNvddozQzbk2KNAyoXXF6N3YMxcQmpoc/QRj8RJc= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com; spf=pass smtp.mailfrom=altera.com; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b=G7+gZH8Q; arc=fail smtp.client-ip=52.101.56.35 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=altera.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b="G7+gZH8Q" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=JxlbpGo7lVWDT2vFRX30c8tw/OMi6RKnJM+jXXUelYLXlip92BDb4XOFLtSFeI8sWTgNVfuYtWiZNtY27+B8wA3vwei9kniSdqcELUrNg9CUta5sZ0k5GCxggKuW5/5HxoWLP6nZXERqaJeaT9ZCCm7xtriv5HSywilgxms0c+7CHq34auZ3PbHtMwcCIlfy7SBbs4lD9ziBfoPWfxLy9Cy26pWiRMe3GWVDt49ovgq9iqbELNzYVXwhTh+tyueHXgFNmFb0R8DYco0Le6xmLlEZfBo9QYUsk/Rhcu3rpdo3fFSEv+vYUtkMAitmiiK3bH+eZeXtSmGOcEfvrO2Seg== 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=xhXPGb5IzFmIFkuZ24btTv/hhmvrZMgr6oALvbVMQA0=; b=kHRxDAw8wAuAsDpGQEHacSAgSnACK0JvMKXRLiO/2+QosnI1xODZEQNmwCpe42eHYXnfejZqspNKRB+rKB0a2Iqo/Y+ZBWFbYyQ170UYWeenQNqlcLnvUaO2I0S1t2Y9lTnqkYmpjZdeQRpCGbsGmrJfv6a6nhFDFVQiEkPwWhWMA7x+JI0NmCia2gk1Vf67upqaaIbgyS9cnVJXbfJ7itWn3/6mcLL0YGNntWZDH8wtEx8NPyaguV+qk1oOedAxOscYZtXDrOWo+eFg0Oz0XXTmJMUVcQVtYuKYBuwmHMKxR0fkLj1fa+aR3PyKj6LQknZNxVoCpMjp/Li5vJXozA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=altera.com; dmarc=pass action=none header.from=altera.com; dkim=pass header.d=altera.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=altera.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xhXPGb5IzFmIFkuZ24btTv/hhmvrZMgr6oALvbVMQA0=; b=G7+gZH8QQIteMCF7C8IqEXo3cPQoHo8+9TeYuuEm3WEaBZ/lCpZV+WT+nSO9PuZC6owVc7EbHiFvuoWHw8l/BC8CQgoImKv1v8c5r/cyS/kdGmtZL31AyVbjYJOU2EZs65p+/YQqGGtySW5epkQUEVOgcJ0O7kyU+ew0xKqAfFwyeFgily2/fZlAZkw6KrIOBk2NsobQ29qV3j3ZbBkDw8U0AG/GqQga7R/CEq96a8KSnbtbFszCoMUpeMvZWJBztJ7o6r8mOHtBd8WqHVbYZoh4lqceuhqqBd23UiHohnXjNfXqN3QMTY/sIs4Qi9eS2jDYnI1PlJEfWipfPMQCyA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=altera.com; Received: from SJ0PR03MB6964.namprd03.prod.outlook.com (2603:10b6:a03:432::18) by PH0PR03MB989258.namprd03.prod.outlook.com (2603:10b6:510:3bf::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.270.17; Mon, 3 Aug 2026 07:05:16 +0000 Received: from SJ0PR03MB6964.namprd03.prod.outlook.com ([fe80::b965:bfa8:58fb:e775]) by SJ0PR03MB6964.namprd03.prod.outlook.com ([fe80::b965:bfa8:58fb:e775%4]) with mapi id 15.21.0270.017; Mon, 3 Aug 2026 07:05:16 +0000 From: muhammad.nazim.amirul.nazle.asmade@altera.com To: netdev@vger.kernel.org, devicetree@vger.kernel.org, dinguyen@kernel.org Cc: andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, alexandre.torgue@foss.st.com, peppe.cavallaro@st.com, joabreu@synopsys.com, mcoquelin.stm32@gmail.com, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH net-next 2/3] net: stmmac: Use pagepool instead of streaming buffers for Tx Date: Mon, 3 Aug 2026 00:05:12 -0700 Message-ID: <20260803070513.4657-3-muhammad.nazim.amirul.nazle.asmade@altera.com> X-Mailer: git-send-email 2.43.7 In-Reply-To: <20260803070513.4657-1-muhammad.nazim.amirul.nazle.asmade@altera.com> References: <20260803070513.4657-1-muhammad.nazim.amirul.nazle.asmade@altera.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BY1P220CA0023.NAMP220.PROD.OUTLOOK.COM (2603:10b6:a03:5c3::11) To SJ0PR03MB6964.namprd03.prod.outlook.com (2603:10b6:a03:432::18) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6964:EE_|PH0PR03MB989258:EE_ X-MS-Office365-Filtering-Correlation-Id: 1155ebbe-69ad-47b4-56d3-08def12d91f2 X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|23010399003|1800799024|366016|376014|7416014|11063799006|56012099006|10067099003|55112099003|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: lkaCR7oMFxW6u0yyN/gBZtGDPMnuCf7TbdlmYg3I9l94ZQib+jgQbiAnynAIK0fgvhJUUknoUSv0xidnhRah9NVyVXNfXN6mHGSPlstJg3oESTGEwYWHAthiMw2tH4/EMcknAt24OcTunzRRaJ6vEk4Rm7ZXRis9DlhCknxhJ7hYLMkE3oYzzxOrUzN4CleXHG3WPP7B5W9o0lh+1X6OVY/J0hPqi7ovLO/N/epVjCX0IZ4tmlcBTa4JjuWSaOfS4UgAr48SCEUMYdvOskjJMc/q9f2XB2L4bACONgaKt3Uj+5P4SpaNlhHYAyopp87YuLW8y3OjVdOo43z8buJ8PHgqaDOHR1mZYh9KD78IHtrUBqZbGgwjYJLjuD0/81BJR/P3S6ZUVQN9XGdYGGuFavb6rfMvKMWdUaTDqKV+cku04sc5qI7+UFAcjLWILYdQTUPCMMIj6ess58VVDZxgnguOntmgbE/umWaSULE2A6PyKYbfGOOdM42/F3im4D0RJdx4OelXPMG7VoZaFKDkIz2tstMlKgdo78NxK9KDgOvy89dbbhLqJnLa1713VsEZoQQuOYno4Ovs6I1Q9BNa6g+FJMmIr7O9QBORgo4zoXOQQlg8KwZ9/bqPwHx5t52Md9gQslIXxfQEOKYfTYJDqHBd6QHmVGPSLcvdEb4/7rk= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6964.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(23010399003)(1800799024)(366016)(376014)(7416014)(11063799006)(56012099006)(10067099003)(55112099003)(22082099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 2 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?ETuiOSJ3glcdXpggxUBuVHbUWKyba0J3XtF0JwJnhGFBicILfWdNsqLwLiKp?= =?us-ascii?Q?FPjXUSqEix5XclwwLc+b5rlEylolgoG+p6oB/sTHx3LrE7nTh18vuoeJwXLi?= =?us-ascii?Q?q0CF3NCHU1720SaAxb+JipSnBJmLuEdpfzEdNklPFxVTGfisotWQot7n22Xf?= =?us-ascii?Q?HvlgE+/lnZhy4WKvXOxB/c8b6xmL3ViIwx2qTwd4lfGJ/3pXe5ghwBGI/3yQ?= =?us-ascii?Q?HY6/2CYPKpO5U+LfyMso9kLcbivUGl3kAv2MuT+ky2iuSMQUSTFlvtAFeNEI?= =?us-ascii?Q?TvDOYJ5Y8Lil3aMWFuz+0fi+2q0hBsCY/4/NViZfpnJ8FXLUE1L8q5zmAfXa?= =?us-ascii?Q?yQzpZ89XQMSwZ9cvQBCiYmQWpcBITVis6pIZQzDwSe7zUfJQR3WM/27zAlfD?= =?us-ascii?Q?fo2nT5WX6MNR7POnBRK6PE/D6aToDV0c7NSOCnkH+jMxLY4QTRF5ueCePHAf?= =?us-ascii?Q?HHWqE0w+xBH95+aiinDuvhaSu+ZGhV2a99ifMurcrectT/olG3YO5mqTflbZ?= =?us-ascii?Q?fqJOHXe7iexmdfFRy4FFwIzF79A0bad9egpa9VTNQ1kYrhYwsHhq1qm+Xd8+?= =?us-ascii?Q?QjX1Ksx++u5ld6a3tyUwAxXVTaeFdMQDi7cPjLbYR7IKbe6k+WcJ/2wwS5zg?= =?us-ascii?Q?HXlKCdB//lbUwlp67dTYcsNpF8Jfb8oVmC4MA17OazhvkR+BVV20aWJqYjog?= =?us-ascii?Q?hthGm/Eo3FVZmC5+lCXGpE1kWOtkzbPzX+ZZWgJkeO23VEa8fynNitK1gHbN?= =?us-ascii?Q?VcY1whQ/NgxkTlDh6LdUb9k+9M6XpZcZxg7TCV8kV5xGeSzJSJj+TcDis79L?= =?us-ascii?Q?w2hiU2hl4AevEdkowldvgBCo+ZPP0YpFB35zbKWgW7i4kwBD5eNMVQXyVOSf?= =?us-ascii?Q?R3HmruHGfdwT4szBpRa6K6u8CgGxhgnUB1r0o8WGCA/EHOoJfr0V273iENaV?= =?us-ascii?Q?KxluRYABQiHj+Nx978BnORUGW9vj1PiGdxr9cNrYnTxtstimAzzwH4vIBNa3?= =?us-ascii?Q?3X1BPJq9qBGBAewdjBprGmlz9mGu/u2WZIYCwpEgdvQQa6aTWkA2pLwApHHj?= =?us-ascii?Q?6DPMU0r/ru4h5GcKFxpfYpN1IOaFK9AY47BB25v6G/99IBcAt6a3VrDZHzyG?= =?us-ascii?Q?TUmOFibG7JunzrvE+FzFMzGWeYBMgo4+vlmUMyjRjAsgeXpB+fB+LPUeSam1?= =?us-ascii?Q?4O18BZx+4lMcHzAPnYhIrOrle0l8b6Sztybk5fvVMY4nUDjK1f+BLarM/Pq0?= =?us-ascii?Q?VThckYBf7dGlRRBOnfEF12/xpQOMf84MPcuI5/otG53NfPEfDC7MJcu2nCft?= =?us-ascii?Q?lWkGLRrEW5XDye9Q5mcMURj1U6EQ2c0hvdzG9tWtpq6oUIt1Z/2EZ5xmzy2B?= =?us-ascii?Q?UDD6PpdX4zshNlFcHVyyu0VtpwSASKNVjUpbTCLdimgQ+Yagf8VeNVPtvsIt?= =?us-ascii?Q?Vv7UrmGMLZOrYTyFyKPAlyXVgFzquXYPruFhFydlYWQ2QLbzBnswq7jL1Ety?= =?us-ascii?Q?n9NPeJR6TtC+qpbZBOf0/+4OVqvx+jnQFkjUVgQp/lw2a06s0+kGsPgblgMi?= =?us-ascii?Q?v0yFHgT9AiW27Kaj++ibEN8zSul9dHMTawocl+6d91qlgLJTpfCeazV4TpXq?= =?us-ascii?Q?g5L/tdmoGph6XT8NSs2xSIzB2efOdYpcQyLLKJaBdNtNBeuQU2dRKzhD2COp?= =?us-ascii?Q?+aYJWZEaSm+uHtwO21BtD+yluX3nvHsCzJyoxVas+1HwFkSgcctLCGAxw7oA?= =?us-ascii?Q?haPW0y7RNBZ3TXd5U/ttceFHxifqTKfzdVHj9pivsoAuQiy1XOT5eLizEhMl?= X-MS-Exchange-AntiSpam-MessageData-1: BjaNlfIsEPX90A== X-OriginatorOrg: altera.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1155ebbe-69ad-47b4-56d3-08def12d91f2 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6964.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Aug 2026 07:05:15.9698 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: fbd72e03-d4a5-4110-adce-614d51f2077a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: k6iE2t78j9o8v0WHiXd6mJ9Bq/bUvxtc3J7FbXiUxJgX6GaiSR4svZZ7o87HyF4qpr4LbIPTuFpyxVRFMjIcEtRK/neZxzBPPLbYWoruUuuOX/u7oXox8gmgkse4lMMxGasfuH7cr3gdUXcxGNYeUQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB989258 Content-Type: text/plain; charset="utf-8" From: Nazim Amirul Use page pool buffers instead of streaming skb buffers in stmmac_xmit when snps,pagepool-tx-buf-quirk is enabled. As page pool buffers are recycled, the overhead of dma map/unmap for each transmit can be avoided. There is a trade-off of copying from the skb into the page pool buffer, but this helps where the copy is cheaper than dma map/unmap (for example with IOMMU invalidate cost). Currently page pool buffers are only used for single-fragment transmit in the non-TSO path. Signed-off-by: Nazim Amirul --- drivers/net/ethernet/stmicro/stmmac/stmmac.h | 3 + .../net/ethernet/stmicro/stmmac/stmmac_main.c | 75 ++++++++++++++++--- .../ethernet/stmicro/stmmac/stmmac_platform.c | 2 + include/linux/stmmac.h | 1 + 4 files changed, 70 insertions(+), 11 deletions(-) diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac.h b/drivers/net/eth= ernet/stmicro/stmmac/stmmac.h index 8ba8f03e1ce0..093c052b4908 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac.h +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac.h @@ -41,6 +41,7 @@ struct stmmac_resources { =20 enum stmmac_txbuf_type { STMMAC_TXBUF_T_SKB, + STMMAC_TXBUF_T_DMA, STMMAC_TXBUF_T_XDP_TX, STMMAC_TXBUF_T_XDP_NDO, STMMAC_TXBUF_T_XSK_TX, @@ -49,6 +50,7 @@ enum stmmac_txbuf_type { struct stmmac_tx_info { struct xsk_tx_metadata_compl xsk_meta; dma_addr_t buf; + struct page *page; unsigned len; enum stmmac_txbuf_type buf_type; bool map_as_page; @@ -65,6 +67,7 @@ struct stmmac_tx_queue { int tbs; struct hrtimer txtimer; u32 queue_index; + struct page_pool *page_pool; struct stmmac_priv *priv_data; struct dma_extended_desc *dma_etx ____cacheline_aligned_in_smp; struct dma_edesc *dma_entx; diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/ne= t/ethernet/stmicro/stmmac/stmmac_main.c index ee44bd6f4d48..4aa6b1d1507b 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c @@ -1712,7 +1712,10 @@ static void stmmac_free_tx_buffer(struct stmmac_priv= *priv, =20 if (tx_q->tx_skbuff_dma[i].buf && tx_q->tx_skbuff_dma[i].buf_type !=3D STMMAC_TXBUF_T_XDP_TX) { - if (tx_q->tx_skbuff_dma[i].map_as_page) + if (tx_q->tx_skbuff_dma[i].buf_type =3D=3D STMMAC_TXBUF_T_DMA) + page_pool_recycle_direct(tx_q->page_pool, + tx_q->tx_skbuff_dma[i].page); + else if (tx_q->tx_skbuff_dma[i].map_as_page) dma_unmap_page(priv->device, tx_q->tx_skbuff_dma[i].buf, tx_q->tx_skbuff_dma[i].len, @@ -1735,7 +1738,8 @@ static void stmmac_free_tx_buffer(struct stmmac_priv = *priv, tx_q->xsk_frames_done++; =20 if (tx_q->tx_skbuff[i] && - tx_q->tx_skbuff_dma[i].buf_type =3D=3D STMMAC_TXBUF_T_SKB) { + (tx_q->tx_skbuff_dma[i].buf_type =3D=3D STMMAC_TXBUF_T_SKB || + tx_q->tx_skbuff_dma[i].buf_type =3D=3D STMMAC_TXBUF_T_DMA)) { dev_kfree_skb_any(tx_q->tx_skbuff[i]); tx_q->tx_skbuff[i] =3D NULL; } @@ -2201,6 +2205,8 @@ static void __free_dma_tx_desc_resources(struct stmma= c_priv *priv, =20 kfree(tx_q->tx_skbuff_dma); kfree(tx_q->tx_skbuff); + if (tx_q->page_pool) + page_pool_destroy(tx_q->page_pool); } =20 static void free_dma_tx_desc_resources(struct stmmac_priv *priv, @@ -2335,12 +2341,32 @@ static int __alloc_dma_tx_desc_resources(struct stm= mac_priv *priv, u32 queue) { struct stmmac_tx_queue *tx_q =3D &dma_conf->tx_queue[queue]; + struct page_pool_params pp_params =3D { 0 }; + unsigned int num_pages; size_t size; void *addr; + int ret; =20 tx_q->queue_index =3D queue; tx_q->priv_data =3D priv; =20 + pp_params.flags =3D PP_FLAG_DMA_MAP | PP_FLAG_DMA_SYNC_DEV; + pp_params.pool_size =3D dma_conf->dma_tx_size; + num_pages =3D DIV_ROUND_UP(dma_conf->dma_buf_sz, PAGE_SIZE); + pp_params.order =3D ilog2(num_pages); + pp_params.nid =3D dev_to_node(priv->device); + pp_params.dev =3D priv->device; + pp_params.dma_dir =3D DMA_BIDIRECTIONAL; + pp_params.offset =3D 0; + pp_params.max_len =3D num_pages * PAGE_SIZE; + + tx_q->page_pool =3D page_pool_create(&pp_params); + if (IS_ERR(tx_q->page_pool)) { + ret =3D PTR_ERR(tx_q->page_pool); + tx_q->page_pool =3D NULL; + return ret; + } + tx_q->tx_skbuff_dma =3D kzalloc_objs(*tx_q->tx_skbuff_dma, dma_conf->dma_tx_size); if (!tx_q->tx_skbuff_dma) @@ -2836,7 +2862,8 @@ static int stmmac_tx_clean(struct stmmac_priv *priv, = int budget, u32 queue, tx_q->tx_skbuff_dma[entry].buf_type =3D=3D STMMAC_TXBUF_T_XDP_NDO) { xdpf =3D tx_q->xdpf[entry]; skb =3D NULL; - } else if (tx_q->tx_skbuff_dma[entry].buf_type =3D=3D STMMAC_TXBUF_T_SKB= ) { + } else if (tx_q->tx_skbuff_dma[entry].buf_type =3D=3D STMMAC_TXBUF_T_SKB= || + tx_q->tx_skbuff_dma[entry].buf_type =3D=3D STMMAC_TXBUF_T_DMA) { xdpf =3D NULL; skb =3D tx_q->tx_skbuff[entry]; } else { @@ -2884,7 +2911,10 @@ static int stmmac_tx_clean(struct stmmac_priv *priv,= int budget, u32 queue, =20 if (likely(tx_q->tx_skbuff_dma[entry].buf && tx_q->tx_skbuff_dma[entry].buf_type !=3D STMMAC_TXBUF_T_XDP_TX)) { - if (tx_q->tx_skbuff_dma[entry].map_as_page) + if (tx_q->tx_skbuff_dma[entry].buf_type =3D=3D STMMAC_TXBUF_T_DMA) + page_pool_recycle_direct(tx_q->page_pool, + tx_q->tx_skbuff_dma[entry].page); + else if (tx_q->tx_skbuff_dma[entry].map_as_page) dma_unmap_page(priv->device, tx_q->tx_skbuff_dma[entry].buf, tx_q->tx_skbuff_dma[entry].len, @@ -2922,7 +2952,8 @@ static int stmmac_tx_clean(struct stmmac_priv *priv, = int budget, u32 queue, if (tx_q->tx_skbuff_dma[entry].buf_type =3D=3D STMMAC_TXBUF_T_XSK_TX) tx_q->xsk_frames_done++; =20 - if (tx_q->tx_skbuff_dma[entry].buf_type =3D=3D STMMAC_TXBUF_T_SKB) { + if (tx_q->tx_skbuff_dma[entry].buf_type =3D=3D STMMAC_TXBUF_T_SKB || + tx_q->tx_skbuff_dma[entry].buf_type =3D=3D STMMAC_TXBUF_T_DMA) { if (likely(skb)) { pkts_compl++; bytes_compl +=3D skb->len; @@ -4742,12 +4773,14 @@ static netdev_tx_t stmmac_xmit(struct sk_buff *skb,= struct net_device *dev) bool enh_desc, has_vlan, set_ic, is_jumbo =3D false; struct stmmac_priv *priv =3D netdev_priv(dev); unsigned int nopaged_len =3D skb_headlen(skb); + gfp_t gfp =3D GFP_ATOMIC | __GFP_NOWARN; u32 queue =3D skb_get_queue_mapping(skb); int nfrags =3D skb_shinfo(skb)->nr_frags; unsigned int first_entry, tx_packets; struct stmmac_txq_stats *txq_stats; struct dma_desc *desc, *first_desc; struct stmmac_tx_queue *tx_q; + struct page *tx_buf_page; int i, csum_insertion =3D 0; int entry, first_tx; dma_addr_t dma_addr; @@ -4814,13 +4847,33 @@ static netdev_tx_t stmmac_xmit(struct sk_buff *skb,= struct net_device *dev) } else { bool last_segment =3D (nfrags =3D=3D 0); =20 - dma_addr =3D dma_map_single(priv->device, skb->data, - nopaged_len, DMA_TO_DEVICE); - if (dma_mapping_error(priv->device, dma_addr)) - goto dma_map_err; + if (!(last_segment && priv->plat->tx_buf_quirk)) { + dma_addr =3D dma_map_single(priv->device, skb->data, + nopaged_len, DMA_TO_DEVICE); + if (dma_mapping_error(priv->device, dma_addr)) + goto dma_map_err; =20 - stmmac_set_tx_skb_dma_entry(tx_q, first_entry, dma_addr, - nopaged_len, false); + stmmac_set_tx_skb_dma_entry(tx_q, first_entry, dma_addr, + nopaged_len, false); + } else { + tx_buf_page =3D page_pool_alloc_pages(tx_q->page_pool, gfp); + if (!tx_buf_page) + goto dma_map_err; + + dma_addr =3D page_pool_get_dma_addr(tx_buf_page); + stmmac_set_tx_dma_entry(tx_q, first_entry, + STMMAC_TXBUF_T_DMA, dma_addr, + nopaged_len, false); + tx_q->tx_skbuff_dma[first_entry].page =3D tx_buf_page; + + dma_sync_single_for_cpu(priv->device, dma_addr, + nopaged_len, DMA_BIDIRECTIONAL); + skb_copy_from_linear_data(skb, page_address(tx_buf_page), + nopaged_len); + dma_sync_single_for_device(priv->device, dma_addr, + nopaged_len, + DMA_BIDIRECTIONAL); + } =20 stmmac_set_desc_addr(priv, first_desc, dma_addr); =20 diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c b/driver= s/net/ethernet/stmicro/stmmac/stmmac_platform.c index dc5f951a311d..0f8d2fc61ce4 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c @@ -575,6 +575,8 @@ stmmac_probe_config_dt(struct platform_device *pdev, u8= *mac) =20 of_property_read_u32(np, "snps,ps-speed", &plat->mac_port_sel_speed); =20 + plat->tx_buf_quirk =3D of_property_read_bool(np, "snps,pagepool-tx-buf-qu= irk"); + plat->axi =3D stmmac_axi_setup(pdev); =20 rc =3D stmmac_mtl_setup(pdev, plat); diff --git a/include/linux/stmmac.h b/include/linux/stmmac.h index 4430b967abde..d4c9d77a6f81 100644 --- a/include/linux/stmmac.h +++ b/include/linux/stmmac.h @@ -268,6 +268,7 @@ struct plat_stmmacenet_data { u8 tx_queues_to_use; u8 rx_sched_algorithm; u8 tx_sched_algorithm; + bool tx_buf_quirk; struct stmmac_rxq_cfg rx_queues_cfg[MTL_MAX_RX_QUEUES]; struct stmmac_txq_cfg tx_queues_cfg[MTL_MAX_TX_QUEUES]; void (*get_interfaces)(struct stmmac_priv *priv, void *bsp_priv, --=20 2.43.7 From nobody Fri Oct 2 09:19:34 2026 Received: from BN1PR04CU002.outbound.protection.outlook.com (mail-eastus2azon11010035.outbound.protection.outlook.com [52.101.56.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C545039C649; Mon, 3 Aug 2026 07:05:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.56.35 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785740730; cv=fail; b=KedbnZXchLtu3ZwefBKJYn9N1J9K0jx3HdlPGo8Y+KjpfllbrFjNExxe7is9k3d8KU1fhSMhM1hg6U/K+JhcDzOIxuSczHuEoiQlQxK+ahLeKyzXphyXTUmENdxuA1JiVZmyXsrXs7lsS20sRw2WXWSG8PJUqDW0epArJsGgs9U= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785740730; c=relaxed/simple; bh=39nW+I17FgHiw66/ydBIPW2qleUSC4w6S1ukrZqryPE=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=KgMHfufZjZnsIkch5P/nGelRuZwshnST3Xlkx7VOfK7XnHd1qp/PzjrBi+ql3s1ez4FNGe54Cg8ZEKGwS83bSaCaQdK2JVhmMv7gPAeNHXTZ34W0vHUm/6IqK78aeFjw3uHF1m8AyoHXKMlR960KUtf5TxvFPAdhx7jDUKU2r20= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com; spf=pass smtp.mailfrom=altera.com; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b=geDJgfcr; arc=fail smtp.client-ip=52.101.56.35 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=altera.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b="geDJgfcr" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=k68oi/14GYpDRwbnu4Hu5q3/vqQz89d1m1qJM04oJfWA+wwcFstWJoMDBK0lanvymOCAwHIGHzDr62enW/1ApkvHCcvPACIBwveJS/xVcHmwR1So4ddWGrwdznVMW/XikJWWYtENBNKJNgML6af19j2Xl9ny3a/gGEl4W8aGJmRivQROfZmOolWEV/o604Ffo5iM4gi48PluTLZHOIphIm4oY8+Sm0Dyy2NmwlUpPsOoC/n6YHYsxvr8SgtCMogmPlyrxQx3Sz33/TvNt8Jsv/yoIntIT86GhbpZ9KwaLX55VjFTnNGJDbtFoxvrlsmANeT8mI36d4Fexxak8rV3fQ== 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=9I3rxKoy5/dXB1KU88+vpCEhS6/ObhPU/teGTbu4Lxs=; b=UX/MrupTcjDXDK3ty2JdQ3YDO3denwXlZnW+7PyTPJoPfFUaNvXyuCL9zyX2D3vB5XSDxba2/ATZxFl+QeRAlwskd1sWGCHYgeC4hY07+hKKYJSK77Ojx0m9sHg81dHFPJiTQITEqMva5n7pasXVbdaJk2vbOhEuXiU4knfrQbNUyFufJUqAxDXN5DVyt9/uP6IQQIhHHAXKTkfgeZpBSmCroVCBcDC7fPbosSebJ5NcJLOzBlR78oIn4A52fouxdugDOfr/52syzyjW6TU2ifpu62FEnBiYj/XBCtc1WCN2IGrv2AlorILdMV+IOg4Eq/27rRUHGcCzC5Vf2ndV5w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=altera.com; dmarc=pass action=none header.from=altera.com; dkim=pass header.d=altera.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=altera.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9I3rxKoy5/dXB1KU88+vpCEhS6/ObhPU/teGTbu4Lxs=; b=geDJgfcrHRurbnaz6pAi1DExE+8PJ75XxFIfmLVPym+UtMO6L6v3xRCb/ZE0Bn0JbbHSYRx3aTgzTqg/Alh7LsWq4NTv8FHu7SB3VVTm4c61kIKx9sbQLO4CvEuVIKvaFuiVRiTooGd4gfuUcrbkVUqeS9LYsF+ATp32z3OfFmBHwNsN/tPX0GyQVHToltkMfXnNmFsMGn6X2cfZEYnngvKR6JU6dzcWZsyVMI0dku8XrQyqpsrAc3jc6Y2LRm5+R//upJbPdrAX/y+m2/Py6uD0pAWx/y8047mPi2N+5koESf5C7I44veeqpu2mrqiASEXTBd0Ly0L1pbWEO+Axqw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=altera.com; Received: from SJ0PR03MB6964.namprd03.prod.outlook.com (2603:10b6:a03:432::18) by PH0PR03MB989258.namprd03.prod.outlook.com (2603:10b6:510:3bf::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.270.17; Mon, 3 Aug 2026 07:05:16 +0000 Received: from SJ0PR03MB6964.namprd03.prod.outlook.com ([fe80::b965:bfa8:58fb:e775]) by SJ0PR03MB6964.namprd03.prod.outlook.com ([fe80::b965:bfa8:58fb:e775%4]) with mapi id 15.21.0270.017; Mon, 3 Aug 2026 07:05:16 +0000 From: muhammad.nazim.amirul.nazle.asmade@altera.com To: netdev@vger.kernel.org, devicetree@vger.kernel.org, dinguyen@kernel.org Cc: andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, alexandre.torgue@foss.st.com, peppe.cavallaro@st.com, joabreu@synopsys.com, mcoquelin.stm32@gmail.com, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Subject: [PATCH 3/3] arm64: dts: agilex5: Enable pagepool Tx buffer quirk Date: Mon, 3 Aug 2026 00:05:13 -0700 Message-ID: <20260803070513.4657-4-muhammad.nazim.amirul.nazle.asmade@altera.com> X-Mailer: git-send-email 2.43.7 In-Reply-To: <20260803070513.4657-1-muhammad.nazim.amirul.nazle.asmade@altera.com> References: <20260803070513.4657-1-muhammad.nazim.amirul.nazle.asmade@altera.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BY1P220CA0023.NAMP220.PROD.OUTLOOK.COM (2603:10b6:a03:5c3::11) To SJ0PR03MB6964.namprd03.prod.outlook.com (2603:10b6:a03:432::18) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB6964:EE_|PH0PR03MB989258:EE_ X-MS-Office365-Filtering-Correlation-Id: 29a69a94-2da8-41d5-10d3-08def12d9246 X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|23010399003|1800799024|366016|376014|7416014|11063799006|56012099006|10067099003|55112099003|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: gs0RjApFVf6TNdLe+NRzQ0VW1lE+QOWNatiuaJz+i9IWHUB8njDtdwIFVIBzi0N8qNSNrkau2YYJQVbQPV/ttcxJrFp2f1uWqrlZggD19Kbt+Tw2uQaSJvJ+mqfqoBbRJtQhr21sxj1hUUxuWJpkXE7mlVuAgx9qGYR2JqV7BmUyw6bRqP6U7c+oQpBxKYUizI//2jGr8hLz8ngGd6pJhszaPD/UFzRzEzuKlbxIapKtX2AoBrtEHRaApGZQVC2J2QJV00XYQp2sSWRP0C4bqMCQB7BjCGXR4pUUvjJNJYRPvv8/6Q8NsBsZn4+G/Clk7kGaAHU6vrIcxjI+O+ToRR8E/M8w2ix+OeMJ57VL6NzYmk3Yp5r93eqIsspnkyVAfPgx2h5g2dGvc/pSbYz42wlyg9dCw7/0hktjdAVkM1At9W5i09zSqMgOhg0Vl7sISf2+nK4dJsGovbfM6bZv0HaU/QCuRcNiqEiI1Aj/qBFFucGxlVE6nJtyYv/GVpwn5h9um5fKDdUHYc2QGSPe2B9bvlyjx86A2EdFcIrwnc1sFnuJPHYaLoTzXEuIFX6uaL1OQQKv3EzcPfrBopb3A0TY88x70OODcdgB29+VdKcBnzs13AhuOyQDPYwL12tT2GfQF5g15iEV8XXv2TU7VlBrl450DCGlOzaby3d/lUg= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB6964.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(23010399003)(1800799024)(366016)(376014)(7416014)(11063799006)(56012099006)(10067099003)(55112099003)(22082099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 2 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?ntp5rJJ7Dv6FgYI12OXISB14p8QGck6J1mcyOVOpu0K0DSNtRoJnEuxJvkjK?= =?us-ascii?Q?1cfyz1xnvn3Jrv2NIvs3FdCU41hTL1/rwttCztqiadEUMwDaKZ5BG8Vs3q6b?= =?us-ascii?Q?kJs8NjpxKNTqlSBxS/MuIrZ4d1U+z+YZYilwNmaJbwKs1jmws8xpT61DdSMA?= =?us-ascii?Q?vpoCY2kKMdW0aJNDn1n5MOwkFxMbZGjQb0J9Qw3+C5uddfPViflaDHdNkVTd?= =?us-ascii?Q?znX6xM6MUPBZGlOpmPHmqndmq2dzUaccbSjErBAo8g7ph5eSnK2R8q2H58Kx?= =?us-ascii?Q?ivB0YexzHLNWjwZF5uvVX3MYh/veg8dPW91wIi0cJOmyc6sac946S+qSfsEy?= =?us-ascii?Q?tLadernE/+CYfdy0XixRoer1bWsCWbfFDbl/SHMu1KF5o0lSsPRhLW3aktzq?= =?us-ascii?Q?3ugw+Sa5Bh1aEASn+M9KtH4HWQLGMHC+QsukV72dRyoxj+mOq0cwJO5wu7pT?= =?us-ascii?Q?Q51l5gNxTrM+rhqmobk3Bn5DgO5uArK7PSo0d1IzGeG4+F22AAXibmsLBnYe?= =?us-ascii?Q?5MsvlQ3AUlDit35myhkwWf70EuktkkyoMnHep0BCJH+wQmatj5PZVlCnRqjG?= =?us-ascii?Q?rFOQfJh6QHNkpncTZCYfeOB8BWKY1GF6ZyGgRWmdxjLE7ptxaNpL+bpjFlUo?= =?us-ascii?Q?O2GgDNaSfEeHiBtyDTG+oj/06IxgsAi4czxofoiS6K6GzDAYc7mKAl8jIbUJ?= =?us-ascii?Q?DK1qW4IU0j/hcGNmKYYeAT/4tvQTOhYt73nAZeQiWGdXeC3BGo6G28gMthWH?= =?us-ascii?Q?+bxGLvW+wFW1cAqTMroxAQlIvlP2wlHH3h0Hcno+5vRJKJy7gAkxKlVMM7uM?= =?us-ascii?Q?ugcdxihtDbzAjT1chFyWcLPySHrVN6EWPezJb+DA/UO0XBKHkBfbMHqrDABX?= =?us-ascii?Q?OWqBZuh+cE84l6ijCX0QOVcTxRsiA3HMwPbM4jTOxTVuGp3t9DIzrZFX2tWh?= =?us-ascii?Q?aoa2ddG8RuUrogbyaxfk+V3W+U+G9x/sVjBenaf5Lm1fTTiPR8qWTkocw+AP?= =?us-ascii?Q?Hd2LG7WwQY9SlpCmuTF+Bw6YyKUO153YCRejs+1YDDH4z1qt6Bs09tFnGKM5?= =?us-ascii?Q?QgEQDDu1zmYFtAc/QJgmgiedMzv0fCxVj/ZfklhI8WnuDqpKNdwk7Dnq0awO?= =?us-ascii?Q?HdSA5FrFZSoISY+j8xrR6oERI34/0ZpZ+AMpUzhDSEsdE6NVVNJ7AyBHY4UH?= =?us-ascii?Q?Jy4+rToIj2XXKTsUmsDS4MX8LneZuRvlYRL2/I7nHJcKj6h68OhpAwXRF0VX?= =?us-ascii?Q?bXsgFDHjDPxJs4A3kelkdSd9wGRW1SyuF2rO+U4yda/Sxle5Whu46cuXrYRL?= =?us-ascii?Q?yBcDBIgEBDks0Ql9mHeIcTV/iyk4DCV36FrWscdHdMevtTaSG14Xzod5f1fl?= =?us-ascii?Q?Ah98lAgjIHpp70Q0h3of+/pszfw5gDzt/ZT0DEkPqBentzBJDes5/XVk0tpV?= =?us-ascii?Q?hXt1IiLCEJm3lXvKsbhJRTzRTMNWSheeqOSq0wnOEQscMrMlQztyP4LgQcUz?= =?us-ascii?Q?gSBPQiBVmz3e9dkCpNjBFeCzXxjU0qwRmMd7NeHIDm705G3Kb1UfMX2AZBzj?= =?us-ascii?Q?10y2Qhn33i1yvvVSGvVN04MaH6l1cl/0bU/C47poioJJOErVDQLYhRKA8hf5?= =?us-ascii?Q?TA3vX50dsCTwU7Q8hSUJmq7ZEjzeaCM/+NmNrp3BdSy3p/mxegKun5YNUSY9?= =?us-ascii?Q?/NyNFZUMIQNXajD2Ia4RngIriLLd/w+shUxMgkHFz6D75BltvCPKCGyRiy4v?= =?us-ascii?Q?QGh53JY07TMe1C5lbq0nh8sf6830DGRrCYUN9dzw/FkOHk5dNBnHE7maPVsk?= X-MS-Exchange-AntiSpam-MessageData-1: SBfA0HP7QruyEw== X-OriginatorOrg: altera.com X-MS-Exchange-CrossTenant-Network-Message-Id: 29a69a94-2da8-41d5-10d3-08def12d9246 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB6964.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Aug 2026 07:05:16.3944 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: fbd72e03-d4a5-4110-adce-614d51f2077a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: F4tE9qk5+9DruQKxcD0wFHXoo+DF1lLMminOEYCxa1rICD1S+toIN/RMfQCOZkTqBTeDqEx4GS5z1DQryk02rRSUIC4kXqzrNsztxQrXCF5rwTVmzyp4lNujyLCCImZSxH7ZEE6A12X3C+dnAhftWQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR03MB989258 Content-Type: text/plain; charset="utf-8" From: Nazim Amirul Enable snps,pagepool-tx-buf-quirk for Agilex5 gmac0/1/2. These ports use an IOMMU, where avoiding per-packet dma map/unmap invalidate cost improves Tx performance. Signed-off-by: Nazim Amirul --- arch/arm64/boot/dts/intel/socfpga_agilex5.dtsi | 3 +++ 1 file changed, 3 insertions(+) diff --git a/arch/arm64/boot/dts/intel/socfpga_agilex5.dtsi b/arch/arm64/bo= ot/dts/intel/socfpga_agilex5.dtsi index f54767d1526e..4ce4fa091385 100644 --- a/arch/arm64/boot/dts/intel/socfpga_agilex5.dtsi +++ b/arch/arm64/boot/dts/intel/socfpga_agilex5.dtsi @@ -605,6 +605,7 @@ gmac0: ethernet@10810000 { snps,mtl-tx-config =3D <&mtl_tx_emac0_setup>; snps,pbl =3D <32>; snps,tso; + snps,pagepool-tx-buf-quirk; altr,sysmgr-syscon =3D <&sysmgr 0x44 0>; snps,clk-csr =3D <0>; iommus =3D <&smmu 1>; @@ -751,6 +752,7 @@ gmac1: ethernet@10820000 { snps,mtl-tx-config =3D <&mtl_tx_emac1_setup>; snps,pbl =3D <32>; snps,tso; + snps,pagepool-tx-buf-quirk; altr,sysmgr-syscon =3D <&sysmgr 0x48 0>; snps,clk-csr =3D <0>; iommus =3D <&smmu 2>; @@ -897,6 +899,7 @@ gmac2: ethernet@10830000 { snps,mtl-tx-config =3D <&mtl_tx_emac2_setup>; snps,pbl =3D <32>; snps,tso; + snps,pagepool-tx-buf-quirk; altr,sysmgr-syscon =3D <&sysmgr 0x4c 0>; snps,clk-csr =3D <0>; iommus =3D <&smmu 3>; --=20 2.43.7