From: Santosh Shukla <santosh.shu...@caviumnetworks.com>

Replace the raw I/O device memory read/write access with eal abstraction
for I/O device memory read/write access to fix portability issues across
different architectures.

Signed-off-by: Santosh Shukla <santosh.shu...@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.ja...@caviumnetworks.com>
CC: Stephen Hurd <stephen.h...@broadcom.com>
CC: Ajit Khaparde <ajit.khapa...@broadcom.com>
---
 drivers/net/bnxt/bnxt_hwrm.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c
index 07e7124..2067e15 100644
--- a/drivers/net/bnxt/bnxt_hwrm.c
+++ b/drivers/net/bnxt/bnxt_hwrm.c
@@ -50,6 +50,8 @@
 #include "bnxt_vnic.h"
 #include "hsi_struct_def_dpdk.h"
 
+#include <rte_io.h>
+
 #define HWRM_CMD_TIMEOUT               2000
 
 /*
@@ -72,19 +74,19 @@ static int bnxt_hwrm_send_message_locked(struct bnxt *bp, 
void *msg,
        /* Write request msg to hwrm channel */
        for (i = 0; i < msg_len; i += 4) {
                bar = (uint8_t *)bp->bar0 + i;
-               *(volatile uint32_t *)bar = *data;
+               rte_writel(*data, bar);
                data++;
        }
 
        /* Zero the rest of the request space */
        for (; i < bp->max_req_len; i += 4) {
                bar = (uint8_t *)bp->bar0 + i;
-               *(volatile uint32_t *)bar = 0;
+               rte_writel(0, bar);
        }
 
        /* Ring channel doorbell */
        bar = (uint8_t *)bp->bar0 + 0x100;
-       *(volatile uint32_t *)bar = 1;
+       rte_writel(1, bar);
 
        /* Poll for the valid bit */
        for (i = 0; i < HWRM_CMD_TIMEOUT; i++) {
-- 
2.5.5

Reply via email to