Try this:
{
/* 800x480 @ 60 Hz , pixel clk @ 32MHz */
"WVGA", 60, 800, 480, 29850, 89, 164, 23, 10, 10, 10,
FB_SYNC_CLK_LAT_FALL,
FB_VMODE_NONINTERLACED,
0,},
with 0 in .sync field you have no sync output.
This link explains a lot about framebuffer setting.
Here is defined the "struct fb_videomode".
Some generic fb settings for .sync field are (fb.h)
#define FB_SYNC_HOR_HIGH_ACT 1 /* horizontal sync high active */
#define FB_SYNC_VERT_HIGH_ACT 2 /* vertical sync high active */
#define FB_SYNC_EXT 4 /* external sync */
#define FB_SYNC_COMP_HIGH_ACT 8 /* composite sync high active */
#define FB_SYNC_BROADCAST 16 /* broadcast video timings */
and in mxcfb.h you find these
#define FB_SYNC_OE_LOW_ACT 0x80000000
#define FB_SYNC_CLK_LAT_FALL 0x40000000
#define FB_SYNC_DATA_INVERT 0x20000000
#define FB_SYNC_CLK_IDLE_EN 0x10000000
#define FB_SYNC_SHARP_MODE 0x08000000
#define FB_SYNC_SWAP_RGB 0x04000000
#define FB_ACCEL_TRIPLE_FLAG 0x00000000
#define FB_ACCEL_DOUBLE_FLAG 0x00000001
Unfortunately I did not find much documentation about them.
xizhou wang said:
can show correct color on the screen but only part of it. I tried added an entry to the ldb.c like this
{
/* 800x480 @ 60 Hz , pixel clk @ 32MHz */
"WVGA", 60, 800, 480, 29850, 89, 164, 23, 10, 10, 10,
0,
FB_VMODE_NONINTERLACED,
0,},