From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f175.google.com (mail-pl1-f175.google.com [209.85.214.175]) (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 7DB6E35839C for ; Sun, 26 Jul 2026 13:26:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.175 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785072412; cv=none; b=YGoVT3cEIVDNkuKdRW4IKd4FQlVY9u01HYp8Ud68KCePfthAF0tMCN1s4oHRT+zD7UPWaVhR630rJ3Ofrtghua3gJv0TmLjTAaTyx2nMC4mpDa1PD/iyoIFxxVwOWXD2n7Fuq9i6FZ9JuSrmQcT8BS64Kn/J+bqhGgNuy6xHzDk= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785072412; c=relaxed/simple; bh=mvM9VPu/Rs7kGZQB3oDZpSGOWjgiJJKe6xhTJLJKuNQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=U+X2YKd2s4tjDfC0v9ilvvtLJlYVdQXrdre71x1eKBnNcppevB1nTboR8bSQg8IY8u9UC6fTjirryyuUcb20JHEsMj5i64xR0YfBFVKee2mxoex0OV7ZOCJKNAd7NN3vczn5j3ZLaCmGAU9G6q9pXcAIRHRR+usMin4GJAsyYHo= 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=MFJqF4Kt; arc=none smtp.client-ip=209.85.214.175 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="MFJqF4Kt" Received: by mail-pl1-f175.google.com with SMTP id d9443c01a7336-2ceae1ed204so18920575ad.0 for ; Sun, 26 Jul 2026 06:26:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785072408; x=1785677208; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=5/TLl71jUWptanjVEHFZh82fCzoKSbTQp3yt1GZ8oxw=; b=MFJqF4Kt9ijo/J11Wo988V5t/krGkneIWF9IPeQizc6ILoB4/vZPPEU31MGmRlcomE 7Qq8Ksc3P1OnkZ0D0F1KMu1yaq9w40Pzw7uu3coebJ6jgMY2+NAkt3aEbUoZpjf82hi6 SnIDVxD4Y2PbdWPCCReG/iQcbrjiGCfGb5ohZKcJcquMRGndW0Gvt2XXX5Kh60V9QqLx X6ga5WZ94As0hDtoSl0MpR0DE3TNhplEVqvVw+OkyWPPDPCiey5vlIO6FeB7rKaTYxQV LMX1xl0p9XSVgeugxpAOvm5ol4pBslsflAXmtBeb5ZtfbN31mDHVw2jNL0Q8ZpczWKsB 52LA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785072408; x=1785677208; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=5/TLl71jUWptanjVEHFZh82fCzoKSbTQp3yt1GZ8oxw=; b=RSexHdMKcryvG4lPhBpWmyB3Wo+sKKMS5lqAJLppzE63OegKhqN9GYS6I9m4Du7B2X sGrbuWbWyZ0a1YV1RWiZ1fPXZ89G5Bj/kw5ZTd7UtdzMPfFQpj0ZmX9gy0rlg4reHMdW lx+FI5jpwE51Hk1ESfevIBC9FD9M/zc/QAFMEVQ4LqLShXdOm2hvAyLrHQyhSkO9ZOz7 9IkF9W8RwVTkofMleCkQaxiarmwam9TuDn8VkGZ9EmqdSTbPhCDLyMboazOtRtFILcpX 4/yYqa65GWG8BCoP8agodROuWRHozl4rQYwK4bOK/Mg4+luiQiUJpc8Z97AI6x1G48Fw b9uA== X-Forwarded-Encrypted: i=1; AHgh+Rq1Y4ZMIPOyxWbnGIQk3mXZKVU4q4/fDj+eDWyVF4m6dnJH8gfhrrP8iqmXwUsAUTQdVx9KujnXRVyrJOM=@vger.kernel.org X-Gm-Message-State: AOJu0Yxb2e4RVhRvAWTwzPUb3TfDlMc4UIYMJNBkgycg3CCA909wjDW7 jVun5oyCA6BVfSkn2M0X7BCuVDrthIk9fuvdw9SKRA4ZDRGdIivUtB5d X-Gm-Gg: AR+sD11bcdDB4kcZhfV/noIPTYvDqP48ofCREUTP687Of3UB71SmLIXE7p9BD6+7JQW MA9cJ+4T2vJufq6FtyiTAw/J34mkMMi5IyrQIv2hdJMCYlCF9NaEjde2ox1rTnlokX+/30iYQxw 6ugfGEVvzvLNDt3w/912eCfdtarKugPLW0v/XDv0ID+6fW3aL8rj4nkQYy9j1kpYIoKTmMePNev NNPRBm9imUZ1t3Sdc/cwS5Ae7gQ+tDJHTCQwYt+WrqQr2Y8nNUmDgm9+G0RpQEOu84868wlYbfe m9bJidXI/k5hBIvlCnnlqL+jGmonMPJQwKFy+kqU1f0PNmsz/MO5kiiLDDhhmXyFiWunHAYHBbl ssWCMAV8JoceSyqaQbeUlVKeT4ZSOd0Rq8xgPx7mtx0Sv8T0Wo+UNYUXygrpTbu7lHcWjmmAp+y A2 X-Received: by 2002:a17:903:988:b0:2ca:281:27fd with SMTP id d9443c01a7336-2cfde845828mr50672695ad.25.1785072408037; Sun, 26 Jul 2026 06:26:48 -0700 (PDT) Received: from server227.. ([39.170.101.209]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2cfde7bbdc2sm20677655ad.42.2026.07.26.06.26.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Jul 2026 06:26:47 -0700 (PDT) From: Zxyan Zhu To: netdev@vger.kernel.org Cc: Andrew Lunn , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Maxime Coquelin , Alexandre Torgue , Russell King , Russell King , Maxime Chevallier , Serge Semin , Romain Gantois , Hariprasad Kelam , linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Zxyan Zhu Subject: [PATCH net-next v2 2/2] net: stmmac: Skip PHY attach if custom PCS is in use Date: Sun, 26 Jul 2026 21:26:18 +0800 Message-Id: <20260726132618.3580612-3-zxyan0222@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260726132618.3580612-1-zxyan0222@gmail.com> References: <20260726132618.3580612-1-zxyan0222@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit When a platform provides a custom PCS via the pcs_init callback, the MAC's phylink_pcs is already configured. In this case, phylink validates against the PCS's supported interfaces and manages link state through the PCS, so no traditional PHY device is needed. Without this, stmmac_init_phy() falls through to the no-phy-node path and errors out with "no phy found" when the DT has no phy-handle for such interfaces. Skip the PHY attach when priv->hw->phylink_pcs is already set and no phy-handle is specified in the device tree. Fixes: f0ef433fc264 ("net: stmmac: introduce pcs_init/pcs_exit stmmac operations") Signed-off-by: Zxyan Zhu --- drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c index 562d20830b94..044ed3b89247 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c @@ -1346,6 +1346,10 @@ static int stmmac_init_phy(struct net_device *dev) int addr = priv->plat->phy_addr; struct phy_device *phydev; + /* If a custom PCS is in use, no PHY is needed */ + if (priv->hw->phylink_pcs) + return 0; + if (addr < 0) { netdev_err(priv->dev, "no phy found\n"); return -ENODEV; -- 2.34.1