liquidio: deprecate 1-bit flag indicating watchdog kernel thread is running

Deprecate the 1-bit flag (bit 2 in the SLI_SCRATCH_1 Octeon register) that
indicates that the liquidio watchdog kernel thread is running for this NIC.
Reason is:  it is incompatible with the firmware's use for SLI_SCRATCH_1.

In lieu of checking that now-deprecated flag, check the value of
oct_dev->adapter_refcount to determine whether or not to create the
watchdog kernel thread.

Signed-off-by: Felix Manlunas <felix.manlunas@cavium.com>
Signed-off-by: Raghu Vatsavayi <raghu.vatsavayi@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Felix Manlunas 2017-10-25 18:04:56 -07:00 committed by David S. Miller
parent c0c21458d7
commit 392209fa83
1 changed files with 4 additions and 10 deletions

View File

@ -1196,19 +1196,13 @@ liquidio_probe(struct pci_dev *pdev,
} }
if (OCTEON_CN23XX_PF(oct_dev)) { if (OCTEON_CN23XX_PF(oct_dev)) {
u64 scratch1;
u8 bus, device, function; u8 bus, device, function;
scratch1 = octeon_read_csr64(oct_dev, CN23XX_SLI_SCRATCH1); if (atomic_read(oct_dev->adapter_refcount) == 1) {
if (!(scratch1 & 4ULL)) { /* Each NIC gets one watchdog kernel thread. The first
/* Bit 2 of SLI_SCRATCH_1 is a flag that indicates that * PF (of each NIC) that gets pci_driver->probe()'d
* the lio watchdog kernel thread is running for this * creates that thread.
* NIC. Each NIC gets one watchdog kernel thread.
*/ */
scratch1 |= 4ULL;
octeon_write_csr64(oct_dev, CN23XX_SLI_SCRATCH1,
scratch1);
bus = pdev->bus->number; bus = pdev->bus->number;
device = PCI_SLOT(pdev->devfn); device = PCI_SLOT(pdev->devfn);
function = PCI_FUNC(pdev->devfn); function = PCI_FUNC(pdev->devfn);