.. | .. |
---|
| 1 | +// SPDX-License-Identifier: GPL-2.0-or-later |
---|
1 | 2 | /* |
---|
2 | 3 | * advansys.c - Linux Host Driver for AdvanSys SCSI Adapters |
---|
3 | 4 | * |
---|
.. | .. |
---|
6 | 7 | * Copyright (c) 2007 Matthew Wilcox <matthew@wil.cx> |
---|
7 | 8 | * Copyright (c) 2014 Hannes Reinecke <hare@suse.de> |
---|
8 | 9 | * All Rights Reserved. |
---|
9 | | - * |
---|
10 | | - * This program is free software; you can redistribute it and/or modify |
---|
11 | | - * it under the terms of the GNU General Public License as published by |
---|
12 | | - * the Free Software Foundation; either version 2 of the License, or |
---|
13 | | - * (at your option) any later version. |
---|
14 | 10 | */ |
---|
15 | 11 | |
---|
16 | 12 | /* |
---|
.. | .. |
---|
320 | 316 | ushort queue_cnt; |
---|
321 | 317 | ushort entry_to_copy; |
---|
322 | 318 | ushort res; |
---|
323 | | - ASC_SG_LIST sg_list[0]; |
---|
| 319 | + ASC_SG_LIST sg_list[]; |
---|
324 | 320 | } ASC_SG_HEAD; |
---|
325 | 321 | |
---|
326 | 322 | typedef struct asc_scsi_q { |
---|
.. | .. |
---|
3192 | 3188 | shost->sg_tablesize, shost->cmd_per_lun); |
---|
3193 | 3189 | |
---|
3194 | 3190 | seq_printf(m, |
---|
3195 | | - " unchecked_isa_dma %d, use_clustering %d\n", |
---|
3196 | | - shost->unchecked_isa_dma, shost->use_clustering); |
---|
| 3191 | + " unchecked_isa_dma %d\n", |
---|
| 3192 | + shost->unchecked_isa_dma); |
---|
3197 | 3193 | |
---|
3198 | 3194 | seq_printf(m, |
---|
3199 | 3195 | " flags 0x%x, last_reset 0x%lx, jiffies 0x%lx, asc_n_io_port 0x%x\n", |
---|
.. | .. |
---|
5949 | 5945 | static void adv_isr_callback(ADV_DVC_VAR *adv_dvc_varp, ADV_SCSI_REQ_Q *scsiqp) |
---|
5950 | 5946 | { |
---|
5951 | 5947 | struct asc_board *boardp = adv_dvc_varp->drv_ptr; |
---|
5952 | | - u32 srb_tag; |
---|
5953 | 5948 | adv_req_t *reqp; |
---|
5954 | 5949 | adv_sgblk_t *sgblkp; |
---|
5955 | 5950 | struct scsi_cmnd *scp; |
---|
.. | .. |
---|
5965 | 5960 | * completed. The adv_req_t structure actually contains the |
---|
5966 | 5961 | * completed ADV_SCSI_REQ_Q structure. |
---|
5967 | 5962 | */ |
---|
5968 | | - srb_tag = le32_to_cpu(scsiqp->srb_tag); |
---|
5969 | 5963 | scp = scsi_host_find_tag(boardp->shost, scsiqp->srb_tag); |
---|
5970 | 5964 | |
---|
5971 | 5965 | ASC_DBG(1, "scp 0x%p\n", scp); |
---|
.. | .. |
---|
6448 | 6442 | sdtr_data = |
---|
6449 | 6443 | AscCalSDTRData(asc_dvc, ext_msg.xfer_period, |
---|
6450 | 6444 | ext_msg.req_ack_offset); |
---|
6451 | | - if ((sdtr_data == 0xFF)) { |
---|
| 6445 | + if (sdtr_data == 0xFF) { |
---|
6452 | 6446 | |
---|
6453 | 6447 | q_cntl |= QC_MSG_OUT; |
---|
6454 | 6448 | asc_dvc->init_sdtr &= ~target_id; |
---|
.. | .. |
---|
7716 | 7710 | sg_block->sg_ptr = 0L; /* Last ADV_SG_BLOCK in list. */ |
---|
7717 | 7711 | return ADV_SUCCESS; |
---|
7718 | 7712 | } |
---|
7719 | | - slp++; |
---|
| 7713 | + slp = sg_next(slp); |
---|
7720 | 7714 | } |
---|
7721 | 7715 | sg_block->sg_cnt = NO_OF_SG_PER_BLOCK; |
---|
7722 | 7716 | prev_sg_block = sg_block; |
---|
.. | .. |
---|
10810 | 10804 | * for non-ISA adapters. |
---|
10811 | 10805 | */ |
---|
10812 | 10806 | .unchecked_isa_dma = true, |
---|
10813 | | - /* |
---|
10814 | | - * All adapters controlled by this driver are capable of large |
---|
10815 | | - * scatter-gather lists. According to the mid-level SCSI documentation |
---|
10816 | | - * this obviates any performance gain provided by setting |
---|
10817 | | - * 'use_clustering'. But empirically while CPU utilization is increased |
---|
10818 | | - * by enabling clustering, I/O throughput increases as well. |
---|
10819 | | - */ |
---|
10820 | | - .use_clustering = ENABLE_CLUSTERING, |
---|
10821 | 10807 | }; |
---|
10822 | 10808 | |
---|
10823 | 10809 | static int advansys_wide_init_chip(struct Scsi_Host *shost) |
---|