]> err.no Git - linux-2.6/blobdiff - drivers/scsi/dec_esp.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog
[linux-2.6] / drivers / scsi / dec_esp.c
index 90e2faf94a0931e0b7e7cc8ee1060d2d96a7ea83..c29ccbc44693ab46079b652c617c2f72c147291b 100644 (file)
@@ -94,9 +94,9 @@ volatile unsigned char pmaz_cmd_buffer[16];
                                 * via PIO.
                                 */
 
-static irqreturn_t scsi_dma_merr_int(int, void *, struct pt_regs *);
-static irqreturn_t scsi_dma_err_int(int, void *, struct pt_regs *);
-static irqreturn_t scsi_dma_int(int, void *, struct pt_regs *);
+static irqreturn_t scsi_dma_merr_int(int, void *);
+static irqreturn_t scsi_dma_err_int(int, void *);
+static irqreturn_t scsi_dma_int(int, void *);
 
 static int dec_esp_detect(struct scsi_host_template * tpnt);
 
@@ -133,7 +133,7 @@ static struct scsi_host_template driver_template = {
 #include "scsi_module.c"
 
 /***************************************************************** Detection */
-static int dec_esp_detect(Scsi_Host_Template * tpnt)
+static int dec_esp_detect(struct scsi_host_template * tpnt)
 {
        struct NCR_ESP *esp;
        struct ConfigDev *esp_dev;
@@ -202,19 +202,19 @@ static int dec_esp_detect(Scsi_Host_Template * tpnt)
 
                esp_initialize(esp);
 
-               if (request_irq(esp->irq, esp_intr, SA_INTERRUPT,
+               if (request_irq(esp->irq, esp_intr, IRQF_DISABLED,
                                "ncr53c94", esp->ehost))
                        goto err_dealloc;
                if (request_irq(dec_interrupt[DEC_IRQ_ASC_MERR],
-                               scsi_dma_merr_int, SA_INTERRUPT,
+                               scsi_dma_merr_int, IRQF_DISABLED,
                                "ncr53c94 error", esp->ehost))
                        goto err_free_irq;
                if (request_irq(dec_interrupt[DEC_IRQ_ASC_ERR],
-                               scsi_dma_err_int, SA_INTERRUPT,
+                               scsi_dma_err_int, IRQF_DISABLED,
                                "ncr53c94 overrun", esp->ehost))
                        goto err_free_irq_merr;
                if (request_irq(dec_interrupt[DEC_IRQ_ASC_DMA],
-                               scsi_dma_int, SA_INTERRUPT,
+                               scsi_dma_int, IRQF_DISABLED,
                                "ncr53c94 dma", esp->ehost))
                        goto err_free_irq_err;
 
@@ -230,7 +230,7 @@ static int dec_esp_detect(Scsi_Host_Template * tpnt)
                        mem_start = get_tc_base_addr(slot);
 
                        /* Store base addr into esp struct */
-                       esp->slot = mem_start;
+                       esp->slot = CPHYSADDR(mem_start);
 
                        esp->dregs = 0;
                        esp->eregs = (void *)CKSEG1ADDR(mem_start +
@@ -276,7 +276,7 @@ static int dec_esp_detect(Scsi_Host_Template * tpnt)
                        esp->dma_mmu_release_scsi_sgl = 0;
                        esp->dma_advance_sg = 0;
 
-                       if (request_irq(esp->irq, esp_intr, SA_INTERRUPT,
+                       if (request_irq(esp->irq, esp_intr, IRQF_DISABLED,
                                         "PMAZ_AA", esp->ehost)) {
                                esp_deallocate(esp);
                                release_tc_card(slot);
@@ -307,7 +307,7 @@ err_dealloc:
 }
 
 /************************************************************* DMA Functions */
-static irqreturn_t scsi_dma_merr_int(int irq, void *dev_id, struct pt_regs *regs)
+static irqreturn_t scsi_dma_merr_int(int irq, void *dev_id)
 {
        printk("Got unexpected SCSI DMA Interrupt! < ");
        printk("SCSI_DMA_MEMRDERR ");
@@ -316,14 +316,14 @@ static irqreturn_t scsi_dma_merr_int(int irq, void *dev_id, struct pt_regs *regs
        return IRQ_HANDLED;
 }
 
-static irqreturn_t scsi_dma_err_int(int irq, void *dev_id, struct pt_regs *regs)
+static irqreturn_t scsi_dma_err_int(int irq, void *dev_id)
 {
        /* empty */
 
        return IRQ_HANDLED;
 }
 
-static irqreturn_t scsi_dma_int(int irq, void *dev_id, struct pt_regs *regs)
+static irqreturn_t scsi_dma_int(int irq, void *dev_id)
 {
        u32 scsi_next_ptr;
 
@@ -516,14 +516,15 @@ static void dma_advance_sg(struct scsi_cmnd * sp)
 static void pmaz_dma_drain(struct NCR_ESP *esp)
 {
        memcpy(phys_to_virt(esp_virt_buffer),
-               (void *)KSEG1ADDR(esp->slot + DEC_SCSI_SRAM + ESP_TGT_DMA_SIZE),
-               scsi_current_length);
+              (void *)CKSEG1ADDR(esp->slot + DEC_SCSI_SRAM +
+                                 ESP_TGT_DMA_SIZE),
+              scsi_current_length);
 }
 
 static void pmaz_dma_init_read(struct NCR_ESP *esp, u32 vaddress, int length)
 {
        volatile u32 *dmareg =
-               (volatile u32 *)KSEG1ADDR(esp->slot + DEC_SCSI_DMAREG);
+               (volatile u32 *)CKSEG1ADDR(esp->slot + DEC_SCSI_DMAREG);
 
        if (length > ESP_TGT_DMA_SIZE)
                length = ESP_TGT_DMA_SIZE;
@@ -539,9 +540,10 @@ static void pmaz_dma_init_read(struct NCR_ESP *esp, u32 vaddress, int length)
 static void pmaz_dma_init_write(struct NCR_ESP *esp, u32 vaddress, int length)
 {
        volatile u32 *dmareg =
-               (volatile u32 *)KSEG1ADDR(esp->slot + DEC_SCSI_DMAREG);
+               (volatile u32 *)CKSEG1ADDR(esp->slot + DEC_SCSI_DMAREG);
 
-       memcpy((void *)KSEG1ADDR(esp->slot + DEC_SCSI_SRAM + ESP_TGT_DMA_SIZE),
+       memcpy((void *)CKSEG1ADDR(esp->slot + DEC_SCSI_SRAM +
+                                 ESP_TGT_DMA_SIZE),
               phys_to_virt(vaddress), length);
 
        wmb();