scsi: qla2xxx: Cast explicitly to uint16_t / uint32_t
authorBart Van Assche <bvanassche@acm.org>
Mon, 18 May 2020 21:17:09 +0000 (14:17 -0700)
committerMartin K. Petersen <martin.petersen@oracle.com>
Wed, 20 May 2020 01:43:19 +0000 (21:43 -0400)
Casting a pointer to void * and relying on an implicit cast from void *
to uint16_t or uint32_t suppresses sparse warnings about endianness. Hence
cast explicitly to uint16_t and uint32_t. Additionally, remove superfluous
void * casts.

Link: https://lore.kernel.org/r/20200518211712.11395-13-bvanassche@acm.org
Cc: Arun Easi <aeasi@marvell.com>
Cc: Nilesh Javali <njavali@marvell.com>
Cc: Daniel Wagner <dwagner@suse.de>
Cc: Himanshu Madhani <himanshu.madhani@oracle.com>
Cc: Martin Wilck <mwilck@suse.com>
Cc: Roman Bolshakov <r.bolshakov@yadro.com>
Reviewed-by: Hannes Reinecke <hare@suse.de>
Reviewed-by: Daniel Wagner <dwagner@suse.de>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/qla2xxx/qla_dbg.c
drivers/scsi/qla2xxx/qla_init.c
drivers/scsi/qla2xxx/qla_mbx.c
drivers/scsi/qla2xxx/qla_mid.c
drivers/scsi/qla2xxx/qla_mr.c
drivers/scsi/qla2xxx/qla_nvme.c
drivers/scsi/qla2xxx/qla_nx2.c
drivers/scsi/qla2xxx/qla_os.c
drivers/scsi/qla2xxx/qla_sup.c
drivers/scsi/qla2xxx/qla_target.c

index fbd8cb5..d020c23 100644 (file)
@@ -115,7 +115,7 @@ qla27xx_dump_mpi_ram(struct qla_hw_data *ha, uint32_t addr, uint32_t *ram,
 {
        struct device_reg_24xx __iomem *reg = &ha->iobase->isp24;
        dma_addr_t dump_dma = ha->gid_list_dma;
-       uint32_t *chunk = (void *)ha->gid_list;
+       uint32_t *chunk = (uint32_t *)ha->gid_list;
        uint32_t dwords = qla2x00_gid_list_size(ha) / 4;
        uint32_t stat;
        ulong i, j, timer = 6000000;
@@ -195,7 +195,7 @@ qla24xx_dump_ram(struct qla_hw_data *ha, uint32_t addr, uint32_t *ram,
        int rval = QLA_FUNCTION_FAILED;
        struct device_reg_24xx __iomem *reg = &ha->iobase->isp24;
        dma_addr_t dump_dma = ha->gid_list_dma;
-       uint32_t *chunk = (void *)ha->gid_list;
+       uint32_t *chunk = (uint32_t *)ha->gid_list;
        uint32_t dwords = qla2x00_gid_list_size(ha) / 4;
        uint32_t stat;
        ulong i, j, timer = 6000000;
index 02614e2..135440f 100644 (file)
@@ -992,7 +992,7 @@ static void qla24xx_async_gnl_sp_done(srb_t *sp, int res)
 
                ql_dbg(ql_dbg_disc, vha, 0x20e8,
                    "%s %8phC %02x:%02x:%02x CLS %x/%x lid %x \n",
-                   __func__, (void *)&wwn, e->port_id[2], e->port_id[1],
+                   __func__, &wwn, e->port_id[2], e->port_id[1],
                    e->port_id[0], e->current_login_state, e->last_login_state,
                    (loop_id & 0x7fff));
        }
@@ -1343,7 +1343,7 @@ int qla24xx_async_gpdb(struct scsi_qla_host *vha, fc_port_t *fcport, u8 opt)
        mb[9] = vha->vp_idx;
        mb[10] = opt;
 
-       mbx->u.mbx.in = (void *)pd;
+       mbx->u.mbx.in = pd;
        mbx->u.mbx.in_dma = pd_dma;
 
        sp->done = qla24xx_async_gpdb_sp_done;
@@ -4128,7 +4128,7 @@ qla2x00_init_rings(scsi_qla_host_t *vha)
                req = ha->req_q_map[que];
                if (!req || !test_bit(que, ha->req_qid_map))
                        continue;
-               req->out_ptr = (void *)(req->ring + req->length);
+               req->out_ptr = (uint16_t *)(req->ring + req->length);
                *req->out_ptr = 0;
                for (cnt = 1; cnt < req->num_outstanding_cmds; cnt++)
                        req->outstanding_cmds[cnt] = NULL;
@@ -4145,7 +4145,7 @@ qla2x00_init_rings(scsi_qla_host_t *vha)
                rsp = ha->rsp_q_map[que];
                if (!rsp || !test_bit(que, ha->rsp_qid_map))
                        continue;
-               rsp->in_ptr = (void *)(rsp->ring + rsp->length);
+               rsp->in_ptr = (uint16_t *)(rsp->ring + rsp->length);
                *rsp->in_ptr = 0;
                /* Initialize response queue entries */
                if (IS_QLAFX00(ha))
@@ -7446,7 +7446,7 @@ qla27xx_check_image_status_signature(struct qla27xx_image_status *image_status)
 static ulong
 qla27xx_image_status_checksum(struct qla27xx_image_status *image_status)
 {
-       uint32_t *p = (void *)image_status;
+       uint32_t *p = (uint32_t *)image_status;
        uint n = sizeof(*image_status) / sizeof(*p);
        uint32_t sum = 0;
 
@@ -7509,7 +7509,7 @@ qla28xx_get_aux_images(
                goto check_sec_image;
        }
 
-       qla24xx_read_flash_data(vha, (void *)&pri_aux_image_status,
+       qla24xx_read_flash_data(vha, (uint32_t *)&pri_aux_image_status,
            ha->flt_region_aux_img_status_pri,
            sizeof(pri_aux_image_status) >> 2);
        qla27xx_print_image(vha, "Primary aux image", &pri_aux_image_status);
@@ -7542,7 +7542,7 @@ check_sec_image:
                goto check_valid_image;
        }
 
-       qla24xx_read_flash_data(vha, (void *)&sec_aux_image_status,
+       qla24xx_read_flash_data(vha, (uint32_t *)&sec_aux_image_status,
            ha->flt_region_aux_img_status_sec,
            sizeof(sec_aux_image_status) >> 2);
        qla27xx_print_image(vha, "Secondary aux image", &sec_aux_image_status);
@@ -7607,7 +7607,7 @@ qla27xx_get_active_image(struct scsi_qla_host *vha,
                goto check_sec_image;
        }
 
-       if (qla24xx_read_flash_data(vha, (void *)(&pri_image_status),
+       if (qla24xx_read_flash_data(vha, (uint32_t *)&pri_image_status,
            ha->flt_region_img_status_pri, sizeof(pri_image_status) >> 2) !=
            QLA_SUCCESS) {
                WARN_ON_ONCE(true);
@@ -7714,7 +7714,7 @@ qla24xx_load_risc_flash(scsi_qla_host_t *vha, uint32_t *srisc_addr,
        ql_dbg(ql_dbg_init, vha, 0x008b,
            "FW: Loading firmware from flash (%x).\n", faddr);
 
-       dcode = (void *)req->ring;
+       dcode = (uint32_t *)req->ring;
        qla24xx_read_flash_data(vha, dcode, faddr, 8);
        if (qla24xx_risc_firmware_invalid(dcode)) {
                ql_log(ql_log_fatal, vha, 0x008c,
@@ -7727,7 +7727,7 @@ qla24xx_load_risc_flash(scsi_qla_host_t *vha, uint32_t *srisc_addr,
                return QLA_FUNCTION_FAILED;
        }
 
-       dcode = (void *)req->ring;
+       dcode = (uint32_t *)req->ring;
        *srisc_addr = 0;
        segments = FA_RISC_CODE_SEGMENTS;
        for (j = 0; j < segments; j++) {
@@ -7778,7 +7778,7 @@ qla24xx_load_risc_flash(scsi_qla_host_t *vha, uint32_t *srisc_addr,
                fwdt->template = NULL;
                fwdt->length = 0;
 
-               dcode = (void *)req->ring;
+               dcode = (uint32_t *)req->ring;
                qla24xx_read_flash_data(vha, dcode, faddr, 7);
                risc_size = be32_to_cpu(dcode[2]);
                ql_dbg(ql_dbg_init, vha, 0x0161,
@@ -7970,7 +7970,7 @@ qla24xx_load_risc_blob(scsi_qla_host_t *vha, uint32_t *srisc_addr)
                return QLA_FUNCTION_FAILED;
        }
 
-       fwcode = (void *)blob->fw->data;
+       fwcode = (uint32_t *)blob->fw->data;
        dcode = fwcode;
        if (qla24xx_risc_firmware_invalid(dcode)) {
                ql_log(ql_log_fatal, vha, 0x0093,
@@ -7982,7 +7982,7 @@ qla24xx_load_risc_blob(scsi_qla_host_t *vha, uint32_t *srisc_addr)
                return QLA_FUNCTION_FAILED;
        }
 
-       dcode = (void *)req->ring;
+       dcode = (uint32_t *)req->ring;
        *srisc_addr = 0;
        segments = FA_RISC_CODE_SEGMENTS;
        for (j = 0; j < segments; j++) {
index 985cae3..e6ab5f0 100644 (file)
@@ -3038,7 +3038,7 @@ qla2x00_get_link_status(scsi_qla_host_t *vha, uint16_t loop_id,
        int rval;
        mbx_cmd_t mc;
        mbx_cmd_t *mcp = &mc;
-       uint32_t *iter = (void *)stats;
+       uint32_t *iter = (uint32_t *)stats;
        ushort dwords = offsetof(typeof(*stats), link_up_cnt)/sizeof(*iter);
        struct qla_hw_data *ha = vha->hw;
 
@@ -3097,7 +3097,7 @@ qla24xx_get_isp_stats(scsi_qla_host_t *vha, struct link_statistics *stats,
        int rval;
        mbx_cmd_t mc;
        mbx_cmd_t *mcp = &mc;
-       uint32_t *iter = (void *)stats;
+       uint32_t *iter = (uint32_t *)stats;
        ushort dwords = sizeof(*stats)/sizeof(*iter);
 
        ql_dbg(ql_dbg_mbx + ql_dbg_verbose, vha, 0x1088,
@@ -4736,7 +4736,7 @@ qla82xx_set_driver_version(scsi_qla_host_t *vha, char *version)
        ql_dbg(ql_dbg_mbx + ql_dbg_verbose, vha, 0x117b,
            "Entered %s.\n", __func__);
 
-       str = (void *)version;
+       str = (uint16_t *)version;
        len = strlen(version);
 
        mcp->mb[0] = MBC_SET_RNID_PARAMS;
index d82e92d..15efe2f 100644 (file)
@@ -770,7 +770,7 @@ qla25xx_create_req_que(struct qla_hw_data *ha, uint16_t options,
        req->req_q_in = &reg->isp25mq.req_q_in;
        req->req_q_out = &reg->isp25mq.req_q_out;
        req->max_q_depth = ha->req_q_map[0]->max_q_depth;
-       req->out_ptr = (void *)(req->ring + req->length);
+       req->out_ptr = (uint16_t *)(req->ring + req->length);
        mutex_unlock(&ha->mq_lock);
        ql_dbg(ql_dbg_multiq, base_vha, 0xc004,
            "ring_ptr=%p ring_index=%d, "
@@ -884,7 +884,7 @@ qla25xx_create_rsp_que(struct qla_hw_data *ha, uint16_t options,
        reg = ISP_QUE_REG(ha, que_id);
        rsp->rsp_q_in = &reg->isp25mq.rsp_q_in;
        rsp->rsp_q_out = &reg->isp25mq.rsp_q_out;
-       rsp->in_ptr = (void *)(rsp->ring + rsp->length);
+       rsp->in_ptr = (uint16_t *)(rsp->ring + rsp->length);
        mutex_unlock(&ha->mq_lock);
        ql_dbg(ql_dbg_multiq, base_vha, 0xc00b,
            "options=%x id=%d rsp_q_in=%p rsp_q_out=%p\n",
index c5be516..908594c 100644 (file)
@@ -3212,7 +3212,7 @@ qlafx00_tm_iocb(srb_t *sp, struct tsk_mgmt_entry_fx00 *ptm_iocb)
                    sizeof(struct scsi_lun));
        }
 
-       memcpy((void *)ptm_iocb, &tm_iocb,
+       memcpy(ptm_iocb, &tm_iocb,
            sizeof(struct tsk_mgmt_entry_fx00));
        wmb();
 }
@@ -3234,7 +3234,7 @@ qlafx00_abort_iocb(srb_t *sp, struct abort_iocb_entry_fx00 *pabt_iocb)
        abt_iocb.tgt_id_sts = cpu_to_le16(sp->fcport->tgt_id);
        abt_iocb.req_que_no = cpu_to_le16(req->id);
 
-       memcpy((void *)pabt_iocb, &abt_iocb,
+       memcpy(pabt_iocb, &abt_iocb,
            sizeof(struct abort_iocb_entry_fx00));
        wmb();
 }
index ad3aa19..6f20e20 100644 (file)
@@ -295,7 +295,7 @@ static int qla_nvme_ls_req(struct nvme_fc_local_port *lport,
        sp->name = "nvme_ls";
        sp->done = qla_nvme_sp_ls_done;
        sp->put_fn = qla_nvme_release_ls_cmd_kref;
-       sp->priv = (void *)priv;
+       sp->priv = priv;
        priv->sp = sp;
        kref_init(&sp->cmd_kref);
        spin_lock_init(&priv->cmd_lock);
@@ -560,7 +560,7 @@ static int qla_nvme_post_cmd(struct nvme_fc_local_port *lport,
        init_waitqueue_head(&sp->nvme_ls_waitq);
        kref_init(&sp->cmd_kref);
        spin_lock_init(&priv->cmd_lock);
-       sp->priv = (void *)priv;
+       sp->priv = priv;
        priv->sp = sp;
        sp->type = SRB_NVME_CMD;
        sp->name = "nvme_cmd";
index a46830a..50e5760 100644 (file)
@@ -2965,7 +2965,7 @@ qla8044_minidump_pex_dma_read(struct scsi_qla_host *vha,
 
                /* Prepare: Write pex-dma descriptor to MS memory. */
                rval = qla8044_ms_mem_write_128b(vha,
-                   m_hdr->desc_card_addr, (void *)&dma_desc,
+                   m_hdr->desc_card_addr, (uint32_t *)&dma_desc,
                    (sizeof(struct qla8044_pex_dma_descriptor)/16));
                if (rval) {
                        ql_log(ql_log_warn, vha, 0xb14a,
@@ -2987,7 +2987,7 @@ qla8044_minidump_pex_dma_read(struct scsi_qla_host *vha,
                read_size += chunk_size;
        }
 
-       *d_ptr = (void *)data_ptr;
+       *d_ptr = (uint32_t *)data_ptr;
 
 error_exit:
        if (rdmem_buffer)
index 2aa8ea6..85c369f 100644 (file)
@@ -5915,7 +5915,7 @@ void qla24xx_process_purex_rdp(struct scsi_qla_host *vha, void *pkt)
        ql_dbg(ql_dbg_init + ql_dbg_verbose, vha, 0x0181,
            "-------- ELS REQ -------\n");
        ql_dump_buffer(ql_dbg_init + ql_dbg_verbose, vha, 0x0182,
-           (void *)purex, sizeof(*purex));
+           purex, sizeof(*purex));
 
        if (qla25xx_rdp_rsp_reduce_size(vha, purex)) {
                rsp_payload_length =
@@ -6031,7 +6031,7 @@ void qla24xx_process_purex_rdp(struct scsi_qla_host *vha, void *pkt)
                memset(sfp, 0, SFP_RTDI_LEN);
                rval = qla2x00_read_sfp(vha, sfp_dma, sfp, 0xa2, 0x60, 10, 0);
                if (!rval) {
-                       uint16_t *trx = (void *)sfp; /* already be16 */
+                       uint16_t *trx = (uint16_t *)sfp; /* already be16 */
                        rsp_payload->sfp_diag_desc.temperature = trx[0];
                        rsp_payload->sfp_diag_desc.vcc = trx[1];
                        rsp_payload->sfp_diag_desc.tx_bias = trx[2];
@@ -6140,7 +6140,7 @@ void qla24xx_process_purex_rdp(struct scsi_qla_host *vha, void *pkt)
                memset(sfp, 0, SFP_RTDI_LEN);
                rval = qla2x00_read_sfp(vha, sfp_dma, sfp, 0xa2, 0, 64, 0);
                if (!rval) {
-                       uint16_t *trx = (void *)sfp; /* already be16 */
+                       uint16_t *trx = (uint16_t *)sfp; /* already be16 */
 
                        /* Optical Element Descriptor, Temperature */
                        rsp_payload->optical_elmt_desc[0].high_alarm = trx[0];
@@ -6266,11 +6266,11 @@ send:
        ql_dbg(ql_dbg_init + ql_dbg_verbose, vha, 0x0184,
            "-------- ELS RSP -------\n");
        ql_dump_buffer(ql_dbg_init + ql_dbg_verbose, vha, 0x0185,
-           (void *)rsp_els, sizeof(*rsp_els));
+           rsp_els, sizeof(*rsp_els));
        ql_dbg(ql_dbg_init + ql_dbg_verbose, vha, 0x0186,
            "-------- ELS RSP PAYLOAD -------\n");
        ql_dump_buffer(ql_dbg_init + ql_dbg_verbose, vha, 0x0187,
-           (void *)rsp_payload, rsp_payload_length);
+           rsp_payload, rsp_payload_length);
 
        rval = qla2x00_issue_iocb(vha, rsp_els, rsp_els_dma, 0);
 
index da984d7..749b0c1 100644 (file)
@@ -553,7 +553,7 @@ qla2xxx_find_flt_start(scsi_qla_host_t *vha, uint32_t *start)
        struct qla_hw_data *ha = vha->hw;
        struct req_que *req = ha->req_q_map[0];
        struct qla_flt_location *fltl = (void *)req->ring;
-       uint32_t *dcode = (void *)req->ring;
+       uint32_t *dcode = (uint32_t *)req->ring;
        uint8_t *buf = (void *)req->ring, *bcode,  last_image;
 
        /*
@@ -610,7 +610,7 @@ qla2xxx_find_flt_start(scsi_qla_host_t *vha, uint32_t *start)
        if (memcmp(fltl->sig, "QFLT", 4))
                goto end;
 
-       wptr = (void *)req->ring;
+       wptr = (uint16_t *)req->ring;
        cnt = sizeof(*fltl) / sizeof(*wptr);
        for (chksum = 0; cnt--; wptr++)
                chksum += le16_to_cpu(*wptr);
@@ -682,7 +682,7 @@ qla2xxx_get_flt_info(scsi_qla_host_t *vha, uint32_t flt_addr)
 
        ha->flt_region_flt = flt_addr;
        wptr = (uint16_t *)ha->flt;
-       ha->isp_ops->read_optrom(vha, (void *)flt, flt_addr << 2,
+       ha->isp_ops->read_optrom(vha, flt, flt_addr << 2,
            (sizeof(struct qla_flt_header) + FLT_REGIONS_SIZE));
 
        if (le16_to_cpu(*wptr) == 0xffff)
@@ -949,7 +949,7 @@ qla2xxx_get_fdt_info(scsi_qla_host_t *vha)
        struct qla_hw_data *ha = vha->hw;
        struct req_que *req = ha->req_q_map[0];
        uint16_t cnt, chksum;
-       uint16_t *wptr = (void *)req->ring;
+       uint16_t *wptr = (uint16_t *)req->ring;
        struct qla_fdt_layout *fdt = (struct qla_fdt_layout *)req->ring;
        uint8_t man_id, flash_id;
        uint16_t mid = 0, fid = 0;
@@ -2610,7 +2610,7 @@ qla24xx_read_optrom_data(struct scsi_qla_host *vha, void *buf,
        set_bit(MBX_UPDATE_FLASH_ACTIVE, &ha->mbx_cmd_flags);
 
        /* Go with read. */
-       qla24xx_read_flash_data(vha, (void *)buf, offset >> 2, length >> 2);
+       qla24xx_read_flash_data(vha, buf, offset >> 2, length >> 2);
 
        /* Resume HBA. */
        clear_bit(MBX_UPDATE_FLASH_ACTIVE, &ha->mbx_cmd_flags);
@@ -3528,7 +3528,7 @@ qla24xx_get_flash_version(scsi_qla_host_t *vha, void *mbuf)
 
        memset(ha->gold_fw_version, 0, sizeof(ha->gold_fw_version));
        faddr = ha->flt_region_gold_fw;
-       qla24xx_read_flash_data(vha, (void *)dcode, ha->flt_region_gold_fw, 8);
+       qla24xx_read_flash_data(vha, dcode, ha->flt_region_gold_fw, 8);
        if (qla24xx_risc_firmware_invalid(dcode)) {
                ql_log(ql_log_warn, vha, 0x0056,
                    "Unrecognized golden fw at %#x.\n", faddr);
index f742587..77f9765 100644 (file)
@@ -3885,7 +3885,7 @@ static void *qlt_ctio_to_cmd(struct scsi_qla_host *vha,
                        return NULL;
                }
 
-               cmd = (void *) req->outstanding_cmds[h];
+               cmd = req->outstanding_cmds[h];
                if (unlikely(cmd == NULL)) {
                        ql_dbg(ql_dbg_async, vha, 0xe053,
                            "qla_target(%d): Suspicious: unable to find the command with handle %x req->id %d rsp->id %d\n",
@@ -5932,7 +5932,7 @@ void qlt_async_event(uint16_t code, struct scsi_qla_host *vha,
                    le16_to_cpu(mailbox[2]), le16_to_cpu(mailbox[3]));
                if (tgt->link_reinit_iocb_pending) {
                        qlt_send_notify_ack(ha->base_qpair,
-                           (void *)&tgt->link_reinit_iocb,
+                           &tgt->link_reinit_iocb,
                            0, 0, 0, 0, 0, 0);
                        tgt->link_reinit_iocb_pending = 0;
                }