Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge branch 'phase-out-hybrid-pci-devres-api'

Philipp Stanner says:

====================
Phase out hybrid PCI devres API

Fixes a number of minor issues with the usage of the PCI API in net.
Notbaly, it replaces calls to the sometimes-managed
pci_request_regions() to the always-managed pcim_request_all_regions(),
enabling us to remove that hybrid functionality from PCI.
====================

Link: https://patch.msgid.link/20250425085740.65304-2-phasta@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>

+26 -51
+4 -9
drivers/net/ethernet/cavium/thunder/thunder_bgx.c
··· 1605 1605 return dev_err_probe(dev, err, "Failed to enable PCI device\n"); 1606 1606 } 1607 1607 1608 - err = pci_request_regions(pdev, DRV_NAME); 1608 + err = pcim_request_all_regions(pdev, DRV_NAME); 1609 1609 if (err) { 1610 1610 dev_err(dev, "PCI request regions failed 0x%x\n", err); 1611 - goto err_disable_device; 1611 + goto err_zero_drv_data; 1612 1612 } 1613 1613 1614 1614 /* MAP configuration registers */ ··· 1616 1616 if (!bgx->reg_base) { 1617 1617 dev_err(dev, "BGX: Cannot map CSR memory space, aborting\n"); 1618 1618 err = -ENOMEM; 1619 - goto err_release_regions; 1619 + goto err_zero_drv_data; 1620 1620 } 1621 1621 1622 1622 set_max_bgx_per_node(pdev); ··· 1688 1688 err_enable: 1689 1689 bgx_vnic[bgx->bgx_id] = NULL; 1690 1690 pci_free_irq(pdev, GMPX_GMI_TX_INT, bgx); 1691 - err_release_regions: 1692 - pci_release_regions(pdev); 1693 - err_disable_device: 1694 - pci_disable_device(pdev); 1691 + err_zero_drv_data: 1695 1692 pci_set_drvdata(pdev, NULL); 1696 1693 return err; 1697 1694 } ··· 1707 1710 pci_free_irq(pdev, GMPX_GMI_TX_INT, bgx); 1708 1711 1709 1712 bgx_vnic[bgx->bgx_id] = NULL; 1710 - pci_release_regions(pdev); 1711 - pci_disable_device(pdev); 1712 1713 pci_set_drvdata(pdev, NULL); 1713 1714 } 1714 1715
+1 -1
drivers/net/ethernet/dec/tulip/tulip_core.c
··· 1411 1411 1412 1412 /* grab all resources from both PIO and MMIO regions, as we 1413 1413 * don't want anyone else messing around with our hardware */ 1414 - if (pci_request_regions(pdev, DRV_NAME)) 1414 + if (pcim_request_all_regions(pdev, DRV_NAME)) 1415 1415 return -ENODEV; 1416 1416 1417 1417 ioaddr = pcim_iomap(pdev, TULIP_BAR, tulip_tbl[chip_idx].io_size);
+1 -1
drivers/net/ethernet/dec/tulip/winbond-840.c
··· 375 375 return -ENOMEM; 376 376 SET_NETDEV_DEV(dev, &pdev->dev); 377 377 378 - if (pci_request_regions(pdev, DRV_NAME)) 378 + if (pcim_request_all_regions(pdev, DRV_NAME)) 379 379 goto err_out_netdev; 380 380 381 381 ioaddr = pci_iomap(pdev, TULIP_BAR, netdev_res_size);
+4 -10
drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c
··· 3048 3048 return err; 3049 3049 } 3050 3050 3051 - err = pci_request_regions(pdev, DRV_NAME); 3051 + err = pcim_request_all_regions(pdev, DRV_NAME); 3052 3052 if (err) { 3053 3053 dev_err(dev, "PCI request regions failed 0x%x\n", err); 3054 3054 return err; ··· 3057 3057 err = dma_set_mask_and_coherent(dev, DMA_BIT_MASK(48)); 3058 3058 if (err) { 3059 3059 dev_err(dev, "DMA mask config failed, abort\n"); 3060 - goto err_release_regions; 3060 + return err; 3061 3061 } 3062 3062 3063 3063 pci_set_master(pdev); ··· 3067 3067 qos_txqs = min_t(int, qcount, OTX2_QOS_MAX_LEAF_NODES); 3068 3068 3069 3069 netdev = alloc_etherdev_mqs(sizeof(*pf), qcount + qos_txqs, qcount); 3070 - if (!netdev) { 3071 - err = -ENOMEM; 3072 - goto err_release_regions; 3073 - } 3070 + if (!netdev) 3071 + return -ENOMEM; 3074 3072 3075 3073 pci_set_drvdata(pdev, netdev); 3076 3074 SET_NETDEV_DEV(netdev, &pdev->dev); ··· 3244 3246 err_free_netdev: 3245 3247 pci_set_drvdata(pdev, NULL); 3246 3248 free_netdev(netdev); 3247 - err_release_regions: 3248 - pci_release_regions(pdev); 3249 3249 return err; 3250 3250 } 3251 3251 ··· 3443 3447 pci_free_irq_vectors(pf->pdev); 3444 3448 pci_set_drvdata(pdev, NULL); 3445 3449 free_netdev(netdev); 3446 - 3447 - pci_release_regions(pdev); 3448 3450 } 3449 3451 3450 3452 static struct pci_driver otx2_pf_driver = {
+4 -10
drivers/net/ethernet/marvell/octeontx2/nic/otx2_vf.c
··· 548 548 return err; 549 549 } 550 550 551 - err = pci_request_regions(pdev, DRV_NAME); 551 + err = pcim_request_all_regions(pdev, DRV_NAME); 552 552 if (err) { 553 553 dev_err(dev, "PCI request regions failed 0x%x\n", err); 554 554 return err; ··· 557 557 err = dma_set_mask_and_coherent(dev, DMA_BIT_MASK(48)); 558 558 if (err) { 559 559 dev_err(dev, "DMA mask config failed, abort\n"); 560 - goto err_release_regions; 560 + return err; 561 561 } 562 562 563 563 pci_set_master(pdev); ··· 565 565 qcount = num_online_cpus(); 566 566 qos_txqs = min_t(int, qcount, OTX2_QOS_MAX_LEAF_NODES); 567 567 netdev = alloc_etherdev_mqs(sizeof(*vf), qcount + qos_txqs, qcount); 568 - if (!netdev) { 569 - err = -ENOMEM; 570 - goto err_release_regions; 571 - } 568 + if (!netdev) 569 + return -ENOMEM; 572 570 573 571 pci_set_drvdata(pdev, netdev); 574 572 SET_NETDEV_DEV(netdev, &pdev->dev); ··· 763 765 err_free_netdev: 764 766 pci_set_drvdata(pdev, NULL); 765 767 free_netdev(netdev); 766 - err_release_regions: 767 - pci_release_regions(pdev); 768 768 return err; 769 769 } 770 770 ··· 811 815 pci_free_irq_vectors(vf->pdev); 812 816 pci_set_drvdata(pdev, NULL); 813 817 free_netdev(netdev); 814 - 815 - pci_release_regions(pdev); 816 818 } 817 819 818 820 static struct pci_driver otx2vf_driver = {
+5 -7
drivers/net/ethernet/marvell/octeontx2/nic/rep.c
··· 765 765 return err; 766 766 } 767 767 768 - err = pci_request_regions(pdev, DRV_NAME); 768 + err = pcim_request_all_regions(pdev, DRV_NAME); 769 769 if (err) { 770 770 dev_err(dev, "PCI request regions failed 0x%x\n", err); 771 771 return err; ··· 774 774 err = dma_set_mask_and_coherent(dev, DMA_BIT_MASK(48)); 775 775 if (err) { 776 776 dev_err(dev, "DMA mask config failed, abort\n"); 777 - goto err_release_regions; 777 + goto err_set_drv_data; 778 778 } 779 779 780 780 pci_set_master(pdev); ··· 782 782 priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL); 783 783 if (!priv) { 784 784 err = -ENOMEM; 785 - goto err_release_regions; 785 + goto err_set_drv_data; 786 786 } 787 787 788 788 pci_set_drvdata(pdev, priv); ··· 799 799 800 800 err = otx2_init_rsrc(pdev, priv); 801 801 if (err) 802 - goto err_release_regions; 802 + goto err_set_drv_data; 803 803 804 804 priv->iommu_domain = iommu_get_domain_for_dev(dev); 805 805 ··· 822 822 otx2_disable_mbox_intr(priv); 823 823 otx2_pfaf_mbox_destroy(priv); 824 824 pci_free_irq_vectors(pdev); 825 - err_release_regions: 825 + err_set_drv_data: 826 826 pci_set_drvdata(pdev, NULL); 827 - pci_release_regions(pdev); 828 827 return err; 829 828 } 830 829 ··· 843 844 otx2_pfaf_mbox_destroy(priv); 844 845 pci_free_irq_vectors(priv->pdev); 845 846 pci_set_drvdata(pdev, NULL); 846 - pci_release_regions(pdev); 847 847 } 848 848 849 849 static struct pci_driver rvu_rep_driver = {
+2 -4
drivers/net/ethernet/marvell/prestera/prestera_pci.c
··· 845 845 goto err_pci_enable_device; 846 846 } 847 847 848 - err = pci_request_regions(pdev, driver_name); 848 + err = pcim_request_all_regions(pdev, driver_name); 849 849 if (err) { 850 - dev_err(&pdev->dev, "pci_request_regions failed\n"); 850 + dev_err(&pdev->dev, "pcim_request_all_regions failed\n"); 851 851 goto err_pci_request_regions; 852 852 } 853 853 ··· 938 938 err_pp_ioremap: 939 939 err_mem_ioremap: 940 940 err_dma_mask: 941 - pci_release_regions(pdev); 942 941 err_pci_request_regions: 943 942 err_pci_enable_device: 944 943 return err; ··· 952 953 pci_free_irq_vectors(pdev); 953 954 destroy_workqueue(fw->wq); 954 955 prestera_fw_uninit(fw); 955 - pci_release_regions(pdev); 956 956 } 957 957 958 958 static const struct pci_device_id prestera_pci_devices[] = {
+1 -1
drivers/net/ethernet/natsemi/natsemi.c
··· 846 846 return -ENOMEM; 847 847 SET_NETDEV_DEV(dev, &pdev->dev); 848 848 849 - i = pci_request_regions(pdev, DRV_NAME); 849 + i = pcim_request_all_regions(pdev, DRV_NAME); 850 850 if (i) 851 851 goto err_pci_request_regions; 852 852
+1 -1
drivers/net/ethernet/sis/sis900.c
··· 468 468 SET_NETDEV_DEV(net_dev, &pci_dev->dev); 469 469 470 470 /* We do a request_region() to register /proc/ioports info. */ 471 - ret = pci_request_regions(pci_dev, "sis900"); 471 + ret = pcim_request_all_regions(pci_dev, "sis900"); 472 472 if (ret) 473 473 goto err_out; 474 474
+3 -7
drivers/net/mdio/mdio-thunder.c
··· 40 40 return err; 41 41 } 42 42 43 - err = pci_request_regions(pdev, KBUILD_MODNAME); 43 + err = pcim_request_all_regions(pdev, KBUILD_MODNAME); 44 44 if (err) { 45 - dev_err(&pdev->dev, "pci_request_regions failed\n"); 45 + dev_err(&pdev->dev, "pcim_request_all_regions failed\n"); 46 46 goto err_disable_device; 47 47 } 48 48 49 49 nexus->bar0 = pcim_iomap(pdev, 0, pci_resource_len(pdev, 0)); 50 50 if (!nexus->bar0) { 51 51 err = -ENOMEM; 52 - goto err_release_regions; 52 + goto err_disable_device; 53 53 } 54 54 55 55 i = 0; ··· 107 107 } 108 108 return 0; 109 109 110 - err_release_regions: 111 - pci_release_regions(pdev); 112 - 113 110 err_disable_device: 114 111 pci_set_drvdata(pdev, NULL); 115 112 return err; ··· 126 129 mdiobus_unregister(bus->mii_bus); 127 130 oct_mdio_writeq(0, bus->register_base + SMI_EN); 128 131 } 129 - pci_release_regions(pdev); 130 132 pci_set_drvdata(pdev, NULL); 131 133 } 132 134