diff options
Diffstat (limited to 'include/linux/libata.h')
-rw-r--r-- | include/linux/libata.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/include/linux/libata.h b/include/linux/libata.h index 91f705de2c0b..fc03efa64ffe 100644 --- a/include/linux/libata.h +++ b/include/linux/libata.h | |||
@@ -823,10 +823,10 @@ struct ata_port { | |||
823 | unsigned int cbl; /* cable type; ATA_CBL_xxx */ | 823 | unsigned int cbl; /* cable type; ATA_CBL_xxx */ |
824 | 824 | ||
825 | struct ata_queued_cmd qcmd[ATA_MAX_QUEUE]; | 825 | struct ata_queued_cmd qcmd[ATA_MAX_QUEUE]; |
826 | unsigned long qc_allocated; | 826 | unsigned long sas_tag_allocated; /* for sas tag allocation only */ |
827 | unsigned int qc_active; | 827 | unsigned int qc_active; |
828 | int nr_active_links; /* #links with active qcs */ | 828 | int nr_active_links; /* #links with active qcs */ |
829 | unsigned int last_tag; /* track next tag hw expects */ | 829 | unsigned int sas_last_tag; /* track next tag hw expects */ |
830 | 830 | ||
831 | struct ata_link link; /* host default link */ | 831 | struct ata_link link; /* host default link */ |
832 | struct ata_link *slave_link; /* see ata_slave_link_init() */ | 832 | struct ata_link *slave_link; /* see ata_slave_link_init() */ |
@@ -1340,12 +1340,19 @@ extern const struct ata_port_operations ata_base_port_ops; | |||
1340 | extern const struct ata_port_operations sata_port_ops; | 1340 | extern const struct ata_port_operations sata_port_ops; |
1341 | extern struct device_attribute *ata_common_sdev_attrs[]; | 1341 | extern struct device_attribute *ata_common_sdev_attrs[]; |
1342 | 1342 | ||
1343 | /* | ||
1344 | * All sht initializers (BASE, PIO, BMDMA, NCQ) must be instantiated | ||
1345 | * by the edge drivers. Because the 'module' field of sht must be the | ||
1346 | * edge driver's module reference, otherwise the driver can be unloaded | ||
1347 | * even if the scsi_device is being accessed. | ||
1348 | */ | ||
1343 | #define ATA_BASE_SHT(drv_name) \ | 1349 | #define ATA_BASE_SHT(drv_name) \ |
1344 | .module = THIS_MODULE, \ | 1350 | .module = THIS_MODULE, \ |
1345 | .name = drv_name, \ | 1351 | .name = drv_name, \ |
1346 | .ioctl = ata_scsi_ioctl, \ | 1352 | .ioctl = ata_scsi_ioctl, \ |
1347 | .queuecommand = ata_scsi_queuecmd, \ | 1353 | .queuecommand = ata_scsi_queuecmd, \ |
1348 | .can_queue = ATA_DEF_QUEUE, \ | 1354 | .can_queue = ATA_DEF_QUEUE, \ |
1355 | .tag_alloc_policy = BLK_TAG_ALLOC_RR, \ | ||
1349 | .this_id = ATA_SHT_THIS_ID, \ | 1356 | .this_id = ATA_SHT_THIS_ID, \ |
1350 | .cmd_per_lun = ATA_SHT_CMD_PER_LUN, \ | 1357 | .cmd_per_lun = ATA_SHT_CMD_PER_LUN, \ |
1351 | .emulated = ATA_SHT_EMULATED, \ | 1358 | .emulated = ATA_SHT_EMULATED, \ |