]> git.baikalelectronics.ru Git - kernel.git/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)
commitbc62c6d2a5bc1ddc005b6abf86c6678889a5f209
tree57533b01a509a7d79c264400ceac83aaba80e5b7
parentba8b0cd5407f08869ceba435da0bbf3c0ad2976d
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