r1513 - trunk/src/target/kernel/patches
laforge at sita.openmoko.org
laforge at sita.openmoko.org
Mon Mar 26 19:33:37 CEST 2007
Author: laforge
Date: 2007-03-26 19:33:36 +0200 (Mon, 26 Mar 2007)
New Revision: 1513
Modified:
trunk/src/target/kernel/patches/gta01-power_control.patch
Log:
use sysfs_{create,remove}_group() instead of consecutive sysfs_create_file()
Modified: trunk/src/target/kernel/patches/gta01-power_control.patch
===================================================================
--- trunk/src/target/kernel/patches/gta01-power_control.patch 2007-03-26 17:00:59 UTC (rev 1512)
+++ trunk/src/target/kernel/patches/gta01-power_control.patch 2007-03-26 17:33:36 UTC (rev 1513)
@@ -1,17 +1,17 @@
-Index: linux-2.6.20.1/arch/arm/common/Makefile
+Index: linux-2.6.20.4/arch/arm/common/Makefile
===================================================================
---- linux-2.6.20.1.orig/arch/arm/common/Makefile 2007-03-08 14:03:22.000000000 +0100
-+++ linux-2.6.20.1/arch/arm/common/Makefile 2007-03-08 23:12:20.000000000 +0100
+--- linux-2.6.20.4.orig/arch/arm/common/Makefile 2007-03-23 20:52:51.000000000 +0100
++++ linux-2.6.20.4/arch/arm/common/Makefile 2007-03-26 19:01:18.000000000 +0200
@@ -17,3 +17,4 @@
obj-$(CONFIG_SHARP_SCOOP) += scoop.o
obj-$(CONFIG_ARCH_IXP2000) += uengine.o
obj-$(CONFIG_ARCH_IXP23XX) += uengine.o
+obj-$(CONFIG_MACH_GTA01) += gta01_pm_gsm.o gta01_pm_gps.o gta01_pm_bt.o
-Index: linux-2.6.20.1/arch/arm/common/gta01_pm_gps.c
+Index: linux-2.6.20.4/arch/arm/common/gta01_pm_gps.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.20.1/arch/arm/common/gta01_pm_gps.c 2007-03-08 14:03:27.000000000 +0100
-@@ -0,0 +1,542 @@
++++ linux-2.6.20.4/arch/arm/common/gta01_pm_gps.c 2007-03-26 19:15:54.000000000 +0200
+@@ -0,0 +1,534 @@
+/*
+ * GPS Power Management code for the FIC Neo1973 GSM Phone
+ *
@@ -454,9 +454,24 @@
+#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,
++ NULL
++};
++
++static struct attribute_group gta01_gps_attr_group = {
++ .name = NULL,
++ .attrs = gta01_gps_sysfs_entries,
++};
++
+static int __init gta01_pm_gps_probe(struct platform_device *pdev)
+{
-+
+ s3c2410_gpio_cfgpin(GTA01_GPIO_GPS_PWRON, S3C2410_GPIO_OUTPUT);
+
+ switch (system_rev) {
@@ -487,44 +502,21 @@
+ case GTA01v3_SYSTEM_REV:
+ case GTA01v4_SYSTEM_REV:
+ case GTA01Bv2_SYSTEM_REV:
-+ device_create_file(&pdev->dev, &dev_attr_power_tcxo_2v8);
++ gta01_gps_sysfs_entries[ARRAY_SIZE(gta01_gps_sysfs_entries)-2] =
++ &dev_attr_power_tcxo_2v8.attr;
+ break;
+ case GTA01Bv3_SYSTEM_REV:
-+ device_create_file(&pdev->dev, &dev_attr_power_core_1v5);
++ gta01_gps_sysfs_entries[ARRAY_SIZE(gta01_gps_sysfs_entries)-2] =
++ &dev_attr_power_core_1v5.attr;
+ break;
+ }
+
-+ device_create_file(&pdev->dev, &dev_attr_power_avdd_3v);
-+ device_create_file(&pdev->dev, &dev_attr_pwron);
-+ device_create_file(&pdev->dev, &dev_attr_reset);
-+ device_create_file(&pdev->dev, &dev_attr_power_lp_io_3v3);
-+ device_create_file(&pdev->dev, &dev_attr_power_pll_core_2v5);
-+ device_create_file(&pdev->dev, &dev_attr_power_sequence);
-+
-+ return 0;
++ return sysfs_create_group(&pdev->dev.kobj, >a01_gps_attr_group);
+}
+
+static int gta01_pm_gps_remove(struct platform_device *pdev)
+{
-+ switch (system_rev) {
-+ case GTA01v3_SYSTEM_REV:
-+ case GTA01v4_SYSTEM_REV:
-+ case GTA01Bv2_SYSTEM_REV:
-+ device_remove_file(&pdev->dev, &dev_attr_power_tcxo_2v8);
-+ break;
-+ case GTA01Bv3_SYSTEM_REV:
-+ device_remove_file(&pdev->dev, &dev_attr_power_core_1v5);
-+ break;
-+ }
-+
-+ device_remove_file(&pdev->dev, &dev_attr_power_sequence);
-+ device_remove_file(&pdev->dev, &dev_attr_power_pll_core_2v5);
-+ device_remove_file(&pdev->dev, &dev_attr_power_lp_io_3v3);
-+ device_remove_file(&pdev->dev, &dev_attr_reset);
-+ device_remove_file(&pdev->dev, &dev_attr_pwron);
-+ device_remove_file(&pdev->dev, &dev_attr_power_avdd_3v);
-+ device_remove_file(&pdev->dev, &dev_attr_power_tcxo_2v8);
-+
++ sysfs_remove_group(&pdev->dev.kobj, >a01_gps_attr_group);
+ return 0;
+}
+
@@ -554,11 +546,11 @@
+MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Harald Welte <laforge at openmoko.org>");
+MODULE_DESCRIPTION("FIC GTA01 (Neo1973) GPS Power Management");
-Index: linux-2.6.20.1/arch/arm/common/gta01_pm_gsm.c
+Index: linux-2.6.20.4/arch/arm/common/gta01_pm_gsm.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.20.1/arch/arm/common/gta01_pm_gsm.c 2007-03-08 23:48:57.000000000 +0100
-@@ -0,0 +1,208 @@
++++ linux-2.6.20.4/arch/arm/common/gta01_pm_gsm.c 2007-03-26 19:20:52.000000000 +0200
+@@ -0,0 +1,216 @@
+/*
+ * GSM Management code for the FIC Neo1973 GSM Phone
+ *
@@ -692,6 +684,18 @@
+#define gta01_gsm_resume NULL
+#endif
+
++static struct attribute *gta01_gsm_sysfs_entries[] = {
++ &dev_attr_power_on.attr,
++ &dev_attr_reset.attr,
++ NULL,
++ NULL
++};
++
++static struct attribute_group gta01_gsm_attr_group = {
++ .name = NULL,
++ .attrs = gta01_gsm_sysfs_entries,
++};
++
+static int __init gta01_gsm_probe(struct platform_device *pdev)
+{
+ switch (system_rev) {
@@ -713,13 +717,11 @@
+ break;
+ }
+
-+ device_create_file(&pdev->dev, &dev_attr_power_on);
-+ device_create_file(&pdev->dev, &dev_attr_reset);
-+
+ switch (system_rev) {
+ case GTA01v4_SYSTEM_REV:
+ case GTA01Bv2_SYSTEM_REV:
-+ device_create_file(&pdev->dev, &dev_attr_download);
++ gta01_gsm_sysfs_entries[ARRAY_SIZE(gta01_gsm_sysfs_entries)-2] =
++ &dev_attr_download.attr;
+ break;
+ default:
+ break;
@@ -729,14 +731,12 @@
+ if (!gta01_gsm.con)
+ dev_warn(&pdev->dev, "cannot find S3C24xx console driver\n");
+
-+ return 0;
++ return sysfs_create_group(&pdev->dev.kobj, >a01_gsm_attr_group);
+}
+
+static int gta01_gsm_remove(struct platform_device *pdev)
+{
-+ device_remove_file(&pdev->dev, &dev_attr_download);
-+ device_remove_file(&pdev->dev, &dev_attr_power_on);
-+ device_remove_file(&pdev->dev, &dev_attr_reset);
++ sysfs_remove_group(&pdev->dev.kobj, >a01_gsm_attr_group);
+
+ return 0;
+}
@@ -767,11 +767,11 @@
+MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Harald Welte <laforge at openmoko.org>");
+MODULE_DESCRIPTION("FIC GTA01 (Neo1973) GSM Management");
-Index: linux-2.6.20.1/arch/arm/common/gta01_pm_bt.c
+Index: linux-2.6.20.4/arch/arm/common/gta01_pm_bt.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.20.1/arch/arm/common/gta01_pm_bt.c 2007-03-08 14:03:27.000000000 +0100
-@@ -0,0 +1,133 @@
++++ linux-2.6.20.4/arch/arm/common/gta01_pm_bt.c 2007-03-26 19:14:32.000000000 +0200
+@@ -0,0 +1,140 @@
+/*
+ * Bluetooth PM code for the FIC Neo1973 GSM Phone
+ *
@@ -859,22 +859,29 @@
+#define gta01_bt_resume NULL
+#endif
+
++static struct attribute *gta01_bt_sysfs_entries[] = {
++ &dev_attr_power_on.attr,
++ &dev_attr_reset.attr,
++ NULL
++};
++
++static struct attribute_group gta01_bt_attr_group = {
++ .name = NULL,
++ .attrs = gta01_bt_sysfs_entries,
++};
++
+static int __init gta01_bt_probe(struct platform_device *pdev)
+{
+ dev_info(&pdev->dev, DRVMSG ": starting\n");
+
-+ device_create_file(&pdev->dev, &dev_attr_power_on);
-+ device_create_file(&pdev->dev, &dev_attr_reset);
-+
-+ return 0;
++ return sysfs_create_group(&pdev->dev.kobj, >a01_bt_attr_group);
+}
+
+static int gta01_bt_remove(struct platform_device *pdev)
+{
+ dev_info(&pdev->dev, DRVMSG ": ending\n");
+
-+ device_remove_file(&pdev->dev, &dev_attr_power_on);
-+ device_remove_file(&pdev->dev, &dev_attr_reset);
++ sysfs_remove_group(&pdev->dev.kobj, >a01_bt_attr_group);
+
+ return 0;
+}
More information about the commitlog
mailing list