mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-07 14:32:23 +00:00
pm80xx: add support for ATTO devices during SAS address initiailization
ATTO SAS controllers retrieve the SAS address from the NVRAM in a location different from non-ATTO PMC Sierra SAS controllers. This patch makes the necessary adjustments in order to retrieve the SAS address on these types of adapters. Signed-off-by: Benjamin Rood <brood@attotech.com> Reviewed-by: Jack Wang <jinpu.wang@profitbricks.com> Reviewed-by: Hannes Reinecke <hare@suse.de> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
b2dece4859
commit
10efa460fe
@ -636,6 +636,11 @@ static void pm8001_init_sas_add(struct pm8001_hba_info *pm8001_ha)
|
||||
payload.minor_function = 0;
|
||||
payload.length = 128;
|
||||
}
|
||||
} else if ((pm8001_ha->chip_id == chip_8070 ||
|
||||
pm8001_ha->chip_id == chip_8072) &&
|
||||
pm8001_ha->pdev->subsystem_vendor == PCI_VENDOR_ID_ATTO) {
|
||||
payload.minor_function = 4;
|
||||
payload.length = 4096;
|
||||
} else {
|
||||
payload.minor_function = 1;
|
||||
payload.length = 4096;
|
||||
@ -662,6 +667,11 @@ static void pm8001_init_sas_add(struct pm8001_hba_info *pm8001_ha)
|
||||
else if (deviceid == 0x0042)
|
||||
pm8001_ha->sas_addr[j] =
|
||||
payload.func_specific[0x010 + i];
|
||||
} else if ((pm8001_ha->chip_id == chip_8070 ||
|
||||
pm8001_ha->chip_id == chip_8072) &&
|
||||
pm8001_ha->pdev->subsystem_vendor == PCI_VENDOR_ID_ATTO) {
|
||||
pm8001_ha->sas_addr[j] =
|
||||
payload.func_specific[0x010 + i];
|
||||
} else
|
||||
pm8001_ha->sas_addr[j] =
|
||||
payload.func_specific[0x804 + i];
|
||||
|
Loading…
Reference in New Issue
Block a user