]> Pileus Git - ~andy/linux/blobdiff - drivers/scsi/hpsa.c
tun: put correct method name in a debug message.
[~andy/linux] / drivers / scsi / hpsa.c
index 2b4261cb77424b52046d6e4c255f32f3359bbf2a..4217e49aea4624b5e0b2c9354a25b627fe10b915 100644 (file)
@@ -99,6 +99,15 @@ static const struct pci_device_id hpsa_pci_device_id[] = {
        {PCI_VENDOR_ID_HP,     PCI_DEVICE_ID_HP_CISSF,     0x103C, 0x3354},
        {PCI_VENDOR_ID_HP,     PCI_DEVICE_ID_HP_CISSF,     0x103C, 0x3355},
        {PCI_VENDOR_ID_HP,     PCI_DEVICE_ID_HP_CISSF,     0x103C, 0x3356},
+       {PCI_VENDOR_ID_HP,     PCI_DEVICE_ID_HP_CISSH,     0x103C, 0x1920},
+       {PCI_VENDOR_ID_HP,     PCI_DEVICE_ID_HP_CISSH,     0x103C, 0x1921},
+       {PCI_VENDOR_ID_HP,     PCI_DEVICE_ID_HP_CISSH,     0x103C, 0x1922},
+       {PCI_VENDOR_ID_HP,     PCI_DEVICE_ID_HP_CISSH,     0x103C, 0x1923},
+       {PCI_VENDOR_ID_HP,     PCI_DEVICE_ID_HP_CISSH,     0x103C, 0x1924},
+       {PCI_VENDOR_ID_HP,     PCI_DEVICE_ID_HP_CISSH,     0x103C, 0x1925},
+       {PCI_VENDOR_ID_HP,     PCI_DEVICE_ID_HP_CISSH,     0x103C, 0x1926},
+       {PCI_VENDOR_ID_HP,     PCI_DEVICE_ID_HP_CISSH,     0x103C, 0x1928},
+       {PCI_VENDOR_ID_HP,     PCI_DEVICE_ID_HP_CISSF,     0x103C, 0x334d},
        {PCI_VENDOR_ID_HP,     PCI_ANY_ID,      PCI_ANY_ID, PCI_ANY_ID,
                PCI_CLASS_STORAGE_RAID << 8, 0xffff << 8, 0},
        {0,}
@@ -118,13 +127,22 @@ static struct board_type products[] = {
        {0x3249103C, "Smart Array P812", &SA5_access},
        {0x324a103C, "Smart Array P712m", &SA5_access},
        {0x324b103C, "Smart Array P711m", &SA5_access},
-       {0x3350103C, "Smart Array", &SA5_access},
-       {0x3351103C, "Smart Array", &SA5_access},
-       {0x3352103C, "Smart Array", &SA5_access},
-       {0x3353103C, "Smart Array", &SA5_access},
-       {0x3354103C, "Smart Array", &SA5_access},
-       {0x3355103C, "Smart Array", &SA5_access},
-       {0x3356103C, "Smart Array", &SA5_access},
+       {0x3350103C, "Smart Array P222", &SA5_access},
+       {0x3351103C, "Smart Array P420", &SA5_access},
+       {0x3352103C, "Smart Array P421", &SA5_access},
+       {0x3353103C, "Smart Array P822", &SA5_access},
+       {0x3354103C, "Smart Array P420i", &SA5_access},
+       {0x3355103C, "Smart Array P220i", &SA5_access},
+       {0x3356103C, "Smart Array P721m", &SA5_access},
+       {0x1920103C, "Smart Array", &SA5_access},
+       {0x1921103C, "Smart Array", &SA5_access},
+       {0x1922103C, "Smart Array", &SA5_access},
+       {0x1923103C, "Smart Array", &SA5_access},
+       {0x1924103C, "Smart Array", &SA5_access},
+       {0x1925103C, "Smart Array", &SA5_access},
+       {0x1926103C, "Smart Array", &SA5_access},
+       {0x1928103C, "Smart Array", &SA5_access},
+       {0x334d103C, "Smart Array P822se", &SA5_access},
        {0xFFFF103C, "Unknown Smart Array", &SA5_access},
 };
 
@@ -2610,7 +2628,7 @@ static int hpsa_eh_abort_handler(struct scsi_cmnd *sc)
        /* not in reqQ, if also not in cmpQ, must have already completed */
        found = hpsa_find_cmd_in_queue(h, sc, &h->cmpQ);
        if (!found)  {
-               dev_dbg(&h->pdev->dev, "%s Request FAILED (not known to driver).\n",
+               dev_dbg(&h->pdev->dev, "%s Request SUCCEEDED (not known to driver).\n",
                                msg);
                return SUCCESS;
        }
@@ -3266,7 +3284,7 @@ static void fill_cmd(struct CommandList *c, u8 cmd, struct ctlr_info *h,
                        c->Request.Timeout = 0; /* Don't time out */
                        memset(&c->Request.CDB[0], 0, sizeof(c->Request.CDB));
                        c->Request.CDB[0] =  cmd;
-                       c->Request.CDB[1] = 0x03;  /* Reset target above */
+                       c->Request.CDB[1] = HPSA_RESET_TYPE_LUN;
                        /* If bytes 4-7 are zero, it means reset the */
                        /* LunID device */
                        c->Request.CDB[4] = 0x00;
@@ -3338,7 +3356,8 @@ static void __iomem *remap_pci_mem(ulong base, ulong size)
 {
        ulong page_base = ((ulong) base) & PAGE_MASK;
        ulong page_offs = ((ulong) base) - page_base;
-       void __iomem *page_remapped = ioremap(page_base, page_offs + size);
+       void __iomem *page_remapped = ioremap_nocache(page_base,
+               page_offs + size);
 
        return page_remapped ? (page_remapped + page_offs) : NULL;
 }