From nobody Sat Feb 7 18:16:00 2026 Received: from PH8PR06CU001.outbound.protection.outlook.com (mail-westus3azon11012048.outbound.protection.outlook.com [40.107.209.48]) (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 E2C82F513; Tue, 3 Feb 2026 14:57:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.209.48 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770130658; cv=fail; b=ehIVQsZVWmeTFjNfRQ9wkb8WZkvfR/ycDFXgxkcDlgyPjaQ4vCi4C6pwFJiXG1pd4k+Dc0wrWXwsKdlcFgYmJy4uqCeu934iLuaJbNWTLIWbCs2c78hAsM21RCyt7E3NTFOPV+eVRB8tydhF2tBS9hn7PjKbPqHBE2h7CP28qPw= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770130658; c=relaxed/simple; bh=6NrJHic2dBVi0NvnHceA0wLjNXIIuE+dsoTYtCUO6Ic=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=Mmdxer8rwPlfnKOldoJi55QSerF2VKRvBbTTPIJgmcBSwL6x44It31jzuOw7sB0hFEm/jsbbITrcCT9j+pnc5lJQeNAiBTuKRMdkKd+d9iXglheqYqjtMaqjl9I/1MTAGWoZFjwUesYHvklIDIll7Q+emVjeAiZjZJ4nn9ioTy4= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com; spf=fail smtp.mailfrom=amd.com; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b=5oakCpF3; arc=fail smtp.client-ip=40.107.209.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=amd.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b="5oakCpF3" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=El/V8j76G9Yt+r90YqPhlMs13Nbgk7GHnxaKQtZWval8F7QDkSzimQy4brjTIl8iRZyMYd0M7P5/h1xfoFnTptv/Pv9khDUzpb6RqpyergdwS0CTrihji9xiAA2V9K6Mvk5NQRASg9Bgt66JMiHtuRA5g517YdNpWPac6+b348AFTOyVOYJHL1ymZ/YEXqsqX3Y3WPLO5zPuoJ21+/GqE6CTQ2D37pcPaIO6KvlAB9YTuMl0/wx7L8xBRJdj1ppTtzY9UL4RowZEmnA9qxYyzNwJr1OAbuz3l/lBbL8NjMtRvELpR7I3wZI2OpRqZdYydutDzp3tTbBwIOh6qF+DUA== 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=jp4HoRxHe+wc6ytdh8OMg+gHEkMO8oRrB9sxs1kGkkc=; b=CZnSD40S0ZoYNu/BpxOnbqWRxz4Jh7d0GvG7hAD0/de2rdww7C0Efz7SL3Cb2ZtpRon3S7TjemhKcE563VjYEms+/itDv8D2GP1j5RO3Ck4pCFFAsXEzXY0dHJAdN6GuQkT32O9UxzAuuha2fcO6/39GySn07Pbnve1zoYvCkoSozwd3q0k+iN1xQCJNT+Aizj4cmW/8p0u0wpY26ziwJOaJAuexTXXQiaGj+H/u6OU3/DmPw1vave2AaxdBwwTvCPTBeB0/GwpZGRH/efouDTjaUk+O1lpZ9LH6NWitCu5VcH46KT+seAXLgi6d7DQINEzG/qs3JIu6ae9KPbUcKg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=vger.kernel.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=jp4HoRxHe+wc6ytdh8OMg+gHEkMO8oRrB9sxs1kGkkc=; b=5oakCpF37rqC/ZB0/K0RTsqIcB5AEeyckzpGyMS0Vi0/5TnZh5pve3DJz9UOPGS1rAgHpefbMwW0CfpKczmsYtumvc+5dWbG0TgQIr6I78UI2fgyBjFIDK5Q1Kw4vCWMD10IGn8DrTIKA23Ktyn1lz4OpcvE3FDlHGuybTa0R3I= Received: from PH7PR17CA0033.namprd17.prod.outlook.com (2603:10b6:510:323::7) by LV3PR12MB9187.namprd12.prod.outlook.com (2603:10b6:408:194::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9564.16; Tue, 3 Feb 2026 14:57:27 +0000 Received: from CY4PEPF0000EDD3.namprd03.prod.outlook.com (2603:10b6:510:323:cafe::e5) by PH7PR17CA0033.outlook.office365.com (2603:10b6:510:323::7) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9587.12 via Frontend Transport; Tue, 3 Feb 2026 14:57:28 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=satlexmb07.amd.com; pr=C Received: from satlexmb07.amd.com (165.204.84.17) by CY4PEPF0000EDD3.mail.protection.outlook.com (10.167.241.199) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9587.10 via Frontend Transport; Tue, 3 Feb 2026 14:57:27 +0000 Received: from airavat.amd.com (10.180.168.240) by satlexmb07.amd.com (10.181.42.216) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Tue, 3 Feb 2026 08:57:22 -0600 From: Raju Rangoju To: CC: , , , , , , , , Raju Rangoju , kernel test robot Subject: [PATCH net-next v2 1/4] amd-xgbe: do not select NET_SELFTESTS when INET is disabled Date: Tue, 3 Feb 2026 20:26:55 +0530 Message-ID: <20260203145658.2936778-2-Raju.Rangoju@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260203145658.2936778-1-Raju.Rangoju@amd.com> References: <20260203145658.2936778-1-Raju.Rangoju@amd.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: satlexmb07.amd.com (10.181.42.216) To satlexmb07.amd.com (10.181.42.216) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY4PEPF0000EDD3:EE_|LV3PR12MB9187:EE_ X-MS-Office365-Filtering-Correlation-Id: 572670e3-d3d8-4bbe-1059-08de63348c4a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|82310400026|36860700013|1800799024|13003099007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?Aa8+TrMpkt6oQz9Evc4NiXs1aM8IuuJVQ78Nw+W7rGLsdj5Niu+7Uo7DRUxt?= =?us-ascii?Q?tJapKVxomUXdasS6B1dhNMNzCZQTLkL9Cpetzg7EpywriIYv6Jf5NPBmeXuv?= =?us-ascii?Q?PJ5Cc29u0uoyj8Iv8+PZ9LjmKUnoJW3Rlurf5OHLv87QC2hpY3W61fZoQ7yB?= =?us-ascii?Q?vE/h9PujM/CGWhuTN2u1CgzL9vHvgCULft4akqZqUWb6D4xWkGOiNPcXz6SD?= =?us-ascii?Q?4JVJlB7/1Wgv+AWUVI/sKFvjewTcqFYBanoJrct6fksraW8d3ru9MDuddKcK?= =?us-ascii?Q?wjmBUH2EFjHQN3gVfQK6149c5Uff53bAGeqsrDRUhRH2EQlORExRjBAuR/BN?= =?us-ascii?Q?4InNovNVR3LpcQ+ENUuOex5Lg550owwNP1TUVKDlmcLbf+vn1OBzniAPNLH5?= =?us-ascii?Q?iOfkLTh7r1JWOfNFIsgyu1HUABly44bhEe3TVXAvLGjhuoFjvhiJyrAa1nC6?= =?us-ascii?Q?wfdevnV2jl7ZylTMplIAvakrWBQ+fJqQXVswWtmDYN0O/aCAzJVwNl9ONmc2?= =?us-ascii?Q?VVvkGEXygOEk9ATEnl2FC3fp9+4OqEEWWSeM2t69I6GillHLvuY1QJ6VXF1s?= =?us-ascii?Q?FK4g+go9mSKi1ec9sDl1XA0K1IzOibfAYp76k+lzPKUdKWxpT16Ga4+ukCEh?= =?us-ascii?Q?e0egtlmRGBYD29PFkp8juiiXW2ilPg29rx2l1F8Xr0S59GG6Fs8q/RtJLgZe?= =?us-ascii?Q?IodfwCpg4MBsAgp1CoExdbBd0Z4KomXDUHnY1/FZpZPHerUAL344QQYcWFd4?= =?us-ascii?Q?bZ0NZ9qYK1fdj2atzSLSNWooRKe1k9HcLY0z154T12JphyNJRvewMCEkmrhM?= =?us-ascii?Q?HYm8pmqXTYbXAWjX2x6et9U+w5eZr8tTkunqatvBXyG16tWxQHWjgY9UC86v?= =?us-ascii?Q?emIAhb1ab3teEadt1wziVV/mo5prccDnB0wb6xpoMoKBsCuJYE5qxUVLuK6d?= =?us-ascii?Q?MBrQj6w+imw+nMhMrAnHiXq8jMNpgDjh+oP5aJ4MEyCbjw2GavkPSSmOqnOk?= =?us-ascii?Q?BKwr3SeRF9Tm5H0UgWHDz90AKGdsX32jenaxKGEMUTS2KIHMyN9RDKD2BvoQ?= =?us-ascii?Q?vpgrfHFusulSfhjNj6VGRdVtYw6Aw1so7IitNBLUpqNYytcqq1TBIgkurpAt?= =?us-ascii?Q?ARvVh5fxWrUbpiy01qepcU6928Z4oihKfoLUwLm1RWLjszLfJSHTFTIlEZTL?= =?us-ascii?Q?alch4YMAP4F2PZ99kjtoUeVXCotII0l2P8/3mjxpRBMOAMXqsfVMYmJfbA6q?= =?us-ascii?Q?NkAQVZzC8zTCgWry+tlQG+q30O7otzN38RitgK4HCZEBTdhT0bPX0ptxFALi?= =?us-ascii?Q?MVohQxJHRUYM1LttQVmz6lnvuSVkVi+yyQ9QKYtq8ZPpiUtmBECp0Q0IUcNm?= =?us-ascii?Q?EMqoBqI+hKleAlf3eLiijmrY1atR124qOvGeEJcNVUuM86mh7jtuws4EMWHZ?= =?us-ascii?Q?DD3jGYbRNb1LR0gk/z7c4RVWpQbw0J3VklHArSfaKjJyuYkm+if3L8Kr+KDM?= =?us-ascii?Q?l/hu/RUsRjDqQe7U7ZvEMXz9B15Nz5DNCDBsiSU00FZ9NdIGsyI5iT/7lw4F?= =?us-ascii?Q?YCVByIkM2rqJwzSGOHq7E/uY17GFUBMN0rPqzCfkl4gQDtwSVi1sYT2Pp19G?= =?us-ascii?Q?4+JiNMQFrQ5mxIISvrEHlMeXaAPfkCOa36bP8lY/HKFZDGeMJanc5HNM7WVa?= =?us-ascii?Q?uP4bLA=3D=3D?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:satlexmb07.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(376014)(82310400026)(36860700013)(1800799024)(13003099007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: jO48/gyAD36+8w1fs4uHub4KPIgX+JwSQHUbMXB369vi1/0aYWMAf7SvqLioV4hj1257yF+Mfb8bFi5pktTSiVUisS3kQUnX+8Fr2rkiBNYmWtBtkSKjdys+YlMasujl2lyurc8KnMVm9sFnidTru9VplxUojsBUDLZVy1GZgsAdYRZdhF4oWpiEAGxGCleua03qAEtDYGj4QN1vH8ev9wUYQlfjIaPYgIufHHCmAKvaiunih59++r0LTwLKIZkqkTLPVp8PXWOu9iADadMxmnrRoM22aWqc+GB6pDXbdnHSUo/d7fMMu21CVwmXnSjPa4IU7zEr0xlR/cGmxHzUOFM0+dh/b6HYIOw/30tuSWqUznKxo3Ttpjtp3BTfcuLMIYukv8z1vM/aUcs+SJ0653Idh6xOMqV48emjWjcFb+D+20A6QH8Byi8lTdW7IExa X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Feb 2026 14:57:27.5409 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 572670e3-d3d8-4bbe-1059-08de63348c4a X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[satlexmb07.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CY4PEPF0000EDD3.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV3PR12MB9187 Content-Type: text/plain; charset="utf-8" AMD_XGBE currently selects NET_SELFTESTS unconditionally. Since select does not honor dependencies, this can force-enable NET_SELFTESTS even when INET is disabled (e.g. INET=3Dn randconfig builds). Fixes build issue when INET is disabled. Fixes: 862a64c83faf ("amd-xgbe: introduce support ethtool selftest") Reported-by: kernel test robot Closes: https://lore.kernel.org/oe-kbuild-all/202602030920.SWN7cwzT-lkp@int= el.com/ Signed-off-by: Raju Rangoju --- Changes since v1: - Added this patch to address the build failure reported by the kernel = test robot. drivers/net/ethernet/amd/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/ethernet/amd/Kconfig b/drivers/net/ethernet/amd/Kc= onfig index d54dca3074eb..45e8d698781c 100644 --- a/drivers/net/ethernet/amd/Kconfig +++ b/drivers/net/ethernet/amd/Kconfig @@ -165,7 +165,7 @@ config AMD_XGBE select CRC32 select PHYLIB select AMD_XGBE_HAVE_ECC if X86 - select NET_SELFTESTS + imply NET_SELFTESTS help This driver supports the AMD 10GbE Ethernet device found on an AMD SoC. --=20 2.34.1 From nobody Sat Feb 7 18:16:00 2026 Received: from SJ2PR03CU001.outbound.protection.outlook.com (mail-westusazon11012024.outbound.protection.outlook.com [52.101.43.24]) (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 CB6323AE71C; Tue, 3 Feb 2026 14:57:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.43.24 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770130664; cv=fail; b=lN8WQu7cdLO7pFW4yhKq7q4dJO8zWS893nX59x5EE+IeRuSMbJhoom45/D2F06T7g1QNR4yW9xPSKwqvvTq9y5SxPeNp6vVgRI4x7oKCgVY77Hi4QJPMvjpwg/7f+k4MANa2Qww3rR1C6dOyxTTO8CS9ZtfMu4sL9PNHoFPonmQ= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770130664; c=relaxed/simple; bh=kO6ef33M51YT9rDY4YmFArc3UUGe5Gu887Z+pcgmL/o=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=sb/wl8uEiY9MKF6/gzBYvQKhRVJJF6QLw1/1W/QpxEL0+OspEEtui0EtF+1E09NCJxouBf3+6jByGInqcIXER4v/zsQenj5L974XSkd8F51wpuJtWFMd2LwNuNhoosw64+rBp0WAvz8kmlIqUet8EtQzPQOm8wwbj0duuQz8xhY= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com; spf=fail smtp.mailfrom=amd.com; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b=gbfEhzMM; arc=fail smtp.client-ip=52.101.43.24 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=amd.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b="gbfEhzMM" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Ib3EOheWP5mnuUmg2+KuyQ8SRVGbYxPxJERyD8pOHxko2s2jF8hDXAD32mT1zbCpJP1tGLUqVzhavehcpv2higE1XYS2z6hObcm7CWp8mdD4+fIOPqRYsQF60vYtuUNb/MMxr0tWpd+pcOsmNpXeJ/pwxpEwlGxQRJHmYvCwzey1v+ps5jWyvPxKTCk5QMY2QDaRTHtcGGp/1LRWpsGP0j/fqIeRU05d0yNPGhiFsAXSvA6FQOKhDJcSoz1+h8C9WJwt24/YTgV9BUNImRfTPoC12s+GrLUyw9K8FGY0IQgoIZarKG/hjYFGvm4u3nP2DOKKZTUTAQavWt6Jswow8w== 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=gWXlxgRc+uSyrnjAoY5z+tf3p33Kz/wqtWR84z58TA0=; b=kFN5201AIcHXbZQnjnNNagrOho6D4IRYOKmaT8eBrJrvWtW0y1ss5Bjg1/x3U89UOMXL2L3U5zG9QcOx0a8GAQTS9OhkROqfZnQCY92g5f/kiSYoBdxRDyQBmqrM87+zIpHpgFr/oKjClM+VlMQmKCw3aWiT8O0j6alqeFnryfmlL93Q/x8Wit9RzQ55UcDZ2Qc8vtdwpQl/1GaTuw3sFyM5WdIJFX8m9B/2xR0nZzuPGOGkCSIgsyRroR+mA1sIBEfAa9rFzQBALPU/foCZxIZk9kh90l5g4C2vDWL1NcFqgTYR4MeVwnJA6S9MACaeoQsC2IMogi0XWQNAZkKD4g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=vger.kernel.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=gWXlxgRc+uSyrnjAoY5z+tf3p33Kz/wqtWR84z58TA0=; b=gbfEhzMMOZzDLhwppXAmnS8ue9Pv5YqbZdGzaJZ4BK4qUHfqGMW3NuR7ko7SWYxmxiz0NEp8imuxL0jfKWsTPHsaZf/Vje8hX2BLX9eoH/cSX4FLtUfJ2vuX2UjNo1SMENsVEy97agECop8X/RWwbxcvmDQFvmlpNVoyIHbigwk= Received: from PH7PR17CA0026.namprd17.prod.outlook.com (2603:10b6:510:323::19) by CH3PR12MB8331.namprd12.prod.outlook.com (2603:10b6:610:12f::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9564.16; Tue, 3 Feb 2026 14:57:37 +0000 Received: from CY4PEPF0000EDD3.namprd03.prod.outlook.com (2603:10b6:510:323:cafe::d4) by PH7PR17CA0026.outlook.office365.com (2603:10b6:510:323::19) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9587.12 via Frontend Transport; Tue, 3 Feb 2026 14:57:36 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=satlexmb07.amd.com; pr=C Received: from satlexmb07.amd.com (165.204.84.17) by CY4PEPF0000EDD3.mail.protection.outlook.com (10.167.241.199) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9587.10 via Frontend Transport; Tue, 3 Feb 2026 14:57:36 +0000 Received: from airavat.amd.com (10.180.168.240) by satlexmb07.amd.com (10.181.42.216) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Tue, 3 Feb 2026 08:57:26 -0600 From: Raju Rangoju To: CC: , , , , , , , , Raju Rangoju Subject: [PATCH net-next v2 2/4] amd-xgbe: add hardware ARP offload support Date: Tue, 3 Feb 2026 20:26:56 +0530 Message-ID: <20260203145658.2936778-3-Raju.Rangoju@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260203145658.2936778-1-Raju.Rangoju@amd.com> References: <20260203145658.2936778-1-Raju.Rangoju@amd.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: satlexmb07.amd.com (10.181.42.216) To satlexmb07.amd.com (10.181.42.216) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY4PEPF0000EDD3:EE_|CH3PR12MB8331:EE_ X-MS-Office365-Filtering-Correlation-Id: 73cd8953-5c7d-4fbd-5e84-08de633491d4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|36860700013|82310400026; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?/NI+6Ax6ir0RnNifp9yy4DiF7fuLxifkQCPV6d11Mjmn6O1tOqMu5zjBBx7J?= =?us-ascii?Q?3DeHRVT0ZbLuefcy1Pkyv4P3rRn2NSe6tOPthydkInunlG2z2pZxTdmlrORl?= =?us-ascii?Q?rH9TURnahvPnLwwokbSlWM83N/UDi2Gv8SNDpuoD42ODetRJbxM17RSKfKma?= =?us-ascii?Q?C49BrLgAjYMX7KPXuAQnzdDbT/YtzST3i2q0oA0Mrex7XjCFsefqMv2e20dw?= =?us-ascii?Q?qAa2/qttsBSoEz6DV+KPLmt2w+5Jm3yS+jsyABEe+AwxFsD2K/Ml8Ar8xyKB?= =?us-ascii?Q?DGGk1wWf7E7BG9nOyTA3a5wOolJsa4a8fR7sSYcm02/gmJMv3DyHKD4twPDv?= =?us-ascii?Q?nnn26JRgcF7CXbzrn2Gcew4g7wpFP91U4E+ToNqcdGfkTzyRizA7N/O7HW7K?= =?us-ascii?Q?LJMeHrWlYeg61m7VqrGGoEv3/nfWbRYAVXfnn5njhfsUy7YZhtJYvAgLzX+r?= =?us-ascii?Q?urA9/F750OUv9fDa9FONnkNYd69A36b1VnTroG3IcWnLml8jQhSjkd/e1WnR?= =?us-ascii?Q?8YwPLu/v0PX5xL3JmE4SEXb5+AZdAyghVR5dY6QkQ7WtxK8GJeP5xXFvjACs?= =?us-ascii?Q?EoqDG99BAXumuTf924N9FMG7i4QHy4NQwRQt4gwy66FppRLXtZ6ZL2JtFii1?= =?us-ascii?Q?yr2gv3yVm1GG33Tp7b2r4qu1d5lsYN++Q/fsiJ9QkP7K2UkCy+/lDKriKzII?= =?us-ascii?Q?Jx2DNGTUn/hbvroOuXspTdCw6rJxRp9Px20CwVNd9K1Kl1qbyVJ9XlMTkWvn?= =?us-ascii?Q?nuVKrTpkMpE4CXD4u+oSEUBlJk+Ph1kChv/pywajwCCmXfP7Zc9R3Ur0Czrd?= =?us-ascii?Q?0lsWP0nN6Pqv5eho2PLs50NmXfai2Dg8hYomBrIGOMyJmYuCoJEYgyLbKXzq?= =?us-ascii?Q?GkoK6bipLzMaP7cESGkhNQMy5mnHK1vVltNFTt/Mz77nND2IJHNZ8oEE+xjr?= =?us-ascii?Q?++irwvI+t9PNh8ZVr3i5HQJo/JtvehSgJXRRYYhOx4H3QQSirKYRoS1OMADD?= =?us-ascii?Q?aKGMC5eoQHsQIRxYu2qkC2y5QvnlSMOV+y6mpvyYog1M6TkrbQNQlcQAvBM/?= =?us-ascii?Q?yguByGDRguXQyfU35oPnPT1y+O8w4W/2K2ygmeBdkUj47CBfwBf7m+uYgkrj?= =?us-ascii?Q?R5/ehl+MyZ7Fe/5BXsbmzP4USuWXFbfG3FYRN8uMBB8+662ZFwS0Ka2e/lP5?= =?us-ascii?Q?W904HmuJeF8aTdoyjouO3rGctu4mZulcJPeP1rX7mRm49lhrw4cd1UwMKdpC?= =?us-ascii?Q?yBk+rhNQq4ASfvbNa6XO2ORCWpdM2OhhogbW54aR3k71GIb2Gp+x0Otl0UEo?= =?us-ascii?Q?XZOL2vlnUuiTTyj/pHbKezyXS5qHcuZjNU92Eee+lC6wj3+dgBglz7tXkKDs?= =?us-ascii?Q?HqpT7cJjRwjNZmkPWpnQWPep3u5RPpY9lSXpv7R6f4mEGfrl8NT38xeYV6/s?= =?us-ascii?Q?oziA8IGyuLXAXUmkmF07IQBIsxYKRUFi9bcwvqCbIyy51ncxqY6t+VA8ebin?= =?us-ascii?Q?buDblcBKtJdi8JqR+YYcEnnSJmxt+n+hL1HEsQDRKrE7PrlNR8WN+qfTRdtt?= =?us-ascii?Q?7bwxWlOwWbPjrAjvjPwOezCHJwi6PNWhYckyb4D4qw2oAuthQ3515K6lw4OL?= =?us-ascii?Q?RI2xwtsb8SYf3FYZBupDopQeS4ZIy/wcTOA16vgZrkubxEpjcY2Ux9Wfxvhn?= =?us-ascii?Q?1lS4Bw=3D=3D?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:satlexmb07.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(1800799024)(376014)(36860700013)(82310400026);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 46PwPOnj8EDlZSsxeTOSIsnV/ZanufZtuYZJn6dnq70/K3uyGbwQAfDzuPYFDCJ46Fx9hmdCiyjtcq2+BfXpNBJzyE1SvaKo0V7O1c3vYdlFxu1M1Ejg8m/GVVx6wHS89RsP5tPtmPFdJrHrLPoFmEnotTLpUOLlw5X1oi6xn4krKRxiaiKfaA6wTT1SRPWmLqTyd1EgeXidcqy9e3w0Ijrz0Wk9GIoQ0hOevtsm3jBQ5bnagfnYzFP+JqzHqNMebF/AZ+VgVWTbXIHF4Y61YJeIxGiUosCZhqZpZNbonc28zzsxFS86hemPRXyKevxkxwvuPraCXoxBctsEXV2gqnWXFXywYryd/qFJ3dvDNQNw4fBlCI/CcZs2vndlggd7a4cfNJWi7G58a7n95X/4p5LvC9N6T9KKpF5sNMIKL6AwcXZF12BYj1nR3n384K42 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Feb 2026 14:57:36.8361 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 73cd8953-5c7d-4fbd-5e84-08de633491d4 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[satlexmb07.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CY4PEPF0000EDD3.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB8331 Content-Type: text/plain; charset="utf-8" Add ARP offload functionality to the XGBE driver that enables the MAC hardware to automatically respond to ARP requests without CPU intervention, reducing system latency and power consumption. The XGBE MAC supports ARP offloading through: - MAC_ARP_ADDR register (offset 0x0c10): stores the IPv4 address for which the hardware should respond to ARP requests - ARPEN bit in MAC_RCR register (bit 31): enables/disables the ARP offload feature When enabled, the MAC hardware will automatically generate ARP replies for requests targeting the configured IP address, without involving the host CPU. The feature requires the aoe (ARP Offload Engine) hardware capability bit (ARPOFFSEL) to be set in the MAC_HWF0R register, which is checked before enabling. Signed-off-by: Raju Rangoju --- drivers/net/ethernet/amd/xgbe/xgbe-common.h | 3 +++ drivers/net/ethernet/amd/xgbe/xgbe-dev.c | 24 +++++++++++++++++++++ drivers/net/ethernet/amd/xgbe/xgbe.h | 4 ++++ 3 files changed, 31 insertions(+) diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-common.h b/drivers/net/ethe= rnet/amd/xgbe/xgbe-common.h index 711f295eb777..522e71f2d6e1 100644 --- a/drivers/net/ethernet/amd/xgbe/xgbe-common.h +++ b/drivers/net/ethernet/amd/xgbe/xgbe-common.h @@ -210,6 +210,7 @@ #define MAC_MACA0LR 0x0304 #define MAC_MACA1HR 0x0308 #define MAC_MACA1LR 0x030c +#define MAC_ARP_ADDR 0x0c10 #define MAC_RSSCR 0x0c80 #define MAC_RSSAR 0x0c88 #define MAC_RSSDR 0x0c8c @@ -400,6 +401,8 @@ #define MAC_RCR_RE_WIDTH 1 #define MAC_RCR_GPSL_INDEX 16 #define MAC_RCR_GPSL_WIDTH 14 +#define MAC_RCR_ARPEN_INDEX 31 +#define MAC_RCR_ARPEN_WIDTH 1 #define MAC_RFCR_PFCE_INDEX 8 #define MAC_RFCR_PFCE_WIDTH 1 #define MAC_RFCR_RFE_INDEX 0 diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-dev.c b/drivers/net/etherne= t/amd/xgbe/xgbe-dev.c index c04a9c76bd40..c9243b4d7682 100644 --- a/drivers/net/ethernet/amd/xgbe/xgbe-dev.c +++ b/drivers/net/ethernet/amd/xgbe/xgbe-dev.c @@ -3605,3 +3605,27 @@ void xgbe_disable_mac_loopback(struct xgbe_prv_data = *pdata) /* Disable MAC loopback mode */ XGMAC_IOWRITE_BITS(pdata, MAC_RCR, LM, 0); } + +/** + * xgbe_enable_arp_offload - Enable hardware ARP offload + * @pdata: pointer to driver private data + * @ip_addr: IPv4 address (in host byte order) to respond to ARP requests + * + * Configures the MAC to automatically respond to ARP requests for the + * specified IP address without CPU intervention. + */ +void xgbe_enable_arp_offload(struct xgbe_prv_data *pdata, u32 ip_addr) +{ + XGMAC_IOWRITE(pdata, MAC_ARP_ADDR, ip_addr); + XGMAC_IOWRITE_BITS(pdata, MAC_RCR, ARPEN, 1); +} + +/** + * xgbe_disable_arp_offload - Disable hardware ARP offload + * @pdata: pointer to driver private data + */ +void xgbe_disable_arp_offload(struct xgbe_prv_data *pdata) +{ + XGMAC_IOWRITE_BITS(pdata, MAC_RCR, ARPEN, 0); + XGMAC_IOWRITE(pdata, MAC_ARP_ADDR, 0); +} diff --git a/drivers/net/ethernet/amd/xgbe/xgbe.h b/drivers/net/ethernet/am= d/xgbe/xgbe.h index 1269b8ce9249..a44973ae21a2 100644 --- a/drivers/net/ethernet/amd/xgbe/xgbe.h +++ b/drivers/net/ethernet/amd/xgbe/xgbe.h @@ -1334,6 +1334,10 @@ int xgbe_selftest_get_count(struct xgbe_prv_data *pd= ata); int xgbe_enable_mac_loopback(struct xgbe_prv_data *pdata); void xgbe_disable_mac_loopback(struct xgbe_prv_data *pdata); =20 +/* ARP offload */ +void xgbe_enable_arp_offload(struct xgbe_prv_data *pdata, u32 ip_addr); +void xgbe_disable_arp_offload(struct xgbe_prv_data *pdata); + #ifdef CONFIG_DEBUG_FS void xgbe_debugfs_init(struct xgbe_prv_data *); void xgbe_debugfs_exit(struct xgbe_prv_data *); --=20 2.34.1 From nobody Sat Feb 7 18:16:00 2026 Received: from SA9PR02CU001.outbound.protection.outlook.com (mail-southcentralusazon11013071.outbound.protection.outlook.com [40.93.196.71]) (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 9F578F513; Tue, 3 Feb 2026 14:57:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.93.196.71 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770130665; cv=fail; b=Ie82QFI4Kpko5lvfY/m9r8tKCvQO87gdTcM03GVuUGZ7CINNg8g61IkMD2V09GsWzFw75vublTmQkkkmxczm2GI3ags1xhZkMgmQUs1kyvfxBSy47tNCyCl7XXNdBTgOEQeUipMjGnNiFKPahfuD+GCJClVQzW06a8q8y4kt4P4= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770130665; c=relaxed/simple; bh=j91uEVUNkZ45R+QmFib14sE7gapGNkBrnD+A4m7ceW8=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=k6WFHZiEIkVf+a+LCfmcfNwvXAmSmmluw1uamPLpqal0x/83zu0T2PzGIzanawtjjj/unqWdpX9miXh5mtM6OQ2iB7h5tELSs6vm1EQ28DC3x5sLCdD2SBHdSd3euKQ/5SD6zjMRtXUXZ5/n9MQ47IVVlHYcewOPncTrcbUHpj4= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com; spf=fail smtp.mailfrom=amd.com; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b=0YadThiQ; arc=fail smtp.client-ip=40.93.196.71 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=amd.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b="0YadThiQ" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=oYoS328LdZzvG/Cj4I0pGfdLeUMkaY+LXHSS5hwAj7vH0IfakZeA81ZjKX74/OCzwKO0s3SU3B1U5bgPf+tWuBUUiF5vEzLNQnma8H5xCs76yvnK3mHFtfG8MqOampDWU8e3UclTm4rX8qYYyX9yrCEJyeCJm4gdLNF36Zz8cmDaIcRhqGBwrWiAnkImW/dkQD1EmBSc9Vi2VpPLokeb2jdflbRfKJEzp+6j/T9P3m/44H4O7ssSNqM08jNSMr8LqDZMx9Ze/v5EFn2CKlKrnSXCKJ08BeNZKaUpo7VD+gl1bJzqK0sgvtw0kWJ9ZiEFbh82B4Ch6TXh5BiqzKtD+A== 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=zFceVHDBqu2LAgj8hCNnb9JIjDib/ULiD4PqXd4cy8Q=; b=aVyMb3AzrMLsC9SrigRQHqGf45Xrst2vGBWX5Bi8roR0NfUnGJZEIywPQT8OvU1NREpfEcIOu8SZcxTCQbjuBSBKpSdx5M2c997dl3PfVGHqZrGzLryc+FWTWdqfoAg/aSXBDOBXgAqv3vM9t/xeLjJkCK4DaGr7UFdRhfM978mORTQo+Be/Cn3d+37j21m5E4tdLVJBs3NngbZnofK9X4cxs5Sq9Qk+IS2KAH+QbSMXAgXU4l05maJkGlG8QjWd3oBkq3jeBUxcBQfnrY3xFxDL8/SFojluYFGwN1wu8VrwBDm3HkN0u2XiAwT7vz9sJcT0ywPNnTsM0kGyptzVGg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=vger.kernel.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=zFceVHDBqu2LAgj8hCNnb9JIjDib/ULiD4PqXd4cy8Q=; b=0YadThiQWnKzQsFkeTBMbB3bvSjPI8WQLTVUM9+Xeeh7sBbQE/WvkVGDrDDaa9qvBts20MvUdjb9YVQblGjRuahONZezQAmrWXaAo+5cxV97JgRIFWIjVBIGsV9anq3gmHYlGXukl4sS8wL/Mw6VpKVAeDEagDlxj5mxgsoVDJ8= Received: from DM6PR08CA0025.namprd08.prod.outlook.com (2603:10b6:5:80::38) by LV5PR12MB9778.namprd12.prod.outlook.com (2603:10b6:408:300::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9564.16; Tue, 3 Feb 2026 14:57:38 +0000 Received: from CY4PEPF0000EDD1.namprd03.prod.outlook.com (2603:10b6:5:80:cafe::82) by DM6PR08CA0025.outlook.office365.com (2603:10b6:5:80::38) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9587.12 via Frontend Transport; Tue, 3 Feb 2026 14:57:37 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=satlexmb07.amd.com; pr=C Received: from satlexmb07.amd.com (165.204.84.17) by CY4PEPF0000EDD1.mail.protection.outlook.com (10.167.241.197) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9587.10 via Frontend Transport; Tue, 3 Feb 2026 14:57:38 +0000 Received: from airavat.amd.com (10.180.168.240) by satlexmb07.amd.com (10.181.42.216) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Tue, 3 Feb 2026 08:57:30 -0600 From: Raju Rangoju To: CC: , , , , , , , , Raju Rangoju Subject: [PATCH net-next v2 3/4] amd-xgbe: add ARP offload ethtool self-test Date: Tue, 3 Feb 2026 20:26:57 +0530 Message-ID: <20260203145658.2936778-4-Raju.Rangoju@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260203145658.2936778-1-Raju.Rangoju@amd.com> References: <20260203145658.2936778-1-Raju.Rangoju@amd.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: satlexmb07.amd.com (10.181.42.216) To satlexmb07.amd.com (10.181.42.216) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY4PEPF0000EDD1:EE_|LV5PR12MB9778:EE_ X-MS-Office365-Filtering-Correlation-Id: 3f1823e3-5d50-4a3b-afbf-08de633492ac X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|82310400026|376014|36860700013|1800799024|18082099003; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?mzxD57nLjTqhdYpggiGV9paWbUud8MYlQ66RuhnHqVcsYvpHOglq1mhqFUR1?= =?us-ascii?Q?cEE8ha4xvtV8MEbESwCVqNJJixNFs1G/ryg/5WsbSTtXWk1s5UcXv+dyVlEK?= =?us-ascii?Q?wwkDHnJZF6j63osvDGzpAcWXCdviveAc2DNN99NRz9P4TtKCF5fTvK0rAxC6?= =?us-ascii?Q?vuQK5KCJHeMrTpq6Zm+PGEB2oHyjb00b47TjJ1iQT+lpYwgfC671gonNhQp4?= =?us-ascii?Q?7GUhb9avoSQNNrQvtNcHXTQGXDbq+omJc/gnHf2YzGVxT5c9xrVaF4Y/eEUT?= =?us-ascii?Q?fPba8Azt++v1SZH0Yeym1rVLEbK6BBh7jvAIc/cEYiMVeajzw5cyOAekheQX?= =?us-ascii?Q?UBKvQ2J6BxnI6bNXt9CgyLA33lcApv7P9I3NpDK6zByqOfX6cfKMGOhT1mNo?= =?us-ascii?Q?jsoIG7t6WqSXtxHyXBWgjorxC7hyhraKJJgk5xpJnIlFzdQUQd0/sjGrCyDe?= =?us-ascii?Q?vW9FxK+sVyIKIQaGJJhzpu29ccMC0SqmRFOlxI7JBlHDemU8Gx91HMstPx5c?= =?us-ascii?Q?tRcezdEHatMFik1AryzSZznQGE3NgPDeclch0IuvY3RtcT1wECXjowJUJK/w?= =?us-ascii?Q?HYOd7GGrtbqpxK3J7Zox6ZNhatLbH35izODUziiSyOgPFSgFOKCWh+sOufUM?= =?us-ascii?Q?C7JtlJrMkC0lPu+ORhvyuPbbZm2lTzmIXqFaSJT4wz/97ElCVRClVz1sHfHj?= =?us-ascii?Q?hM1UjqtNuGkE4mWg2jjEeEhVoeAX1ilhmUbfkH+whWgFgjAH8zI1fcb8nsP0?= =?us-ascii?Q?t4772i6Ui2pfRWyDuI6nIpeAJ9LVleUlm+GgxaC659DBW+rBpHhnLxTk8k5D?= =?us-ascii?Q?jfeLs0lunGCNYriUGdNZ+7kylzjVYA2NlUMb8Wn+brOzC+TDUSnodGFtJYeA?= =?us-ascii?Q?kMoSYplrjV1zLAdqkK12LNhDmYiQ3MdbHbzGAzb9jJDBRJzzIH9TOMkgqbaG?= =?us-ascii?Q?BBCD7QAUTLFEdqUXyQl0eaml/FrJKhv9bPAb4IKGfj+VjYuwcqu6pIb8SNxG?= =?us-ascii?Q?bzX9wNysQdeQK+eLfLiOubMbvUR8r78r/EDMbqDXiU89MgXu8goHCeYd/l4i?= =?us-ascii?Q?zYzmPrjI/IFWej42D2A8y9bcRbAOFga0SMUS2m9fzYyhtwb5KjxzeJ1ARcqX?= =?us-ascii?Q?pWfC26ugRpBtsrd72c80RZMmnyQyIW9EkpbOFYkDnTdOdNK3nBA6AU8OaLv5?= =?us-ascii?Q?53IkbKjiY1iMm+iC0VAjwECEhZ5dyos/b94qkxsycwS8DKmDa2UWbw6jp+C1?= =?us-ascii?Q?TsFidDd1b1BshnN4yB4IlxUEIlHr7C/L/8KiWhpAojrVmCiTObUJVCZjERIR?= =?us-ascii?Q?8TuMIcOuyDhyY4Jmwqsqjhs9iq85jXm0Qx0ybCCYVo/dV4NrdhBAgs3b4wu7?= =?us-ascii?Q?Ql4h+W4J65FDnlK9sKn7E5pzJFsqN6QoNyZ0KccuSx/SDsysQ8dsmShs+D7M?= =?us-ascii?Q?Tmdm7SsLiViW7aQrks15aLNrAd8UnTRG7EUUjHHBnXbTAtbbOwFDHicKsZsx?= =?us-ascii?Q?21e2nMsIoZdC94qOfiFcL5MhlIMRfandNdPG5pSqUdToghwUdmQZA6jrRGLO?= =?us-ascii?Q?oq5vGpjlg+vWU5yD6PQzsNvtF6mk9nIukHYuYEaju1k9e1QqF7mn6XC49TgQ?= =?us-ascii?Q?+GGRfiRAwQlpwyquaH7UngGYSgsiUhCIeYh3U+ppJxrio0mlJAiDbboUkjv3?= =?us-ascii?Q?uatVsg=3D=3D?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:satlexmb07.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(82310400026)(376014)(36860700013)(1800799024)(18082099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: DEXmIPyXvB2T8FwobPkOSuttBbJzlXK8f/M64aclploXYeLADCPYlnWtGHjyMqpjoqYXOWWnoSTjPC5JkloyXcYS5smuLgNniFTOZaXGZ94Pse22PoqeTzYnqcJA2/hejzaIxcBx4CfORdRyKto530axHWOR9C3UgOdxK9TF0T1ktpsCO37XNJbO+RMKrmZke4RD44kdf6ECGxfskHWa35g+Mq29eTPSv/iPGtuQ4GNNC2zXHWhUWtpcmr2vG0fxj3nyu+v5YJO0elTemn3gZ6IR/BID/kg2TQT+hMPzaHfvMVq5FEAhAcNcrNxSWCxnLUi7j6UUFxcm/yOC9UhDnggmT3aiQrWPQbkzFSHUhgXLhgV5qT3OQNXUN7/qnl8dd9xX16rQkSQOe9HOY9ObuG/WjZJouxSFbYozRQQCE4bVKNwyP1byNEbJidLiVniU X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Feb 2026 14:57:38.2534 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 3f1823e3-5d50-4a3b-afbf-08de633492ac X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[satlexmb07.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CY4PEPF0000EDD1.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV5PR12MB9778 Content-Type: text/plain; charset="utf-8" Add an ethtool self-test to verify the hardware ARP offload functionality. The test validates that the MAC correctly responds to ARP requests without CPU intervention. Test procedure: 1. Check for aoe (ARP Offload Engine) hardware capability 2. Create an ARP request packet with test IP addresses 3. Enable ARP offload with the target IP address 4. Transmit the ARP request in PHY loopback mode 5. Verify that an ARP reply is received from the hardware 6. Clean up and restore configuration The test requires the device to be in PHY loopback mode and runs as part of offline ethtool self-test suite. Usage: $ ethtool -t Signed-off-by: Raju Rangoju --- Changes since v1: - Use link-local IPs (169.254.x.x) for ARP test to avoid interfering with = real network configuration. - Improved error handling and resource cleanup. drivers/net/ethernet/amd/xgbe/xgbe-selftest.c | 121 +++++++++++++++++- 1 file changed, 120 insertions(+), 1 deletion(-) diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-selftest.c b/drivers/net/et= hernet/amd/xgbe/xgbe-selftest.c index 55e5e467facd..b57826a91361 100644 --- a/drivers/net/ethernet/amd/xgbe/xgbe-selftest.c +++ b/drivers/net/ethernet/amd/xgbe/xgbe-selftest.c @@ -29,6 +29,121 @@ struct xgbe_test { =20 static u8 xgbe_test_id; =20 +/* Link-local test IPs to avoid interfering with real network config */ +#define XGBE_TEST_ARP_SRC_IP htonl(0xa9fe0101) /* 169.254.1.1 */ +#define XGBE_TEST_ARP_DST_IP htonl(0xa9fe0102) /* 169.254.1.2 */ + +static int xgbe_test_arp_validate(struct sk_buff *skb, + struct net_device *ndev, + struct packet_type *pt, + struct net_device *orig_ndev) +{ + struct net_test_priv *tdata =3D pt->af_packet_priv; + struct ethhdr *eth_hdr; + struct arphdr *ah; + + skb =3D skb_unshare(skb, GFP_ATOMIC); + if (!skb) + goto out; + + if (skb_linearize(skb)) + goto out; + + eth_hdr =3D (struct ethhdr *)skb_mac_header(skb); + + /* Verify the reply is destined to our test source MAC */ + if (!ether_addr_equal_unaligned(eth_hdr->h_dest, tdata->packet->src)) + goto out; + + /* Verify this is an ARP reply */ + if (eth_hdr->h_proto !=3D htons(ETH_P_ARP)) + goto out; + + ah =3D arp_hdr(skb); + + /* Verify the ARP operation is a reply */ + if (ah->ar_op !=3D htons(ARPOP_REPLY)) + goto out; + + tdata->ok =3D true; + complete(&tdata->comp); +out: + kfree_skb(skb); + return 0; +} + +static int xgbe_test_arpoffload(struct xgbe_prv_data *pdata) +{ + unsigned char bcast[ETH_ALEN] =3D { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; + unsigned char src[ETH_ALEN] =3D { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05 }; + struct net_packet_attrs attr =3D {}; + struct net_test_priv *tdata; + bool pt_added =3D false; + struct sk_buff *skb; + int ret; + + /* Check if ARP offload is supported */ + if (!pdata->hw_feat.aoe) + return -EOPNOTSUPP; + + tdata =3D kzalloc(sizeof(*tdata), GFP_KERNEL); + if (!tdata) + return -ENOMEM; + + tdata->ok =3D false; + init_completion(&tdata->comp); + + attr.src =3D src; + tdata->packet =3D &attr; + + /* Build ARP request: who-has DST tell SRC */ + skb =3D arp_create(ARPOP_REQUEST, ETH_P_ARP, XGBE_TEST_ARP_DST_IP, + pdata->netdev, XGBE_TEST_ARP_SRC_IP, NULL, src, bcast); + if (!skb) { + ret =3D -ENOMEM; + goto out_free; + } + + tdata->pt.type =3D htons(ETH_P_ARP); + tdata->pt.func =3D xgbe_test_arp_validate; + tdata->pt.dev =3D pdata->netdev; + tdata->pt.af_packet_priv =3D tdata; + dev_add_pack(&tdata->pt); + pt_added =3D true; + + /* Enable ARP offload */ + xgbe_enable_arp_offload(pdata, ntohl(XGBE_TEST_ARP_DST_IP)); + + /* Set device to promiscuous to receive the ARP reply */ + ret =3D dev_set_promiscuity(pdata->netdev, 1); + if (ret) { + netdev_err(pdata->netdev, "Failed to set promiscuous mode\n"); + kfree(skb); + goto out_disable; + } + + ret =3D dev_direct_xmit(skb, 0); + skb =3D NULL; + if (ret) + goto disable_promisc; + + /* Wait for ARP reply */ + wait_for_completion_timeout(&tdata->comp, NET_LB_TIMEOUT); + ret =3D tdata->ok ? 0 : -ETIMEDOUT; + if (ret) + netdev_err(pdata->netdev, "ARP Offload test timed out: ret %d\n", ret); + +disable_promisc: + dev_set_promiscuity(pdata->netdev, -1); +out_disable: + xgbe_disable_arp_offload(pdata); + if (pt_added) + dev_remove_pack(&tdata->pt); +out_free: + kfree(tdata); + return ret; +} + static int xgbe_test_loopback_validate(struct sk_buff *skb, struct net_device *ndev, struct packet_type *pt, @@ -251,7 +366,11 @@ static const struct xgbe_test xgbe_selftests[] =3D { .name =3D "Jumbo Frame ", .lb =3D XGBE_LOOPBACK_PHY, .fn =3D xgbe_test_jumbo, - }, + }, { + .name =3D "ARP Offload ", + .lb =3D XGBE_LOOPBACK_PHY, + .fn =3D xgbe_test_arpoffload, + } }; =20 void xgbe_selftest_run(struct net_device *dev, --=20 2.34.1 From nobody Sat Feb 7 18:16:00 2026 Received: from DM5PR21CU001.outbound.protection.outlook.com (mail-centralusazon11011059.outbound.protection.outlook.com [52.101.62.59]) (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 8A7423AEF5F; Tue, 3 Feb 2026 14:57:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.62.59 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770130667; cv=fail; b=TXkr0cGhBNbEA3RcaxlQhXt8vaS+ZcjluYRQyx0L7R7vTE5NRYkSdYfgpHOyRyy2hkstTmrxB4+WFfiLuzSo6TP9urin7lRTQG1816hl48a1qo1RGhtSPPF3YdWVv+1Vg2eEDt7w4JZjZq1xWMyVwuCUOnyGcaNBHqTQiWa+G14= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770130667; c=relaxed/simple; bh=3CqwYHufsiNARqBhUxDipF2D/qsKFkMz68t1yBafdVo=; h=From:To:CC:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=fNRS038OrJXs5iQAvlMslsNkJSND+CHNY26JyTuq1e1/gTtfJoJg+xVpNiWRDf4qHeT43ZIocRjGa++XChFN7MicTUc0+Lcn/DsDjEgY9+JJ3r7o4LPNpJKPbTA4FpGcC5nq7/18ZAvEihDwGwQFtf8VjXNiHwQGbLx26SNhWp4= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com; spf=fail smtp.mailfrom=amd.com; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b=CwBXm1Qj; arc=fail smtp.client-ip=52.101.62.59 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=amd.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b="CwBXm1Qj" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=uAYlrZiVPLCFbOWXGtNHCk0jdSZj7zDKHCk5bznO4kw1c9elbGE5mxDsj1H6Hfd467/JhBxh5hOLePpL1iv6p/+J5pZfLxd3w4VNkrr/rz/EZ90Bcvnp8XhhLDdn23PDOlLwD0LvTD2abNN//HHN0a4HOVmOCkm9Ubaogix22YXbty2XiPTbZMp0nOUHBLT5HrJM1adDUsXwH9xe33TAdrXRs3vmK6DUWozlK7m69RtbKNOQ0kzT0FQp8giG7UuVQ/UP2Wkoh02o3r/6BeoInyvt3iv599JFKh8fJuCoQ/tcdQzI6LqqlkyrNFgU8U/+m+erZGwsCS20FgdbfGevXg== 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=YL3rNF3bVIWWesjUtRMnKUzcAdmx/Q4qIjuI7iMM2fY=; b=iXDNzdrqem6g1j1qaROHiLMXJxuZQihCV03ky2xm2vmq3VttJRB0adBymu3RNy9hyksmtzpdT0owlMRykChkMAr97PdtKXAKZh5RQvvcXclb8Q95lS+QAWPRgbTKADimC+rP6DwPri34AYH5KU1D/Tax33YQMadpiAQ/c0D5pkd42Mj9v9aHDH9My/c1nrJYRuwww9YGqGBLPvPYjrfEjK361al0Ltn9MhG69ejgBLVJiyBpTPEbfucNk5Qmh8Bc3O1Q4WXqB2NpLF7qO3qB5Zm1OgLjLjrSjhyoe19jZcX343pBLKs5NKcK51Sb9aC3SYULY4dob9r2cnuNOFAbcg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=vger.kernel.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) 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=YL3rNF3bVIWWesjUtRMnKUzcAdmx/Q4qIjuI7iMM2fY=; b=CwBXm1Qjj1Oo+SQSsBUBgGHSbWbbqIsXXCFACmPXajq6SQxdJ0OWhxn1RO4gzYWYJLi02SU+cV1r0kWp5d8OcWqOp0h5HgOVoiB7mhqVADHnRH7S5chOvD4Xssfu8nNXqDespDTop4z8JxLG69p9Ups1z0+Z51btwmqFKEDsOSo= Received: from PH7PR17CA0032.namprd17.prod.outlook.com (2603:10b6:510:323::22) by LV2PR12MB5895.namprd12.prod.outlook.com (2603:10b6:408:173::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9587.12; Tue, 3 Feb 2026 14:57:39 +0000 Received: from CY4PEPF0000EDD3.namprd03.prod.outlook.com (2603:10b6:510:323:cafe::e4) by PH7PR17CA0032.outlook.office365.com (2603:10b6:510:323::22) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.9542.16 via Frontend Transport; Tue, 3 Feb 2026 14:57:46 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=satlexmb07.amd.com; pr=C Received: from satlexmb07.amd.com (165.204.84.17) by CY4PEPF0000EDD3.mail.protection.outlook.com (10.167.241.199) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9587.10 via Frontend Transport; Tue, 3 Feb 2026 14:57:38 +0000 Received: from airavat.amd.com (10.180.168.240) by satlexmb07.amd.com (10.181.42.216) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.17; Tue, 3 Feb 2026 08:57:34 -0600 From: Raju Rangoju To: CC: , , , , , , , , Raju Rangoju Subject: [PATCH net-next v2 4/4] amd-xgbe: add RSS ethtool self-test Date: Tue, 3 Feb 2026 20:26:58 +0530 Message-ID: <20260203145658.2936778-5-Raju.Rangoju@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260203145658.2936778-1-Raju.Rangoju@amd.com> References: <20260203145658.2936778-1-Raju.Rangoju@amd.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: satlexmb07.amd.com (10.181.42.216) To satlexmb07.amd.com (10.181.42.216) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY4PEPF0000EDD3:EE_|LV2PR12MB5895:EE_ X-MS-Office365-Filtering-Correlation-Id: 0a57fd0d-a800-403d-30bc-08de633492f8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|36860700013|82310400026|7142099003; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?HXLNXEZCwtzWZ4OgipKq9QfdAxWdy5+i0xkRjdwEh1HHQXIO2nB0srH+hKTK?= =?us-ascii?Q?q6a9AHUYBJBKUCar9tYb61cMP6RhIL1QWqqK43oZPYiA6QOTJGPud5/ICT2Y?= =?us-ascii?Q?PNavZoHjABT95nc3VkjE6iDLhC7GCvFv+q2+n7GuUYUXaZD/yPR3TcJBbVJG?= =?us-ascii?Q?N5YAYovOO4/N+WmdzKvPs445qIR1JSCPPPYzxHAfftgddklmt1vqvW9IA5eG?= =?us-ascii?Q?sts8CkIV+iJKGtSdcr8jy/j2R2oXS/m4WrW1hdqI9X0ULsXbAwW7d9vyho8m?= =?us-ascii?Q?OTODLfXA3i9cnEQ4v1z+TvyBiQfHslcq9+/k2uaXQZ8KgfVagZDOf5dbNTTA?= =?us-ascii?Q?znkDvMNK7lilSqm1V4Fil9WrYmzEE/HnvvT3Fn5LH6aMdtGvehmtCC3BSX+O?= =?us-ascii?Q?gIrAVj1idAs3AnKHGlrTLoBwJx6aLsZD6JB6yzTK/FiD41otmctqkuQ5kqsL?= =?us-ascii?Q?Lh045uCVHCQgvakoLE7p4pOLmW9X3bp61E+X1ZUuek48XIh2+0HObywEN1vq?= =?us-ascii?Q?bQsG7lYtLu0fsEqLIxjm+QrHc17biV75j2CEu2QfzNf0hHzecyQCNxiGGUsr?= =?us-ascii?Q?ID5ZnsASW+3mDCUe8NqFFjtS3l2l/aJJld4eDBUSDmIUck0v6qZTo80B9O+7?= =?us-ascii?Q?fMH6bxkd7xA+dWjdiz8wcctUzsaLHNIOQjRM7l2Tnd1oweAeH7ken89bRklu?= =?us-ascii?Q?/RbcP+ZdtGahkB6/cuxZhFy0OS/NWHMauaCT6j5ItFa0fGBRMAIxZBxKF8CS?= =?us-ascii?Q?0pGyjOgyh6iM47r2VkDoFwWqWq615zf2vzFKeoxiXqIsw4Qc53XVVJZykUig?= =?us-ascii?Q?kjEeTeZzoNONDk19ajZ0iBIniLLJqTOrITX32oLmpdGO6cQnNr3opBf5J3Z8?= =?us-ascii?Q?baKsedxbpygu7mTSw0pR8jNPCSdf9CSqQOUuNcEEDBULZ6K58sctue9FHHwK?= =?us-ascii?Q?HEryWoBbM80d0MC+2XKv1k9/e4VbF0i+2tnM8qcmuz7JjQHuIpdZmApZGD5U?= =?us-ascii?Q?F2+bWRREHLpvfhlGoNvgDYGj8gL6CAc46noHVMKLgkDRAxWIYXZCP2wY8Ll8?= =?us-ascii?Q?cFMVTTnfGPveuJR67EVw7kapNJ/emGXrWEyeYzsNTfbPaW2K1iAvHhUrKHTk?= =?us-ascii?Q?N5gjI0EFO+yIfwjhzlwUKGptrv+kOeiR0RyDd8l6JWfa4f9QRlGCT6Fpmgos?= =?us-ascii?Q?3u3IiJjm9ABKbvDOs36Avn4BbFSMtO6Fv6rS5binnN0Mvs/J+afZd5PIc90m?= =?us-ascii?Q?cDigyklGszko909Rq5GAqHA3WyNjZSr9b0vIw5MFMiYaEkhaBs4VYF6CDiIQ?= =?us-ascii?Q?a+RKdFtR/FW6kI4IeAzfUUowOJUaW9M+ftaZvcMask1vtF6pLRrDwla1xltw?= =?us-ascii?Q?1CbZuW3OrPt4S4y6W836KLs3x7G611bSLlcachq93cQFAHf1/rDWJQYvPD2f?= =?us-ascii?Q?VWCorhyWdT0paTmyVV5m49VfNQn4UX91H7S0AkJOiiO1uRDqtDe8bW7SawNT?= =?us-ascii?Q?zwsMFgcxGDFpFLpYmnwUONBe8Osucb9/Mi7ysIlxuX9H4DYJXoDGkgk8ip2m?= =?us-ascii?Q?uEz6NoY0tqz/Q/ZnGgO9nzhXub0dQuSz5iSJjUCdxeFZflxoWMqTLqPtCfHC?= =?us-ascii?Q?rEGAMWhaDoijbMr7qWB0/mx8gkZs1JrApMkOtRHGIw6xnp6ej0BzhnmA+XKl?= =?us-ascii?Q?aZ4wyg=3D=3D?= X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:satlexmb07.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(1800799024)(376014)(36860700013)(82310400026)(7142099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: tglQ2rWrnz6XkJbkiRV+8+hI5Wl54EjJXxUAP8oNHR04SuK5RWCZZHXNqn+2+p+1qsFonV52ZFCOsnL1kvDKXREu4oii7m8geMoOomzJ7QaESiwutmJMPrPgQprRdvDPP7iI3awfPkv0ZY4kdzycbDlal4B067+zIv7pBBkJVzh7zrY4ow8FzL1lMjscc+05d183+7dzGX70gJq8jGqrQwbkPYE5vaTGHTRw7vCipzaUVwF/Om810SXWgG+KTe0X5T+P365gZyJZfOlw7bFmELT2fo45MqOSzaQhGnBRoWhl368DjFQwIkN1DhCQnmZXFE8ZUA5HlqkJ9KBaNW/Wuq/rEyOl7q0Gml01HFBmxIc50ZtmCnjwaKnlkTOa/UDMg6FVRUJUXAk/7hjCRxhYf5/xuVeg3PaewaUUjKL2ltstW5ecIMdhpkLF1qhIWfx4 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Feb 2026 14:57:38.7498 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0a57fd0d-a800-403d-30bc-08de633492f8 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[satlexmb07.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CY4PEPF0000EDD3.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV2PR12MB5895 Content-Type: text/plain; charset="utf-8" Add a Receive Side Scaling (RSS) self-test to the ethtool diagnostic suite to verify that the hardware correctly computes hash values for incoming packets. The test validates RSS functionality by: 1. Checking for RSS hardware feature support (rss bit in MAC_HWF1R) 2. Sending a test packet with specific TCP/UDP ports to trigger hash computation 3. Verifying that the received packet has a non-zero hash value computed by the hardware The test uses the existing loopback infrastructure and requires PHY loopback mode. It uses specific port values (sport=3D0xabc, dport=3D0xdef) to generate a deterministic hash that exercises the RSS hash computation logic. This test helps users verify that RSS is properly configured and functioning, which is essential for multi-queue performance on multi-core systems. Usage: $ ethtool -t Signed-off-by: Raju Rangoju --- drivers/net/ethernet/amd/xgbe/xgbe-selftest.c | 32 +++++++++++++++++++ include/net/selftests.h | 1 + 2 files changed, 33 insertions(+) diff --git a/drivers/net/ethernet/amd/xgbe/xgbe-selftest.c b/drivers/net/et= hernet/amd/xgbe/xgbe-selftest.c index b57826a91361..a4e7decf768f 100644 --- a/drivers/net/ethernet/amd/xgbe/xgbe-selftest.c +++ b/drivers/net/ethernet/amd/xgbe/xgbe-selftest.c @@ -213,8 +213,13 @@ static int xgbe_test_loopback_validate(struct sk_buff = *skb, if (tdata->packet->id !=3D hdr->id) goto out; =20 + /* Validate RSS hash if expected */ + if (tdata->packet->exp_hash && !skb->hash) + goto out; + tdata->ok =3D true; complete(&tdata->comp); + out: kfree_skb(skb); return 0; @@ -267,6 +272,29 @@ static int __xgbe_test_loopback(struct xgbe_prv_data *= pdata, return ret; } =20 +static int xgbe_test_rss(struct xgbe_prv_data *pdata) +{ + struct net_packet_attrs attr =3D {}; + int ret; + + /* Check for RSS hardware support */ + if (!pdata->hw_feat.rss) + return -EOPNOTSUPP; + + attr.dst =3D pdata->netdev->dev_addr; + /* + * Use specific port values to generate a hash. + * The asymmetric port values ensure the hash computation + * produces a non-zero result for test validation. + */ + attr.sport =3D 0xabc; + attr.dport =3D 0xdef; + attr.exp_hash =3D true; + ret =3D __xgbe_test_loopback(pdata, &attr); + + return ret; +} + static int xgbe_test_mac_loopback(struct xgbe_prv_data *pdata) { struct net_packet_attrs attr =3D {}; @@ -370,6 +398,10 @@ static const struct xgbe_test xgbe_selftests[] =3D { .name =3D "ARP Offload ", .lb =3D XGBE_LOOPBACK_PHY, .fn =3D xgbe_test_arpoffload, + }, { + .name =3D "RSS ", + .lb =3D XGBE_LOOPBACK_PHY, + .fn =3D xgbe_test_rss, } }; =20 diff --git a/include/net/selftests.h b/include/net/selftests.h index c36e07406ad4..18a9b4830dfc 100644 --- a/include/net/selftests.h +++ b/include/net/selftests.h @@ -19,6 +19,7 @@ struct net_packet_attrs { u8 id; u16 queue_mapping; bool bad_csum; + u32 exp_hash; }; =20 struct net_test_priv { --=20 2.34.1