lkml.org 
[lkml]   [2020]   [Feb]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.4 47/91] scsi: qla2xxx: Fix the endianness of the qla82xx_get_fw_size() return type
    Date
    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 | 8 ++++----
    1 file changed, 4 insertions(+), 4 deletions(-)

    --- a/drivers/scsi/qla2xxx/qla_nx.c
    +++ b/drivers/scsi/qla2xxx/qla_nx.c
    @@ -10,6 +10,7 @@
    #include <linux/ratelimit.h>
    #include <linux/vmalloc.h>
    #include <scsi/scsi_tcq.h>
    +#include <asm/unaligned.h>

    #define MASK(n) ((1ULL<<(n))-1)
    #define MN_WIN(addr) (((addr & 0x1fc0000) >> 1) | \
    @@ -1600,8 +1601,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;

    @@ -1612,7 +1612,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 *
    @@ -1803,7 +1803,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++) {

    \
     
     \ /
      Last update: 2020-02-13 16:23    [W:4.107 / U:0.020 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site