
On Tue, 2015-08-25 at 00:22 -0700, Bin Meng wrote:
commit 6497e37 "net: e1000: Support 64-bit physical address" causes compiler warnings on 32-bit U-Boot build below.
drivers/net/e1000.c: In function 'e1000_configure_tx': drivers/net/e1000.c:4982:2: warning: right shift count >= width of type [enabled by default] drivers/net/e1000.c: In function 'e1000_configure_rx': drivers/net/e1000.c:5126:2: warning: right shift count >= width of type [enabled by default]
This commit fixes the build warnings.
Signed-off-by: Bin Meng bmeng.cn@gmail.com
drivers/net/e1000.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/drivers/net/e1000.c b/drivers/net/e1000.c index 6f74d30..a467280 100644 --- a/drivers/net/e1000.c +++ b/drivers/net/e1000.c @@ -4977,9 +4977,10 @@ e1000_configure_tx(struct e1000_hw *hw) unsigned long tctl; unsigned long tipg, tarc; uint32_t ipgr1, ipgr2;
uint64_t tdba = (unsigned long)tx_base;
E1000_WRITE_REG(hw, TDBAL, (unsigned long)tx_base & 0xffffffff);
E1000_WRITE_REG(hw, TDBAH, (unsigned long)tx_base >> 32);
E1000_WRITE_REG(hw, TDBAL, (uint32_t)(tdba & 0xffffffff));
E1000_WRITE_REG(hw, TDBAH, (uint32_t)(tdba >> 32));
You could use upper_32_bits()/lower_32_bits().
-Scott