There is a unknown bug that the register TXGBE_MNGMBX cannot be written
in the loop, when DPDK is built with GCC high version. Access any register
before write TXGBE_MNGMBX can fix it.

Bugzilla ID: 1531
Fixes: 35c90ecccfd4 ("net/txgbe: add EEPROM functions")
Cc: sta...@dpdk.org

Signed-off-by: Jiawen Wu <jiawe...@trustnetic.com>
---
 drivers/net/txgbe/base/txgbe_mng.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/txgbe/base/txgbe_mng.c 
b/drivers/net/txgbe/base/txgbe_mng.c
index 20db982891..7dc8f21183 100644
--- a/drivers/net/txgbe/base/txgbe_mng.c
+++ b/drivers/net/txgbe/base/txgbe_mng.c
@@ -58,6 +58,7 @@ txgbe_hic_unlocked(struct txgbe_hw *hw, u32 *buffer, u32 
length, u32 timeout)
 
        dword_len = length >> 2;
 
+       txgbe_flush(hw);
        /* The device driver writes the relevant command block
         * into the ram area.
         */
-- 
2.27.0

Reply via email to