|
@@ -31,11 +31,53 @@
|
|
|
|
|
|
#include "core.h"
|
|
|
|
|
|
+static void aaed2000_clcd_disable(struct clcd_fb *fb)
|
|
|
+{
|
|
|
+ AAED_EXT_GPIO &= ~AAED_EGPIO_LCD_PWR_EN;
|
|
|
+}
|
|
|
+
|
|
|
+static void aaed2000_clcd_enable(struct clcd_fb *fb)
|
|
|
+{
|
|
|
+ AAED_EXT_GPIO |= AAED_EGPIO_LCD_PWR_EN;
|
|
|
+}
|
|
|
+
|
|
|
+struct aaec2000_clcd_info clcd_info = {
|
|
|
+ .enable = aaed2000_clcd_enable,
|
|
|
+ .disable = aaed2000_clcd_disable,
|
|
|
+ .panel = {
|
|
|
+ .mode = {
|
|
|
+ .name = "Sharp",
|
|
|
+ .refresh = 60,
|
|
|
+ .xres = 640,
|
|
|
+ .yres = 480,
|
|
|
+ .pixclock = 39721,
|
|
|
+ .left_margin = 20,
|
|
|
+ .right_margin = 44,
|
|
|
+ .upper_margin = 21,
|
|
|
+ .lower_margin = 34,
|
|
|
+ .hsync_len = 96,
|
|
|
+ .vsync_len = 2,
|
|
|
+ .sync = 0,
|
|
|
+ .vmode = FB_VMODE_NONINTERLACED,
|
|
|
+ },
|
|
|
+ .width = -1,
|
|
|
+ .height = -1,
|
|
|
+ .tim2 = TIM2_IVS | TIM2_IHS,
|
|
|
+ .cntl = CNTL_LCDTFT,
|
|
|
+ .bpp = 16,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
static void __init aaed2000_init_irq(void)
|
|
|
{
|
|
|
aaec2000_init_irq();
|
|
|
}
|
|
|
|
|
|
+static void __init aaed2000_init(void)
|
|
|
+{
|
|
|
+ aaec2000_set_clcd_plat_data(&clcd_info);
|
|
|
+}
|
|
|
+
|
|
|
static struct map_desc aaed2000_io_desc[] __initdata = {
|
|
|
{ EXT_GPIO_VBASE, EXT_GPIO_PBASE, EXT_GPIO_LENGTH, MT_DEVICE }, /* Ext GPIO */
|
|
|
};
|
|
@@ -54,4 +96,5 @@ MACHINE_START(AAED2000, "Agilent AAED-2000 Development Platform")
|
|
|
.map_io = aaed2000_map_io,
|
|
|
.init_irq = aaed2000_init_irq,
|
|
|
.timer = &aaec2000_timer,
|
|
|
+ .init_machine = aaed2000_init,
|
|
|
MACHINE_END
|