2 * linux/arch/arm/mach-sa1100/huw_webpanel.c
5 #include <linux/module.h>
6 #include <linux/init.h>
7 #include <linux/kernel.h>
10 #include <asm/hardware.h>
11 #include <asm/mach-types.h>
12 #include <asm/setup.h>
14 #include <asm/mach/arch.h>
15 #include <asm/mach/map.h>
16 #include <asm/mach/serial_sa1100.h>
21 unsigned long BCR_value
;
22 EXPORT_SYMBOL(BCR_value
);
24 static void huw_lcd_power(int on
)
27 BCR_clear(BCR_TFT_NPWR
);
29 BCR_set(BCR_TFT_NPWR
);
32 static void huw_backlight_power(int on
)
36 BCR_set(BCR_CCFL_POW
| BCR_PWM_BACKLIGHT
);
37 set_current_state(TASK_UNINTERRUPTIBLE
);
38 schedule_task(200 * HZ
/ 1000);
43 static int __init
init_huw_cs3(void)
45 // here we can place some initcode
46 // BCR_value = 0x1045bf70; //*((volatile unsigned long*)0xf1fffff0);
47 if (machine_is_huw_webpanel()) {
48 sa1100fb_lcd_power
= huw_lcd_power
;
49 sa1100fb_backlight_power
= huw_backlight_power
;
55 arch_initcall(init_huw_cs3
);
59 memory information (JOR):
60 32 MByte - 256KByte bootloader (init at boot time) - 32 kByte save area
61 area size = 288 kByte (0x48000 Bytes)
63 static struct map_desc huw_webpanel_io_desc
[] __initdata
= {
64 /* virtual physical length type */
65 { 0xf0000000, 0xc1fb8000, 0x00048000, MT_DEVICE
}, /* Parameter */
66 { 0xf1000000, 0x18000000, 0x00100000, MT_DEVICE
} /* Paules CS3, write only */
69 static void __init
huw_webpanel_map_io(void)
72 iotable_init(huw_webpanel_io_desc
, ARRAY_SIZE(huw_webpanel_io_desc
));
74 sa1100_register_uart(0, 3);
75 sa1100_register_uart(1, 1);
79 MACHINE_START(HUW_WEBPANEL
, "HuW-Webpanel")
80 MAINTAINER("Roman Jordan")
81 BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
82 MAPIO(huw_webpanel_map_io
)
83 INITIRQ(sa1100_init_irq
)
84 INITTIME(sa1100_init_time
)