From 63c34c299acf53e3fdfb5a9c30af8c9d0b7b6188 Mon Sep 17 00:00:00 2001 From: Gagandeep Singh Date: Fri, 12 Apr 2019 12:28:54 +0000 Subject: [PATCH] net/enetc: fix SMMU unhandled context fault First configure ring with BDs properly then enable the ring. Fixes: 469c6111a799 ("net/enetc: enable Rx and Tx") Cc: stable@dpdk.org Signed-off-by: Gagandeep Singh --- drivers/net/enetc/enetc_ethdev.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/net/enetc/enetc_ethdev.c b/drivers/net/enetc/enetc_ethdev.c index 7a9a97deb5..f1807b901c 100644 --- a/drivers/net/enetc/enetc_ethdev.c +++ b/drivers/net/enetc/enetc_ethdev.c @@ -492,15 +492,15 @@ enetc_setup_rxbdr(struct enetc_hw *hw, struct enetc_bdr *rx_ring, ENETC_RTBLENR_LEN(rx_ring->bd_count)); rx_ring->mb_pool = mb_pool; - /* enable ring */ - enetc_rxbdr_wr(hw, idx, ENETC_RBMR, ENETC_RBMR_EN); - enetc_rxbdr_wr(hw, idx, ENETC_RBPIR, 0); rx_ring->rcir = (void *)((size_t)hw->reg + ENETC_BDR(RX, idx, ENETC_RBCIR)); enetc_refill_rx_ring(rx_ring, (enetc_bd_unused(rx_ring))); buf_size = (uint16_t)(rte_pktmbuf_data_room_size(rx_ring->mb_pool) - RTE_PKTMBUF_HEADROOM); enetc_rxbdr_wr(hw, idx, ENETC_RBBSR, buf_size); + /* enable ring */ + enetc_rxbdr_wr(hw, idx, ENETC_RBMR, ENETC_RBMR_EN); + enetc_rxbdr_wr(hw, idx, ENETC_RBPIR, 0); } static int -- 2.20.1