From: Miao Yan Date: Mon, 21 Dec 2015 10:07:02 +0000 (-0800) Subject: net: e1000: use correct helper to do endianness conversion X-Git-Tag: v2016.01-rc4~4 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=a40b2dff7bec6c1656a59ce31c16207b8954eb68;p=oweals%2Fu-boot.git net: e1000: use correct helper to do endianness conversion In struct e1000_rx_desc, field 'length' is declared as uint16_t, so use le16_to_cpu() to do endianness conversion. Also drop conversion on 'status' which is declared as uint8_t. Signed-off-by: Miao Yan Reviewed-by: Bin Meng --- diff --git a/drivers/net/e1000.c b/drivers/net/e1000.c index 2ba03ed73e..6124bf0ab3 100644 --- a/drivers/net/e1000.c +++ b/drivers/net/e1000.c @@ -5165,11 +5165,11 @@ _e1000_poll(struct e1000_hw *hw) inval_end = inval_start + roundup(sizeof(*rd), ARCH_DMA_MINALIGN); invalidate_dcache_range(inval_start, inval_end); - if (!(le32_to_cpu(rd->status)) & E1000_RXD_STAT_DD) + if (!(rd->status & E1000_RXD_STAT_DD)) return 0; /* DEBUGOUT("recv: packet len=%d\n", rd->length); */ /* Packet received, make sure the data are re-loaded from RAM. */ - len = le32_to_cpu(rd->length); + len = le16_to_cpu(rd->length); invalidate_dcache_range((unsigned long)packet, (unsigned long)packet + roundup(len, ARCH_DMA_MINALIGN));