]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
ixgbevf: Change the relaxed order settings in VF driver for sparc
authorBabu Moger <babu.moger@oracle.com>
Thu, 21 Apr 2016 22:43:22 +0000 (15:43 -0700)
committerChuck Anderson <chuck.anderson@oracle.com>
Sun, 27 Nov 2016 19:16:22 +0000 (11:16 -0800)
We noticed performance issues with VF interface on sparc compared
to PF. Setting the RX to IXGBE_DCA_RXCTRL_DATA_WRO_EN brings it
on far with PF. Also this matches to the default sparc settings in
PF driver.

Orabug: 23284026

Signed-off-by: Babu Moger <babu.moger@oracle.com>
Acked-by: Sowmini Varadhan <sowmini.varadhan@oracle.com>
Signed-off-by: Allen Pais <allen.pais@oracle.com>
(cherry picked from commit 0dbe77b7cfaa4d2867550ff02727549ba957ea8b)

drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c

index 2802c9585a9c909277c78cb5d47c008e3e0594d9..77119a597b990ee02ecfe84209bba70f55ee6a2c 100644 (file)
@@ -1746,9 +1746,15 @@ static void ixgbevf_configure_rx_ring(struct ixgbevf_adapter *adapter,
        IXGBE_WRITE_REG(hw, IXGBE_VFRDLEN(reg_idx),
                        ring->count * sizeof(union ixgbe_adv_rx_desc));
 
+#ifndef CONFIG_SPARC
        /* enable relaxed ordering */
        IXGBE_WRITE_REG(hw, IXGBE_VFDCA_RXCTRL(reg_idx),
                        IXGBE_DCA_RXCTRL_DESC_RRO_EN);
+#else
+       IXGBE_WRITE_REG(hw, IXGBE_VFDCA_RXCTRL(reg_idx),
+                       IXGBE_DCA_RXCTRL_DESC_RRO_EN |
+                       IXGBE_DCA_RXCTRL_DATA_WRO_EN);
+#endif
 
        /* reset head and tail pointers */
        IXGBE_WRITE_REG(hw, IXGBE_VFRDH(reg_idx), 0);