net: hns: modify buffer format of cpu data to le64
authorQianqian Xie <xieqianqian@huawei.com>
Wed, 9 Nov 2016 18:13:53 +0000 (18:13 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 10 Nov 2016 16:45:37 +0000 (11:45 -0500)
Hardware ring buffer data is stored in Little-endian. Thus cpu data
should be modified to Little-endian.

Signed-off-by: Qianqian Xie <xieqianqian@huawei.com>
Reviewed-by: Yisen Zhuang <yisen.zhuang@huawei.com>
Signed-off-by: Salil Mehta <salil.mehta@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/hisilicon/hns/hnae.h

index e093cbf26c8c50d22bf782741b382c96ca29e1d6..b0f05578c15d9e8f04359a537fba6812d462703a 100644 (file)
@@ -590,7 +590,7 @@ static inline int hnae_alloc_buffer_attach(struct hnae_ring *ring, int i)
        if (ret)
                return ret;
 
-       ring->desc[i].addr = (__le64)ring->desc_cb[i].dma;
+       ring->desc[i].addr = cpu_to_le64(ring->desc_cb[i].dma);
 
        return 0;
 }
@@ -621,14 +621,14 @@ static inline void hnae_replace_buffer(struct hnae_ring *ring, int i,
 
        bops->unmap_buffer(ring, &ring->desc_cb[i]);
        ring->desc_cb[i] = *res_cb;
-       ring->desc[i].addr = (__le64)ring->desc_cb[i].dma;
+       ring->desc[i].addr = cpu_to_le64(ring->desc_cb[i].dma);
        ring->desc[i].rx.ipoff_bnum_pid_flag = 0;
 }
 
 static inline void hnae_reuse_buffer(struct hnae_ring *ring, int i)
 {
        ring->desc_cb[i].reuse_flag = 0;
-       ring->desc[i].addr = (__le64)(ring->desc_cb[i].dma
+       ring->desc[i].addr = cpu_to_le64(ring->desc_cb[i].dma
                + ring->desc_cb[i].page_offset);
        ring->desc[i].rx.ipoff_bnum_pid_flag = 0;
 }