ARM: s3c: simplify s3c_irqwake_{e,}intallow definition
authorArnd Bergmann <arnd@arndb.de>
Wed, 16 Dec 2015 17:07:49 +0000 (18:07 +0100)
committerArnd Bergmann <arnd@arndb.de>
Thu, 31 Dec 2015 16:26:18 +0000 (17:26 +0100)
For a long time, gcc has warned about odd configurations on s3c64xx:

In file included from arch/arm/plat-samsung/pm.c:34:0:
arch/arm/mach-s3c64xx/include/mach/pm-core.h:61:0: warning: "s3c_irqwake_eintallow" redefined
 #define s3c_irqwake_eintallow ((1 << 28) - 1)
In file included from arch/arm/plat-samsung/pm.c:33:0:
arch/arm/plat-samsung/include/plat/pm.h:49:0: note: this is the location of the previous definition
 #define s3c_irqwake_eintallow 0

The definitions of s3c_irqwake_intallow and s3c_irqwake_eintallow are a
bit consistent between the various platforms. Things have become easier
now that it's only s3c24xx and s3c64xx that use them at all, so I've tried
to rearrange the definitions to make it more obvious what is going on.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
arch/arm/mach-s3c24xx/include/mach/pm-core.h
arch/arm/mach-s3c24xx/irq-pm.c
arch/arm/mach-s3c64xx/include/mach/pm-core.h
arch/arm/plat-samsung/include/plat/pm.h

index 69459dbbdcad9df7f243286d076e54b2aabf667d..712333fec589214e710992b25cde14600e9c705d 100644 (file)
@@ -85,3 +85,17 @@ static inline void s3c_pm_arch_update_uart(void __iomem *regs,
 
 static inline void s3c_pm_restored_gpios(void) { }
 static inline void samsung_pm_saved_gpios(void) { }
+
+/* state for IRQs over sleep */
+
+/* default is to allow for EINT0..EINT15, and IRQ_RTC as wakeup sources
+ *
+ * set bit to 1 in allow bitfield to enable the wakeup settings on it
+*/
+#ifdef CONFIG_PM_SLEEP
+#define s3c_irqwake_intallow   (1L << 30 | 0xfL)
+#define s3c_irqwake_eintallow  (0x0000fff0L)
+#else
+#define s3c_irqwake_eintallow 0
+#define s3c_irqwake_intallow  0
+#endif
index b91341ef2b2e72b7b39738e55728c0757d551410..417b7a20c2d12374a97945db93bd41dc1ca1ce91 100644 (file)
 
 #include <mach/regs-irq.h>
 #include <mach/regs-gpio.h>
+#include <mach/pm-core.h>
 
 #include <asm/irq.h>
 
-/* state for IRQs over sleep */
-
-/* default is to allow for EINT0..EINT15, and IRQ_RTC as wakeup sources
- *
- * set bit to 1 in allow bitfield to enable the wakeup settings on it
-*/
-
-unsigned long s3c_irqwake_intallow     = 1L << 30 | 0xfL;
-unsigned long s3c_irqwake_eintallow    = 0x0000fff0L;
-
 int s3c_irq_wake(struct irq_data *data, unsigned int state)
 {
        unsigned long irqbit = 1 << data->hwirq;
index 549dadd5f4873bce4c9f166159c14a4d41734479..4a285e97afff3dbaeecdcec9fa725e3c329c79b1 100644 (file)
@@ -59,9 +59,13 @@ static inline void s3c_pm_arch_show_resume_irqs(void)
 
 /* make these defines, we currently do not have any need to change
  * the IRQ wake controls depending on the CPU we are running on */
-
+#ifdef CONFIG_PM_SLEEP
 #define s3c_irqwake_eintallow  ((1 << 28) - 1)
 #define s3c_irqwake_intallow   (~0)
+#else
+#define s3c_irqwake_eintallow 0
+#define s3c_irqwake_intallow  0
+#endif
 
 static inline void s3c_pm_arch_update_uart(void __iomem *regs,
                                           struct pm_uart_save *save)
index 7f415ce74591487b3d4c3c689184b37fc7b49134..9dd562ab084124d51eb7fdfa13e87cfe763d7dd0 100644 (file)
@@ -41,14 +41,6 @@ static inline int s3c64xx_pm_init(void)
 extern unsigned long s3c_irqwake_intmask;
 extern unsigned long s3c_irqwake_eintmask;
 
-/* IRQ masks for IRQs allowed to go to sleep (see irq.c) */
-extern unsigned long s3c_irqwake_intallow;
-#ifdef CONFIG_PM_SLEEP
-extern unsigned long s3c_irqwake_eintallow;
-#else
-#define s3c_irqwake_eintallow 0
-#endif
-
 /* per-cpu sleep functions */
 
 extern void (*pm_cpu_prep)(void);