diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2009-12-08 14:14:23 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2009-12-10 12:15:01 +0100 |
commit | 85520cc9f62be3163a5c46385817f3f1df207d54 (patch) | |
tree | 40ee46de7bbb28a47518372c4aad580595679e78 /board | |
parent | 952036288872faab10511b8219c7b34788e63b64 (diff) | |
download | barebox-85520cc9f62be3163a5c46385817f3f1df207d54.tar.gz barebox-85520cc9f62be3163a5c46385817f3f1df207d54.tar.xz |
pcm043: add display support
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'board')
-rw-r--r-- | board/pcm043/pcm043.c | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/board/pcm043/pcm043.c b/board/pcm043/pcm043.c index 24a2851642..88b4113b84 100644 --- a/board/pcm043/pcm043.c +++ b/board/pcm043/pcm043.c @@ -38,6 +38,8 @@ #include <asm/mach-types.h> #include <mach/imx-nand.h> #include <fec.h> +#include <fb.h> +#include <mach/imx-ipu-fb.h> #include <mach/imx-pll.h> #include <mach/iomux-mx35.h> @@ -91,6 +93,56 @@ static struct device_d nand_dev = { .platform_data = &nand_info, }; +#ifdef CONFIG_PCM043_DISPLAY_SHARP +static const struct fb_videomode pcm043_fb_mode = { + /* 240x320 @ 60 Hz */ + .name = "Sharp-LQ035Q7", + .refresh = 60, + .xres = 240, + .yres = 320, + .pixclock = 185925, + .left_margin = 9, + .right_margin = 16, + .upper_margin = 7, + .lower_margin = 9, + .hsync_len = 1, + .vsync_len = 1, + .sync = FB_SYNC_HOR_HIGH_ACT | FB_SYNC_SHARP_MODE | FB_SYNC_CLK_INVERT | FB_SYNC_CLK_IDLE_EN, + .vmode = FB_VMODE_NONINTERLACED, + .flag = 0, +}; +#else +static struct fb_videomode pcm043_fb_mode = { + /* 240x320 @ 60 Hz */ + .name = "TX090", + .refresh = 60, + .xres = 240, + .yres = 320, + .pixclock = 38255, + .left_margin = 144, + .right_margin = 0, + .upper_margin = 7, + .lower_margin = 40, + .hsync_len = 96, + .vsync_len = 1, + .sync = FB_SYNC_VERT_HIGH_ACT | FB_SYNC_OE_ACT_HIGH, + .vmode = FB_VMODE_NONINTERLACED, + .flag = 0, +}; +#endif + +static struct imx_ipu_fb_platform_data ipu_fb_data = { + .mode = &pcm043_fb_mode, + .bpp = 16, +}; + +static struct device_d imx_ipu_fb_dev = { + .name = "imx-ipu-fb", + .map_base = 0x53fc0000, + .size = 0x1000, + .platform_data = &ipu_fb_data, +}; + static int imx35_devices_init(void) { uint32_t reg; @@ -132,6 +184,7 @@ static int imx35_devices_init(void) } register_device(&sdram0_dev); + register_device(&imx_ipu_fb_dev); armlinux_add_dram(&sdram0_dev); armlinux_set_bootparams((void *)0x80000100); |