linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/4] sparse irq fixes for pxa and sa1100
@ 2012-02-17  3:32 Rob Herring
  2012-02-17  3:32 ` [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion Rob Herring
                   ` (3 more replies)
  0 siblings, 4 replies; 16+ messages in thread
From: Rob Herring @ 2012-02-17  3:32 UTC (permalink / raw)
  To: linux-arm-kernel

From: Rob Herring <rob.herring@calxeda.com>

Russell,

Here's fixes for sa1100 and pxa. This is based on your for-next branch.
I've built all the boards for both, but there could be some more drivers
lurking if they aren't enabled in the defconfigs. I'm running an all
defconfig build now.

I've published the branch below if you want to pull the changes. I'm going
to be offline most of the next 4 days.

Also, I found a few other unrelated things breaking builds, but haven't done
a fix:
-xip mtd is broken on pxa.
-exynos cpufreq needs to depend on exynos.

Rob

The following changes since commit 41bc99e49cc9ab74a4f1a5083d79231fd6ea2704:

  Merge branch 'devel-stable' into for-next (2012-02-16 00:34:44 +0000)

are available in the git repository at:

  git://sources.calxeda.com/kernel/linux.git sparse-irq-fixes

Rob Herring (4):
  ARM: sa1100: fix sa1100 after sparse irq conversion
  ARM: sa1100: fix simpad compile error
  ARM: pxa: mainstone: add missing include for IRQ_BOARD_START
  rtc: sa1100: include mach/irqs.h instead of asm/irq.h

 arch/arm/mach-pxa/include/mach/mainstone.h |    2 ++
 arch/arm/mach-sa1100/assabet.c             |    2 ++
 arch/arm/mach-sa1100/badge4.c              |    1 +
 arch/arm/mach-sa1100/cerf.c                |    2 ++
 arch/arm/mach-sa1100/collie.c              |    2 ++
 arch/arm/mach-sa1100/generic.c             |    4 +++-
 arch/arm/mach-sa1100/h3100.c               |    2 ++
 arch/arm/mach-sa1100/h3600.c               |    2 ++
 arch/arm/mach-sa1100/hackkit.c             |    5 ++++-
 arch/arm/mach-sa1100/include/mach/irqs.h   |    2 +-
 arch/arm/mach-sa1100/irq.c                 |    1 +
 arch/arm/mach-sa1100/jornada720.c          |    5 ++++-
 arch/arm/mach-sa1100/lart.c                |    2 ++
 arch/arm/mach-sa1100/nanoengine.c          |    2 ++
 arch/arm/mach-sa1100/neponset.c            |    1 +
 arch/arm/mach-sa1100/pleb.c                |    1 +
 arch/arm/mach-sa1100/shannon.c             |    2 ++
 arch/arm/mach-sa1100/simpad.c              |    4 +++-
 arch/arm/mach-sa1100/ssp.c                 |    1 +
 arch/arm/mach-sa1100/time.c                |    1 +
 drivers/gpio/gpio-sa1100.c                 |    1 +
 drivers/net/ethernet/smsc/smc91x.c         |    4 ++++
 drivers/rtc/rtc-sa1100.c                   |    2 +-
 drivers/tty/serial/sa1100.c                |    1 +
 24 files changed, 46 insertions(+), 6 deletions(-)

-- 
1.7.5.4

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion
  2012-02-17  3:32 [PATCH 0/4] sparse irq fixes for pxa and sa1100 Rob Herring
@ 2012-02-17  3:32 ` Rob Herring
  2012-02-18 23:18   ` Russell King - ARM Linux
                     ` (2 more replies)
  2012-02-17  3:32 ` [PATCH 2/4] ARM: sa1100: fix simpad compile error Rob Herring
                   ` (2 subsequent siblings)
  3 siblings, 3 replies; 16+ messages in thread
From: Rob Herring @ 2012-02-17  3:32 UTC (permalink / raw)
  To: linux-arm-kernel

From: Rob Herring <rob.herring@calxeda.com>

SA1100 was converted to sparse irq in parallel with include of mach/irqs.h
being removed from asm/irq.h when sparse irq is enabled, resulting in lots
of compile errors.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
---
 arch/arm/mach-sa1100/assabet.c           |    2 ++
 arch/arm/mach-sa1100/badge4.c            |    1 +
 arch/arm/mach-sa1100/cerf.c              |    2 ++
 arch/arm/mach-sa1100/collie.c            |    2 ++
 arch/arm/mach-sa1100/generic.c           |    4 +++-
 arch/arm/mach-sa1100/h3100.c             |    2 ++
 arch/arm/mach-sa1100/h3600.c             |    2 ++
 arch/arm/mach-sa1100/hackkit.c           |    5 ++++-
 arch/arm/mach-sa1100/include/mach/irqs.h |    2 +-
 arch/arm/mach-sa1100/irq.c               |    1 +
 arch/arm/mach-sa1100/jornada720.c        |    5 ++++-
 arch/arm/mach-sa1100/lart.c              |    2 ++
 arch/arm/mach-sa1100/nanoengine.c        |    2 ++
 arch/arm/mach-sa1100/neponset.c          |    1 +
 arch/arm/mach-sa1100/pleb.c              |    1 +
 arch/arm/mach-sa1100/shannon.c           |    2 ++
 arch/arm/mach-sa1100/simpad.c            |    2 ++
 arch/arm/mach-sa1100/ssp.c               |    1 +
 arch/arm/mach-sa1100/time.c              |    1 +
 drivers/gpio/gpio-sa1100.c               |    1 +
 drivers/net/ethernet/smsc/smc91x.c       |    4 ++++
 drivers/tty/serial/sa1100.c              |    1 +
 22 files changed, 42 insertions(+), 4 deletions(-)

diff --git a/arch/arm/mach-sa1100/assabet.c b/arch/arm/mach-sa1100/assabet.c
index e708a93..25c662d 100644
--- a/arch/arm/mach-sa1100/assabet.c
+++ b/arch/arm/mach-sa1100/assabet.c
@@ -39,6 +39,7 @@
 #include <asm/mach/serial_sa1100.h>
 #include <mach/assabet.h>
 #include <mach/mcp.h>
+#include <mach/irqs.h>
 
 #include "generic.h"
 
@@ -534,6 +535,7 @@ MACHINE_START(ASSABET, "Intel-Assabet")
 	.atag_offset	= 0x100,
 	.fixup		= fixup_assabet,
 	.map_io		= assabet_map_io,
+	.nr_irqs	= SA1100_NR_IRQS,
 	.init_irq	= sa1100_init_irq,
 	.timer		= &sa1100_timer,
 	.init_machine	= assabet_init,
diff --git a/arch/arm/mach-sa1100/badge4.c b/arch/arm/mach-sa1100/badge4.c
index 266ec0f..e0f0c03 100644
--- a/arch/arm/mach-sa1100/badge4.c
+++ b/arch/arm/mach-sa1100/badge4.c
@@ -303,6 +303,7 @@ static void __init badge4_map_io(void)
 MACHINE_START(BADGE4, "Hewlett-Packard Laboratories BadgePAD 4")
 	.atag_offset	= 0x100,
 	.map_io		= badge4_map_io,
+	.nr_irqs	= SA1100_NR_IRQS,
 	.init_irq	= sa1100_init_irq,
 	.timer		= &sa1100_timer,
 #ifdef CONFIG_SA1111
diff --git a/arch/arm/mach-sa1100/cerf.c b/arch/arm/mach-sa1100/cerf.c
index 8015604..6a925de 100644
--- a/arch/arm/mach-sa1100/cerf.c
+++ b/arch/arm/mach-sa1100/cerf.c
@@ -30,6 +30,7 @@
 
 #include <mach/cerf.h>
 #include <mach/mcp.h>
+#include <mach/irqs.h>
 #include "generic.h"
 
 static struct resource cerfuart2_resources[] = {
@@ -130,6 +131,7 @@ static void __init cerf_init(void)
 MACHINE_START(CERF, "Intrinsyc CerfBoard/CerfCube")
 	/* Maintainer: support at intrinsyc.com */
 	.map_io		= cerf_map_io,
+	.nr_irqs	= SA1100_NR_IRQS,
 	.init_irq	= cerf_init_irq,
 	.timer		= &sa1100_timer,
 	.init_machine	= cerf_init,
diff --git a/arch/arm/mach-sa1100/collie.c b/arch/arm/mach-sa1100/collie.c
index d4339d6..6e5ab42 100644
--- a/arch/arm/mach-sa1100/collie.c
+++ b/arch/arm/mach-sa1100/collie.c
@@ -47,6 +47,7 @@
 #include <asm/mach/sharpsl_param.h>
 #include <asm/hardware/locomo.h>
 #include <mach/mcp.h>
+#include <mach/irqs.h>
 
 #include "generic.h"
 
@@ -393,6 +394,7 @@ static void __init collie_map_io(void)
 
 MACHINE_START(COLLIE, "Sharp-Collie")
 	.map_io		= collie_map_io,
+	.nr_irqs	= SA1100_NR_IRQS,
 	.init_irq	= sa1100_init_irq,
 	.timer		= &sa1100_timer,
 	.init_machine	= collie_init,
diff --git a/arch/arm/mach-sa1100/generic.c b/arch/arm/mach-sa1100/generic.c
index 97e9bdf..b184704 100644
--- a/arch/arm/mach-sa1100/generic.c
+++ b/arch/arm/mach-sa1100/generic.c
@@ -23,12 +23,14 @@
 #include <video/sa1100fb.h>
 
 #include <asm/div64.h>
-#include <mach/hardware.h>
 #include <asm/system.h>
 #include <asm/mach/map.h>
 #include <asm/mach/flash.h>
 #include <asm/irq.h>
 
+#include <mach/hardware.h>
+#include <mach/irqs.h>
+
 #include "generic.h"
 
 unsigned int reset_status;
diff --git a/arch/arm/mach-sa1100/h3100.c b/arch/arm/mach-sa1100/h3100.c
index f23e7d0..b2e8d0f 100644
--- a/arch/arm/mach-sa1100/h3100.c
+++ b/arch/arm/mach-sa1100/h3100.c
@@ -21,6 +21,7 @@
 #include <asm/mach/irda.h>
 
 #include <mach/h3xxx.h>
+#include <mach/irqs.h>
 
 #include "generic.h"
 
@@ -105,6 +106,7 @@ static void __init h3100_mach_init(void)
 MACHINE_START(H3100, "Compaq iPAQ H3100")
 	.atag_offset	= 0x100,
 	.map_io		= h3100_map_io,
+	.nr_irqs	= SA1100_NR_IRQS,
 	.init_irq	= sa1100_init_irq,
 	.timer		= &sa1100_timer,
 	.init_machine	= h3100_mach_init,
diff --git a/arch/arm/mach-sa1100/h3600.c b/arch/arm/mach-sa1100/h3600.c
index 2feac56..cb6659f 100644
--- a/arch/arm/mach-sa1100/h3600.c
+++ b/arch/arm/mach-sa1100/h3600.c
@@ -21,6 +21,7 @@
 #include <asm/mach/irda.h>
 
 #include <mach/h3xxx.h>
+#include <mach/irqs.h>
 
 #include "generic.h"
 
@@ -155,6 +156,7 @@ static void __init h3600_mach_init(void)
 MACHINE_START(H3600, "Compaq iPAQ H3600")
 	.atag_offset	= 0x100,
 	.map_io		= h3600_map_io,
+	.nr_irqs	= SA1100_NR_IRQS,
 	.init_irq	= sa1100_init_irq,
 	.timer		= &sa1100_timer,
 	.init_machine	= h3600_mach_init,
diff --git a/arch/arm/mach-sa1100/hackkit.c b/arch/arm/mach-sa1100/hackkit.c
index 37d381a..55052e4 100644
--- a/arch/arm/mach-sa1100/hackkit.c
+++ b/arch/arm/mach-sa1100/hackkit.c
@@ -22,7 +22,6 @@
 #include <linux/mtd/mtd.h>
 #include <linux/mtd/partitions.h>
 
-#include <mach/hardware.h>
 #include <asm/mach-types.h>
 #include <asm/setup.h>
 #include <asm/page.h>
@@ -35,6 +34,9 @@
 #include <asm/mach/irq.h>
 #include <asm/mach/serial_sa1100.h>
 
+#include <mach/hardware.h>
+#include <mach/irqs.h>
+
 #include "generic.h"
 
 /**********************************************************************
@@ -194,6 +196,7 @@ static void __init hackkit_init(void)
 MACHINE_START(HACKKIT, "HackKit Cpu Board")
 	.atag_offset	= 0x100,
 	.map_io		= hackkit_map_io,
+	.nr_irqs	= SA1100_NR_IRQS,
 	.init_irq	= sa1100_init_irq,
 	.timer		= &sa1100_timer,
 	.init_machine	= hackkit_init,
diff --git a/arch/arm/mach-sa1100/include/mach/irqs.h b/arch/arm/mach-sa1100/include/mach/irqs.h
index db0699a..ce3bb03 100644
--- a/arch/arm/mach-sa1100/include/mach/irqs.h
+++ b/arch/arm/mach-sa1100/include/mach/irqs.h
@@ -83,4 +83,4 @@
 #define NR_IRQS_LOCOMO		0
 #endif
 
-#define NR_IRQS (IRQ_BOARD_START + NR_IRQS_LOCOMO)
+#define SA1100_NR_IRQS (IRQ_BOARD_START + NR_IRQS_LOCOMO)
diff --git a/arch/arm/mach-sa1100/irq.c b/arch/arm/mach-sa1100/irq.c
index 5d12a30..516ccc2 100644
--- a/arch/arm/mach-sa1100/irq.c
+++ b/arch/arm/mach-sa1100/irq.c
@@ -17,6 +17,7 @@
 #include <linux/syscore_ops.h>
 
 #include <mach/hardware.h>
+#include <mach/irqs.h>
 #include <asm/mach/irq.h>
 
 #include "generic.h"
diff --git a/arch/arm/mach-sa1100/jornada720.c b/arch/arm/mach-sa1100/jornada720.c
index 0c9a0bd..cfcaaef 100644
--- a/arch/arm/mach-sa1100/jornada720.c
+++ b/arch/arm/mach-sa1100/jornada720.c
@@ -23,7 +23,6 @@
 #include <linux/mtd/partitions.h>
 #include <video/s1d13xxxfb.h>
 
-#include <mach/hardware.h>
 #include <asm/hardware/sa1111.h>
 #include <asm/irq.h>
 #include <asm/page.h>
@@ -34,6 +33,9 @@
 #include <asm/mach/map.h>
 #include <asm/mach/serial_sa1100.h>
 
+#include <mach/hardware.h>
+#include <mach/irqs.h>
+
 #include "generic.h"
 
 /*
@@ -343,6 +345,7 @@ MACHINE_START(JORNADA720, "HP Jornada 720")
 	/* Maintainer: Kristoffer Ericson <Kristoffer.Ericson@gmail.com> */
 	.atag_offset	= 0x100,
 	.map_io		= jornada720_map_io,
+	.nr_irqs	= SA1100_NR_IRQS,
 	.init_irq	= sa1100_init_irq,
 	.timer		= &sa1100_timer,
 	.init_machine	= jornada720_mach_init,
diff --git a/arch/arm/mach-sa1100/lart.c b/arch/arm/mach-sa1100/lart.c
index 570f75f..eb6534e 100644
--- a/arch/arm/mach-sa1100/lart.c
+++ b/arch/arm/mach-sa1100/lart.c
@@ -17,6 +17,7 @@
 #include <asm/mach/map.h>
 #include <asm/mach/serial_sa1100.h>
 #include <mach/mcp.h>
+#include <mach/irqs.h>
 
 #include "generic.h"
 
@@ -143,6 +144,7 @@ static void __init lart_map_io(void)
 MACHINE_START(LART, "LART")
 	.atag_offset	= 0x100,
 	.map_io		= lart_map_io,
+	.nr_irqs	= SA1100_NR_IRQS,
 	.init_irq	= sa1100_init_irq,
 	.init_machine	= lart_init,
 	.timer		= &sa1100_timer,
diff --git a/arch/arm/mach-sa1100/nanoengine.c b/arch/arm/mach-sa1100/nanoengine.c
index 3923911..8f6446b 100644
--- a/arch/arm/mach-sa1100/nanoengine.c
+++ b/arch/arm/mach-sa1100/nanoengine.c
@@ -28,6 +28,7 @@
 
 #include <mach/hardware.h>
 #include <mach/nanoengine.h>
+#include <mach/irqs.h>
 
 #include "generic.h"
 
@@ -107,6 +108,7 @@ static void __init nanoengine_init(void)
 MACHINE_START(NANOENGINE, "BSE nanoEngine")
 	.atag_offset	= 0x100,
 	.map_io		= nanoengine_map_io,
+	.nr_irqs	= SA1100_NR_IRQS,
 	.init_irq	= sa1100_init_irq,
 	.timer		= &sa1100_timer,
 	.init_machine	= nanoengine_init,
diff --git a/arch/arm/mach-sa1100/neponset.c b/arch/arm/mach-sa1100/neponset.c
index 3e43af4..6c58f01 100644
--- a/arch/arm/mach-sa1100/neponset.c
+++ b/arch/arm/mach-sa1100/neponset.c
@@ -21,6 +21,7 @@
 #include <mach/hardware.h>
 #include <mach/assabet.h>
 #include <mach/neponset.h>
+#include <mach/irqs.h>
 
 #define NEP_IRQ_SMC91X	0
 #define NEP_IRQ_USAR	1
diff --git a/arch/arm/mach-sa1100/pleb.c b/arch/arm/mach-sa1100/pleb.c
index ca5d33b..1602575 100644
--- a/arch/arm/mach-sa1100/pleb.c
+++ b/arch/arm/mach-sa1100/pleb.c
@@ -131,6 +131,7 @@ static void __init pleb_map_io(void)
 
 MACHINE_START(PLEB, "PLEB")
 	.map_io		= pleb_map_io,
+	.nr_irqs	= SA1100_NR_IRQS,
 	.init_irq	= sa1100_init_irq,
 	.timer		= &sa1100_timer,
 	.init_machine   = pleb_init,
diff --git a/arch/arm/mach-sa1100/shannon.c b/arch/arm/mach-sa1100/shannon.c
index 08bb122..ca8bf59 100644
--- a/arch/arm/mach-sa1100/shannon.c
+++ b/arch/arm/mach-sa1100/shannon.c
@@ -21,6 +21,7 @@
 #include <asm/mach/serial_sa1100.h>
 #include <mach/mcp.h>
 #include <mach/shannon.h>
+#include <mach/irqs.h>
 
 #include "generic.h"
 
@@ -99,6 +100,7 @@ static void __init shannon_map_io(void)
 MACHINE_START(SHANNON, "Shannon (AKA: Tuxscreen)")
 	.atag_offset	= 0x100,
 	.map_io		= shannon_map_io,
+	.nr_irqs	= SA1100_NR_IRQS,
 	.init_irq	= sa1100_init_irq,
 	.timer		= &sa1100_timer,
 	.init_machine	= shannon_init,
diff --git a/arch/arm/mach-sa1100/simpad.c b/arch/arm/mach-sa1100/simpad.c
index 255c37d..0a08d71 100644
--- a/arch/arm/mach-sa1100/simpad.c
+++ b/arch/arm/mach-sa1100/simpad.c
@@ -27,6 +27,7 @@
 #include <asm/mach/serial_sa1100.h>
 #include <mach/mcp.h>
 #include <mach/simpad.h>
+#include <mach/irqs.h>
 
 #include <linux/serial_core.h>
 #include <linux/ioport.h>
@@ -393,6 +394,7 @@ MACHINE_START(SIMPAD, "Simpad")
 	/* Maintainer: Holger Freyther */
 	.atag_offset	= 0x100,
 	.map_io		= simpad_map_io,
+	.nr_irqs	= SA1100_NR_IRQS,
 	.init_irq	= sa1100_init_irq,
 	.timer		= &sa1100_timer,
 	.restart	= sa11x0_restart,
diff --git a/arch/arm/mach-sa1100/ssp.c b/arch/arm/mach-sa1100/ssp.c
index b20ff93..1c14617 100644
--- a/arch/arm/mach-sa1100/ssp.c
+++ b/arch/arm/mach-sa1100/ssp.c
@@ -21,6 +21,7 @@
 
 #include <asm/irq.h>
 #include <mach/hardware.h>
+#include <mach/irqs.h>
 #include <asm/hardware/ssp.h>
 
 #define TIMEOUT 100000
diff --git a/arch/arm/mach-sa1100/time.c b/arch/arm/mach-sa1100/time.c
index 69e3353..6af26e8 100644
--- a/arch/arm/mach-sa1100/time.c
+++ b/arch/arm/mach-sa1100/time.c
@@ -18,6 +18,7 @@
 #include <asm/mach/time.h>
 #include <asm/sched_clock.h>
 #include <mach/hardware.h>
+#include <mach/irqs.h>
 
 static u32 notrace sa1100_read_sched_clock(void)
 {
diff --git a/drivers/gpio/gpio-sa1100.c b/drivers/gpio/gpio-sa1100.c
index 7eecf69..8ea3b33 100644
--- a/drivers/gpio/gpio-sa1100.c
+++ b/drivers/gpio/gpio-sa1100.c
@@ -12,6 +12,7 @@
 #include <linux/module.h>
 
 #include <mach/hardware.h>
+#include <mach/irqs.h>
 
 static int sa1100_gpio_get(struct gpio_chip *chip, unsigned offset)
 {
diff --git a/drivers/net/ethernet/smsc/smc91x.c b/drivers/net/ethernet/smsc/smc91x.c
index 0dba050..0c16c0a 100644
--- a/drivers/net/ethernet/smsc/smc91x.c
+++ b/drivers/net/ethernet/smsc/smc91x.c
@@ -89,6 +89,10 @@ static const char version[] =
 
 #include <asm/io.h>
 
+#if defined(CONFIG_SA1100_ASSABET)
+#include <mach/neponset.h>
+#endif
+
 #include "smc91x.h"
 
 #ifndef SMC_NOWAIT
diff --git a/drivers/tty/serial/sa1100.c b/drivers/tty/serial/sa1100.c
index ef7a21a..2ca5959 100644
--- a/drivers/tty/serial/sa1100.c
+++ b/drivers/tty/serial/sa1100.c
@@ -38,6 +38,7 @@
 
 #include <asm/irq.h>
 #include <mach/hardware.h>
+#include <mach/irqs.h>
 #include <asm/mach/serial_sa1100.h>
 
 /* We've been assigned a range on the "Low-density serial ports" major */
-- 
1.7.5.4

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH 2/4] ARM: sa1100: fix simpad compile error
  2012-02-17  3:32 [PATCH 0/4] sparse irq fixes for pxa and sa1100 Rob Herring
  2012-02-17  3:32 ` [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion Rob Herring
@ 2012-02-17  3:32 ` Rob Herring
  2012-02-17  3:32 ` [PATCH 3/4] ARM: pxa: mainstone: add missing include for IRQ_BOARD_START Rob Herring
  2012-02-17  3:32 ` [PATCH 4/4] rtc: sa1100: include mach/irqs.h instead of asm/irq.h Rob Herring
  3 siblings, 0 replies; 16+ messages in thread
From: Rob Herring @ 2012-02-17  3:32 UTC (permalink / raw)
  To: linux-arm-kernel

From: Rob Herring <rob.herring@calxeda.com>

simpad_ucb1x00_data reference has an extra '&', so remove it.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
---
 arch/arm/mach-sa1100/simpad.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/arm/mach-sa1100/simpad.c b/arch/arm/mach-sa1100/simpad.c
index 0a08d71..4c6ec9a 100644
--- a/arch/arm/mach-sa1100/simpad.c
+++ b/arch/arm/mach-sa1100/simpad.c
@@ -189,7 +189,7 @@ static struct ucb1x00_plat_data simpad_ucb1x00_data = {
 static struct mcp_plat_data simpad_mcp_data = {
 	.mccr0		= MCCR0_ADM,
 	.sclk_rate	= 11981000,
-	.codec_pdata	= &&simpad_ucb1x00_data,
+	.codec_pdata	= &simpad_ucb1x00_data,
 };
 
 
-- 
1.7.5.4

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH 3/4] ARM: pxa: mainstone: add missing include for IRQ_BOARD_START
  2012-02-17  3:32 [PATCH 0/4] sparse irq fixes for pxa and sa1100 Rob Herring
  2012-02-17  3:32 ` [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion Rob Herring
  2012-02-17  3:32 ` [PATCH 2/4] ARM: sa1100: fix simpad compile error Rob Herring
@ 2012-02-17  3:32 ` Rob Herring
  2012-02-17  3:32 ` [PATCH 4/4] rtc: sa1100: include mach/irqs.h instead of asm/irq.h Rob Herring
  3 siblings, 0 replies; 16+ messages in thread
From: Rob Herring @ 2012-02-17  3:32 UTC (permalink / raw)
  To: linux-arm-kernel

From: Rob Herring <rob.herring@calxeda.com>

As part of mach/irqs.h include removal from sparse, mainstone.h was missed.
This fixes the compile of the pcmcia driver.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
---
 arch/arm/mach-pxa/include/mach/mainstone.h |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-pxa/include/mach/mainstone.h b/arch/arm/mach-pxa/include/mach/mainstone.h
index 4c2d11c..1bfc4e8 100644
--- a/arch/arm/mach-pxa/include/mach/mainstone.h
+++ b/arch/arm/mach-pxa/include/mach/mainstone.h
@@ -13,6 +13,8 @@
 #ifndef ASM_ARCH_MAINSTONE_H
 #define ASM_ARCH_MAINSTONE_H
 
+#include <mach/irqs.h>
+
 #define MST_ETH_PHYS		PXA_CS4_PHYS
 
 #define MST_FPGA_PHYS		PXA_CS2_PHYS
-- 
1.7.5.4

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH 4/4] rtc: sa1100: include mach/irqs.h instead of asm/irq.h
  2012-02-17  3:32 [PATCH 0/4] sparse irq fixes for pxa and sa1100 Rob Herring
                   ` (2 preceding siblings ...)
  2012-02-17  3:32 ` [PATCH 3/4] ARM: pxa: mainstone: add missing include for IRQ_BOARD_START Rob Herring
@ 2012-02-17  3:32 ` Rob Herring
  3 siblings, 0 replies; 16+ messages in thread
From: Rob Herring @ 2012-02-17  3:32 UTC (permalink / raw)
  To: linux-arm-kernel

From: Rob Herring <rob.herring@calxeda.com>

Since asm/irq.h may not include mach/irqs.h, include mach/irqs.h directly.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
---
 drivers/rtc/rtc-sa1100.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/rtc/rtc-sa1100.c b/drivers/rtc/rtc-sa1100.c
index cb9a585..e8f1add 100644
--- a/drivers/rtc/rtc-sa1100.c
+++ b/drivers/rtc/rtc-sa1100.c
@@ -32,7 +32,7 @@
 #include <linux/bitops.h>
 
 #include <mach/hardware.h>
-#include <asm/irq.h>
+#include <mach/irqs.h>
 
 #ifdef CONFIG_ARCH_PXA
 #include <mach/regs-rtc.h>
-- 
1.7.5.4

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion
  2012-02-17  3:32 ` [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion Rob Herring
@ 2012-02-18 23:18   ` Russell King - ARM Linux
  2012-02-19 15:21     ` Rob Herring
  2012-02-18 23:20   ` Russell King - ARM Linux
  2012-02-23 22:11   ` Russell King - ARM Linux
  2 siblings, 1 reply; 16+ messages in thread
From: Russell King - ARM Linux @ 2012-02-18 23:18 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, Feb 16, 2012 at 09:32:11PM -0600, Rob Herring wrote:
> From: Rob Herring <rob.herring@calxeda.com>
> 
> SA1100 was converted to sparse irq in parallel with include of mach/irqs.h
> being removed from asm/irq.h when sparse irq is enabled, resulting in lots
> of compile errors.

Can this be applied before the change to enable sparse IRQ for sa11x0
platforms without breaking them?

Thanks.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion
  2012-02-17  3:32 ` [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion Rob Herring
  2012-02-18 23:18   ` Russell King - ARM Linux
@ 2012-02-18 23:20   ` Russell King - ARM Linux
  2012-02-23 22:11   ` Russell King - ARM Linux
  2 siblings, 0 replies; 16+ messages in thread
From: Russell King - ARM Linux @ 2012-02-18 23:20 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, Feb 16, 2012 at 09:32:11PM -0600, Rob Herring wrote:
> diff --git a/arch/arm/mach-sa1100/jornada720.c b/arch/arm/mach-sa1100/jornada720.c
> index 0c9a0bd..cfcaaef 100644
> --- a/arch/arm/mach-sa1100/jornada720.c
> +++ b/arch/arm/mach-sa1100/jornada720.c
> @@ -23,7 +23,6 @@
>  #include <linux/mtd/partitions.h>
>  #include <video/s1d13xxxfb.h>
>  
> -#include <mach/hardware.h>
>  #include <asm/hardware/sa1111.h>
>  #include <asm/irq.h>
>  #include <asm/page.h>
> @@ -34,6 +33,9 @@
>  #include <asm/mach/map.h>
>  #include <asm/mach/serial_sa1100.h>
>  
> +#include <mach/hardware.h>
> +#include <mach/irqs.h>

Does this still need asm/irq.h ?

> diff --git a/arch/arm/mach-sa1100/ssp.c b/arch/arm/mach-sa1100/ssp.c
> index b20ff93..1c14617 100644
> --- a/arch/arm/mach-sa1100/ssp.c
> +++ b/arch/arm/mach-sa1100/ssp.c
> @@ -21,6 +21,7 @@
>  
>  #include <asm/irq.h>
>  #include <mach/hardware.h>
> +#include <mach/irqs.h>

Ditto.

> diff --git a/drivers/tty/serial/sa1100.c b/drivers/tty/serial/sa1100.c
> index ef7a21a..2ca5959 100644
> --- a/drivers/tty/serial/sa1100.c
> +++ b/drivers/tty/serial/sa1100.c
> @@ -38,6 +38,7 @@
>  
>  #include <asm/irq.h>
>  #include <mach/hardware.h>
> +#include <mach/irqs.h>

Ditto.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion
  2012-02-18 23:18   ` Russell King - ARM Linux
@ 2012-02-19 15:21     ` Rob Herring
  2012-02-19 19:39       ` Russell King - ARM Linux
  2012-02-21 13:25       ` Russell King - ARM Linux
  0 siblings, 2 replies; 16+ messages in thread
From: Rob Herring @ 2012-02-19 15:21 UTC (permalink / raw)
  To: linux-arm-kernel

On 02/18/2012 05:18 PM, Russell King - ARM Linux wrote:
> On Thu, Feb 16, 2012 at 09:32:11PM -0600, Rob Herring wrote:
>> From: Rob Herring <rob.herring@calxeda.com>
>>
>> SA1100 was converted to sparse irq in parallel with include of mach/irqs.h
>> being removed from asm/irq.h when sparse irq is enabled, resulting in lots
>> of compile errors.
> 
> Can this be applied before the change to enable sparse IRQ for sa11x0
> platforms without breaking them?

All but the rename of NR_IRQS to SA1100_NR_IRQS should be fine, but I
can change it to leave NR_IRQS.

Rob

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion
  2012-02-19 15:21     ` Rob Herring
@ 2012-02-19 19:39       ` Russell King - ARM Linux
  2012-02-21 13:25       ` Russell King - ARM Linux
  1 sibling, 0 replies; 16+ messages in thread
From: Russell King - ARM Linux @ 2012-02-19 19:39 UTC (permalink / raw)
  To: linux-arm-kernel

On Sun, Feb 19, 2012 at 09:21:19AM -0600, Rob Herring wrote:
> On 02/18/2012 05:18 PM, Russell King - ARM Linux wrote:
> > On Thu, Feb 16, 2012 at 09:32:11PM -0600, Rob Herring wrote:
> >> From: Rob Herring <rob.herring@calxeda.com>
> >>
> >> SA1100 was converted to sparse irq in parallel with include of mach/irqs.h
> >> being removed from asm/irq.h when sparse irq is enabled, resulting in lots
> >> of compile errors.
> > 
> > Can this be applied before the change to enable sparse IRQ for sa11x0
> > platforms without breaking them?
> 
> All but the rename of NR_IRQS to SA1100_NR_IRQS should be fine, but I
> can change it to leave NR_IRQS.

That sounds like a good thing to have sorted and merged into my sa11x0
branch before the switching on of SPARSE_IRQ for sa11x0.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion
  2012-02-19 15:21     ` Rob Herring
  2012-02-19 19:39       ` Russell King - ARM Linux
@ 2012-02-21 13:25       ` Russell King - ARM Linux
  2012-02-21 17:02         ` Rob Herring
  1 sibling, 1 reply; 16+ messages in thread
From: Russell King - ARM Linux @ 2012-02-21 13:25 UTC (permalink / raw)
  To: linux-arm-kernel

On Sun, Feb 19, 2012 at 09:21:19AM -0600, Rob Herring wrote:
> On 02/18/2012 05:18 PM, Russell King - ARM Linux wrote:
> > On Thu, Feb 16, 2012 at 09:32:11PM -0600, Rob Herring wrote:
> >> From: Rob Herring <rob.herring@calxeda.com>
> >>
> >> SA1100 was converted to sparse irq in parallel with include of mach/irqs.h
> >> being removed from asm/irq.h when sparse irq is enabled, resulting in lots
> >> of compile errors.
> > 
> > Can this be applied before the change to enable sparse IRQ for sa11x0
> > platforms without breaking them?
> 
> All but the rename of NR_IRQS to SA1100_NR_IRQS should be fine, but I
> can change it to leave NR_IRQS.

This isn't going to work.

If we update stuff to include mach/irqs.h, then we end up with mach/irqs.h
trying to override NR_IRQS in asm/irq.h:

#ifndef CONFIG_SPARSE_IRQ
#include <mach/irqs.h>
#else
#define NR_IRQS NR_IRQS_LEGACY
#endif

which spits out a lovely warning:

In file included from arch/arm/mach-sa1100/irq.c:20:
arch/arm/mach-sa1100/include/mach/irqs.h:86:1: warning: "NR_IRQS" redefined
In file included from arch/arm/include/asm/hardirq.h:6,
                 from include/linux/hardirq.h:7,
                 from include/linux/interrupt.h:12,
                 from arch/arm/mach-sa1100/irq.c:14:
arch/arm/include/asm/irq.h:9:1: warning: this is the location of the previous definition

There's three solutions I can think to this:

1. you need to decouple the SPARSE IRQ conversion from the removal of
   mach/irqs.h, so that there's a clean way to transition
2. I rebase the 100 odd otherwise unrelated sa11x0 patches on top of your
   stuff, which isn't going to be a nice experience.
3. I drop the final commit for this merge window to convert sa11x0 to
   sparse IRQ and the sparse IRQ conversion patch becomes quite large
   (basically meaning that all the includes have to be changed in unison
   with enabling sparse IRQ.)

(1) I think is the right solution, because it means that there's a nice
easy transition path for everyone in the future without requiring (3)
to happen every time.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion
  2012-02-21 13:25       ` Russell King - ARM Linux
@ 2012-02-21 17:02         ` Rob Herring
  2012-02-22 22:09           ` Russell King - ARM Linux
  0 siblings, 1 reply; 16+ messages in thread
From: Rob Herring @ 2012-02-21 17:02 UTC (permalink / raw)
  To: linux-arm-kernel

Russell,

On 02/21/2012 07:25 AM, Russell King - ARM Linux wrote:
> On Sun, Feb 19, 2012 at 09:21:19AM -0600, Rob Herring wrote:
>> On 02/18/2012 05:18 PM, Russell King - ARM Linux wrote:
>>> On Thu, Feb 16, 2012 at 09:32:11PM -0600, Rob Herring wrote:
>>>> From: Rob Herring <rob.herring@calxeda.com>
>>>>
>>>> SA1100 was converted to sparse irq in parallel with include of mach/irqs.h
>>>> being removed from asm/irq.h when sparse irq is enabled, resulting in lots
>>>> of compile errors.
>>>
>>> Can this be applied before the change to enable sparse IRQ for sa11x0
>>> platforms without breaking them?
>>
>> All but the rename of NR_IRQS to SA1100_NR_IRQS should be fine, but I
>> can change it to leave NR_IRQS.
> 
> This isn't going to work.
> 
> If we update stuff to include mach/irqs.h, then we end up with mach/irqs.h
> trying to override NR_IRQS in asm/irq.h:
> 
> #ifndef CONFIG_SPARSE_IRQ
> #include <mach/irqs.h>
> #else
> #define NR_IRQS NR_IRQS_LEGACY
> #endif
> 
> which spits out a lovely warning:
> 
> In file included from arch/arm/mach-sa1100/irq.c:20:
> arch/arm/mach-sa1100/include/mach/irqs.h:86:1: warning: "NR_IRQS" redefined
> In file included from arch/arm/include/asm/hardirq.h:6,
>                  from include/linux/hardirq.h:7,
>                  from include/linux/interrupt.h:12,
>                  from arch/arm/mach-sa1100/irq.c:14:
> arch/arm/include/asm/irq.h:9:1: warning: this is the location of the previous definition
> 

But this only occurs after you converted to SPARSE_IRQ, right? If you
add an "#ifndef NR_IRQS" to mach/irqs.h in your conversion, then
everything should be okay. Then after everything is merged, NR_IRQS can
be removed.

> There's three solutions I can think to this:
> 
> 1. you need to decouple the SPARSE IRQ conversion from the removal of
>    mach/irqs.h, so that there's a clean way to transition
> 2. I rebase the 100 odd otherwise unrelated sa11x0 patches on top of your
>    stuff, which isn't going to be a nice experience.

But the SPARSE_IRQ conversion commit is the last one on your sa11x0
branch. I'm assuming you are okay with rebasing that commit.

> 3. I drop the final commit for this merge window to convert sa11x0 to
>    sparse IRQ and the sparse IRQ conversion patch becomes quite large
>    (basically meaning that all the includes have to be changed in unison
>    with enabling sparse IRQ.)
> 
> (1) I think is the right solution, because it means that there's a nice
> easy transition path for everyone in the future without requiring (3)
> to happen every time.

Can you take a look at my branch sa11x0-sparse-irq I just pushed out.
It's based on your sa11x0 branch with just your sparse irq conversion
commit rebased. I've built it with and without the sparse irq conversion
and also merged my sparse_irq branch in without conflict and built that.

Rob

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion
  2012-02-21 17:02         ` Rob Herring
@ 2012-02-22 22:09           ` Russell King - ARM Linux
  0 siblings, 0 replies; 16+ messages in thread
From: Russell King - ARM Linux @ 2012-02-22 22:09 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Feb 21, 2012 at 11:02:39AM -0600, Rob Herring wrote:
> Russell,
> 
> On 02/21/2012 07:25 AM, Russell King - ARM Linux wrote:
> > On Sun, Feb 19, 2012 at 09:21:19AM -0600, Rob Herring wrote:
> >> On 02/18/2012 05:18 PM, Russell King - ARM Linux wrote:
> >>> On Thu, Feb 16, 2012 at 09:32:11PM -0600, Rob Herring wrote:
> >>>> From: Rob Herring <rob.herring@calxeda.com>
> >>>>
> >>>> SA1100 was converted to sparse irq in parallel with include of mach/irqs.h
> >>>> being removed from asm/irq.h when sparse irq is enabled, resulting in lots
> >>>> of compile errors.
> >>>
> >>> Can this be applied before the change to enable sparse IRQ for sa11x0
> >>> platforms without breaking them?
> >>
> >> All but the rename of NR_IRQS to SA1100_NR_IRQS should be fine, but I
> >> can change it to leave NR_IRQS.
> > 
> > This isn't going to work.
> > 
> > If we update stuff to include mach/irqs.h, then we end up with mach/irqs.h
> > trying to override NR_IRQS in asm/irq.h:
> > 
> > #ifndef CONFIG_SPARSE_IRQ
> > #include <mach/irqs.h>
> > #else
> > #define NR_IRQS NR_IRQS_LEGACY
> > #endif
> > 
> > which spits out a lovely warning:
> > 
> > In file included from arch/arm/mach-sa1100/irq.c:20:
> > arch/arm/mach-sa1100/include/mach/irqs.h:86:1: warning: "NR_IRQS" redefined
> > In file included from arch/arm/include/asm/hardirq.h:6,
> >                  from include/linux/hardirq.h:7,
> >                  from include/linux/interrupt.h:12,
> >                  from arch/arm/mach-sa1100/irq.c:14:
> > arch/arm/include/asm/irq.h:9:1: warning: this is the location of the previous definition
> > 
> 
> But this only occurs after you converted to SPARSE_IRQ, right? If you
> add an "#ifndef NR_IRQS" to mach/irqs.h in your conversion, then
> everything should be okay. Then after everything is merged, NR_IRQS can
> be removed.

Right, I was thinking about the effects of changing this stuff after the
sparse IRQ commit.  But you're right, it can be done before that.

What does need to happen is the fixing of NR_IRQS etc needs to be part
of the very same commit which enables sparse IRQ.

> Can you take a look at my branch sa11x0-sparse-irq I just pushed out.
> It's based on your sa11x0 branch with just your sparse irq conversion
> commit rebased. I've built it with and without the sparse irq conversion
> and also merged my sparse_irq branch in without conflict and built that.

I'll take your word for it, and if you want to throw the relevant commits
at the patch system, I'll merge them into the enormous sa11x0 branch. I
need to drop the asoc branch out of it before the next merge window though
as I'm not planning to push that just yet.

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion
  2012-02-17  3:32 ` [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion Rob Herring
  2012-02-18 23:18   ` Russell King - ARM Linux
  2012-02-18 23:20   ` Russell King - ARM Linux
@ 2012-02-23 22:11   ` Russell King - ARM Linux
  2012-02-23 22:24     ` Rob Herring
  2 siblings, 1 reply; 16+ messages in thread
From: Russell King - ARM Linux @ 2012-02-23 22:11 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, Feb 16, 2012 at 09:32:11PM -0600, Rob Herring wrote:
> diff --git a/drivers/net/ethernet/smsc/smc91x.c b/drivers/net/ethernet/smsc/smc91x.c
> index 0dba050..0c16c0a 100644
> --- a/drivers/net/ethernet/smsc/smc91x.c
> +++ b/drivers/net/ethernet/smsc/smc91x.c
> @@ -89,6 +89,10 @@ static const char version[] =
>  
>  #include <asm/io.h>
>  
> +#if defined(CONFIG_SA1100_ASSABET)
> +#include <mach/neponset.h>
> +#endif
> +
>  #include "smc91x.h"
>  
>  #ifndef SMC_NOWAIT

Why do you need this include when smc91x.h just below does this:

#elif defined(CONFIG_SA1100_ASSABET)

#include <mach/neponset.h>

/* We can only do 8-bit reads and writes in the static memory space. */
#define SMC_CAN_USE_8BIT        1
#define SMC_CAN_USE_16BIT       0
#define SMC_CAN_USE_32BIT       0
#define SMC_NOWAIT              1

/* The first two address lines aren't connected... */
#define SMC_IO_SHIFT            2

#define SMC_inb(a, r)           readb((a) + (r))
#define SMC_outb(v, a, r)       writeb(v, (a) + (r))
#define SMC_insb(a, r, p, l)    readsb((a) + (r), p, (l))
#define SMC_outsb(a, r, p, l)   writesb((a) + (r), p, (l))
#define SMC_IRQ_FLAGS           (-1)    /* from resource */

My guess is you have PLEB enabled which overrides this definition.  Yes,
this driver is rather horrible in this regard...

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion
  2012-02-23 22:11   ` Russell King - ARM Linux
@ 2012-02-23 22:24     ` Rob Herring
  2012-02-23 22:25       ` Russell King - ARM Linux
  0 siblings, 1 reply; 16+ messages in thread
From: Rob Herring @ 2012-02-23 22:24 UTC (permalink / raw)
  To: linux-arm-kernel

On 02/23/2012 04:11 PM, Russell King - ARM Linux wrote:
> On Thu, Feb 16, 2012 at 09:32:11PM -0600, Rob Herring wrote:
>> diff --git a/drivers/net/ethernet/smsc/smc91x.c b/drivers/net/ethernet/smsc/smc91x.c
>> index 0dba050..0c16c0a 100644
>> --- a/drivers/net/ethernet/smsc/smc91x.c
>> +++ b/drivers/net/ethernet/smsc/smc91x.c
>> @@ -89,6 +89,10 @@ static const char version[] =
>>  
>>  #include <asm/io.h>
>>  
>> +#if defined(CONFIG_SA1100_ASSABET)
>> +#include <mach/neponset.h>
>> +#endif
>> +
>>  #include "smc91x.h"
>>  
>>  #ifndef SMC_NOWAIT
> 
> Why do you need this include when smc91x.h just below does this:
> 
> #elif defined(CONFIG_SA1100_ASSABET)
> 
> #include <mach/neponset.h>
> 
> /* We can only do 8-bit reads and writes in the static memory space. */
> #define SMC_CAN_USE_8BIT        1
> #define SMC_CAN_USE_16BIT       0
> #define SMC_CAN_USE_32BIT       0
> #define SMC_NOWAIT              1
> 
> /* The first two address lines aren't connected... */
> #define SMC_IO_SHIFT            2
> 
> #define SMC_inb(a, r)           readb((a) + (r))
> #define SMC_outb(v, a, r)       writeb(v, (a) + (r))
> #define SMC_insb(a, r, p, l)    readsb((a) + (r), p, (l))
> #define SMC_outsb(a, r, p, l)   writesb((a) + (r), p, (l))
> #define SMC_IRQ_FLAGS           (-1)    /* from resource */
> 
> My guess is you have PLEB enabled which overrides this definition.  Yes,
> this driver is rather horrible in this regard...

Yes, that's right. I assumed I had broken things and neponset.h was no
longer getting implicitly included. I guess it's not really a valid
config to have both enabled if you want working networking. What do you
want to do here?

Rob

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion
  2012-02-23 22:24     ` Rob Herring
@ 2012-02-23 22:25       ` Russell King - ARM Linux
  2012-02-23 22:53         ` Russell King - ARM Linux
  0 siblings, 1 reply; 16+ messages in thread
From: Russell King - ARM Linux @ 2012-02-23 22:25 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, Feb 23, 2012 at 04:24:07PM -0600, Rob Herring wrote:
> On 02/23/2012 04:11 PM, Russell King - ARM Linux wrote:
> > On Thu, Feb 16, 2012 at 09:32:11PM -0600, Rob Herring wrote:
> >> diff --git a/drivers/net/ethernet/smsc/smc91x.c b/drivers/net/ethernet/smsc/smc91x.c
> >> index 0dba050..0c16c0a 100644
> >> --- a/drivers/net/ethernet/smsc/smc91x.c
> >> +++ b/drivers/net/ethernet/smsc/smc91x.c
> >> @@ -89,6 +89,10 @@ static const char version[] =
> >>  
> >>  #include <asm/io.h>
> >>  
> >> +#if defined(CONFIG_SA1100_ASSABET)
> >> +#include <mach/neponset.h>
> >> +#endif
> >> +
> >>  #include "smc91x.h"
> >>  
> >>  #ifndef SMC_NOWAIT
> > 
> > Why do you need this include when smc91x.h just below does this:
> > 
> > #elif defined(CONFIG_SA1100_ASSABET)
> > 
> > #include <mach/neponset.h>
> > 
> > /* We can only do 8-bit reads and writes in the static memory space. */
> > #define SMC_CAN_USE_8BIT        1
> > #define SMC_CAN_USE_16BIT       0
> > #define SMC_CAN_USE_32BIT       0
> > #define SMC_NOWAIT              1
> > 
> > /* The first two address lines aren't connected... */
> > #define SMC_IO_SHIFT            2
> > 
> > #define SMC_inb(a, r)           readb((a) + (r))
> > #define SMC_outb(v, a, r)       writeb(v, (a) + (r))
> > #define SMC_insb(a, r, p, l)    readsb((a) + (r), p, (l))
> > #define SMC_outsb(a, r, p, l)   writesb((a) + (r), p, (l))
> > #define SMC_IRQ_FLAGS           (-1)    /* from resource */
> > 
> > My guess is you have PLEB enabled which overrides this definition.  Yes,
> > this driver is rather horrible in this regard...
> 
> Yes, that's right. I assumed I had broken things and neponset.h was no
> longer getting implicitly included. I guess it's not really a valid
> config to have both enabled if you want working networking. What do you
> want to do here?

Probably best to just drop the change to this driver - it needs fixing
properly at some point.  In the mean time, enabling both pleb and neponset
will cause grief... ;(

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion
  2012-02-23 22:25       ` Russell King - ARM Linux
@ 2012-02-23 22:53         ` Russell King - ARM Linux
  0 siblings, 0 replies; 16+ messages in thread
From: Russell King - ARM Linux @ 2012-02-23 22:53 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, Feb 23, 2012 at 10:25:38PM +0000, Russell King - ARM Linux wrote:
> Probably best to just drop the change to this driver - it needs fixing
> properly at some point.  In the mean time, enabling both pleb and neponset
> will cause grief... ;(

In case I wasn't clear, a replacement patch for 7342/1 without the smsc
change please.

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2012-02-23 22:53 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-02-17  3:32 [PATCH 0/4] sparse irq fixes for pxa and sa1100 Rob Herring
2012-02-17  3:32 ` [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion Rob Herring
2012-02-18 23:18   ` Russell King - ARM Linux
2012-02-19 15:21     ` Rob Herring
2012-02-19 19:39       ` Russell King - ARM Linux
2012-02-21 13:25       ` Russell King - ARM Linux
2012-02-21 17:02         ` Rob Herring
2012-02-22 22:09           ` Russell King - ARM Linux
2012-02-18 23:20   ` Russell King - ARM Linux
2012-02-23 22:11   ` Russell King - ARM Linux
2012-02-23 22:24     ` Rob Herring
2012-02-23 22:25       ` Russell King - ARM Linux
2012-02-23 22:53         ` Russell King - ARM Linux
2012-02-17  3:32 ` [PATCH 2/4] ARM: sa1100: fix simpad compile error Rob Herring
2012-02-17  3:32 ` [PATCH 3/4] ARM: pxa: mainstone: add missing include for IRQ_BOARD_START Rob Herring
2012-02-17  3:32 ` [PATCH 4/4] rtc: sa1100: include mach/irqs.h instead of asm/irq.h Rob Herring

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).