Browse Source

[SCSI] advansys: Changes to work on parisc

Change PortAddr to be an unsigned int instead of an unsigned short (IO
Port address are 24 bit on parisc).  Fix a couple of printk argument
warnings.  Remove the Kconfig marking as 'BROKEN'.

I haven't removed the #warning yet because virt_to_bus/bus_to_virt are
only eliminated for narrow boards.  Wide boards need more work.

Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Matthew Wilcox 17 năm trước cách đây
mục cha
commit
9d511a4b29
2 tập tin đã thay đổi với 5 bổ sung6 xóa
  1. 0 1
      drivers/scsi/Kconfig
  2. 5 5
      drivers/scsi/advansys.c

+ 0 - 1
drivers/scsi/Kconfig

@@ -521,7 +521,6 @@ config SCSI_ADVANSYS
 	tristate "AdvanSys SCSI support"
 	depends on SCSI
 	depends on ISA || EISA || PCI
-	depends on BROKEN || X86_32
 	help
 	  This is a driver for all SCSI host adapters manufactured by
 	  AdvanSys. It is documented in the kernel source in

+ 5 - 5
drivers/scsi/advansys.c

@@ -120,7 +120,7 @@ typedef unsigned char uchar;
 #define CC_VERY_LONG_SG_LIST 0
 #define ASC_SRB2SCSIQ(srb_ptr)  (srb_ptr)
 
-#define PortAddr                 unsigned short	/* port address size  */
+#define PortAddr                 unsigned int	/* port address size  */
 #define inp(port)                inb(port)
 #define outp(port, byte)         outb((byte), (port))
 
@@ -13333,8 +13333,8 @@ static int __devinit advansys_wide_init_chip(struct Scsi_Host *shost)
 
 	}
 
-	ASC_DBG(1, "sg_cnt %d * %u = %u bytes\n", sg_cnt, sizeof(adv_sgblk_t),
-		 (unsigned)(sizeof(adv_sgblk_t) * sg_cnt));
+	ASC_DBG(1, "sg_cnt %d * %lu = %lu bytes\n", sg_cnt, sizeof(adv_sgblk_t),
+		 sizeof(adv_sgblk_t) * sg_cnt);
 
 	if (!board->adv_sgblkp)
 		goto kmalloc_failed;
@@ -13428,9 +13428,9 @@ static int __devinit advansys_board_found(struct Scsi_Host *shost,
 		boardp->ioremap_addr = ioremap(pci_resource_start(pdev, 1),
 					       boardp->asc_n_io_port);
 		if (!boardp->ioremap_addr) {
-			shost_printk(KERN_ERR, shost, "ioremap(%x, %d) "
+			shost_printk(KERN_ERR, shost, "ioremap(%lx, %d) "
 					"returned NULL\n",
-					pci_resource_start(pdev, 1),
+					(long)pci_resource_start(pdev, 1),
 					boardp->asc_n_io_port);
 			ret = -ENODEV;
 			goto err_shost;