[PATCH] [GTA01] neo1973_pm_gps: Fix compilation without GTA01
Harald Welte
laforge at openmoko.org
Tue Nov 18 17:36:08 CET 2008
Signed-off-by: Harald Welte <laforge at openmoko.org>
---
arch/arm/plat-s3c24xx/neo1973_pm_gps.c | 129 +++++++++++++++++---------------
1 files changed, 70 insertions(+), 59 deletions(-)
diff --git a/arch/arm/plat-s3c24xx/neo1973_pm_gps.c b/arch/arm/plat-s3c24xx/neo1973_pm_gps.c
index a21b763..a0509bd 100644
--- a/arch/arm/plat-s3c24xx/neo1973_pm_gps.c
+++ b/arch/arm/plat-s3c24xx/neo1973_pm_gps.c
@@ -45,6 +45,7 @@ int neo1973_pm_gps_is_on(void)
}
EXPORT_SYMBOL_GPL(neo1973_pm_gps_is_on);
+#ifdef CONFIG_MACH_NEO1973_GTA01
/* This is the 2.8V supply for the RTC crystal, the mail clock crystal and
* the input to VDD_RF */
static void gps_power_2v8_set(int on)
@@ -268,6 +269,44 @@ static int gps_power_1v5_get(void)
return ret;
}
+/* This is the nRESET pin */
+static void gps_rst_set(int on)
+{
+ switch (system_rev) {
+ case GTA01v3_SYSTEM_REV:
+ pcf50606_gpo0_set(pcf50606_global, on);
+ break;
+ case GTA01v4_SYSTEM_REV:
+ case GTA01Bv2_SYSTEM_REV:
+ case GTA01Bv3_SYSTEM_REV:
+ case GTA01Bv4_SYSTEM_REV:
+ s3c2410_gpio_setpin(GTA01_GPIO_GPS_RESET, on);
+ break;
+ }
+}
+
+static int gps_rst_get(void)
+{
+ switch (system_rev) {
+ case GTA01v3_SYSTEM_REV:
+ if (pcf50606_gpo0_get(pcf50606_global))
+ return 1;
+ break;
+ case GTA01v4_SYSTEM_REV:
+ case GTA01Bv2_SYSTEM_REV:
+ case GTA01Bv3_SYSTEM_REV:
+ case GTA01Bv4_SYSTEM_REV:
+ if (s3c2410_gpio_getpin(GTA01_GPIO_GPS_RESET))
+ return 1;
+ break;
+ }
+
+ return 0;
+}
+
+
+#endif /* GTA01 */
+
/* This is the POWERON pin */
static void gps_pwron_set(int on)
{
@@ -319,52 +358,18 @@ static int gps_pwron_get(void)
return -1;
}
-/* This is the nRESET pin */
-static void gps_rst_set(int on)
-{
- switch (system_rev) {
- case GTA01v3_SYSTEM_REV:
- pcf50606_gpo0_set(pcf50606_global, on);
- break;
- case GTA01v4_SYSTEM_REV:
- case GTA01Bv2_SYSTEM_REV:
- case GTA01Bv3_SYSTEM_REV:
- case GTA01Bv4_SYSTEM_REV:
- s3c2410_gpio_setpin(GTA01_GPIO_GPS_RESET, on);
- break;
- }
-}
-
-static int gps_rst_get(void)
-{
- switch (system_rev) {
- case GTA01v3_SYSTEM_REV:
- if (pcf50606_gpo0_get(pcf50606_global))
- return 1;
- break;
- case GTA01v4_SYSTEM_REV:
- case GTA01Bv2_SYSTEM_REV:
- case GTA01Bv3_SYSTEM_REV:
- case GTA01Bv4_SYSTEM_REV:
- if (s3c2410_gpio_getpin(GTA01_GPIO_GPS_RESET))
- return 1;
- break;
- }
-
- return 0;
-}
-
static ssize_t power_gps_read(struct device *dev,
struct device_attribute *attr, char *buf)
{
int ret = 0;
- if (!strcmp(attr->attr.name, "power_tcxo_2v8")) {
+ if (!strcmp(attr->attr.name, "pwron")) {
+ ret = gps_pwron_get();
+#ifdef CONFIG_MACH_NEO1973_GTA01
+ } else if (!strcmp(attr->attr.name, "power_tcxo_2v8")) {
ret = gps_power_2v8_get();
} else if (!strcmp(attr->attr.name, "power_avdd_3v")) {
ret = gps_power_3v_get();
- } else if (!strcmp(attr->attr.name, "pwron")) {
- ret = gps_pwron_get();
} else if (!strcmp(attr->attr.name, "reset")) {
ret = gps_rst_get();
} else if (!strcmp(attr->attr.name, "power_lp_io_3v3")) {
@@ -374,6 +379,7 @@ static ssize_t power_gps_read(struct device *dev,
} else if (!strcmp(attr->attr.name, "power_core_1v5") ||
!strcmp(attr->attr.name, "power_vdd_core_1v5")) {
ret = gps_power_1v5_get();
+#endif
}
if (ret)
@@ -388,12 +394,13 @@ static ssize_t power_gps_write(struct device *dev,
{
unsigned long on = simple_strtoul(buf, NULL, 10);
- if (!strcmp(attr->attr.name, "power_tcxo_2v8")) {
+ if (!strcmp(attr->attr.name, "pwron")) {
+ gps_pwron_set(on);
+#ifdef CONFIG_MACH_NEO1973_GTA01
+ } else if (!strcmp(attr->attr.name, "power_tcxo_2v8")) {
gps_power_2v8_set(on);
} else if (!strcmp(attr->attr.name, "power_avdd_3v")) {
gps_power_3v_set(on);
- } else if (!strcmp(attr->attr.name, "pwron")) {
- gps_pwron_set(on);
} else if (!strcmp(attr->attr.name, "reset")) {
gps_rst_set(on);
} else if (!strcmp(attr->attr.name, "power_lp_io_3v3")) {
@@ -403,11 +410,13 @@ static ssize_t power_gps_write(struct device *dev,
} else if (!strcmp(attr->attr.name, "power_core_1v5") ||
!strcmp(attr->attr.name, "power_vdd_core_1v5")) {
gps_power_1v5_set(on);
+#endif
}
return count;
}
+#ifdef CONFIG_MACH_NEO1973_GTA01
static void gps_power_sequence_up(void)
{
/* According to PMB2520 Data Sheet, Rev. 2006-06-05,
@@ -488,7 +497,6 @@ static ssize_t power_sequence_write(struct device *dev,
static DEVICE_ATTR(power_tcxo_2v8, 0644, power_gps_read, power_gps_write);
static DEVICE_ATTR(power_avdd_3v, 0644, power_gps_read, power_gps_write);
-static DEVICE_ATTR(pwron, 0644, power_gps_read, power_gps_write);
static DEVICE_ATTR(reset, 0644, power_gps_read, power_gps_write);
static DEVICE_ATTR(power_lp_io_3v3, 0644, power_gps_read, power_gps_write);
static DEVICE_ATTR(power_pll_core_2v5, 0644, power_gps_read, power_gps_write);
@@ -497,6 +505,26 @@ static DEVICE_ATTR(power_vdd_core_1v5, 0644, power_gps_read, power_gps_write);
static DEVICE_ATTR(power_sequence, 0644, power_sequence_read,
power_sequence_write);
+static struct attribute *gta01_gps_sysfs_entries[] = {
+ &dev_attr_power_avdd_3v.attr,
+ &dev_attr_pwron.attr,
+ &dev_attr_reset.attr,
+ &dev_attr_power_lp_io_3v3.attr,
+ &dev_attr_power_pll_core_2v5.attr,
+ &dev_attr_power_sequence.attr,
+ NULL, /* power_core_1v5 */
+ NULL, /* power_vdd_core_1v5 */
+ NULL /* terminating entry */
+};
+
+static struct attribute_group gta01_gps_attr_group = {
+ .name = NULL,
+ .attrs = gta01_gps_sysfs_entries,
+};
+#endif /* GTA01 */
+
+static DEVICE_ATTR(pwron, 0644, power_gps_read, power_gps_write);
+
#ifdef CONFIG_PM
static int gta01_pm_gps_suspend(struct platform_device *pdev,
pm_message_t state)
@@ -537,23 +565,6 @@ static int gta01_pm_gps_resume(struct platform_device *pdev)
#define gta01_pm_gps_resume NULL
#endif
-static struct attribute *gta01_gps_sysfs_entries[] = {
- &dev_attr_power_avdd_3v.attr,
- &dev_attr_pwron.attr,
- &dev_attr_reset.attr,
- &dev_attr_power_lp_io_3v3.attr,
- &dev_attr_power_pll_core_2v5.attr,
- &dev_attr_power_sequence.attr,
- NULL, /* power_core_1v5 */
- NULL, /* power_vdd_core_1v5 */
- NULL /* terminating entry */
-};
-
-static struct attribute_group gta01_gps_attr_group = {
- .name = NULL,
- .attrs = gta01_gps_sysfs_entries,
-};
-
static struct attribute *gta02_gps_sysfs_entries[] = {
&dev_attr_pwron.attr,
NULL
--
1.5.6.5
More information about the openmoko-kernel
mailing list