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, &gta01_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, &gta01_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, &gta01_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, &gta01_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, &gta01_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, &gta01_bt_attr_group);
 +
 +	return 0;
 +}





More information about the commitlog mailing list