From nobody Mon Feb 9 17:21:48 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (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 58A2E6F53E; Wed, 16 Apr 2025 16:45:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744821912; cv=none; b=dh15fHxbKyXCwNl9+2o0uTBhDx/cbqGRBRD2EqE1tjRjJdLWcJRJ9fzNTM41l3ndHXtn7gAG1kLBrNt2CWaOvQXxNZJQqtmHL447ZwiXO6JbFeu83Twh3CpZy9vm6oMiC//moWAZg0vTwCxvY1ojBZOwRZ57vRzpUSKBaijOx0s= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1744821912; c=relaxed/simple; bh=5GFi/S9V+RPxeDj71v6She90EyPqsjI1DvAkv9zvuRk=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ftCjzPBYUJShApsQbZ7Q9dlIorj/v53/NPCuc7PfLEoXHlDLrA4ck3otZR8RupXBp14OW8TVpgICqn0MPOmc1kymEiaI9EF7uqTrWUp+KuUIDXFw+kGLZ+6wXux+LI/XSlSHkWISqaq+opaTbRuRD+XSrQYSbqhZRFbc5Nr5f80= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=gsCchKDQ; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="gsCchKDQ" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2168FC4CEE2; Wed, 16 Apr 2025 16:45:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1744821910; bh=5GFi/S9V+RPxeDj71v6She90EyPqsjI1DvAkv9zvuRk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=gsCchKDQYSDDnMi/pwI8gZLEMbdalcKBBlw85eYmiIa5uEDm390FEvsSgm9R0RWwN jbv0T891L/P7C6oHPRXziwRI2FeMrGtX+oWrlM+Yw2sErb6Vi9vKi2y2sSFK8230QV LnENN1RJP42K/WWApFQ9wN+SQ+K107HvSPQqUg3hIGIXEZU4odDdsoBz9Zrm2sRliz 61WMC5dZAi+PDlzhQ6YGVne5VpHngSgOawt5B3RbtP1SmbiUvqy5VnbOb6MOJKy6Gh cWhFTZO8dw0BXnQ+5ch2ZuQCeB9CFm/+NrG01/ATAzd1bgvOGy/eSFEGlTssTt9RSr cQGbJHNbhrWtg== From: Philipp Stanner To: Sunil Goutham , Andrew Lunn , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Geetha sowjanya , Subbaraya Sundeep , hariprasad , Bharat Bhushan , Taras Chornyi , Daniele Venzano , Heiner Kallweit , Russell King , Thomas Gleixner , Philipp Stanner , Helge Deller , Ingo Molnar , Simon Horman , Al Viro , Sabrina Dubroca , Jacob Keller Cc: linux-arm-kernel@lists.infradead.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, linux-parisc@vger.kernel.org Subject: [PATCH 7/8] net: thunder_bgx: Use pure PCI devres API Date: Wed, 16 Apr 2025 18:44:07 +0200 Message-ID: <20250416164407.127261-9-phasta@kernel.org> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250416164407.127261-2-phasta@kernel.org> References: <20250416164407.127261-2-phasta@kernel.org> 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 Content-Type: text/plain; charset="utf-8" The currently used function pci_request_regions() is one of the problematic "hybrid devres" PCI functions, which are sometimes managed through devres, and sometimes not (depending on whether pci_enable_device() or pcim_enable_device() has been called before). The PCI subsystem wants to remove this behavior and, therefore, needs to port all users to functions that don't have this problem. Furthermore, the PCI function being managed implies that it's not necessary to call pci_release_regions() manually. Remove the calls to pci_release_regions(). Replace pci_request_regions() with pcim_request_all_regions(). Signed-off-by: Philipp Stanner --- drivers/net/ethernet/cavium/thunder/thunder_bgx.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/net/ethernet/cavium/thunder/thunder_bgx.c b/drivers/ne= t/ethernet/cavium/thunder/thunder_bgx.c index 608cc6af5af1..c9369bdd04e0 100644 --- a/drivers/net/ethernet/cavium/thunder/thunder_bgx.c +++ b/drivers/net/ethernet/cavium/thunder/thunder_bgx.c @@ -1605,7 +1605,7 @@ static int bgx_probe(struct pci_dev *pdev, const stru= ct pci_device_id *ent) return dev_err_probe(dev, err, "Failed to enable PCI device\n"); } =20 - err =3D pci_request_regions(pdev, DRV_NAME); + err =3D pcim_request_all_regions(pdev, DRV_NAME); if (err) { dev_err(dev, "PCI request regions failed 0x%x\n", err); goto err_disable_device; @@ -1616,7 +1616,7 @@ static int bgx_probe(struct pci_dev *pdev, const stru= ct pci_device_id *ent) if (!bgx->reg_base) { dev_err(dev, "BGX: Cannot map CSR memory space, aborting\n"); err =3D -ENOMEM; - goto err_release_regions; + goto err_disable_device; } =20 set_max_bgx_per_node(pdev); @@ -1688,8 +1688,6 @@ static int bgx_probe(struct pci_dev *pdev, const stru= ct pci_device_id *ent) err_enable: bgx_vnic[bgx->bgx_id] =3D NULL; pci_free_irq(pdev, GMPX_GMI_TX_INT, bgx); -err_release_regions: - pci_release_regions(pdev); err_disable_device: pci_disable_device(pdev); pci_set_drvdata(pdev, NULL); @@ -1710,7 +1708,6 @@ static void bgx_remove(struct pci_dev *pdev) pci_free_irq(pdev, GMPX_GMI_TX_INT, bgx); =20 bgx_vnic[bgx->bgx_id] =3D NULL; - pci_release_regions(pdev); pci_disable_device(pdev); pci_set_drvdata(pdev, NULL); } --=20 2.48.1