• Mitch Williams's avatar
    i40evf: detect reset more reliably · ee5c1e92
    Mitch Williams authored
    Using VFGEN_RSTAT to detect a VF reset is an endeavor that is fraught
    with peril. It's entirely too easy to miss a reset because none of the
    bits are sticky. By the time the VF driver reads the register, the reset
    may have been processed and cleaned up by the PF driver, leaving the
    register in the same state that it was before the reset.
    
    Instead, detect a reset with the VF_ARQLEN register. When the VF is
    reset, the enable bit in this register is cleared, and it stays cleared
    until the VF driver processes the reset and re-enables the admin queue.
    
    Because we now deal with multiple registers in the reset and watchdog
    tasks, rename the rstat_val variable to reg_val.
    
    Change-ID: Id1df17045c0992e607da0162d31807f7fc20d199
    Signed-off-by: default avatarMitch Williams <mitch.a.williams@intel.com>
    Tested-by: default avatarAndrew Bowers <andrewx.bowers@intel.com>
    Signed-off-by: default avatarJeff Kirsher <jeffrey.t.kirsher@intel.com>
    ee5c1e92
i40evf_main.c 69.8 KB