 +
 +static void __exit mpc8313leds_exit(void)
 +{
-+	if (led_mem) release_mem_region(0xfa000000, 0x100);
++	if (led_mem) release_mem_region(LEDS_BASE, LEDS_SIZE);
 +	led_mem = NULL;
 +	platform_driver_unregister(&mpc8313leds_driver);
 +

+
+static int __init mpc8313leds_init(void)
+{
+	led_mem = request_mem_region(0xfa000000, 0x100, "mpc8313-leds");
+	if (led_mem == NULL) return -ENOMEM;
+	p = ioremap(0xfa000000, 0x100);
+	if (p == NULL)
+	{
+		if (led_mem) release_mem_region(0xfa000000, 0x100);
+		led_mem = NULL;
+		return -ENOMEM;
+	}

+MODULE_LICENSE("GPL");
diff -urN linux-2.6.23.orig/drivers/leds/Makefile linux-2.6.23/drivers/leds/Makefile
--- linux-2.6.23.orig/drivers/leds/Makefile	2007-10-09 22:31:38.000000000 +0200
+++ linux-2.6.23/drivers/leds/Makefile	2007-12-03 11:08:06.000000000 +0100
@@ -17,6 +17,7 @@
 obj-$(CONFIG_LEDS_H1940)		+= leds-h1940.o
 obj-$(CONFIG_LEDS_COBALT)		+= leds-cobalt.o
