From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-ot1-f43.google.com (mail-ot1-f43.google.com [209.85.210.43]) (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 D0AE23EB0E9 for ; Mon, 17 Aug 2026 00:00:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.43 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786924844; cv=none; b=iQLqkL0ioqphVl/OIPvbBdipONiRbvfh06S/X13FYCRwZp4Ad6Kw0fHj1kgb22H9OjsDYQ46KCMpi1Ruy5vPD86XH8zYT22Aue5gHQJWbcBcR5r3iVWCuFCpo8hD3Zo5+hB9Ykrhg+wbjd58NUDTbt0Wi3E9hTvZHEKfHhhUMTs= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786924844; c=relaxed/simple; bh=1LnCRgjE5GrtVilnDq6Mw+CJnt8OEZLKDembPlnG1UE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=DVTJlgBv6Vl301OdyPcFgJ8EtnEp/tNhcUY2Hp847P6xep2SS+7H3LEkvTMBJm7ziuX+Zm+pT3poLbg5YydPsedDOWBO1aZeBPVy+lePkLK00Dg6z5HRH4E/p8AiRS1dFc4yw8L3+jlK0xwMhpivH7vxPUPTFjnan97moT6a8oA= 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=HrS2rF5r; arc=none smtp.client-ip=209.85.210.43 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="HrS2rF5r" Received: by mail-ot1-f43.google.com with SMTP id 46e09a7af769-7ee37dc91f5so1668950a34.3 for ; Sun, 16 Aug 2026 17:00:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1786924841; x=1787529641; 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=HrS2rF5rGgGKj//WVctl2fbhNdq4klAxYjCwG6ILjiUP0GWlVkM0W2Kl7fyz5qtMWB GLlHxSUm9OxuV6hiKcC2wheLO5fTxzPdRuBsR3HpJG6v+ietX4SCRGwMM5M+yPdBcRi0 wY/zwv1tMq+1Bo3W/gLXevD/sP6xf6EkPYJ3/SDtgdovfMA0z1iduwR6YVz2rfqKOLDq SPG/J+W90mg6LhiRsCAK9+jmvAJX4xWkpnotqkeqPJMmTZ4J9N5BvrkLi/0ruAJZuQOV EqG08ViGHPe1WfAPpeqWjp8VYx7ltp6IAJSJOR0BTy1FIbEs0GJZCtdrAFFc6uh1s9VG jwkQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786924841; x=1787529641; 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=nvwH/sgyExysOAyObZhlSWtwdHqE1B6bZAK2/LoGlLhnFzCLknoUln2yClUdRNs30d YBuqCDGXIS8HiFdNBFm5imsB2VOwcnJ3pKF2mS3t1rLAobGPb9lm3wsM7hV047b1lYwf 2SWDeYJ7yTopQMVvwAP4Lak/1JB3p5YfpnkKzxLOLBX/dz9j/jC4jsuifF0a5bS6a32c 7YeXByEWtWKKmLtHR8f8KYSvv9Xg/9RztNna3leVeaV5Wn8eJ6AuTFmNleAb8iqlBMBz N4O0Lm4HdcKDFxVfq+P3k19lhxHn8vuQPh5AvS5zLDNc+0OHS3Ms7dLZQC2RpoS7fcm6 qc+A== X-Forwarded-Encrypted: i=1; AHgh+RrKMulCPPMKjUxN+1PlcsNenlU3zacmSuKaDJQ4EGf9xw1lblg9uGMG6ik3CMdet+t7eq/19Xy/sfn3NZU=@vger.kernel.org X-Gm-Message-State: AOJu0Yxbe+x23FjTk7svV2gNYFbhx8xlKQFjxoUOAFZeUcxU8jSGeL8t OQSe+pNTFhUX7p29EHn9MvYdHURWcfyh2BMp0YtHTEBctpMXqYRQZcSz X-Gm-Gg: AR+sD11UE4YiUFCZlLsarZE74yn13uyZrIkgsdI9GgrA3uQVBGX1Ds2UXkqRHi6Zaxg 52896dZ9494YQPcF2qJ7+YrFtRFK0TbU79plFnHruWVCL0wJ4rJsXpVoW3fB5eu5HjyllJP3Tab 0xm7hWAn89KwNq9V9MOp96jVtv2gCk+zKbP08CCE/5ceZnk2ieOGkQ0cNpitckyEYGNWygpRD+k g9HPlpbluMqdrhkASO43y0xkf3lXapylFQcRvcaDnAqr0pkw+JwCZP15lpHCNZfJfXwd8k5xi8X vQOPbDEyzYAEv6D6IWg40pFlk3LpHLPFLXud3Fz99Sh2tu/jTQ4NC2HfzDw0HqdCe10oh+yau6x oiUTNztCehIw47AigyoQjwoGwPurKWsLjNoTiPlzQHPmzUXm3OhlqQnKcqJCqfUKhKF6EqJOZGx BHrHLHj4QXt8V/06H2VL6qp8ywDslb0bIJ+hSj11imGbqJcQkosq1GKxTPt1BT9E7sb0HA4bH3A DvGYbqyQ7f9mP6bJHkH/fDN3SmV0tmKNEUuY6gJA7R0HnIJrod8TzDLYSSRCQz7nDdJo1xOO7R7 Q35C9Lmfg2Xms5Wd65ecFOD2dHdXCj7TQZB4ys7MtFj6g+fSjIoW5tXF5h16XK3lKXMSL3QZNa1 JOdtu3QPByizligGx X-Received: by 2002:a05:6808:1916:b0:48f:c907:7a40 with SMTP id 5614622812f47-4b241e1499cmr17948145b6e.11.1786924840611; Sun, 16 Aug 2026 17:00:40 -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 5614622812f47-4b2714dc18asm2556802b6e.17.2026.08.16.17.00.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 16 Aug 2026 17:00:39 -0700 (PDT) From: James Hilliard Date: Sun, 16 Aug 2026 18:00:31 -0600 Subject: [PATCH net-next v2 4/4] 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: <20260816-submit-phy-package-fwdevlink-v1-v2-4-23e55dd59fad@gmail.com> References: <20260816-submit-phy-package-fwdevlink-v1-v2-0-23e55dd59fad@gmail.com> In-Reply-To: <20260816-submit-phy-package-fwdevlink-v1-v2-0-23e55dd59fad@gmail.com> To: Rob Herring , Saravana Kannan , Greg Kroah-Hartman , "Rafael J. Wysocki" , Danilo Krummrich , Andrew Lunn , Christian Marangi , "David S. Miller" , Heiner Kallweit , Russell King , Eric Dumazet , Jakub Kicinski , Paolo Abeni Cc: 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