From e73ac678d32e5748c73902591922b0e9b5b6c182 Mon Sep 17 00:00:00 2001 From: Jiri Pinkava Date: Thu, 27 May 2010 15:53:03 +0200 Subject: [PATCH 12/14] n30: Basic suspend to ram for Acer n30 / n35 Signed-off-by: Jiri Pinkava --- arch/arm/Makefile | 1 + arch/arm/mach-s3c2410/Kconfig | 1 + arch/arm/mach-s3c2410/Makefile.boot | 11 +++++++---- arch/arm/mach-s3c2410/include/mach/h1940.h | 1 + arch/arm/mach-s3c2410/mach-n30.c | 22 ++++++++++++++++++++++ arch/arm/mach-s3c2410/pm-h1940.S | 2 ++ arch/arm/mach-s3c2410/sleep.S | 3 +++ 7 files changed, 37 insertions(+), 4 deletions(-) diff --git a/arch/arm/Makefile b/arch/arm/Makefile index 59c1ce8..40ec8d4 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile @@ -119,6 +119,7 @@ textofs-y := 0x00008000 textofs-$(CONFIG_ARCH_CLPS711X) := 0x00028000 # We don't want the htc bootloader to corrupt kernel during resume textofs-$(CONFIG_PM_H1940) := 0x00108000 +textofs-$(CONFIG_MACH_N35) := 0x00208000 # SA1111 DMA bug: we don't want the kernel to live in precious DMA-able memory ifeq ($(CONFIG_ARCH_SA1100),y) textofs-$(CONFIG_SA1111) := 0x00208000 diff --git a/arch/arm/mach-s3c2410/Kconfig b/arch/arm/mach-s3c2410/Kconfig index 1d55349..bcb7061 100644 --- a/arch/arm/mach-s3c2410/Kconfig +++ b/arch/arm/mach-s3c2410/Kconfig @@ -98,6 +98,7 @@ config MACH_N30 bool "Acer N30 family" select CPU_S3C2410 select MACH_N35 + select PM_H1940 if PM select S3C_DEV_USB_HOST select S3C_DEV_NAND select S3C2410_SETUP_TS diff --git a/arch/arm/mach-s3c2410/Makefile.boot b/arch/arm/mach-s3c2410/Makefile.boot index 58c1dd7..aaf5bdc 100644 --- a/arch/arm/mach-s3c2410/Makefile.boot +++ b/arch/arm/mach-s3c2410/Makefile.boot @@ -1,7 +1,10 @@ +zreladdr-y := 0x30008000 +params_phys-y := 0x30000100 ifeq ($(CONFIG_PM_H1940),y) - zreladdr-y := 0x30108000 + zreladdr-y := 0x30108000 params_phys-y := 0x30100100 -else - zreladdr-y := 0x30008000 - params_phys-y := 0x30000100 +endif +ifeq ($(CONFIG_MACH_N35),y) + zreladdr-y := 0x30208000 + params_phys-y := 0x30200100 endif diff --git a/arch/arm/mach-s3c2410/include/mach/h1940.h b/arch/arm/mach-s3c2410/include/mach/h1940.h index 4559784..be48128 100644 --- a/arch/arm/mach-s3c2410/include/mach/h1940.h +++ b/arch/arm/mach-s3c2410/include/mach/h1940.h @@ -17,5 +17,6 @@ #define H1940_SUSPEND_CHECK (0x30080000) extern void h1940_pm_return(void); +extern void h1940_pm_return_end(void); #endif /* __ASM_ARCH_H1940_H */ diff --git a/arch/arm/mach-s3c2410/mach-n30.c b/arch/arm/mach-s3c2410/mach-n30.c index 3c784e4..34a7e9e 100644 --- a/arch/arm/mach-s3c2410/mach-n30.c +++ b/arch/arm/mach-s3c2410/mach-n30.c @@ -19,6 +19,7 @@ #include #include +#include #include #include #include @@ -27,6 +28,7 @@ #include #include #include +#include #include #include #include @@ -36,6 +38,7 @@ #include #include +#include #include #include #include @@ -49,6 +52,7 @@ #include #include +#include #include #include #include @@ -58,6 +62,8 @@ #include