diff options
author | Max Krummenacher <max.krummenacher@toradex.com> | 2024-02-21 11:55:03 +0100 |
---|---|---|
committer | Max Krummenacher <max.krummenacher@toradex.com> | 2024-02-21 11:57:13 +0100 |
commit | 5955a854cd8045a8a2a0c3d86d6edd6cb2d772b6 (patch) | |
tree | 71969b16bb3bea65cfb92b3fcb71446f090bdec8 /drivers/net/ethernet/mellanox/mlx5 | |
parent | bafc616f36d0d9fc9cc3c4c6cfab2f31d3702683 (diff) | |
parent | 5a86ca588b3f989d3d0a4841446b699aae8beec4 (diff) |
Merge commit v5.4.132 into fslc-5.15-2.2.x-imx
Revert the following commits before merging, the sources have been
heavely modified by NXP.
5a86ca588b3f9 Revert "perf/imx_ddr: don't enable counter0 if none of 4 counters are used"
56ad67babb7fb Revert "usb: phy: mxs: fix getting wrong state with mxs_phy_is_otg_host()"
50b3a42d82f07 Revert "USB: core: Unite old scheme and new scheme descriptor reads"
cdcf46014f5ca Revert "USB: core: Change usb_get_device_descriptor() API"
2f2af6028f201 Revert "USB: core: Fix race by not overwriting udev->descriptor in hub_port_init()"
9e168d3268f89 Revert "USB: core: Fix oversight in SuperSpeed initialization"
7e95107f9b664 Revert "PCI: dwc: Add start_link/stop_link inlines"
d0bec10a7f796 Revert "PCI: layerscape: Add the endpoint linkup notifier support"
aaf9dc6089bc3 Revert "PCI: layerscape: Add workaround for lost link capabilities during reset"
Conflicts:
arch/arm/boot/dts/imx6qdl.dtsi
arch/arm/boot/dts/imx6sx.dtsi
Keep stable node name changes
drivers/gpu/drm/bridge/adv7511/adv7511_drv.c
Keep stable code change
drivers/media/i2c/ov5640.c
Keep stable code change
Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlx5')
-rw-r--r-- | drivers/net/ethernet/mellanox/mlx5/core/fw_reset.c | 9 | ||||
-rw-r--r-- | drivers/net/ethernet/mellanox/mlx5/core/pci_irq.c | 17 |
2 files changed, 13 insertions, 13 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/fw_reset.c b/drivers/net/ethernet/mellanox/mlx5/core/fw_reset.c index 8c2b249949b9..8ed1549a99c4 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/fw_reset.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/fw_reset.c @@ -274,16 +274,11 @@ static int mlx5_pci_link_toggle(struct mlx5_core_dev *dev) pci_cfg_access_lock(sdev); } /* PCI link toggle */ - err = pci_read_config_word(bridge, cap + PCI_EXP_LNKCTL, ®16); - if (err) - return err; - reg16 |= PCI_EXP_LNKCTL_LD; - err = pci_write_config_word(bridge, cap + PCI_EXP_LNKCTL, reg16); + err = pcie_capability_set_word(bridge, PCI_EXP_LNKCTL, PCI_EXP_LNKCTL_LD); if (err) return err; msleep(500); - reg16 &= ~PCI_EXP_LNKCTL_LD; - err = pci_write_config_word(bridge, cap + PCI_EXP_LNKCTL, reg16); + err = pcie_capability_clear_word(bridge, PCI_EXP_LNKCTL, PCI_EXP_LNKCTL_LD); if (err) return err; diff --git a/drivers/net/ethernet/mellanox/mlx5/core/pci_irq.c b/drivers/net/ethernet/mellanox/mlx5/core/pci_irq.c index df16dc35bb04..2fa84556bc20 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/pci_irq.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/pci_irq.c @@ -138,18 +138,23 @@ out: return ret; } -static void irq_release(struct mlx5_irq *irq) +static void mlx5_system_free_irq(struct mlx5_irq *irq) { - struct mlx5_irq_pool *pool = irq->pool; - - xa_erase(&pool->irqs, irq->index); /* free_irq requires that affinity and rmap will be cleared * before calling it. This is why there is asymmetry with set_rmap * which should be called after alloc_irq but before request_irq. */ irq_set_affinity_hint(irq->irqn, NULL); - free_cpumask_var(irq->mask); free_irq(irq->irqn, &irq->nh); +} + +static void irq_release(struct mlx5_irq *irq) +{ + struct mlx5_irq_pool *pool = irq->pool; + + xa_erase(&pool->irqs, irq->index); + mlx5_system_free_irq(irq); + free_cpumask_var(irq->mask); kfree(irq); } @@ -556,7 +561,7 @@ static void mlx5_irq_pool_free_irqs(struct mlx5_irq_pool *pool) unsigned long index; xa_for_each(&pool->irqs, index, irq) - free_irq(irq->irqn, &irq->nh); + mlx5_system_free_irq(irq); } static void mlx5_irq_pools_free_irqs(struct mlx5_irq_table *table) |