]> Pileus Git - ~andy/linux/commit
netxen: qlogic ethernet : Fix endian bug.
authorSantosh Nayak <santoshprasadnayak@gmail.com>
Mon, 12 Mar 2012 22:58:24 +0000 (22:58 +0000)
committerDavid S. Miller <davem@davemloft.net>
Sat, 17 Mar 2012 05:20:44 +0000 (22:20 -0700)
commit06d6c1087605b38342eb20e74b0cacb8b71f5086
tree57533b01a509a7d79c264400ceac83aaba80e5b7
parent50cdc8fc4007cf773cad710186d253612b83cc72
netxen: qlogic ethernet : Fix endian bug.

Change the datatype of "ip_addr" to __be32 as 'ip' should be in
big endian format.

Adapter needs "ip address" in big endian format stored at lower 32bit
of req.word[1]. netxen_config_ipaddr() now receives 'ip' in big endian
format. To satisfy adapter's need, use memcpy() to copy byte by byte
of 'ip' into lower 32bit of req.word[1].

Mac address and serial number of adapter need to be in little endian format.
Change the data type of the related  variables to __le32 / __le64 or cast it
explicitly to __le32 / __le64 depending upon the requirement.

Signed-off-by: Santosh Nayak <santoshprasadnayak@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/qlogic/netxen/netxen_nic.h
drivers/net/ethernet/qlogic/netxen/netxen_nic_hw.c
drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c