Message ID | 20210712115425.214965-1-paul.greenwalt@intel.com |
---|---|
State | Accepted |
Delegated to: | Anthony Nguyen |
Headers | show |
Series | ice: rearm other interrupt cause register after enabling VFs | expand |
> -----Original Message----- > From: Intel-wired-lan <intel-wired-lan-bounces@osuosl.org> On Behalf Of > Greenwalt, Paul > Sent: Monday, July 12, 2021 4:54 AM > To: intel-wired-lan@lists.osuosl.org > Subject: [Intel-wired-lan] [PATCH] ice: rearm other interrupt cause register > after enabling VFs > > The other interrupt cause register (OICR), global interrupt 0, is disabled when > enabling VFs to prevent handling VFLR. If the OICR is not rearmed then the > VF cannot communicate with the PF. > > Rearm the OICR after enabling VFs. > > Signed-off-by: Paul Greenwalt <paul.greenwalt@intel.com> > --- > drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c | 4 ++++ > 1 file changed, 4 insertions(+) Tested-by: Tony Brelinski <tony.brelinski@intel.com>
diff --git a/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c b/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c index 501331b6f70b..0a2e0b2c9227 100644 --- a/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c +++ b/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c @@ -1952,6 +1952,10 @@ static int ice_ena_vfs(struct ice_pf *pf, u16 num_vfs) if (ice_eswitch_configure(pf)) goto err_unroll_sriov; + /* rearm global interrupts */ + if (test_and_clear_bit(ICE_OICR_INTR_DIS, pf->state)) + ice_irq_dynamic_ena(hw, NULL, NULL); + return 0; err_unroll_sriov:
The other interrupt cause register (OICR), global interrupt 0, is disabled when enabling VFs to prevent handling VFLR. If the OICR is not rearmed then the VF cannot communicate with the PF. Rearm the OICR after enabling VFs. Signed-off-by: Paul Greenwalt <paul.greenwalt@intel.com> --- drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c | 4 ++++ 1 file changed, 4 insertions(+)