diff -ur linux-2.6.7-check/arch/arm/mach-pxa/corgi.c linux-2.6.7/arch/arm/mach-pxa/corgi.c
--- linux-2.6.7-check/arch/arm/mach-pxa/corgi.c	2004-06-19 10:54:25.000000000 +0100
+++ linux-2.6.7/arch/arm/mach-pxa/corgi.c	2004-06-19 13:12:39.000000000 +0100
@@ -197,6 +197,41 @@
 }
 #endif
 
+
+static int __init corgi_init(void)
+{
+	/*#define LED_ONOFF_MASK (LOCOMO_LPT_TOFL|LOCOMO_LPT_TOFH)*/
+	/*#define LED_OFF(REG) ((REG)|=LOCOMO_LPT_TOFL)*/
+	/*#define LED_ON(REG) ((REG)=((REG)&~LED_ONOFF_MASK)|LOCOMO_LPT_TOFH)*/
+	/*#define LED_FLIP(REG)   ((REG)^=LED_ONOFF_MASK)*/
+
+	/*    unsigned int led1;*/
+	/*    LED_ON(led1);*/
+	/*    locomo_writel(led1, +LOCOMO_LPT1);*/
+
+	unsigned short gpio_bit;
+	//gpio_bit=CORGI_SCP_REG_GPWR & ~CORGI_SCP_LED_GREEN;
+	//gpio_bit=CORGI_SCP_REG_GPWR | CORGI_SCP_LED_GREEN;
+	//CORGI_SCP_REG_GPWR= gpio_bit;
+	//udelay(1000);
+	gpio_bit=CORGI_SCP_REG_GPWR & ~CORGI_SCP_LED_GREEN;
+	CORGI_SCP_REG_GPWR= gpio_bit;
+	//    udelay(1000);
+	//    gpio_bit=CORGI_SCP_REG_GPWR | CORGI_SCP_LED_GREEN;
+	//    CORGI_SCP_REG_GPWR= gpio_bit;
+	//    udelay(1000);
+	//    gpio_bit=CORGI_SCP_REG_GPWR & ~CORGI_SCP_LED_GREEN;
+	//    CORGI_SCP_REG_GPWR= gpio_bit;
+	//    udelay(1000);
+	//    gpio_bit=CORGI_SCP_REG_GPWR | CORGI_SCP_LED_GREEN;
+	//    CORGI_SCP_REG_GPWR= gpio_bit;
+		
+	return 0;
+}
+		    
+arch_initcall(corgi_init);
+
+
 static struct map_desc corgi_io_desc[] __initdata = {
  /* virtual     physical    length      */
   { 0xf1000000, 0x08000000, 0x01000000, MT_DEVICE }, /* LCDC (readable for Qt driver) */

