aboutsummaryrefslogtreecommitdiff
path: root/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c
diff options
context:
space:
mode:
authorMike Westerhof <mwester@dls.net>2008-11-19 17:10:47 +0000
committerAndy Green <agreen@pads.home.warmcat.com>2008-11-19 17:10:47 +0000
commitd1c13ff9ffcfca5288af1645a3b107aeba5f4efd (patch)
tree9a668039ef2fc8b23b537a986aca4dd752fda5b2 /arch/arm/plat-s3c24xx/neo1973_pm_gsm.c
parent3d40a76c45b1c0931d45b44cd52e10fb9b18f813 (diff)
silence-serial-console-gta01.patch
This patch ensures that no console data will go the UART while the GSM mux is switched to the GSM. This is necessary despite the code that disables the console due to the fact that the console resumes before the neo1973_pm_gsm driver, and consoles always resume in the "on" state. Signed-off-by: Mike Westerhof <mwester@dls.net>
Diffstat (limited to 'arch/arm/plat-s3c24xx/neo1973_pm_gsm.c')
-rw-r--r--arch/arm/plat-s3c24xx/neo1973_pm_gsm.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c b/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c
index ab314b405c7..2d4fd617376 100644
--- a/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c
+++ b/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c
@@ -30,6 +30,9 @@
#include <asm/arch/regs-gpioj.h>
#endif
+extern void s3c24xx_serial_console_set_silence(int silence);
+extern void s3c24xx_serial_register_resume_dependency(struct resume_dependency *
+ resume_dependency, int uart_index);
int gta_gsm_interrupts;
EXPORT_SYMBOL(gta_gsm_interrupts);
@@ -100,6 +103,7 @@ static ssize_t gsm_write(struct device *dev, struct device_attribute *attr,
"disconnecting serial console\n");
console_stop(gta01_gsm.con);
+ s3c24xx_serial_console_set_silence(1);
}
if (gta01_gsm.gpio_ngsm_en)
@@ -139,6 +143,7 @@ static ssize_t gsm_write(struct device *dev, struct device_attribute *attr,
s3c2410_gpio_setpin(gta01_gsm.gpio_ngsm_en, 1);
if (gta01_gsm.con) {
+ s3c24xx_serial_console_set_silence(0);
console_start(gta01_gsm.con);
dev_dbg(dev, "powered down GSM, thus enabling "