|
@@ -625,7 +625,7 @@ static void pm8001_init_sas_add(struct pm8001_hba_info *pm8001_ha)
|
|
|
pm8001_ha->nvmd_completion = &completion;
|
|
|
|
|
|
if (pm8001_ha->chip_id == chip_8001) {
|
|
|
- if (deviceid == 0x8081) {
|
|
|
+ if (deviceid == 0x8081 || deviceid == 0x0042) {
|
|
|
payload.minor_function = 4;
|
|
|
payload.length = 4096;
|
|
|
} else {
|
|
@@ -646,6 +646,9 @@ static void pm8001_init_sas_add(struct pm8001_hba_info *pm8001_ha)
|
|
|
if (deviceid == 0x8081)
|
|
|
pm8001_ha->sas_addr[j] =
|
|
|
payload.func_specific[0x704 + i];
|
|
|
+ else if (deviceid == 0x0042)
|
|
|
+ pm8001_ha->sas_addr[j] =
|
|
|
+ payload.func_specific[0x010 + i];
|
|
|
} else
|
|
|
pm8001_ha->sas_addr[j] =
|
|
|
payload.func_specific[0x804 + i];
|
|
@@ -1072,10 +1075,7 @@ err_out_enable:
|
|
|
*/
|
|
|
static struct pci_device_id pm8001_pci_table[] = {
|
|
|
{ PCI_VDEVICE(PMC_Sierra, 0x8001), chip_8001 },
|
|
|
- {
|
|
|
- PCI_DEVICE(0x117c, 0x0042),
|
|
|
- .driver_data = chip_8001
|
|
|
- },
|
|
|
+ { PCI_VDEVICE(ATTO, 0x0042), chip_8001 },
|
|
|
/* Support for SPC/SPCv/SPCve controllers */
|
|
|
{ PCI_VDEVICE(ADAPTEC2, 0x8001), chip_8001 },
|
|
|
{ PCI_VDEVICE(PMC_Sierra, 0x8008), chip_8008 },
|