mirror of
https://git.proxmox.com/git/mirror_ubuntu-kernels.git
synced 2025-12-08 09:18:29 +00:00
net/mlx5: Remove initial segmentation duplicate definitions
Device definitions belong in mlx5_ifc, remove the duplicates in mlx5_core.h. Signed-off-by: Gal Pressman <gal@nvidia.com> Reviewed-by: Jianbo Liu <jianbol@nvidia.com> Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
This commit is contained in:
parent
bcad0e5312
commit
91a72ada66
@ -366,18 +366,18 @@ int mlx5_cmd_fast_teardown_hca(struct mlx5_core_dev *dev)
|
|||||||
return -EIO;
|
return -EIO;
|
||||||
}
|
}
|
||||||
|
|
||||||
mlx5_set_nic_state(dev, MLX5_NIC_IFC_DISABLED);
|
mlx5_set_nic_state(dev, MLX5_INITIAL_SEG_NIC_INTERFACE_DISABLED);
|
||||||
|
|
||||||
/* Loop until device state turns to disable */
|
/* Loop until device state turns to disable */
|
||||||
end = jiffies + msecs_to_jiffies(delay_ms);
|
end = jiffies + msecs_to_jiffies(delay_ms);
|
||||||
do {
|
do {
|
||||||
if (mlx5_get_nic_state(dev) == MLX5_NIC_IFC_DISABLED)
|
if (mlx5_get_nic_state(dev) == MLX5_INITIAL_SEG_NIC_INTERFACE_DISABLED)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
cond_resched();
|
cond_resched();
|
||||||
} while (!time_after(jiffies, end));
|
} while (!time_after(jiffies, end));
|
||||||
|
|
||||||
if (mlx5_get_nic_state(dev) != MLX5_NIC_IFC_DISABLED) {
|
if (mlx5_get_nic_state(dev) != MLX5_INITIAL_SEG_NIC_INTERFACE_DISABLED) {
|
||||||
dev_err(&dev->pdev->dev, "NIC IFC still %d after %lums.\n",
|
dev_err(&dev->pdev->dev, "NIC IFC still %d after %lums.\n",
|
||||||
mlx5_get_nic_state(dev), delay_ms);
|
mlx5_get_nic_state(dev), delay_ms);
|
||||||
return -EIO;
|
return -EIO;
|
||||||
|
|||||||
@ -116,9 +116,9 @@ u32 mlx5_health_check_fatal_sensors(struct mlx5_core_dev *dev)
|
|||||||
return MLX5_SENSOR_PCI_COMM_ERR;
|
return MLX5_SENSOR_PCI_COMM_ERR;
|
||||||
if (pci_channel_offline(dev->pdev))
|
if (pci_channel_offline(dev->pdev))
|
||||||
return MLX5_SENSOR_PCI_ERR;
|
return MLX5_SENSOR_PCI_ERR;
|
||||||
if (mlx5_get_nic_state(dev) == MLX5_NIC_IFC_DISABLED)
|
if (mlx5_get_nic_state(dev) == MLX5_INITIAL_SEG_NIC_INTERFACE_DISABLED)
|
||||||
return MLX5_SENSOR_NIC_DISABLED;
|
return MLX5_SENSOR_NIC_DISABLED;
|
||||||
if (mlx5_get_nic_state(dev) == MLX5_NIC_IFC_SW_RESET)
|
if (mlx5_get_nic_state(dev) == MLX5_INITIAL_SEG_NIC_INTERFACE_SW_RESET)
|
||||||
return MLX5_SENSOR_NIC_SW_RESET;
|
return MLX5_SENSOR_NIC_SW_RESET;
|
||||||
if (sensor_fw_synd_rfr(dev))
|
if (sensor_fw_synd_rfr(dev))
|
||||||
return MLX5_SENSOR_FW_SYND_RFR;
|
return MLX5_SENSOR_FW_SYND_RFR;
|
||||||
@ -185,7 +185,7 @@ static bool reset_fw_if_needed(struct mlx5_core_dev *dev)
|
|||||||
/* Write the NIC interface field to initiate the reset, the command
|
/* Write the NIC interface field to initiate the reset, the command
|
||||||
* interface address also resides here, don't overwrite it.
|
* interface address also resides here, don't overwrite it.
|
||||||
*/
|
*/
|
||||||
mlx5_set_nic_state(dev, MLX5_NIC_IFC_SW_RESET);
|
mlx5_set_nic_state(dev, MLX5_INITIAL_SEG_NIC_INTERFACE_SW_RESET);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -246,13 +246,13 @@ recover_from_sw_reset:
|
|||||||
/* Recover from SW reset */
|
/* Recover from SW reset */
|
||||||
end = jiffies + msecs_to_jiffies(delay_ms);
|
end = jiffies + msecs_to_jiffies(delay_ms);
|
||||||
do {
|
do {
|
||||||
if (mlx5_get_nic_state(dev) == MLX5_NIC_IFC_DISABLED)
|
if (mlx5_get_nic_state(dev) == MLX5_INITIAL_SEG_NIC_INTERFACE_DISABLED)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
msleep(20);
|
msleep(20);
|
||||||
} while (!time_after(jiffies, end));
|
} while (!time_after(jiffies, end));
|
||||||
|
|
||||||
if (mlx5_get_nic_state(dev) != MLX5_NIC_IFC_DISABLED) {
|
if (mlx5_get_nic_state(dev) != MLX5_INITIAL_SEG_NIC_INTERFACE_DISABLED) {
|
||||||
dev_err(&dev->pdev->dev, "NIC IFC still %d after %lums.\n",
|
dev_err(&dev->pdev->dev, "NIC IFC still %d after %lums.\n",
|
||||||
mlx5_get_nic_state(dev), delay_ms);
|
mlx5_get_nic_state(dev), delay_ms);
|
||||||
}
|
}
|
||||||
@ -272,26 +272,26 @@ static void mlx5_handle_bad_state(struct mlx5_core_dev *dev)
|
|||||||
u8 nic_interface = mlx5_get_nic_state(dev);
|
u8 nic_interface = mlx5_get_nic_state(dev);
|
||||||
|
|
||||||
switch (nic_interface) {
|
switch (nic_interface) {
|
||||||
case MLX5_NIC_IFC_FULL:
|
case MLX5_INITIAL_SEG_NIC_INTERFACE_FULL_DRIVER:
|
||||||
mlx5_core_warn(dev, "Expected to see disabled NIC but it is full driver\n");
|
mlx5_core_warn(dev, "Expected to see disabled NIC but it is full driver\n");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MLX5_NIC_IFC_DISABLED:
|
case MLX5_INITIAL_SEG_NIC_INTERFACE_DISABLED:
|
||||||
mlx5_core_warn(dev, "starting teardown\n");
|
mlx5_core_warn(dev, "starting teardown\n");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MLX5_NIC_IFC_NO_DRAM_NIC:
|
case MLX5_INITIAL_SEG_NIC_INTERFACE_NO_DRAM_NIC:
|
||||||
mlx5_core_warn(dev, "Expected to see disabled NIC but it is no dram nic\n");
|
mlx5_core_warn(dev, "Expected to see disabled NIC but it is no dram nic\n");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MLX5_NIC_IFC_SW_RESET:
|
case MLX5_INITIAL_SEG_NIC_INTERFACE_SW_RESET:
|
||||||
/* The IFC mode field is 3 bits, so it will read 0x7 in 2 cases:
|
/* The IFC mode field is 3 bits, so it will read 0x7 in 2 cases:
|
||||||
* 1. PCI has been disabled (ie. PCI-AER, PF driver unloaded
|
* 1. PCI has been disabled (ie. PCI-AER, PF driver unloaded
|
||||||
* and this is a VF), this is not recoverable by SW reset.
|
* and this is a VF), this is not recoverable by SW reset.
|
||||||
* Logging of this is handled elsewhere.
|
* Logging of this is handled elsewhere.
|
||||||
* 2. FW reset has been issued by another function, driver can
|
* 2. FW reset has been issued by another function, driver can
|
||||||
* be reloaded to recover after the mode switches to
|
* be reloaded to recover after the mode switches to
|
||||||
* MLX5_NIC_IFC_DISABLED.
|
* MLX5_INITIAL_SEG_NIC_INTERFACE_DISABLED.
|
||||||
*/
|
*/
|
||||||
if (dev->priv.health.fatal_error != MLX5_SENSOR_PCI_COMM_ERR)
|
if (dev->priv.health.fatal_error != MLX5_SENSOR_PCI_COMM_ERR)
|
||||||
mlx5_core_warn(dev, "NIC SW reset in progress\n");
|
mlx5_core_warn(dev, "NIC SW reset in progress\n");
|
||||||
|
|||||||
@ -312,13 +312,6 @@ static inline int mlx5_rescan_drivers(struct mlx5_core_dev *dev)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
enum {
|
|
||||||
MLX5_NIC_IFC_FULL = 0,
|
|
||||||
MLX5_NIC_IFC_DISABLED = 1,
|
|
||||||
MLX5_NIC_IFC_NO_DRAM_NIC = 2,
|
|
||||||
MLX5_NIC_IFC_SW_RESET = 7
|
|
||||||
};
|
|
||||||
|
|
||||||
u8 mlx5_get_nic_state(struct mlx5_core_dev *dev);
|
u8 mlx5_get_nic_state(struct mlx5_core_dev *dev);
|
||||||
void mlx5_set_nic_state(struct mlx5_core_dev *dev, u8 state);
|
void mlx5_set_nic_state(struct mlx5_core_dev *dev, u8 state);
|
||||||
|
|
||||||
|
|||||||
@ -10661,6 +10661,7 @@ enum {
|
|||||||
MLX5_INITIAL_SEG_NIC_INTERFACE_FULL_DRIVER = 0x0,
|
MLX5_INITIAL_SEG_NIC_INTERFACE_FULL_DRIVER = 0x0,
|
||||||
MLX5_INITIAL_SEG_NIC_INTERFACE_DISABLED = 0x1,
|
MLX5_INITIAL_SEG_NIC_INTERFACE_DISABLED = 0x1,
|
||||||
MLX5_INITIAL_SEG_NIC_INTERFACE_NO_DRAM_NIC = 0x2,
|
MLX5_INITIAL_SEG_NIC_INTERFACE_NO_DRAM_NIC = 0x2,
|
||||||
|
MLX5_INITIAL_SEG_NIC_INTERFACE_SW_RESET = 0x7,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user