scsi: mpt3sas: Swap I/O memory read value back to cpu endianness
authorSreekanth Reddy <sreekanth.reddy@broadcom.com>
Tue, 31 Jul 2018 05:36:36 +0000 (01:36 -0400)
committerMartin K. Petersen <martin.petersen@oracle.com>
Fri, 3 Aug 2018 17:52:23 +0000 (13:52 -0400)
commit09c2f95ad404bc6e9995f5bce04ae85d0fffc534
treebbdab3863d57f1495f8fcd3a470d88571004798f
parent1550ec458e0cf1a40a170ab1f4c46e3f52860f65
scsi: mpt3sas: Swap I/O memory read value back to cpu endianness

Swap the I/O memory read value back to cpu endianness before storing it in
a data structures which are defined in the MPI headers where u8 components
are not defined in the endianness order.

In this area from day one mpt3sas driver is using le32_to_cpu() &
cpu_to_le32() APIs. But in commit cf6bf9710c
(mpt3sas: Bug fix for big endian systems) we have removed these APIs
before reading I/O memory which we should haven't done it. So
in this patch I am correcting it by adding these APIs back
before accessing I/O memory.

Signed-off-by: Sreekanth Reddy <sreekanth.reddy@broadcom.com>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/mpt3sas/mpt3sas_base.c