summaryrefslogtreecommitdiffstats
path: root/arch/arm/plat-s3c64xx/irq.c
diff options
context:
space:
mode:
authorBen Dooks2008-12-12 01:24:32 +0100
committerBen Dooks2009-05-07 12:04:56 +0200
commit966bcc14386000e8b4dc7bbb426910bcb55a8588 (patch)
tree5b9fe35c74496ace898b5de4d982b0d158c4018e /arch/arm/plat-s3c64xx/irq.c
parent[ARM] S3C64XX: Add generic s3c64xx sys device. (diff)
downloadkernel-qcow2-linux-966bcc14386000e8b4dc7bbb426910bcb55a8588.tar.gz
kernel-qcow2-linux-966bcc14386000e8b4dc7bbb426910bcb55a8588.tar.xz
kernel-qcow2-linux-966bcc14386000e8b4dc7bbb426910bcb55a8588.zip
[ARM] S3C64XX: Add IRQ PM code
Add support for saving the state of the IRQ registers over suspend. This requires moving the S3C64XX UART registers into <plat/regs-serial.h> and adding irq-pm.c which saves the state of all the IRQ registers. The irq-pm.c saves all the IRQ registers, including the IRQ_EINT and IRQ_EINT_GROUP registers as it was easier than adding three different files. Also ensuring that all the registers are restored to the same state as before suspend is considered to be the best thing to do. Note, we do not suspend the VIC here, this is done by the VIC driver itself. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Diffstat (limited to 'arch/arm/plat-s3c64xx/irq.c')
-rw-r--r--arch/arm/plat-s3c64xx/irq.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/arch/arm/plat-s3c64xx/irq.c b/arch/arm/plat-s3c64xx/irq.c
index f22edf7c2d2d..f4c4844f9fdb 100644
--- a/arch/arm/plat-s3c64xx/irq.c
+++ b/arch/arm/plat-s3c64xx/irq.c
@@ -14,12 +14,14 @@
#include <linux/kernel.h>
#include <linux/interrupt.h>
+#include <linux/serial_core.h>
#include <linux/irq.h>
#include <linux/io.h>
#include <asm/hardware/vic.h>
#include <mach/map.h>
+#include <plat/regs-serial.h>
#include <plat/regs-timer.h>
#include <plat/cpu.h>
@@ -135,9 +137,6 @@ static inline unsigned int s3c_irq_uart_bit(unsigned int irq)
}
/* UART interrupt registers, not worth adding to seperate include header */
-#define S3C64XX_UINTP 0x30
-#define S3C64XX_UINTSP 0x34
-#define S3C64XX_UINTM 0x38
static void s3c_irq_uart_mask(unsigned int irq)
{