| From 3f5f7335e5e234e340b48ecb24c2aba98a61f934 Mon Sep 17 00:00:00 2001 |
| From: Bart Van Assche <bvanassche@acm.org> |
| Date: Wed, 18 Dec 2019 16:49:05 -0800 |
| Subject: scsi: qla2xxx: Fix the endianness of the qla82xx_get_fw_size() return type |
| |
| From: Bart Van Assche <bvanassche@acm.org> |
| |
| commit 3f5f7335e5e234e340b48ecb24c2aba98a61f934 upstream. |
| |
| Since qla82xx_get_fw_size() returns a number in CPU-endian format, change |
| its return type from __le32 into u32. This patch does not change any |
| functionality. |
| |
| Fixes: 9c2b297572bf ("[SCSI] qla2xxx: Support for loading Unified ROM Image (URI) format firmware file.") |
| Cc: Himanshu Madhani <hmadhani@marvell.com> |
| Cc: Quinn Tran <qutran@marvell.com> |
| Cc: Martin Wilck <mwilck@suse.com> |
| Cc: Daniel Wagner <dwagner@suse.de> |
| Cc: Roman Bolshakov <r.bolshakov@yadro.com> |
| Link: https://lore.kernel.org/r/20191219004905.39586-1-bvanassche@acm.org |
| Reviewed-by: Daniel Wagner <dwagner@suse.de> |
| Reviewed-by: Roman Bolshakov <r.bolshakov@yadro.com> |
| Signed-off-by: Bart Van Assche <bvanassche@acm.org> |
| Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/scsi/qla2xxx/qla_nx.c | 7 +++---- |
| 1 file changed, 3 insertions(+), 4 deletions(-) |
| |
| --- a/drivers/scsi/qla2xxx/qla_nx.c |
| +++ b/drivers/scsi/qla2xxx/qla_nx.c |
| @@ -1605,8 +1605,7 @@ qla82xx_get_bootld_offset(struct qla_hw_ |
| return (u8 *)&ha->hablob->fw->data[offset]; |
| } |
| |
| -static __le32 |
| -qla82xx_get_fw_size(struct qla_hw_data *ha) |
| +static u32 qla82xx_get_fw_size(struct qla_hw_data *ha) |
| { |
| struct qla82xx_uri_data_desc *uri_desc = NULL; |
| |
| @@ -1617,7 +1616,7 @@ qla82xx_get_fw_size(struct qla_hw_data * |
| return cpu_to_le32(uri_desc->size); |
| } |
| |
| - return cpu_to_le32(*(u32 *)&ha->hablob->fw->data[FW_SIZE_OFFSET]); |
| + return get_unaligned_le32(&ha->hablob->fw->data[FW_SIZE_OFFSET]); |
| } |
| |
| static u8 * |
| @@ -1808,7 +1807,7 @@ qla82xx_fw_load_from_blob(struct qla_hw_ |
| } |
| |
| flashaddr = FLASH_ADDR_START; |
| - size = (__force u32)qla82xx_get_fw_size(ha) / 8; |
| + size = qla82xx_get_fw_size(ha) / 8; |
| ptr64 = (u64 *)qla82xx_get_fw_offs(ha); |
| |
| for (i = 0; i < size; i++) { |