This patchset looks to resolve an issue we see whereby a SATA end device negotiated linkrate may exceed the min linkrate to the initiator, and not be able to establish a connection. According to the SAS spec, we should lower the SATA PHY linkrate when this condition occurs. It appears that some SAS HBAs (whose driver do not use libsas) already do this automatically (via firmware, I assume). This patchset solves this issue during device discovery phase when detecting a new device, but not during revalidation after the user has reprogrammed some PHY linkrates in the topology. Solving for the latter is much more complicated, and will be done as follow-up to this series. A minor tidy-up to libsas.h is also included. John Garry (3): scsi: libsas: Fix some indentation in libsas.h scsi: libsas: Check SMP PHY control function result scsi: libsas: Support SATA PHY connection rate unmatch fixing during discovery drivers/scsi/libsas/sas_expander.c | 29 +++++++++++++++++++- include/scsi/libsas.h | 56 ++++++++++++++++++-------------------- 2 files changed, 55 insertions(+), 30 deletions(-) -- 1.9.1