Hi Werner,

Little Sean and I test our GSM dialer on GTA02A5. GSM download pin still generates tick tick noise. And the hardware design isn't changed for GTA02A5. So we need to set GSM download output high. Thanks.

Regards,
Willie
Add on/off GSM download gpio. If we don't upgrade gsm firmware, we need to set GPIO output high. It will affect the sound quality, when we set GPIO low.

From: Willie <[EMAIL PROTECTED]>


---

 arch/arm/plat-s3c24xx/neo1973_pm_gsm.c |   14 +++++++++++++-
 include/asm-arm/arch-s3c2410/gta02.h   |    2 +-
 2 files changed, 14 insertions(+), 2 deletions(-)


diff --git a/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c b/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c
index a877ff2..b00fdc5 100644
--- a/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c
+++ b/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c
@@ -25,6 +25,7 @@
 #ifdef CONFIG_MACH_NEO1973_GTA02
 #include <asm/arch/gta02.h>
 #include <linux/pcf50633.h>
+#include <asm/arch/regs-gpioj.h>
 #endif
 
 struct gta01pm_priv {
@@ -60,8 +61,14 @@ static ssize_t gsm_read(struct device *dev, struct device_attribute *attr,
 		if (s3c2410_gpio_getpin(GTA01_GPIO_MODEM_RST))
 			goto out_1;
 	} else if (!strcmp(attr->attr.name, "download")) {
+#ifdef CONFIG_MACH_NEO1973_GTA02
+		if (s3c2410_gpio_getpin(GTA02_GPIO_nDL_GSM))
+			goto out_1;
+#endif
+#ifdef CONFIG_MACH_NEO1973_GTA01
 		if (s3c2410_gpio_getpin(GTA01_GPIO_MODEM_DNLOAD))
 			goto out_1;
+#endif
 	}
 
 	return strlcpy(buf, "0\n", 3);
@@ -125,7 +132,12 @@ static ssize_t gsm_write(struct device *dev, struct device_attribute *attr,
 	} else if (!strcmp(attr->attr.name, "reset")) {
 		s3c2410_gpio_setpin(GTA01_GPIO_MODEM_RST, on);
 	} else if (!strcmp(attr->attr.name, "download")) {
+#ifdef CONFIG_MACH_NEO1973_GTA02
+		s3c2410_gpio_setpin(GTA02_GPIO_nDL_GSM, on);
+#endif
+#ifdef CONFIG_MACH_NEO1973_GTA01
 		s3c2410_gpio_setpin(GTA01_GPIO_MODEM_DNLOAD, on);
+#endif
 	}
 
 	return count;
@@ -164,7 +176,7 @@ static int gta01_gsm_resume(struct platform_device *pdev)
 static struct attribute *gta01_gsm_sysfs_entries[] = {
 	&dev_attr_power_on.attr,
 	&dev_attr_reset.attr,
-	NULL,
+	&dev_attr_download.attr,
 	NULL
 };
 
diff --git a/include/asm-arm/arch-s3c2410/gta02.h b/include/asm-arm/arch-s3c2410/gta02.h
index edf7223..dc12db7 100644
--- a/include/asm-arm/arch-s3c2410/gta02.h
+++ b/include/asm-arm/arch-s3c2410/gta02.h
@@ -64,7 +64,7 @@
 #define GTA02_GPIO_INT0		S3C2440_GPJ3	/* v2 + v3 + v4 only */
 #define GTA02_GPIO_nGSM_EN	S3C2440_GPJ4
 #define GTA02_GPIO_3D_RESET	S3C2440_GPJ5
-#define GTA02v4_GPIO_nDL_GSM	S3C2440_GPJ6	/* v4 only */
+#define GTA02_GPIO_nDL_GSM	S3C2440_GPJ6	/* v4 + v5 only */
 #define GTA02_GPIO_WLAN_GPIO0	S3C2440_GPJ7
 #define GTA02v1_GPIO_BAT_ID	S3C2440_GPJ8
 #define GTA02_GPIO_KEEPACT	S3C2440_GPJ8

Reply via email to