From: Don Brace <don.brace@microchip.com>
To: <don.brace@microchip.com>, <Kevin.Barnett@microchip.com>,
<scott.teel@microchip.com>, <Justin.Lindley@microchip.com>,
<scott.benesh@microchip.com>, <gerry.morong@microchip.com>,
<mahesh.rajashekhara@microchip.com>, <mike.mcgowen@microchip.com>,
<murthy.bhat@microchip.com>, <kumar.meiyappan@microchip.com>,
<jeremy.reeves@microchip.com>, <david.strahan@microchip.com>,
<hch@infradead.org>, <jejb@linux.vnet.ibm.com>,
<joseph.szczypek@hpe.com>, <POSWALD@suse.com>
Cc: <linux-scsi@vger.kernel.org>
Subject: [PATCH 1/9] smartpqi: reformat to align with oob driver
Date: Thu, 17 Aug 2023 08:12:24 -0500 [thread overview]
Message-ID: <20230817131232.86754-2-don.brace@microchip.com> (raw)
In-Reply-To: <20230817131232.86754-1-don.brace@microchip.com>
From: Kevin Barnett <kevin.barnett@microchip.com>
Align with our oob driver to simplify patch management.
No functional changes.
Reviewed-by: Justin Lindley <justin.lindley@microchip.com>
Reviewed-by: Scott Teel <scott.teel@microchip.com>
Reviewed-by: Scott Benesh <scott.benesh@microchip.com>
Reviewed-by: Mike McGowen <mike.mcgowen@microchip.com>
Signed-off-by: Kevin Barnett <kevin.barnett@microchip.com>
Signed-off-by: Don Brace <don.brace@microchip.com>
---
drivers/scsi/smartpqi/smartpqi_init.c | 1598 +++++++++----------------
1 file changed, 540 insertions(+), 1058 deletions(-)
diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smartpqi_init.c
index 6aaaa7ebca37..4486259f85ab 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -527,8 +527,7 @@ static inline bool pqi_is_io_high_priority(struct pqi_scsi_dev *device, struct s
io_high_prio = false;
if (device->ncq_prio_enable) {
- priority_class =
- IOPRIO_PRIO_CLASS(req_get_ioprio(scsi_cmd_to_rq(scmd)));
+ priority_class = IOPRIO_PRIO_CLASS(req_get_ioprio(scsi_cmd_to_rq(scmd)));
if (priority_class == IOPRIO_CLASS_RT) {
/* Set NCQ priority for read/write commands. */
switch (scmd->cmnd[0]) {
@@ -558,8 +557,7 @@ static int pqi_map_single(struct pci_dev *pci_dev,
if (!buffer || buffer_length == 0 || data_direction == DMA_NONE)
return 0;
- bus_address = dma_map_single(&pci_dev->dev, buffer, buffer_length,
- data_direction);
+ bus_address = dma_map_single(&pci_dev->dev, buffer, buffer_length, data_direction);
if (dma_mapping_error(&pci_dev->dev, bus_address))
return -ENOMEM;
@@ -939,8 +937,7 @@ static int pqi_flush_cache(struct pqi_ctrl_info *ctrl_info,
flush_cache->shutdown_event = shutdown_event;
- rc = pqi_send_ctrl_raid_request(ctrl_info, SA_FLUSH_CACHE, flush_cache,
- sizeof(*flush_cache));
+ rc = pqi_send_ctrl_raid_request(ctrl_info, SA_FLUSH_CACHE, flush_cache, sizeof(*flush_cache));
kfree(flush_cache);
@@ -1197,7 +1194,7 @@ static int pqi_report_phys_logical_luns(struct pqi_ctrl_info *ctrl_info, u8 cmd,
return rc;
}
-static inline int pqi_report_phys_luns(struct pqi_ctrl_info *ctrl_info, void **buffer)
+static int pqi_report_phys_luns(struct pqi_ctrl_info *ctrl_info, void **buffer)
{
int rc;
unsigned int i;
@@ -1292,20 +1289,16 @@ static int pqi_get_device_lists(struct pqi_ctrl_info *ctrl_info,
logdev_data = *logdev_list;
if (logdev_data) {
- logdev_list_length =
- get_unaligned_be32(&logdev_data->header.list_length);
+ logdev_list_length = get_unaligned_be32(&logdev_data->header.list_length);
} else {
memset(&report_lun_header, 0, sizeof(report_lun_header));
- logdev_data =
- (struct report_log_lun_list *)&report_lun_header;
+ logdev_data = (struct report_log_lun_list *)&report_lun_header;
logdev_list_length = 0;
}
- logdev_data_length = sizeof(struct report_lun_header) +
- logdev_list_length;
+ logdev_data_length = sizeof(struct report_lun_header) + logdev_list_length;
- internal_logdev_list = kmalloc(logdev_data_length +
- sizeof(struct report_log_lun), GFP_KERNEL);
+ internal_logdev_list = kmalloc(logdev_data_length + sizeof(struct report_log_lun), GFP_KERNEL);
if (!internal_logdev_list) {
kfree(*logdev_list);
*logdev_list = NULL;
@@ -1313,10 +1306,8 @@ static int pqi_get_device_lists(struct pqi_ctrl_info *ctrl_info,
}
memcpy(internal_logdev_list, logdev_data, logdev_data_length);
- memset((u8 *)internal_logdev_list + logdev_data_length, 0,
- sizeof(struct report_log_lun));
- put_unaligned_be32(logdev_list_length +
- sizeof(struct report_log_lun),
+ memset((u8 *)internal_logdev_list + logdev_data_length, 0, sizeof(struct report_log_lun));
+ put_unaligned_be32(logdev_list_length + sizeof(struct report_log_lun),
&internal_logdev_list->header.list_length);
kfree(*logdev_list);
@@ -1445,8 +1436,7 @@ static int pqi_validate_raid_map(struct pqi_ctrl_info *ctrl_info,
return -EINVAL;
}
-static int pqi_get_raid_map(struct pqi_ctrl_info *ctrl_info,
- struct pqi_scsi_dev *device)
+static int pqi_get_raid_map(struct pqi_ctrl_info *ctrl_info, struct pqi_scsi_dev *device)
{
int rc;
u32 raid_map_size;
@@ -1624,8 +1614,7 @@ static int pqi_get_physical_device_info(struct pqi_ctrl_info *ctrl_info,
memset(id_phys, 0, sizeof(*id_phys));
- rc = pqi_identify_physical_device(ctrl_info, device,
- id_phys, sizeof(*id_phys));
+ rc = pqi_identify_physical_device(ctrl_info, device, id_phys, sizeof(*id_phys));
if (rc) {
device->queue_depth = PQI_PHYSICAL_DISK_DEFAULT_MAX_QUEUE_DEPTH;
return rc;
@@ -1640,8 +1629,7 @@ static int pqi_get_physical_device_info(struct pqi_ctrl_info *ctrl_info,
device->box_index = id_phys->box_index;
device->phys_box_on_bus = id_phys->phys_box_on_bus;
device->phy_connected_dev_type = id_phys->phy_connected_dev_type[0];
- device->queue_depth =
- get_unaligned_le16(&id_phys->current_queue_depth_limit);
+ device->queue_depth = get_unaligned_le16(&id_phys->current_queue_depth_limit);
device->active_path_index = id_phys->active_path_number;
device->path_map = id_phys->redundant_path_present_map;
memcpy(&device->box,
@@ -1652,10 +1640,8 @@ static int pqi_get_physical_device_info(struct pqi_ctrl_info *ctrl_info,
sizeof(device->phys_connector));
device->bay = id_phys->phys_bay_in_box;
device->lun_count = id_phys->multi_lun_device_lun_count;
- if ((id_phys->even_more_flags & PQI_DEVICE_PHY_MAP_SUPPORTED) &&
- id_phys->phy_count)
- device->phy_id =
- id_phys->phy_to_phy_map[device->active_path_index];
+ if ((id_phys->even_more_flags & PQI_DEVICE_PHY_MAP_SUPPORTED) && id_phys->phy_count)
+ device->phy_id = id_phys->phy_to_phy_map[device->active_path_index];
else
device->phy_id = 0xFF;
@@ -1758,8 +1744,7 @@ static void pqi_show_volume_status(struct pqi_ctrl_info *ctrl_info,
struct pqi_scsi_dev *device)
{
char *status;
- static const char unknown_state_str[] =
- "Volume is in an unknown state (%u)";
+ static const char unknown_state_str[] = "Volume is in an unknown state (%u)";
char unknown_state_buffer[sizeof(unknown_state_str) + 10];
switch (device->volume_status) {
@@ -2281,7 +2266,6 @@ static void pqi_update_device_list(struct pqi_ctrl_info *ctrl_info,
}
ctrl_info->logical_volume_rescan_needed = false;
-
}
static inline bool pqi_is_supported_device(struct pqi_scsi_dev *device)
@@ -2394,15 +2378,12 @@ static int pqi_update_scsi_devices(struct pqi_ctrl_info *ctrl_info)
}
}
- if (num_logicals &&
- (logdev_list->header.flags & CISS_REPORT_LOG_FLAG_DRIVE_TYPE_MIX))
+ if (num_logicals && (logdev_list->header.flags & CISS_REPORT_LOG_FLAG_DRIVE_TYPE_MIX))
ctrl_info->lv_drive_type_mix_valid = true;
num_new_devices = num_physicals + num_logicals;
- new_device_list = kmalloc_array(num_new_devices,
- sizeof(*new_device_list),
- GFP_KERNEL);
+ new_device_list = kmalloc_array(num_new_devices, sizeof(*new_device_list), GFP_KERNEL);
if (!new_device_list) {
dev_warn(&ctrl_info->pci_dev->dev, "%s\n", out_of_memory_msg);
rc = -ENOMEM;
@@ -2412,13 +2393,11 @@ static int pqi_update_scsi_devices(struct pqi_ctrl_info *ctrl_info)
for (i = 0; i < num_new_devices; i++) {
device = kzalloc(sizeof(*device), GFP_KERNEL);
if (!device) {
- dev_warn(&ctrl_info->pci_dev->dev, "%s\n",
- out_of_memory_msg);
+ dev_warn(&ctrl_info->pci_dev->dev, "%s\n", out_of_memory_msg);
rc = -ENOMEM;
goto out;
}
- list_add_tail(&device->new_device_list_entry,
- &new_device_list_head);
+ list_add_tail(&device->new_device_list_entry, &new_device_list_head);
}
device = NULL;
@@ -2457,8 +2436,7 @@ static int pqi_update_scsi_devices(struct pqi_ctrl_info *ctrl_info)
if (device->device_type == SA_DEVICE_TYPE_EXPANDER_SMP)
device->is_expander_smp_device = true;
} else {
- device->is_external_raid_device =
- pqi_is_external_raid_addr(scsi3addr);
+ device->is_external_raid_device = pqi_is_external_raid_addr(scsi3addr);
}
if (!pqi_is_supported_device(device))
@@ -2467,8 +2445,7 @@ static int pqi_update_scsi_devices(struct pqi_ctrl_info *ctrl_info)
/* Gather information about the device. */
rc = pqi_get_device_info(ctrl_info, device, id_phys);
if (rc == -ENOMEM) {
- dev_warn(&ctrl_info->pci_dev->dev, "%s\n",
- out_of_memory_msg);
+ dev_warn(&ctrl_info->pci_dev->dev, "%s\n", out_of_memory_msg);
goto out;
}
if (rc) {
@@ -2494,16 +2471,12 @@ static int pqi_update_scsi_devices(struct pqi_ctrl_info *ctrl_info)
if (device->is_physical_device) {
memcpy(device->wwid, phys_lun->wwid, sizeof(device->wwid));
- if ((phys_lun->device_flags &
- CISS_REPORT_PHYS_DEV_FLAG_AIO_ENABLED) &&
- phys_lun->aio_handle) {
- device->aio_enabled = true;
- device->aio_handle =
- phys_lun->aio_handle;
+ if ((phys_lun->device_flags & CISS_REPORT_PHYS_DEV_FLAG_AIO_ENABLED) && phys_lun->aio_handle) {
+ device->aio_enabled = true;
+ device->aio_handle = phys_lun->aio_handle;
}
} else {
- memcpy(device->volume_id, log_lun->volume_id,
- sizeof(device->volume_id));
+ memcpy(device->volume_id, log_lun->volume_id, sizeof(device->volume_id));
}
device->sas_address = get_unaligned_be64(&device->wwid[0]);
@@ -2514,8 +2487,7 @@ static int pqi_update_scsi_devices(struct pqi_ctrl_info *ctrl_info)
pqi_update_device_list(ctrl_info, new_device_list, num_valid_devices);
out:
- list_for_each_entry_safe(device, next, &new_device_list_head,
- new_device_list_entry) {
+ list_for_each_entry_safe(device, next, &new_device_list_head, new_device_list_entry) {
if (device->keep_device)
continue;
list_del(&device->new_device_list_entry);
@@ -2591,8 +2563,7 @@ static inline void pqi_set_encryption_info(struct pqi_encryption_info *encryptio
if (volume_blk_size != 512)
first_block = (first_block * volume_blk_size) / 512;
- encryption_info->data_encryption_key_index =
- get_unaligned_le16(&raid_map->data_encryption_key_index);
+ encryption_info->data_encryption_key_index = get_unaligned_le16(&raid_map->data_encryption_key_index);
encryption_info->encrypt_tweak_lower = lower_32_bits(first_block);
encryption_info->encrypt_tweak_upper = upper_32_bits(first_block);
}
@@ -2695,13 +2666,11 @@ static int pci_get_aio_common_raid_map_values(struct pqi_ctrl_info *ctrl_info,
rmd->last_block = rmd->first_block + rmd->block_cnt - 1;
/* Check for invalid block or wraparound. */
- if (rmd->last_block >=
- get_unaligned_le64(&raid_map->volume_blk_cnt) ||
+ if (rmd->last_block >= get_unaligned_le64(&raid_map->volume_blk_cnt) ||
rmd->last_block < rmd->first_block)
return PQI_RAID_BYPASS_INELIGIBLE;
- rmd->data_disks_per_row =
- get_unaligned_le16(&raid_map->data_disks_per_row);
+ rmd->data_disks_per_row = get_unaligned_le16(&raid_map->data_disks_per_row);
rmd->strip_size = get_unaligned_le16(&raid_map->strip_size);
rmd->layout_map_count = get_unaligned_le16(&raid_map->layout_map_count);
@@ -2727,27 +2696,22 @@ static int pci_get_aio_common_raid_map_values(struct pqi_ctrl_info *ctrl_info,
#else
rmd->first_row = rmd->first_block / rmd->blocks_per_row;
rmd->last_row = rmd->last_block / rmd->blocks_per_row;
- rmd->first_row_offset = (u32)(rmd->first_block -
- (rmd->first_row * rmd->blocks_per_row));
- rmd->last_row_offset = (u32)(rmd->last_block - (rmd->last_row *
- rmd->blocks_per_row));
+ rmd->first_row_offset = (u32)(rmd->first_block - (rmd->first_row * rmd->blocks_per_row));
+ rmd->last_row_offset = (u32)(rmd->last_block - (rmd->last_row * rmd->blocks_per_row));
rmd->first_column = rmd->first_row_offset / rmd->strip_size;
rmd->last_column = rmd->last_row_offset / rmd->strip_size;
#endif
/* If this isn't a single row/column then give to the controller. */
- if (rmd->first_row != rmd->last_row ||
- rmd->first_column != rmd->last_column)
+ if (rmd->first_row != rmd->last_row || rmd->first_column != rmd->last_column)
return PQI_RAID_BYPASS_INELIGIBLE;
/* Proceeding with driver mapping. */
rmd->total_disks_per_row = rmd->data_disks_per_row +
get_unaligned_le16(&raid_map->metadata_disks_per_row);
- rmd->map_row = ((u32)(rmd->first_row >>
- raid_map->parity_rotation_shift)) %
+ rmd->map_row = ((u32)(rmd->first_row >> raid_map->parity_rotation_shift)) %
get_unaligned_le16(&raid_map->row_cnt);
- rmd->map_index = (rmd->map_row * rmd->total_disks_per_row) +
- rmd->first_column;
+ rmd->map_index = (rmd->map_row * rmd->total_disks_per_row) + rmd->first_column;
return 0;
}
@@ -2819,15 +2783,12 @@ static int pqi_calc_aio_r5_or_r6(struct pqi_scsi_dev_raid_map_data *rmd,
rmd->r5or6_last_column = tmpdiv;
#else
rmd->first_row_offset = rmd->r5or6_first_row_offset =
- (u32)((rmd->first_block % rmd->stripesize) %
- rmd->blocks_per_row);
+ (u32)((rmd->first_block % rmd->stripesize) % rmd->blocks_per_row);
rmd->r5or6_last_row_offset =
- (u32)((rmd->last_block % rmd->stripesize) %
- rmd->blocks_per_row);
+ (u32)((rmd->last_block % rmd->stripesize) % rmd->blocks_per_row);
- rmd->first_column =
- rmd->r5or6_first_row_offset / rmd->strip_size;
+ rmd->first_column = rmd->r5or6_first_row_offset / rmd->strip_size;
rmd->r5or6_first_column = rmd->first_column;
rmd->r5or6_last_column = rmd->r5or6_last_row_offset / rmd->strip_size;
#endif
@@ -2835,13 +2796,10 @@ static int pqi_calc_aio_r5_or_r6(struct pqi_scsi_dev_raid_map_data *rmd,
return PQI_RAID_BYPASS_INELIGIBLE;
/* Request is eligible. */
- rmd->map_row =
- ((u32)(rmd->first_row >> raid_map->parity_rotation_shift)) %
+ rmd->map_row = ((u32)(rmd->first_row >> raid_map->parity_rotation_shift)) %
get_unaligned_le16(&raid_map->row_cnt);
- rmd->map_index = (rmd->first_group *
- (get_unaligned_le16(&raid_map->row_cnt) *
- rmd->total_disks_per_row)) +
+ rmd->map_index = (rmd->first_group * (get_unaligned_le16(&raid_map->row_cnt) * rmd->total_disks_per_row)) +
(rmd->map_row * rmd->total_disks_per_row) + rmd->first_column;
if (rmd->is_write) {
@@ -2949,8 +2907,7 @@ static int pqi_raid_bypass_submit_scsi_cmd(struct pqi_ctrl_info *ctrl_info,
if (rc)
return PQI_RAID_BYPASS_INELIGIBLE;
- if (device->raid_level == SA_RAID_1 ||
- device->raid_level == SA_RAID_TRIPLE) {
+ if (device->raid_level == SA_RAID_1 || device->raid_level == SA_RAID_TRIPLE) {
if (rmd.is_write) {
pqi_calc_aio_r1_nexus(raid_map, &rmd);
} else {
@@ -2961,8 +2918,7 @@ static int pqi_raid_bypass_submit_scsi_cmd(struct pqi_ctrl_info *ctrl_info,
device->next_bypass_group[rmd.map_index] = next_bypass_group;
rmd.map_index += group * rmd.data_disks_per_row;
}
- } else if ((device->raid_level == SA_RAID_5 ||
- device->raid_level == SA_RAID_6) &&
+ } else if ((device->raid_level == SA_RAID_5 || device->raid_level == SA_RAID_6) &&
(rmd.layout_map_count > 1 || rmd.is_write)) {
rc = pqi_calc_aio_r5_or_r6(&rmd, raid_map);
if (rc)
@@ -3129,8 +3085,7 @@ static void pqi_process_raid_io_error(struct pqi_io_request *io_request)
case PQI_DATA_IN_OUT_GOOD:
break;
case PQI_DATA_IN_OUT_UNDERFLOW:
- xfer_count =
- get_unaligned_le32(&error_info->data_out_transferred);
+ xfer_count = get_unaligned_le32(&error_info->data_out_transferred);
residual_count = scsi_bufflen(scmd) - xfer_count;
scsi_set_resid(scmd, residual_count);
if (xfer_count < scmd->underflow)
@@ -3166,8 +3121,7 @@ static void pqi_process_raid_io_error(struct pqi_io_request *io_request)
sense_data_length = get_unaligned_le16(&error_info->sense_data_length);
if (sense_data_length == 0)
- sense_data_length =
- get_unaligned_le16(&error_info->response_data_length);
+ sense_data_length = get_unaligned_le16(&error_info->response_data_length);
if (sense_data_length) {
if (sense_data_length > sizeof(error_info->data))
sense_data_length = sizeof(error_info->data);
@@ -3199,8 +3153,7 @@ static void pqi_process_raid_io_error(struct pqi_io_request *io_request)
if (sense_data_length > SCSI_SENSE_BUFFERSIZE)
sense_data_length = SCSI_SENSE_BUFFERSIZE;
- memcpy(scmd->sense_buffer, error_info->data,
- sense_data_length);
+ memcpy(scmd->sense_buffer, error_info->data, sense_data_length);
}
scmd->result = scsi_status;
@@ -3237,8 +3190,7 @@ static void pqi_process_aio_io_error(struct pqi_io_request *io_request)
break;
case PQI_AIO_STATUS_UNDERRUN:
scsi_status = SAM_STAT_GOOD;
- residual_count = get_unaligned_le32(
- &error_info->residual_count);
+ residual_count = get_unaligned_le32(&error_info->residual_count);
scsi_set_resid(scmd, residual_count);
xfer_count = scsi_bufflen(scmd) - residual_count;
if (xfer_count < scmd->underflow)
@@ -3285,15 +3237,13 @@ static void pqi_process_aio_io_error(struct pqi_io_request *io_request)
}
if (error_info->data_present) {
- sense_data_length =
- get_unaligned_le16(&error_info->data_length);
+ sense_data_length = get_unaligned_le16(&error_info->data_length);
if (sense_data_length) {
if (sense_data_length > sizeof(error_info->data))
sense_data_length = sizeof(error_info->data);
if (sense_data_length > SCSI_SENSE_BUFFERSIZE)
sense_data_length = SCSI_SENSE_BUFFERSIZE;
- memcpy(scmd->sense_buffer, error_info->data,
- sense_data_length);
+ memcpy(scmd->sense_buffer, error_info->data, sense_data_length);
}
}
@@ -3376,8 +3326,7 @@ static int pqi_process_io_intr(struct pqi_ctrl_info *ctrl_info, struct pqi_queue
break;
num_responses++;
- response = queue_group->oq_element_array +
- (oq_ci * PQI_OPERATIONAL_OQ_ELEMENT_LENGTH);
+ response = queue_group->oq_element_array + (oq_ci * PQI_OPERATIONAL_OQ_ELEMENT_LENGTH);
request_id = get_unaligned_le16(&response->request_id);
if (request_id >= ctrl_info->max_io_slots) {
@@ -3406,13 +3355,10 @@ static int pqi_process_io_intr(struct pqi_ctrl_info *ctrl_info, struct pqi_queue
case PQI_RESPONSE_IU_GENERAL_MANAGEMENT:
break;
case PQI_RESPONSE_IU_VENDOR_GENERAL:
- io_request->status =
- get_unaligned_le16(
- &((struct pqi_vendor_general_response *)response)->status);
+ io_request->status = get_unaligned_le16(&((struct pqi_vendor_general_response *)response)->status);
break;
case PQI_RESPONSE_IU_TASK_MANAGEMENT:
- io_request->status = pqi_interpret_task_management_response(ctrl_info,
- (void *)response);
+ io_request->status = pqi_interpret_task_management_response(ctrl_info, (void *)response);
break;
case PQI_RESPONSE_IU_AIO_PATH_DISABLED:
pqi_aio_path_disabled(io_request);
@@ -3421,8 +3367,7 @@ static int pqi_process_io_intr(struct pqi_ctrl_info *ctrl_info, struct pqi_queue
case PQI_RESPONSE_IU_RAID_PATH_IO_ERROR:
case PQI_RESPONSE_IU_AIO_PATH_IO_ERROR:
io_request->error_info = ctrl_info->error_buffer +
- (get_unaligned_le16(&response->error_index) *
- PQI_ERROR_BUFFER_ELEMENT_LENGTH);
+ (get_unaligned_le16(&response->error_index) * PQI_ERROR_BUFFER_ELEMENT_LENGTH);
pqi_process_io_error(response->header.iu_type, io_request);
break;
default:
@@ -3481,12 +3426,10 @@ static void pqi_send_event_ack(struct pqi_ctrl_info *ctrl_info,
iq_pi = queue_group->iq_pi_copy[RAID_PATH];
iq_ci = readl(queue_group->iq_ci[RAID_PATH]);
- if (pqi_num_elements_free(iq_pi, iq_ci,
- ctrl_info->num_elements_per_iq))
+ if (pqi_num_elements_free(iq_pi, iq_ci, ctrl_info->num_elements_per_iq))
break;
- spin_unlock_irqrestore(
- &queue_group->submit_lock[RAID_PATH], flags);
+ spin_unlock_irqrestore(&queue_group->submit_lock[RAID_PATH], flags);
if (pqi_ctrl_offline(ctrl_info))
return;
@@ -3517,8 +3460,7 @@ static void pqi_acknowledge_event(struct pqi_ctrl_info *ctrl_info,
memset(&request, 0, sizeof(request));
request.header.iu_type = PQI_REQUEST_IU_ACKNOWLEDGE_VENDOR_EVENT;
- put_unaligned_le16(sizeof(request) - PQI_REQUEST_HEADER_LENGTH,
- &request.header.iu_length);
+ put_unaligned_le16(sizeof(request) - PQI_REQUEST_HEADER_LENGTH, &request.header.iu_length);
request.event_type = event->event_type;
put_unaligned_le16(event->event_id, &request.event_id);
put_unaligned_le32(event->additional_event_id, &request.additional_event_id);
@@ -3577,7 +3519,7 @@ static void pqi_process_soft_reset(struct pqi_ctrl_info *ctrl_info)
fallthrough;
case RESET_INITIATE_DRIVER:
dev_info(&ctrl_info->pci_dev->dev,
- "Online Firmware Activation: resetting controller\n");
+ "Online Firmware Activation: resetting controller\n");
sis_soft_reset(ctrl_info);
fallthrough;
case RESET_INITIATE_FIRMWARE:
@@ -3587,12 +3529,12 @@ static void pqi_process_soft_reset(struct pqi_ctrl_info *ctrl_info)
pqi_ofa_free_host_buffer(ctrl_info);
pqi_ctrl_ofa_done(ctrl_info);
dev_info(&ctrl_info->pci_dev->dev,
- "Online Firmware Activation: %s\n",
- rc == 0 ? "SUCCESS" : "FAILED");
+ "Online Firmware Activation: %s\n",
+ rc == 0 ? "SUCCESS" : "FAILED");
break;
case RESET_ABORT:
dev_info(&ctrl_info->pci_dev->dev,
- "Online Firmware Activation ABORTED\n");
+ "Online Firmware Activation ABORTED\n");
if (ctrl_info->soft_reset_handshake_supported)
pqi_clear_soft_reset_status(ctrl_info);
pqi_ofa_free_host_buffer(ctrl_info);
@@ -3762,8 +3704,7 @@ static void pqi_heartbeat_timer_handler(struct timer_list *t)
}
ctrl_info->previous_heartbeat_count = heartbeat_count;
- mod_timer(&ctrl_info->heartbeat_timer,
- jiffies + PQI_HEARTBEAT_TIMER_INTERVAL);
+ mod_timer(&ctrl_info->heartbeat_timer, jiffies + PQI_HEARTBEAT_TIMER_INTERVAL);
}
static void pqi_start_heartbeat_timer(struct pqi_ctrl_info *ctrl_info)
@@ -3771,13 +3712,10 @@ static void pqi_start_heartbeat_timer(struct pqi_ctrl_info *ctrl_info)
if (!ctrl_info->heartbeat_counter)
return;
- ctrl_info->previous_num_interrupts =
- atomic_read(&ctrl_info->num_interrupts);
- ctrl_info->previous_heartbeat_count =
- pqi_read_heartbeat_counter(ctrl_info);
+ ctrl_info->previous_num_interrupts = atomic_read(&ctrl_info->num_interrupts);
+ ctrl_info->previous_heartbeat_count = pqi_read_heartbeat_counter(ctrl_info);
- ctrl_info->heartbeat_timer.expires =
- jiffies + PQI_HEARTBEAT_TIMER_INTERVAL;
+ ctrl_info->heartbeat_timer.expires = jiffies + PQI_HEARTBEAT_TIMER_INTERVAL;
add_timer(&ctrl_info->heartbeat_timer);
}
@@ -3791,12 +3729,10 @@ static void pqi_ofa_capture_event_payload(struct pqi_ctrl_info *ctrl_info,
{
switch (event->event_id) {
case PQI_EVENT_OFA_MEMORY_ALLOCATION:
- ctrl_info->ofa_bytes_requested =
- get_unaligned_le32(&response->data.ofa_memory_allocation.bytes_requested);
+ ctrl_info->ofa_bytes_requested = get_unaligned_le32(&response->data.ofa_memory_allocation.bytes_requested);
break;
case PQI_EVENT_OFA_CANCELED:
- ctrl_info->ofa_cancel_reason =
- get_unaligned_le16(&response->data.ofa_cancelled.reason);
+ ctrl_info->ofa_cancel_reason = get_unaligned_le16(&response->data.ofa_cancelled.reason);
break;
}
}
@@ -3838,8 +3774,7 @@ static int pqi_process_event_intr(struct pqi_ctrl_info *ctrl_info)
event->pending = true;
event->event_type = response->event_type;
event->event_id = get_unaligned_le16(&response->event_id);
- event->additional_event_id =
- get_unaligned_le32(&response->additional_event_id);
+ event->additional_event_id = get_unaligned_le32(&response->additional_event_id);
if (event->event_type == PQI_EVENT_TYPE_OFA)
pqi_ofa_capture_event_payload(ctrl_info, event, response);
}
@@ -4030,6 +3965,7 @@ static int pqi_enable_msix_interrupts(struct pqi_ctrl_info *ctrl_info)
num_vectors_enabled = pci_alloc_irq_vectors(ctrl_info->pci_dev,
PQI_MIN_MSIX_VECTORS, ctrl_info->num_queue_groups,
flags);
+
if (num_vectors_enabled < 0) {
dev_err(&ctrl_info->pci_dev->dev,
"MSI-X init failed with error %d\n",
@@ -4039,6 +3975,7 @@ static int pqi_enable_msix_interrupts(struct pqi_ctrl_info *ctrl_info)
ctrl_info->num_msix_vectors_enabled = num_vectors_enabled;
ctrl_info->irq_mode = IRQ_MODE_MSIX;
+
return 0;
}
@@ -4064,12 +4001,8 @@ static int pqi_alloc_operational_queues(struct pqi_ctrl_info *ctrl_info)
unsigned int num_queue_indexes;
struct pqi_queue_group *queue_group;
- element_array_length_per_iq =
- PQI_OPERATIONAL_IQ_ELEMENT_LENGTH *
- ctrl_info->num_elements_per_iq;
- element_array_length_per_oq =
- PQI_OPERATIONAL_OQ_ELEMENT_LENGTH *
- ctrl_info->num_elements_per_oq;
+ element_array_length_per_iq = PQI_OPERATIONAL_IQ_ELEMENT_LENGTH * ctrl_info->num_elements_per_iq;
+ element_array_length_per_oq = PQI_OPERATIONAL_OQ_ELEMENT_LENGTH * ctrl_info->num_elements_per_oq;
num_inbound_queues = ctrl_info->num_queue_groups * 2;
num_outbound_queues = ctrl_info->num_queue_groups;
num_queue_indexes = (ctrl_info->num_queue_groups * 3) + 1;
@@ -4077,30 +4010,24 @@ static int pqi_alloc_operational_queues(struct pqi_ctrl_info *ctrl_info)
aligned_pointer = NULL;
for (i = 0; i < num_inbound_queues; i++) {
- aligned_pointer = PTR_ALIGN(aligned_pointer,
- PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT);
+ aligned_pointer = PTR_ALIGN(aligned_pointer, PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT);
aligned_pointer += element_array_length_per_iq;
}
for (i = 0; i < num_outbound_queues; i++) {
- aligned_pointer = PTR_ALIGN(aligned_pointer,
- PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT);
+ aligned_pointer = PTR_ALIGN(aligned_pointer, PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT);
aligned_pointer += element_array_length_per_oq;
}
- aligned_pointer = PTR_ALIGN(aligned_pointer,
- PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT);
- aligned_pointer += PQI_NUM_EVENT_QUEUE_ELEMENTS *
- PQI_EVENT_OQ_ELEMENT_LENGTH;
+ aligned_pointer = PTR_ALIGN(aligned_pointer, PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT);
+ aligned_pointer += PQI_NUM_EVENT_QUEUE_ELEMENTS * PQI_EVENT_OQ_ELEMENT_LENGTH;
for (i = 0; i < num_queue_indexes; i++) {
- aligned_pointer = PTR_ALIGN(aligned_pointer,
- PQI_OPERATIONAL_INDEX_ALIGNMENT);
+ aligned_pointer = PTR_ALIGN(aligned_pointer, PQI_OPERATIONAL_INDEX_ALIGNMENT);
aligned_pointer += sizeof(pqi_index_t);
}
- alloc_length = (size_t)aligned_pointer +
- PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT;
+ alloc_length = (size_t)aligned_pointer + PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT;
alloc_length += PQI_EXTRA_SGL_MEMORY;
@@ -4114,8 +4041,7 @@ static int pqi_alloc_operational_queues(struct pqi_ctrl_info *ctrl_info)
ctrl_info->queue_memory_length = alloc_length;
- element_array = PTR_ALIGN(ctrl_info->queue_memory_base,
- PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT);
+ element_array = PTR_ALIGN(ctrl_info->queue_memory_base, PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT);
for (i = 0; i < ctrl_info->num_queue_groups; i++) {
queue_group = &ctrl_info->queue_groups[i];
@@ -4124,71 +4050,52 @@ static int pqi_alloc_operational_queues(struct pqi_ctrl_info *ctrl_info)
ctrl_info->queue_memory_base_dma_handle +
(element_array - ctrl_info->queue_memory_base);
element_array += element_array_length_per_iq;
- element_array = PTR_ALIGN(element_array,
- PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT);
+ element_array = PTR_ALIGN(element_array, PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT);
queue_group->iq_element_array[AIO_PATH] = element_array;
- queue_group->iq_element_array_bus_addr[AIO_PATH] =
- ctrl_info->queue_memory_base_dma_handle +
+ queue_group->iq_element_array_bus_addr[AIO_PATH] = ctrl_info->queue_memory_base_dma_handle +
(element_array - ctrl_info->queue_memory_base);
element_array += element_array_length_per_iq;
- element_array = PTR_ALIGN(element_array,
- PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT);
+ element_array = PTR_ALIGN(element_array, PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT);
}
for (i = 0; i < ctrl_info->num_queue_groups; i++) {
queue_group = &ctrl_info->queue_groups[i];
queue_group->oq_element_array = element_array;
- queue_group->oq_element_array_bus_addr =
- ctrl_info->queue_memory_base_dma_handle +
+ queue_group->oq_element_array_bus_addr = ctrl_info->queue_memory_base_dma_handle +
(element_array - ctrl_info->queue_memory_base);
element_array += element_array_length_per_oq;
- element_array = PTR_ALIGN(element_array,
- PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT);
+ element_array = PTR_ALIGN(element_array, PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT);
}
ctrl_info->event_queue.oq_element_array = element_array;
- ctrl_info->event_queue.oq_element_array_bus_addr =
- ctrl_info->queue_memory_base_dma_handle +
+ ctrl_info->event_queue.oq_element_array_bus_addr = ctrl_info->queue_memory_base_dma_handle +
(element_array - ctrl_info->queue_memory_base);
- element_array += PQI_NUM_EVENT_QUEUE_ELEMENTS *
- PQI_EVENT_OQ_ELEMENT_LENGTH;
+ element_array += PQI_NUM_EVENT_QUEUE_ELEMENTS * PQI_EVENT_OQ_ELEMENT_LENGTH;
- next_queue_index = (void __iomem *)PTR_ALIGN(element_array,
- PQI_OPERATIONAL_INDEX_ALIGNMENT);
+ next_queue_index = (void __iomem *)PTR_ALIGN(element_array, PQI_OPERATIONAL_INDEX_ALIGNMENT);
for (i = 0; i < ctrl_info->num_queue_groups; i++) {
queue_group = &ctrl_info->queue_groups[i];
queue_group->iq_ci[RAID_PATH] = next_queue_index;
- queue_group->iq_ci_bus_addr[RAID_PATH] =
- ctrl_info->queue_memory_base_dma_handle +
- (next_queue_index -
- (void __iomem *)ctrl_info->queue_memory_base);
+ queue_group->iq_ci_bus_addr[RAID_PATH] = ctrl_info->queue_memory_base_dma_handle +
+ (next_queue_index - (void __iomem *)ctrl_info->queue_memory_base);
next_queue_index += sizeof(pqi_index_t);
- next_queue_index = PTR_ALIGN(next_queue_index,
- PQI_OPERATIONAL_INDEX_ALIGNMENT);
+ next_queue_index = PTR_ALIGN(next_queue_index, PQI_OPERATIONAL_INDEX_ALIGNMENT);
queue_group->iq_ci[AIO_PATH] = next_queue_index;
- queue_group->iq_ci_bus_addr[AIO_PATH] =
- ctrl_info->queue_memory_base_dma_handle +
- (next_queue_index -
- (void __iomem *)ctrl_info->queue_memory_base);
+ queue_group->iq_ci_bus_addr[AIO_PATH] = ctrl_info->queue_memory_base_dma_handle +
+ (next_queue_index - (void __iomem *)ctrl_info->queue_memory_base);
next_queue_index += sizeof(pqi_index_t);
- next_queue_index = PTR_ALIGN(next_queue_index,
- PQI_OPERATIONAL_INDEX_ALIGNMENT);
+ next_queue_index = PTR_ALIGN(next_queue_index, PQI_OPERATIONAL_INDEX_ALIGNMENT);
queue_group->oq_pi = next_queue_index;
- queue_group->oq_pi_bus_addr =
- ctrl_info->queue_memory_base_dma_handle +
- (next_queue_index -
- (void __iomem *)ctrl_info->queue_memory_base);
+ queue_group->oq_pi_bus_addr = ctrl_info->queue_memory_base_dma_handle +
+ (next_queue_index - (void __iomem *)ctrl_info->queue_memory_base);
next_queue_index += sizeof(pqi_index_t);
- next_queue_index = PTR_ALIGN(next_queue_index,
- PQI_OPERATIONAL_INDEX_ALIGNMENT);
+ next_queue_index = PTR_ALIGN(next_queue_index, PQI_OPERATIONAL_INDEX_ALIGNMENT);
}
ctrl_info->event_queue.oq_pi = next_queue_index;
- ctrl_info->event_queue.oq_pi_bus_addr =
- ctrl_info->queue_memory_base_dma_handle +
- (next_queue_index -
- (void __iomem *)ctrl_info->queue_memory_base);
+ ctrl_info->event_queue.oq_pi_bus_addr = ctrl_info->queue_memory_base_dma_handle +
+ (next_queue_index - (void __iomem *)ctrl_info->queue_memory_base);
return 0;
}
@@ -4240,8 +4147,7 @@ static int pqi_alloc_admin_queues(struct pqi_ctrl_info *ctrl_info)
struct pqi_admin_queues_aligned *admin_queues_aligned;
struct pqi_admin_queues *admin_queues;
- alloc_length = sizeof(struct pqi_admin_queues_aligned) +
- PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT;
+ alloc_length = sizeof(struct pqi_admin_queues_aligned) + PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT;
ctrl_info->admin_queue_memory_base =
dma_alloc_coherent(&ctrl_info->pci_dev->dev, alloc_length,
@@ -4254,33 +4160,20 @@ static int pqi_alloc_admin_queues(struct pqi_ctrl_info *ctrl_info)
ctrl_info->admin_queue_memory_length = alloc_length;
admin_queues = &ctrl_info->admin_queues;
- admin_queues_aligned = PTR_ALIGN(ctrl_info->admin_queue_memory_base,
- PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT);
- admin_queues->iq_element_array =
- &admin_queues_aligned->iq_element_array;
- admin_queues->oq_element_array =
- &admin_queues_aligned->oq_element_array;
- admin_queues->iq_ci =
- (pqi_index_t __iomem *)&admin_queues_aligned->iq_ci;
- admin_queues->oq_pi =
- (pqi_index_t __iomem *)&admin_queues_aligned->oq_pi;
-
- admin_queues->iq_element_array_bus_addr =
- ctrl_info->admin_queue_memory_base_dma_handle +
- (admin_queues->iq_element_array -
- ctrl_info->admin_queue_memory_base);
- admin_queues->oq_element_array_bus_addr =
- ctrl_info->admin_queue_memory_base_dma_handle +
- (admin_queues->oq_element_array -
- ctrl_info->admin_queue_memory_base);
- admin_queues->iq_ci_bus_addr =
- ctrl_info->admin_queue_memory_base_dma_handle +
- ((void __iomem *)admin_queues->iq_ci -
- (void __iomem *)ctrl_info->admin_queue_memory_base);
- admin_queues->oq_pi_bus_addr =
- ctrl_info->admin_queue_memory_base_dma_handle +
- ((void __iomem *)admin_queues->oq_pi -
- (void __iomem *)ctrl_info->admin_queue_memory_base);
+ admin_queues_aligned = PTR_ALIGN(ctrl_info->admin_queue_memory_base, PQI_QUEUE_ELEMENT_ARRAY_ALIGNMENT);
+ admin_queues->iq_element_array = &admin_queues_aligned->iq_element_array;
+ admin_queues->oq_element_array = &admin_queues_aligned->oq_element_array;
+ admin_queues->iq_ci = (pqi_index_t __iomem *)&admin_queues_aligned->iq_ci;
+ admin_queues->oq_pi = (pqi_index_t __iomem *)&admin_queues_aligned->oq_pi;
+
+ admin_queues->iq_element_array_bus_addr = ctrl_info->admin_queue_memory_base_dma_handle +
+ (admin_queues->iq_element_array - ctrl_info->admin_queue_memory_base);
+ admin_queues->oq_element_array_bus_addr = ctrl_info->admin_queue_memory_base_dma_handle +
+ (admin_queues->oq_element_array - ctrl_info->admin_queue_memory_base);
+ admin_queues->iq_ci_bus_addr = ctrl_info->admin_queue_memory_base_dma_handle +
+ ((void __iomem *)admin_queues->iq_ci - (void __iomem *)ctrl_info->admin_queue_memory_base);
+ admin_queues->oq_pi_bus_addr = ctrl_info->admin_queue_memory_base_dma_handle +
+ ((void __iomem *)admin_queues->oq_pi - (void __iomem *)ctrl_info->admin_queue_memory_base);
return 0;
}
@@ -4299,22 +4192,15 @@ static int pqi_create_admin_queues(struct pqi_ctrl_info *ctrl_info)
pqi_registers = ctrl_info->pqi_registers;
admin_queues = &ctrl_info->admin_queues;
- writeq((u64)admin_queues->iq_element_array_bus_addr,
- &pqi_registers->admin_iq_element_array_addr);
- writeq((u64)admin_queues->oq_element_array_bus_addr,
- &pqi_registers->admin_oq_element_array_addr);
- writeq((u64)admin_queues->iq_ci_bus_addr,
- &pqi_registers->admin_iq_ci_addr);
- writeq((u64)admin_queues->oq_pi_bus_addr,
- &pqi_registers->admin_oq_pi_addr);
-
- reg = PQI_ADMIN_IQ_NUM_ELEMENTS |
- (PQI_ADMIN_OQ_NUM_ELEMENTS << 8) |
- (admin_queues->int_msg_num << 16);
+ writeq((u64)admin_queues->iq_element_array_bus_addr, &pqi_registers->admin_iq_element_array_addr);
+ writeq((u64)admin_queues->oq_element_array_bus_addr, &pqi_registers->admin_oq_element_array_addr);
+ writeq((u64)admin_queues->iq_ci_bus_addr, &pqi_registers->admin_iq_ci_addr);
+ writeq((u64)admin_queues->oq_pi_bus_addr, &pqi_registers->admin_oq_pi_addr);
+
+ reg = PQI_ADMIN_IQ_NUM_ELEMENTS | (PQI_ADMIN_OQ_NUM_ELEMENTS << 8) | (admin_queues->int_msg_num << 16);
writel(reg, &pqi_registers->admin_iq_num_elements);
- writel(PQI_CREATE_ADMIN_QUEUE_PAIR,
- &pqi_registers->function_and_status_code);
+ writel(PQI_CREATE_ADMIN_QUEUE_PAIR, &pqi_registers->function_and_status_code);
timeout = PQI_ADMIN_QUEUE_CREATE_TIMEOUT_JIFFIES + jiffies;
while (1) {
@@ -4331,11 +4217,9 @@ static int pqi_create_admin_queues(struct pqi_ctrl_info *ctrl_info)
* offsets until *after* the create admin queue pair command
* completes successfully.
*/
- admin_queues->iq_pi = ctrl_info->iomem_base +
- PQI_DEVICE_REGISTERS_OFFSET +
+ admin_queues->iq_pi = ctrl_info->iomem_base + PQI_DEVICE_REGISTERS_OFFSET +
readq(&pqi_registers->admin_iq_pi_offset);
- admin_queues->oq_ci = ctrl_info->iomem_base +
- PQI_DEVICE_REGISTERS_OFFSET +
+ admin_queues->oq_ci = ctrl_info->iomem_base + PQI_DEVICE_REGISTERS_OFFSET +
readq(&pqi_registers->admin_oq_ci_offset);
return 0;
@@ -4366,7 +4250,7 @@ static void pqi_submit_admin_request(struct pqi_ctrl_info *ctrl_info,
writel(iq_pi, admin_queues->iq_pi);
}
-#define PQI_ADMIN_REQUEST_TIMEOUT_SECS 60
+#define PQI_ADMIN_REQUEST_TIMEOUT_SECS 60
static int pqi_poll_for_admin_response(struct pqi_ctrl_info *ctrl_info,
struct pqi_general_admin_response *response)
@@ -4430,45 +4314,35 @@ static void pqi_start_io(struct pqi_ctrl_info *ctrl_info,
iq_pi = queue_group->iq_pi_copy[path];
- list_for_each_entry_safe(io_request, next,
- &queue_group->request_list[path], request_list_entry) {
-
+ list_for_each_entry_safe(io_request, next, &queue_group->request_list[path], request_list_entry) {
request = io_request->iu;
- iu_length = get_unaligned_le16(&request->iu_length) +
- PQI_REQUEST_HEADER_LENGTH;
- num_elements_needed =
- DIV_ROUND_UP(iu_length,
- PQI_OPERATIONAL_IQ_ELEMENT_LENGTH);
+ iu_length = get_unaligned_le16(&request->iu_length) + PQI_REQUEST_HEADER_LENGTH;
+ num_elements_needed = DIV_ROUND_UP(iu_length, PQI_OPERATIONAL_IQ_ELEMENT_LENGTH);
iq_ci = readl(queue_group->iq_ci[path]);
- if (num_elements_needed > pqi_num_elements_free(iq_pi, iq_ci,
- ctrl_info->num_elements_per_iq))
+ if (num_elements_needed > pqi_num_elements_free(iq_pi, iq_ci, ctrl_info->num_elements_per_iq))
break;
- put_unaligned_le16(queue_group->oq_id,
- &request->response_queue_id);
+ put_unaligned_le16(queue_group->oq_id, &request->response_queue_id);
next_element = queue_group->iq_element_array[path] +
(iq_pi * PQI_OPERATIONAL_IQ_ELEMENT_LENGTH);
- num_elements_to_end_of_queue =
- ctrl_info->num_elements_per_iq - iq_pi;
+ num_elements_to_end_of_queue = ctrl_info->num_elements_per_iq - iq_pi;
if (num_elements_needed <= num_elements_to_end_of_queue) {
memcpy(next_element, request, iu_length);
} else {
- copy_count = num_elements_to_end_of_queue *
- PQI_OPERATIONAL_IQ_ELEMENT_LENGTH;
+ copy_count = num_elements_to_end_of_queue * PQI_OPERATIONAL_IQ_ELEMENT_LENGTH;
memcpy(next_element, request, copy_count);
memcpy(queue_group->iq_element_array[path],
(u8 *)request + copy_count,
iu_length - copy_count);
}
- iq_pi = (iq_pi + num_elements_needed) %
- ctrl_info->num_elements_per_iq;
+ iq_pi = (iq_pi + num_elements_needed) % ctrl_info->num_elements_per_iq;
list_del(&io_request->request_list_entry);
}
@@ -4528,8 +4402,7 @@ static int pqi_process_raid_io_error_synchronous(
rc = 0;
break;
case PQI_DATA_IN_OUT_UNDERFLOW:
- if (error_info->status == SAM_STAT_GOOD ||
- error_info->status == SAM_STAT_CHECK_CONDITION)
+ if (error_info->status == SAM_STAT_GOOD || error_info->status == SAM_STAT_CHECK_CONDITION)
rc = 0;
break;
case PQI_DATA_IN_OUT_ABORTED:
@@ -4562,9 +4435,10 @@ static int pqi_submit_raid_request_synchronous(struct pqi_ctrl_info *ctrl_info,
}
pqi_ctrl_busy(ctrl_info);
+
/*
- * Wait for other admin queue updates such as;
- * config table changes, OFA memory updates, ...
+ * Wait for other admin queue updates such as
+ * config table changes, OFA memory updates, etc.
*/
if (pqi_is_blockable_request(request))
pqi_wait_if_ctrl_blocked(ctrl_info);
@@ -4576,22 +4450,19 @@ static int pqi_submit_raid_request_synchronous(struct pqi_ctrl_info *ctrl_info,
io_request = pqi_alloc_io_request(ctrl_info, NULL);
- put_unaligned_le16(io_request->index,
- &(((struct pqi_raid_path_request *)request)->request_id));
+ put_unaligned_le16(io_request->index, &(((struct pqi_raid_path_request *)request)->request_id));
if (request->iu_type == PQI_REQUEST_IU_RAID_PATH_IO)
((struct pqi_raid_path_request *)request)->error_index =
((struct pqi_raid_path_request *)request)->request_id;
- iu_length = get_unaligned_le16(&request->iu_length) +
- PQI_REQUEST_HEADER_LENGTH;
+ iu_length = get_unaligned_le16(&request->iu_length) + PQI_REQUEST_HEADER_LENGTH;
memcpy(io_request->iu, request, iu_length);
io_request->io_complete_callback = pqi_raid_synchronous_complete;
io_request->context = &wait;
- pqi_start_io(ctrl_info, &ctrl_info->queue_groups[PQI_DEFAULT_QUEUE_GROUP], RAID_PATH,
- io_request);
+ pqi_start_io(ctrl_info, &ctrl_info->queue_groups[PQI_DEFAULT_QUEUE_GROUP], RAID_PATH, io_request);
pqi_wait_for_completion_io(ctrl_info, &wait);
@@ -4613,14 +4484,13 @@ static int pqi_submit_raid_request_synchronous(struct pqi_ctrl_info *ctrl_info,
return rc;
}
-static int pqi_validate_admin_response(
- struct pqi_general_admin_response *response, u8 expected_function_code)
+static int pqi_validate_admin_response(struct pqi_general_admin_response *response,
+ u8 expected_function_code)
{
if (response->header.iu_type != PQI_RESPONSE_IU_GENERAL_ADMIN)
return -EINVAL;
- if (get_unaligned_le16(&response->header.iu_length) !=
- PQI_GENERAL_ADMIN_IU_LENGTH)
+ if (get_unaligned_le16(&response->header.iu_length) != PQI_GENERAL_ADMIN_IU_LENGTH)
return -EINVAL;
if (response->function_code != expected_function_code)
@@ -4632,10 +4502,8 @@ static int pqi_validate_admin_response(
return 0;
}
-static int pqi_submit_admin_request_synchronous(
- struct pqi_ctrl_info *ctrl_info,
- struct pqi_general_admin_request *request,
- struct pqi_general_admin_response *response)
+static int pqi_submit_admin_request_synchronous(struct pqi_ctrl_info *ctrl_info,
+ struct pqi_general_admin_request *request, struct pqi_general_admin_response *response)
{
int rc;
@@ -4664,17 +4532,13 @@ static int pqi_report_device_capability(struct pqi_ctrl_info *ctrl_info)
memset(&request, 0, sizeof(request));
request.header.iu_type = PQI_REQUEST_IU_GENERAL_ADMIN;
- put_unaligned_le16(PQI_GENERAL_ADMIN_IU_LENGTH,
- &request.header.iu_length);
- request.function_code =
- PQI_GENERAL_ADMIN_FUNCTION_REPORT_DEVICE_CAPABILITY;
- put_unaligned_le32(sizeof(*capability),
- &request.data.report_device_capability.buffer_length);
+ put_unaligned_le16(PQI_GENERAL_ADMIN_IU_LENGTH, &request.header.iu_length);
+ request.function_code = PQI_GENERAL_ADMIN_FUNCTION_REPORT_DEVICE_CAPABILITY;
+ put_unaligned_le32(sizeof(*capability), &request.data.report_device_capability.buffer_length);
rc = pqi_map_single(ctrl_info->pci_dev,
&request.data.report_device_capability.sg_descriptor,
- capability, sizeof(*capability),
- DMA_FROM_DEVICE);
+ capability, sizeof(*capability), DMA_FROM_DEVICE);
if (rc)
goto out;
@@ -4692,31 +4556,18 @@ static int pqi_report_device_capability(struct pqi_ctrl_info *ctrl_info)
goto out;
}
- ctrl_info->max_inbound_queues =
- get_unaligned_le16(&capability->max_inbound_queues);
- ctrl_info->max_elements_per_iq =
- get_unaligned_le16(&capability->max_elements_per_iq);
- ctrl_info->max_iq_element_length =
- get_unaligned_le16(&capability->max_iq_element_length)
- * 16;
- ctrl_info->max_outbound_queues =
- get_unaligned_le16(&capability->max_outbound_queues);
- ctrl_info->max_elements_per_oq =
- get_unaligned_le16(&capability->max_elements_per_oq);
- ctrl_info->max_oq_element_length =
- get_unaligned_le16(&capability->max_oq_element_length)
- * 16;
-
- sop_iu_layer_descriptor =
- &capability->iu_layer_descriptors[PQI_PROTOCOL_SOP];
-
- ctrl_info->max_inbound_iu_length_per_firmware =
- get_unaligned_le16(
- &sop_iu_layer_descriptor->max_inbound_iu_length);
- ctrl_info->inbound_spanning_supported =
- sop_iu_layer_descriptor->inbound_spanning_supported;
- ctrl_info->outbound_spanning_supported =
- sop_iu_layer_descriptor->outbound_spanning_supported;
+ ctrl_info->max_inbound_queues = get_unaligned_le16(&capability->max_inbound_queues);
+ ctrl_info->max_elements_per_iq = get_unaligned_le16(&capability->max_elements_per_iq);
+ ctrl_info->max_iq_element_length = get_unaligned_le16(&capability->max_iq_element_length) * 16;
+ ctrl_info->max_outbound_queues = get_unaligned_le16(&capability->max_outbound_queues);
+ ctrl_info->max_elements_per_oq = get_unaligned_le16(&capability->max_elements_per_oq);
+ ctrl_info->max_oq_element_length = get_unaligned_le16(&capability->max_oq_element_length) * 16;
+
+ sop_iu_layer_descriptor = &capability->iu_layer_descriptors[PQI_PROTOCOL_SOP];
+
+ ctrl_info->max_inbound_iu_length_per_firmware = get_unaligned_le16(&sop_iu_layer_descriptor->max_inbound_iu_length);
+ ctrl_info->inbound_spanning_supported = sop_iu_layer_descriptor->inbound_spanning_supported;
+ ctrl_info->outbound_spanning_supported = sop_iu_layer_descriptor->outbound_spanning_supported;
out:
kfree(capability);
@@ -4726,8 +4577,7 @@ static int pqi_report_device_capability(struct pqi_ctrl_info *ctrl_info)
static int pqi_validate_device_capability(struct pqi_ctrl_info *ctrl_info)
{
- if (ctrl_info->max_iq_element_length <
- PQI_OPERATIONAL_IQ_ELEMENT_LENGTH) {
+ if (ctrl_info->max_iq_element_length < PQI_OPERATIONAL_IQ_ELEMENT_LENGTH) {
dev_err(&ctrl_info->pci_dev->dev,
"max. inbound queue element length of %d is less than the required length of %d\n",
ctrl_info->max_iq_element_length,
@@ -4735,8 +4585,7 @@ static int pqi_validate_device_capability(struct pqi_ctrl_info *ctrl_info)
return -EINVAL;
}
- if (ctrl_info->max_oq_element_length <
- PQI_OPERATIONAL_OQ_ELEMENT_LENGTH) {
+ if (ctrl_info->max_oq_element_length < PQI_OPERATIONAL_OQ_ELEMENT_LENGTH) {
dev_err(&ctrl_info->pci_dev->dev,
"max. outbound queue element length of %d is less than the required length of %d\n",
ctrl_info->max_oq_element_length,
@@ -4744,8 +4593,7 @@ static int pqi_validate_device_capability(struct pqi_ctrl_info *ctrl_info)
return -EINVAL;
}
- if (ctrl_info->max_inbound_iu_length_per_firmware <
- PQI_OPERATIONAL_IQ_ELEMENT_LENGTH) {
+ if (ctrl_info->max_inbound_iu_length_per_firmware < PQI_OPERATIONAL_IQ_ELEMENT_LENGTH) {
dev_err(&ctrl_info->pci_dev->dev,
"max. inbound IU length of %u is less than the min. required length of %d\n",
ctrl_info->max_inbound_iu_length_per_firmware,
@@ -4783,32 +4631,22 @@ static int pqi_create_event_queue(struct pqi_ctrl_info *ctrl_info)
*/
memset(&request, 0, sizeof(request));
request.header.iu_type = PQI_REQUEST_IU_GENERAL_ADMIN;
- put_unaligned_le16(PQI_GENERAL_ADMIN_IU_LENGTH,
- &request.header.iu_length);
+ put_unaligned_le16(PQI_GENERAL_ADMIN_IU_LENGTH, &request.header.iu_length);
request.function_code = PQI_GENERAL_ADMIN_FUNCTION_CREATE_OQ;
- put_unaligned_le16(event_queue->oq_id,
- &request.data.create_operational_oq.queue_id);
- put_unaligned_le64((u64)event_queue->oq_element_array_bus_addr,
- &request.data.create_operational_oq.element_array_addr);
- put_unaligned_le64((u64)event_queue->oq_pi_bus_addr,
- &request.data.create_operational_oq.pi_addr);
- put_unaligned_le16(PQI_NUM_EVENT_QUEUE_ELEMENTS,
- &request.data.create_operational_oq.num_elements);
- put_unaligned_le16(PQI_EVENT_OQ_ELEMENT_LENGTH / 16,
- &request.data.create_operational_oq.element_length);
+ put_unaligned_le16(event_queue->oq_id, &request.data.create_operational_oq.queue_id);
+ put_unaligned_le64((u64)event_queue->oq_element_array_bus_addr, &request.data.create_operational_oq.element_array_addr);
+ put_unaligned_le64((u64)event_queue->oq_pi_bus_addr, &request.data.create_operational_oq.pi_addr);
+ put_unaligned_le16(PQI_NUM_EVENT_QUEUE_ELEMENTS, &request.data.create_operational_oq.num_elements);
+ put_unaligned_le16(PQI_EVENT_OQ_ELEMENT_LENGTH / 16, &request.data.create_operational_oq.element_length);
request.data.create_operational_oq.queue_protocol = PQI_PROTOCOL_SOP;
- put_unaligned_le16(event_queue->int_msg_num,
- &request.data.create_operational_oq.int_msg_num);
+ put_unaligned_le16(event_queue->int_msg_num, &request.data.create_operational_oq.int_msg_num);
- rc = pqi_submit_admin_request_synchronous(ctrl_info, &request,
- &response);
+ rc = pqi_submit_admin_request_synchronous(ctrl_info, &request, &response);
if (rc)
return rc;
- event_queue->oq_ci = ctrl_info->iomem_base +
- PQI_DEVICE_REGISTERS_OFFSET +
- get_unaligned_le64(
- &response.data.create_operational_oq.oq_ci_offset);
+ event_queue->oq_ci = ctrl_info->iomem_base + PQI_DEVICE_REGISTERS_OFFSET +
+ get_unaligned_le64(&response.data.create_operational_oq.oq_ci_offset);
return 0;
}
@@ -4829,34 +4667,24 @@ static int pqi_create_queue_group(struct pqi_ctrl_info *ctrl_info,
*/
memset(&request, 0, sizeof(request));
request.header.iu_type = PQI_REQUEST_IU_GENERAL_ADMIN;
- put_unaligned_le16(PQI_GENERAL_ADMIN_IU_LENGTH,
- &request.header.iu_length);
+ put_unaligned_le16(PQI_GENERAL_ADMIN_IU_LENGTH, &request.header.iu_length);
request.function_code = PQI_GENERAL_ADMIN_FUNCTION_CREATE_IQ;
- put_unaligned_le16(queue_group->iq_id[RAID_PATH],
- &request.data.create_operational_iq.queue_id);
- put_unaligned_le64(
- (u64)queue_group->iq_element_array_bus_addr[RAID_PATH],
- &request.data.create_operational_iq.element_array_addr);
- put_unaligned_le64((u64)queue_group->iq_ci_bus_addr[RAID_PATH],
- &request.data.create_operational_iq.ci_addr);
- put_unaligned_le16(ctrl_info->num_elements_per_iq,
- &request.data.create_operational_iq.num_elements);
- put_unaligned_le16(PQI_OPERATIONAL_IQ_ELEMENT_LENGTH / 16,
- &request.data.create_operational_iq.element_length);
+ put_unaligned_le16(queue_group->iq_id[RAID_PATH], &request.data.create_operational_iq.queue_id);
+ put_unaligned_le64((u64)queue_group->iq_element_array_bus_addr[RAID_PATH], &request.data.create_operational_iq.element_array_addr);
+ put_unaligned_le64((u64)queue_group->iq_ci_bus_addr[RAID_PATH], &request.data.create_operational_iq.ci_addr);
+ put_unaligned_le16(ctrl_info->num_elements_per_iq, &request.data.create_operational_iq.num_elements);
+ put_unaligned_le16(PQI_OPERATIONAL_IQ_ELEMENT_LENGTH / 16, &request.data.create_operational_iq.element_length);
request.data.create_operational_iq.queue_protocol = PQI_PROTOCOL_SOP;
- rc = pqi_submit_admin_request_synchronous(ctrl_info, &request,
- &response);
+ rc = pqi_submit_admin_request_synchronous(ctrl_info, &request, &response);
if (rc) {
dev_err(&ctrl_info->pci_dev->dev,
"error creating inbound RAID queue\n");
return rc;
}
- queue_group->iq_pi[RAID_PATH] = ctrl_info->iomem_base +
- PQI_DEVICE_REGISTERS_OFFSET +
- get_unaligned_le64(
- &response.data.create_operational_iq.iq_pi_offset);
+ queue_group->iq_pi[RAID_PATH] = ctrl_info->iomem_base + PQI_DEVICE_REGISTERS_OFFSET +
+ get_unaligned_le64(&response.data.create_operational_iq.iq_pi_offset);
/*
* Create IQ (Inbound Queue - host to device queue) for
@@ -4864,34 +4692,24 @@ static int pqi_create_queue_group(struct pqi_ctrl_info *ctrl_info,
*/
memset(&request, 0, sizeof(request));
request.header.iu_type = PQI_REQUEST_IU_GENERAL_ADMIN;
- put_unaligned_le16(PQI_GENERAL_ADMIN_IU_LENGTH,
- &request.header.iu_length);
+ put_unaligned_le16(PQI_GENERAL_ADMIN_IU_LENGTH, &request.header.iu_length);
request.function_code = PQI_GENERAL_ADMIN_FUNCTION_CREATE_IQ;
- put_unaligned_le16(queue_group->iq_id[AIO_PATH],
- &request.data.create_operational_iq.queue_id);
- put_unaligned_le64((u64)queue_group->
- iq_element_array_bus_addr[AIO_PATH],
- &request.data.create_operational_iq.element_array_addr);
- put_unaligned_le64((u64)queue_group->iq_ci_bus_addr[AIO_PATH],
- &request.data.create_operational_iq.ci_addr);
- put_unaligned_le16(ctrl_info->num_elements_per_iq,
- &request.data.create_operational_iq.num_elements);
- put_unaligned_le16(PQI_OPERATIONAL_IQ_ELEMENT_LENGTH / 16,
- &request.data.create_operational_iq.element_length);
+ put_unaligned_le16(queue_group->iq_id[AIO_PATH], &request.data.create_operational_iq.queue_id);
+ put_unaligned_le64((u64)queue_group->iq_element_array_bus_addr[AIO_PATH], &request.data.create_operational_iq.element_array_addr);
+ put_unaligned_le64((u64)queue_group->iq_ci_bus_addr[AIO_PATH], &request.data.create_operational_iq.ci_addr);
+ put_unaligned_le16(ctrl_info->num_elements_per_iq, &request.data.create_operational_iq.num_elements);
+ put_unaligned_le16(PQI_OPERATIONAL_IQ_ELEMENT_LENGTH / 16, &request.data.create_operational_iq.element_length);
request.data.create_operational_iq.queue_protocol = PQI_PROTOCOL_SOP;
- rc = pqi_submit_admin_request_synchronous(ctrl_info, &request,
- &response);
+ rc = pqi_submit_admin_request_synchronous(ctrl_info, &request, &response);
if (rc) {
dev_err(&ctrl_info->pci_dev->dev,
"error creating inbound AIO queue\n");
return rc;
}
- queue_group->iq_pi[AIO_PATH] = ctrl_info->iomem_base +
- PQI_DEVICE_REGISTERS_OFFSET +
- get_unaligned_le64(
- &response.data.create_operational_iq.iq_pi_offset);
+ queue_group->iq_pi[AIO_PATH] = ctrl_info->iomem_base + PQI_DEVICE_REGISTERS_OFFSET +
+ get_unaligned_le64(&response.data.create_operational_iq.iq_pi_offset);
/*
* Designate the 2nd IQ as the AIO path. By default, all IQs are
@@ -4900,16 +4718,12 @@ static int pqi_create_queue_group(struct pqi_ctrl_info *ctrl_info,
*/
memset(&request, 0, sizeof(request));
request.header.iu_type = PQI_REQUEST_IU_GENERAL_ADMIN;
- put_unaligned_le16(PQI_GENERAL_ADMIN_IU_LENGTH,
- &request.header.iu_length);
+ put_unaligned_le16(PQI_GENERAL_ADMIN_IU_LENGTH, &request.header.iu_length);
request.function_code = PQI_GENERAL_ADMIN_FUNCTION_CHANGE_IQ_PROPERTY;
- put_unaligned_le16(queue_group->iq_id[AIO_PATH],
- &request.data.change_operational_iq_properties.queue_id);
- put_unaligned_le32(PQI_IQ_PROPERTY_IS_AIO_QUEUE,
- &request.data.change_operational_iq_properties.vendor_specific);
+ put_unaligned_le16(queue_group->iq_id[AIO_PATH], &request.data.change_operational_iq_properties.queue_id);
+ put_unaligned_le32(PQI_IQ_PROPERTY_IS_AIO_QUEUE, &request.data.change_operational_iq_properties.vendor_specific);
- rc = pqi_submit_admin_request_synchronous(ctrl_info, &request,
- &response);
+ rc = pqi_submit_admin_request_synchronous(ctrl_info, &request, &response);
if (rc) {
dev_err(&ctrl_info->pci_dev->dev,
"error changing queue property\n");
@@ -4921,35 +4735,25 @@ static int pqi_create_queue_group(struct pqi_ctrl_info *ctrl_info,
*/
memset(&request, 0, sizeof(request));
request.header.iu_type = PQI_REQUEST_IU_GENERAL_ADMIN;
- put_unaligned_le16(PQI_GENERAL_ADMIN_IU_LENGTH,
- &request.header.iu_length);
+ put_unaligned_le16(PQI_GENERAL_ADMIN_IU_LENGTH, &request.header.iu_length);
request.function_code = PQI_GENERAL_ADMIN_FUNCTION_CREATE_OQ;
- put_unaligned_le16(queue_group->oq_id,
- &request.data.create_operational_oq.queue_id);
- put_unaligned_le64((u64)queue_group->oq_element_array_bus_addr,
- &request.data.create_operational_oq.element_array_addr);
- put_unaligned_le64((u64)queue_group->oq_pi_bus_addr,
- &request.data.create_operational_oq.pi_addr);
- put_unaligned_le16(ctrl_info->num_elements_per_oq,
- &request.data.create_operational_oq.num_elements);
- put_unaligned_le16(PQI_OPERATIONAL_OQ_ELEMENT_LENGTH / 16,
- &request.data.create_operational_oq.element_length);
+ put_unaligned_le16(queue_group->oq_id, &request.data.create_operational_oq.queue_id);
+ put_unaligned_le64((u64)queue_group->oq_element_array_bus_addr, &request.data.create_operational_oq.element_array_addr);
+ put_unaligned_le64((u64)queue_group->oq_pi_bus_addr, &request.data.create_operational_oq.pi_addr);
+ put_unaligned_le16(ctrl_info->num_elements_per_oq, &request.data.create_operational_oq.num_elements);
+ put_unaligned_le16(PQI_OPERATIONAL_OQ_ELEMENT_LENGTH / 16, &request.data.create_operational_oq.element_length);
request.data.create_operational_oq.queue_protocol = PQI_PROTOCOL_SOP;
- put_unaligned_le16(queue_group->int_msg_num,
- &request.data.create_operational_oq.int_msg_num);
+ put_unaligned_le16(queue_group->int_msg_num, &request.data.create_operational_oq.int_msg_num);
- rc = pqi_submit_admin_request_synchronous(ctrl_info, &request,
- &response);
+ rc = pqi_submit_admin_request_synchronous(ctrl_info, &request, &response);
if (rc) {
dev_err(&ctrl_info->pci_dev->dev,
"error creating outbound queue\n");
return rc;
}
- queue_group->oq_ci = ctrl_info->iomem_base +
- PQI_DEVICE_REGISTERS_OFFSET +
- get_unaligned_le64(
- &response.data.create_operational_oq.oq_ci_offset);
+ queue_group->oq_ci = ctrl_info->iomem_base + PQI_DEVICE_REGISTERS_OFFSET +
+ get_unaligned_le64(&response.data.create_operational_oq.oq_ci_offset);
return 0;
}
@@ -4991,8 +4795,7 @@ static int pqi_configure_events(struct pqi_ctrl_info *ctrl_info,
struct pqi_event_descriptor *event_descriptor;
struct pqi_general_management_request request;
- event_config = kmalloc(PQI_REPORT_EVENT_CONFIG_BUFFER_LENGTH,
- GFP_KERNEL);
+ event_config = kmalloc(PQI_REPORT_EVENT_CONFIG_BUFFER_LENGTH, GFP_KERNEL);
if (!event_config)
return -ENOMEM;
@@ -5023,10 +4826,8 @@ static int pqi_configure_events(struct pqi_ctrl_info *ctrl_info,
for (i = 0; i < event_config->num_event_descriptors; i++) {
event_descriptor = &event_config->descriptors[i];
- if (enable_events &&
- pqi_is_supported_event(event_descriptor->event_type))
- put_unaligned_le16(ctrl_info->event_queue.oq_id,
- &event_descriptor->oq_id);
+ if (enable_events && pqi_is_supported_event(event_descriptor->event_type))
+ put_unaligned_le16(ctrl_info->event_queue.oq_id, &event_descriptor->oq_id);
else
put_unaligned_le16(0, &event_descriptor->oq_id);
}
@@ -5037,8 +4838,7 @@ static int pqi_configure_events(struct pqi_ctrl_info *ctrl_info,
put_unaligned_le16(offsetof(struct pqi_general_management_request,
data.report_event_configuration.sg_descriptors[1]) -
PQI_REQUEST_HEADER_LENGTH, &request.header.iu_length);
- put_unaligned_le32(PQI_REPORT_EVENT_CONFIG_BUFFER_LENGTH,
- &request.data.report_event_configuration.buffer_length);
+ put_unaligned_le32(PQI_REPORT_EVENT_CONFIG_BUFFER_LENGTH, &request.data.report_event_configuration.buffer_length);
rc = pqi_map_single(ctrl_info->pci_dev,
request.data.report_event_configuration.sg_descriptors,
@@ -5049,9 +4849,7 @@ static int pqi_configure_events(struct pqi_ctrl_info *ctrl_info,
rc = pqi_submit_raid_request_synchronous(ctrl_info, &request.header, 0, NULL);
- pqi_pci_unmap(ctrl_info->pci_dev,
- request.data.report_event_configuration.sg_descriptors, 1,
- DMA_TO_DEVICE);
+ pqi_pci_unmap(ctrl_info->pci_dev, request.data.report_event_configuration.sg_descriptors, 1, DMA_TO_DEVICE);
out:
kfree(event_config);
@@ -5169,19 +4967,15 @@ static void pqi_calculate_io_resources(struct pqi_ctrl_info *ctrl_info)
u32 max_transfer_size;
u32 max_sg_entries;
- ctrl_info->scsi_ml_can_queue =
- ctrl_info->max_outstanding_requests - PQI_RESERVED_IO_SLOTS;
+ ctrl_info->scsi_ml_can_queue = ctrl_info->max_outstanding_requests - PQI_RESERVED_IO_SLOTS;
ctrl_info->max_io_slots = ctrl_info->max_outstanding_requests;
- ctrl_info->error_buffer_length =
- ctrl_info->max_io_slots * PQI_ERROR_BUFFER_ELEMENT_LENGTH;
+ ctrl_info->error_buffer_length = ctrl_info->max_io_slots * PQI_ERROR_BUFFER_ELEMENT_LENGTH;
if (reset_devices)
- max_transfer_size = min(ctrl_info->max_transfer_size,
- PQI_MAX_TRANSFER_SIZE_KDUMP);
+ max_transfer_size = min(ctrl_info->max_transfer_size, PQI_MAX_TRANSFER_SIZE_KDUMP);
else
- max_transfer_size = min(ctrl_info->max_transfer_size,
- PQI_MAX_TRANSFER_SIZE);
+ max_transfer_size = min(ctrl_info->max_transfer_size, PQI_MAX_TRANSFER_SIZE);
max_sg_entries = max_transfer_size / PAGE_SIZE;
@@ -5192,9 +4986,7 @@ static void pqi_calculate_io_resources(struct pqi_ctrl_info *ctrl_info)
max_transfer_size = (max_sg_entries - 1) * PAGE_SIZE;
- ctrl_info->sg_chain_buffer_length =
- (max_sg_entries * sizeof(struct pqi_sg_descriptor)) +
- PQI_EXTRA_SGL_MEMORY;
+ ctrl_info->sg_chain_buffer_length = (max_sg_entries * sizeof(struct pqi_sg_descriptor)) + PQI_EXTRA_SGL_MEMORY;
ctrl_info->sg_tablesize = max_sg_entries;
ctrl_info->max_sectors = max_transfer_size / 512;
}
@@ -5211,8 +5003,7 @@ static void pqi_calculate_queue_resources(struct pqi_ctrl_info *ctrl_info)
int num_cpus;
int max_queue_groups;
- max_queue_groups = min(ctrl_info->max_inbound_queues / 2,
- ctrl_info->max_outbound_queues - 1);
+ max_queue_groups = min(ctrl_info->max_inbound_queues / 2, ctrl_info->max_outbound_queues - 1);
max_queue_groups = min(max_queue_groups, PQI_MAX_QUEUE_GROUPS);
num_cpus = num_online_cpus();
@@ -5226,39 +5017,27 @@ static void pqi_calculate_queue_resources(struct pqi_ctrl_info *ctrl_info)
* Make sure that the max. inbound IU length is an even multiple
* of our inbound element length.
*/
- ctrl_info->max_inbound_iu_length =
- (ctrl_info->max_inbound_iu_length_per_firmware /
- PQI_OPERATIONAL_IQ_ELEMENT_LENGTH) *
+ ctrl_info->max_inbound_iu_length = (ctrl_info->max_inbound_iu_length_per_firmware / PQI_OPERATIONAL_IQ_ELEMENT_LENGTH) *
PQI_OPERATIONAL_IQ_ELEMENT_LENGTH;
- num_elements_per_iq =
- (ctrl_info->max_inbound_iu_length /
- PQI_OPERATIONAL_IQ_ELEMENT_LENGTH);
+ num_elements_per_iq = (ctrl_info->max_inbound_iu_length / PQI_OPERATIONAL_IQ_ELEMENT_LENGTH);
/* Add one because one element in each queue is unusable. */
num_elements_per_iq++;
- num_elements_per_iq = min(num_elements_per_iq,
- ctrl_info->max_elements_per_iq);
+ num_elements_per_iq = min(num_elements_per_iq, ctrl_info->max_elements_per_iq);
num_elements_per_oq = ((num_elements_per_iq - 1) * 2) + 1;
- num_elements_per_oq = min(num_elements_per_oq,
- ctrl_info->max_elements_per_oq);
+ num_elements_per_oq = min(num_elements_per_oq, ctrl_info->max_elements_per_oq);
ctrl_info->num_elements_per_iq = num_elements_per_iq;
ctrl_info->num_elements_per_oq = num_elements_per_oq;
- ctrl_info->max_sg_per_iu =
- ((ctrl_info->max_inbound_iu_length -
- PQI_OPERATIONAL_IQ_ELEMENT_LENGTH) /
- sizeof(struct pqi_sg_descriptor)) +
- PQI_MAX_EMBEDDED_SG_DESCRIPTORS;
+ ctrl_info->max_sg_per_iu = ((ctrl_info->max_inbound_iu_length - PQI_OPERATIONAL_IQ_ELEMENT_LENGTH) /
+ sizeof(struct pqi_sg_descriptor)) + PQI_MAX_EMBEDDED_SG_DESCRIPTORS;
- ctrl_info->max_sg_per_r56_iu =
- ((ctrl_info->max_inbound_iu_length -
- PQI_OPERATIONAL_IQ_ELEMENT_LENGTH) /
- sizeof(struct pqi_sg_descriptor)) +
- PQI_MAX_EMBEDDED_R56_SG_DESCRIPTORS;
+ ctrl_info->max_sg_per_r56_iu = ((ctrl_info->max_inbound_iu_length - PQI_OPERATIONAL_IQ_ELEMENT_LENGTH) /
+ sizeof(struct pqi_sg_descriptor)) + PQI_MAX_EMBEDDED_R56_SG_DESCRIPTORS;
}
static inline void pqi_set_sg_descriptor(struct pqi_sg_descriptor *sg_descriptor,
@@ -5293,10 +5072,8 @@ static unsigned int pqi_build_sg_list(struct pqi_sg_descriptor *sg_descriptor,
break;
sg_descriptor++;
if (i == max_sg_per_iu) {
- put_unaligned_le64((u64)io_request->sg_chain_buffer_dma_handle,
- &sg_descriptor->address);
- put_unaligned_le32((sg_count - num_sg_in_iu) * sizeof(*sg_descriptor),
- &sg_descriptor->length);
+ put_unaligned_le64((u64)io_request->sg_chain_buffer_dma_handle, &sg_descriptor->address);
+ put_unaligned_le32((sg_count - num_sg_in_iu) * sizeof(*sg_descriptor), &sg_descriptor->length);
put_unaligned_le32(CISS_SG_CHAIN, &sg_descriptor->flags);
*chained = true;
num_sg_in_iu++;
@@ -5325,8 +5102,7 @@ static int pqi_build_raid_sg_list(struct pqi_ctrl_info *ctrl_info,
if (sg_count < 0)
return sg_count;
- iu_length = offsetof(struct pqi_raid_path_request, sg_descriptors) -
- PQI_REQUEST_HEADER_LENGTH;
+ iu_length = offsetof(struct pqi_raid_path_request, sg_descriptors) - PQI_REQUEST_HEADER_LENGTH;
if (sg_count == 0)
goto out;
@@ -5361,8 +5137,7 @@ static int pqi_build_aio_r1_sg_list(struct pqi_ctrl_info *ctrl_info,
if (sg_count < 0)
return sg_count;
- iu_length = offsetof(struct pqi_aio_r1_path_request, sg_descriptors) -
- PQI_REQUEST_HEADER_LENGTH;
+ iu_length = offsetof(struct pqi_aio_r1_path_request, sg_descriptors) - PQI_REQUEST_HEADER_LENGTH;
num_sg_in_iu = 0;
if (sg_count == 0)
@@ -5399,8 +5174,7 @@ static int pqi_build_aio_r56_sg_list(struct pqi_ctrl_info *ctrl_info,
if (sg_count < 0)
return sg_count;
- iu_length = offsetof(struct pqi_aio_r56_path_request, sg_descriptors) -
- PQI_REQUEST_HEADER_LENGTH;
+ iu_length = offsetof(struct pqi_aio_r56_path_request, sg_descriptors) - PQI_REQUEST_HEADER_LENGTH;
num_sg_in_iu = 0;
if (sg_count != 0) {
@@ -5435,8 +5209,7 @@ static int pqi_build_aio_sg_list(struct pqi_ctrl_info *ctrl_info,
if (sg_count < 0)
return sg_count;
- iu_length = offsetof(struct pqi_aio_path_request, sg_descriptors) -
- PQI_REQUEST_HEADER_LENGTH;
+ iu_length = offsetof(struct pqi_aio_path_request, sg_descriptors) - PQI_REQUEST_HEADER_LENGTH;
num_sg_in_iu = 0;
if (sg_count == 0)
@@ -5911,12 +5684,10 @@ static bool pqi_is_parity_write_stream(struct pqi_ctrl_info *ctrl_info,
*/
if ((pqi_stream_data->next_lba &&
rmd.first_block >= pqi_stream_data->next_lba) &&
- rmd.first_block <= pqi_stream_data->next_lba +
- rmd.block_cnt) {
- pqi_stream_data->next_lba = rmd.first_block +
- rmd.block_cnt;
- pqi_stream_data->last_accessed = jiffies;
- return true;
+ rmd.first_block <= pqi_stream_data->next_lba + rmd.block_cnt) {
+ pqi_stream_data->next_lba = rmd.first_block + rmd.block_cnt;
+ pqi_stream_data->last_accessed = jiffies;
+ return true;
}
/* unused entry */
@@ -6112,13 +5883,9 @@ static void pqi_fail_io_queued_for_device(struct pqi_ctrl_info *ctrl_info,
queue_group = &ctrl_info->queue_groups[i];
for (path = 0; path < 2; path++) {
- spin_lock_irqsave(
- &queue_group->submit_lock[path], flags);
-
- list_for_each_entry_safe(io_request, next,
- &queue_group->request_list[path],
- request_list_entry) {
+ spin_lock_irqsave(&queue_group->submit_lock[path], flags);
+ list_for_each_entry_safe(io_request, next, &queue_group->request_list[path], request_list_entry) {
scmd = io_request->scmd;
if (!scmd)
continue;
@@ -6134,8 +5901,7 @@ static void pqi_fail_io_queued_for_device(struct pqi_ctrl_info *ctrl_info,
pqi_scsi_done(scmd);
}
- spin_unlock_irqrestore(
- &queue_group->submit_lock[path], flags);
+ spin_unlock_irqrestore(&queue_group->submit_lock[path], flags);
}
}
}
@@ -6241,19 +6007,16 @@ static int pqi_lun_reset(struct pqi_ctrl_info *ctrl_info, struct scsi_cmnd *scmd
memset(request, 0, sizeof(*request));
request->header.iu_type = PQI_REQUEST_IU_TASK_MANAGEMENT;
- put_unaligned_le16(sizeof(*request) - PQI_REQUEST_HEADER_LENGTH,
- &request->header.iu_length);
+ put_unaligned_le16(sizeof(*request) - PQI_REQUEST_HEADER_LENGTH, &request->header.iu_length);
put_unaligned_le16(io_request->index, &request->request_id);
- memcpy(request->lun_number, device->scsi3addr,
- sizeof(request->lun_number));
+ memcpy(request->lun_number, device->scsi3addr, sizeof(request->lun_number));
if (!pqi_is_logical_device(device) && ctrl_info->multi_lun_device_supported)
request->ml_device_lun_number = (u8)scmd->device->lun;
request->task_management_function = SOP_TASK_MANAGEMENT_LUN_RESET;
if (ctrl_info->tmf_iu_timeout_supported)
put_unaligned_le16(PQI_LUN_RESET_FIRMWARE_TIMEOUT_SECS, &request->timeout);
- pqi_start_io(ctrl_info, &ctrl_info->queue_groups[PQI_DEFAULT_QUEUE_GROUP], RAID_PATH,
- io_request);
+ pqi_start_io(ctrl_info, &ctrl_info->queue_groups[PQI_DEFAULT_QUEUE_GROUP], RAID_PATH, io_request);
rc = pqi_wait_for_lun_reset_completion(ctrl_info, device, (u8)scmd->device->lun, &wait);
if (rc == 0)
@@ -6384,8 +6147,7 @@ static int pqi_slave_alloc(struct scsi_device *sdev)
device->sdev = sdev;
if (device->queue_depth) {
device->advertised_queue_depth = device->queue_depth;
- scsi_change_queue_depth(sdev,
- device->advertised_queue_depth);
+ scsi_change_queue_depth(sdev, device->advertised_queue_depth);
}
if (pqi_is_logical_device(device)) {
pqi_disable_write_same(sdev);
@@ -6561,11 +6323,9 @@ static void pqi_error_info_to_ciss(struct pqi_raid_error_info *pqi_error_info,
break;
}
- sense_data_length =
- get_unaligned_le16(&pqi_error_info->sense_data_length);
+ sense_data_length = get_unaligned_le16(&pqi_error_info->sense_data_length);
if (sense_data_length == 0)
- sense_data_length =
- get_unaligned_le16(&pqi_error_info->response_data_length);
+ sense_data_length = get_unaligned_le16(&pqi_error_info->response_data_length);
if (sense_data_length)
if (sense_data_length > sizeof(pqi_error_info->data))
sense_data_length = sizeof(pqi_error_info->data);
@@ -6632,10 +6392,8 @@ static int pqi_passthru_ioctl(struct pqi_ctrl_info *ctrl_info, void __user *arg)
memset(&request, 0, sizeof(request));
request.header.iu_type = PQI_REQUEST_IU_RAID_PATH_IO;
- iu_length = offsetof(struct pqi_raid_path_request, sg_descriptors) -
- PQI_REQUEST_HEADER_LENGTH;
- memcpy(request.lun_number, iocommand.LUN_info.LunAddrBytes,
- sizeof(request.lun_number));
+ iu_length = offsetof(struct pqi_raid_path_request, sg_descriptors) - PQI_REQUEST_HEADER_LENGTH;
+ memcpy(request.lun_number, iocommand.LUN_info.LunAddrBytes, sizeof(request.lun_number));
memcpy(request.cdb, iocommand.Request.CDB, iocommand.Request.CDBLen);
request.additional_cdb_bytes_usage = SOP_ADDITIONAL_CDB_BYTES_0;
@@ -6677,24 +6435,19 @@ static int pqi_passthru_ioctl(struct pqi_ctrl_info *ctrl_info, void __user *arg)
PQI_SYNC_FLAGS_INTERRUPTABLE, &pqi_error_info);
if (iocommand.buf_size > 0)
- pqi_pci_unmap(ctrl_info->pci_dev, request.sg_descriptors, 1,
- DMA_BIDIRECTIONAL);
+ pqi_pci_unmap(ctrl_info->pci_dev, request.sg_descriptors, 1, DMA_BIDIRECTIONAL);
memset(&iocommand.error_info, 0, sizeof(iocommand.error_info));
if (rc == 0) {
pqi_error_info_to_ciss(&pqi_error_info, &ciss_error_info);
iocommand.error_info.ScsiStatus = ciss_error_info.scsi_status;
- iocommand.error_info.CommandStatus =
- ciss_error_info.command_status;
+ iocommand.error_info.CommandStatus = ciss_error_info.command_status;
sense_data_length = ciss_error_info.sense_data_length;
if (sense_data_length) {
- if (sense_data_length >
- sizeof(iocommand.error_info.SenseInfo))
- sense_data_length =
- sizeof(iocommand.error_info.SenseInfo);
- memcpy(iocommand.error_info.SenseInfo,
- pqi_error_info.data, sense_data_length);
+ if (sense_data_length > sizeof(iocommand.error_info.SenseInfo))
+ sense_data_length = sizeof(iocommand.error_info.SenseInfo);
+ memcpy(iocommand.error_info.SenseInfo, pqi_error_info.data, sense_data_length);
iocommand.error_info.SenseLen = sense_data_length;
}
}
@@ -7085,38 +6838,30 @@ static ssize_t pqi_path_info_show(struct device *dev,
device->lun,
scsi_device_type(device->devtype));
- if (device->devtype == TYPE_RAID ||
- pqi_is_logical_device(device))
+ if (device->devtype == TYPE_RAID || pqi_is_logical_device(device))
goto end_buffer;
- memcpy(&phys_connector, &device->phys_connector[i],
- sizeof(phys_connector));
+ memcpy(&phys_connector, &device->phys_connector[i], sizeof(phys_connector));
if (phys_connector[0] < '0')
phys_connector[0] = '0';
if (phys_connector[1] < '0')
phys_connector[1] = '0';
output_len += scnprintf(buf + output_len,
- PAGE_SIZE - output_len,
- "PORT: %.2s ", phys_connector);
+ PAGE_SIZE - output_len, "PORT: %.2s ", phys_connector);
box = device->box[i];
if (box != 0 && box != 0xFF)
output_len += scnprintf(buf + output_len,
- PAGE_SIZE - output_len,
- "BOX: %hhu ", box);
+ PAGE_SIZE - output_len, "BOX: %hhu ", box);
- if ((device->devtype == TYPE_DISK ||
- device->devtype == TYPE_ZBC) &&
- pqi_expose_device(device))
+ if ((device->devtype == TYPE_DISK || device->devtype == TYPE_ZBC) && pqi_expose_device(device))
output_len += scnprintf(buf + output_len,
- PAGE_SIZE - output_len,
- "BAY: %hhu ", bay);
+ PAGE_SIZE - output_len, "BAY: %hhu ", bay);
end_buffer:
output_len += scnprintf(buf + output_len,
- PAGE_SIZE - output_len,
- "%s\n", active);
+ PAGE_SIZE - output_len, "%s\n", active);
}
spin_unlock_irqrestore(&ctrl_info->scsi_device_list_lock, flags);
@@ -7297,7 +7042,6 @@ static ssize_t pqi_sas_ncq_prio_enable_store(struct device *dev,
spin_lock_irqsave(&ctrl_info->scsi_device_list_lock, flags);
device = sdev->hostdata;
-
if (!device) {
spin_unlock_irqrestore(&ctrl_info->scsi_device_list_lock, flags);
return -ENODEV;
@@ -7335,7 +7079,7 @@ static DEVICE_ATTR(ssd_smart_path_enabled, 0444, pqi_ssd_smart_path_enabled_show
static DEVICE_ATTR(raid_level, 0444, pqi_raid_level_show, NULL);
static DEVICE_ATTR(raid_bypass_cnt, 0444, pqi_raid_bypass_cnt_show, NULL);
static DEVICE_ATTR(sas_ncq_prio_enable, 0644,
- pqi_sas_ncq_prio_enable_show, pqi_sas_ncq_prio_enable_store);
+ pqi_sas_ncq_prio_enable_show, pqi_sas_ncq_prio_enable_store);
static DEVICE_ATTR(numa_node, 0444, pqi_numa_node_show, NULL);
static struct attribute *pqi_sdev_attrs[] = {
@@ -7510,8 +7254,7 @@ static int pqi_get_ctrl_serial_number(struct pqi_ctrl_info *ctrl_info)
if (rc)
goto out;
- memcpy(ctrl_info->serial_number, sense_info->ctrl_serial_number,
- sizeof(sense_info->ctrl_serial_number));
+ memcpy(ctrl_info->serial_number, sense_info->ctrl_serial_number, sizeof(sense_info->ctrl_serial_number));
ctrl_info->serial_number[sizeof(sense_info->ctrl_serial_number)] = '\0';
out:
@@ -7542,8 +7285,7 @@ static int pqi_get_ctrl_product_details(struct pqi_ctrl_info *ctrl_info)
memcpy(ctrl_info->firmware_version,
identify->firmware_version_short,
sizeof(identify->firmware_version_short));
- ctrl_info->firmware_version
- [sizeof(identify->firmware_version_short)] = '\0';
+ ctrl_info->firmware_version[sizeof(identify->firmware_version_short)] = '\0';
snprintf(ctrl_info->firmware_version +
strlen(ctrl_info->firmware_version),
sizeof(ctrl_info->firmware_version) -
@@ -7552,16 +7294,13 @@ static int pqi_get_ctrl_product_details(struct pqi_ctrl_info *ctrl_info)
get_unaligned_le16(&identify->firmware_build_number));
}
- memcpy(ctrl_info->model, identify->product_id,
- sizeof(identify->product_id));
+ memcpy(ctrl_info->model, identify->product_id, sizeof(identify->product_id));
ctrl_info->model[sizeof(identify->product_id)] = '\0';
- memcpy(ctrl_info->vendor, identify->vendor_id,
- sizeof(identify->vendor_id));
+ memcpy(ctrl_info->vendor, identify->vendor_id, sizeof(identify->vendor_id));
ctrl_info->vendor[sizeof(identify->vendor_id)] = '\0';
- dev_info(&ctrl_info->pci_dev->dev,
- "Firmware version: %s\n", ctrl_info->firmware_version);
+ dev_info(&ctrl_info->pci_dev->dev, "Firmware version: %s\n", ctrl_info->firmware_version);
out:
kfree(identify);
@@ -7631,14 +7370,10 @@ static int pqi_config_table_update(struct pqi_ctrl_info *ctrl_info,
memset(&request, 0, sizeof(request));
request.header.iu_type = PQI_REQUEST_IU_VENDOR_GENERAL;
- put_unaligned_le16(sizeof(request) - PQI_REQUEST_HEADER_LENGTH,
- &request.header.iu_length);
- put_unaligned_le16(PQI_VENDOR_GENERAL_CONFIG_TABLE_UPDATE,
- &request.function_code);
- put_unaligned_le16(first_section,
- &request.data.config_table_update.first_section);
- put_unaligned_le16(last_section,
- &request.data.config_table_update.last_section);
+ put_unaligned_le16(sizeof(request) - PQI_REQUEST_HEADER_LENGTH, &request.header.iu_length);
+ put_unaligned_le16(PQI_VENDOR_GENERAL_CONFIG_TABLE_UPDATE, &request.function_code);
+ put_unaligned_le16(first_section, &request.data.config_table_update.first_section);
+ put_unaligned_le16(last_section, &request.data.config_table_update.last_section);
return pqi_submit_raid_request_synchronous(ctrl_info, &request.header, 0, NULL);
}
@@ -7858,8 +7593,7 @@ static void pqi_process_firmware_features(
firmware_features = section_info->section;
firmware_features_iomem_addr = section_info->section_iomem_addr;
- for (i = 0, num_features_supported = 0;
- i < ARRAY_SIZE(pqi_firmware_features); i++) {
+ for (i = 0, num_features_supported = 0; i < ARRAY_SIZE(pqi_firmware_features); i++) {
if (pqi_is_firmware_feature_supported(firmware_features,
pqi_firmware_features[i].feature_bit)) {
pqi_firmware_features[i].supported = true;
@@ -7880,16 +7614,14 @@ static void pqi_process_firmware_features(
pqi_firmware_features[i].feature_bit);
}
- rc = pqi_enable_firmware_features(ctrl_info, firmware_features,
- firmware_features_iomem_addr);
+ rc = pqi_enable_firmware_features(ctrl_info, firmware_features, firmware_features_iomem_addr);
if (rc) {
dev_err(&ctrl_info->pci_dev->dev,
"failed to enable firmware features in PQI configuration table\n");
for (i = 0; i < ARRAY_SIZE(pqi_firmware_features); i++) {
if (!pqi_firmware_features[i].supported)
continue;
- pqi_firmware_feature_update(ctrl_info,
- &pqi_firmware_features[i]);
+ pqi_firmware_feature_update(ctrl_info, &pqi_firmware_features[i]);
}
return;
}
@@ -7902,8 +7634,7 @@ static void pqi_process_firmware_features(
pqi_firmware_features[i].feature_bit)) {
pqi_firmware_features[i].enabled = true;
}
- pqi_firmware_feature_update(ctrl_info,
- &pqi_firmware_features[i]);
+ pqi_firmware_feature_update(ctrl_info, &pqi_firmware_features[i]);
}
}
@@ -7996,18 +7727,12 @@ static int pqi_process_config_table(struct pqi_ctrl_info *ctrl_info)
dev_warn(&ctrl_info->pci_dev->dev,
"heartbeat disabled by module parameter\n");
else
- ctrl_info->heartbeat_counter =
- table_iomem_addr +
- section_offset +
- offsetof(struct pqi_config_table_heartbeat,
- heartbeat_counter);
+ ctrl_info->heartbeat_counter = table_iomem_addr + section_offset +
+ offsetof(struct pqi_config_table_heartbeat, heartbeat_counter);
break;
case PQI_CONFIG_TABLE_SECTION_SOFT_RESET:
- ctrl_info->soft_reset_status =
- table_iomem_addr +
- section_offset +
- offsetof(struct pqi_config_table_soft_reset,
- soft_reset_status);
+ ctrl_info->soft_reset_status = table_iomem_addr + section_offset +
+ offsetof(struct pqi_config_table_soft_reset, soft_reset_status);
break;
}
@@ -8141,15 +7866,11 @@ static int pqi_ctrl_init(struct pqi_ctrl_info *ctrl_info)
ctrl_info->product_revision = (u8)(product_id >> 8);
if (reset_devices) {
- if (ctrl_info->max_outstanding_requests >
- PQI_MAX_OUTSTANDING_REQUESTS_KDUMP)
- ctrl_info->max_outstanding_requests =
- PQI_MAX_OUTSTANDING_REQUESTS_KDUMP;
+ if (ctrl_info->max_outstanding_requests > PQI_MAX_OUTSTANDING_REQUESTS_KDUMP)
+ ctrl_info->max_outstanding_requests = PQI_MAX_OUTSTANDING_REQUESTS_KDUMP;
} else {
- if (ctrl_info->max_outstanding_requests >
- PQI_MAX_OUTSTANDING_REQUESTS)
- ctrl_info->max_outstanding_requests =
- PQI_MAX_OUTSTANDING_REQUESTS;
+ if (ctrl_info->max_outstanding_requests > PQI_MAX_OUTSTANDING_REQUESTS)
+ ctrl_info->max_outstanding_requests = PQI_MAX_OUTSTANDING_REQUESTS;
}
pqi_calculate_io_resources(ctrl_info);
@@ -8217,8 +7938,7 @@ static int pqi_ctrl_init(struct pqi_ctrl_info *ctrl_info)
return rc;
if (ctrl_info->num_msix_vectors_enabled < ctrl_info->num_queue_groups) {
- ctrl_info->max_msix_vectors =
- ctrl_info->num_msix_vectors_enabled;
+ ctrl_info->max_msix_vectors = ctrl_info->num_msix_vectors_enabled;
pqi_calculate_queue_resources(ctrl_info);
}
@@ -8260,8 +7980,7 @@ static int pqi_ctrl_init(struct pqi_ctrl_info *ctrl_info)
"error obtaining advanced RAID bypass configuration\n");
return rc;
}
- ctrl_info->ciss_report_log_flags |=
- CISS_REPORT_LOG_FLAG_DRIVE_TYPE_MIX;
+ ctrl_info->ciss_report_log_flags |= CISS_REPORT_LOG_FLAG_DRIVE_TYPE_MIX;
}
rc = pqi_enable_events(ctrl_info);
@@ -8428,8 +8147,7 @@ static int pqi_ctrl_init_resume(struct pqi_ctrl_info *ctrl_info)
"error obtaining advanced RAID bypass configuration\n");
return rc;
}
- ctrl_info->ciss_report_log_flags |=
- CISS_REPORT_LOG_FLAG_DRIVE_TYPE_MIX;
+ ctrl_info->ciss_report_log_flags |= CISS_REPORT_LOG_FLAG_DRIVE_TYPE_MIX;
}
rc = pqi_enable_events(ctrl_info);
@@ -8593,10 +8311,8 @@ static struct pqi_ctrl_info *pqi_alloc_ctrl_info(int numa_node)
ctrl_info->max_msix_vectors = PQI_MAX_MSIX_VECTORS;
ctrl_info->ciss_report_log_flags = CISS_REPORT_LOG_FLAG_UNIQUE_LUN_ID;
- ctrl_info->max_transfer_encrypted_sas_sata =
- PQI_DEFAULT_MAX_TRANSFER_ENCRYPTED_SAS_SATA;
- ctrl_info->max_transfer_encrypted_nvme =
- PQI_DEFAULT_MAX_TRANSFER_ENCRYPTED_NVME;
+ ctrl_info->max_transfer_encrypted_sas_sata = PQI_DEFAULT_MAX_TRANSFER_ENCRYPTED_SAS_SATA;
+ ctrl_info->max_transfer_encrypted_nvme = PQI_DEFAULT_MAX_TRANSFER_ENCRYPTED_NVME;
ctrl_info->max_write_raid_5_6 = PQI_DEFAULT_MAX_WRITE_RAID_5_6;
ctrl_info->max_write_raid_1_10_2drive = ~0;
ctrl_info->max_write_raid_1_10_3drive = ~0;
@@ -8756,8 +8472,7 @@ static void pqi_ofa_setup_host_buffer(struct pqi_ctrl_info *ctrl_info)
dev = &ctrl_info->pci_dev->dev;
- ofap = dma_alloc_coherent(dev, sizeof(*ofap),
- &ctrl_info->pqi_ofa_mem_dma_handle, GFP_KERNEL);
+ ofap = dma_alloc_coherent(dev, sizeof(*ofap), &ctrl_info->pqi_ofa_mem_dma_handle, GFP_KERNEL);
if (!ofap)
return;
@@ -8793,8 +8508,7 @@ static void pqi_ofa_free_host_buffer(struct pqi_ctrl_info *ctrl_info)
goto out;
mem_descriptor = ofap->sg_descriptor;
- num_memory_descriptors =
- get_unaligned_le16(&ofap->num_memory_descriptors);
+ num_memory_descriptors = get_unaligned_le16(&ofap->num_memory_descriptors);
for (i = 0; i < num_memory_descriptors; i++) {
dma_free_coherent(dev,
@@ -8805,8 +8519,7 @@ static void pqi_ofa_free_host_buffer(struct pqi_ctrl_info *ctrl_info)
kfree(ctrl_info->pqi_ofa_chunk_virt_addr);
out:
- dma_free_coherent(dev, sizeof(*ofap), ofap,
- ctrl_info->pqi_ofa_mem_dma_handle);
+ dma_free_coherent(dev, sizeof(*ofap), ofap, ctrl_info->pqi_ofa_mem_dma_handle);
ctrl_info->pqi_ofa_mem_virt_addr = NULL;
}
@@ -8819,10 +8532,8 @@ static int pqi_ofa_host_memory_update(struct pqi_ctrl_info *ctrl_info)
memset(&request, 0, sizeof(request));
request.header.iu_type = PQI_REQUEST_IU_VENDOR_GENERAL;
- put_unaligned_le16(sizeof(request) - PQI_REQUEST_HEADER_LENGTH,
- &request.header.iu_length);
- put_unaligned_le16(PQI_VENDOR_GENERAL_HOST_MEMORY_UPDATE,
- &request.function_code);
+ put_unaligned_le16(sizeof(request) - PQI_REQUEST_HEADER_LENGTH, &request.header.iu_length);
+ put_unaligned_le16(PQI_VENDOR_GENERAL_HOST_MEMORY_UPDATE, &request.function_code);
ofap = ctrl_info->pqi_ofa_mem_virt_addr;
@@ -8875,12 +8586,10 @@ static void pqi_fail_all_outstanding_requests(struct pqi_ctrl_info *ctrl_info)
}
} else {
io_request->status = -ENXIO;
- io_request->error_info =
- &pqi_ctrl_offline_raid_error_info;
+ io_request->error_info = &pqi_ctrl_offline_raid_error_info;
}
- io_request->io_complete_callback(io_request,
- io_request->context);
+ io_request->io_complete_callback(io_request, io_request->context);
}
}
@@ -9076,8 +8785,7 @@ static void pqi_process_lockup_action_param(void)
return;
for (i = 0; i < ARRAY_SIZE(pqi_lockup_actions); i++) {
- if (strcmp(pqi_lockup_action_param,
- pqi_lockup_actions[i].name) == 0) {
+ if (strcmp(pqi_lockup_action_param, pqi_lockup_actions[i].name) == 0) {
pqi_lockup_action = pqi_lockup_actions[i].action;
return;
}
@@ -9992,63 +9700,63 @@ static const struct pci_device_id pqi_pci_id_table[] = {
},
{
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
- 0x1014, 0x0718)
+ 0x1014, 0x0718)
},
{
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
- 0x1e93, 0x1000)
+ 0x1e93, 0x1000)
},
{
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
- 0x1e93, 0x1001)
+ 0x1e93, 0x1001)
},
{
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
- 0x1e93, 0x1002)
+ 0x1e93, 0x1002)
},
{
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
- 0x1e93, 0x1005)
+ 0x1e93, 0x1005)
},
{
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
- 0x1f51, 0x1001)
+ 0x1f51, 0x1001)
},
{
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
- 0x1f51, 0x1002)
+ 0x1f51, 0x1002)
},
{
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
- 0x1f51, 0x1003)
+ 0x1f51, 0x1003)
},
{
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
- 0x1f51, 0x1004)
+ 0x1f51, 0x1004)
},
{
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
- 0x1f51, 0x1005)
+ 0x1f51, 0x1005)
},
{
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
- 0x1f51, 0x1006)
+ 0x1f51, 0x1006)
},
{
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
- 0x1f51, 0x1007)
+ 0x1f51, 0x1007)
},
{
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
- 0x1f51, 0x1008)
+ 0x1f51, 0x1008)
},
{
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
- 0x1f51, 0x1009)
+ 0x1f51, 0x1009)
},
{
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
- 0x1f51, 0x100a)
+ 0x1f51, 0x100a)
},
{
PCI_DEVICE_SUB(PCI_VENDOR_ID_ADAPTEC2, 0x028f,
@@ -10104,503 +9812,277 @@ module_exit(pqi_cleanup);
static void pqi_verify_structures(void)
{
- BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers,
- sis_host_to_ctrl_doorbell) != 0x20);
- BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers,
- sis_interrupt_mask) != 0x34);
- BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers,
- sis_ctrl_to_host_doorbell) != 0x9c);
- BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers,
- sis_ctrl_to_host_doorbell_clear) != 0xa0);
- BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers,
- sis_driver_scratch) != 0xb0);
- BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers,
- sis_product_identifier) != 0xb4);
- BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers,
- sis_firmware_status) != 0xbc);
- BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers,
- sis_ctrl_shutdown_reason_code) != 0xcc);
- BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers,
- sis_mailbox) != 0x1000);
- BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers,
- pqi_registers) != 0x4000);
-
- BUILD_BUG_ON(offsetof(struct pqi_iu_header,
- iu_type) != 0x0);
- BUILD_BUG_ON(offsetof(struct pqi_iu_header,
- iu_length) != 0x2);
- BUILD_BUG_ON(offsetof(struct pqi_iu_header,
- response_queue_id) != 0x4);
- BUILD_BUG_ON(offsetof(struct pqi_iu_header,
- driver_flags) != 0x6);
+ BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers, sis_host_to_ctrl_doorbell) != 0x20);
+ BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers, sis_interrupt_mask) != 0x34);
+ BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers, sis_ctrl_to_host_doorbell) != 0x9c);
+ BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers, sis_ctrl_to_host_doorbell_clear) != 0xa0);
+ BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers, sis_driver_scratch) != 0xb0);
+ BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers, sis_product_identifier) != 0xb4);
+ BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers, sis_firmware_status) != 0xbc);
+ BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers, sis_ctrl_shutdown_reason_code) != 0xcc);
+ BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers, sis_mailbox) != 0x1000);
+ BUILD_BUG_ON(offsetof(struct pqi_ctrl_registers, pqi_registers) != 0x4000);
+
+ BUILD_BUG_ON(offsetof(struct pqi_iu_header, iu_type) != 0x0);
+ BUILD_BUG_ON(offsetof(struct pqi_iu_header, iu_length) != 0x2);
+ BUILD_BUG_ON(offsetof(struct pqi_iu_header, response_queue_id) != 0x4);
+ BUILD_BUG_ON(offsetof(struct pqi_iu_header, driver_flags) != 0x6);
BUILD_BUG_ON(sizeof(struct pqi_iu_header) != 0x8);
- BUILD_BUG_ON(offsetof(struct pqi_aio_error_info,
- status) != 0x0);
- BUILD_BUG_ON(offsetof(struct pqi_aio_error_info,
- service_response) != 0x1);
- BUILD_BUG_ON(offsetof(struct pqi_aio_error_info,
- data_present) != 0x2);
- BUILD_BUG_ON(offsetof(struct pqi_aio_error_info,
- reserved) != 0x3);
- BUILD_BUG_ON(offsetof(struct pqi_aio_error_info,
- residual_count) != 0x4);
- BUILD_BUG_ON(offsetof(struct pqi_aio_error_info,
- data_length) != 0x8);
- BUILD_BUG_ON(offsetof(struct pqi_aio_error_info,
- reserved1) != 0xa);
- BUILD_BUG_ON(offsetof(struct pqi_aio_error_info,
- data) != 0xc);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_error_info, status) != 0x0);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_error_info, service_response) != 0x1);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_error_info, data_present) != 0x2);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_error_info, reserved) != 0x3);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_error_info, residual_count) != 0x4);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_error_info, data_length) != 0x8);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_error_info, reserved1) != 0xa);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_error_info, data) != 0xc);
BUILD_BUG_ON(sizeof(struct pqi_aio_error_info) != 0x10c);
- BUILD_BUG_ON(offsetof(struct pqi_raid_error_info,
- data_in_result) != 0x0);
- BUILD_BUG_ON(offsetof(struct pqi_raid_error_info,
- data_out_result) != 0x1);
- BUILD_BUG_ON(offsetof(struct pqi_raid_error_info,
- reserved) != 0x2);
- BUILD_BUG_ON(offsetof(struct pqi_raid_error_info,
- status) != 0x5);
- BUILD_BUG_ON(offsetof(struct pqi_raid_error_info,
- status_qualifier) != 0x6);
- BUILD_BUG_ON(offsetof(struct pqi_raid_error_info,
- sense_data_length) != 0x8);
- BUILD_BUG_ON(offsetof(struct pqi_raid_error_info,
- response_data_length) != 0xa);
- BUILD_BUG_ON(offsetof(struct pqi_raid_error_info,
- data_in_transferred) != 0xc);
- BUILD_BUG_ON(offsetof(struct pqi_raid_error_info,
- data_out_transferred) != 0x10);
- BUILD_BUG_ON(offsetof(struct pqi_raid_error_info,
- data) != 0x14);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_error_info, data_in_result) != 0x0);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_error_info, data_out_result) != 0x1);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_error_info, reserved) != 0x2);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_error_info, status) != 0x5);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_error_info, status_qualifier) != 0x6);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_error_info, sense_data_length) != 0x8);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_error_info, response_data_length) != 0xa);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_error_info, data_in_transferred) != 0xc);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_error_info, data_out_transferred) != 0x10);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_error_info, data) != 0x14);
BUILD_BUG_ON(sizeof(struct pqi_raid_error_info) != 0x114);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- signature) != 0x0);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- function_and_status_code) != 0x8);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- max_admin_iq_elements) != 0x10);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- max_admin_oq_elements) != 0x11);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- admin_iq_element_length) != 0x12);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- admin_oq_element_length) != 0x13);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- max_reset_timeout) != 0x14);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- legacy_intx_status) != 0x18);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- legacy_intx_mask_set) != 0x1c);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- legacy_intx_mask_clear) != 0x20);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- device_status) != 0x40);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- admin_iq_pi_offset) != 0x48);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- admin_oq_ci_offset) != 0x50);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- admin_iq_element_array_addr) != 0x58);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- admin_oq_element_array_addr) != 0x60);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- admin_iq_ci_addr) != 0x68);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- admin_oq_pi_addr) != 0x70);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- admin_iq_num_elements) != 0x78);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- admin_oq_num_elements) != 0x79);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- admin_queue_int_msg_num) != 0x7a);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- device_error) != 0x80);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- error_details) != 0x88);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- device_reset) != 0x90);
- BUILD_BUG_ON(offsetof(struct pqi_device_registers,
- power_action) != 0x94);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, signature) != 0x0);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, function_and_status_code) != 0x8);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, max_admin_iq_elements) != 0x10);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, max_admin_oq_elements) != 0x11);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, admin_iq_element_length) != 0x12);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, admin_oq_element_length) != 0x13);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, max_reset_timeout) != 0x14);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, legacy_intx_status) != 0x18);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, legacy_intx_mask_set) != 0x1c);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, legacy_intx_mask_clear) != 0x20);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, device_status) != 0x40);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, admin_iq_pi_offset) != 0x48);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, admin_oq_ci_offset) != 0x50);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, admin_iq_element_array_addr) != 0x58);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, admin_oq_element_array_addr) != 0x60);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, admin_iq_ci_addr) != 0x68);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, admin_oq_pi_addr) != 0x70);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, admin_iq_num_elements) != 0x78);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, admin_oq_num_elements) != 0x79);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, admin_queue_int_msg_num) != 0x7a);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, device_error) != 0x80);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, error_details) != 0x88);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, device_reset) != 0x90);
+ BUILD_BUG_ON(offsetof(struct pqi_device_registers, power_action) != 0x94);
BUILD_BUG_ON(sizeof(struct pqi_device_registers) != 0x100);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- header.iu_type) != 0);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- header.iu_length) != 2);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- header.driver_flags) != 6);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- request_id) != 8);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- function_code) != 10);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.report_device_capability.buffer_length) != 44);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.report_device_capability.sg_descriptor) != 48);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.create_operational_iq.queue_id) != 12);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.create_operational_iq.element_array_addr) != 16);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.create_operational_iq.ci_addr) != 24);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.create_operational_iq.num_elements) != 32);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.create_operational_iq.element_length) != 34);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.create_operational_iq.queue_protocol) != 36);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.create_operational_oq.queue_id) != 12);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.create_operational_oq.element_array_addr) != 16);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.create_operational_oq.pi_addr) != 24);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.create_operational_oq.num_elements) != 32);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.create_operational_oq.element_length) != 34);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.create_operational_oq.queue_protocol) != 36);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.create_operational_oq.int_msg_num) != 40);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.create_operational_oq.coalescing_count) != 42);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.create_operational_oq.min_coalescing_time) != 44);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.create_operational_oq.max_coalescing_time) != 48);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_request,
- data.delete_operational_queue.queue_id) != 12);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, header.iu_type) != 0);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, header.iu_length) != 2);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, header.driver_flags) != 6);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, request_id) != 8);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, function_code) != 10);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.report_device_capability.buffer_length) != 44);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.report_device_capability.sg_descriptor) != 48);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.create_operational_iq.queue_id) != 12);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.create_operational_iq.element_array_addr) != 16);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.create_operational_iq.ci_addr) != 24);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.create_operational_iq.num_elements) != 32);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.create_operational_iq.element_length) != 34);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.create_operational_iq.queue_protocol) != 36);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.create_operational_oq.queue_id) != 12);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.create_operational_oq.element_array_addr) != 16);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.create_operational_oq.pi_addr) != 24);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.create_operational_oq.num_elements) != 32);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.create_operational_oq.element_length) != 34);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.create_operational_oq.queue_protocol) != 36);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.create_operational_oq.int_msg_num) != 40);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.create_operational_oq.coalescing_count) != 42);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.create_operational_oq.min_coalescing_time) != 44);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.create_operational_oq.max_coalescing_time) != 48);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_request, data.delete_operational_queue.queue_id) != 12);
BUILD_BUG_ON(sizeof(struct pqi_general_admin_request) != 64);
- BUILD_BUG_ON(sizeof_field(struct pqi_general_admin_request,
- data.create_operational_iq) != 64 - 11);
- BUILD_BUG_ON(sizeof_field(struct pqi_general_admin_request,
- data.create_operational_oq) != 64 - 11);
- BUILD_BUG_ON(sizeof_field(struct pqi_general_admin_request,
- data.delete_operational_queue) != 64 - 11);
-
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_response,
- header.iu_type) != 0);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_response,
- header.iu_length) != 2);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_response,
- header.driver_flags) != 6);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_response,
- request_id) != 8);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_response,
- function_code) != 10);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_response,
- status) != 11);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_response,
- data.create_operational_iq.status_descriptor) != 12);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_response,
- data.create_operational_iq.iq_pi_offset) != 16);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_response,
- data.create_operational_oq.status_descriptor) != 12);
- BUILD_BUG_ON(offsetof(struct pqi_general_admin_response,
- data.create_operational_oq.oq_ci_offset) != 16);
+ BUILD_BUG_ON(sizeof_field(struct pqi_general_admin_request, data.create_operational_iq) != 64 - 11);
+ BUILD_BUG_ON(sizeof_field(struct pqi_general_admin_request, data.create_operational_oq) != 64 - 11);
+ BUILD_BUG_ON(sizeof_field(struct pqi_general_admin_request, data.delete_operational_queue) != 64 - 11);
+
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_response, header.iu_type) != 0);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_response, header.iu_length) != 2);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_response, header.driver_flags) != 6);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_response, request_id) != 8);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_response, function_code) != 10);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_response, status) != 11);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_response, data.create_operational_iq.status_descriptor) != 12);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_response, data.create_operational_iq.iq_pi_offset) != 16);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_response, data.create_operational_oq.status_descriptor) != 12);
+ BUILD_BUG_ON(offsetof(struct pqi_general_admin_response, data.create_operational_oq.oq_ci_offset) != 16);
BUILD_BUG_ON(sizeof(struct pqi_general_admin_response) != 64);
- BUILD_BUG_ON(offsetof(struct pqi_raid_path_request,
- header.iu_type) != 0);
- BUILD_BUG_ON(offsetof(struct pqi_raid_path_request,
- header.iu_length) != 2);
- BUILD_BUG_ON(offsetof(struct pqi_raid_path_request,
- header.response_queue_id) != 4);
- BUILD_BUG_ON(offsetof(struct pqi_raid_path_request,
- header.driver_flags) != 6);
- BUILD_BUG_ON(offsetof(struct pqi_raid_path_request,
- request_id) != 8);
- BUILD_BUG_ON(offsetof(struct pqi_raid_path_request,
- nexus_id) != 10);
- BUILD_BUG_ON(offsetof(struct pqi_raid_path_request,
- buffer_length) != 12);
- BUILD_BUG_ON(offsetof(struct pqi_raid_path_request,
- lun_number) != 16);
- BUILD_BUG_ON(offsetof(struct pqi_raid_path_request,
- protocol_specific) != 24);
- BUILD_BUG_ON(offsetof(struct pqi_raid_path_request,
- error_index) != 27);
- BUILD_BUG_ON(offsetof(struct pqi_raid_path_request,
- cdb) != 32);
- BUILD_BUG_ON(offsetof(struct pqi_raid_path_request,
- timeout) != 60);
- BUILD_BUG_ON(offsetof(struct pqi_raid_path_request,
- sg_descriptors) != 64);
- BUILD_BUG_ON(sizeof(struct pqi_raid_path_request) !=
- PQI_OPERATIONAL_IQ_ELEMENT_LENGTH);
-
- BUILD_BUG_ON(offsetof(struct pqi_aio_path_request,
- header.iu_type) != 0);
- BUILD_BUG_ON(offsetof(struct pqi_aio_path_request,
- header.iu_length) != 2);
- BUILD_BUG_ON(offsetof(struct pqi_aio_path_request,
- header.response_queue_id) != 4);
- BUILD_BUG_ON(offsetof(struct pqi_aio_path_request,
- header.driver_flags) != 6);
- BUILD_BUG_ON(offsetof(struct pqi_aio_path_request,
- request_id) != 8);
- BUILD_BUG_ON(offsetof(struct pqi_aio_path_request,
- nexus_id) != 12);
- BUILD_BUG_ON(offsetof(struct pqi_aio_path_request,
- buffer_length) != 16);
- BUILD_BUG_ON(offsetof(struct pqi_aio_path_request,
- data_encryption_key_index) != 22);
- BUILD_BUG_ON(offsetof(struct pqi_aio_path_request,
- encrypt_tweak_lower) != 24);
- BUILD_BUG_ON(offsetof(struct pqi_aio_path_request,
- encrypt_tweak_upper) != 28);
- BUILD_BUG_ON(offsetof(struct pqi_aio_path_request,
- cdb) != 32);
- BUILD_BUG_ON(offsetof(struct pqi_aio_path_request,
- error_index) != 48);
- BUILD_BUG_ON(offsetof(struct pqi_aio_path_request,
- num_sg_descriptors) != 50);
- BUILD_BUG_ON(offsetof(struct pqi_aio_path_request,
- cdb_length) != 51);
- BUILD_BUG_ON(offsetof(struct pqi_aio_path_request,
- lun_number) != 52);
- BUILD_BUG_ON(offsetof(struct pqi_aio_path_request,
- sg_descriptors) != 64);
- BUILD_BUG_ON(sizeof(struct pqi_aio_path_request) !=
- PQI_OPERATIONAL_IQ_ELEMENT_LENGTH);
-
- BUILD_BUG_ON(offsetof(struct pqi_io_response,
- header.iu_type) != 0);
- BUILD_BUG_ON(offsetof(struct pqi_io_response,
- header.iu_length) != 2);
- BUILD_BUG_ON(offsetof(struct pqi_io_response,
- request_id) != 8);
- BUILD_BUG_ON(offsetof(struct pqi_io_response,
- error_index) != 10);
-
- BUILD_BUG_ON(offsetof(struct pqi_general_management_request,
- header.iu_type) != 0);
- BUILD_BUG_ON(offsetof(struct pqi_general_management_request,
- header.iu_length) != 2);
- BUILD_BUG_ON(offsetof(struct pqi_general_management_request,
- header.response_queue_id) != 4);
- BUILD_BUG_ON(offsetof(struct pqi_general_management_request,
- request_id) != 8);
- BUILD_BUG_ON(offsetof(struct pqi_general_management_request,
- data.report_event_configuration.buffer_length) != 12);
- BUILD_BUG_ON(offsetof(struct pqi_general_management_request,
- data.report_event_configuration.sg_descriptors) != 16);
- BUILD_BUG_ON(offsetof(struct pqi_general_management_request,
- data.set_event_configuration.global_event_oq_id) != 10);
- BUILD_BUG_ON(offsetof(struct pqi_general_management_request,
- data.set_event_configuration.buffer_length) != 12);
- BUILD_BUG_ON(offsetof(struct pqi_general_management_request,
- data.set_event_configuration.sg_descriptors) != 16);
-
- BUILD_BUG_ON(offsetof(struct pqi_iu_layer_descriptor,
- max_inbound_iu_length) != 6);
- BUILD_BUG_ON(offsetof(struct pqi_iu_layer_descriptor,
- max_outbound_iu_length) != 14);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_path_request, header.iu_type) != 0);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_path_request, header.iu_length) != 2);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_path_request, header.response_queue_id) != 4);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_path_request, header.driver_flags) != 6);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_path_request, request_id) != 8);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_path_request, nexus_id) != 10);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_path_request, buffer_length) != 12);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_path_request, lun_number) != 16);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_path_request, protocol_specific) != 24);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_path_request, error_index) != 27);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_path_request, cdb) != 32);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_path_request, timeout) != 60);
+ BUILD_BUG_ON(offsetof(struct pqi_raid_path_request, sg_descriptors) != 64);
+ BUILD_BUG_ON(sizeof(struct pqi_raid_path_request) != PQI_OPERATIONAL_IQ_ELEMENT_LENGTH);
+
+ BUILD_BUG_ON(offsetof(struct pqi_aio_path_request, header.iu_type) != 0);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_path_request, header.iu_length) != 2);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_path_request, header.response_queue_id) != 4);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_path_request, header.driver_flags) != 6);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_path_request, request_id) != 8);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_path_request, nexus_id) != 12);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_path_request, buffer_length) != 16);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_path_request, data_encryption_key_index) != 22);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_path_request, encrypt_tweak_lower) != 24);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_path_request, encrypt_tweak_upper) != 28);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_path_request, cdb) != 32);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_path_request, error_index) != 48);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_path_request, num_sg_descriptors) != 50);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_path_request, cdb_length) != 51);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_path_request, lun_number) != 52);
+ BUILD_BUG_ON(offsetof(struct pqi_aio_path_request, sg_descriptors) != 64);
+ BUILD_BUG_ON(sizeof(struct pqi_aio_path_request) != PQI_OPERATIONAL_IQ_ELEMENT_LENGTH);
+
+ BUILD_BUG_ON(offsetof(struct pqi_io_response, header.iu_type) != 0);
+ BUILD_BUG_ON(offsetof(struct pqi_io_response, header.iu_length) != 2);
+ BUILD_BUG_ON(offsetof(struct pqi_io_response, request_id) != 8);
+ BUILD_BUG_ON(offsetof(struct pqi_io_response, error_index) != 10);
+
+ BUILD_BUG_ON(offsetof(struct pqi_general_management_request, header.iu_type) != 0);
+ BUILD_BUG_ON(offsetof(struct pqi_general_management_request, header.iu_length) != 2);
+ BUILD_BUG_ON(offsetof(struct pqi_general_management_request, header.response_queue_id) != 4);
+ BUILD_BUG_ON(offsetof(struct pqi_general_management_request, request_id) != 8);
+ BUILD_BUG_ON(offsetof(struct pqi_general_management_request, data.report_event_configuration.buffer_length) != 12);
+ BUILD_BUG_ON(offsetof(struct pqi_general_management_request, data.report_event_configuration.sg_descriptors) != 16);
+ BUILD_BUG_ON(offsetof(struct pqi_general_management_request, data.set_event_configuration.global_event_oq_id) != 10);
+ BUILD_BUG_ON(offsetof(struct pqi_general_management_request, data.set_event_configuration.buffer_length) != 12);
+ BUILD_BUG_ON(offsetof(struct pqi_general_management_request, data.set_event_configuration.sg_descriptors) != 16);
+
+ BUILD_BUG_ON(offsetof(struct pqi_iu_layer_descriptor, max_inbound_iu_length) != 6);
+ BUILD_BUG_ON(offsetof(struct pqi_iu_layer_descriptor, max_outbound_iu_length) != 14);
BUILD_BUG_ON(sizeof(struct pqi_iu_layer_descriptor) != 16);
- BUILD_BUG_ON(offsetof(struct pqi_device_capability,
- data_length) != 0);
- BUILD_BUG_ON(offsetof(struct pqi_device_capability,
- iq_arbitration_priority_support_bitmask) != 8);
- BUILD_BUG_ON(offsetof(struct pqi_device_capability,
- maximum_aw_a) != 9);
- BUILD_BUG_ON(offsetof(struct pqi_device_capability,
- maximum_aw_b) != 10);
- BUILD_BUG_ON(offsetof(struct pqi_device_capability,
- maximum_aw_c) != 11);
- BUILD_BUG_ON(offsetof(struct pqi_device_capability,
- max_inbound_queues) != 16);
- BUILD_BUG_ON(offsetof(struct pqi_device_capability,
- max_elements_per_iq) != 18);
- BUILD_BUG_ON(offsetof(struct pqi_device_capability,
- max_iq_element_length) != 24);
- BUILD_BUG_ON(offsetof(struct pqi_device_capability,
- min_iq_element_length) != 26);
- BUILD_BUG_ON(offsetof(struct pqi_device_capability,
- max_outbound_queues) != 30);
- BUILD_BUG_ON(offsetof(struct pqi_device_capability,
- max_elements_per_oq) != 32);
- BUILD_BUG_ON(offsetof(struct pqi_device_capability,
- intr_coalescing_time_granularity) != 34);
- BUILD_BUG_ON(offsetof(struct pqi_device_capability,
- max_oq_element_length) != 36);
- BUILD_BUG_ON(offsetof(struct pqi_device_capability,
- min_oq_element_length) != 38);
- BUILD_BUG_ON(offsetof(struct pqi_device_capability,
- iu_layer_descriptors) != 64);
+ BUILD_BUG_ON(offsetof(struct pqi_device_capability, data_length) != 0);
+ BUILD_BUG_ON(offsetof(struct pqi_device_capability, iq_arbitration_priority_support_bitmask) != 8);
+ BUILD_BUG_ON(offsetof(struct pqi_device_capability, maximum_aw_a) != 9);
+ BUILD_BUG_ON(offsetof(struct pqi_device_capability, maximum_aw_b) != 10);
+ BUILD_BUG_ON(offsetof(struct pqi_device_capability, maximum_aw_c) != 11);
+ BUILD_BUG_ON(offsetof(struct pqi_device_capability, max_inbound_queues) != 16);
+ BUILD_BUG_ON(offsetof(struct pqi_device_capability, max_elements_per_iq) != 18);
+ BUILD_BUG_ON(offsetof(struct pqi_device_capability, max_iq_element_length) != 24);
+ BUILD_BUG_ON(offsetof(struct pqi_device_capability, min_iq_element_length) != 26);
+ BUILD_BUG_ON(offsetof(struct pqi_device_capability, max_outbound_queues) != 30);
+ BUILD_BUG_ON(offsetof(struct pqi_device_capability, max_elements_per_oq) != 32);
+ BUILD_BUG_ON(offsetof(struct pqi_device_capability, intr_coalescing_time_granularity) != 34);
+ BUILD_BUG_ON(offsetof(struct pqi_device_capability, max_oq_element_length) != 36);
+ BUILD_BUG_ON(offsetof(struct pqi_device_capability, min_oq_element_length) != 38);
+ BUILD_BUG_ON(offsetof(struct pqi_device_capability, iu_layer_descriptors) != 64);
BUILD_BUG_ON(sizeof(struct pqi_device_capability) != 576);
- BUILD_BUG_ON(offsetof(struct pqi_event_descriptor,
- event_type) != 0);
- BUILD_BUG_ON(offsetof(struct pqi_event_descriptor,
- oq_id) != 2);
+ BUILD_BUG_ON(offsetof(struct pqi_event_descriptor, event_type) != 0);
+ BUILD_BUG_ON(offsetof(struct pqi_event_descriptor, oq_id) != 2);
BUILD_BUG_ON(sizeof(struct pqi_event_descriptor) != 4);
- BUILD_BUG_ON(offsetof(struct pqi_event_config,
- num_event_descriptors) != 2);
- BUILD_BUG_ON(offsetof(struct pqi_event_config,
- descriptors) != 4);
-
- BUILD_BUG_ON(PQI_NUM_SUPPORTED_EVENTS !=
- ARRAY_SIZE(pqi_supported_event_types));
-
- BUILD_BUG_ON(offsetof(struct pqi_event_response,
- header.iu_type) != 0);
- BUILD_BUG_ON(offsetof(struct pqi_event_response,
- header.iu_length) != 2);
- BUILD_BUG_ON(offsetof(struct pqi_event_response,
- event_type) != 8);
- BUILD_BUG_ON(offsetof(struct pqi_event_response,
- event_id) != 10);
- BUILD_BUG_ON(offsetof(struct pqi_event_response,
- additional_event_id) != 12);
- BUILD_BUG_ON(offsetof(struct pqi_event_response,
- data) != 16);
+ BUILD_BUG_ON(offsetof(struct pqi_event_config, num_event_descriptors) != 2);
+ BUILD_BUG_ON(offsetof(struct pqi_event_config, descriptors) != 4);
+
+ BUILD_BUG_ON(PQI_NUM_SUPPORTED_EVENTS != ARRAY_SIZE(pqi_supported_event_types));
+
+ BUILD_BUG_ON(offsetof(struct pqi_event_response, header.iu_type) != 0);
+ BUILD_BUG_ON(offsetof(struct pqi_event_response, header.iu_length) != 2);
+ BUILD_BUG_ON(offsetof(struct pqi_event_response, event_type) != 8);
+ BUILD_BUG_ON(offsetof(struct pqi_event_response, event_id) != 10);
+ BUILD_BUG_ON(offsetof(struct pqi_event_response, additional_event_id) != 12);
+ BUILD_BUG_ON(offsetof(struct pqi_event_response, data) != 16);
BUILD_BUG_ON(sizeof(struct pqi_event_response) != 32);
- BUILD_BUG_ON(offsetof(struct pqi_event_acknowledge_request,
- header.iu_type) != 0);
- BUILD_BUG_ON(offsetof(struct pqi_event_acknowledge_request,
- header.iu_length) != 2);
- BUILD_BUG_ON(offsetof(struct pqi_event_acknowledge_request,
- event_type) != 8);
- BUILD_BUG_ON(offsetof(struct pqi_event_acknowledge_request,
- event_id) != 10);
- BUILD_BUG_ON(offsetof(struct pqi_event_acknowledge_request,
- additional_event_id) != 12);
+ BUILD_BUG_ON(offsetof(struct pqi_event_acknowledge_request, header.iu_type) != 0);
+ BUILD_BUG_ON(offsetof(struct pqi_event_acknowledge_request, header.iu_length) != 2);
+ BUILD_BUG_ON(offsetof(struct pqi_event_acknowledge_request, event_type) != 8);
+ BUILD_BUG_ON(offsetof(struct pqi_event_acknowledge_request, event_id) != 10);
+ BUILD_BUG_ON(offsetof(struct pqi_event_acknowledge_request, additional_event_id) != 12);
BUILD_BUG_ON(sizeof(struct pqi_event_acknowledge_request) != 16);
- BUILD_BUG_ON(offsetof(struct pqi_task_management_request,
- header.iu_type) != 0);
- BUILD_BUG_ON(offsetof(struct pqi_task_management_request,
- header.iu_length) != 2);
- BUILD_BUG_ON(offsetof(struct pqi_task_management_request,
- request_id) != 8);
- BUILD_BUG_ON(offsetof(struct pqi_task_management_request,
- nexus_id) != 10);
- BUILD_BUG_ON(offsetof(struct pqi_task_management_request,
- timeout) != 14);
- BUILD_BUG_ON(offsetof(struct pqi_task_management_request,
- lun_number) != 16);
- BUILD_BUG_ON(offsetof(struct pqi_task_management_request,
- protocol_specific) != 24);
- BUILD_BUG_ON(offsetof(struct pqi_task_management_request,
- outbound_queue_id_to_manage) != 26);
- BUILD_BUG_ON(offsetof(struct pqi_task_management_request,
- request_id_to_manage) != 28);
- BUILD_BUG_ON(offsetof(struct pqi_task_management_request,
- task_management_function) != 30);
+ BUILD_BUG_ON(offsetof(struct pqi_task_management_request, header.iu_type) != 0);
+ BUILD_BUG_ON(offsetof(struct pqi_task_management_request, header.iu_length) != 2);
+ BUILD_BUG_ON(offsetof(struct pqi_task_management_request, request_id) != 8);
+ BUILD_BUG_ON(offsetof(struct pqi_task_management_request, nexus_id) != 10);
+ BUILD_BUG_ON(offsetof(struct pqi_task_management_request, timeout) != 14);
+ BUILD_BUG_ON(offsetof(struct pqi_task_management_request, lun_number) != 16);
+ BUILD_BUG_ON(offsetof(struct pqi_task_management_request, protocol_specific) != 24);
+ BUILD_BUG_ON(offsetof(struct pqi_task_management_request, outbound_queue_id_to_manage) != 26);
+ BUILD_BUG_ON(offsetof(struct pqi_task_management_request, request_id_to_manage) != 28);
+ BUILD_BUG_ON(offsetof(struct pqi_task_management_request, task_management_function) != 30);
BUILD_BUG_ON(sizeof(struct pqi_task_management_request) != 32);
- BUILD_BUG_ON(offsetof(struct pqi_task_management_response,
- header.iu_type) != 0);
- BUILD_BUG_ON(offsetof(struct pqi_task_management_response,
- header.iu_length) != 2);
- BUILD_BUG_ON(offsetof(struct pqi_task_management_response,
- request_id) != 8);
- BUILD_BUG_ON(offsetof(struct pqi_task_management_response,
- nexus_id) != 10);
- BUILD_BUG_ON(offsetof(struct pqi_task_management_response,
- additional_response_info) != 12);
- BUILD_BUG_ON(offsetof(struct pqi_task_management_response,
- response_code) != 15);
+ BUILD_BUG_ON(offsetof(struct pqi_task_management_response, header.iu_type) != 0);
+ BUILD_BUG_ON(offsetof(struct pqi_task_management_response, header.iu_length) != 2);
+ BUILD_BUG_ON(offsetof(struct pqi_task_management_response, request_id) != 8);
+ BUILD_BUG_ON(offsetof(struct pqi_task_management_response, nexus_id) != 10);
+ BUILD_BUG_ON(offsetof(struct pqi_task_management_response, additional_response_info) != 12);
+ BUILD_BUG_ON(offsetof(struct pqi_task_management_response, response_code) != 15);
BUILD_BUG_ON(sizeof(struct pqi_task_management_response) != 16);
- BUILD_BUG_ON(offsetof(struct bmic_identify_controller,
- configured_logical_drive_count) != 0);
- BUILD_BUG_ON(offsetof(struct bmic_identify_controller,
- configuration_signature) != 1);
- BUILD_BUG_ON(offsetof(struct bmic_identify_controller,
- firmware_version_short) != 5);
- BUILD_BUG_ON(offsetof(struct bmic_identify_controller,
- extended_logical_unit_count) != 154);
- BUILD_BUG_ON(offsetof(struct bmic_identify_controller,
- firmware_build_number) != 190);
- BUILD_BUG_ON(offsetof(struct bmic_identify_controller,
- vendor_id) != 200);
- BUILD_BUG_ON(offsetof(struct bmic_identify_controller,
- product_id) != 208);
- BUILD_BUG_ON(offsetof(struct bmic_identify_controller,
- extra_controller_flags) != 286);
- BUILD_BUG_ON(offsetof(struct bmic_identify_controller,
- controller_mode) != 292);
- BUILD_BUG_ON(offsetof(struct bmic_identify_controller,
- spare_part_number) != 293);
- BUILD_BUG_ON(offsetof(struct bmic_identify_controller,
- firmware_version_long) != 325);
-
- BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device,
- phys_bay_in_box) != 115);
- BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device,
- device_type) != 120);
- BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device,
- redundant_path_present_map) != 1736);
- BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device,
- active_path_number) != 1738);
- BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device,
- alternate_paths_phys_connector) != 1739);
- BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device,
- alternate_paths_phys_box_on_port) != 1755);
- BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device,
- current_queue_depth_limit) != 1796);
+ BUILD_BUG_ON(offsetof(struct bmic_identify_controller, configured_logical_drive_count) != 0);
+ BUILD_BUG_ON(offsetof(struct bmic_identify_controller, configuration_signature) != 1);
+ BUILD_BUG_ON(offsetof(struct bmic_identify_controller, firmware_version_short) != 5);
+ BUILD_BUG_ON(offsetof(struct bmic_identify_controller, extended_logical_unit_count) != 154);
+ BUILD_BUG_ON(offsetof(struct bmic_identify_controller, firmware_build_number) != 190);
+ BUILD_BUG_ON(offsetof(struct bmic_identify_controller, vendor_id) != 200);
+ BUILD_BUG_ON(offsetof(struct bmic_identify_controller, product_id) != 208);
+ BUILD_BUG_ON(offsetof(struct bmic_identify_controller, extra_controller_flags) != 286);
+ BUILD_BUG_ON(offsetof(struct bmic_identify_controller, controller_mode) != 292);
+ BUILD_BUG_ON(offsetof(struct bmic_identify_controller, spare_part_number) != 293);
+ BUILD_BUG_ON(offsetof(struct bmic_identify_controller, firmware_version_long) != 325);
+
+ BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device, phys_bay_in_box) != 115);
+ BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device, device_type) != 120);
+ BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device, redundant_path_present_map) != 1736);
+ BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device, active_path_number) != 1738);
+ BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device, alternate_paths_phys_connector) != 1739);
+ BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device, alternate_paths_phys_box_on_port) != 1755);
+ BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device, current_queue_depth_limit) != 1796);
BUILD_BUG_ON(sizeof(struct bmic_identify_physical_device) != 2560);
BUILD_BUG_ON(sizeof(struct bmic_sense_feature_buffer_header) != 4);
- BUILD_BUG_ON(offsetof(struct bmic_sense_feature_buffer_header,
- page_code) != 0);
- BUILD_BUG_ON(offsetof(struct bmic_sense_feature_buffer_header,
- subpage_code) != 1);
- BUILD_BUG_ON(offsetof(struct bmic_sense_feature_buffer_header,
- buffer_length) != 2);
+ BUILD_BUG_ON(offsetof(struct bmic_sense_feature_buffer_header, page_code) != 0);
+ BUILD_BUG_ON(offsetof(struct bmic_sense_feature_buffer_header, subpage_code) != 1);
+ BUILD_BUG_ON(offsetof(struct bmic_sense_feature_buffer_header, buffer_length) != 2);
BUILD_BUG_ON(sizeof(struct bmic_sense_feature_page_header) != 4);
- BUILD_BUG_ON(offsetof(struct bmic_sense_feature_page_header,
- page_code) != 0);
- BUILD_BUG_ON(offsetof(struct bmic_sense_feature_page_header,
- subpage_code) != 1);
- BUILD_BUG_ON(offsetof(struct bmic_sense_feature_page_header,
- page_length) != 2);
-
- BUILD_BUG_ON(sizeof(struct bmic_sense_feature_io_page_aio_subpage)
- != 18);
- BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage,
- header) != 0);
- BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage,
- firmware_read_support) != 4);
- BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage,
- driver_read_support) != 5);
- BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage,
- firmware_write_support) != 6);
- BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage,
- driver_write_support) != 7);
- BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage,
- max_transfer_encrypted_sas_sata) != 8);
- BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage,
- max_transfer_encrypted_nvme) != 10);
- BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage,
- max_write_raid_5_6) != 12);
- BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage,
- max_write_raid_1_10_2drive) != 14);
- BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage,
- max_write_raid_1_10_3drive) != 16);
+ BUILD_BUG_ON(offsetof(struct bmic_sense_feature_page_header, page_code) != 0);
+ BUILD_BUG_ON(offsetof(struct bmic_sense_feature_page_header, subpage_code) != 1);
+ BUILD_BUG_ON(offsetof(struct bmic_sense_feature_page_header, page_length) != 2);
+
+ BUILD_BUG_ON(sizeof(struct bmic_sense_feature_io_page_aio_subpage) != 18);
+ BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage, header) != 0);
+ BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage, firmware_read_support) != 4);
+ BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage, driver_read_support) != 5);
+ BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage, firmware_write_support) != 6);
+ BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage, driver_write_support) != 7);
+ BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage, max_transfer_encrypted_sas_sata) != 8);
+ BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage, max_transfer_encrypted_nvme) != 10);
+ BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage, max_write_raid_5_6) != 12);
+ BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage, max_write_raid_1_10_2drive) != 14);
+ BUILD_BUG_ON(offsetof(struct bmic_sense_feature_io_page_aio_subpage, max_write_raid_1_10_3drive) != 16);
BUILD_BUG_ON(PQI_ADMIN_IQ_NUM_ELEMENTS > 255);
BUILD_BUG_ON(PQI_ADMIN_OQ_NUM_ELEMENTS > 255);
- BUILD_BUG_ON(PQI_ADMIN_IQ_ELEMENT_LENGTH %
- PQI_QUEUE_ELEMENT_LENGTH_ALIGNMENT != 0);
- BUILD_BUG_ON(PQI_ADMIN_OQ_ELEMENT_LENGTH %
- PQI_QUEUE_ELEMENT_LENGTH_ALIGNMENT != 0);
+ BUILD_BUG_ON(PQI_ADMIN_IQ_ELEMENT_LENGTH % PQI_QUEUE_ELEMENT_LENGTH_ALIGNMENT != 0);
+ BUILD_BUG_ON(PQI_ADMIN_OQ_ELEMENT_LENGTH % PQI_QUEUE_ELEMENT_LENGTH_ALIGNMENT != 0);
BUILD_BUG_ON(PQI_OPERATIONAL_IQ_ELEMENT_LENGTH > 1048560);
- BUILD_BUG_ON(PQI_OPERATIONAL_IQ_ELEMENT_LENGTH %
- PQI_QUEUE_ELEMENT_LENGTH_ALIGNMENT != 0);
+ BUILD_BUG_ON(PQI_OPERATIONAL_IQ_ELEMENT_LENGTH % PQI_QUEUE_ELEMENT_LENGTH_ALIGNMENT != 0);
BUILD_BUG_ON(PQI_OPERATIONAL_OQ_ELEMENT_LENGTH > 1048560);
- BUILD_BUG_ON(PQI_OPERATIONAL_OQ_ELEMENT_LENGTH %
- PQI_QUEUE_ELEMENT_LENGTH_ALIGNMENT != 0);
+ BUILD_BUG_ON(PQI_OPERATIONAL_OQ_ELEMENT_LENGTH % PQI_QUEUE_ELEMENT_LENGTH_ALIGNMENT != 0);
BUILD_BUG_ON(PQI_RESERVED_IO_SLOTS >= PQI_MAX_OUTSTANDING_REQUESTS);
- BUILD_BUG_ON(PQI_RESERVED_IO_SLOTS >=
- PQI_MAX_OUTSTANDING_REQUESTS_KDUMP);
+ BUILD_BUG_ON(PQI_RESERVED_IO_SLOTS >= PQI_MAX_OUTSTANDING_REQUESTS_KDUMP);
}
--
2.42.0.rc2
next prev parent reply other threads:[~2023-08-17 13:12 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-17 13:12 [PATCH 0/9] smartpqi updates Don Brace
2023-08-17 13:12 ` Don Brace [this message]
2023-08-21 22:08 ` [PATCH 1/9] smartpqi: reformat to align with oob driver Martin K. Petersen
2023-08-17 13:12 ` [PATCH 2/9] smartpqi: add abort handler Don Brace
2023-08-17 13:12 ` [PATCH 3/9] smartpqi: refactor rename MACRO to clarify purpose Don Brace
2023-08-17 13:12 ` [PATCH 4/9] smartpqi: refactor rename pciinfo to pci_info Don Brace
2023-08-17 13:12 ` [PATCH 5/9] smartpqi: simplify lun_number assignment Don Brace
2023-08-17 13:12 ` [PATCH 6/9] smartpqi: enhance shutdown notification Don Brace
2023-08-17 13:12 ` [PATCH 7/9] smartpqi: enhance controller offline notification Don Brace
2023-08-17 13:12 ` [PATCH 8/9] smartpqi: enhance error messages Don Brace
2023-08-17 13:12 ` [PATCH 9/9] smartpqi: change driver version to 2.1.24-046 Don Brace
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230817131232.86754-2-don.brace@microchip.com \
--to=don.brace@microchip.com \
--cc=Justin.Lindley@microchip.com \
--cc=Kevin.Barnett@microchip.com \
--cc=POSWALD@suse.com \
--cc=david.strahan@microchip.com \
--cc=gerry.morong@microchip.com \
--cc=hch@infradead.org \
--cc=jejb@linux.vnet.ibm.com \
--cc=jeremy.reeves@microchip.com \
--cc=joseph.szczypek@hpe.com \
--cc=kumar.meiyappan@microchip.com \
--cc=linux-scsi@vger.kernel.org \
--cc=mahesh.rajashekhara@microchip.com \
--cc=mike.mcgowen@microchip.com \
--cc=murthy.bhat@microchip.com \
--cc=scott.benesh@microchip.com \
--cc=scott.teel@microchip.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.