scsi: libsas: Remove postreset from sas_sata_ops
authorLuo Jiaxing <luojiaxing@huawei.com>
Wed, 22 Jul 2020 09:04:02 +0000 (17:04 +0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Sat, 25 Jul 2020 02:09:55 +0000 (22:09 -0400)
sas_sata_ops uses ata_std_postreset as .postreset callback. However,
ata_std_postreset() calls sata_scr_read()/sata_scr_write() which need to
access the ATA SCR register. This register not available in the libsas case
and the functions always return -EOPNOTSUPP.

Drop the .postreset callback.

Link: https://lore.kernel.org/r/1595408643-63011-2-git-send-email-luojiaxing@huawei.com
Reviewed-by: John Garry <john.garry@huawei.com>
Reviewed-by: Jason Yan <yanaijie@huawei.com>
Signed-off-by: Luo Jiaxing <luojiaxing@huawei.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/libsas/sas_ata.c

index 5d716d38870718df5f5ea877a01e9cf577dd0ed7..a7d16d285b86bdb32fe7fa26f1fa61d3d9d62071 100644 (file)
@@ -510,7 +510,6 @@ void sas_ata_end_eh(struct ata_port *ap)
 static struct ata_port_operations sas_sata_ops = {
        .prereset               = ata_std_prereset,
        .hardreset              = sas_ata_hard_reset,
-       .postreset              = ata_std_postreset,
        .error_handler          = ata_std_error_handler,
        .post_internal_cmd      = sas_ata_post_internal,
        .qc_defer               = ata_std_qc_defer,