> -----Original Message----- > From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Qiming Yang > Sent: Tuesday, July 18, 2017 10:29 AM > To: dev@dpdk.org > Cc: sta...@dpdk.org; Lu, Wenzhuo <wenzhuo...@intel.com>; Yang, Qiming > <qiming.y...@intel.com> > Subject: [dpdk-dev] [PATCH v2] net/ixgbe: fix Rx/Tx queue interrupt for x550 > devices > > x550 devices not do interrupt vector mapping before enable Rx/Tx queue > interrupt, makes interrupt mode can't work neither with igb_uio or VFIO. > > Fixes: d2e72774e58c ("ixgbe/base: support X550") > > Signed-off-by: Qiming Yang <qiming.y...@intel.com> Have looked through datasheet of 82599, X540 and X550. Acked-by: Wei Dai <wei....@intel.com>
> --- > v2 changes: > * fixed other cause interrupt vector map and typo issue > --- > drivers/net/ixgbe/ixgbe_ethdev.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c > b/drivers/net/ixgbe/ixgbe_ethdev.c > index 9b06ac1..0caafd5 100644 > --- a/drivers/net/ixgbe/ixgbe_ethdev.c > +++ b/drivers/net/ixgbe/ixgbe_ethdev.c > @@ -5611,7 +5611,8 @@ ixgbe_set_ivar_map(struct ixgbe_hw *hw, int8_t > direction, > tmp |= (msix_vector << (8 * (queue & 0x3))); > IXGBE_WRITE_REG(hw, IXGBE_IVAR(idx), tmp); > } else if ((hw->mac.type == ixgbe_mac_82599EB) || > - (hw->mac.type == ixgbe_mac_X540)) { > + (hw->mac.type == ixgbe_mac_X540) || > + (hw->mac.type == ixgbe_mac_X550)) { > if (direction == -1) { > /* other causes */ > idx = ((queue & 1) * 8); > @@ -5719,6 +5720,7 @@ ixgbe_configure_msix(struct rte_eth_dev *dev) > break; > case ixgbe_mac_82599EB: > case ixgbe_mac_X540: > + case ixgbe_mac_X550: > ixgbe_set_ivar_map(hw, -1, 1, IXGBE_MISC_VEC_ID); > break; > default: > -- > 2.7.4