This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

how to modify LCD driver on Wince 6.0

Other Parts Discussed in Thread: AM3517

Hi,

      We have a project need port the wince6.0 to customer's board which base on AM3517, use the BSP version is BSP_WINCE_ARM_A8_01_02_00.  the hardware of the board is modeled the AM3517 EVM which designed by LOGIC, but the LCD of customer board is 10.4inch (color TFT-LCD module: LQ104V1DG59 produced by SHARP), so my problem is how to modify the BSP for the project, especially the LCD driver.

      Does it only two files(lcd_vga.c and lcd_support.c) relate to LCD in the BSP? how to modify the LCD resolution initializtion to suit customer's board, I found there have a function "GetDisplayResolutionFromBootArgs(DWORD * pDispRes)" in /eboot/main.c, but I havn't found where the parameter "g_bootCfg" been set. could you please show me where can configure the LCD resolution in the BSP? Thanks!

  • lcd_vga.c and lcd_support.c should be the 2 main files to edit for your custom LCD. The main effort would be adding your LCD params to lcd_res_params structure.These 2 files are used both by the eboot and kernel display driver .

    The g_bootcfg.displayRes is set with default value in OEMPreDownload() in am35x\src\bootloader\eboot\main.c. The user can override this default value at run-time using the eboot menu. The function SetDisplayResolution() in am35x\src\bootloader\eboot\menu.c takes care of that.

    -Madhvi

  • Hi Madhvi,
      Thank you very much for your help, as you told me I have found the

    g_bootcfg.displayRes initializtion in m35x\src\bootloader\eboot\main.c.

    but it is as below:  g_bootCfg.displayRes = OMAP_LCD_DEFAULT; And the definition of it:
    typedef enum OMAP_LCD_DVI_RES {
        OMAP_LCD_DEFAULT=0,
        OMAP_DVI_640W_480H,
        OMAP_DVI_640W_480H_72HZ,
        OMAP_DVI_800W_480H,
        OMAP_DVI_800W_600H,
        OMAP_DVI_800W_600H_56HZ,
        OMAP_DVI_1024W_768H,
        OMAP_DVI_1280W_720H,
        OMAP_RES_INVALID=8
    }OMAP_LCD_DVI_RES;

    So does it mean that before user override this default value at the

    eboot menu the LCD will doesn't work?

    Thanks!

  • I am not sure if I understood your question correctly. The enum OMAP_LCD_DVI_RES corresponds one-to-one to lcd_res_params structure in lcd_vga.c. So if in eboot you plan to select OMAP_LCD_DEFAULT as the displayRes, then make sure index 0 of lcd_res_params in lcd_vga.c has the right parameters for your LCD - in short, overwrite the existing LCD parameters in lcd_res_params with yours. If you plan to add a new index in lcd_res_params structure (i,e, after OMAP_DVI_1280W_720H), then you need to define another enum value in OMAP_LCD_DVI_RES after OMAP_DVI_1280W_720H and use that to set displayRes in eboot.


    -Madhvi

  •      Hi Madhvi,

            Thank you very much for your professional help. I have got it, thanks!