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 {
                        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];
  */
 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 },