diff options
author | Olof Johansson <olof@lixom.net> | 2013-02-17 19:03:12 -0500 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2013-02-17 19:03:12 -0500 |
commit | bda7997e34993847bc3129f09a8bc0720ab97b12 (patch) | |
tree | fdefdc9bd6cda42a3f38794d522d28c657144d97 /arch | |
parent | 69eb383ab775840b4656c9ef2442817e17996903 (diff) | |
parent | ebf4762812ebe77ed960543421ec894108315f2f (diff) |
Merge branch 'next/fixes-samsung' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/fixes-non-critical
From Kukjin Kim:
Here is Samsung fixes for v3.9 and it is not a critical fixes.
* 'next/fixes-samsung' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
ARM: dts: Correct pin configuration of SD 4 for exynos4x12-pinctrl
ARM: SAMSUNG: Silence empty switch warning in fimc-core.h
ARM: SAMSUNG: Silence empty switch warning in sdhci.h
ARM: S5PV210: Fix early uart output in fifo mode
ARM: S3C24XX: Fix compile breakage for SMDK2410
ARM: S3C24XX: add missing platform_device.h include for osiris
ARM: S3C24XX: let S3C2412_PM select S3C2412_PM_SLEEP
ARM: SAMSUNG: Gracefully exit on suspend failure
ARM: SAMSUNG: using vsnprintf instead of vsprintf for the limit buffer length 256
ARM: S3C24XX: Make 'clk_msysclk' static
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/boot/dts/exynos4x12-pinctrl.dtsi | 2 | ||||
-rw-r--r-- | arch/arm/mach-exynos/pm.c | 6 | ||||
-rw-r--r-- | arch/arm/mach-s3c24xx/Kconfig | 2 | ||||
-rw-r--r-- | arch/arm/mach-s3c24xx/common-s3c2443.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-s3c24xx/mach-osiris.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-s3c24xx/pm-s3c2412.c | 3 | ||||
-rw-r--r-- | arch/arm/mach-s3c24xx/pm-s3c2416.c | 3 | ||||
-rw-r--r-- | arch/arm/mach-s3c64xx/pm.c | 3 | ||||
-rw-r--r-- | arch/arm/mach-s5p64x0/pm.c | 4 | ||||
-rw-r--r-- | arch/arm/mach-s5pv210/include/mach/uncompress.h | 2 | ||||
-rw-r--r-- | arch/arm/mach-s5pv210/pm.c | 4 | ||||
-rw-r--r-- | arch/arm/plat-samsung/include/plat/fimc-core.h | 2 | ||||
-rw-r--r-- | arch/arm/plat-samsung/include/plat/sdhci.h | 2 | ||||
-rw-r--r-- | arch/arm/plat-samsung/pm.c | 7 |
14 files changed, 30 insertions, 13 deletions
diff --git a/arch/arm/boot/dts/exynos4x12-pinctrl.dtsi b/arch/arm/boot/dts/exynos4x12-pinctrl.dtsi index 8e6115adcd97..099cec79e2ae 100644 --- a/arch/arm/boot/dts/exynos4x12-pinctrl.dtsi +++ b/arch/arm/boot/dts/exynos4x12-pinctrl.dtsi | |||
@@ -661,7 +661,7 @@ | |||
661 | 661 | ||
662 | sd4_bus8: sd4-bus-width8 { | 662 | sd4_bus8: sd4-bus-width8 { |
663 | samsung,pins = "gpk1-3", "gpk1-4", "gpk1-5", "gpk1-6"; | 663 | samsung,pins = "gpk1-3", "gpk1-4", "gpk1-5", "gpk1-6"; |
664 | samsung,pin-function = <3>; | 664 | samsung,pin-function = <4>; |
665 | samsung,pin-pud = <4>; | 665 | samsung,pin-pud = <4>; |
666 | samsung,pin-drv = <3>; | 666 | samsung,pin-drv = <3>; |
667 | }; | 667 | }; |
diff --git a/arch/arm/mach-exynos/pm.c b/arch/arm/mach-exynos/pm.c index b9b539cac81e..5106ab83e593 100644 --- a/arch/arm/mach-exynos/pm.c +++ b/arch/arm/mach-exynos/pm.c | |||
@@ -91,8 +91,8 @@ static int exynos_cpu_suspend(unsigned long arg) | |||
91 | /* issue the standby signal into the pm unit. */ | 91 | /* issue the standby signal into the pm unit. */ |
92 | cpu_do_idle(); | 92 | cpu_do_idle(); |
93 | 93 | ||
94 | /* we should never get past here */ | 94 | pr_info("Failed to suspend the system\n"); |
95 | panic("sleep resumed to originator?"); | 95 | return 1; /* Aborting suspend */ |
96 | } | 96 | } |
97 | 97 | ||
98 | static void exynos_pm_prepare(void) | 98 | static void exynos_pm_prepare(void) |
@@ -282,6 +282,8 @@ static void exynos_pm_resume(void) | |||
282 | if (!(tmp & S5P_CENTRAL_LOWPWR_CFG)) { | 282 | if (!(tmp & S5P_CENTRAL_LOWPWR_CFG)) { |
283 | tmp |= S5P_CENTRAL_LOWPWR_CFG; | 283 | tmp |= S5P_CENTRAL_LOWPWR_CFG; |
284 | __raw_writel(tmp, S5P_CENTRAL_SEQ_CONFIGURATION); | 284 | __raw_writel(tmp, S5P_CENTRAL_SEQ_CONFIGURATION); |
285 | /* clear the wakeup state register */ | ||
286 | __raw_writel(0x0, S5P_WAKEUP_STAT); | ||
285 | /* No need to perform below restore code */ | 287 | /* No need to perform below restore code */ |
286 | goto early_wakeup; | 288 | goto early_wakeup; |
287 | } | 289 | } |
diff --git a/arch/arm/mach-s3c24xx/Kconfig b/arch/arm/mach-s3c24xx/Kconfig index 25df14a9e268..d1e80d0fd671 100644 --- a/arch/arm/mach-s3c24xx/Kconfig +++ b/arch/arm/mach-s3c24xx/Kconfig | |||
@@ -226,6 +226,7 @@ config MACH_QT2410 | |||
226 | config ARCH_SMDK2410 | 226 | config ARCH_SMDK2410 |
227 | bool "SMDK2410/A9M2410" | 227 | bool "SMDK2410/A9M2410" |
228 | select S3C24XX_SMDK | 228 | select S3C24XX_SMDK |
229 | select S3C_DEV_USB_HOST | ||
229 | help | 230 | help |
230 | Say Y here if you are using the SMDK2410 or the derived module A9M2410 | 231 | Say Y here if you are using the SMDK2410 or the derived module A9M2410 |
231 | <http://www.fsforth.de> | 232 | <http://www.fsforth.de> |
@@ -273,6 +274,7 @@ config S3C2412_DMA | |||
273 | 274 | ||
274 | config S3C2412_PM | 275 | config S3C2412_PM |
275 | bool | 276 | bool |
277 | select S3C2412_PM_SLEEP | ||
276 | help | 278 | help |
277 | Internal config node to apply S3C2412 power management | 279 | Internal config node to apply S3C2412 power management |
278 | 280 | ||
diff --git a/arch/arm/mach-s3c24xx/common-s3c2443.c b/arch/arm/mach-s3c24xx/common-s3c2443.c index aeb4a24ff3ed..f6b9f2ef01bd 100644 --- a/arch/arm/mach-s3c24xx/common-s3c2443.c +++ b/arch/arm/mach-s3c24xx/common-s3c2443.c | |||
@@ -132,7 +132,7 @@ static struct clk *clk_msysclk_sources[] = { | |||
132 | [3] = &clk_mpllref, | 132 | [3] = &clk_mpllref, |
133 | }; | 133 | }; |
134 | 134 | ||
135 | struct clksrc_clk clk_msysclk = { | 135 | static struct clksrc_clk clk_msysclk = { |
136 | .clk = { | 136 | .clk = { |
137 | .name = "msysclk", | 137 | .name = "msysclk", |
138 | .parent = &clk_xtal, | 138 | .parent = &clk_xtal, |
diff --git a/arch/arm/mach-s3c24xx/mach-osiris.c b/arch/arm/mach-s3c24xx/mach-osiris.c index bb36d832bd3d..c52100ef2322 100644 --- a/arch/arm/mach-s3c24xx/mach-osiris.c +++ b/arch/arm/mach-s3c24xx/mach-osiris.c | |||
@@ -22,6 +22,7 @@ | |||
22 | #include <linux/clk.h> | 22 | #include <linux/clk.h> |
23 | #include <linux/i2c.h> | 23 | #include <linux/i2c.h> |
24 | #include <linux/io.h> | 24 | #include <linux/io.h> |
25 | #include <linux/platform_device.h> | ||
25 | 26 | ||
26 | #include <linux/i2c/tps65010.h> | 27 | #include <linux/i2c/tps65010.h> |
27 | 28 | ||
diff --git a/arch/arm/mach-s3c24xx/pm-s3c2412.c b/arch/arm/mach-s3c24xx/pm-s3c2412.c index c60f67a75aff..f5dc2b254a5a 100644 --- a/arch/arm/mach-s3c24xx/pm-s3c2412.c +++ b/arch/arm/mach-s3c24xx/pm-s3c2412.c | |||
@@ -48,7 +48,8 @@ static int s3c2412_cpu_suspend(unsigned long arg) | |||
48 | 48 | ||
49 | s3c2412_sleep_enter(); | 49 | s3c2412_sleep_enter(); |
50 | 50 | ||
51 | panic("sleep resumed to originator?"); | 51 | pr_info("Failed to suspend the system\n"); |
52 | return 1; /* Aborting suspend */ | ||
52 | } | 53 | } |
53 | 54 | ||
54 | static void s3c2412_pm_prepare(void) | 55 | static void s3c2412_pm_prepare(void) |
diff --git a/arch/arm/mach-s3c24xx/pm-s3c2416.c b/arch/arm/mach-s3c24xx/pm-s3c2416.c index 1bd4817b8eb8..1a9e8dd194ff 100644 --- a/arch/arm/mach-s3c24xx/pm-s3c2416.c +++ b/arch/arm/mach-s3c24xx/pm-s3c2416.c | |||
@@ -34,7 +34,8 @@ static int s3c2416_cpu_suspend(unsigned long arg) | |||
34 | 34 | ||
35 | s3c2412_sleep_enter(); | 35 | s3c2412_sleep_enter(); |
36 | 36 | ||
37 | panic("sleep resumed to originator?"); | 37 | pr_info("Failed to suspend the system\n"); |
38 | return 1; /* Aborting suspend */ | ||
38 | } | 39 | } |
39 | 40 | ||
40 | static void s3c2416_pm_prepare(void) | 41 | static void s3c2416_pm_prepare(void) |
diff --git a/arch/arm/mach-s3c64xx/pm.c b/arch/arm/mach-s3c64xx/pm.c index d2e1a16690bd..ce8499063228 100644 --- a/arch/arm/mach-s3c64xx/pm.c +++ b/arch/arm/mach-s3c64xx/pm.c | |||
@@ -296,7 +296,8 @@ static int s3c64xx_cpu_suspend(unsigned long arg) | |||
296 | 296 | ||
297 | /* we should never get past here */ | 297 | /* we should never get past here */ |
298 | 298 | ||
299 | panic("sleep resumed to originator?"); | 299 | pr_info("Failed to suspend the system\n"); |
300 | return 1; /* Aborting suspend */ | ||
300 | } | 301 | } |
301 | 302 | ||
302 | /* mapping of interrupts to parts of the wakeup mask */ | 303 | /* mapping of interrupts to parts of the wakeup mask */ |
diff --git a/arch/arm/mach-s5p64x0/pm.c b/arch/arm/mach-s5p64x0/pm.c index 9cba18bfe47b..97c2a08ad490 100644 --- a/arch/arm/mach-s5p64x0/pm.c +++ b/arch/arm/mach-s5p64x0/pm.c | |||
@@ -103,8 +103,8 @@ static int s5p64x0_cpu_suspend(unsigned long arg) | |||
103 | "mcr p15, 0, %0, c7, c10, 4\n\t" | 103 | "mcr p15, 0, %0, c7, c10, 4\n\t" |
104 | "mcr p15, 0, %0, c7, c0, 4" : : "r" (tmp)); | 104 | "mcr p15, 0, %0, c7, c0, 4" : : "r" (tmp)); |
105 | 105 | ||
106 | /* we should never get past here */ | 106 | pr_info("Failed to suspend the system\n"); |
107 | panic("sleep resumed to originator?"); | 107 | return 1; /* Aborting suspend */ |
108 | } | 108 | } |
109 | 109 | ||
110 | /* mapping of interrupts to parts of the wakeup mask */ | 110 | /* mapping of interrupts to parts of the wakeup mask */ |
diff --git a/arch/arm/mach-s5pv210/include/mach/uncompress.h b/arch/arm/mach-s5pv210/include/mach/uncompress.h index 08ff2fda1fb9..ef977ea8546d 100644 --- a/arch/arm/mach-s5pv210/include/mach/uncompress.h +++ b/arch/arm/mach-s5pv210/include/mach/uncompress.h | |||
@@ -19,6 +19,8 @@ | |||
19 | static void arch_detect_cpu(void) | 19 | static void arch_detect_cpu(void) |
20 | { | 20 | { |
21 | /* we do not need to do any cpu detection here at the moment. */ | 21 | /* we do not need to do any cpu detection here at the moment. */ |
22 | fifo_mask = S5PV210_UFSTAT_TXMASK; | ||
23 | fifo_max = 63 << S5PV210_UFSTAT_TXSHIFT; | ||
22 | } | 24 | } |
23 | 25 | ||
24 | #endif /* __ASM_ARCH_UNCOMPRESS_H */ | 26 | #endif /* __ASM_ARCH_UNCOMPRESS_H */ |
diff --git a/arch/arm/mach-s5pv210/pm.c b/arch/arm/mach-s5pv210/pm.c index 736bfb103cbc..2b68a67b6e95 100644 --- a/arch/arm/mach-s5pv210/pm.c +++ b/arch/arm/mach-s5pv210/pm.c | |||
@@ -104,8 +104,8 @@ static int s5pv210_cpu_suspend(unsigned long arg) | |||
104 | "mcr p15, 0, %0, c7, c10, 4\n\t" | 104 | "mcr p15, 0, %0, c7, c10, 4\n\t" |
105 | "wfi" : : "r" (tmp)); | 105 | "wfi" : : "r" (tmp)); |
106 | 106 | ||
107 | /* we should never get past here */ | 107 | pr_info("Failed to suspend the system\n"); |
108 | panic("sleep resumed to originator?"); | 108 | return 1; /* Aborting suspend */ |
109 | } | 109 | } |
110 | 110 | ||
111 | static void s5pv210_pm_prepare(void) | 111 | static void s5pv210_pm_prepare(void) |
diff --git a/arch/arm/plat-samsung/include/plat/fimc-core.h b/arch/arm/plat-samsung/include/plat/fimc-core.h index 945a99d59563..1d6cb2b8b094 100644 --- a/arch/arm/plat-samsung/include/plat/fimc-core.h +++ b/arch/arm/plat-samsung/include/plat/fimc-core.h | |||
@@ -43,6 +43,8 @@ static inline void s3c_fimc_setname(int id, char *name) | |||
43 | s5p_device_fimc3.name = name; | 43 | s5p_device_fimc3.name = name; |
44 | break; | 44 | break; |
45 | #endif | 45 | #endif |
46 | default: | ||
47 | break; | ||
46 | } | 48 | } |
47 | } | 49 | } |
48 | 50 | ||
diff --git a/arch/arm/plat-samsung/include/plat/sdhci.h b/arch/arm/plat-samsung/include/plat/sdhci.h index 151cc9195cf6..9b87f38fc4f4 100644 --- a/arch/arm/plat-samsung/include/plat/sdhci.h +++ b/arch/arm/plat-samsung/include/plat/sdhci.h | |||
@@ -374,6 +374,8 @@ static inline void s3c_sdhci_setname(int id, char *name) | |||
374 | s3c_device_hsmmc3.name = name; | 374 | s3c_device_hsmmc3.name = name; |
375 | break; | 375 | break; |
376 | #endif | 376 | #endif |
377 | default: | ||
378 | break; | ||
377 | } | 379 | } |
378 | } | 380 | } |
379 | 381 | ||
diff --git a/arch/arm/plat-samsung/pm.c b/arch/arm/plat-samsung/pm.c index 15070284343e..002b1472293b 100644 --- a/arch/arm/plat-samsung/pm.c +++ b/arch/arm/plat-samsung/pm.c | |||
@@ -51,7 +51,7 @@ void s3c_pm_dbg(const char *fmt, ...) | |||
51 | char buff[256]; | 51 | char buff[256]; |
52 | 52 | ||
53 | va_start(va, fmt); | 53 | va_start(va, fmt); |
54 | vsprintf(buff, fmt, va); | 54 | vsnprintf(buff, sizeof(buff), fmt, va); |
55 | va_end(va); | 55 | va_end(va); |
56 | 56 | ||
57 | printascii(buff); | 57 | printascii(buff); |
@@ -243,6 +243,7 @@ int (*pm_cpu_sleep)(unsigned long); | |||
243 | 243 | ||
244 | static int s3c_pm_enter(suspend_state_t state) | 244 | static int s3c_pm_enter(suspend_state_t state) |
245 | { | 245 | { |
246 | int ret; | ||
246 | /* ensure the debug is initialised (if enabled) */ | 247 | /* ensure the debug is initialised (if enabled) */ |
247 | 248 | ||
248 | s3c_pm_debug_init(); | 249 | s3c_pm_debug_init(); |
@@ -300,7 +301,9 @@ static int s3c_pm_enter(suspend_state_t state) | |||
300 | * we resume as it saves its own register state and restores it | 301 | * we resume as it saves its own register state and restores it |
301 | * during the resume. */ | 302 | * during the resume. */ |
302 | 303 | ||
303 | cpu_suspend(0, pm_cpu_sleep); | 304 | ret = cpu_suspend(0, pm_cpu_sleep); |
305 | if (ret) | ||
306 | return ret; | ||
304 | 307 | ||
305 | /* restore the system state */ | 308 | /* restore the system state */ |
306 | 309 | ||