Hi,
We using DM6446 EVM with THS8200 (Rev C) daughter card. Our aim is to display 800x600@60fps over VGA connector on THS8200 daughter card.
Based on previous posts in this forum, we have translated voltage levels of HS_OUT and VS_OUT signals to 3.3V by adding 2-bit level translater on THS8200 board.
As present THS8200 driver doesn't support output on VGA connecter, we have done couple of modifications to driver.
720P-60 on VGA connector experiment:
First we tested 720P-60 output on VGA connector. Following changes are done,
1) VENC_VMOD programmed to give RGB565 output. VENC_VIDCTL changed to make VCLKP=0.
2) THS8200_DTG2_CNTL (0x82) changed to 0x5b. (dtg2_rgb_mode_on set to 1).
3) THS8200_DTG1_MODE (0x38) changed to 0x87. (dtg1_mode set to VESA slave)
4) THS8200_DATA_CNTL (0x1c) changed to 0x21. (data_ifir12_bypass = 1 and data_dman_cntl = 001 - 16-bit RGB 4:4:4)
Other than these changes, we have not modified anything else. With these changes, we get 720P output with proper colors on monitor. Though we are seeing some horizontal shift on the display which is not major concern right now.
SVGA-60 on VGA connector experiment:
After this experiment, we are modifying driver to display SVGA output on VGA connector. For this we are taking 720P settings as reference. Following changes are done, 1) We have added one more standard in 'ths8200_encoder.c', with following settings,
.name = VID_ENC_STD_SVGA_VESA_60,
.std = 1,
.if_type = VID_ENC_IF_PRGB, /* TBD */
.interlaced = 0,
.xres = 800,
.yres = 600,
.fps = {60, 1},
.left_margin = 140,
.right_margin = 116,
.upper_margin = 15,
.lower_margin = 10,
.hsync_len = 80,
.vsync_len = 5,
.flags = 0},
2) VENC_VMOD programmed to give RGB565 output.VENC_VIDCTL changed to make VCLKP=0.
3) THS8200_DTG2_CNTL (0x82) changed to 0x5b. (dtg2_rgb_mode_on set to 1).
4) THS8200_DTG1_MODE (0x38) changed to 0x87. (dtg1_mode set to VESA slave)
5) THS8200_DATA_CNTL (0x1c) changed to 0x21. (data_ifir12_bypass = 1 and data_dman_cntl = 001 - 16-bit RGB 4:4:4)
6) Programed CDCE949 clock to output 39.6MHz clock for SVGA@60fps.
7) THS8200_DTG1_TOT_PIXELS_MSB (0x34) set to 0x04
8) THS8200_DTG1_TOT_PIXELS_LSB (0x35) set to 0x20
9) THS8200_DTG1_FRAME_FIELD_SZ_MSB (0x39) set to 0x27
10) THS8200_DTG1_FRAME_SZ_LSB (0x3a) set to 0x71
11) THS8200_DTG1_SPEC_E_LSB (0x2a) set to 0x8c
12) THS8200_DTG1_SPEC_DEH_MSB (0x2b) set to 0x80
Apart from above registers, remaining THS8200 registers are same as 720P configuration.
With these changes, we get video output on monitor.
But displayed video's brightness level is too low and colors are also distorted. Also, there is one fixed vertical line on left side of display.
Based on this information, we have following questions,
1) For SVGA, are any more settings required to be changed (both on DM6446 and THS8200)? Are we missing anything?
2) If THS8200 is set in VESA slave mode, then is it necessary to make changes as mentioned in points7-12 above? These changes are done based on application report SPRAAN0.pdf
3) What could be the reasons for low brightness level on display? Also vertical line on the left side?
If anyone has same clue about this problem, please let us know.
Thanks in advance.
-- satyajit