Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=431d2cd99f9721ad09f859dc65895f30385cc5c6
Commit:     431d2cd99f9721ad09f859dc65895f30385cc5c6
Parent:     eb3b4783ba664fd80d337ae6649f6489493b2387
Author:     Arnaud Patard <[EMAIL PROTECTED]>
AuthorDate: Wed Dec 27 22:56:44 2006 +0100
Committer:  Russell King <[EMAIL PROTECTED]>
CommitDate: Sat Dec 30 17:05:07 2006 +0000

    [ARM] 4073/1: Prevent s3c24xx drivers from including asm/arch/hardware.h 
and asm/arch/irqs.h
    
    As reminded in http://lkml.org/lkml/2006/12/23/26, one should use
    asm/hardware.h and asm/irq.h but absent-minded devs like me tends to use
    asm/arch/hardware.h and/or asm/arch/irqs.h.
    This patch aims at preventing such things.
    
    In order to make it work, I had to modify asm-arm/irq.h too so that it can
    be included from assembly files.
    Also, as a side effect, I had to modify some headers who were using the
    asm/arch/hardware.h or asm/arch/irqs.h.
    
    Signed-off-by: Arnaud Patard <[EMAIL PROTECTED]>
    Signed-off-by: Russell King <[EMAIL PROTECTED]>
---
 include/asm-arm/arch-s3c2410/dma.h         |    2 +-
 include/asm-arm/arch-s3c2410/entry-macro.S |    2 +-
 include/asm-arm/arch-s3c2410/hardware.h    |    4 ++++
 include/asm-arm/arch-s3c2410/irqs.h        |    3 +++
 include/asm-arm/irq.h                      |    5 ++++-
 5 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/include/asm-arm/arch-s3c2410/dma.h 
b/include/asm-arm/arch-s3c2410/dma.h
index 7ac2248..58ffa7b 100644
--- a/include/asm-arm/arch-s3c2410/dma.h
+++ b/include/asm-arm/arch-s3c2410/dma.h
@@ -14,7 +14,7 @@
 #define __ASM_ARCH_DMA_H __FILE__
 
 #include <linux/sysdev.h>
-#include "hardware.h"
+#include <asm/hardware.h>
 
 /*
  * This is the maximum DMA address(physical address) that can be DMAd to.
diff --git a/include/asm-arm/arch-s3c2410/entry-macro.S 
b/include/asm-arm/arch-s3c2410/entry-macro.S
index e09a6b8..1eb4e6b 100644
--- a/include/asm-arm/arch-s3c2410/entry-macro.S
+++ b/include/asm-arm/arch-s3c2410/entry-macro.S
@@ -20,7 +20,7 @@
 #define INTOFFSET      (0x14)
 
 #include <asm/hardware.h>
-#include <asm/arch/irqs.h>
+#include <asm/irq.h>
 
        .macro  get_irqnr_and_base, irqnr, irqstat, base, tmp
 
diff --git a/include/asm-arm/arch-s3c2410/hardware.h 
b/include/asm-arm/arch-s3c2410/hardware.h
index 729565e..6dadf58 100644
--- a/include/asm-arm/arch-s3c2410/hardware.h
+++ b/include/asm-arm/arch-s3c2410/hardware.h
@@ -13,6 +13,10 @@
 #ifndef __ASM_ARCH_HARDWARE_H
 #define __ASM_ARCH_HARDWARE_H
 
+#ifndef __ASM_HARDWARE_H
+#error "Do not include this directly, instead #include <asm/hardware.h>"
+#endif
+
 #ifndef __ASSEMBLY__
 
 /* external functions for GPIO support
diff --git a/include/asm-arm/arch-s3c2410/irqs.h 
b/include/asm-arm/arch-s3c2410/irqs.h
index 39a6982..4b7cff4 100644
--- a/include/asm-arm/arch-s3c2410/irqs.h
+++ b/include/asm-arm/arch-s3c2410/irqs.h
@@ -12,6 +12,9 @@
 #ifndef __ASM_ARCH_IRQS_H
 #define __ASM_ARCH_IRQS_H __FILE__
 
+#ifndef __ASM_ARM_IRQ_H
+#error "Do not include this directly, instead #include <asm/irq.h>"
+#endif
 
 /* we keep the first set of CPU IRQs out of the range of
  * the ISA space, so that the PC104 has them to itself
diff --git a/include/asm-arm/irq.h b/include/asm-arm/irq.h
index 283af50..1b882a2 100644
--- a/include/asm-arm/irq.h
+++ b/include/asm-arm/irq.h
@@ -19,7 +19,6 @@
 #define NO_IRQ ((unsigned int)(-1))
 #endif
 
-struct irqaction;
 
 /*
  * Migration helpers
@@ -37,6 +36,10 @@ struct irqaction;
 #define IRQT_HIGH      (__IRQT_HIGHLVL)
 #define IRQT_PROBE     IRQ_TYPE_PROBE
 
+#ifndef __ASSEMBLY__
+struct irqaction;
 extern void migrate_irqs(void);
 #endif
 
+#endif
+
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to