AnsweredAssumed Answered

How change display resolution

Question asked by Matteo Fabiani on Jan 3, 2013
Branched to a new discussion

Hi all,

I want to change RGB output resolution of i.mx28 evk board. I have modified the file lcd_43wvf1g.c (attached), in particular I changed the following define to obtain a resolution of 720x480

 

 

#define DOTCLK_H_ACTIVE  720

#define DOTCLK_H_PULSE_WIDTH 62

#define DOTCLK_HF_PORCH  16

#define DOTCLK_HB_PORCH  60

#define DOTCLK_H_WAIT_CNT  (DOTCLK_H_PULSE_WIDTH + DOTCLK_HB_PORCH)

#define DOTCLK_H_PERIOD (DOTCLK_H_WAIT_CNT + DOTCLK_HF_PORCH + DOTCLK_H_ACTIVE)

 

#define DOTCLK_V_ACTIVE  480

#define DOTCLK_V_PULSE_WIDTH  6

#define DOTCLK_VF_PORCH  9

#define DOTCLK_VB_PORCH  30

#define DOTCLK_V_WAIT_CNT (DOTCLK_V_PULSE_WIDTH + DOTCLK_VB_PORCH)

#define DOTCLK_V_PERIOD (DOTCLK_VF_PORCH + DOTCLK_V_ACTIVE + DOTCLK_V_WAIT_CNT)

 

The problem is that, for example, the Linux penguin is shown on the display only if I set the values of x_res to 800 and y_res to 480 in lcd_43wvf1g.c file, as shown below:

 

static struct mxs_platform_fb_entry fb_entry = {

  .name = "43wvf1g",

  .x_res = 480,

  .y_res = 800,

  .bpp = 32,

  .cycle_time_ns = 37,

  .lcd_type = MXS_LCD_PANEL_DOTCLK,

  .init_panel = init_panel,

  .release_panel = release_panel,

  .blank_panel = blank_panel,

  .run_panel = mxs_lcdif_run,

  .stop_panel = mxs_lcdif_stop,

  .pan_display = mxs_lcdif_pan_display,

  .bl_data = &bl_data,

};

 

If I set the x_res value to 720 I see the display all black. Why?

 

Do you have any suggestion or do you have a general suggestion on how to change the display resolution?

 

 

 

Thanks!!

Original Attachment has been moved to: lcd_43wvf1g.c.zip

Outcomes