TomZ,
Here are our most standard questions:
1) Q: Does the iMX31 support 'this' display?
A: Likely yes, the iMX31 will support most standard displays with TFT, STN, Sharp AD TFT, and LVDS interfaces. The lmiting factor is display resolution. The iMX31 can do up to 1024 width, although it limits the other peripherals you use since it can cause screen tearing at 800 or 1024 width. (SLow devices like Enet, NOR Flash, CF can causing tearing)
2) Q: What displays does Logic's driver support?
A: Logic's Windows CE and LogicLoader driver support our display kits out of the box. There are default modes to use these displays. These kits can be found on our website under 'Display Kits'.
3) Q: Well, how do I get a custom display working?
A: Logic's Windows CE and LogicLoader support adding custom displays by the user. This does not need to be added by Logic to the binaries. The LogicLoader manual details the video commands and the 'config' comand, which lets you add a custom display mode to the bootloader. It is good to check out this app note, which gives a summary of what you need to do. It does not however go through a detailed explanation of the iMX31 IPU (LCD) controller registers. You will need to determine these reigster values for your custom display.
http://www.logicpd.com/downloads/647/1002791_Rev_B.pdf
Once you get it working in LogicLoader, you can use the 'skiplcdcinit:1' boot parameter in your boot script. This tells the WinCE display driver that you want to keep the current LCD controller values and to not re-initialize the controller. Make sure to use IPU driver 0.4.0 or higher, which automatically detects the width and height so that Windows CE knows the size of the window.
4) Q: What are the iMX31 IPU registers I need to look at for my custom display?
A: Here is a list of the configurable ones that LogicLoader can save as a custom display: (Name, Address)
SDC_COM_CONF 0x53FC00B4
SDC_BG_POS 0x53FC00C0
SDC_HOR_CONF 0x53FC00D0
SDC_VER_CONF 0x53FC00D4
SDC_SHARP_CONF_1 0x53FC00D8
SDC_SHARP_CONF_2 0x53FC00DC
DI_DISP_IF_CONF 0x53FC0124
DI_DISP_SIG_POL 0x53FC0128
DI_D3_TIME_CONF 0x53FC015C
5) Q: How do I modify these and where do I find out what they do?
A: Look at that app note, it will tell you how to set up your custom display mode. In general though, you want to use the 'w' command, to write to those registers. ('x' to read.) Look at Freescale's website for the [url]iMX31 User Manual, this will detail the IPU registers.
http://www.freescale.com/imx31[/url]