]> nv-tegra.nvidia Code Review - linux-2.6.git/commitdiff
Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6
authorLinus Torvalds <torvalds@g5.osdl.org>
Wed, 21 Jun 2006 18:18:25 +0000 (11:18 -0700)
committerLinus Torvalds <torvalds@g5.osdl.org>
Wed, 21 Jun 2006 18:18:25 +0000 (11:18 -0700)
* master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (85 commits)
  [SCSI] 53c700: remove reliance on deprecated cmnd fields
  [SCSI] hptiop: don't use cmnd->bufflen
  [SCSI] hptiop: HighPoint RocketRAID 3xxx controller driver
  [SCSI] aacraid: small misc. cleanups
  [SCSI] aacraid: Update supported product information
  [SCSI] aacraid: Fix return code interpretation
  [SCSI] scsi_transport_sas: fix panic in sas_free_rphy
  [SCSI] remove RQ_SCSI_* flags
  [SCSI] remove scsi_request infrastructure
  [SCSI] mptfusion: change driver revision to 3.03.10
  [SCSI] mptfc: abort of board reset leaves port dead requiring reboot
  [SCSI] mptfc: fix fibre channel infinite request/response loop
  [SCSI] mptfc: set fibre channel fw target missing timers to one second
  [SCSI] mptfusion: move fc event/reset handling to mptfc
  [SCSI] spi transport: don't allow dt to be set on SE or HVD buses
  [SCSI] aic7xxx: expose the bus setting to sysfs
  [SCSI] scsi: remove Documentation/scsi/cpqfc.txt
  [SCSI] drivers/scsi: Use ARRAY_SIZE macro
  [SCSI] Remove last page_address from dc395x.c
  [SCSI] hptiop: HighPoint RocketRAID 3xxx controller driver
  ...

Fixed up conflicts in drivers/message/fusion/mptbase.c manually (due to
the sparc interrupt cleanups)

1  2 
MAINTAINERS
drivers/message/fusion/mptbase.c
drivers/scsi/qlogicpti.c
drivers/scsi/sym53c8xx_2/sym_glue.c
include/linux/blkdev.h

diff --cc MAINTAINERS
Simple merge
index 59690cbabfcaf8da4a271bb32ff76ec9b5c99bcb,08779d79a1f002e8a2ef37381307cf6bdbf01ef0..12dd8d493ee2aa4e6981e61222cb18cad2bb86b9
@@@ -1722,6 -1697,48 +1694,36 @@@ mpt_do_ioc_recovery(MPT_ADAPTER *ioc, u
                }
        }
  
 -#ifndef __sparc__
+       /*
+        * Device is reset now. It must have de-asserted the interrupt line
+        * (if it was asserted) and it should be safe to register for the
+        * interrupt now.
+        */
+       if ((ret == 0) && (reason == MPT_HOSTEVENT_IOC_BRINGUP)) {
+               ioc->pci_irq = -1;
+               if (ioc->pcidev->irq) {
+                       if (mpt_msi_enable && !pci_enable_msi(ioc->pcidev))
+                               printk(MYIOC_s_INFO_FMT "PCI-MSI enabled\n",
+                                       ioc->name);
+                       rc = request_irq(ioc->pcidev->irq, mpt_interrupt,
+                                       SA_SHIRQ, ioc->name, ioc);
+                       if (rc < 0) {
 -#else
 -                              printk(MYIOC_s_ERR_FMT "Unable to allocate "
 -                                      "interrupt %s!\n", ioc->name,
 -                                      __irq_itoa(ioc->pcidev->irq));
 -#endif
+                               printk(MYIOC_s_ERR_FMT "Unable to allocate "
+                                       "interrupt %d!\n", ioc->name,
+                                       ioc->pcidev->irq);
 -#ifndef __sparc__
+                               if (mpt_msi_enable)
+                                       pci_disable_msi(ioc->pcidev);
+                               return -EBUSY;
+                       }
+                       irq_allocated = 1;
+                       ioc->pci_irq = ioc->pcidev->irq;
+                       pci_set_master(ioc->pcidev);            /* ?? */
+                       pci_set_drvdata(ioc->pcidev, ioc);
 -#else
 -                      dprintk((KERN_INFO MYNAM ": %s installed at interrupt "
 -                              "%s\n", ioc->name,
 -                              __irq_itoa(ioc->pcidev->irq)));
 -#endif
+                       dprintk((KERN_INFO MYNAM ": %s installed at interrupt "
+                               "%d\n", ioc->name, ioc->pcidev->irq));
+               }
+       }
        /* Prime reply & request queues!
         * (mucho alloc's) Must be done prior to
         * init as upper addresses are needed for init.
Simple merge
Simple merge
Simple merge