From nobody Mon Jun 8 19:46:23 2026 Received: from mail-pl1-f179.google.com (mail-pl1-f179.google.com [209.85.214.179]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6C4B8379C36 for ; Wed, 27 May 2026 06:30:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.179 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779863423; cv=none; b=mKDi+7Hnuldoytx5vtUZJTfIH7WSdvMNVtCplm6Y75RF2FO/U5ftT8sGNqK+Nd/JIJDXJRP/v43MpxvENr8XvAx5ixIjYcQF5lMYslkwafEnu/h1FXnWwYQWA8qDNMBg1Aa0MEBw3B5hBv4aATS7Qs1RyzzXp7rWao4/ormZY/g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779863423; c=relaxed/simple; bh=p7/YfuXYML0GE4AZtwU3HzJPFaMOz2OWNoEyKifn68o=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:To:Cc; b=Uznhvbz7N8351xU+UEFYzG+3FPGK1zuzrxHr9s+W9b09z1MI47DjXMUG+N8uTeZdCFLVLOG87tEbfdsgjq06ZhnhVSVbSf/yQWsCOwzGq4JI/OKnyO8AE7X/Fq0C1qldeH+ImYYjrXhQCJagccNYATk1kWIkQ+52XQdTmEgz+eM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=FbfzwQCU; arc=none smtp.client-ip=209.85.214.179 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="FbfzwQCU" Received: by mail-pl1-f179.google.com with SMTP id d9443c01a7336-2ba21d32776so83569855ad.2 for ; Tue, 26 May 2026 23:30:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779863422; x=1780468222; darn=vger.kernel.org; h=cc:to:message-id:content-transfer-encoding:mime-version:subject :date:from:from:to:cc:subject:date:message-id:reply-to; bh=tEobivHhAFBg6wC9f9EbG7ESxRYSJIwSn6CaqEsSQp4=; b=FbfzwQCUZf9IqoXB+dOZuFOJZH7+wKNk7OG/7yFcsrFlfwudEHC6A4jYCV9ywwKybN 4mjBQza7IbOCAYwxY+yH7muF84H+eCqelZypXSBvLLdDwe1ESSmQj0ji+4dgTczYx9mZ SRLSbAU/e/9hy3IjIKemwdD7JHBM+ZUAsROkDa+x9ULRuRRY1+/RnG9oWsYRlFVDg9fg 82lX5UPsbxkdNt8zPgtefPcFtjlfe61Cjbs7/sYKwFiMZdFsJerUaauYk/T77V8SJaJk DIuXktlRkBUFUCADrZuzEQ7sObTVcpISiUtzttDGMCu665UFySY7eLjJF4vEaU7/MSF2 x7Ow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779863422; x=1780468222; h=cc:to:message-id:content-transfer-encoding:mime-version:subject :date:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=tEobivHhAFBg6wC9f9EbG7ESxRYSJIwSn6CaqEsSQp4=; b=Cp1bojXem7TymQiebbFRJkNeRyhy/BVwxMkud4wkR/ewkycoklhPzqv9Qp7Qvgbaly pInVIZ4s3+IVPAa9udVy+J/fs0gVcUmaAd1CjgIG9L5FRZOQPrI8zXTgX9A3mQ8ljTmw x+i5xFWor1Ocka/bE1wFwP6HoGVMcF7R9u7fGs/69HkFwQS62tkuXfItGPSMpja57jm0 K1wvIbUzUmHP25DleTnQy7O8CJWh5aJduSQ6RISCRlNLUs5eX/r7zPdr9cGSwEyA9wgX 0E71WD+Aal6WdJswLjmvDx3U7fbVRrkCnfDXxaQVgfGWpkNFfodSFrMXjD8JB6pGoM18 I5gQ== X-Forwarded-Encrypted: i=1; AFNElJ93S9KkDxXnVrz1nJdJ9U1clj4PodMvNEomMCrKQKlqNaHqMMFj08YyygGpGEbtBVnUWdBIc9u+KQVXPGM=@vger.kernel.org X-Gm-Message-State: AOJu0YzAtL8D4DjzDi31Y5YrVqeciaPIzySVoURE8dszcaC4tyTaRsZa M8qJy0WZmmfKFPXpijVP5ZrNR99t+wLlyq8j6c2mVN4lLamQXg9H2A2S X-Gm-Gg: Acq92OHv12WOKpZSPk1j5cITXW7egzL/RP6ouF/sLeJYAiHZdEblNirHqJQ18G9Ud8d PbMHaXvCx4rpq4ksdmYqVvxp177U7e2VNk8bam1oJ0GfFX4LshztSItqS1V+7bZKLrEDrmKO6VZ F026MPtEj9Tps4na/YFAbrsqD6pE8Xymx9pYnoMG6z6MwzGykhBCsXM0M3thOc1dZst+NgTHLBe mBkseADShNQjM/qpS1xQM0sZL5dZJYx4bALzppmuLTYuF4WOWkUpn78l31EPHxezEL4DoId5IqN Ag2COfiUms5hEyRS5IoYe6jUcjkVeqi88LKxK/QaPzcAteeQa2jrMRZGFcWhc2Bz40PfQVMXAKd HGwacP1+o0A/IMVcIXiOwRw1yRQihWET9HvN/dOFsI3gyFri/hxEw5Uco6hUJySH8XmdwmyZ75e cHKXMInZNeErhnU6JEk2x83hzMaGxRJvsbFGW461jd7Tg/o/if8MIlAlVxkEMjZtE= X-Received: by 2002:a17:903:2f4c:b0:2ba:9e1c:7cbb with SMTP id d9443c01a7336-2beb063361dmr238682865ad.34.1779863419441; Tue, 26 May 2026 23:30:19 -0700 (PDT) Received: from [127.0.1.1] (61-220-246-151.hinet-ip.hinet.net. [61.220.246.151]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2beb5695f3dsm142687515ad.1.2026.05.26.23.30.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 May 2026 23:30:18 -0700 (PDT) From: Kyle Hsieh Date: Wed, 27 May 2026 14:31:51 +0800 Subject: [PATCH net-next] net: ftgmac100: assign interface name from device tree alias Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260527-addethalias-v1-1-24f5bd2d03cd@gmail.com> X-B4-Tracking: v=1; b=H4sIANaPFmoC/6tWKk4tykwtVrJSqFYqSi3LLM7MzwNyDHUUlJIzE vPSU3UzU4B8JSMDIzMDUyNz3cSUlNSSjMSczMRi3RQj01SjNEMLCzNLcyWgjoKi1LTMCrBp0bG 1tQBZKaunXQAAAA== X-Change-ID: 20260527-addethalias-d25e2f188697 To: Andrew Lunn , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, Kyle Hsieh X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=2788; i=kylehsieh1995@gmail.com; h=from:subject:message-id; bh=p7/YfuXYML0GE4AZtwU3HzJPFaMOz2OWNoEyKifn68o=; b=owEBbQGS/pANAwAKAaWDQrcJVsSBAcsmYgBqFo/YNh2d6Tx7VB2f+NqSa/SZNKW9+/KBcQdVX GwukRe1DRGJATMEAAEKAB0WIQTJHsaNZOdY+THGqJelg0K3CVbEgQUCahaP2AAKCRClg0K3CVbE ge/jB/479gWYjoWaD/rNB0GN1/9VOXkCBKt/b42bJGbnDh3MJXcXfHv/It15pJGoq3svZ4xZfj3 3k8Cp2RVvhOD3/SQALEaq/SG36Up4tw3AH0dSEgSIh55gn6FBQkIT2PiueyZv9WjUM56vSzdtbb OQ/0ZaHnlRDJGkJHPQUIv+ghRnUVnK1b/Vn1H/AEr7Dg1Fz9DDpvHfWu4oMSUElI96r6p+7nVYm VOr7cQ+/IvR2aAnhO0zJCk95Wfey7gb6CqAzikRRbXVLOMyFEViZMH57PsCNblW1JnYIABsCGu4 cpvz4HLx8jqO8AjEm7gHJ++Y1P5sZ0nc9Nv9qK5Xv9fGWiCC X-Developer-Key: i=kylehsieh1995@gmail.com; a=openpgp; fpr=C91EC68D64E758F931C6A897A58342B70956C481 Currently, the ftgmac100 driver relies on the probe order to assign network interface names (e.g., eth0, eth1). This patch allows the driver to fetch the "ethernet" alias ID from the device tree via of_alias_get_id() and assign it to netdev->name before registering the netdev. This provides a standard and robust way to achieve deterministic interface naming (e.g., ethernet0 -> eth0) directly from the device tree, preventing potential userspace race conditions during network setup. Signed-off-by: Kyle Hsieh --- Hi all, This patch series introduces deterministic interface naming for the=20 ftgmac100 driver by utilizing device tree aliases. Background: Currently, ftgmac100 assigns interface names strictly based on probe order.=20 On platforms like the ASPEED AST2600, this often leads to naming collisions=20 (e.g., mac2 and mac3 defaulting to eth0 and eth1).=20 While userspace tools like systemd-udevd are typically responsible for=20 renaming, we encounter a severe race condition on BMC systems: the NCSI=20 driver frequently brings the management interface UP before udev can rename=20 it, resulting in the kernel locking the name and rejecting the rename=20 request. Solution: By parsing the "ethernet" alias from the device tree during probe, the=20 driver can now assign the correct name out-of-the-box, completely=20 bypassing the userspace race condition. Testing: - Tested on ASPEED AST2600 BMC. - Verified that device tree aliases (ethernet0 =3D &mac3, ethernet1 =3D &ma= c2)=20 are correctly applied at probe time. Please review and consider for inclusion. Thanks, Kyle Hsieh --- drivers/net/ethernet/faraday/ftgmac100.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/net/ethernet/faraday/ftgmac100.c b/drivers/net/etherne= t/faraday/ftgmac100.c index 6d2fe5c2f390..e058a10500ee 100644 --- a/drivers/net/ethernet/faraday/ftgmac100.c +++ b/drivers/net/ethernet/faraday/ftgmac100.c @@ -1949,6 +1949,7 @@ static int ftgmac100_probe(struct platform_device *pd= ev) struct ftgmac100 *priv; struct device_node *np; int err =3D 0; + int alias_id; =20 np =3D pdev->dev.of_node; if (np) { @@ -1973,6 +1974,11 @@ static int ftgmac100_probe(struct platform_device *p= dev) if (!netdev) return -ENOMEM; =20 + /* Assign interface name based on DTS alias (e.g., ethernet0 -> eth0) */ + alias_id =3D of_alias_get_id(pdev->dev.of_node, "ethernet"); + if (alias_id >=3D 0) + snprintf(netdev->name, IFNAMSIZ, "eth%d", alias_id); + SET_NETDEV_DEV(netdev, &pdev->dev); =20 netdev->ethtool_ops =3D &ftgmac100_ethtool_ops; --- base-commit: eb3f4b7426cfd2b79d65b7d37155480b32259a11 change-id: 20260527-addethalias-d25e2f188697 Best regards, --=20 Kyle Hsieh