Index: mm/drivers/hwmon/ams/ams-core.c
===================================================================
--- mm.orig/drivers/hwmon/ams/ams-core.c	2006-09-25 12:58:22.000000000 -0300
+++ mm/drivers/hwmon/ams/ams-core.c	2006-09-25 13:08:18.000000000 -0300
@@ -167,6 +167,7 @@
 		goto release_freefall;
 
 	/* Create device */
+	retval = -ENODEV;
 	ams_info.of_dev = of_platform_device_create(ams_info.of_node, "ams", NULL);
 	if (!ams_info.of_dev)
 		goto release_shock;
@@ -190,7 +191,7 @@
 release_of:
 	of_device_unregister(ams_info.of_dev);
 release_shock:
-	pmf_unregister_irq_client(&ams_freefall_client);
+	pmf_unregister_irq_client(&ams_shock_client);
 release_freefall:
 	pmf_unregister_irq_client(&ams_freefall_client);
 	goto out;
