From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-oo1-f52.google.com (mail-oo1-f52.google.com [209.85.161.52]) (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 EB8BD261B71 for ; Sat, 15 Aug 2026 00:48:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.161.52 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786754922; cv=none; b=UaFe5VW+862HfLIgwZ+rxoz2Y+qroo9CTfE3nKe3fXG2F22i/PCbafQd9KU0jTQQIs/2FuGeovkm9/qL2OLiiU+X3hAp2ASmcmQ2tIziMbpaV54GljES9aMy0Qs37l+7RCYAwdbmQIxH+c82GX+mV2NFzx3JDnynNIIGyS/IUmE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786754922; c=relaxed/simple; bh=1LnCRgjE5GrtVilnDq6Mw+CJnt8OEZLKDembPlnG1UE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=PSvI99viecoJCDTE6h5YPvzSl/jeKNt1Eq0KmvCnICzZxMMOwdkb0sXYYT9fAANFR+/1T+5wvO+HdrQns1YKePgoH4rZCsiWLo+6epiUrnOXcJ3JR3LdFrXfIFhFKiNFNWlunLlv6N6QmAcIQ/I7yi+ynRV7+fMQLZO1bOvcYww= 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=biDmOmnD; arc=none smtp.client-ip=209.85.161.52 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="biDmOmnD" Received: by mail-oo1-f52.google.com with SMTP id 006d021491bc7-6acbf97e9a1so1082437eaf.1 for ; Fri, 14 Aug 2026 17:48:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1786754919; x=1787359719; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=Kbg4qcFK/mBxoYXCkGvYYK5TXUGZpjr2DCvrJZaXNS8=; b=biDmOmnD7DTVdha8hx+DQkfJo+m7eWvL2KNHnqgpVwgSSBQp4dOSCQPg2JstGhupJZ jLCmqX9/opdGbGpQ6VCF2jtojZ/XPIw2RT49PkObJiL9A0lkqYMjAF529RapyAHlSqZ8 CFPOA70KWgu223eIeQaXrx5HR1l/8TVpcv8EALoO3sPJPcLMpZBoUIMN0T48HUpu9jO0 37RxqNjymsIGuyzmQ4GhjIvh9QQyiWlLLuIOLbRPODyrQNNm5eoUZZIEcR7tWKppgn3M HJ7FVSiGMbwbqqfJLxMBSvMWJ5irY8iYLLHZ2um3OC3sHOdTO0A345PHRsZ/cOmm/Ket /xGQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786754919; x=1787359719; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=Kbg4qcFK/mBxoYXCkGvYYK5TXUGZpjr2DCvrJZaXNS8=; b=fKxMkHW/s3UUJtatQYInoGPGPP7UmCskUpDWgqXCaVALiGOUOQPbjSm9tDGKcYwx12 p+L8v0oo1ybYXuLl9r0JwTrLXzlg0DxEBTkbtCGkidH5TMpHQtEwj7RfUyfqImesOut/ 1Ah7myPW6v+1YkwzEqyLpChTDXX5kqegn63QIUQHOX4CseHC93ENzTcxhiS/vpvqUJ6P U++xU0jycGWfX3xfr16GxLPkzp2M6h4qrnBAtmYkZJnBzkvYd+8ddVzRpZnvfoemp8yO ohNPRJSsNUdNOB28l29sfoR/5Jx59IoPM8CZ41d/T2WwBRArikJv+LoL9stOKLRIcl2I SbCQ== X-Forwarded-Encrypted: i=1; AHgh+RoFXM1Ehs7T74z+ntx2lOAY94UJV+fEglLzGZLCNQkwxzw1ugStL3nLpYGf5vBHMQ6g4h0hSGBkVtV1/M0=@vger.kernel.org X-Gm-Message-State: AOJu0YzEHZ00lE+aHjUIEXHddA1DHScNFeKGN33+MaUtRF0RPS5Nh18V 5OBPkdk9nd91Hgq7ioggsgCOK1fKK/8mo54yewTz/hVJvI0egO0dDNFV X-Gm-Gg: AR+sD10snL3mpuV2Kx8Wqe5B1nFzpO5i9paLKCyy3WuicNbeC7hZe/zwpUJ8LeKf/t/ T8uFtiwWdWDdszHzkBMvy9DkTSiptDEcTZGVFe7wwSPX+MNR0ygmBOcvHGRR6VGQ9ujarU187zs ynG7cGyU6Ai3ogKobsMbfzHlmbvoYj+k2vtFxvhGmNbum8QXra+GtMY1CgF5qdlb4pEpFhukR3a avfDiIPKUb4znv6pKqfrlh6dsZG/ihvj2+LMJdCH6Scm9Kuyd+lq9iGeFhXyVNZ6Oc3mbw9V2YG hyN9UOpgMUakm5ivxOgSLx+lgmafwucRlbFRni/Ezbcxe0xCCMiuKG1bf+gr+zKLLO/iT8qv/Kk WQys5HtrvROroBiBOx3SUtZRiXn90ByqPycs7u2nRmtAPd/ta4Iz6B/qe4aNimsLdfvXfZm7A+h 9ySCv8LE6NaagCAcBblRo2CpmpdxCX5+RbVDM367dhFDJyZKvPzh9vyDysy3OMDhY1EVzggG61u dJuXnpta+d7QnS3HHMNpUl1gV0B5Tf/q2v2isDew50ZvHhX2rSlssxzuCMiAW9Ed6svnZa73h5r /rnaU4f1wEZXoDXhOjX7sEzyC9pwwSZSTZ06n6odkxG1xl1l9/t8h7HJKAqoGb3Ct2FBr5pccMl De81NFraAGFpD9usSyg== X-Received: by 2002:a05:6820:2916:b0:6ac:9729:6710 with SMTP id 006d021491bc7-6b0d6a8e9b9mr8697804eaf.18.1786754919602; Fri, 14 Aug 2026 17:48:39 -0700 (PDT) Received: from [127.0.1.1] (184-96-154-59.hlrn.qwest.net. [184.96.154.59]) by smtp.gmail.com with ESMTPSA id 006d021491bc7-6b0d9574d7csm3240730eaf.2.2026.08.14.17.48.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 14 Aug 2026 17:48:39 -0700 (PDT) From: James Hilliard Date: Fri, 14 Aug 2026 18:46:17 -0600 Subject: [PATCH net-next 3/3] net: mdio: release fw_devlink proxies after population 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: 7bit Message-Id: <20260814-submit-phy-package-fwdevlink-v1-v1-3-2319844f057a@gmail.com> References: <20260814-submit-phy-package-fwdevlink-v1-v1-0-2319844f057a@gmail.com> In-Reply-To: <20260814-submit-phy-package-fwdevlink-v1-v1-0-2319844f057a@gmail.com> To: Rob Herring , Saravana Kannan , Greg Kroah-Hartman , "Rafael J. Wysocki" , Danilo Krummrich , Andrew Lunn , Heiner Kallweit , Russell King , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni Cc: Christian Marangi , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, driver-core@lists.linux.dev, netdev@vger.kernel.org, James Hilliard X-Mailer: b4 0.15.2 fw_devlink creates sync-state-only links from the closest existing ancestor device to suppliers of child devices which have not been added yet. It normally drops those proxy links when the ancestor driver finishes probing. An MDIO bus is a driverless class device, so successful OF population never reaches that lifecycle point. Its proxy links can consequently remain forever and prevent suppliers from receiving sync_state() even after the real PHY devices have acquired and activated their own links. Call the driver-core cleanup helper after successful OF MDIO population. Only sync-state-only links are removed; the real PHY links continue to enforce dependency and runtime-PM ordering. Signed-off-by: James Hilliard --- drivers/net/mdio/of_mdio.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/net/mdio/of_mdio.c b/drivers/net/mdio/of_mdio.c index b8d298c04d3f..49f9b4062cf5 100644 --- a/drivers/net/mdio/of_mdio.c +++ b/drivers/net/mdio/of_mdio.c @@ -229,7 +229,7 @@ int __of_mdiobus_register(struct mii_bus *mdio, struct device_node *np, goto unregister; if (!scanphys) - return 0; + goto done; /* auto scan for PHYs with empty reg property */ for_each_available_child_of_node(np, child) { @@ -261,6 +261,9 @@ int __of_mdiobus_register(struct mii_bus *mdio, struct device_node *np, } } +done: + device_links_drop_sync_state_only(&mdio->dev); + return 0; put_unregister: -- 2.53.0