Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1f61d824 authored by Matthew Wilcox's avatar Matthew Wilcox Committed by James Bottomley
Browse files

[SCSI] Change Kconfig option from IOMAPPED to MMIO



Most of the Kconfig options for switching between IO Port and MMIO
operations use the opposite sense from sym2.  Really, this option
should be set at a chipset level rather than per-driver.

Signed-off-by: default avatarMatthew Wilcox <matthew@wil.cx>
Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
parent 92aab646
Loading
Loading
Loading
Loading
+8 −7
Original line number Diff line number Diff line
@@ -1079,7 +1079,7 @@ config SCSI_SYM53C8XX_DMA_ADDRESSING_MODE
	  memory using PCI DAC cycles.

config SCSI_SYM53C8XX_DEFAULT_TAGS
	int "default tagged command queue depth"
	int "Default tagged command queue depth"
	depends on SCSI_SYM53C8XX_2
	default "16"
	help
@@ -1090,7 +1090,7 @@ config SCSI_SYM53C8XX_DEFAULT_TAGS
	  exceed CONFIG_SCSI_SYM53C8XX_MAX_TAGS.

config SCSI_SYM53C8XX_MAX_TAGS
	int "maximum number of queued commands"
	int "Maximum number of queued commands"
	depends on SCSI_SYM53C8XX_2
	default "64"
	help
@@ -1099,13 +1099,14 @@ config SCSI_SYM53C8XX_MAX_TAGS
	  possible. The driver supports up to 256 queued commands per device.
	  This value is used as a compiled-in hard limit.

config SCSI_SYM53C8XX_IOMAPPED
	bool "use port IO"
config SCSI_SYM53C8XX_MMIO
	bool "Use memory mapped IO"
	depends on SCSI_SYM53C8XX_2
	default y
	help
	  If you say Y here, the driver will use port IO to access
	  the card.  This is significantly slower then using memory
	  mapped IO.  Most people should answer N.
	  Memory mapped IO is faster than Port IO.  Most people should
	  answer Y here, but some machines may have problems.  If you have
	  to answer N here, please report the problem to the maintainer.

config SCSI_IPR
	tristate "IBM Power Linux RAID adapter support"
+1 −1
Original line number Diff line number Diff line
@@ -1874,7 +1874,7 @@ sym_init_device(struct pci_dev *pdev, struct sym_device *device)
	i = pci_get_base_address(pdev, 1, &device->mmio_base);
	pci_get_base_address(pdev, i, &device->ram_base);

#ifndef CONFIG_SCSI_SYM53C8XX_IOMAPPED
#ifdef CONFIG_SCSI_SYM53C8XX_MMIO
	if (device->mmio_base)
		device->s.ioaddr = pci_iomap(pdev, 1,
						pci_resource_len(pdev, 1));
+17 −12
Original line number Diff line number Diff line
@@ -973,7 +973,7 @@ static int sym_prepare_setting(struct Scsi_Host *shost, struct sym_hcb *np, stru
 *
 *  Has to be called with interrupts disabled.
 */
#ifndef CONFIG_SCSI_SYM53C8XX_IOMAPPED
#ifdef CONFIG_SCSI_SYM53C8XX_MMIO
static int sym_regtest(struct sym_hcb *np)
{
	register volatile u32 data;
@@ -992,20 +992,25 @@ static int sym_regtest (struct sym_hcb *np)
#endif
		printf ("CACHE TEST FAILED: reg dstat-sstat2 readback %x.\n",
			(unsigned) data);
		return (0x10);
		return 0x10;
	}
	return (0);
	return 0;
}
#else
static inline int sym_regtest(struct sym_hcb *np)
{
	return 0;
}
#endif

static int sym_snooptest(struct sym_hcb *np)
{
	u32 sym_rd, sym_wr, sym_bk, host_rd, host_wr, pc, dstat;
	int	i, err=0;
#ifndef CONFIG_SCSI_SYM53C8XX_IOMAPPED
	err |= sym_regtest (np);
	if (err) return (err);
#endif
	int i, err;

	err = sym_regtest(np);
	if (err)
		return err;
restart_test:
	/*
	 *  Enable Master Parity Checking as we intend 
@@ -1094,7 +1099,7 @@ static int sym_snooptest (struct sym_hcb *np)
		err |= 4;
	}

	return (err);
	return err;
}

/*