mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-25 19:40:56 +07:00
netxen: mask correctable error
HW workaround: Disable logging of correctable error for some NX3031 based adapter. Signed-off-by: Amit Kumar Salecha <amit.salecha@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
7a9905e642
commit
dce87b960c
@ -1822,14 +1822,14 @@ int netxen_nic_get_board_info(struct netxen_adapter *adapter)
|
||||
if (netxen_rom_fast_read(adapter, offset, &board_type))
|
||||
return -EIO;
|
||||
|
||||
adapter->ahw.board_type = board_type;
|
||||
|
||||
if (board_type == NETXEN_BRDTYPE_P3_4_GB_MM) {
|
||||
u32 gpio = NXRD32(adapter, NETXEN_ROMUSB_GLB_PAD_GPIO_I);
|
||||
if ((gpio & 0x8000) == 0)
|
||||
board_type = NETXEN_BRDTYPE_P3_10G_TP;
|
||||
}
|
||||
|
||||
adapter->ahw.board_type = board_type;
|
||||
|
||||
switch (board_type) {
|
||||
case NETXEN_BRDTYPE_P2_SB35_4G:
|
||||
adapter->ahw.port_type = NETXEN_NIC_GBE;
|
||||
|
@ -1249,6 +1249,28 @@ netxen_setup_netdev(struct netxen_adapter *adapter,
|
||||
return 0;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_PCIEAER
|
||||
static void netxen_mask_aer_correctable(struct netxen_adapter *adapter)
|
||||
{
|
||||
struct pci_dev *pdev = adapter->pdev;
|
||||
struct pci_dev *root = pdev->bus->self;
|
||||
u32 aer_pos;
|
||||
|
||||
if (adapter->ahw.board_type != NETXEN_BRDTYPE_P3_4_GB_MM &&
|
||||
adapter->ahw.board_type != NETXEN_BRDTYPE_P3_10G_TP)
|
||||
return;
|
||||
|
||||
if (root->pcie_type != PCI_EXP_TYPE_ROOT_PORT)
|
||||
return;
|
||||
|
||||
aer_pos = pci_find_ext_capability(root, PCI_EXT_CAP_ID_ERR);
|
||||
if (!aer_pos)
|
||||
return;
|
||||
|
||||
pci_write_config_dword(root, aer_pos + PCI_ERR_COR_MASK, 0xffff);
|
||||
}
|
||||
#endif
|
||||
|
||||
static int __devinit
|
||||
netxen_nic_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
||||
{
|
||||
@ -1317,6 +1339,10 @@ netxen_nic_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
||||
goto err_out_iounmap;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_PCIEAER
|
||||
netxen_mask_aer_correctable(adapter);
|
||||
#endif
|
||||
|
||||
/* Mezz cards have PCI function 0,2,3 enabled */
|
||||
switch (adapter->ahw.board_type) {
|
||||
case NETXEN_BRDTYPE_P2_SB31_10G_IMEZ:
|
||||
|
Loading…
Reference in New Issue
Block a user