Skip to contentSkip to conversation

PATCH 2.6.11-rc4 rename IOMAPPED config option

PATCH Grant Grundler 3 participants 8 messages Feb 21, 2005 – Feb 23, 2005 SCSI

lore
Share & tools
lore
#0 lore raw

Willy,
I'm always confused by what CONFIG_SCSI_SYM53C8XX_IOMAPPED is supposed to mean. When enabled, the driver uses IO Port space. But "IOMAPPED" is just too close to "Memory Mapped IO" (MMIO).

Following patch renames this to SCSI_SYM53C8XX_USE_MMIO. I don't need to read the config help to understand what this means.

thanks,
grant

Index: drivers/scsi/Kconfig
===================================================================
RCS file: /var/cvs/linux-2.6/drivers/scsi/Kconfig,v retrieving revision 1.32

scsi/Kconfig +7 -5
diff -u -p -r1.32 Kconfig
@@ -1016,13 +1016,15 @@ 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_USE_MMIO
+	bool "use MMIO space"
 	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.
+	  If you say Y here, the driver will use MMIO address space
+	  to access the card.  IO Port space access is significantly
+	  slower than MMIO space access.
+	  Most people should answer Y.
 
 config SCSI_IPR
 	tristate "IBM Power Linux RAID adapter support"

Index: drivers/scsi/sym53c8xx_2/sym53c8xx.h
===================================================================
RCS file: /var/cvs/linux-2.6/drivers/scsi/sym53c8xx_2/sym53c8xx.h,v retrieving revision 1.14

scsi/sym53c8xx_2/sym53c8xx.h +0 -4
diff -u -p -r1.14 sym53c8xx.h
@@ -42,10 +42,6 @@
 
 #include <linux/config.h>
 
-#ifdef CONFIG_SCSI_SYM53C8XX_IOMAPPED
-#define	SYM_CONF_IOMAPPED
-#endif
-
 /*
  *  DMA addressing mode.
  *

Index: drivers/scsi/sym53c8xx_2/sym_glue.c
===================================================================
RCS file: /var/cvs/linux-2.6/drivers/scsi/sym53c8xx_2/sym_glue.c,v retrieving revision 1.84

scsi/sym53c8xx_2/sym_glue.c +1 -1
diff -u -p -r1.84 sym_glue.c
@@ -1915,7 +1915,7 @@ sym_init_device(struct pci_dev *pdev, st
 	i = pci_get_base_address(pdev, 1, &device->s.base);
 	pci_get_base_address(pdev, i, &device->s.base_2);
 
-#ifdef CONFIG_SCSI_SYM53C8XX_IOMAPPED
+#ifndef CONFIG_SCSI_SYM53C8XX_USE_MMIO
 	device->s.ioaddr = pci_iomap(pdev, 0, pci_resource_len(pdev, 0));
 #else
 	device->s.ioaddr = pci_iomap(pdev, 1, pci_resource_len(pdev, 1));

Index: drivers/scsi/sym53c8xx_2/sym_hipd.c
===================================================================
RCS file: /var/cvs/linux-2.6/drivers/scsi/sym53c8xx_2/sym_hipd.c,v retrieving revision 1.48

scsi/sym53c8xx_2/sym_hipd.c +2 -2
diff -u -p -r1.48 sym_hipd.c
@@ -1044,7 +1044,7 @@ static int sym_prepare_setting(struct sy
  *
  *  Has to be called with interrupts disabled.
  */
-#ifndef SYM_CONF_IOMAPPED
+#ifdef CONFIG_SCSI_SYM53C8XX_USE_MMIO
 static int sym_regtest (struct sym_hcb *np)
 {
 	register volatile u32 data;
@@ -1073,7 +1073,7 @@ static int sym_snooptest (struct sym_hcb
 {
 	u32	sym_rd, sym_wr, sym_bk, host_rd, host_wr, pc, dstat;
 	int	i, err=0;
-#ifndef SYM_CONF_IOMAPPED
+#ifdef CONFIG_SCSI_SYM53C8XX_USE_MMIO
 	err |= sym_regtest (np);
 	if (err) return (err);
 #endif
#1 lore raw

scsi/Kconfig

Quoted 2 lines · Grant Grundler
scsi/Kconfig +0 -0

Patch doesn't apply with -p1.

scsi/sym53c8xx_2/sym_glue.c sym_init_device(struct pci_dev *pdev, st · line 1921

Quoted 11 lines
scsi/sym53c8xx_2/sym_glue.c +1 -1
@@ -1915,7 +1915,7 @@ sym_init_device(struct pci_dev *pdev, st
 	i = pci_get_base_address(pdev, 1, &device->s.base);
 	pci_get_base_address(pdev, i, &device->s.base_2);
 
-#ifdef CONFIG_SCSI_SYM53C8XX_IOMAPPED
+#ifndef CONFIG_SCSI_SYM53C8XX_USE_MMIO
 	device->s.ioaddr = pci_iomap(pdev, 0, pci_resource_len(pdev, 0));
 #else
 	device->s.ioaddr = pci_iomap(pdev, 1, pci_resource_len(pdev, 1));

This file does not include <linux/config.h>.

scsi/sym53c8xx_2/sym_hipd.c static int sym_prepare_setting(struct sy · line 1047

Quoted 13 lines

Index: drivers/scsi/sym53c8xx_2/sym_hipd.c
===================================================================
RCS file: /var/cvs/linux-2.6/drivers/scsi/sym53c8xx_2/sym_hipd.c,v retrieving revision 1.48
diff -u -p -r1.48 sym_hipd.c

scsi/sym53c8xx_2/sym_hipd.c +1 -1
@@ -1044,7 +1044,7 @@ static int sym_prepare_setting(struct sy
  *
  *  Has to be called with interrupts disabled.
  */
-#ifndef SYM_CONF_IOMAPPED
+#ifdef CONFIG_SCSI_SYM53C8XX_USE_MMIO

ditto

#2 lore raw
Quoted 1 line · Jeff Garzik

Patch doesn't apply with -p1.

Doesn't matter; I can cope with both.

Quoted 4 lines
Quoted 2 lines

--- drivers/scsi/sym53c8xx_2/sym_glue.c 20 Feb 2005 23:49:27 -0000
1.84

This file does not include <linux/config.h>.

Doesn't need to -- sym_glue.h does.

Quoted 4 lines
Quoted 2 lines

--- drivers/scsi/sym53c8xx_2/sym_hipd.c 16 Feb 2005 20:54:02 -0000
1.48

ditto

ditto.

Signature · 6 lines
"Next the statesmen will invent cheap lies, putting the blame upon 
the nation that is attacked, and every man will be glad of those
conscience-soothing falsities, and will diligently study them, and refuse
to examine any refutations of them; and thus he will by and by convince 
himself that the war is just, and will thank God for the better sleep 
he enjoys after this process of grotesque self-deception." -- Mark Twain
#3 lore raw
Quoted 4 lines · Matthew Wilcox
Quoted 1 line · Jeff Garzik

Patch doesn't apply with -p1.

Doesn't matter; I can cope with both.

Irrelevant. It matters to automated patch snarfers, lkml.org users, etc.

Quoted 5 lines
Quoted 4 lines
Quoted 2 lines

--- drivers/scsi/sym53c8xx_2/sym_glue.c 20 Feb 2005 23:49:27 -0000
1.84

This file does not include <linux/config.h>.

Quoted 8 lines

Doesn't need to -- sym_glue.h does.

Quoted 4 lines
Quoted 2 lines

--- drivers/scsi/sym53c8xx_2/sym_hipd.c 16 Feb 2005 20:54:02 -0000
1.48

ditto

ditto.

Incorrect. <linux/config.h> is not a standard include; you need to include linux/config.h in each file that uses a CONFIG_xxx define.

Jeff

#4 lore raw
Quoted 2 lines · Jeff Garzik

Incorrect. <linux/config.h> is not a standard include; you need to include linux/config.h in each file that uses a CONFIG_xxx define.

sym_hipd.c includes "sym_glue.h"
sym_glue.h includes <linux/config.h>
There is no problem.

Signature · 6 lines
"Next the statesmen will invent cheap lies, putting the blame upon 
the nation that is attacked, and every man will be glad of those
conscience-soothing falsities, and will diligently study them, and refuse
to examine any refutations of them; and thus he will by and by convince 
himself that the war is just, and will thank God for the better sleep 
he enjoys after this process of grotesque self-deception." -- Mark Twain
#5 lore raw
Quoted 7 lines · Matthew Wilcox
Quoted 2 lines · Jeff Garzik

Incorrect. <linux/config.h> is not a standard include; you need to include linux/config.h in each file that uses a CONFIG_xxx define.

sym_hipd.c includes "sym_glue.h"
sym_glue.h includes <linux/config.h>
There is no problem.

Irrelevant. Go look at how config.h stuff works.

linux/config.h is a special case with special rules.

The rule is: include linux/config.h _in the file_ where CONFIG_xxx symbol is used.

Jeff

#6 lore raw
Quoted 9 lines · Jeff Garzik
Quoted 7 lines · Matthew Wilcox
Quoted 2 lines · Jeff Garzik

Incorrect. <linux/config.h> is not a standard include; you need to include linux/config.h in each file that uses a CONFIG_xxx define.

sym_hipd.c includes "sym_glue.h"
sym_glue.h includes <linux/config.h>
There is no problem.

Quoted 6 lines

Irrelevant. Go look at how config.h stuff works.

linux/config.h is a special case with special rules.

The rule is: include linux/config.h _in the file_ where CONFIG_xxx symbol is used.

Jeff, you're smoking crack. I just read fixdep.c and looked at drivers/scsi/sym53c8xx_2/.sym_hipd.o.cmd . You're wrong.

Signature · 6 lines
"Next the statesmen will invent cheap lies, putting the blame upon 
the nation that is attacked, and every man will be glad of those
conscience-soothing falsities, and will diligently study them, and refuse
to examine any refutations of them; and thus he will by and by convince 
himself that the war is just, and will thank God for the better sleep 
he enjoys after this process of grotesque self-deception." -- Mark Twain
#7 lore raw
In reply to Jeff Garzik
Quoted 1 line · Jeff Garzik

Irrelevant. It matters to automated patch snarfers, lkml.org users, etc.

Jeff,
I just cut the patch using standard cvs diff. I know SubmittingPatches wants -p0 but I also knew that willy doesn't mind -p1 and he's the maintainer.

Quoted 2 lines

Incorrect. <linux/config.h> is not a standard include; you need to include linux/config.h in each file that uses a CONFIG_xxx define.

ok - I prefer files directly include the headers they depend on. I'll add that and resubmit next week. Then willy can reject that if he wants. :^)

thanks,
grant